私はまだ質問をここで話題にしていますが、質問の各枝に明示的な回答を1か所で持たせることはできません。この回答がスーパーユーザに移行されると質問、すべてのよりよい:
- コマンドが不完全であったので、部分的に処理されたファイルは、(MVのような)が復元されているか、彼らはすでに完全に削除されますか?ただ、単一のファイルシステム内の再帰的
mv
中の個々のrename()
システムコールのように、単一のファイルの個々のunlink()
がアトミックである
- それが完了するいずれか、またはそれは、ファイル単位でありません。 「半分完了」状態はなく、ロールバックできる複数のファイルにまたがる大規模なトランザクションはありません。 個々のディレクトリエントリは削除されるか、削除されます。
同様に、unlink()
の末尾にあるファイルハンドルを指す残りのディレクトリエントリ(別名「ハードリンク」)を持たないファイルは、直ちに削除の対象になります。ファイルシステムは、データが格納されている基礎ブロックを実際に消去または再利用するかどうか、いつ、どのような状況で、どのブロックが現在削除された各ファイルに関連付けられているかを指定する追跡データ。
- 削除されたものが見つからない場合、削除されたものを見つけることはできますか?それはls(アルファベット順)と同じ順序で削除されますか?
一般的ではありません。特定のバックエンドファイルシステムが存在し、スナップショット間の変更を追跡することも、ポイントインタイムリカバリを行うこともできます(これらは一般的に商用であるため、管理者が支払った場合のみ利用可能です)。 sysdig
)があります。
たとえば、システム管理者がZFSまたはcronnedスナップショットを使用してbtrfsを実行している場合、現在存在するファイルのリストと最後のスナップショットとして存在していたファイルのリストを比較できます。
- システムからファイルのログが削除されていますか?
一般的ではありません。あなたのサイトがSysdig Cloud、またはデフォルト以外の動作をしている商用のファイルサーバーを実行している場合は、システム管理者のスタッフがその質問に答えることができます。
bashに関する質問ではありません。あなたは 'rm'を呼び出すツール(シェル、プログラミング言語など)から*正確な*同じ動作をしたり、' unlink() 'システムコールを直接呼び出すことさえあります。 –
...プログラミングに関する質問でもありません。私はhttp://superuser.com/またはhttp://unix.stackexchange.com/ –
のいずれかをお勧めします。リンクされていないファイルは、書き込まれた新しいコンテンツにブロックを再割り当てする傾向があります。いいえ、プロセスをキャンセルしてもリンクは復元されません。 –