目前在 Amazon ec2 实例上。当我这样做时
sudo yum install httpd
为我做了很多好事。httpd 二进制文件被复制到路径
[ec2-user@ip-XXX bin]$ ls /usr/sbin/ | grep "httpd"
httpd
httpd.event
httpd.worker
并httpd
提供给服务命令:
sudo service httpd start
我最近决定从源代码编译 apache,因为我想更好地控制配置。这将 apache 安装到 中,/usr/local/apache2/
二进制文件位于 中bin/
,但不在路径中。对我来说,只使用cp
将二进制文件复制到是否安全/推荐/usr/sbin
?
/usr/local/apache2/bin
或者添加到系统路径是否更好的做法?
答案1
这有点主观,但我建议采用第三种选择,这不是基于对 Apache 的具体经验,而是基于编译具有包管理器组件的软件时的一般原则和经验教训:/usr/local/sbin
在验证此路径默认优先于 后,将二进制文件从安装程序放置它们的位置符号链接到/usr/sbin
。应该如此。
这种方法的理由/优点。
- 如果您重新编译,默认安装行为仍然有效
- 默认系统路径配置,没有任何变化
- 包管理器随后更新其安装的二进制文件不会破坏已编译的二进制文件
这里的潜在主题是变化更少、需要记住或复制的事情更少、出错的事情也更少。