CentOS のインストールが終わって、『さあこれから設定だ』と思ったら、必要なパッケージが不足していた。
しかし、設定前なのでインターネットから追加できない。どうしよう。
慣れていないディストリビューションをインストールするとき等、そんなこともあると思いますが、
目的のパッケージが DVD-ROM (CD-ROM) にあるなら、そこから追加インストールをすることができます。
(というか、どうして CentOS7 は GUI デスクトップと Web サーバが排他なの?)
$ lsblk -f
CentOS7 で「ベーシック Web サーバー」をインストールした直後のブロックデバイスの様子。$ lsblk -f
DVD-ROM っぽいメディアが無い。
先頭の /dev/ が省略されて表示される。sda は /dev/sda の意味。
NAME FSTYPE LABEL UUID MOUNTPOINT sda ┣sda1 xfs b5d21871-401d-4d33-99e9-bbe6d4ce6330 /boot ┗sda2 LVM2_member e4E4uH-iej4-lxlg-k5b7-itnA-fSv8-PwEtGS ┣centos-root xfs 63c43823-44c5-4f64-b59b-3c886c936a81 / ┗centos-swap swap 0eab182d-9eea-4e11-ab70-bea778e1c8aa [SWAP] sr0
DVD-ROM をドライブに入れて再度確認。
/dev/sr0 に認識された。
NAME FSTYPE LABEL UUID MOUNTPOINT sda ┣sda1 xfs b5d21871-401d-4d33-99e9-bbe6d4ce6330 /boot ┗sda2 LVM2_member e4E4uH-iej4-lxlg-k5b7-itnA-fSv8-PwEtGS ┣centos-root xfs 63c43823-44c5-4f64-b59b-3c886c936a81 / ┗centos-swap swap 0eab182d-9eea-4e11-ab70-bea778e1c8aa [SWAP] sr0 iso9660 CentOS 7 x86_64 2020-11-04-11-36-43-00 # ← これ
もしもシンボリックリンクがあるなら、それを指定したい。(なければ /dev/sr0 のまま)
$ ls -l /dev/ | grep sr0
$ su
lrwxrwxrwx. 1 root root 3 3月 9 17:33 cdrom -> sr0 # ← あった brw-rw----+ 1 root cdrom 11, 0 3月 9 17:33 sr0
# mkdir -p /media/cdrom
# mount -r /dev/cdrom /media/cdrom # ← (A) 後述
# lsblk -f
/media/cdrom にマウントできた。
NAME FSTYPE LABEL UUID MOUNTPOINT sda ┣sda1 xfs b5d21871-401d-4d33-99e9-bbe6d4ce6330 /boot ┗sda2 LVM2_member e4E4uH-iej4-lxlg-k5b7-itnA-fSv8-PwEtGS ┣centos-root xfs 63c43823-44c5-4f64-b59b-3c886c936a81 / ┗centos-swap swap 0eab182d-9eea-4e11-ab70-bea778e1c8aa [SWAP] sr0 iso9660 CentOS 7 x86_64 2020-11-04-11-36-43-00 /media/cdrom
CD-ROM のリポジトリ定義 (CentOS-Media.repo) が既にあるので、これを利用する。
# cat /etc/yum.repos.d/CentOS-Media.repo
リポジトリ名は c7-media となっている。# yum --disablerepo=\* --enablerepo=c7-media repoinfo
# (コメントなので省略) [c7-media] name=CentOS-$releasever - Media baseurl=file:///media/CentOS/ file:///media/cdrom/ file:///media/cdrecorder/ gpgcheck=1 enabled=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7
DVD-ROM がリポジトリとして認識されている。まとめてインストールできるパッケージ名を表示する。
上記 (A) では、これ (file:///media/cdrom/) に合わせた名前にしておいた。
読み込んだプラグイン:fastestmirror, langpacks Loading mirror speeds from cached hostfile * c7-media: リポジトリー ID : c7-media リポジトリーの名前 : CentOS-7 - Media リポジトリーのリビジョン : 1604489706 リポジトリー更新日 : Wed Nov 4 20:35:19 2020 リポジトリー内パッケージ数 : 4,070 リポジトリー容量 : 3.8 G リポジトリー基準 URL : file:///media/CentOS/, file:///media/cdrom/, file:///media/cdrecorder/ リポジトリーの期限 : 21,600 秒 (最終: Tue Mar 9 18:45:30 2021) Filter : read-only:present Repo ファイル名: /etc/yum.repos.d/CentOS-Media.repo repolist: 4,070
# yum --disablerepo=\* --enablerepo=c7-media grouplist
今回は GNOME Desktop をまとめてインストールする。
読み込んだプラグイン:fastestmirror, langpacks There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * c7-media: Available Environment Groups: 最小限のインストール インフラストラクチャーサーバー コンピュートノード ファイルとプリントサーバー ベーシック Web サーバー 仮想化ホスト サーバー (GUI 使用) GNOME Desktop KDE Plasma Workspaces 開発およびクリエイティブワークステーション 利用可能なグループ グラフィカル管理ツール コンソールインターネットツール システム管理 システム管理ツール スマートカードサポート セキュリティーツール レガシーな UNIX 互換性 互換性ライブラリー 科学的サポート 開発ツール 完了
起動直後で、まだ漢字変換が使えないときは、コピー&ペーストを使うか、
# LANG=C yum --disablerepo=\* --enablerepo=c7-media grouplist
とすると良い。
# yum --disablerepo=\* --enablerepo=c7-media groupinstall 'GNOME Desktop' -y
読み込んだプラグイン:fastestmirror, langpacks There is no installed groups file. Maybe run: yum groups mark convert (see man yum) Loading mirror speeds from cached hostfile * c7-media: Warning: Group core does not have any packages to install. Warning: Group base does not have any packages to install. Group base does have 1 conditional packages, which may get installed. 依存性の解決をしています --> トランザクションの確認を実行しています。 ~ 長すぎるので省略 ~ xorg-x11-xkb-utils.x86_64 0:7.7-14.el7 yelp-libs.x86_64 2:3.28.1-1.el7 yelp-xsl.noarch 0:3.28.0-1.el7 zenity.x86_64 0:3.28.1-1.el7 完了しました!
groupinstall ではなく、個別にインストールする場合は、(例: telnet クライアントの場合)
# yum --disablerepo=\* --enablerepo=c7-media list telnet
# yum --disablerepo=\* --enablerepo=c7-media install telnet
等とする。
今回は GNOME Desktop をインストールしたので、ランレベルを変更する。
(変更しなくても良いが、コンソールから GUI を使用するときに startx コマンドを実行する必要がある)
# ls -l /etc/systemd/system/default.target
multi-user.target (CLI のマルチユーザモード) になっている。# ln -nfs /lib/systemd/system/graphical.target /etc/systemd/system/default.target
lrwxrwxrwx. 1 root root 37 3月 9 16:09 /etc/systemd/system/default.target -> /lib/systemd/system/multi-user.target
# ls -l /etc/systemd/system/default.target
graphical.target (GUI のマルチユーザモード) へ変更された。ここで再起動すれば、次回から GUI (GNOME Desktop) で起動する。
lrwxrwxrwx. 1 root root 40 3月 9 19:49 /etc/systemd/system/default.target -> /lib/systemd/system/graphical.target
# shutdown -r now