Perché il comando "man" scompare?


9

Trovo che il mancomando scompaia sul mio 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)

Ma mane man-pagessono tutti sulla mia scatola:

# 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

Dove sei manandato?

Aggiornamento 1 :

Prova a reinstallare man, ma richiede i seguenti errori:

......
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

Aggiornamento 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: -

Puoi aggiungere l'output ls -l /usr/bin/manalla tua domanda sopra (in realtà, includi stat /usr/bin/mananche).
EightBitTony,

disinstallare man, rimuovere /usr/bin/mane installare man-pagesquindi installareman
GAD3R

@EightBitTony: aggiungi l'output di ls -l /usr/bin/mane stat /usr/bin/man, grazie!
Nan Xiao,

RPM utilizza cpiocome formato di archivio, motivo per cui viene visualizzato un errore cpio quando si tenta di sostituire il file/usr/bin/man
GAD3R

3
Bene, non so perché - ma la tua /usr/bin/mansembra essere una directory, piuttosto che un singolo eseguibile. È quasi come se qualcuno abbia copiato la directory delle pagine man su / usr / bin / man.
EightBitTony,

Risposte:


13

Dubito che saremo mai in grado di dirti dove è andato, ma dovresti essere in grado di reinstallarlo usando yum.

yum reinstall man

yumnon controlla se esistono file durante l'esecuzione yum install, controlla solo un database di quali pacchetti sono stati installati. Se qualcuno elimina tutti i file al di fuori del gestore pacchetti, non lo saprà (puoi farlo controllare, ma non lo fa per impostazione predefinita). Usando gli yum reinstalldice di fare l'installazione anche se pensa che il pacchetto sia già lì.

A seconda di ciò che è stato eliminato o rimosso, potrebbe essere necessario per yum reinstall ...altre cose come man-pages.

Aggiornato alla luce di nuove informazioni:

Per qualche ragione, la tua /usr/bin/manè una directory, piuttosto che un singolo file, e a giudicare dal contenuto sembra che qualcuno abbia fatto qualcosa di strano mv /usr/share/man /usr/bino qualcosa di strano.

Non sarai in grado di annullare semplicemente questo: devi investigare, vedere cosa è stato rotto o spostato e correggerlo.

Si potrebbe solo essere in grado di rimuovere /usr/bin/mane il suo contenuto e quindi reinstallare mane man-pagesutilizzare yum, ma senza ulteriori indagini non sta andando per essere chiari.


Provo a reinstallare man, ma viene visualizzato l' unpacking of archive failed on file /usr/bin/man: cpio: renameerrore " ". Potresti aiutare a controllare? Grazie mille in anticipo!
Nan Xiao,

@ Rimuovi /usr/bin/mane reinstalla manrisolvilo, grazie mille!
Nan Xiao,

2
@NanXiao: se /usr/bin/manè una directory, chissà cos'altro è rovinato? A questo punto, consiglierei di eseguire il backup dei file e di reinstallare il sistema operativo da zero. E non lasciare che il tuo bambino di tre anni giochi con un root shell la prossima volta. ;)
Ilmari Karonen,

0

RPM utilizza cpiocome formato di archivio. Questo è il motivo per cui viene visualizzato un cpioerrore durante il tentativo di sostituire il file /usr/bin/man.

È necessario removee purge manquindi è necessario installare man-pages.

Apri il Terminale e digita i seguenti comandi:

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

La domanda originale lo dimostra yum install mane yum install man-pagesnon ha fatto alcuna differenza perché yumpensa che siano già installati.
EightBitTony,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.