私のDebian sidに新しい(1か月未満)SSD nvme WD SN850にカスタム5.17.0-rc1カーネルをインストールしました。ルートパーティションはf2fs(v 1.14)にフォーマットされています。
わかりました。fstrim: /: FITRIM ioctl failed: Structure needs cleaning
fsckは正常で、問題は検出されず、オペレーティングシステムも問題なく実行されます。
sudo fsck.f2fs /dev/nvme0n1p2
Info: Segments per section = 1
Info: Sections per zone = 1
Info: sector size = 512
Info: total sectors = 976566287 (476839 MB)
Info: MKFS version
"Linux version 5.5.0-rc6 (u1@jeanordi) (gcc version 9.2.1 20191130 (Debian 9.2.1-21)) #1 SMP PREEMPT Thu Jan 16 00:24:17 CET 2020"
Info: FSCK version
from "Linux version 5.5.0-rc6 (u1@jeanordi) (gcc version 9.2.1 20191130 (Debian 9.2.1-21)) #1 SMP PREEMPT Thu Jan 16 00:24:17 CET 2020"
to "Linux version 5.5.0-rc6 (u1@jeanordi) (gcc version 9.2.1 20191130 (Debian 9.2.1-21)) #1 SMP PREEMPT Thu Jan 16 00:24:17 CET 2020"
Info: superblock features = 0 :
Info: superblock encrypt level = 0, salt = 00000000000000000000000000000000
Info: total FS sectors = 976566280 (476839 MB)
Info: CKPT version = 1d9fb4bd
Info: checkpoint state = 55 : crc fsck compacted_summary unmount
[FSCK] Unreachable nat entries [Ok..] [0x0]
[FSCK] SIT valid block bitmap checking [Ok..]
[FSCK] Hard link checking for regular file [Ok..] [0xb]
[FSCK] valid_block_count matching with CP [Ok..] [0x44993b]
[FSCK] valid_node_count matching with CP (de lookup) [Ok..] [0x16c2c]
[FSCK] valid_node_count matching with CP (nat lookup) [Ok..] [0x16c2c]
[FSCK] valid_inode_count matched with CP [Ok..] [0x15d7c]
[FSCK] free segment_count matched with CP [Ok..] [0x374d7]
[FSCK] next block offset is free [Ok..]
[FSCK] fixing SIT types
[FSCK] other corrupted bugs [Ok..]
Done: 2.975766 secs
答え1
デフォルトでは、F2FSはシーケンシャルTRIMのように動作する混合TRIMモードを使用してインストールされます。この実装は、RW IO間の長い廃棄遅延を軽減するために非同期廃棄スレッドを生成します。候補をメモリに保持し、スレッドはアイドル時間中に候補を解放します[8]。したがって、定期的なTRIMを望むユーザーはインストールオプションを暗黙的に設定する必要があり、手動でインストールする
nodiscard
場合は/etc/fstab
それを渡す必要があります。mount
つまり、ルートファイルシステム(おそらくinitramfsにあります)のマウントオプションを指定しないと実行できnodiscard
ません。もっと重要なことがあります。fstrim
f2fs
f2fs
fstrim
onを使用するには、マウントオプションをf2fs
使用してnodiscard
継続的なバックグラウンドTRIM操作を停止し、手動で実行できるようにする必要がありますfstrim
。
ところでFITRIM ioctl failed: Structure needs cleaning
結果が本当に変ですね。fstrim
これはエラーを生成するソースの場所のようです。
このエラーは値があることをStructure needs cleaning
意味します。 ~によるとerrno
EUCLEAN
エリクサー相互参照、これはf2fs
ドライバに表示されます。一箇所のみ:
#define EFSCORRUPTED EUCLEAN /* Filesystem is corrupted */
ああ... f2fsがEUCLEAN
同義語として定義されているようですが、EFSCORRUPTED
確認してください。f2fsドライバ内の複数の場所から、原因が何でもおそらく悪いニュースである。
ファイルf2fs
システムが破損している可能性があります。