在“非标准”目录中安装源的后果

在“非标准”目录中安装源的后果

我自己从源代码编译并安装了很多程序。由于我有一个可以运行的 apache + PHP 安装,但想尝试 Nginx + PHP-FPM,所以我想将它们安装在非标准位置,例如 /nginx 和 /php-fpm

除了可执行文件不在 PATH 中(但这可以解决)之外,还可能存在哪些其他问题或后果?

答案1

手动编译到自定义位置的主要缺点可以分为由手动编译引起的缺点和由存储在自定义位置引起的缺点。

我发现手动编译的缺点如下:

  1. 这是一个维护的噩梦,因为当安全更新发布时,你必须不断地从源代码重新编译;
  2. 这是一个双重维护的噩梦,因为您必须不断地关注您编译的每个软件的论坛、邮件列表、网站和(现在)IRC 频道,这样您才能在更新发布时了解它们,并在您发现每个更新时对其进行判断,以确定是否需要该特定更新;
  3. 这是一场稳定性噩梦。RH(和其他服务器级发行版供应商)的政策是不在稳定的操作系统主要版本中增加版本。相反,他们只将必要的补丁(主要是安全补丁,但并非总是如此)移植到已发布的版本,这样您就不必在每次决定采用新版本时不断与旧配置文件语法无效、存储数据库需要应用架构补丁等作斗争。

我发现自定义位置有以下缺点:

  1. 这使得系统更难维护,因为任何新管理员都必须首先解开当前系统软件所在的迷宫;
  2. 这增加了部分内容备份失败的可能性(您必须不断更新您的策略以包含新的目录);
  3. 除非你对./configures 非常谨慎,否则配置文件会散布在整个 FS 中(例如/nginx/etc/nginx.conf/php-fm/etc/php-fm.ini,而不是全部集中在 中/etc。这会使变更控制更加困难。

简而言之,如果您是唯一一个需要在此服务器上工作的人,您没有其他服务器需要工作,并且您有时间关注您正在手动编译的软件包的各种论坛,那么这种痛苦将会最小化,并且可能非常小。如果不是,痛苦可能会很大。

相关内容