サーバ関連:ext4_の初期化を早く終わらせる

ext4 の初期化を早く終わらせる

  • Linux 標準となっている ext4 形式で初期化すると、比較的早く初期化が終わる。
  • しかし、実際はきちんと初期化されておらず、初期化したディスクをマウントした時にバックグラウンドで走る ext4lazyinit プロセスがディスクに負荷をかけないようにゆっくりと実際の初期化作業をしている。
  • これを知らなかった自分の経験上、ext4lazyinit が実行されているディスクに、大量のデータを転送すると I/O エラーが発生する。多分、初期化が間に合ってなかったのだと思う。
  • したがって、これを早く終わらせるためには、以下の 2 通りの方法がある。
    1. 初期化時に、実際の初期化を行う。
    2. マウント時に初期化を強制的に行う。
  • このページでは、これらの方法を紹介する。
$ sudo mkfs.ext4 -E lazy_itable_init=0  /dev/sdX
  • /dev/sdX は初期化したいディスクのデバイスファイル

上記の初期化時のオプションを付け忘れて初期化してしまった場合、こちらの方法を取ると良い。

$ sudo mount -t ext4 -o init_itable=0  /dev/sdX MOUNT_PATH
  • MOUNT_PATH にはマウント先
  • これでマウントすると、iotop コマンド上でディスクアクセスが ext4lazyinit によって 100% 近くに張り付いている。ext4lazyinit プロセスが消えたら初期化完了である。
  • サーバ関連/ext4_の初期化を早く終わらせる.txt
  • 最終更新: 2023/09/14 11:44
  • by mumeiyamibito