外付けハードドライブパーティションsdb4(通常のマウントポイントは/run/media/yan/data)でI / Oエラーが発生します。
パーティションが応答せずにアクセスできず、マウント解除を拒否します。ディスクを取り出して再接続する以外に何をすべきかわかりません。その後、fsにエラーが発生してfsckを実行しました。
sudo e2fsck /dev/sdb4 -y -v
多くの修理(数千)が必要でしたが、そのディスクのデータは重要ではなかったため、-yを使用して実行しました。
data contains a file system with errors, check forced.
Pass 1: Checking inodes, blocks, and sizes
Pass 2: Checking directory structure
# Fixed invalid inode numbers, incorrect filetypes, cleared links, deleted/unused inodes
Pass 3: Checking directory connectivity
# Connected unconnected directory inodes to /lost+found
Pass 4: Checking reference counts
#Fix inodes ref count, connected unattached inode to /lost+found
Pass 5: Checking group summary information
# Fix block bitmap differences, blocks count wrong for group
# Fix inode bitmap differences, directories count wrong for group, free inodes count wrong for group
data: ***** FILE SYSTEM WAS MODIFIED *****
72955 inodes used (0.14%, out of 51200000)
2390 non-contiguous files (3.3%)
17 non-contiguous directories (0.0%)
# of inodes with ind/dind/tind blocks: 0/0/0
Extent depth histogram: 72264/636/1
186984621 blocks used (91.30%, out of 204800000)
0 bad blocks
34 large files
70447 regular files
2453 directories
0 character device files
0 block device files
0 fifos
4294966642 links
46 symbolic links (46 fast symbolic links)
0 sockets
------------
71063 files
したがって、私が正しく理解した場合、fsckは70,000個のファイルを保存しました。つまり、そのディスクに75〜80,000個のファイルがあったため、ほとんどのファイルを保存しました。問題は、「/run/media/yan/data/lost+found」に20,000個のファイルしか表示されず、パーティション全体では24,000個しか表示されないことです。
[yan@machine ~]$ find /run/media/yan/data/lost+found | wc -l
19786
[yan@machine ~]$ find /run/media/yan/data | wc -l
23691
fsckを再度実行しましたが、パーティションが消去されたと言います(そして74,000個のファイルがありますか?)
[yan@machine ~]$ sudo fsck /dev/sdb4
fsck from util-linux 2.28
e2fsck 1.42.13 (17-May-2015)
data: clean, 74200/51200000 files, 186685980/204800000 blocks[/cpp]
私のディスク使用量もdfとduによって大きく異なります(違いが必要であることを知っていますが、ここでは正常と言うには大きすぎます)。
[yan@machine ~]$ df -h /run/media/yan/data
Filesystem Size Used Avail Use% Mounted on
/dev/sdb4 769G 700G 31G 96% /run/media/yan/data
[yan@machine ~]$ du -sh /run/media/yan/data
586G /run/media/yan/data
まだアクセスできない回復されたデータがあると思います。私の質問は次のとおりです
1) fsckで復元されたファイルがLost+Foundに保存されない可能性はありますか?では、その人はどこにいますか?
2)失われたファイルを回復する方法はありますか?
3)そうでない場合、どのようにこのスペースを確保できますか?
編集する:
sourcejediが推奨する最新バージョンのe2fsckを試してみました。
[yan@machine build]$ sudo ./e2fsck/e2fsck -f /dev/sdb4
e2fsck 1.43.3 (04-Sep-2016)
Pass 1: Checking inodes, blocks, and sizes
Inode 40501578 extent tree (at level 2) could be narrower. Fix<y>? yes
Pass 1E: Optimizing extent trees
Pass 2: Checking directory structure
Pass 3: Checking directory connectivity
Pass 4: Checking reference counts
Pass 5: Checking group summary information
data: ***** FILE SYSTEM WAS MODIFIED *****
data: 74200/51200000 files (3.2% non-contiguous), 186685964/204800000 blocks
それほど多くのことはしませんが、Lost + foundにはまだ同じ数のファイルとサイズがあります。
答え1
また、リンク数が非常に疑わしいです(2^32に近い)。
更新されたe2fsckを試したり、バグを報告したりできます。これは確かに間違いです。
デバイス/パーティションを検索すると、photorec
そのフォーマットがサポートされ、連続したファイルをより回復することができます。 FSがいっぱいで、多くのファイルが連続していません。 photorec
ファイル名またはディレクトリを復元しません。 (たとえば、mp3の場合は、picard
mp3メタデータ(ID3タグとも呼ばれます)からファイル名を適用するのと同じ方法を使用できます。)photorec
すべてのファイルを復元するには、他のファイルシステムに空き容量が必要です。