我不知道我的系统上的rpm发生了什么事。 这是Amazon EC2上托pipe的CentOS 6.3 VM,如果这有所帮助的话。
当我运行任何rpm命令时,它将返回到命令提示符不执行任何操作。 唯一可以回报的是:
rpm --help
其他什么都不做。 没有错误消息,没有日志消息,没有任何东西…我不知道如何继续。
通过使用stracebuild议,我相信在读取/ usr / lib / rpm / rpmrc期间rpm失败。 我把这个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
在我的系统上, rpm --help输出来自于处理/usr/lib/rpm/rpmpopt* ,这些文件本身就是rpm包的一部分。 要检查您的服务器上,我会运行:
$ rpm --verify rpm $ ls -l /usr/lib/rpm/rpmpopt*