このように大きなディレクトリを削除する方法は?
stat session/
File: ‘session/’
Size: 321540096 Blocks: 628040 IO Block: 4096 directory
Device: 903h/2307d Inode: 11149319 Links: 2
Access: (0755/drwxr-xr-x) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2022-09-29 14:34:40.910894275 +0200
Modify: 2022-09-29 14:35:09.598400050 +0200
Change: 2022-09-29 14:35:09.598400050 +0200
Birth: -
ディレクトリサイズ(コンテンツではなくディレクトリエントリ自体)が300 MBを超えています。 inodeの数が1,100万個を超えています。
このディレクトリにはサブディレクトリはなく、ファイルの束だけがあります。
一般的なコマンドは機能しません。私はこれを試しました:
rsync -a --delete empty_dir/ session/
rm -rf session
find . -type f --delete
私がls -f1
それにぶつかったら、ただ停止します。
私がmv -- * ../.tmp_to_delete
それにぶつかったら、ただ停止します。
私がdu
それにぶつかったら、ただ停止します。
現在、rsync --deleteは最大7MB / sの読み取り速度で2日間実行されており、ディレクトリのstat出力に変更はありません。
ディレクトリが大きすぎるのは問題のようです。
ベストアンサー1
解決済み:4日後、rsyncは操作を完了しました。すべてのファイルが削除されました。ただし、単一のファイルを削除する前にディレクトリ情報を読み取るには少なくとも2日かかります。
同様の問題が発生する可能性がある人のための情報は次のとおりです。画面を使って忍耐強い。