我发现man
命令在我的上消失了RHEL7
:
# man ls
bash: man: command not found...
# which man
/usr/bin/which: no man in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/usr/local/go/bin:/root/gocode/bin:/root/bin:/opt/linuxki)
但是man
和man-pages
都在我的盒子上:
# yum install man
Loaded plugins: auto-update-debuginfo, langpacks, product-id, search-disabled-repos, subscription-manager
Package man-db-2.6.3-9.el7.x86_64 already installed and latest version
Nothing to do
# yum install man-pages
Loaded plugins: auto-update-debuginfo, langpacks, product-id, search-disabled-repos, subscription-manager
Package man-pages-3.53-5.el7.noarch already installed and latest version
Nothing to do
去哪儿了man
?
更新1:
尝试重新安装man
,但提示如下错误:
......
Running transaction
Installing : man-db-2.6.3-9.el7.x86_64 1/1
Error unpacking rpm package man-db-2.6.3-9.el7.x86_64
error: unpacking of archive failed on file /usr/bin/man: cpio: rename
Verifying : man-db-2.6.3-9.el7.x86_64 1/1
Failed:
man-db.x86_64 0:2.6.3-9.el7
更新2
# ls -lt /usr/bin/man
total 4
drwxr-xr-x. 2 nan nan 81 Mar 24 22:30 man1
drwxr-xr-x. 2 nan nan 4096 Mar 24 22:30 man7
# stat /usr/bin/man
File: ‘/usr/bin/man’
Size: 28 Blocks: 0 IO Block: 4096 directory
Device: fd00h/64768d Inode: 67811254 Links: 4
Access: (0755/drwxr-xr-x) Uid: ( 1000/ nan) Gid: ( 1000/ nan)
Context: unconfined_u:object_r:bin_t:s0
Access: 2016-04-15 17:47:56.613595324 +0800
Modify: 2016-03-24 22:30:30.000000000 +0800
Change: 2016-04-08 11:08:45.605815500 +0800
Birth: -
答案1
我怀疑我们永远无法告诉您它去了哪里,但您应该能够使用 重新安装它yum
。
yum reinstall man
yum
运行时不会检查文件是否存在yum install
,它只是检查已安装的软件包的数据库。如果有人删除了包管理器之外的所有文件,它不会知道(您可以让它检查,但默认情况下不会)。 usingyum reinstall
告诉它进行安装,即使它认为该包已经存在。
根据已删除或删除的内容,您可能需要yum reinstall ...
其他内容,例如man-pages
.
根据新信息更新:
由于某种原因,您的/usr/bin/man
文件是一个目录,而不是单个文件,并且从内容来看,似乎有人做了一些奇怪的事情,例如mv /usr/share/man /usr/bin
或奇怪的事情。
您无法简单地撤消此操作 - 您需要进行调查,查看哪些内容被破坏或移动,并进行更正。
你可能只是能够删除/usr/bin/man
及其内容,然后重新安装man
和man-pages
使用yum
,但如果不进行更多调查,就不会清楚。
答案2
RPM 使用cpio
作为其归档格式。这就是为什么我们cpio
在尝试替换文件时看到错误/usr/bin/man
。
您需要remove
然后purge
man
需要安装man-pages
。
打开终端并键入以下命令:
yum check-update
yum update
yum install man-pages
yum install man