ファイルを削除できませんでした:「構造を整理する必要があります。」

ファイルを削除できませんでした:「構造を整理する必要があります。」

LUKSで暗号化された外付けハードドライブがあります。これにはext4 fsが含まれています。

このドライブのファイルに対してrsyncでエラーが発生しました。

rsync: readlink_stat("/home/some/dir/items.json") failed: Structure needs cleaning (117)

ファイルを削除しようとすると、同じエラーが発生します。

rm /home/some/dir/items.json
rm: cannot remove ‘//home/some/dir/items.json’: Structure needs cleaning

ファイルを削除し、ドライブ/ファイルシステムに関する問題(存在する場合)を解決するために何ができるかを知っている人はいますか?

答え1

これはファイルシステムの破損を強く示しています。ディスクをアンマウントし、ディスクのセクタレベルのバックアップを作成し、e2fsckを実行して何が起こっているかを確認する必要があります。重大な破損がある場合は、e2fsckがデータを変調できるようにする前に、セクタレベルのバックアップを実行したことが幸いです。

答え2

誰にでも役立つと、同様の問題(影響を受けたファイルのrsync / rsnapshotバックアップ)がありました。私の問題/解決策をここに投稿しました。

https://ubuntuforums.org/showthread.php?t=2348768&p=13627299#post13627299

要約:

Arch Linux x86_64システムのrsnapshot(rsync)バックアップエラー。深くネストされたファイルが破損してエラーが発生し、ファイルを削除しようとしたときにも表示されます。

sudo rm -fR hourly.5/

rm: cannot remove 'hourly.5/snapshot_root/mnt/Vancouver/temp/temp - old/temp - 09 (Dec 07, 2014 - Sep 02, 2015)/a_OLD-gmail/[email protected]/[Gmail]/LINUX/rsync, rsnapshot; Other backups/19.bak': Structure needs cleaning

問題はこれである:

cd mnt/Vancouver/temp/temp\ -\ old/temp\ -\ 09\ \(Dec\ 07\,\ 2014\ -\ Sep\ 02\,\ 2015\)/a_OLD-gmail/[email protected]/\[Gmail\]/LINUX/rsync\,\ rsnapshot\;\ Other\ backups/

ls -l

ls: cannot access '19.bak': Structure needs cleaning
total 0
-????????? ? ? ? ?  ? 19.bak        ## << THAT IS THE PROBLEM!!

[参照:https://www.reddit.com/r/linuxquestions/comments/4b47r2/has_anyone_ever_gotten_struction_needs_cleaning/]

私のバックアップドライブは/ dev / sda1です。

sudo umount /dev/sda1

sudo fsck.ext4 /dev/sda1  ## << accepted suggested fixes
  • fsck編集(2023-02):注:ネットワーク接続(RAID)ハードドライブであるNASではこれを実行することはできず、オンライン(Amazon; ...)として販売されており、NASドライブを修理するために特別なソフトウェアが必要なようです。 。 NAS HDDに適用するとfsck破損する可能性があります。

再起動:すべてが大丈夫だと思います。バックアップドライブに移動して、問題のあるファイルを削除します。

/mnt/Backups/rsnapshot_backups/hourly.5/snapshot_root/mnt/Vancouver/temp/temp - old/temp - 09 (Dec 07, 2014 - Sep 02, 2015)/a_OLD-gmail/[email protected]/[Gmail]/LINUX/rsync, rsnapshot; Other backups/19.bak

クォンタムED? !

[更新:はい、うまくいきました。バックアップが再び正常に動作しています! :-)]

答え3

時にはファイルシステムが異常であるため、クリーンアップが必要な場合があります。これは次の方法で行うことができます。FSCK注文する。ただし、ファイルの破損の危険を避けるために、マウントされていないパーティションでのみfsckを実行する必要があることに注意してください。

ファイルシステムがext4の場合は、次のコマンドを実行してみてください。

fsck -AR -t ext4 -y

答え4

ファイルを削除しようとすると、rsyncで同じエラーメッセージが表示され、rmでも同じエラーメッセージが表示されます。ファイルシステムはルートファイルシステムなので、fsck は使用できません。ところで、システムを再起動したところ、ファイルが消えてバックアップが成功しました。なぜこれが起こるのかわかりませんが、少なくとも簡単に解決でき、最初に再起動する価値があります。

関連情報