4.9. ファイルシステムおよびストレージ

RHEL インストールで、サイズが 16 TiB の swap パーティションの作成に対応

以前は、RHEL のインストール時に、インストーラーにより、自動パーティションおよび手動パーティション設定用に最大 128 GB の swap パーティションが作成されていました。

今回の更新で、自動パーティション設定では、インストーラーは最大 128 GB の swap パーティションの作成を継続しますが、手動パーティション設定の場合は 16 TiB の swap パーティションを作成できるようになりました。

(BZ#1656485)

NVMe デバイスの不適切な削除

今回の機能拡張により、オペレーティングシステムに事前に通知しなくても、Linux オペレーティングシステムから NVMe デバイスを削除できるようになりました。これにより、順番に削除するためにデバイスの準備を行う必要がないため、NVMe デバイスの保守性が向上し、サーバーのダウンタイムをなくしてサーバーの可用性を確保できます。

以下の点に注意してください。

  • NVMe デバイスの削除には、kernel-4.18.0-193.13.2.el8_2.x86_64 バージョン以降が必要です。
  • NVMe デバイスを正常に削除するには、ハードウェアプラットフォームまたはプラットフォームで実行されているソフトウェアからの追加要件が必要になる場合があります。
  • システム操作に不可欠な NVMe デバイスの削除には対応していません。たとえば、オペレーティングシステムまたはスワップパーティションを含む NVMe デバイスを削除することはできません。

(BZ#1634655)

Stratis ファイルシステムのシンボリックリンクパスが変更されました

今回の機能強化により、Stratis ファイルシステムの symlink パスが /stratis/<stratis-pool>/<filesystem-name> から /dev/stratis/<stratis-pool>/<filesystem-name> に変更になりました。したがって、既存の Stratis シンボリックリンクをすべて移行して、新しいシンボリックリンクパスを使用する必要があります。

含まれる stratis_migrate_symlinks.sh 移行スクリプトを使用するか、システムを再起動してシンボリックリンクパスを更新します。systemd ユニットファイルまたは /etc/fstab ファイルを手動で変更して Stratis ファイルシステムを自動的にマウントする場合は、新しい symlink リンクパスで更新する必要があります。

注記

新しい Stratis symlink パスで設定を更新しない、または自動マウントを一時的に無効にする場合は、次回システムの起動または再起動を行うと、完全に起動しなくなることがあります。

(BZ#1798244)

Stratis が、Supplementary Clevis 暗号化ポリシーへの暗号化プールへのバインディング設定に対応

今回の機能拡張により、Tang サーバー、または Trusted Platform Module (TPM) 2.0 を使用して、暗号化された Stratis プールを Network Bound Disk Encryption (NBDE) にバインドできるようになりました。暗号化された Stratis プールを NBDE または TPM 2.0 にバインドすると、プールの自動アンロックが容易になります。これにより、各システム再起動後にカーネルキーリングの説明を提供することなく Stratis プールにアクセスできます。Stratis プールを通常の Clevis 暗号化ポリシーにバインドすると、プライマリーカーネルキーリング暗号化は削除されないことに注意してください。

(BZ#1868100)

XFS ファイルシステムおよび ext4 ファイルシステムで DAX が有効な場合を制御する新しいマウントオプション

今回の更新では、FS_XFLAG_DAX inode フラグと組み合わせると、XFS ファイルシステムおよび ext4 ファイルシステムのファイルに対する Direct Access (DAX) モードを詳細に制御できる新しいマウントオプションが導入されました。本リリース以前は、dax マウントオプションを使用してファイルシステム全体に対して DAX が有効になっていました。ダイレクトアクセスモードをファイルごとに有効にできるようになりました。

オンディスクフラグ FS_XFLAG_DAX は、特定のファイルまたはディレクトリーに対して DAX を選択的に有効または無効にするために使用されます。dax マウントオプションは、フラグを受け入れるかどうかを決定します。

  • -o dax=inode: FS_XFLAG_DAX に従います。dax オプションを指定しないと、これがデフォルトになります。
  • -o dax=never: DAX を有効にしません。FS_XFLAG_DAX を を無視します。
  • -o dax=always: 常に DAX を有効にし、FS_XFLAG_DAX を無視します。
  • -o dax: "dax=always" のエイリアスであるレガシーオプションです。これは今後削除される可能性があります。したがって、-o dax=always が推奨されます。

xfs_io ユーティリティーの chatter コマンドを使用して、FS_XFLAG_DAX フラグを設定できます。

# xfs_io -c "chattr +x" filename

(BZ#1838876、BZ#1838344)

SMB Direct がサポートされるようになりました。

今回の更新で、SMB クライアントが SMB Direct に対応するようになりました。

(BZ#1887940)

ファイルシステムをマウントするための新しい API が追加されました。

今回の更新で、ファイルシステムコンテキスト (struct fs_context) と呼ばれる内部カーネル構造に基づいてファイルシステムをマウントする新しい API が RHEL 8.4 に追加されました。これにより、ユーザー空間、VFS、およびファイルシステム間でのマウントパラメーターの通信に柔軟性が高まりました。これとともに、ファイルシステムコンテキスト上で動作している以下のシステムコールがあります。

  • fsopen(): fsname パラメーターに名前が付けられたファイルシステム用に、カーネル内に空のファイルシステム設定コンテキストを作成し、作成モードに追加して、ファイル記述子に接続してから返します。
  • fsmount(): fsopen() によって返されるファイル記述子を取り、そこに指定されたファイルシステムの root のマウントオブジェクトを作成します。
  • fsconfig(): fsopen(2) または fspick(2) コールで設定したファイルシステム設定コンテキストに対して、コマンドと発行のパラメーターを提供します。
  • fspick(): カーネル内に新しいファイルシステム設定コンテキストを作成し、既存のスーパーブロックをそのカーネルにアタッチして再設定できるようにします。
  • move_mount(): マウントを別の場所に移動します。このマウントは、fsmount() または open_tree() が作成した未割り当てのマウントを OPEN_TREE_CLONE システムコールでアタッチするのにも使用できます。
  • open_tree(): パス名で指定されたマウントオブジェクトを選択し、新しいファイル記述子にアタッチするか、クローンを作成して、そのクローンをファイル記述子に接続します。

mount() システムコールに基づく古い API は引き続きサポートされることに注意してください。

詳細は、カーネルソースツリーの Documentation/filesystems/mount_api.txt ファイルを参照してください。

(BZ#1622041)

vfat ファイルシステムの mtime が発生しなくなる

今回の更新で、メモリー内とディスク上の書き込み時間との間の vfat ファイルシステムの mtime の不一致がなくなりました。この差異は、メモリー内とディスク上の mtime メタデータの差異によって生じました。

(BZ#1533270)

RHEL 8.4 が close_range() システムコールに対応しました。

今回の更新で、close_range() システムコールが RHEL 8.4 にバックポートされました。このシステムコールは、特定の範囲のファイル記述子をすべて効果的に閉じるため、アプリケーションが非常に大きな制限を設定する場合は、さまざまなファイル記述子を閉じる際に存在するタイミングの問題を回避します。

(BZ#1900674)

NFSv4.2 プロトコルを使用したユーザー拡張属性のサポートの追加

今回の更新で、ユーザー拡張属性 (RFC 8276) の NFSV4.2 クライアント側およびサーバー側のサポートが追加され、新たに以下のプロトコル拡張が追加されました。

新しい操作:

  • - GETXATTR - ファイルの拡張属性を取得します。
  • - SETXATTR - ファイルの拡張属性を設定します。
  • - LISTXATTR - ファイルの拡張属性をリスト表示します。
  • - REMOVEXATTR - ファイルの拡張属性を削除します。

新しいエラーコード:

  • - NFS4ERR-NOXATTR - xattr が存在しません。
  • - NFS4ERR_XATTR2BIG - xattr の値は大きすぎます。

新しい属性:

  • - xattr_support - per-fs 読み取り専用属性は xattrs がサポートされているかどうかを判別します。True に設定すると、オブジェクトのファイルシステムは拡張属性をサポートします。

(BZ#1888214)