まずはCentOS DVD ISOイメージをダウンロード。以下記事参照。
とりあえず/root 配下にisoを置く。
[root@cent7S2 ~]# ls -lh /root/*iso
-rw-r--r--. 1 qemu qemu 4.4G 1月 25 2021 /root/cent7.iso
ISOを/mntにマウントする。
[root@cent7S2 ~]# mount -t iso9660 /root/cent7.iso /mnt
mount: /dev/loop0 is write-protected, mounting read-only
[root@cent7S2 ~]# df -h /mnt
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/loop0 4.4G 4.4G 0 100% /mnt
[root@cent7S2 ~]# ls /mnt
CentOS_BuildTag EFI EULA GPL LiveOS Packages RPM-GPG-KEY-CentOS-7 RPM-GPG-KEY-CentOS-Testing-7 TRANS.TBL images isolinux repodata
[root@cent7S2 ~]#
古いレポジトリのキャッシュを削除しておく(念の為)。yum listをうつと、今は設定していない過去のレポジトリで取得した情報がキャッシュされていることがあるので。
[root@cent7S yum.repos.d]# yum clean all
読み込んだプラグイン:fastestmirror, langpacks
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
リポジトリーを清掃しています: local
Cleaning up list of fastest mirrors
レポジトリを新規作成する。今回はlocal.repoという名前にする(名前は任意)。
[root@cent7S2 /]# cd /etc/yum.repos.d/
[root@cent7S2 yum.repos.d]# ls
[root@cent7S2 yum.repos.d]# vi local.repo
[root@cent7S2 yum.repos.d]# cat !$
cat local.repo
[local]
name=localrepo
baseurl=file:///mnt
enabled=1
gpgcheck=0
[root@cent7S2 yum.repos.d]#
/mnt なのに file:///mnt と指定するのはスペルミスではなく、そういうルールらしい。
yum repolistでレポジトリが読み込まれていることを確認。
[root@cent7S2 yum.repos.d]# yum repolist
読み込んだプラグイン:fastestmirror, langpacks
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
Loading mirror speeds from cached hostfile
リポジトリー ID リポジトリー名 状態
!local localrepo 4,070
repolist: 4,070
yum listで確認。右恥の「local」という部分の情報が、今回新規作成したlocal.repo経由で得れる情報。
[root@cent7S2 yum.repos.d]# yum list | tail
Repodata is over 2 weeks old. Install yum-cron? Or run: yum makecache fast
ypbind.x86_64 3:1.37.1-9.el7 local
ypserv.x86_64 2.31-12.el7 local
yum-plugin-aliases.noarch 1.1.31-54.el7_8 local
yum-plugin-changelog.noarch 1.1.31-54.el7_8 local
yum-plugin-tmprepo.noarch 1.1.31-54.el7_8 local
yum-plugin-verify.noarch 1.1.31-54.el7_8 local
yum-plugin-versionlock.noarch 1.1.31-54.el7_8 local
zlib-devel.x86_64 1.2.7-18.el7 local
zsh.x86_64 5.0.2-34.el7_8.2 local
zziplib.x86_64 0.13.62-12.el7 local
一通りyum installなどの使用が終わったら後片付け。
[root@cent7S2 yum.repos.d]# df -h /mnt
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/loop0 4.4G 4.4G 0 100% /mnt
[root@cent7S2 yum.repos.d]# umount /mnt
[root@cent7S2 yum.repos.d]# df -h /mnt
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/mapper/centos-root 50G 17G 34G 33% /
[root@cent7S2 yum.repos.d]#
[root@cent7S2 yum.repos.d]# pwd
/etc/yum.repos.d
[root@cent7S2 yum.repos.d]# ls
local.repo
[root@cent7S2 yum.repos.d]# rm local.repo
rm: 通常ファイル `local.repo' を削除しますか? y
[root@cent7S2 yum.repos.d]# yum clean all
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
There are no enabled repos.
Run "yum repolist all" to see the repos you have.
To enable Red Hat Subscription Management repositories:
subscription-manager repos --enable <repo>
To enable custom repositories:
yum-config-manager --enable <repo>
[root@cent7S2 yum.repos.d]# yum repolist
読み込んだプラグイン:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
repolist: 0
[root@cent7S2 yum.repos.d]#
[root@cent7S2 yum.repos.d]# yum list | tail
yelp-libs.x86_64 2:3.28.1-1.el7 @anaconda
yelp-xsl.noarch 3.28.0-1.el7 @anaconda
yum.noarch 3.4.3-168.el7.centos @anaconda
yum-langpacks.noarch 0.4.2-7.el7 @anaconda
yum-metadata-parser.x86_64 1.1.4-10.el7 @anaconda
yum-plugin-fastestmirror.noarch 1.1.31-54.el7_8 @anaconda
yum-utils.noarch 1.1.31-54.el7_8 @anaconda
zenity.x86_64 3.28.1-1.el7 @anaconda
zip.x86_64 3.0-11.el7 @anaconda
zlib.x86_64 1.2.7-18.el7 @anaconda
[root@cent7S2 yum.repos.d]#
[root@cent7S2 yum.repos.d]# rm /root/cent7.iso
rm: 通常ファイル `/root/cent7.iso' を削除しますか? y
[root@cent7S2 yum.repos.d]#
以上。