概要
CentOS8のEOLに際して、Rocky LinuxやAlmaLinuxに移行した人や移行しようと考えている人がいると思います。
おそらくほとんどの場合においてCentOSライクに運用できると思いますが、そうではないケースがあることがわかったので注意喚起しておきます。
/etc/os-releaseを参照するインストーラやツール
例えばdockerのインストール時やansibleの実行時などに、/etc/os-releaseのIDが参照される場合があります。
Rocky Linuxの場合:
ID="rocky"
ID_LIKE="rhel centos fedora"
ここでID_LIKEを見て適切な動作をしてくれれれば良いんですが、IDのみを見て"unsupported disturibution"として切り捨てられる場合があります。
以下の記事時点では、dockerをスクリプトを使ってインストールしようとしたときに問題が発生したケースが紹介されています。
また、ansible-core(2.12.x)でも大抵の場合は問題ないんですが、IDがメジャーどころのOSでない場合にうまく動かない場合があります(2022-05-16時点で、localに対するfirewalldの設定でエラーになる)。
対処方法
一時的に/etc/os-releaseのIDを"centos"に書き換えれば、大抵の場合はうまくいくと思います。
恒久的に/etc/os-releaseのIDを変更するのはありか?
わかりません。
CentOS Streamがいいかも
この問題は、あらゆるサードパーティー製のツールで発生する可能性があるので、今後不要な運用コストを払いたくない場合は、CentOS Streamに移行するのがいいかもしれません。
以上。