1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Linux パッケージ管理 apt / dpkg / yum / rpm / gem チートシート

Last updated at Posted at 2025-01-19

$ apt

Advanced Packaging Tool

Debian 系 Linux (Ubuntu、Linux Mint)で使われるパッケージ管理システム。

パッケージのインストール、アップデート、検索、削除を行うことができる。依存関係のあるパッケージも自動で解決される。

インストール中にプログレスバーが表示されるなどのユーザーライクな設計によって開発されているため、日常的に使用するパケージ管理に適している。

一方で、従来から存在する $ apt-get コマンドと比べて比較的新しいツールであるため、出力形式などが今後のアップデート時に変更される可能性がある。

そのため、シェルスクリプトでは依然として枯れた技術である $ apt-get を使用することが推奨されている。

また、一部の高度な操作(例:$ apt-get source$ apt-get build-dep など)は $ apt-get にしか存在しないことがある。

日常的なパッケージ管理では $ apt が推奨。
シェルスクリプトでは $ apt-get が推奨。

$ apt$ apt-get の比較表

$ apt install

パッケージをインストールする
$ sudo apt install パッケージ名

$ apt remove

パッケージをアンインストールする
$ sudo apt remove パッケージ名

$ apt purgeコマンドと異なり、パッケージのみが削除され、設定ファイルは残る。

$ apt purge

パッケージを設定ファイルを含めて削除する
$ sudo apt purge パッケージ名

$ apt update

リポジトリから最新のパッケージ情報を取得(fetch)する。インストール済みのパッケージはアップデートされない。

リポジトリを更新する
$ sudo apt update

$ apt upgrade

$ apt update で更新したパッケージ情報をもとに、インストール済みのファイルをアップデートする。

パッケージをアップデートする
$ sudo apt upgrade

$ apt full-upgrade

インストールされている全てのパッケージを最新バージョンにアップデートし、依存関係の解決も行う。

$ apt upgrade と異なり、新しいバージョンのパッケージをインストールするために、古いパッケージや依存関係が削除される場合がある。

パッケージをアップデートする(依存関係の解決行う)
$ sudo apt full-upgrade

$ apt upgrade では、既存のパッケージが削除されることはない。
$ apt full-upgrade は必要に応じて依存関係を変更する。

$ apt autoremove / $ apt clean

