私は FreeBSD8 を使用しています。パーティションに問題があります。マウントできません。「操作は許可されていません」と表示されます。
を実行しますfsck -t ufs /dev/da0p1
。操作が完了すると、正常にマウントできます。ただし、現時点ではパーティションにはデータがありません。何らかのデータがあったかどうかは分かりません。
Q: マウントされていないパーティションで fsck を実行します。データが失われる可能性はありますか? もしそうなら、回復する方法はありますか?
編集: のみ実行しますfsck -t ufs /dev/da0p1
。-y または -n なしで実行すると、Phase1、2、3、4、... が出力され、正常に終了します。途中でプロンプトは表示されません。
答え1
それは、あなたが何に「はい」と答えたかによります。ファイルシステムについて、そこに何があったか、fsck 中に何が表示され、何が尋ねられたかについて、もっと詳しく知らなければ、役に立つ回答をするのは非常に困難です。
簡単に答えると、はい、データを削除する可能性があります。lost+found で見つかったものをそのドライブに置くことで、データを削除しないように最大限の努力をしますが、明らかに破損しているファイルシステムから回復しています。言い換えると、FS の破損に対処する場合、何でも失われる可能性があります。
答え2
技術的には、fsck はファイルシステムのメタデータの問題を特定して修正しようとします。メタデータはファイルシステムを記述するデータ構造で、主にファイル、ディレクトリ、権限/セキュリティ オブジェクト、およびファイル データへのポインターで構成されます。データ自体にはあまり影響はなく、単に処理のために存在しているだけです。Michael が回答で述べたように、fsck がメタデータにどのような変更を加えるかは、実行時に使用したオプションと、その途中で表示されるプロンプトにどのように答えるかによって異なります。
運が良ければ、データは lost+found にほとんど手つかずのまま保存されます。しかし、ほとんどの場合、何かが lost+found に保存された場合、そのファイルは破損しているか、少なくとも一部のメタデータから切り離されています。そのため、ファイルはどのディレクトリに属しているか、またはファイル名がわからない場合があります。その場合、ファイルの inode 番号だけが残ります。この状態から元に戻すことは不可能ではありませんが、多大な労力、時間、そして運が必要になります。