“man”명령이 왜 사라 집니까?


9

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)

그러나 manman-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: -

ls -l /usr/bin/man위의 질문에 출력을 추가 할 수 있습니까 (실제로 포함하십시오 stat /usr/bin/man).
EightBitTony

제거 man, 제거 /usr/bin/man및 설치 man-pages후 설치man
GAD3R

@EightBitTony : ls -l /usr/bin/man및의 출력을 추가하십시오 stat /usr/bin/man. 감사합니다!
Nan Xiao

RPM은 cpio보관 형식으로 사용 하기 때문에 파일을 교체하려고 할 때 cpio 오류가 발생합니다./usr/bin/man
GAD3R

3
글쎄, 이유를 모르겠지만- /usr/bin/man단일 실행 파일이 아닌 디렉토리 인 것처럼 보입니다. 마치 누군가가 매뉴얼 페이지 디렉토리를 / usr / bin / man에 복사 한 것과 같습니다.
EightBitTony

답변:


13

어디로 갔는지 알려 드릴 수는 없지만,을 사용하여 다시 설치할 수 있습니다 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-을 다시 설치 한 후 그 내용과 manman-pages사용 yum하지만 더 조사하지 않고는 명확 않을거야.


man을 다시 설치하려고하지만 " unpacking of archive failed on file /usr/bin/man: cpio: rename"오류가 표시됩니다 . 확인하는 데 도움이 될 수 있습니까? 미리 감사드립니다!
Nan Xiao

@ 아주 많이 제거 /usr/bin/man하고 다시 설치 man하십시오!
Nan Xiao

2
@ NanXiao : /usr/bin/man디렉토리 인 경우 누가 다른 것을 망쳤습니까? 이 시점에서 파일을 백업하고 OS를 처음부터 다시 설치하는 것이 좋습니다. 그리고 세 살짜리 아이가 다음에 루트 껍질을 가지고 놀지 못하게하십시오. ;)
Ilmari Karonen

0

RPM은 cpio보관 형식으로 사용 합니다. cpio파일을 바꾸려고 할 때 오류가 발생하는 이유 /usr/bin/man입니다.

당신이 필요 remove하고 purge man당신은 설치해야합니다 man-pages.

터미널을 열고 다음 명령을 입력하십시오.

yum check-update
yum update
yum install man-pages
yum install man

원래 질문 쇼 yum install manyum install man-pages있기 때문에 어떤 차이를하지 않았다 yum가 이미 설치되어 생각합니다.
EightBitTony
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.