e2fsck
qcow2 이미지 파일 내의 파일 시스템이 인식을 거부 하는 흥미로운 사례가 있었습니다 . 사용하면 testdisk
파티션이 표시되어 일부 표시가 남습니다.
이 문제가 발생하는 첫 번째 이유는 가상 머신의 호스트가 중단되기 때문입니다.
None
그래서 파티션의 "유형"을 선택 하고 다음과 같은 결과를 얻습니다.
TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <[email protected]>
http://www.cgsecurity.org
Disk /dev/loop0 - 120 GB / 112 GiB - 235156929 sectors
The harddisk (120 GB / 112 GiB) seems too small! (< 4079258 TB / 3710063 TiB)
Check the harddisk size: HD jumpers settings, BIOS detection...
The following partitions can't be recovered:
Partition Start End Size in sectors
> ext3 640 251657855 251657216 [DATA]
ext3 1864062 253521277 251657216 [DATA]
ext3 1864064 253521279 251657216 [DATA]
ext3 2387454 254044669 251657216 [DATA]
ext3 2387456 254044671 251657216 [DATA]
ext3 2911614 254568829 251657216 [DATA]
ext3 2911616 254568831 251657216 [DATA]
ext3 3435774 255092989 251657216 [DATA]
ext3 3435776 255092991 251657216 [DATA]
ext3 3959934 255617149 251657216 [DATA]
[ Continue ]
ext3 blocksize=4096 Large file Sparse superblock, 128 GB / 119 GiB
슈퍼 블록이 그대로 그대로 있는 것 같지만, 슈퍼 블록이 mount
어디에 있는지 모르는 한 그 중 하나를 사용하도록 어떻게 확신할 수 있습니까?
kpartx
qcow2 에서 정상적인 작업을 수행한 후에 /dev/loop0
는 아무것도 표시되지 않습니다.losetup -o 32256 /dev/loop0 imagefile
이미지 자체는 ( qemu-img info
)입니다.
file format: qcow2
virtual size: 120G (128849018880 bytes)
disk size: 112G
cluster_size: 65536
Format specific information:
compat: 0.10
참고: 백업이 있지만 몇 주가 지났기 때문에 가능하면 디스크에 있는 내용을 백업과 비교해 보겠습니다. 대부분은 Git 및 Mercurial 저장소이므로 다른 곳에서 다시 가져올 수 있습니다.
답변1
글쎄, 내 질문에 너무 빨리 대답해서 미안하지만 충격적인 사실을 발견했습니다. 파일 크기 .qcow2
는 120400379904바이트이고 이미지를 변환하면 qemu-img convert -O raw
128849018880바이트 크기의 이미지가 제공됩니다.
크게 다릅니다.
이제 발견된 섹터 크기를 취하면 testdisk
512*251657216이 128848494592라는 것을 알 수 있습니다. 이는 "원본" 이미지의 파일 크기보다 정확히 512바이트 더 큽니다. 이것은 유망해 보이는데, 나는 속으로 생각했다.
이 파일은 몇 년 전에 생성했기 때문에 희소 이미지로 생성되었는지는 확실하지 않습니다. 그런데 그렇다면 qemu-img info
, 이미지 포맷을 변환해 볼까 하는 생각이 들었습니다.원본 파일은 변경되지 않는다는 점을 기억하세요!
qemu-img convert -O raw input output
느리더라도 작업을 완료합니다.
파일을 다시 실행하면 testdisk
놀라울 정도로 잘 작동했지만, -o sb=...
.
TestDisk 6.14, Data Recovery Utility, July 2013
Christophe GRENIER <[email protected]>
http://www.cgsecurity.org
Disk bigdata/vm_disk_vdb.img - 128 GB / 120 GiB - CHS 15666 255 63
Partition Start End Size in sectors
>P ext3 0 1 1 15664 239 62 251657216 [DATA]
Structure: Ok.
Keys T: change type, P: list files,
Enter: to continue
ext3 blocksize=4096 Large file Sparse superblock, 128 GB / 119 GiB
testdisk
그런 다음 파일을 디렉터리에 복사하고 이를 내 백업과 비교할 수 있습니다.
다음과 같은 일부 손상이 있습니다.
ext2fs_read_inode(ino=384492884) failed with error 2133571369.
다른 사소한 문제도 있지만 이는 전체 파일 및 폴더의 약 0.1%에만 영향을 미칩니다. testdisk
손상된 것으로 간주되어야 하는 파일을 찾으려면 다음 단계를 수행하여 시작하십시오 .
testdisk /log imagefile.img