重要なディスクデータパーティションをfsckするのは安全ですか?

重要なディスクデータパーティションをfsckするのは安全ですか?

FreeBSD 10.1を実行しているx86ベースのコンピュータがあります。 Red Hat Linuxと他のオペレーティングシステムでデュアルブートしました。 FreeBSD(10.1)のUFSパーティション「A」をLinuxのext2ベースのパーティションに移行しています。私はパーティション「B」を一時ストレージとして使用しています。

次の手順に従います。

  1. FreeBSDでは、「B」をext2にフォーマットし、rsyncを使用して「A」から「B」にデータを移動しました。ボックスを再起動します。
  2. BoxはLinuxに付属しています。 Linuxでは、「A」をext2にフォーマットし、Bをext2にマウントし、rsyncを使用して「B」から「A」にデータを移動します。

問題:Linuxの「B」インストールが何度も失敗し、fsckを実行することをお勧めします。fsck非対話型モードで実行すると、失敗して手動で実行することをお勧めします。ボックスがリモートなので、「fsck」を手動で実行することはできません。第二に、fsckデータ損失が発生するのか心配です。

お問い合わせ:

  1. Linuxでfschkを実行するように要求するのはなぜですか?私は何が間違っていましたか?
  2. fsckパーティションで実行するのはどのくらい安全ですか?作業中にファイルが削除されると、マイボックスはきちんと出ません。
  3. fsckデバッグに使用できるすべてのタスクを記録する方法はありますか?

FreeBSDで行われた作業:

#format raw partition as ext2 
mkfs.ext2  /dev/mfid0s1f

#mount newly formated partition as backup
mkdir -p /backup
mount /dev/mfid0s1f /backup 

#move data for UFS partition mounted as 'data' to ext2 partition 
rsync -a /data/*  /backup 

#reboot the box 
reboot

Linuxで実行されるアクション(rc.local経由):

case 1: I try to mount 'backup' without fsck

mkdir -p /backup
mount /dev/sda8  /backup 
mount fail with suggestion to run fsck. 

case 2: I add non-interective fsck

mkdir -p /backup
e2fsck -p /dev/sda8 
fail with : /dev/sda8: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY

ベストアンサー1

オペレーティングシステムでこれを実行するのはなぜですかfsck

過去のある時点では、ファイルシステムが完全にアンマウントされていませんでした。システムでは、fsck矛盾をクリーンアップするために実行する必要があります。

私は何が間違っていましたか? rsync を使用してデータを移動します。

概念的には、私はあなたが走っている必要があることを除いて、あなたが間違ったことをしているとは思わないfsck(上記参照)。ここでコマンドを見るのが良いでしょうrsync

fsckを実行するのはどのくらい安全ですか?ファイルが削除されると、私のボックスはきれいになりません

ファイルシステムが一貫性のない状態です。ファイルシステムがきれいにマークされていない可能性がありますが、そうでない場合はすべて正常です。他の極端なケースでは、ファイルシステム全体が破損し、理論的にすべてを失う可能性があります。ほとんどの場合、削除されたfsckがまだファイルシステムから削除されていないファイルのみが削除されます。

fsckで行われたすべての操作を記録する方法はありますか?

いくつかのオプションがあります。 1つは内部コマンドを使用することです試運転パターン(man fsckおよび参照man e2fsck):

fsck -n /dev/mfid0p7

-p回復に満足するまで自動回復フラグを使用しないことをお勧めします。

おすすめ記事