
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
パッケージのデータベースのみを確認します。誰かがパッケージマネージャの外部のすべてのファイルを削除すると、それはわかりません(確認を求めることができますが、デフォルトではそうではありません)。使用すると、yum reinstall
パッケージがすでに存在すると思ってもインストールするように指示します。
削除された内容または削除された内容に応じyum reinstall ...
てman-pages
。
新しい情報で更新されました:
何らかの理由で、あなたの/usr/bin/man
ファイルは単一のファイルではなくディレクトリであり、内容で判断すると誰かが奇妙なことをしたようですmv /usr/share/man /usr/bin
。
この操作は単にキャンセルできません。調査し、損傷または移動した部分を確認して修正する必要があります。
あなた可能/usr/bin/man
そのコンテンツとそのコンテンツを削除して再インストールしてman
使用するman-pages
ことはできますが、yum
追加の調査がなければ明確ではありません。
答え2
cpio
RPMはアーカイブ形式で使用されます。これがcpio
ファイルを交換しようとするとエラーが表示される理由です/usr/bin/man
。
remove
その後、インストールする必要がpurge
man
ありますman-pages
。
端末を開き、次のコマンドを入力します。
yum check-update
yum update
yum install man-pages
yum install man