えんでぃの技術ブログ

えんでぃの技術ブログ

ネットワークエンジニアの視点で、IT系のお役立ち情報を提供する技術ブログです。

Fedora33の変更点

fedora-logo

お伝えしたいこと

Fedora 33の変更点を今更ながら紹介します。
私が気になるポイントのみなので、量は少なめです。

公式情報の見方

Fedora 33の変更点は、以下のリンクに載っています。
概要はリリースノートに、詳細情報はChange Setsのページに書いてあります。

Change Setの各サブタイトルのリンクから詳細情報に飛べるようになっています (下図赤枠部)。
詳細を知りたい時に便利なので、こちらも活用ください。

fedora_change_sets

Fedora33の既知の問題は、以下にまとめられています。
ざっと見ましたが、それほど気になるものはありませんでした。

他バージョンのFedoraについて知りたい場合は、以下のリンクを参照してください。

主な変更点

個人的に気になった箇所だけピックアップします。

デフォルトのエディタがvimからnanoに変更

Fedora 33以降は、デフォルトのエディタがvimからnanoに変更されました。
echo $EDITOR を実行すると、nano が指定されています。

この設定は、/etc/profile.d/nano-default-editor.shに書いてあります。
気になる方は、~/.bashrcに以下の行を足すことでデフォルトのエディタをvimに戻せます。

export EDITOR=/usr/bin/vim

Changesに書いてあったのですが、変更の背景は「viの使い方の学習に時間を割きたくない方にとって、Fedoraを使う時に障害を感じてほしくないため」とのことです。

Fedora Workstation のデフォルトのファイルシステムがBtrFSに

Fedora Workstation をこれからインストールする方のみ該当します。
インストール画面におけるデフォルトのFile System が BtrFSになります (元は恐らくXFSでしょうか)。

既にFedoraをインストール済みの方には関係ありません。
また、Fedora Server などには該当しません。

systemd-resolvedがデフォルトで有効化されるように

タイトルの通り、systemd-resolved.serviceがデフォルトで有効化されるようになりました。
また、/etc/nsswitch.confも書き換えられ、名前解決時の検索の優先順位が変更されました。

# Fedora32 以前では、dns (nss-dns) が主なDNSクライアントだった
hosts:      files mdns4_minimal [NOTFOUND=return] dns myhostname

# Fedora33以降では、resolve(nss-resolve) に置き換えられた
hosts:      files mdns4_minimal [NOTFOUND=return] resolve [!UNAVAIL=return] myhostname dns

/etc/nsswitch.confは左から優先的に評価されます。
Fedora33以降では、files (/etc/hosts) > mdns4_minimal (ほぼ使わない) > resolve (systemd-resolved) > ... という優先順位になり、systemd-resolvedが実質的にメインのDNSクライアントになりました。

デフォルトの構成であれば、従来通りNetworkManagerでDNSクライアントの挙動は変更できます。
systemd-resolvedを本格的に使う場合は、このあたりを確認すると良いと思います。

man コマンド 内容
man systemd-resolved systemd-resolvedの機能と動作の説明
man resolvectl systemd-resolvedのステータス確認コマンド
man resolved.conf systemd-resolved.service の設定ファイル

systemd-resolvedを導入したメリットは、上述のChangesのリンクに書いてありました。

  • 標準化: systemd系サービスを取り入れ、ディストリビューション間の挙動の差異を埋める。Ubuntuは16.10以降既にsystemd-resolvedを使用している
  • resolvectlコマンドが便利
  • DNS問い合わせ結果のキャッシュが効く。WEBアクセスで秒単位の性能改善に繋がりうる (参考)
  • Split-DNS: 宛先ドメインごとにDNSサーバを使い分けることができる。VPN環境においては特に重要

systemd-resolvedについて記事を書きましたので、詳細についてはこちらをご参照ください。

endy-tech.hatenablog.jp

デフォルトでzramにswapする。ディスク上のswapは原則使われなくなる

Fedora33以降、デフォルトで/dev/zram0バイスが作成されます。
これは/dev/sda (SATAディスク) などと同じブロックデバイスであり、メモリ (RAM) 上に作成されます。

また、zramに配置されるデータは圧縮されます。
例えば、「zramに10MiBのデータを配置すると、データが圧縮されるため実際には5MiBのRAM容量を消費する」といった具合です。

更にこのデバイスが、zram-generatorの働きによりswapデバイスとして登録されます。
swapには実はpriorityというパラメータがあり、複数のswapデバイスが存在するときはpriorityの高いものから使われます。
既存のディスク上のswap領域はpriority=-2で、zram上のswap領域はpriority=100です。
これにより、zram上の領域を使い切らない限り、既存のswap領域は使われなくなります。
もちろん、/etc/fstabの変更によりpriorityをチューニングしたり、別の方法でzramデバイスの作成を抑止できますが、zramには以下のメリットがあります。

  • swap利用時もI/Oが高速になる
  • 積極的にzram上にswapすることで、メモリ領域を節約できる。メモリ容量が少ないマシンに効果的
  • データ圧縮効率が高い (元のファイルサイズの1/2や1/3など)
  • 圧縮処理によるCPUオーバーヘッドは、zramのサイズを極端に大きくしなければそれほど問題にならない

zramに割り当てる容量は、マシンのメモリサイズによって動的に決定されます。

詳しい挙動については、別の記事にまとめたのでそちらをご覧ください。

endy-tech.hatenablog.jp

まとめ

Fedora 33 の変更点のうち、気になった部分のみまとめました。

  • デフォルトのエディタがvimからnanoに変更
  • Fedora Workstation インストール時、デフォルトで選択されるファイルシステムEXT4からBtrFSに変更
  • デフォルトのDNSクライアントがnss-dnsからsystemd-resolvedに変更
  • swapにzramを利用するよう変更

RHEL9にもこの変更が適用されるかもしれないと思うと、わくわくしますね。

次の記事

Fedora33以降でデフォルトになった機能について、一部深堀りして紹介します。

/etc/nsswitch.confがFedora33以降でどう変わったか。
/etc/nsswitch.confをそもそもどう読むのか紹介します。

endy-tech.hatenablog.jp

systemd-resolved の特徴と基本的な使い方について紹介します。

endy-tech.hatenablog.jp

zramを使ったswapの挙動について紹介します。

endy-tech.hatenablog.jp