クラッシュ後にsystemd
自動強制fsck
ディスク(ハードシャットダウン)を設定するには?
sysvinit
ハッキングを使用する場合(Arch Linuxで)/sbin/init
:ファイルをrc.local
生成するとき。存在する場合は、起動時に強制fsckを有効にします。/forcefsck
rc.local.shutdown
rc.sysinit
/forcefsck
同じことをする方法はsystemd
?fsck
休憩後に自動機能が内蔵されていますか?
答え1
fsck
起動時にfsck.mode=force
チェックを完全にスキップするために使用できるデフォルトauto
値を渡すことでskip
これを強制できます。カーネルコマンドラインパラメータ(systemd
v。213そして2番目のパラメータ:fsck.repair
-fsck
起動時に異常ファイルシステムを処理する方法を制御します。可能な値は次のとおりです。preen
安全に修正できるアイテムを修復し、yes
すべての質問に「はい」と答え、no
デフォルトです。
気づくsystemd-fsck
特定のファイルシステムに関する詳細を知らず、各ファイルシステムタイプに固有のファイルシステムチェッカーのみを実行します(/sbin/fsck.*
)。
これで、ファイルシステムがまたはあれxfs
ば、btrfs
それぞれ/sbin/fsck.xfs
またはを実行します/sbin/fsck.btrfs
。これがうまくいかない場合は、fsck.xfs
マニュアルページを確認するか、別々に確認し、fsck.btrfs
に記載されているファイルの内容を確認する必要があります/sbin
。
答え2
BTRFSシステムをチェックする唯一の方法は、独自のツールを使用することであり、btrfs check
ルートボリュームをアンマウントする必要があるため、唯一のオプションは実際にlivecdから起動することです。
fsck.btrfs
メッセージを印刷して他の操作を実行しない単純なスタブであるcallで終わる提案は間違っています。これには、fsck.mode
カーネルコマンドラインオプションまたはファイルへの回答も含まれます。.forcefsck
[root@nuc ~]# cat /usr/sbin/fsck.btrfs
#!/usr/bin/sh -f
AUTO=false
while getopts ":aApy" c
do
case $c in
a|A|p|y) AUTO=true;;
esac
done
shift $(($OPTIND - 1))
eval DEV=\${$#}
if [ ! -e $DEV ]; then
echo "$0: $DEV does not exist"
exit 8
fi
if ! $AUTO; then
echo "If you wish to check the consistency of a BTRFS filesystem or"
echo "repair a damaged filesystem, see btrfs(8) subcommand 'check'."
fi
exit 0
ただし、停電や同様の状況が発生した後にすべてが正常であるかどうかわからない場合は、btrfs check
マウントされたファイルシステムに対して読み取り専用チェックを実行できます。
[root@nuc ~]# btrfs check --readonly --force /dev/sda5
Opening filesystem to check...
WARNING: filesystem mounted, continuing because of --force
Checking filesystem on /dev/sda5
UUID: 8c44de9c-c91b-4ac4-857b-da191dc62274
[1/7] checking root items
[2/7] checking extents
[3/7] checking free space cache
[4/7] checking fs roots
[5/7] checking only csums items (without verifying data)
[6/7] checking root refs
[7/7] checking quota groups skipped (not enabled on this FS)
found 3628683264 bytes used, no error found
total csum bytes: 3093864
total tree bytes: 136937472
total fs tree bytes: 126074880
total extent tree bytes: 6455296
btree space waste bytes: 23047273
file data blocks allocated: 5676253184
referenced 4705763328