「man CMD」に何も表示されないのはなぜですか?

「man CMD」に何も表示されないのはなぜですか?

実行すると、次のようにman ls表示されます。

Man:
* ls(1)
ls(1p)と一致するすべてのマニュアルページを見つけます
。 Man:どのマニュアルページが欲しいですか?
男性:

「1」を入力すると、「のみ表示されます。マニュアルページ ls(1) 行 ?/?(終了)”ステータスバーに表示されます。

マニュアルページがインストールされていないと考えてls実行し、manpath次のような結果を得ました。

/usr/share/man:/usr/local/man:/usr/local/share/man

ディレクトリの下で/usr/share/man/man1/gzipファイルを見つけましたがls.1.gz、私の考えではls

では、man lsなぜここに何も表示されませんか?

ベストアンサー1

皆様のご提案ありがとうございます。

ついに問題を解決し、man今は動作しています。

回答

誰かが64ビットバージョンと32ビットバージョンの両方をインストールしましたがglibc、これにより混乱が発生したようです。 32ビットバージョンをアンインストールしglibcて64ビットバージョンを再インストールするとman機能します。

==詳細プロセス==

  • Ran mandb -t、多くのエラーメッセージが表示されます。

iconv_open("UTF-8 //無視", "ISO-8859-1"): 無効な引数

  • Googleでこれを見つけましたiconv_opengconv(引用)
  • strace mandb -tどちらもstrace man ls次の情報を表示します。

open("/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = -1 ENOENT(該当するファイルやディレクトリなし) open
("/usr/lib64/gconv/gconv-modules", O_RDONLY) = - 1 ENOENT(該当するファイルやディレクトリなし)

  • iconvGoogleを通じて、私はgconv-modulesがこのペアにとって非常に重要であることを発見しましたman。 gconvがある間、glibc現在ではインストールが間違っていると推測できますglibc
  • ランrpm -qa | grep glibc、これを受けました:

glibc-i18ndata-2.11.1-0.17.4
glibc-locale-2.11.1-0.17.4
glibc-info-2.11.1-0.17.4
glibc-html-2.11.1-0.17.4
glibc-profile-2.11. 1-0.17.4
glibc-devel-2.11.1-0.17.4
glibc-2.11.1-0.17.4
glibc-32bit-2.11.1-0.17.4
glibc-devel-32bit-2.11.1-0.17.4
glibc -locale-32bit-2.11.1-0.17.4
glibc-profile-32bit-2.11.1-0.17.4

  • 実行してrpm -e --nodeps 32bit-PACKAGEすべての32ビットパッケージを削除し、マシンを再起動します(再起動以外の方法はありますか?)。
  • すべての64ビットglibcパッケージを再インストールしました。
  • man ls、効率的!

おすすめ記事