$ apt autoremove で依存関係で不要になったパッケージファイルを削除し、$ apt clean では、キャッシュされた /var/cache/apt/archives/***.deb ファイルを削除する。

不要になったパッケージファイル、キャッシュを削除する
$ sudo apt autoremove
$ sudo apt clean

$ apt search

リポジトリ内のパッケージを検索する
$ apt search パッケージ名

$ apt list

パッケージを一覧表示する
$ apt list 
インストール済みパッケージを一覧表示する
$ apt list --installed

$ apt show

指定したパッケージの情報を表示する
$ apt show パッケージ名

$ apt-get との比較

操作 $ apt-get $ apt
パッケージのインストール $ apt-get install $ apt install
リポジトリの更新 $ apt-get update $ apt update
パッケージのアップデート $ apt-get upgrade $ apt upgrade
パッケージのアップデート
(依存関係の解決を含む)
$ apt-get dist-upgrade
distribution upgrade
$ apt full-upgrade
パッケージの削除 $ apt-get remove $ apt remove
パッケージの検索 $ apt-cache search $ apt search
システムの情報表示 - $ apt list / $ apt show

リポジトリの設定

パッケージのインストール元であるリポジトリの URL などは

  • /etc/apt/sources.list
  • /etc/apt/sources.list.d/ ディレクトリ配下の ***.list ファイル

で管理される。

Ubuntu では、公式パッケージのリポジトリを /etc/apt/sources.list で管理し、サードパーティ製のパッケージは /etc/apt/sources.list.d/ ディレクトリで管理される。

以下のような形式のテキストファイルになっている。

パッケージ.list
deb URL バージョン 種類
deb-src URL バージョン 種類

deb : バイナリ形式で取得(通常のインストール)
deb-src : ソースコードで取得(ダウンロードのみ)
種類main(公式)、universe(コミュニティによってサポート)、restrictedmultiversecontribnon-free

$ dpkg

$ apt 同様に、Debian 系 Linux(Ubuntu、Linux Mint) で利用されるパッケージ管理コマンド。

パッケージを直接ダウンロードする機能はなく、手動でダウンロードした ***.deb ファイルをインストールするために利用される。

依存関係を自動的に解決しない ため、依存するライブラリやパッケージを手動でインストールする必要がある。

$ apt よりも低級 な操作になるため、日常的に使用されるというよりも、トラブルシューティング、その他特殊な状況でのみ利用される。

$ dpkg -i

パッケージをインストールする
$ dpkg -i パッケージ.deb
$ dpkg --install パッケージ.deb

$ dpkg -r

パッケージをアンインストールする
$ dpkg -r パッケージ名
$ dpkg --remove パッケージ名

$ dpkg -P コマンドと異なり、パッケージのみが削除され、設定ファイルは残る。

$ dpkg -P

パッケージを設定ファイルを含めて削除する
$ dpkg -P パッケージ名
$ dpkg --purge パッケージ名

$ dpkg -l

インストール済みのパッケージを一覧表示する
$ dpkg -l
$ dpkg --list

$ dpkg -S

指定したファイルがどのパッケージからインストールされたものかを表示する
$ dpkg -S ファイル名
$ dpkg --search ファイル名

$ dpkg -L

指定したパッケージに含まれるファイルを一覧表示する
$ dpkg -L パッケージ名
$ dpkg --listfiles パッケージ名

$ dpkg -s

指定したパッケージの情報を表示する
$ dpkg -s パッケージ名
$ dpkg --status パッケージ名

$ dpkg -C

インストール時のエラーによって、部分的にインストールされてしまったパッケージを検索することができる。

部分的にインストールされたパッケージを検索する
$ dpkg -C
$ dpkg --audit

$ dpkg-reconfigure

インストール済みパッケージに対して、インストール時の設定を再設定する
$ dpkg-reconfigure パッケージ名

$ yum

Yellowdog Updater, Modified

RPM ベースの Linux (Red Hat Enterprise Linux、CentOS、Fedora)で利用されるパッケージ管理ツール。

依存関係のあるパッケージも自動で解決される

また、グループ単位でパッケージをインストールすることができる。

$ dnf$ yum よりも新しいコマンドで、依存関係の解決や速度の改善などがより高機能になっている。

後継版の $ dnf コマンドは、ほとんど $ yum と同じように使える

$ yumdownloader

***.rpm ファイルをダウンロードする。インストールまでは行わない

rpm ファイルをダウンロードする(インストールはしない)
$ yumdownloader パッケージ名
rpm ファイルをダウンロードする(依存関係のあるファイルも含める)
$ yumdownloader --resolve パッケージ名

$ yum install

パッケージをインストールする
$ yum install パッケージ

$ yum groupinstall / $ yum groups install

指定したグループのパッケージをインストールする
$ yum groupinstall グループ名
$ yum groups install グループ名

$ yum remove / $ yum erase

パッケージを削除する
$ yum remove パッケージ名
$ yum erase パッケージ名

$ yum check-update / $ yum list updates

アップデート可能なパッケージを確認する
$ yum -check-update
$ yum list updates

$ yum update

インストール済みのパッケージをすべてアップデートする
$ yum update
指定されたパッケージをアップデートする
$ yum update パッケージ

$ yum info

パッケージ情報を表示する
$ yum info パッケージ名

$ yum list

全ての利用可能なパッケージを一覧表示する
$ yum list

$ yum list installed

インストール済みパッケージを一覧表示する
$ yum list

$ yum groups list

パッケージグループを一覧表示する
$ yum groups list

$ yum search

パッケージ情報を検索する
$ yum search キーワード

$ yum repolist

リポジトリ一覧を表示する
$ yum repolist

リポジトリの設定

/etc/yum.repos.d/ ディレクトリ配下にある ***.repo ファイルで管理される。

設定

/etc/yum.conf ファイルで管理される。

$ rpm

Red Hat Package Manager

Red Hat 系ディストリビューション(RHEL、CentOS、Fedora)で利用されるパッケージ管理コマンド。

RPM 形式のパッケージは、特定のソフトウェアをインストールするためのバイナリファイルやスクリプトがまとめられたアーカイブ形式のファイル(***.rpm)になっている。

依存関係を自動的に解決しない ため、依存するライブラリやパッケージを手動でインストールする必要がある。

$ yum よりも低級 な操作になるため、日常的に使用されるというよりも、トラブルシューティング、その他特殊な状況でのみ利用される。

$ rpm -i

パッケージをインストールする
$ rpm -i パッケージ.rpm
$ rpm --install パッケージ.rpm
詳細情報を表示しながらインストール
$ rpm -ivh パッケージ.rpm
実際にはインストールせず、不足しているライブラリがないかなどをチェックする
$ rpm -i --test パッケージ.rpm

$ rpm -U

パッケージがインストールされていない場合、インストールもしてくれる。

インストール済みのパッケージをアップデートする
$ rpm -U パッケージ.rpm
$ rpm --upgrade パッケージ.rpm

$ rpm -F

指定したパッケージがインストールされていない場合、何も行わない。

パッケージがインストール済みの場合のみ、アップデートを行う
$ rpm -F パッケージ.rpm
$ rpm --freshen パッケージ.rpm

$ rpm -e

パッケージを削除する
$ rpm -e パッケージ名
$ rpm --erase パッケージ名

$ rpm -q

指定したパッケージがインストール済みか照会する
$ rpm -q パッケージ
$ rpm --query パッケージ

-a / --all : インストール済みのすべてのパッケージを表示
-f ファイル名 / --file ファイル名 : 指定したファイルが含まれるパッケージ名を表示
-i / --info : パッケージの詳細情報を表示
-l / --list : パッケージに含まれるファイル一覧を表示
-R / --requires : パッケージが依存するパッケージを表示
-p / --package : インストールの有無に関わらず、指定したパッケージの情報を表示

以下の違いに注意
$ rpm -i パッケージ     # パッケージのインストール
$ rpm -q -i パッケージ  # パッケージの詳細情報を表示
$ rpm -qi パッケージ    # パッケージの詳細情報を表示

$ rpm -v

詳細情報を表示する。

詳細情報を表示しながらパッケージをインストールする
$ rpm -iv パッケージ.rpm

$ rpm -h / $ rpm --hash

進行状況を # で表示してくれる。

進行状況を表示しながらパッケージをインストールする
$ rpm -ih パッケージ.rpm

$ gem

Ruby で記述されたライブラリを Gem と呼び、Ruby のパッケージ管理システムを RubyGems と言う。

RubyGems を操作するためには $ gem コマンドを使用する。$ gemコマンドを利用することで Gem のインストール、更新、検索、アンイントールが可能。

デフォルトで公式リポジトリ(RubyGems.org)が使用される。

$ gem install

Gem をインストールする
$ gem install Gem名
$ gem install cocoapods

$ gem list

インストール済みのGemを確認する
$ gem list

$ gem uninstall

Gem をアンインストールする
$ gem uninstall Gem名

$ gem update

すべてのインストール済みの Gem をアップデートする
$ gem update

引数に特定の Gem 名を与えると、指定された Gem のみアップデートを行う。

指定された Gem をアップデートする
$ gem update Gem名

$ gem search

公式の Gem リポジトリである RubyGems.org からキーワードを含むライブラリ、パッケージを検索する。

パッケージを検索する
$ gem search 検索ワード
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?