![通过云单独安装包依赖项](https://linux22.com/image/521941/%E9%80%9A%E8%BF%87%E4%BA%91%E5%8D%95%E7%8B%AC%E5%AE%89%E8%A3%85%E5%8C%85%E4%BE%9D%E8%B5%96%E9%A1%B9.png)
通过云单独安装包依赖项
大家好,
我正在开展一个在云端设置包的项目。
例如,如果我想要设置 Drupal,我需要单独的机器来维护单独的任务,比如一台机器(云实例/节点 1)上的 mysql,另一台机器(云实例/节点 2)上的 apache 服务器,等等。
因此,如果 drupal.rpm 有依赖项 apache.rpm(也有 deps)和 mysql.rpm(也有 deps)
rpm 包管理器(yum)可以处理此类定制和上述要求吗?
请建议任何其他方法来实现相同的功能。
答案1
在修改 Drupal 的规范以使其仅依赖于 Apache httpd 并仅将 MySQL 添加为可选依赖项后,您可能必须重建 Drupal 的 RPM 包。
看http://wiki.centos.org/HowTos/RebuildSRPM有关从 SRPM 重建 RPM 包的更多信息。
答案2
RPM 依赖性反映仅有的必要的包裹在该服务器上使您的软件包正常工作。在 RPM 世界中(或 .deb 或任何其他软件包管理解决方案中),不存在跨服务器依赖关系。
在上述情况下,您错误地将 MySQL 服务器标记为 drupal 的要求。Drupal 不要求在安装软件的机器上存在 MySQL 服务器实例,它只需要 PHP MySQL 客户端库。
同样的,你不需要有 Apache 就可以安装 Firefox —— 从技术上讲,如果没有 Web 服务器可以连接,Firefox 是无用的,但并不要求 Web 服务器必须运行在同一台机器上作为浏览器。drupal / mysql 的情况完全相同。