Linuxを少しでも使っている人にとって、パッケージ管理システムという単語を聞いた事があるでしょう。パッケージ管理システムはLinuxサーバを運営するうえで欠かせないスキルです。
しかしパッケージ管理には色々な種類があるな。具体的にどう違うのか詳しく理解している人は少ないでしょう。この記事では、Debian系で使われる「apt」「apt-get」「aptitude」の違いについて、プログラマでもあるライターのとーまと一緒に解説していきます。

ライター/とーま

東京でインフラエンジニアとして働いている会社員。
Linux運用や構築の経験もある。YouTube/サウナ/NBAの試合を見ながらお酒を呑むのが生きがい。

「apt」「apt-get」「aptitude」の違いとは?

image by iStockphoto

「apt」「apt-get」「aptitude」はどちらもLinuxなどのUNIX系OSで使われるパッケージ管理システムです。パッケージ管理システムとは、ソフトウェアを管理(インストール・削除など)することに使われます。Linuxをサーバとして用いる企業は多いので、Linuxのパッケージ管理について覚えておいて損はないでしょう。

どちらもDebian系のパッケージ管理システム

代表的なLinuxOSとしてCentOS(RedHat系)とUbuntu(Debian系)がありますが、2つともパッケージ管理の方式が違います。CentOS(RedHat系)はrpm形式で、Ubuntu(Debian系)はdeb形式です。

deb形式として利用することができるのが「apt」「apt-get」「aptitude」となります。「apt」「apt-get」「aptitude」に大きな違いはありません。しかし少し違う点もあるので下記にまとめました。

・「apt-get」は設計上のミスがあり、アップグレードのパッケージ選択規則は厳しい
・「apt」はapt-getの設計上のミスを修正したもので、アップグレードのパッケージ選択規則は緩い
・「aptitude」はaptitudeは外部プロジェクト(派生APT)として誕生し、アップグレードのパッケージ選択規則は緩いです

推奨されるのはどれ?

「apt」「apt-get」「aptitude」の違いを紹介しましたが、結局どのパッケージ管理システムを使った方が良いのでしょうか?現在のDebianでは「apt」コマンドが推奨されています。「apt-get」は設計上のミスがあり、「aptitude」は外部プロジェクトとして誕生した派生のシステムでまだ未完成の状態です。

また、「apt」はアップグレードに関してのパッケージ選択規則がゆるいのでコマンドに任せてアップグレードしやすいといわれています。以上の理由からDebian系のパッケージ管理システムとして「apt」がおすすめです。

\次のページで「Debian系とRedHat系でのパッケージ管理システムの違いとは?」を解説!/

Debian系とRedHat系でのパッケージ管理システムの違いとは?

image by iStockphoto

Debian系とRedHat系はどちらも有名なLinuxのディストリビューションです。ディストリビューションとはカーネルの他、必要なソフトウェアをパッケージ化したものとなります。

カーネルはOSの中心部分ですが、カーネルだけではOSとして扱うことはできません。一般的なOSの形にして、Linuxを利用しやすいようにするために様々なソフトウェアと組み合わせる必要があります。このようにソフトウェアなどをパッケージにしてすぐに使える状態にしたものが「ディストリビューション」です。

Debian系はUbuntu、Redhat系はCentOS

Debian系は有名なLinuxのディストリビューションです。さまざまなCPU上での動作サポートと膨大なアプリケーション数が特徴で、多くの企業のシステムに採用されています。

UbuntuはDebianをベースとして派生したディストリビューションです。特にユーザフレンドリなディストリビューションとして有名で、RedHat社が開発した商用向けのLinuxディストリビューションとなります。CentOSはRHELのクローン(複製)OSでRHELの商用部分を取り除いたディストリビューションです。

Debian系はdeb形式でパッケージを管理

Debian系(Ubuntu)はdeb形式でパッケージを管理しています。パッケージ形式はdeb形式で、パッケージ管理コマンドはdpkgコマンドです。リポジトリを利用したパッケージ管理コマンドとしてapt コマンドが使用されます。

Redhat系はrpm形式でパッケージを管理

RedHat系(CentOS)はrpm形式でパッケージを管理しています。パッケージ形式はrpm形式で、パッケージ管理コマンドはrpmコマンドです。リポジトリを利用したパッケージ管理コマンドとしてyum (dnf) コマンドが使用されます。

\次のページで「「dpkgコマンド」と「aptコマンド」の違い」を解説!/

「dpkgコマンド」と「aptコマンド」の違い

image by iStockphoto

