CentOSにmanページをインストールする方法は?


18

注:これはCentos 7に適用されます。Debianの回答を探している場合は、この質問を参照してください。これらの回答はここでは重複しません。

centos 7のインストール後、manページにアクセスできません:

# man ls
-bash: man: command not found

yum経由でインストールしようとしました

# yum install man-pages
... ok

しかし、再び:

# man ls
-bash: man: command not found

どうして?


1
これはman(1)システムの非常に基本的な部分であるため、非常に奇妙です。再インストール、つまりgoを試みることができyum reinstall /usr/bin/manます。
フォンブランド

回答:


17

manコマンドを使用するために、あなたはまた、インストールする必要がありますman前または後にパッケージをman-pages1

# yum install man-pages
... ok
# yum install man
... ok

manインストールされています

# man ls


NAME
      ls - list directory contents

SYNOPSIS
      ls [OPTION]... [FILE]...

DESCRIPTION
      List information about the FILEs (the current directory by default).  Sort entries alphabetically if none of -cftuvSUX nor --sort.

      Mandatory arguments to long options are mandatory for short options too. ...

2
どうやらこれは、dockerコンテナ内のcentOSでは機能しません。私はこれをcentOS VMで動作するようにしたことを知っていますが、なぜコンテナで動作しないのか分かりません。
ジャージー豆

9
わかりました、答えを見つけました。Docker centosイメージは、/ etc / yum.confにtsflags = nodocsが設定された事前ビルドです。参照してくださいhub.docker.com/_/centos
ジャージー豆

はい、あなたが正しい!補数の+1。ありがとう!
レミB.

6

私は私のドッキングウィンドウコンテナに同じ問題を抱えていたし、コメントアウトことによってそれを解決tsflags=nodocsして/etc/yum.conf、ファイル、そして私は、マンページと男-DBを削除し、再びそれらを再インストールします。このようにうまく機能します。

$ vi /etc/yum.conf

tsflagsファイルを検索し、その前にコメント(#)を追加します。

#tsflags=nodocs

システムにすでにインストールされている場合は、man-dbとmanページを削除します。

$ yum remove man-pages man-db

次に、それらを再度インストールします。

$ yum install man-pages man-db

ソート済み!


これは、私のWSL centos75をWindowsにインストールするための秘密のソースでした。
チョイ


0

R. Sが指摘したように、CentOSの公式Dockerイメージでは、手動ページインストールが無効になっています。これはFedora公式Dockerイメージにも当てはまります。

これを処理する最も簡単な方法はsed、どちらのシステムでも機能する次のコマンドを使用することです。

sed -i -e '/tsflags=nodocs/s/^/#/' /etc/yum.conf /etc/dnf/dnf.conf || true

これにより、2つのファイルのいずれかを読み取れないことを示すエラーメッセージが生成されますが、存在するファイルは更新され、tsflags=nodocs行がコメントアウトされます。|| trueコマンドは、スクリプトの中で停止を避けるために、関係なく、すべてのエラーの成功を返すことを最終性を保証で。

これはのRUNコマンドで使用できます。このDockerfile場合、パッケージをインストールする前に使用する必要があります。すでにインストールされているパッケージの場合、通常それらに付属するマニュアルページはアンインストールされたままになり、マニュアルページを表示するにはパッケージを再インストールする必要があります。基本システムのマニュアルページ(などls)の多くはman-pagesパッケージに含まれていますが、他のパッケージ(git独自のマニュアルページを含むなど)も再インストールする必要があります。

パッケージを削除してから再インストールすると、依存関係の問題が発生する可能性があります。これらを回避するには、代わりに次を使用します。

yum -y reinstall man-pages git
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.