Fedora 31 (Thirty One)リリースノート

LINEで送る
Pocket

レッドハット社(Red Hat)が支援するコミュニティー The Fedora Projectは、10月29日 Fedora の最新版 Fedora 31 (Thirty One)をリリースしました。Fedora は、約半年周期(Fedora30 は 5月7日リリース)でリリースされるディストリビューションです。Fedoraは最新の技術、ソフトウェアのバージョンを積極的に取り込む事で知られ、ここで検証された技術は Red Hat Enterprise Linux(RHEL) や RHELクローンの CentOS に取り込まれます。今年リリースされた Red Hat Enterprise Linux(RHEL) 8、CentOS 8 は、Fedora 28 をベースに開発されており、最新技術を体験できるディストリビューションになっています。

IoT ディション

Server ディション

Fedora では、ディスクトップ向けの Workstation とサーバ向けの Server エディションが提供されていましたが、31 よりIoTエディションが加わりました。インストール方法はどれも同じですが、IoTエディションの場合はインストールタイプは存在せず、IoT環境に必要な最低限のパッケージのみがインストールされます。Fedoraプロジェクトでは以下のデバイスをターゲットにテストされており、順次対応デバイスを増やしていく予定だそうです。

・VM上の x86_64、AArch64
・Raspberry Pi 3 Model B、Raspberry Pi 3 Model B+
・96boards Dragonboard 410c
・96boards Rock960 Consumer Edition

