話題の記事

CentOS 6~CentOS 8の違いをざっくりまとめてみた

CentOS 6のサポート期限が迫っているので、CentOS 6 7 8の違いをざっくりまとめてみました
2020.05.18

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

たぬき( @tanuki_tzp )です。

Amazon Linuxのサポート期限が2020/12/31まで伸びていますが、CentOS 6もサポート期限が近かったような……と思ったので調べてみました。

CentOS 6のサポート終了に伴い、最新であるCentOS 8への環境移行を考えている方もいると思うので、それぞれの違いをまとめてみました。

参考にさせていただいた記事

本記事を作成するにあたり、以下を参考・参照させていただきました。

各OSのリリース日とサポート終了日を表にまとめてみた
CentOS6とCentOS7の比較表
CentOS-8 (1905) リリースノート

CentOSのサポート期限

CentOS 6のサポート期限は 2020/11/30 です。

あと半年ほどで公式のサポートが切れてしまうので、そろそろ移行計画を立てる時期かと思います。

version サポート期限
CentOS 6 2020/11/30
CentOS 7 2024/06/30
CentOS 8 2029/05/31

CentOS 6~CentOS 8の違い

移行にあたり、重要そうな部分を抜き出してみました。
足りなかったら追記します!

CentOS 6 とCentOS 7の主な違い

  • serviceコマンドがsystemctlコマンドへ移行
  • nmcliコマンドの追加
  • firewalldコマンドの追加
  • デフォルトのDBがMySQLからMariaDBに変更
  • ファイルシステムがext4からxfsに変更

CentOS 7 とCentOS 8の主な違い

  • yumコマンドがdnfコマンドへ移行
  • iptablesコマンドがnftablesコマンドへ移行
  • NTPコマンドがchronyコマンドへ移行
  • TLS 1.1以下はサポート対象外
  • デフォルトのPythonのバージョンがPython 3.6になる
  • デフォルトのPHPのバージョンがPHP 7.2になる
  • 暗号化ボリュームのデフォルト形式がLUKSからLUKS2に変更

yumとdnfについて(2020/05/19追記)

yumコマンドがdnfコマンドに移行しているのは、Pythonのデフォルトパッケージが3.6になるためです。
CentOS 7で使用しているyum v3はPython 2系で作成されており、Python 3系に移行する流れに沿わなくなっています。
CentOS 8ではPython 2系から3系へ円滑に移行するようPython 2系のライフサイクルを短くしており、このタイミングでPython 3系のdnf-3に移行したと思われます。
yumコマンドにdnf-3へのシンボリックリンクが貼られているため、まだyumコマンドを使用することはできますが、利用しているAPIは変更されているので注意してください。

yumとdnfの違いの詳細については以下のドキュメントをご参照ください。
Changes in DNF CLI compared to YUM

おわりに

CentOS 7でNTPコマンドとchronyコマンドは並行して使用できていましたが、CentOS 8でNTPコマンドが廃止されていることもあり、CentOS 9(仮)でyumコマンド自体が廃止になる可能性が高そうです。
CentOS 8でyum コマンドはまだ使用できますが、この機にdnfコマンドに慣れておくとよいと思います。

CentOS 6からCentOS 8の初版リリース日の間隔は約8年半あり、ミドルウェアの更新も相まって、かなりの修正・検証が必要になるので、余裕を持った移行計画を立てましょう。
また、Java ディストリビューションがAmazon CorrettoであるなどCentOSとの環境の差異がありますが、CentOS 8への移行だけでなく、Amazon Linux2への移行も検討対象にできるのではないかと思います。


誰かのお役に立てれば幸いです、たぬき( @tanuki_tzp )でした。