最小限のCentos 7 Dockerイメージがあり、Dockerfileをデバッグするのに役立ついくつかのマニュアルページを取得しようとしています。基本的には、次のようなものはあまりありません。
# man ls
No manual entry for ls
すべてこのサーバーに誤った回答がありますman-pages
、RPMをインストールしましたが、すべてがうまくいくようです。
# yum install -y man-pages
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
* base: mirror.vtti.vt.edu
* extras: centos.mbni.med.umich.edu
* updates: centos.netnitco.net
Resolving Dependencies
--> Running transaction check
---> Package man-pages.noarch 0:3.53-5.el7 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
======================================================================================================
Package Arch Version Repository Size
======================================================================================================
Installing:
man-pages noarch 3.53-5.el7 base 5.0 M
Transaction Summary
======================================================================================================
Install 1 Package
Total download size: 5.0 M
Installed size: 4.6 M
Downloading packages:
man-pages-3.53-5.el7.noarch.rpm | 5.0 MB 00:00:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
Installing : man-pages-3.53-5.el7.noarch 1/1
Verifying : man-pages-3.53-5.el7.noarch 1/1
Installed:
man-pages.noarch 0:3.53-5.el7
Complete!
しかし:
# man ls
No manual entry for ls
マンページを含める必要があるかどうかをrpm
確認しましたが、次のようになります。man-pages
ls
# rpm -ql man-pages | grep -w ls
/usr/share/man/man1p/ls.1p.gz
しかし、実際にインストールされているようには見えません。
# man 1p ls
No manual entry for ls in section 1p
# ls -l /usr/share/man/man1p/
total 0
そしてファイルシステムの他の場所にもないようです。
# find / -name ls.1\*
#
でファイルを生成できるので、/usr/share/man/man1p/
これはおそらくDocker仮想ファイルシステムにとって奇妙なことではありません。
最も良いことは、私が今本当に欲しいのはuseradd
このコマンドのマニュアルページです。これはこのRPMにもないことです。内部にshadow-utils
。
# yum whatprovides /usr/share/man/man8/useradd.8.gz
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
* base: mirror.vtti.vt.edu
* extras: mirror.tzulo.com
* updates: centos.netnitco.net
2:shadow-utils-4.1.5.1-18.el7.x86_64 : Utilities for managing accounts and shadow password files
Repo : base
Matched from:
Filename : /usr/share/man/man8/useradd.8.gz
すでにインストールされています。
# yum install shadow-utils
Loaded plugins: fastestmirror, ovl
Loading mirror speeds from cached hostfile
* base: mirror.vtti.vt.edu
* extras: centos.mbni.med.umich.edu
* updates: centos.netnitco.net
Package 2:shadow-utils-4.1.5.1-18.el7.x86_64 already installed and latest version
Nothing to do
実際にはバイナリ(例えば/usr/sbin/useradd
)があります。しかし、マニュアルページではありません。
# ls -l /usr/share/man/man8/useradd.8.gz
ls: cannot access /usr/share/man/man8/useradd.8.gz: No such file or directory
だから私の質問は次のようになります
shadow-utils
バイナリを見つけることができますが、なぜRPMに含める必要があるマニュアルページが見つかりませんか?- RPMを(成功的に)インストールしても
man-pages
RPMに必要なファイルがインストールされないのはなぜですか?
修正する:すべてAaron Marascoの回答そしてムスキーのコメント、私は努力したyum reinstall shadow-utils
。と同様に、yum install man-pages
正常に完了したように見えますが、実際にはファイルは保存されません/usr/share/man/
。
ベストアンサー1
あなたのイメージがあるかもしれませんnodocs
yum設定で設定されたトランザクションフラグ(参照/etc/yum.conf
)
必要なマニュアルページを含むパッケージを(再)インストールする前に、完全に(またはyumコマンドラインから)削除できます。
たとえば、
yum --setopt=tsflags='' reinstall shadow-utils