CentOS 8.0をインストールしてみた

ブログネタ飽和病により更新が停滞しているので、時事ネタで軽くリハビリです。ある意味、ネタ不足の時より書けない気がする・・・

2019/09/24 にCentOS 8.0がリリースされたので、開発環境用にインストールと、いつもやるようなベースシステムの構築をやってみたのでメモメモです。



リンク集

サッと見ただけですが
  • CentOS-8 (1905) リリースノート
  • CentOS 8 と CentOS 7 の違い、yum やミドルウェアにも要注意 – サーバー構築と設定 ~初心者にも分かりやすく解説~
  • CentOS Linux 8 | Step by Step Installing CentOS Linux 8 with Screenshots


  • OSインストール

    私の場合、適当なLinux環境で、インストールイメージから QEMU + KVM で起動して、VNC でグラフィカルなインスコ画面を表示して、イメージファイルを完成させます。そのあとは、普通にOSを起動してSSHで作業です。

    全体の流れは今までとたいして変わらないので、インストール中に気になったことでも書いておきます。

    インストールイメージ

    OSイメージのダウンロードは、CentOS Mirror でリストを確認して、好きな所を選びます。

    例えば、この辺 にお世話になります。昔と違ってネットワークが速いので、boot.iso でも dvd1.iso でもさほど変わらないのですが、ネットワークインストールである CentOS-8-x86_64-1905-boot.iso を使えばいいと思います。

    起動すると、いつも通りキーボード(+言語)を選択したあとに、インストールパッケージの選択やディスクパーティションの管理が始まります。

    ネットワーク

    ネットワークインストールなので、いったんOFFになっているのを、ONにしてあげる必要があります。

    Fedora29 あたりを触ったときもそうでしたが、ネットワーク名が eth0 とかじゃなくて ens3 という名前になっています。どっかのスクリプトでアドレス管理するのに、ip a コマンドからの grep eth 的なことしてたら変更が必要になるのかな、みたいな。

    ベースレポジトリ

    ネットワークインストールなのでレポジトリを利用させてもらうのですが、初期値である近辺からの自動取得だとエラーになったので、自分でURLを入力します。

    CentOS7 までのメモを見て、似たような感じで入力したらエラーになったので、置き場が変わったのかな、と思います。ちゃんと中身は見てからやんないとバチがあたりますね。例えば、下記のようなURLを入力します。BaseOS の下ということになります。
  • http://ftp.iij.ad.jp/pub/linux/centos/8.0.1905/BaseOS/x86_64/os/

  • http:// を選択しつつ、それ以下を入力します。コンソール作業のめんどいところですが、ほぼココだけなので我慢しる!

    通ったら、最小限の構成 でも選択しておきます。

    KDUMP

    新要素です。デフォでONなので、環境的にいったんOFFにしました。ちゃんとこの辺を見て、どんなものなのかは知っておくとよさげです。

  • 第7章 カーネルクラッシュダンプガイド Red Hat Enterprise Linux 7 | Red Hat Customer Portal
  • 第1回「 kdump ノススメ」 | NTTデータ先端技術株式会社

  • ディスクパーティション

    デフォにするにしても、一回は選択して完了させる必要があります。初見だったので、デフォでいきましたが普通に /boot が ext4 で、メインパーティションは XFS でした。

    この辺は完全にお好みなのでスルーで。


    OSの基本システム構築

    開発用のベースイメージなのでたいしたことはしてないし、たいした出来事もなかったのですが一応。

    言語や時刻

    インストール時に選択できるのですが、逃した時、変更したい時はこのあたりですね。


    yumパッケージ管理

    yum が dnf になったということですが、まぁ普通に yum install できますし、ぼちぼち気持ちを dnf に切り替えていけば良いかなと。

    最小構成になってるし、コンテナじゃないので基礎パッケージはそれなりにドカンと入れちゃうのですが、CentOS7 の時の一覧をわりとそのままの名前で入れることができました。Python関連が 2 -> 3 になった影響で、そのへんは無いよ、とか言われましたが、体感はなにも不満がないです。

    /etc/yum ディレクトリだったのが /etc/yum -> /etc/dnf へのシンボリックリンクになっているのに対し、/etc/yum.repos.d/ はそのままディレクトリだったりして、ふ~むってなったので、下記あたりをあとで読んでおくとします。

  • yumからDNFへの移行 – Qiita

  • SELinux

    SELinux警察がきそうですが、圧倒的速度でOFFにします。小さい設定のわりに大きな影響なので、いろいろ設定したあとに、reboot して一通り確認するとよいですね。


    iptables / firewalld

    iptables は nftables に変わったということですが、私は firewalld を習得済みなので、名前が変わっただけということになるのかな?

    といっても、クラウド配下では VPC Security Group のようなファイアウォール・サービスがあるので基本不要ですよね。

    私の場合、VPNサーバー や NAT Gateway なシステムを構築管理するから使いますが・・・多くの人には実質不要かと。ただ、iptables システム自体の機能や考え方は、セキュリティ面で重要なものなので、ないがしろにしてよいという意味ではないです。

    SSH + SSSD + LDAP

    これはだいぶ私的なものですが、過去に書いた CentOS7 用の下記記事の内容は、全部そのままの内容で正常稼働しました。やったね!

  • 認証システムSSSD+LDAP+SUDOの構築手順 | 外道父の匠
  • SSSD+LDAP+SSH連携の設定 | 外道父の匠




  • CentOS 5 -> 6 , 6 -> 7 や、Debian 4 -> 5 , 5 -> 6 などはもっと苦労した気がするのですが、ベース部分のみとはいえ CentOS 7 -> 8 の変化は少なくて楽な印象でした。その分、言語系を始めとしたアプリケーション方面に色々変化が多そうなので、これからといったところでしょうか。

    新しいOSバージョンが出るたびに、そんなところ変えなくていいよ~とか思うわけですが、SSSD とか chrony とか NetworkManager とか、新しいOSでわざわざ習得して切り替えたシステムが、そのまま次も採用されて動いてくれると、先見の明があるインフラエンジニアとして勝った感が得られ、とても良いです:-)