/usr/sbin/ 中的某些文件从未被替换过?

/usr/sbin/ 中的某些文件从未被替换过?

我有一个关于一个奇怪问题的问题,尽管我已经使用多台服务器很长时间了,但我以前从未遇到过它。

因此切诺基网络服务器我编译并安装的是

./configure --prefix=/usr
make
make install

在这次“升级”之前,我完全删除了旧版本(也用查找工具检查过)并备份了现有配置,稍后我将其升级并复制回原始文件夹。

但基本问题是两个文件:切诺基工人切诺基管理员。这些文件没有被正确地复制到 /usr/sbin/ 中。为了证明我的怀疑,我执行了一些命令:

/home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker -i
  >> Version: 1.2.1

cp /home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker /usr/sbin/cherokee-worker

/usr/sbin/cherokee-worker -i
  >> Vesion: 1.0.8

同样的问题也发生在切诺基管理员。最奇怪的是,如果我替换实际副本切诺基工人在 /usr/sbin/ 中有一个指向在职的文件位于 /.../build/../cherokee-1.2.1作品

rm /usr/sbin/cherokee-worker
ln -s /home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker /usr/sbin/cherokee-worker
/usr/sbin/cherokee-worker -i
  >> Version: 1.2.1

看起来 cherokee-worker/-admin 的硬拷贝无法正常工作。但为什么呢?

你知道发生了什么吗?我完全不知道发生了什么。

提前感谢您的帮助!

保罗

答案1

您需要以 root 身份运行 make install。从您的问题来看,运行它时您是否具有正确的权限尚不清楚。

您应该以普通用户的身份进行编译,并以 root 身份进行安装(此外,对于不来自发行版的包管理器的所有内容,您应该使用 /usr/local 作为前缀,但这是另一个争论):

make
sudo make install

答案2

如果您之前已从 ubuntu 存储库安装了 cherokee,则该版本安装在 /usr/sbin 中,并且您的手动编译版本可能会严重干扰该“官方”安装。在尝试安装自定义副本之前,请确保删除打包版本。

apt-get remove cherokee

就目前而言,除非有非常好的理由,否则我建议始终使用存储库中的版本。这样,您将自动获得更新,而不必亲自处理上游错误。http://packages.ubuntu.com/maverick/cherokee

相关内容