Red Hat Enterprise Linux / CentOS
前回、前々回と、Windows 10で導入しやすいという理由からUbuntuとSUSE Linux Enterprise ServerまたはopenSUSE Leapでパッケージをアップデートする方法を取り上げた。使用する管理コマンドは異なるが、パッケージ管理の概念と操作の方法は似通っていることがわかったんじゃないかと思う。
個人での利用においてはUbuntuが多いが、エンタープライズでの運用という視点で見ると、やはりRed Hat Enterprise LinuxまたはCentOSが依然として多い。先日取り上げたSUSE Linux Enterprise Serverは欧州での企業ユースが多いが、米国や日本はRed Hat Enterprise Linuxが多数を占める状況だ。事業規模の小さい業務ではCentOSが使われるケースも多い。
Red Hat Enterprise LinuxやCentOSのパッケージ管理システムの概念はこれまでに取り上げてきたUbuntuやSUSE Linux Enterprise Linuxとよく似ている。今回は、Red Hat Enterprise LinuxまたはCentOSのパッケージをアップデートする方法を取り上げる。
CentOSでパッケージアップデート
今回は無償で使用できるCentOSのパッケージアップデートを取り上げる。Red Hat Enterprise Linuxでも同じことができる。まず、ほかのLinuxディストリビューションと同じようにパッケージ管理のメタデータを更新する。メタデータの更新は「yum check-update」で実施する。
yum check-updateはメタデータを更新するとともに、更新対象となるパッケージ一覧の表示も同時に行う。アップデート対象を確認したら、次は「yum update」でパッケージのアップデートを実施する。
アップデート対象が表示されたあとで、次のようにアップデートを実施するかどうか聞かれるのでy↩と入力して処理を進める。
パッケージアップデートを実施すると、依存関係などからインストールしておく必要のないパッケージが生まれることがある。こうした不要になったパッケージは「package-cleanup --leaves」というコマンドで一覧表示させることができる。「yum remove」でパッケージを削除できるので、この2つのコマンドを組み合わせることで、不要になったパッケージをアンインストールすることができる。コマンドとしては「yum remove $(package-cleanup --leaves)」のようになる。
なお、package-cleanupはyum-utilsというパッケージに含まれているため、利用する前に「yum install yum-utils」のようにyum-utilsをインストールしておく必要がある。
CentOS、openSUSE Leap、Ubuntuの違いまとめ
今回取り上げたCentOSと、これまでに取り上げたopenSUSE LeapおよびUbuntuとのコマンドの違いをまとめると次のようになる。
RHEL/CentOS | SLES | Ubuntu |
---|---|---|
yum check-update | zypper refresh | apt update |
yum check-update | zypper list-updates | apt list --upgradable |
yum update | zypper update | apt upgrade |
yum remove $(package-cleanup --leaves) | zypper packages --orphaned --unneeded; zypper remove パッケージ名 | apt autoremove |
後発だけあってUbuntuのaptはこの辺りの操作がわかりやすくまとまっている印象を受ける。しかし、基本的にできることはどのディストリビューションでもそれほど変わらない。基本的な仕組みが似ているので、できることにもあまり違いがないというのが現状だ。
パッケージのインストールやアンインストールといったもっと基本的な操作をまとめると次のようになる。
RHEL/CentOS | SLES | Ubuntu |
---|---|---|
yum install パッケージ名 | zypper install パッケージ名 | apt install パッケージ名 |
yum remove パッケージ名 | zypper remove パッケージ名 | apt remove パッケージ名 |
yum search パッケージ名 | zypper search パッケージ名 | apt search パッケージ名 |
こんな感じで使用するLinuxディストリビューションを変更しても、パッケージ管理に関してはそれほど大きな違いがない。最初はコマンドの違いに戸惑うかもしれないが、一度整理してしまえば結構どのディストリビューションも利用できるようになる。今使っているLinuxディストリビューションに飽きてきたら、ためしに他のLinuxディストリビューションを使ってみるというのも手だと思う。