LoginSignup
29
23

More than 3 years have passed since last update.

RHEL8/CentOS8 で yum(dnf) を使って DVD からパッケージをインストールする

Posted at

要約

  • インターネットアクセスが制限されている RHEL8/CentOS8 で yum(dnf) を使ってパッケージをインストールする方法。
  • 7系までとは違い、 DVD のリポジトリが AppStreamBaseOS に分かれるので注意が必要。
  • dnf が標準になったので dnf を使ってドヤれる。1

背景

セキュリティは厳しいんだけど、そんなにリッチじゃない環境だとインターネットにアクセスできず、プライベートリポジトリサーバも立っていない所は多々あります。
そんな環境で先日リリースされたばかりの CentOS8 をセットアップする機会があったので、早速 DVD から yum(dnf) でパッケージをインストールする方法を調べてみました。

前提条件

確認したのは CentOS8.0(1905) です。
DVD は /dev/sr0 にマッピングされているものとします。 ISO ファイルをこの RHEL8/CentOS8 のサーバ内に保存している場合は、 /dev/sr0 をその ISO ファイルに読み替えてください。

手順

リポジトリを設定する

  1. マウントディレクトリを作成。

    # mkdir /media/rhel8dvd
    
  2. DVD をマウント。

    # mount -o loop /dev/sr0 /media/rhel8dvd
    
  3. リポジトリを追加。

    # vi /etc/yum.repos.d/InstallMedia.repo
    

    /etc/yum.repos.d/InstallMedia.repo の中身は RHEL8 か CentOS8 かで微妙に異なります。

    • RHEL8 の場合

      [InstallMedia-BaseOS]
      name=Red Hat Enterprise Linux 8 - BaseOS
      metadata_expire=-1
      gpgcheck=1
      enabled=1
      baseurl=file:///media/rhel8dvd/BaseOS/
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
      
      [InstallMedia-AppStream]
      name=Red Hat Enterprise Linux 8 - AppStream
      metadata_expire=-1
      gpgcheck=1
      enabled=1
      baseurl=file:///media/rhel8dvd/AppStream/
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
      
    • CentOS8 の場合

      [InstallMedia-BaseOS]
      name=Red Hat Enterprise Linux 8 - BaseOS
      metadata_expire=-1
      gpgcheck=1
      enabled=1
      baseurl=file:///media/rhel8dvd/BaseOS/
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
      
      [InstallMedia-AppStream]
      name=Red Hat Enterprise Linux 8 - AppStream
      metadata_expire=-1
      gpgcheck=1
      enabled=1
      baseurl=file:///media/rhel8dvd/AppStream/
      gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
      

      RHEL8 と CentOS8 では gpgkey のファイル名が異なります。
      編集出来たら vim を保存して終了。

  4. キャッシュクリア

    # dnf clean all
    

    dnf コマンドを使った最初のドヤりポイント。

DVD からパッケージをインストール

リポジトリを設定したら DVD からパッケージをインストールすることができます。

# dnf install httpd

標準で設定されているリポジトリを一時的に無効化して DVD のリポジトリだけを利用する場合は次のように実行します。

# dnf install --disablerepo=\* --enablerepo=InstallMedia-* httpd

・・・そういえば、 CentOS7 までの yum は有効になっているリポジトリの内、一つでもアクセスできないリポジトリがあると何もインストールできなかったのが、 RHEL8/CentOS8 ではアクセスできるリポジトリだけで依存関係を解決できるならインストールできるようになった気がする。

余談

dnf コマンドは yum コマンドに置き換えてもそのまま動作します。
ただ、実体としては dnf-3 に置き換わっているみたいですね。

# ls -l /usr/bin/{yum,dnf*}
lrwxrwxrwx. 1 root root    5 May 13 19:34 /usr/bin/dnf -> dnf-3
-rwxr-xr-x. 1 root root 1954 May 13 19:34 /usr/bin/dnf-3
lrwxrwxrwx. 1 root root    5 May 13 19:34 /usr/bin/yum -> dnf-3

FYI

おしまい。


  1. 個人の感想です。 

29
23
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
29
23