「dpkgコマンド」と「aptコマンド」はどちらもパッケージ管理をすることができます。「dpkgコマンド」と「aptコマンド」の違いをご説明しましょう。

dpkgコマンドは個々のパッケージ単位で管理します。aptコマンドはリポジトリを参照し、依存関係を含めて管理することが可能です。aptコマンド依存性を解決しながら順番に必要なパッケージをインストールしてくれます。

dpkgコマンド:個々のパッケージ単位で管理

個々のパッケージ単位で管理を行うのがdpkgコマンドです。依存関係は自動で解決されませんが、事前に必要なパッケージ情報は表示されます。

使用したいパッケージのバージョンを指定したい場合にdpkgコマンドが使われることが多いです。しかし、必要なパッケージは個別に指定して、インストールする順番を意識しないといけません。

aptコマンド:リポジトリを利用して依存性を解決しながらパッケージを管理

リポジトリを利用して依存関係を含めて管理できるのがaptコマンドです。依存性を解決するために現在使用しているOSのバージョンに合わせて、適切なバージョン、依存関係のあるパッケージも一緒にインストールします。このような点がdpkgコマンドとは違う点です。

推奨されるのは基本的にaptコマンド

「apt」「apt-get」「aptitude」に大きな違いはなく、3つともDebian系(Ubuntu)のパッケージ管理システムです。ソフトウェアを管理(インストール・削除など)するパッケージ管理システムは、Linuxを運用する上で必須のスキルとなります。「apt」「apt-get」「aptitude」に大きな違いはありません。設計上のミスなどを考慮すると、推奨されるのは「apt」コマンドです。

" /> 簡単でわかりやすい!「apt」・「apt-get」・「aptitude」の違いとは?推奨されるのはどれ?ITエンジニアが詳しく解説 – Study-Z
IT・プログラミング雑学

簡単でわかりやすい!「apt」・「apt-get」・「aptitude」の違いとは?推奨されるのはどれ?ITエンジニアが詳しく解説

Linuxを少しでも使っている人にとって、パッケージ管理システムという単語を聞いた事があるでしょう。パッケージ管理システムはLinuxサーバを運営するうえで欠かせないスキルです。
しかしパッケージ管理には色々な種類があるな。具体的にどう違うのか詳しく理解している人は少ないでしょう。この記事では、Debian系で使われる「apt」「apt-get」「aptitude」の違いについて、プログラマでもあるライターのとーまと一緒に解説していきます。

ライター/とーま

東京でインフラエンジニアとして働いている会社員。
Linux運用や構築の経験もある。YouTube/サウナ/NBAの試合を見ながらお酒を呑むのが生きがい。

「apt」「apt-get」「aptitude」の違いとは?

image by iStockphoto

「apt」「apt-get」「aptitude」はどちらもLinuxなどのUNIX系OSで使われるパッケージ管理システムです。パッケージ管理システムとは、ソフトウェアを管理(インストール・削除など)することに使われます。Linuxをサーバとして用いる企業は多いので、Linuxのパッケージ管理について覚えておいて損はないでしょう。

どちらもDebian系のパッケージ管理システム

代表的なLinuxOSとしてCentOS(RedHat系)とUbuntu(Debian系)がありますが、2つともパッケージ管理の方式が違います。CentOS(RedHat系)はrpm形式で、Ubuntu(Debian系)はdeb形式です。

deb形式として利用することができるのが「apt」「apt-get」「aptitude」となります。「apt」「apt-get」「aptitude」に大きな違いはありません。しかし少し違う点もあるので下記にまとめました。

・「apt-get」は設計上のミスがあり、アップグレードのパッケージ選択規則は厳しい
・「apt」はapt-getの設計上のミスを修正したもので、アップグレードのパッケージ選択規則は緩い
・「aptitude」はaptitudeは外部プロジェクト(派生APT)として誕生し、アップグレードのパッケージ選択規則は緩いです

推奨されるのはどれ?

「apt」「apt-get」「aptitude」の違いを紹介しましたが、結局どのパッケージ管理システムを使った方が良いのでしょうか?現在のDebianでは「apt」コマンドが推奨されています。「apt-get」は設計上のミスがあり、「aptitude」は外部プロジェクトとして誕生した派生のシステムでまだ未完成の状態です。

また、「apt」はアップグレードに関してのパッケージ選択規則がゆるいのでコマンドに任せてアップグレードしやすいといわれています。以上の理由からDebian系のパッケージ管理システムとして「apt」がおすすめです。

\次のページで「Debian系とRedHat系でのパッケージ管理システムの違いとは?」を解説!/

次のページを読む
1 2 3
Share: