Linux あれこれ

Linux 関連(一部 Windows11 )の備忘録です。

CentOS 8.2 をUSBメモリにインストール〈H81〉

登録日: 2020-07-25 更新日: 2020-07-31

前回は、「Fedora Workstation 32」(GNOME) を USB メモリにインストール しました。ですが、新しいカーネルで問題が発生しました。

そこで安定動作の「CentOS」をインストールしてみました。 CentOS は、サーバーとしてよく使われていますが、GNOME デスクトップ環境をインストールしてワークステーションとしても使えます。使われているカーネルは枯れており、安定動作が期待できます。

試したのは、公開されたばかりで最新の「CentOS-8.2.2004」です。

(2004 の数字は2020年04月のことで、元になったRHELのソースの日付を表しています)

-

「目次」

-


CentOS 8.2

GNOME デスクトップ環境をインストールした直後の画面:

Windows キーを押したところ。まだ、日本語化はしていない状態。これからです。

壁紙に注目すると「8」がデザインされてます。今回のソフトウェアの選択でのアプリの状態は、多すぎず、少なすぎずかなと思います。Office 等はまだ入っていません。

このあと、お気に入りの登録はもっとシンプルにしました。

-

参考:

CentOS wiki

CentOS Linux

Red Hat 社が商用 Linux の「RHEL」のソースを公開しています。そのソースを使い、「CentOS Project」コミュニティが商標部分を取り除いてビルドし直した Linux ディストリビューションが、CentOSセントオーエス)です。

商用のRHEL と機能的に高い互換性を持ちます。つまり、無料でありながら、商用の品質です。

ただし、ミラーサイトや、リポジトリなどは違い、インストールできるアプリに制限があります。

メジャーアップデートは 3~ 5 年ごと、マイナーアップデートは 半年~1年ごとです。

長いサポート期間(10年)と、高い安定性で、サーバーとしてよく使われています。

-

イメージのリリース形式としては:

CentOS Linux」 →バージョン番号は 8.0、8.1、8.2、刻みです。半年~1年ごとにリリース

CentOS Stream」 →ローリングリリースで、1~3か月ごとにリリース。開発バージョンという位置付け。

-


最新のイメージファイル:

CentOS 8.2.2004 (カーネル 4.18.0-193)

イメージ公開: 2020-06-09(RHEL 8.2 2020-04 のソースがベース)

フルアップデート終了: 2024-05(機能アップが望める期間)

メンテナンスアップデート終了: 2029-05-31(サポート期間)

-

カーネルは、Ubuntu 18.10 や Linux Mint 19.1 で使われていたころのバージョンです。 2年弱なので、サーバーのカーネルとしては新しいと思います。

-


ダウンロード:

ISO x86_64

利用可能な限られた帯域幅を節約するために、ISO イメージは mirror.centos.org からダウンロードできません。 住んでいる地域のミラーで、ISOイメージを利用できます。

→今回は、下記に置かれたイメージを使用

CentOS-8.2.2004-x86_64-minimal.iso (2020-06-09)

チェックサムの確認:

$ sha256sum CentOS-8.2.2004-x86_64-minimal.iso
47ab14778c823acae2ee6d365d76a9aed3f95bb8d0add23a06536b58bb5293c0  CentOS-8.2.2004-x86_64-minimal.iso

-


インストール

-

1. 事前作業

今回のライブUSB メモリには、ディスクのパーティションを操作できるアプリが入っていません。 事前に他のOS で、「インストール先となるUSB メモリをパーティションがない状態」にしておきます。

16GB でも、64GB でも良いので、fat32 でフォーマットしたものを使いました。

ディスクの操作は、慎重にやらないと危険なので、まずは、USB メモリをセットしないでアプリで表示されるデバイス番号を確認。その後セットすることで、対象のUSB メモリはそれ以外の番号とわかります。

-

Fedora 32 GNOME で事前作業した場合:

Windows」キー →一番下の「Show Applications」→「Disks」で検索→「Disks」アプリを起動

左側で、63GB(/dev/sdc) をクリック→fat がひとつであることを確認。(重要な目印)

「■」(四角)をクリックしてアンマウント→「▶」(三角)に変わります。

「ー」→「Delete」でパーティションを削除→すべて「FreeSpace」にします。(つまり、何もない状態)

右上の「x」でウィンドウを閉じます。

-


2. ライブUSB メモリで立ち上げ

ブート選択画面が表示されます。

        CentOS Linux 8

Install CentOS Linux 8
Test this media & install CentOS Linux 8
:
      Automatic boot in 60 seconds ...

→自分のPC だと、カウントダウンされず、そのまま動かないので、「Enter」キー押下。

しばらくすると、起動されました。

ちなみに、「Tab」キーを押したときの表示は、下記です。(コマンドの編集モード)

> vmlimz initrd=initrd.img inst.stage2=hd:LABEL=CentOS-8-2-2004-x86_64-dvd  rd.live.check quiet

修正せず、そのまま「Enter」キーで、しばらくすると立ち上がりました。

-


3. インストーラ画面が表示されます。

動作を試すことのできるライブ機能はありません。すぐにインストーラが起動します。

WELCOME TO CENTOS LINUX 8. 

-


4. インストール先になるUSB メモリ(パーティションなし)を挿します。

-


5. 言語:

  • 日本語 →日本語(日本)

→「続行」

-


6. インストール概要: (自動で入力されているので確認)

Fedoraインストーラよりも設定項目が多いです。

  • 地域設定

  キーボード(K)  日本語

  言語サポート(L)  日本語(日本)

  時刻と日付(T)  アメリカ大陸/ニューヨーク タイムゾーン

    →「アジア/東京 タイムゾーン」に変更(地図の日本をクリック)

-

  • ソフトウェア

  インストールソース(I)  ローカルメディア(ISO)

  ソフトウェアの選択(S)  

    ベース環境: サーバー → 「カスタムオペレーティングシステム にチェック

    →その他: 「標準」、「開発ツール」、「グラフィカル管理ツール」、「システムツール」

    →(ここが一番悩んだところ。アプリの数としては良かったみたい。)

-

  • システム

  インストール先(D)  自動パーティション設定が選択されました(赤色)

  KDUMP kdump が有効になります

    →余計なメモリを使いたくないので、「kdump を有効にする」のチェックを外しました

-

  • ネットワークとホスト名(N)  接続していません

    →Ethernet(enp1s0) を選んで、オン →完了

    →有線(enp1s0) で接続されました

-

-

  • ユーザの設定

  root パスワード(R):  root アカウントは無効になっています

  ユーザの作成(U) ユーザは作成されません

-


7. 「インストール先(D)」をクリック

  →挿し込んだUSB メモリが見えないので、右下の「更新」をチェック →再スキャン

  →今回は「sdc / 58.43GiB 空き」だけにチェック(複数のディスクにチェックが付けられるので注意)

  • ストレージの設定

  「自動構成」→「カスタム」にチェック

  →自動構成にすると、LVM2 フォーマットになり、サーバーだとディスクが有効に使えますが、USB メモリへのインストールだと、コンピュータ名がボリューム名になるので他へのマウントが難しくなり、融通が効きません。

-

画面左下の青色の「完全なディスク要約とブートローダー」をクリック

  • 選択したディスク

  sdc にて「ブート」にチェックあり ←確認

→「閉じる」

→左上の「完了」をクリック

-


8. 「手動パーティション設定 」画面

  マウントポイント「/」を選んで、「マウントポイントの追加」をクリック

画面右側にて、

→右下の「設定を更新」をクリック

→左下に黄色の警告→「swap なし」→閉じる

→左上の「完了」をクリック

→再度、「完了」をクリック

「変更の概要」が表示 →「変更を許可する」をクリック

-


9. 「インストール概要: 」画面に戻りました。

  • システム

  インストール先(D)  ストレージ設定チェックに警告(←スワップ領域を指定してないからですが、今回は作りません)

-


10. 「インストール概要: 」画面に戻りました。

各項目にオレンジ色の警告がないことを確認

-


11. 画面右下の「インストールの開始」をクリック

「インストールの進行状況」を表示

  ステータスバーが伸びていきます。

-


12. インストール中に、ユーザの設定を聞いてきます

  • ユーザの設定

  root パスワード(R):  root パスワードが設定されていません

    →パスワード→完了

    →「root パスワードは設定されています」に変化

  ユーザの作成(U) をクリック

    フルネーム: (任意)英字

    ユーザ名: (任意)英字(ユーザー名はホームフォルダの名前にもなります)

「このユーザーを管理者にする」にチェック

Fedora だとここにチェックするとroot パスワードはスキップされますが、CentOS ではスキップされません)

-

  • パスワード:(任意)

  • パスワードの確認:(任意)

→左上のユーザの作成「完了」をクリック

→「管理者 xxx が作成されます」表示

-


13. 「完了しました!」表示

→「再起動」クリック

-


14. ブート選択画面:

CentOS Linux (4.18.0-193.e18.x86_64) 8 (Core) 
CentOS Linux (0-rescue-2e5dd……75191)  8 (Core) 

→すぐに一番上が選ばれて、起動しました。

-


15. ログイン画面

コンソール端末の全画面表示です。

CentOS Linux 8 (Core) 
Kernel 4.18.0-193.e18.x86_64 on an x86_64

Active the web console with: systemctl enable --now cocpit.socket

localhost login:

余計なメッセージで埋まったら、Enter キー

→設定したユーザ名とパスワードを入力

-


インストールしたシステムの確認:

$ uname -r
4.18.0-193.el8.x86_64

$ cat /etc/centos-release
CentOS Linux release 8.2.2004 (Core) 

$ cat /etc/redhat-release
CentOS Linux release 8.2.2004 (Core)

$ cat /etc/os-release
NAME="CentOS Linux"
VERSION="8 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="8"
PLATFORM_ID="platform:el8"
PRETTY_NAME="CentOS Linux 8 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:8"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-8"
CENTOS_MANTISBT_PROJECT_VERSION="8"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="8"

→「el8」というのは「rhel 8」からきたみたい。platform 名です。

-

インストールされたパッケージグループを確認:

$ dnf group list
:
Available Environment Groups:
   Server with GUI
   Server
   Minimal Install
   Virtualization Host
   Workstation     ←(インストーラの項目として表示されません)
Installed Environment Groups:  ←(インストールされている環境グループ)
   Custom Operating System
Installed Groups:      ←(インストールされているグループ)
   Development Tools
   Graphical Administration Tools
   System Tools
Available Groups:
   Container Management
   .NET Core Development
   RPM Development Tools
   Headless Management
   Legacy UNIX Compatibility
   Network Servers
   Scientific Support
   Security Tools
   Smart Card Support

→インストール時の「ソフトウェアの選択」で指定した項目がそのまま、インストールされました。

 ソフトウェアの選択(S) 

   ベース環境: 「カスタムオペレーティングシステム」にチェック
   その他:   「標準」、「開発ツール」、「グラフィカル管理ツール」、「システムツール」

-

ベース環境: 「カスタムオペレーティングシステム」を見ると:

$ dnf group info 'Custom Operating System'
:
Environment Group: Custom Operating System
 Description: Basic building block for a custom CentOS system.
 Mandatory Groups:
   Core
 Optional Groups:
   Guest Agents
   Standard

これと、「最小インストール」との違いは:

$ dnf group info 'Minimal Install'
:
Environment Group: Minimal Install
 Description: Basic functionality.
 Mandatory Groups:
   Core
 Optional Groups:
   Guest Agents
   Standard

→違いはないので、たぶん、その他の選べる項目が違うのかな。

-

インストーラの項目にはない、「ワークステーション」をのぞくと:

$ dnf group info Workstation
:
Environment Group: Workstation
 Description: Workstation is a user-friendly desktop system for laptops and PCs.
 Mandatory Groups:
   Common NetworkManager submodules
   Core
   Fonts
   GNOME
   Guest Desktop Agents
   Hardware Support
   Internet Browser
   Multimedia
   Printing Client
   Standard
   Workstation product core
   base-x
 Optional Groups:
   Backup Client
   GNOME Applications
   Headless Management
   Internet Applications
   Office Suite and Productivity
   Remote Desktop Clients
   Smart Card Support

→欲しかった「GNOME」デスクトップ環境があります。グループがあれば楽にデスクトップ環境がインストールできます。 オプションで「Office」もあります。(現在はインストールされていません)

ただし、Fonts があるので、余計なフォントが入っていそう。

ちなみに、後で行う「EPEL」リポジトリの追加で「Xfce」、「KDE Plasma」のデスクトップ環境がグループとして増えます。

これらなら、Wayland で使ってもQt アプリで問題はなさそう。

とりあえずは、軽さと安定性で「GNOME クラシック」セッションを使うことになります。地味だけど壁紙しだいで見た目は変わります。

-


システム更新

