运行 rpm 不执行任何操作

运行 rpm 不执行任何操作

我不确定我的系统上的 rpm 发生了什么。这是托管在 Amazon EC2 上的 CentOS 6.3 VM,不知道这有什么区别。

当我运行任何 rpm 命令时,它都会返回到命令提示符,什么也不做。唯一返回的是:

rpm --help

其他任何事情都不起作用。没有错误消息,没有日志消息,什么都没有……我不知道如何继续。

通过按照建议使用 strace,我认为 rpm 在读取 /usr/lib/rpm/rpmrc 时失败。我已将此 rpmrc 与正常运行的系统进行了比较,没有发现任何差异。我不知道如何继续...

以下是 strace 的最后几行:

stat("/home/tscdev/.rpmrc", 0x7fffffb4ffc0) = -1 ENOENT (No such file or directory)
access("/usr/lib/rpm/rpmrc", R_OK)      = 0
open("/usr/lib/rpm/rpmrc", O_RDONLY)    = 3
fcntl(3, F_SETFD, FD_CLOEXEC)           = 0
fstat(3, {st_mode=S_IFREG|0644, st_size=13698, ...}) = 0
rt_sigprocmask(SIG_BLOCK, ~[RTMIN RT_1], [], 8) = 0
exit_group(1)                           = ?

以下是数据库目录(/var/lib/rpm)的目录列表:

total 48532
drwxr-xr-x  2 root root     4096 Apr 19 12:46 .
drwxr-xr-x 22 root root     4096 Feb 14 14:44 ..
-rw-r--r--  1 root root  2826240 Feb 14 14:44 Basenames
-rw-r--r--  1 root root    12288 Feb 14 14:44 Conflictname
-rw-r--r--  1 root root  1478656 Feb 14 14:44 Dirnames
-rw-r--r--  1 root root  5238784 Feb 14 14:44 Filedigests
-rw-r--r--  1 root root    16384 Feb 14 14:44 Group
-rw-r--r--  1 root root    12288 Feb 14 14:44 Installtid
-rw-r--r--  1 root root    24576 Feb 14 14:44 Name
-rw-r--r--  1 root root    12288 Feb 14 14:44 Obsoletename
-rw-r--r--  1 root root 37629952 Feb 14 14:44 Packages
-rw-r--r--  1 root root  1335296 Feb 14 14:44 Providename
-rw-r--r--  1 root root   655360 Feb 14 14:44 Provideversion
-rw-r--r--  1 root root    12288 Aug 20  2012 Pubkeys
-rw-r--r--  1 root root   204800 Feb 14 14:44 Requirename
-rw-r--r--  1 root root   139264 Feb 14 14:44 Requireversion
-rw-r--r--  1 root root    45056 Feb 14 14:44 Sha1header
-rw-r--r--  1 root root    40960 Feb 14 14:44 Sigmd5
-rw-r--r--  1 root root    12288 Oct 29 17:12 Triggername

答案1

在我的系统上,rpm --help输出来自处理中的文件/usr/lib/rpm/rpmpopt*,这些文件本身是 rpm 包的一部分。要在您的服务器上检查这一点,我将运行:

$ rpm --verify rpm
$ ls -l /usr/lib/rpm/rpmpopt*

相关内容