ESXi6.7上のcentos7.7でCD/DVDからrpmパッケージをインストールする

インターネットやリポジトリサーバにつながっていない仮想化サーバ上のCentOSについて、物理メディアおよび仮想メディアからのrpmパッケージインストールについて記載します。

仮想サーバ：CentOS7.7
仮想化サーバ：VMware ESXi6.7



#1.メディアの搭載
vmware vsphere web clientから、メディアを搭載します。

仮想マシンの画面から、`編集`を選択します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/778a51be-c399-793b-7d44-307db73a1276.png)

`CD/DVDドライブ1`の項目にて、`ホストデバイス`または`データストアISOファイル`を選択し、その右の`接続`にチェックを入れて、下部の`保存`を押下します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/201787/7e5cc5db-fe7d-6183-695c-85f214c0189c.png)

これでCentOS側が認識します。



#2.メディアのマウント
まずはマウント用のディレクトリを作成します。

```:ディレクトリ作成
# mkdir /mnt/cdrom
```

次に、マウント用ディレクトリにメディアをマウントします。

```:マウント
# mount -t iso9660 /dev/cdrom /mnt/cdrom
mount: /dev/sr0 is write-protected, mounting read-only
```

＃もし、メディアが認識していなければ、次のようなアラートが発生します。
`mount: no medium found on /dev/sr0`

```:マウント失敗
# mount -t iso9660 /dev/cdrom /mnt/cdrom
mount: /dev/sr0 is write-protected, mounting read-only
mount: no medium found on /dev/sr0
```



#3.リポジトリ設定
メディアをリポジトリとするよう、設定ファイルを作成します。

```:設定ファイル作成
# touch /etc/yum.repos.d/local_dvd.repo
# vi /etc/yum.repos.d/local_dvd.repo
```

```/etc/yum.repos.d/local_dvd.repoの内容
[local_dvd]
name=CentOS 7 x86_64 DVD
baseurl=file:///mnt/cdrom/
enabled=0
gpgcheck=0
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-CentOS-7
```


#4.rpmパッケージのリスト表示
yum listコマンドでrpmパッケージが見えるかどうかを確認します。

```:rpmのリスト表示
# yum --disablerepo=\* --enablerepo=local_dvd list
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
local_dvd                                                                                 | 3.6 kB  00:00:00
(1/2): local_dvd/group_gz                                                                 | 165 kB  00:00:00
(2/2): local_dvd/primary_db                                                               | 3.2 MB  00:00:00
インストール済みパッケージ
NetworkManager.x86_64                                     1:1.18.0-5.el7                                @anaconda
NetworkManager-libnm.x86_64                               1:1.18.0-5.el7                                @anaconda
NetworkManager-team.x86_64                                1:1.18.0-5.el7                                @anaconda
《以下略》

利用可能なパッケージ
389-ds-base.x86_64                                        1.3.9.1-10.el7                                local_dvd
389-ds-base-libs.x86_64                                   1.3.9.1-10.el7                                local_dvd
ElectricFence.x86_64                                      2.2.2-39.el7                                  local_dvd
《以下略》
```




#5.rpmパッケージのインストール
実際にyum installコマンドでrpmパッケージをインストールします。
今回はnfs-utilsコマンドをインストールしています。

```:rpmパッケージインストール
# yum --disablerepo=\* --enablerepo=local_dvd install nfs-utils
読み込んだプラグイン:fastestmirror
Loading mirror speeds from cached hostfile
依存性の解決をしています
--> トランザクションの確認を実行しています。
---> パッケージ nfs-utils.x86_64 1:1.3.0-0.65.el7 を インストール
--> 依存性の処理をしています: libtirpc >= 0.2.4-0.7 のパッケージ: 1:nfs-utils-1.3.0-0.65.el7.x86_64
《以下略》


トランザクションの要約
=================================================================================================================
インストール  1 パッケージ (+15 個の依存関係のパッケージ)
総ダウンロード容量: 1.5 M
インストール容量: 4.3 M
Is this ok [y/d/N]: y
《以下略》

完了しました!
```

以上で完了です。

#参考
CentOS(RHEL)7でDVD(CD-ROM)をリポジトリに追加してインストールディスクからyumを行う
https://orebibou.com/2015/02/centosrhel7%E3%81%A7dvdcd-rom%E3%82%92%E3%83%AA%E3%83%9D%E3%82%B8%E3%83%88%E3%83%AA%E3%81%AB%E8%BF%BD%E5%8A%A0%E3%81%97%E3%81%A6%E3%82%A4%E3%83%B3%E3%82%B9%E3%83%88%E3%83%BC%E3%83%AB%E3%83%87/

ローカルメディア(DVDなど)をyumのリポジトリとして登録
https://shimi-dai.com/register-yum-with-localmedia/

RHELのDVD-ROMをyumのリポジトリとして登録
http://ossfan.net/setup/yum-01.html