VirtualBoxにisoファイルをマウントしてローカルリポジトリでdnfを利用する方法

VirtualBoxにisoファイルをマウントしてローカルリポジトリでdnfを利用する方法

Posted at December 28,2023 11:55 PM
Tag:[]

VirtualBoxにisoファイルをマウントしてローカルリポジトリでdnfを利用する方法を紹介します。

ここではWindowsマシンにVirtualBoxをインストールしてCentOSのゲストOSを作成し、Windowsのフォルダにisoファイルを配置している前提で進めます。

利用したいisoファイルは事前に入手し、Windowsの任意のフォルダにダウンロードしておいてください。

1.isoファイルのマウント

該当のゲストOSが停止・選択している状態で、VirtualBoxマネージャーの「設定」をクリック。

「ストレージ」をクリック。

「コントローラーIDE」にisoファイルを設定します。この例ではすでに設定してしまっているので、すいませんが他の記事を参考に設定してください。

また、このサンプルではCentOSのisoのみを設定していますが、デフォルトではVBoxGuestAdditions.isoがマウントされている可能性があります。その状態で後続のマウントを実施すると期待する結果にならないようなので、マウントしたいisoのみにしてください。

そしてゲストOSを起動して、/media配下にcdromディレクトリを作成し、mountコマンドを実行します。

# cd /media
# mkdir cdrom
# mount /dev/cdrom /media/cdrom
mount: /media/cdrom: 警告: デバイスは書き込み禁止です、読み込み専用でマウントします.

これで/media/cdrom配下が下記の状態になればOKです。

# pwd
/media/cdrom
# ls
AppStream  BaseOS  EFI  TRANS.TBL  images  isolinux  media.repo

2.リポジトリの設定変更

デフォルトでは外部のリポジトリを参照する設定になっているので、それらを変更します。

ちなみに、何も設定していない状態でdnf listを実行すると、次のようなエラーになります。

# dnf repolist
CentOS-8 - AppStream                              6.8  B/s |  38  B     00:05
repo 'AppStream' のメタデータのダウンロードに失敗しました。
エラー: repo 'AppStream' のメタデータのダウンロードに失敗しました。

/etc/yum.repos.d/CentOS-AppStream.repoのenabledを1(有効)から0(無効)に変更します(★の行、以下同様)。

/etc/yum.repos.d/CentOS-AppStream.repo

 :
[AppStream]
name=CentOS-$releasever - AppStream
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=AppStream&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/AppStream/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

/etc/yum.repos.d/CentOS-Base.repoのenabledを1(有効)から0(無効)に変更します。

/etc/yum.repos.d/CentOS-Base.repo

 :
[BaseOS]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=BaseOS&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/BaseOS/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

/etc/yum.repos.d/CentOS-Extras.repoのenabledを1(有効)から0(無効)に変更します。

/etc/yum.repos.d/CentOS-Extras.repo

 :
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
#baseurl=http://mirror.centos.org/$contentdir/$releasever/extras/$basearch/os/
gpgcheck=1
enabled=0★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

/etc/yum.repos.d/CentOS-Media.repoのenabledを0(無効)から1(有効)に変更します。

/etc/yum.repos.d/CentOS-Media.repo

 :
[c8-media-BaseOS]
name=CentOS-BaseOS-$releasever - Media
baseurl=file:///media/CentOS/BaseOS
        file:///media/cdrom/BaseOS
        file:///media/cdrecorder/BaseOS
gpgcheck=1
enabled=1★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial
 
[c8-media-AppStream]
name=CentOS-AppStream-$releasever - Media
baseurl=file:///media/CentOS/AppStream
        file:///media/cdrom/AppStream
        file:///media/cdrecorder/AppStream
gpgcheck=1
enabled=1★
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

これで、dnfコマンドでローカルリポジトリが利用できるようです。

# dnf repolist
CentOS-BaseOS-8 - Media                         154 MB/s | 2.2 MB     00:00
CentOS-AppStream-8 - Media                      177 MB/s | 5.4 MB     00:00
repo id                          repo の名前                               状態
c8-media-AppStream               CentOS-AppStream-8 - Media                4,755
c8-media-BaseOS                  CentOS-BaseOS-8 - Media                   1,659
関連記事
トラックバックURL


コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)