その他、Fedora Atomic Workstation から名称が代わって開発が継続されている、OSTree用いたデプロイ型のOS Fedora Silverblue(https://silverblue.fedoraproject.org/) も 31 がリリースされています。

Workstation は Ubuntu 19.10 同様、最新の GNOME Shell 3.34 が採用されていますが、Fedora は素のGNOMEを、Ubuntu はカスタマイズした GNOME 環境を提供しているので操作感は若干異なります。

Workstation と Server エディションは、https://getfedora.org/ja/ より IoT エディションは、 https://iot.fedoraproject.org/ よりダウンロードします。

今までUbuntu を利用してきて、素の GNOME 環境を初めて使う人には違和感があると思いますが、Fedora SPINS(https://spins.fedoraproject.org/ja/)でKDE、MATE、CINAMON など主要なディスクトップ環境版のISOが用意されています。また、Fedora Labs(https://labs.fedoraproject.org/) では、ゲームやデザインなど目的別にソフトウェアとコンテンツをまとめたISOを配布しているので興味がある人はそちらを使用しても良いかもしれません。x86_64 以外のアーキテクチャーは、ARM-hfp、ARM AArch64、PPC64LE をサポートしており、
x86_64 ISO 以外のアーキテクチャーISO、イメージ(Raspberry-pi、VirtualBox、libvirt/KVM、Cloud 用)は、Fedora ARM(https://arm.fedoraproject.org/)、Fedora Alternative(https://alt.fedoraproject.org/)より
ダウンロードします。IoTは、x86_64 と AArch64 が現在リリースされており ARM-hfp も今後提供予定です。

Fedora 31 のアップデート内容は以下の通りです。 詳細は、https://docs.fedoraproject.org/en-US/fedora/f31/release-notes/,
https://fedoraproject.org/wiki/Releases/31/ChangeSet を参照して下さい。
(量が多いので掲載した方が良いと思われる項目に ※ を入れておきました。)

・R ランタイムの依存関係を自動化
・コントロールグループ (CGROUP) V2 がデフォルトに
・SSH のrootログインが禁止に ※
・rpm のSPECに DynamicBuildRequires を確認する %generate_buildrequires が追加。
・多くの Python 2 パッケージを削除
・glibc 2.30 へのアップデート
・Rawhideと呼ばれるローリング・リリース版の対応
・Gawk 5.0.1 へのアップデート
・国際化機能のためのLangpacks-coreパッケージを追加
・Windowsアプリ開発のための MinGW 環境とツールチェンをアップデート
・Node.js 12.x がデフォルトに(10.xおよび8.x も利用可能)
・i686 リポジトリ提供を廃止※
・python と実行すると Python 3 が実行される※
・RPM 4.15 へのアップデート
・DNF実行時、利用できないリポジトリをエラーとするオプションの追加
・Pythonのドキュメントジェネレーター Sphinx をVersion 2 へアップデートし、Python 2 のサポートを廃止
・i686 の Kernelとブートイメージの提供を廃止※
・RPM の圧縮メカニズムを xz level 2 から Zstandard へ変更※
・Golang 1.13 へのアップデート
・Perl 5.30 へのアップデート

・AArch64 Xfce Desktop イメージの提供
・/usr/bin/ld が /usr/bin/lld のリンクに
・Goパッケージガイドラインを変更
・Fedora Cloudイメージを毎月更新※
・CryptoPolicies(暗号化ポリシー)がカスタマイズ可能に
・Deepin Desktop 15.11 へのアップデート
・kernelの net.ipv4.ping_group_range を有効に(一般ユーザのICMP Echoソケットが作成可能に)
・Erlang 22 へのアップデート
・Firefox を Gnome Wayland で実行※
・GHC 8.6 と Stackage LTS 13 へのアップデート
・IBus 1.5.21 へのアップデート
・grub2-efi パッケージを細分化
・buildroot 用に Minimal GDB パッケージを用意
・Mono 5.20 へのアップデート
・Python テストモジュールを python3-libs から python3-test へ移動
・Qt Wayland を Gnome のデフォルトへ※
・非推奨の 389-console パッケージを全て削除
・YUM 3 パッケージ削除
・Google Noto フォント のプライオリティを高く変更
・Koji 環境の為に glibc 32 を調整
・Xfce-4.14 へのアップデート

Fedora 26 よりi686 のISO提供は終了していますが、Fedora のレポジトリには、i686のkernelや一部のパッケージでi686パッケージが提供されてきました。
Ubuntu では、32Bit のパッケージをどうするかここ数年議論に上がっており、廃止出来ずにとりあえずUbuntu 20.04までサポートの継続がアナウンスされましたが、Feodra では完全に廃止されました。Python 3 パッケージは Fedora 30 でも提供されており python3 と実行する必要がありましたが、とうとう/usr/bin/python が、Python 3 となりました。昨年まではFedora 32 で移行とのアナウンスがされていましたが、Python 2 に依存したその他のパッケージの移行も進みつつあり晴れてデフォルトになりました。Fedora の Cloudイメージは、Fedora リリース時の1回しかリリースされていませんでしたが、毎月更新版がリリースされるようになります。セットアップ完了時、アップデート前のセキュリティリスクが軽減されるメリットがあり、CloudでもFedoraの使用要求が高まっている証拠だと思います。
rpm パッケージの圧縮形式が xz から Zstandard(zstd) に変更になりました。
最近圧縮率が高いこともあり xz 形式のtarボールをよく見るようになりましたが、Firefox をインストールするとインストール時間が xz に比べ半分以下になったということです。zstd は、Facebook のエンジニアによって開発されている可逆圧縮アルゴリズムで、今後トレンドになっていくのではないでしょうか。

Python パッケージをインストール時

Fedora 30 の場合
$ python --version
Python 2.7.16
$ ls -l /usr/bin/python
lrwxrwxrwx. 1 root 7  5月  1  2019 /usr/bin/python -> python2

Fedora 31 の場合
$ python --version
Python 3.7.5
$ ls -l /usr/bin/python
lrwxrwxrwx. 1 root 9 10月 17 20:54 /usr/bin/python -> ./python3

Firefox-66.0.5-1.fc30 インストール時の時間

圧縮方法 ファイルシステム 時間
xz level 2 tmpfs 8秒
xz level 2 ext4 on nvme 11秒
zstd level 19 tmpfs 2秒
zstd level 19 ext4 on nvme 4秒

Fedora 31 が採用する主なソフトウェアのバージョン

カーネル
kernel 5.3.7

Cライブラリ
glibc 2.30
libgcc 9.2.1

ディスクトップ環境
wayland 1.17.0
gnome-shell 3.34.1
KDE Plasma 5.16.5
libreoffice 6.3.2.2
gtk 3.24.12
qt 4.8.7

プログラミング言語
perl 5.30.0
Python 3.7.4
php 7.3.10
ruby 2.6.3
rubygem-rails 5.2.3
nodejs 10.15.3 -> 12.10.0
golang 1.13.1

データベース
postgresql 11.5
mariadb 10.3.17

Webサーバ
httpd 2.4.41
nginx 1.16.1

ネットワークサーバ
samba 4.10.10
bind 9.11.11
dovecot 2.3.7
postfix 3.4.7

主要パッケージで、Fedora 30 からメジャーバージョンが大きく変更されたのは Node.js で10.xから12.xに変更されました。12.x はメインレポジトリ提供で、その他は、module リポジトリ提供となっており、8.x も 10.x も選択できるようになっています。その他の主要パッケージはマイナーバージョンのアップデートなので、変更はパッケージ全体としては軽微な変更となりました。

なおFedora は、試験的要素を含んだディストリビューションの為、致命的なバグ以外はフィックスされていない場合もあります。現在取り組んでいる既知のバグは https://fedoraproject.org/wiki/Common_F31_bugs で公開されています。動作がおかしいと感じた場合は参照してみてください。

半年ごとの軽微なアップデート、新機能のテストを経て安定したCentOS 8 が9/24にリリースされました。CentOS 7 ユーザは最新のディストリビュータに早くなれないと、7 と 8 の違いは何だろうと準備されているエンジニアも多いかと思いますが、Fedora に触れていると、やっと CentOS 8 がリリースされて、あの機能使えるようになるのかという気持ちになります。この機会に、CentOS8 と Fedora 31 の違いを体験して最新のディストリビューションがどのような
方向に向かっているのか感じてみては如何でしょうか?

LINEで送る
Pocket

  • このエントリーをはてなブックマークに追加

コメントを残す

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください