為什麼我找不到任何線上幫助頁?

為什麼我找不到任何線上幫助頁?

我正在運行 Ubuntu 16.04.2 LTS 的 Power8 伺服器上工作:

$ uname -a    
Linux power 4.4.0-75-generic #96-Ubuntu SMP Thu Apr 20 09:55:30 UTC 2017 ppc64le ppc64le ppc64le GNU/Linux

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.2 LTS"

似乎沒有安裝任何常用的線上說明頁。即使是一個簡單的命令,例如:

man man

回報

No manual entry for man
See 'man 7 undocumented' for help when manual pages are not available.

這適用於各種其他工具,如lsgrep等,以及函式庫函數,如usleepprintf等。

我已經檢查過至少確實安裝了一些線上幫助頁:

$ dpkg -l | grep -i manpages
ii  manpages                           4.04-2                                     all          Manual pages about using a GNU/Linux system
ii  manpages-dev                       4.04-2                                     all          Manual pages about using GNU/Linux for development
ii  manpages-posix                     2013a-1                                    all          Manual pages about using POSIX system
ii  manpages-posix-dev                 2013a-1                                    all          Manual pages about using a POSIX system for development

我錯過了什麼嗎?這是特定於ppc64le架構的嗎?或者我可以/應該安裝其他東西來存取這些手冊頁?

更新:按照要求,我跑了sudo mandb。結果是:

0 man subdirectories contained newer manual pages.
0 manual pages were added.
0 stray cats were added.
2 old database entries were purged.

man man和其他此類命令沒有變化。

此外,輸出為manpath

$ manpath -g
/usr/man:/usr/share/man:/usr/local/man:/usr/local/share/man:/usr/X11R6/man:/opt/man
$ manpath -c
/var/cache/man/oldlocal:/var/cache/man/local:/var/cache/man

答案1

我猜你的手冊頁快取有問題,運行:

sudo mandb

要更新它,如果您的系統上不存在它將被創建。

您也可以使用sudo mandb -cfore 刪除舊快取並建立新快取。

另一個可能對您有用的選項是-t,它對手冊頁執行正確性檢查。

如果您在本機上安裝了一些軟體包,例如使用pip或其他軟體套件管理器~/.local/bin來新增它們的手冊頁,則無需再次執行它sudo

mandb

額外步驟

如果上述說明不適合您用來manpath尋找手動搜尋路徑,請確保它不為空。

然後檢查是否已安裝任何手冊:

$ man -w man
/usr/share/man/man1/man.1.gz

如果該命令沒有任何結果,請使用:

$ file /usr/share/man/man1/man.1.gz
/usr/share/man/man1/man.1.gz: gzip compressed data, max compression, from Unix

然後嘗試man打開手冊,看看它是否有效:

man /usr/share/man/man1/man.1.gz

如果您沒有找到任何手冊頁,請嘗試重新安裝該軟體包。

答案2

不幸的是,接受的答案在 Ubuntu 18(Bionic)上對我不起作用。這是有效的:

$ sudo apt install man-db manpages-posix manpages-dev manpages-posix-dev
$ sudo mandb

參考:如何在 Ubuntu Linux 上安裝手冊頁

答案3

在我的系統(Ubuntu 20.04,Focal)上,GROMACS 建立了一個變數 $MANPATH,該變數優先於線上說明頁使用的變數。使用sudo man也可以,但在 ~/.bashrc 中加入此行使其永久有效。

unset MANPATH

更進一步,新增此內容可確保 GROMACS 和線上說明頁同時運作。

function man() {              
    unset MANPATH             
    /usr/bin/man ${@}         
    . /usr/local/gromacs/bin/GMXRC
}

相關內容