Ubuntu 8.04システムで作業していると、プログラム、マニュアルページ、その他のファイルが見つからないことがよくあります。どのパッケージに特定のファイルが含まれているかを調べる簡単な方法はありますか(既にインストールされているかどうかにかかわらず)。たぶんaptやdpkgのあいまいなオプションはありますか?
apt-file search filename
または
apt-file search /path/to/file
apt-file
をインストールするには、次のようにします。
Sudo apt-get install apt-file
使用する前にデータベースを更新する必要があります。
Sudo apt-file update
(Debian/Ubuntu)ファイルがどのパッケージに属しているかを調べます :
dpkg -S /usr/bin/ls
'dpkg -S'は指定した文字列と一致するだけなので、引数として 'ls'を使用すると、ファイル名のどこかに 'ls'があるパッケージからのファイルと一致します。そのため、通常は絶対パスを使用することをお勧めします。 2番目の例では、dpkgで知られている1万2000個のファイルが裸の文字列 'ls'に一致することがわかります。
packages.debian.org が私がこの仕事を達成するためにいつも使っているものです。ファイル名の一部も見つけることができるので、apt-fileより優れています。それはまた、説明、バグなどをリストアップするメインパッケージリストにリンクされています。コマンドラインからはそれほど便利ではありませんが、それでもかなり便利です。
スピードを上げるために、URLをブックマークしました。
http://packages.debian.org/search?searchon=contents&keywords=%s&mode=filename&suite=unstable&Arch=any
firefoxでは、「debfind」をキーワードとして追加し(ブックマークマネージャで「詳細」をクリックしてハイライト表示)、「debfind」と入力するだけで動作します。他のバージョンのディストリビューションでは、必要に応じて「スイート」を「不安定」から「安定」または「テスト」に変更できます。
Dlocateも使えます。 manページから。
$ dlocate [ PATTERN ]
List all records where either the package name or the filename matches PATTERN.
私はWajigを見つけました...
wajig whichpackage /path/to/file
例えば。
wajig whichpackage /etc/apt/sources.list
Wajigは、習得したくなかったapt-get、dpkgの長所をすべて網羅した便利なコマンドラインまたはコンソールツールです。 。
Wajigをインストールするには
apt-get install wajig
そのコマンド「whichpackage」自体はapt-fileに依存します
使用する前にデータベースを更新する必要があります。 - wajig update whixhがapt-get updateを実行してもファイルキャッシュが更新されるかどうかはまだわかりませんが、可能性はあります。
Sudo wajig update
Sudo apt-file update
(そして、スーパーカウ、イースターエッグ?!)
JamuraaのDebianに対する答えと同じように、Ubuntuについては http://packages.ubuntu.com/ に行くこともできます。ファイルのパスを入力できる「パッケージの内容を検索する」検索ボックスを見つけるには、少しスクロールダウンする必要があります。
http://www.kodkast.com/applications/find-which-package-file-belongs-to を使用してファイルを検索してみてください
これは、異なるrpms/linuxパッケージに含まれているファイルを検索するためのアプリケーションです。あなたのマシンにrpmがインストールされていなくても非常に役に立ちます。
Command-not-foundパッケージは、潜在的なコマンドとdebianパッケージの名前についてのヒントを与えてくれます。 bashシェルにコマンドを入力してその出力を見ることで動作します。
たとえば、コマンド名がわかっているとします。
zer@ivy:~ 10:45 $ zsh5
The program 'zsh5' is currently not installed. To run 'zsh5' please ask
your administrator to install the package 'zsh'
zsh5: command not found
コマンドがわからない場合は、いくつかの推測が適用されます。
zer@ivy:~ 09:46 $ zsh
No command 'zsh' found, did you mean:
Command 'lsh' from package 'lsh-client' (main)
Command 'osh' from package 'omake' (main)
Command 'ysh' from package 'libyaml-Shell-Perl' (main)
Command 'ssh' from package 'openssh-client' (main)
Command 'vsh' from package 'crystalspace' (main)
Command 'dsh' from package 'dsh' (main)
Command 'ash' from package 'ash' (main)
Command 'msh' from package 'nmh' (main)
Command 'zssh' from package 'zssh' (main)
Command 'qsh' from package 'gridengine-client' (main)
Command 'sh' from package 'dash' (main)
Command 'bsh' from package 'bsh' (main)
zsh: command not found