3.5. Debian系のパッケージ管理

3.5.1. dpkgコマンドによるパッケージ管理

パッケージファイル名の構成

パッケージであるdebファイルは以下のような構成となる。

sample_1.2.3-1_i386.deb
  • sample … パッケージ名
  • 1.2.3 … バージョン番号
  • 1 … リビジョン番号
  • i386 … CPUアーキテクチャ

コンフィグファイル(/etc/dpkg/dpkg.cfg)

dpkgのコンフィグファイルは/etc/dpkg/dpkg.cfgにある。

dpkgコマンド

dpkg -i <パッケージ名(.deb含む)>
オプション説明
-E同じバージョンがすでにインストールされている場合、インストールは行わない
-G新バージョンがすでにインストールされている場合、インストールはしない
-Rディレクトリ構造を再帰的に処理する
アクション説明
-iパッケージをインストール
-Iインストール済みの詳細情報を表示
-rパッケージをアンインストール (設定ファイルは残す)
-Pパッケージをアンインストール (設定ファイルを含めて完全に削除)
-lインストール済みパッケージを検索して表示
-Lパッケージからインストールされたファイルを一覧表示
-sインストール済みのパッケージの詳細情報の表示
-S指定したファイルが、どのパッケージからインストールされたものかを調査
-cパッケージに含まれるファイルの一覧表示
-C / –auditパッケージのインストール状態を検査

dpkg-reconfigureコマンド

dpkg-reconfigureコマンドは既にインストールされたdebパッケージの状態を再設定するもの。

3.5.2. apt-getコマンドによるパッケージ管理

apt-getコマンドはアプリケーションの依存関係を調整しながらパッケージのインストール、アップグレードを行うため依存解決までできる。 またインターネット経由で最新パッケージ取得する

apt-getコマンド

apt-get <オプション> <パッケージ名>
apt-getコマンドのオプション説明
-dインストールせずにダウンロードのみ行う
-sシステムを変更せずに動作をシミュレートする
–purge設定ファイルを含めてパッケージを削除する (removeコマンドと一緒に指定)
cleanダウンロードしたパッケージファイルを削除する
dist-upgradeDebianのシステムを最新にアップグレードする
install指定したパッケージをインストール、またはアップグレードする
remove指定したパッケージをアンインストール ( 設定ファイルは残す )
updateパッケージのリスト情報(データベース)を最新に更新する
upgradeシステムの全パッケージを最新版にアップグレードする
オプション説明
-c設定ファイルの指定(デフォルトでは/etc/apt/sources.list)
-y全部yes
-dダウンロードのみ
-sシステムを変更せず動作をエミュレートする
no-install-recommends必須ではないパッケージをインストールしない
–resinstall最新版がインストールされていてもインストール
clean取得したパッケージのローカルリポジトリを掃除する
dist-upgradeディストリビューションをアップグレードする
install新規パッケージをインストールする
removeパッケージが削除される(削除されたパッケージの設定ファイルは残る)
purgeパッケージが削除かつ完全削除(設定ファイルも含む)
update設定されたすべての取得元からパッケージ情報をダウンロードする
upgrade現在インストール済みのすべてのパッケージで利用可能なアップグレードをインストールする
full-upgradeシステムのメジャーバージョンを最新にアップグレードする(dist-upgradeと同じ)
autoremove必要なくなったパッケージの削除

パッケージの取得先(設定ファイル)

パッケージの取得先は/etc/apt/sources.list/etc/apt/sources.list.d/*に保存される。

/etc/apt/sources.listの中身は以下のように表示される。

...
deb http://security.ubuntu.com/ubuntu bionic-security main restricted
# deb-src http://security.ubuntu.com/ubuntu artful-security main restricted
deb http://security.ubuntu.com/ubuntu bionic-security universe
# deb-src http://security.ubuntu.com/ubuntu artful-security universe
deb http://security.ubuntu.com/ubuntu bionic-security multiverse
# deb-src http://security.ubuntu.com/ubuntu artful-security multiverse

apt-cacheコマンド

apt-cache はインストール済みとインストール可能なパッケージの情報の照会と検索が可能なコマンド。

apt-cache
サブコマンド説明使用例
search - 正規表現正規表現パターンによってパッケージ一覧を検索apt-cache search apache2 | head -n 5
show一般的な情報を表示apt-cache show apache2 | head -n 20
showpkg <パッケージ名>詳細な情報を得るapt-cache showpkg apache2
depends - <パッケージ名>パッケージの生の依存情報を表示apt-cache depends apache2

aptitudeコマンド

aptitudeコマンドはapt-getよりも高機能なコマンド。 apt-getとapt-cacheの機能をもつ。

aptコマンド

aptコマンドはapt-getの後発のコマンド。 主なオプションはapt-getと同じもの使える。

aptのリポジトリの登録

aptのリポジトリの登録はadd-apt-repositoryコマンドで可能。