WEBサービス創造記

WEBサービスを作ったり保守したりしてる人のメモブログです。

apt-fileで特定のファイルがどのaptのパッケージに含まれているかを調べる

   

apt-fileについて

Deb系のパッケージ管理システムであるaptにおいて、特定のファイルやコマンドがどのパッケージに含まれているのかを調べることができるツール。
下記コマンドでインストールすることができる(updateはデータベースを最新にするために行う)。

$ sudo apt-get install apt-file
$ sudo apt-file update

apt-fileのユースケース

よくあるパターンとして何らかのソフトウェアをビルドする際に、特定のライブラリが不足していてビルドに失敗するパターン。
例えば、mysql関連の何かをビルドしているときに、”libmysqlclient.so.18: cannot open shared object file: No such file or directory”なんて言われたときは、libmysqlclient.so.18を含むパッケージを以下のコマンドで検索することができる。

$ apt-file search libmysqlclient.so.18
libmysqlclient18: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18
libmysqlclient18: /usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0

参考資料

以下のWebサイトを参考にさせていただきました。

 - Debian , , ,