$ sudo dnf update
:
Importing GPG key 0x8483C65D
UserID : "CentOS(CentOS Official Signing Key) <security@centos.org>"
Fingerprint : 99DB 70FA E1D7 CE22 7FB6 4882 05B5 55B3 8483 C65D
From : /etc/pki/rpm-gpg/RPM-GPG-KEY-centosofficial

Is this OK [y/N] :  y

→初めての更新だったので、GPG キーのインポートをしてもよいかを聞いてきました。 フィンガープリント値が正しいかは、事前に調べておかないとわかりません。

あとで調べたけど、登録されるともう聞いてこないので必要ありませんでした…。

参考:

CentOS 8 の場合のGPGキー:

pub  4096R/8483C65D 2019-05-03 CentOS (CentOS Official Signing Key) <security@centos.org>
Key fingerprint = 99DB 70FA E1D7 CE22 7FB6  4882 05B5 55B3 8483 C65D

→GPGキーはファイルのダウンロードをするときに、そのファイルが安全だと教えてくれるしくみ(署名)です。

-

$ reboot

→再起動されます

-

ブート選択画面:

CentOS Linux (4.18.0-193.6.3.e18_2.x86_64) 8 (Core) 
CentOS Linux (4.18.0-193.e18.x86_64) 8 (Core) 
CentOS Linux (0-rescue-) 8 (Core) 

→OS アップデートがあったので、メニューが増えました。3 秒待ち。

-

追記:

2020-7-31 の更新にて、さらにメニューが増えました。

CentOS Linux (4.18.0-193.14.2.e18_2.x86_64) 8 (Core) 
CentOS Linux (4.18.0-193.6.3.e18_2.x86_64) 8 (Core) 
CentOS Linux (4.18.0-193.e18.x86_64) 8 (Core) 
CentOS Linux (0-rescue-) 8 (Core) 

-


ブート時のメニューの保持数が少ないので増やします:

デフォルトの保持数は 3 です。

Fedora だと、ちゃんと動かないカーネルの更新もけっこうあり、OS アップデート(カーネルの更新)が続いて、カーネル選択メニューが動かないカーネルだらけになり、ちゃんと動くカーネルのメニューが消えたことがあります。 最新のカーネルが良いとは言えないわけです。

安全策として値を増やして、ちゃんと動くときのメニューを残せれば安心です。ただし、増やすとディスク容量を使います。自分は 10 にしますが、安定したCentOS なら 5 でいいかも。

$ sudo nano /etc/dnf/dnf.conf

下記を修正:

installonly_limit=3

↓ 数字を増やします:

installonly_limit=10

確認:

$ cat /etc/dnf/dnf.conf

[main]
gpgcheck=1
installonly_limit=10
clean_requirements_on_remove=True
best=True
skip_if_unavailable=False

-

再起動して反映

-

(次回に続きます)

-


参考: CentOS の設定

サーバー構築の基本 CentOS Linux 8のインストール後に設定する12の項目

CentOS 8 でサーバーの構築をしたい時に参考になる記事です。

今回はクライアント使用なので、あまり使わない項目が多いのですが、サーバーの設定には何が必要なのか眺めておくだけで参考になります。書かれたときよりも現在はバージョンが上がっており、いくらかの違いがみられます。

-


まとめ

Fedora で検証し安定動作するまで改善、それを反映させているのが商用の「RHEL」です。 逆に、Fedora は、新しいハードウェアに対応するため、常にカーネルは最新で、使われている技術も最新。 新鮮ですが実績が少ないわけで問題が発生しやすいです。

-

公開された「RHEL」のソースから商標だけ取り除いてビルドし直したのが、今回の CentOS です。 Fedora でも、RHEL でも検証されて実績があるので安定しています。

CentOS はサーバーとして使われることが多いためか、インストーラに以前あった「ワークステーション」の項目は消えています。サーバーでGNOME の機能を入れるのとは少し違うと思うので、デスクトップ環境をメインで使いたいときは分かりづらいかも。

-

CentOS 8 からはdnf コマンドが使えるので操作感はFedora と同じです。 今回のインストール設定だと、設定のときサーバー的に root でログインしてもいいし、ユーザでログインして sudo を使うこともできるようになります。(シェルの内部コマンドはsudo ではダメだったりします)

次回は、いよいよGNOME デスクトップ環境を インストール します。

-

-


目次

先頭

-


-