LoginSignup
1
1

More than 1 year has passed since last update.

LPIC対策 ~RedHat系のパッケージ管理(rpm, yum)~

Last updated at Posted at 2021-06-04

はじめに

  • LPIC試験対策のためにパッケージ管理を理解したいと思った。
  • RedHat系はrpm,yumパッケージという二種類のパッケージ管理コマンドがある。
    • Macはbrewコマンド、Debian系のOS(Ubuntu, Kali Linuxなど)はaptコマンド、、、他のOSだと1OSにつき1パッケージ管理コマンドがデフォルトで用意されている(*Macはちょっと異なる。。。)
    • なぜ、、RedHat系だけ二種類のコマンドがデフォルトで用意されているのだろうか???

ふたつの共通点

  • Red Hat(CentOS)のパッケージマネージャ。
  • パッケージのインストール、アンインストール更新が可能。

RPMパッケージマネージャ

由来

RPM(RedHat Package Manager)

特徴

  • 依存関係を管理してくれる ≒ 依存関係を指定してくれる
  • 解決はしてくれない。ただ教えてくれるだけ。

rpmコマンドの使い方

 パッケージのインストール
shell
rpm -ivh package_filename



例: rpm -ivh firefox-78.4.1-1.el7.centos.x86_64.rpm // rpm
yum install firebox // yum

オプション 長いオプション 意味
-i --install パッケージをインストール
-v 情報表示を増やす
-h --hash (#) インストール時の経過を#(ハッシューマーク)で表示する
 パッケージのアップデート
shell
rpm -Uvh package_filename
オプション 名称 意味
-U --upgrade パッケージをアップグレードする(なければインストール)
パッケージのアンインストール
shell
rpm -evh package_name
オプション 長いオプション 意味
-e --erase パッケージをアンインストールする
その他オプション
オプション 長いオプション 意味
-ql --query --list パッケージに含まれるファイルを表示する
-qa --list -all インストール済みのすべてのrpmパッケージの一覧を表示する

YUMパッケージマネージャ

由来

Yellowdog Updater Modified(イエロードッグアップデーターの修正版)

=> 元々はYellow Dog Linuxのパッケージ管理システムであるYUP(Yellowdog Updater)というもののが前身にあった。YUPをRedHat Version にしたのがYum!!!

このようなことから
YuModified(修正)と呼ばれている。

特徴
  • 自動で依存関係を解決してくれる。
yumコマンドの使い方
更新の確認
  • 使用しているシステムに利用可能な更新があるインストール済みのパッケージを確認する。
    例: Appstoreを開いてアップデート可能なアプリを確認する行為。(*この時点ではアップデートボタンはクリックしていない。) スクリーンショット 2021-06-03 20.12.28.png
shell
yum check-update
パッケージのインストール
shell
yum install package_name
パッケージの更新
  • 一度に更新するパッケージ数を1つ、複数、または全てのパッケージから選択できる。
    1. 単一パッケージの更新


スクリーンショット 2021-06-03 20.12.28.png
例: 画像でいうとNumbersアプリのアップデートボタンをクリックする。 == yum update Numbers

shell
 yum update package_name

2. 全てのパッケージとそれらの依存関係の更新
  • パッケージとその依存関係をすべて更新するには、引数なし。


スクリーンショット 2021-06-03 20.12.28.png
例: 右上のすべてをアップデートボタンをクリックする。

shell
yum update

3. パッケージの削除
  • パッケージのインストールと同様に、yum を使用するとパッケージのアンインストールができます。
yum remove package_name

依存関係とは。。。

  • ある作成したプログラムを動作させる際に、動作させるために必要な別のプログラムがある場合、作成したプログラムは、必要なプログラムに依存しているまたは依存関係にあると言います。
python(簡単な依存関係)
1. a = 1+2
2. b = a +3 

マルチスレッド(同時実行)が不可能 => 依存関係がある

yumはもう古い?

  • yumコマンドは廃止されるらしい。。。 => 後継ツールはdnfコマンド!!

yum はpython2系なのでいつまでも使い続けられない。。。(現在はpython3系が主流)

dnfはpython3系で動くためdnfコマンドが後継ツールになった!!!

dnfコマンドの使い方はyumコマンドと同じなので使いやすい・覚えやすい!!!

補足

1
1
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
1