Saya menggunakan WSL di win10 dengan utilitas pengelolaan distribusi lxrunoffline. Distro saya adalah instalasi inti Ubuntu 18.04 yang dapat ditemukan di sini – tautan unduhan.
Mengetik man man
, man pwd
atau man <anything>
menghasilkan hasil berikut:
No manual entry for man
See 'man 7 undocumented' for help when manual pages are not available.
Berikut beberapa perintah yang saya coba:
$ sudo mandb
Purging old database entries in /usr/share/man...
Processing manual pages under /usr/share/man...
Purging old database entries in /usr/share/man/cs...
Processing manual pages under /usr/share/man/cs...
Purging old database entries in /usr/share/man/da...
Processing manual pages under /usr/share/man/da...
...
0 man subdirectories contained newer manual pages.
0 manual pages were added.
0 stray cats were added.
0 old database entries were purged.
$ sudo mandb -t */ output here certainly looks suspicious /*
mandb: warning: /usr/share/man/man1/sh.1.gz is a dangling symlink
mandb: warning: can't update index cache /var/cache/man/index.db: Resource temporarily unavailable
mandb: warning: can't update index cache /var/cache/man/cs/index.db: Resource temporarily unavailable
mandb: warning: can't update index cache /var/cache/man/da/index.db: Resource temporarily unavailable
mandb: warning: can't update index cache /var/cache/man/de/index.db: Resource temporarily unavailable
...
$ dpkg -l | grep -i manpages
ii manpages 4.15-1 all Manual pages about using a GNU/Linux system
ii manpages-dev 4.15-1 all Manual pages about using GNU/Linux for development
ii manpages-posix 2013a-2 all Manual pages about using POSIX system
Saya juga memeriksa /usr/share/man
folder dan sebagian besar kosong (folder jalur manual lainnya benar-benar kosong), kecuali beberapa tautan simbolik yang rusak:
$ manpath
/usr/local/man:/usr/local/share/man:/usr/share/man
$ cd /usr/share/man/man1
$ ls -alh
drwxr-xr-x 1 root root 4.0K Nov 27 18:16 .
drwxr-xr-x 1 root root 4.0K Sep 28 04:02 ..
lrwxrwxrwx 1 root root 9 Sep 28 04:00 sh.1.gz -> dash.1.gz
$ file sh.1.gz
sh.1.gz: broken symbolic link to dash.1.gz
Kemudian saya mencoba meletakkan man gzips yang saya temukan di situs web halaman manual Ubuntu ke dalam folder man1 dan itu membuatnya berfungsi dengan baik:
$ cd /usr/share/man/man1
$ ls -alh
drwxr-xr-x 1 root root 4.0K Nov 27 18:16 .
drwxr-xr-x 1 root root 4.0K Sep 28 04:02 ..
-rwxr-xr-x 1 root root 3.1K Nov 27 18:16 ls.1.gz <-- downloaded this one
lrwxrwxrwx 1 root root 9 Sep 28 04:00 sh.1.gz -> dash.1.gz
*/ 'man ls' works now /*
Juga mencoba menginstal ulang mandb dan halaman manual tetapi tidak berhasil.
Mengunduh file halaman manual secara manual memecahkan masalah tetapi harus ada beberapa paket atau konfigurasi yang melakukannya untuk saya. Bagaimana cara mengatasi ini?
Edit 1
$ head -n 1000 /etc/dpkg/dpkg.cfg /etc/dpkg/dpkg.cfg.d/*
==> /etc/dpkg/dpkg.cfg <==
# dpkg configuration file
#
# This file can contain default options for dpkg. All command-line
# options are allowed. Values can be specified by putting them after
# the option, separated by whitespace and/or an `=' sign.
#
# Do not enable debsig-verify by default; since the distribution is not using
# embedded signatures, debsig-verify would reject all packages.
no-debsig
# Log status changes and actions to a file.
log /var/log/dpkg.log
==> /etc/dpkg/dpkg.cfg.d/excludes <==
# Drop all man pages
path-exclude=/usr/share/man/*
# Drop all documentation ...
path-exclude=/usr/share/doc/*
# ... except copyright files ...
path-include=/usr/share/doc/*/copyright
# ... and Debian changelogs
path-include=/usr/share/doc/*/changelog.Debian.*
Jawaban yang Diterima:
Dua baris pertama /etc/dpkg/dpkg.cfg.d/excludes
# Drop all man pages
path-exclude=/usr/share/man/*
menyebabkan semua halaman manual dihapus saat paket diinstal.
Terkait:Ubuntu – Berpisah:bagaimana cara mengatasi Lokasi di luar kesalahan perangkat?Untuk membuat halaman manual tersedia, Anda harus mengomentari baris kedua:
# Drop all man pages
# path-exclude=/usr/share/man/*
kemudian instal ulang paket apa pun yang Anda inginkan halaman manualnya:
apt --reinstall install man-db coreutils
untuk mengembalikan man
dan ls
halaman manual (antara lain).