同じパーティション内でファイルを物理的に移動する方法

同じパーティション内でファイルを物理的に移動する方法

1つのパーティション内でのみ作業している場合は、ファイルを移動できますか?アイデアは、ビットの損傷を防ぐためにSDカードを更新することです。ただし、ファイルを再び内外に移動する必要はありません。

答え1

mvファイルのメタデータのみが変更されます。ファイルの全く新しいコピーをディスクに書き込むには、mvファイルを一時的な新しい場所にコピーしてから再度cp挿入します。成功したコピーを確認したら、rmオリジナルを入手できます。

答え2

スペースがある場合は、再帰を使用するか、cpパーティションrsyncに2番目のコピーを作成して最初のコピーを削除してください。

そうでない場合は、各ファイルをそれ自体にコピーできます。システムとSSDはデータが同じであることを認識してはならず、それに新しいブロックを割り当てる必要があります。dd conv=notruncこの目的に使用できます。利点は、ハードリンクが保存され、中断されてもデータが破損しないことです。例えば

dd if=myfile of=myfile conv=notrunc

ファイル属性を保存することもできます。変更された時間は最初に保存してtouch -r myfile tmpから反対の動作を使用して復元しますtouch -r tmp myfile。更新されないディレクトリとシンボリックリンクがまだあります。

関連情報