我在 Ask Ubuntu 上問了這個問題,但沒有成功,他們建議在超級用戶上重新發布它,所以我在這裡!
是時候了,5 年後,我的 1tb 外接硬碟(存有我所有的家庭照片和所有音樂)崩潰了。足夠愚蠢的是,我在突襲中沒有兩個驅動器,我只是投資了它們,所以不會再發生這種情況。
我成功地使用 dd_rescue 將文件保存到伺服器上的另一個 2tb 電影驅動器中,但是我似乎無法理解如何掛載此 .img 檔案。
我正在使用 GNU ddrescue。
我還嘗試在 Windows 7 上運行 chkdsk \f 但出現錯誤“磁碟空間不足,無法修復卷位圖。CHKDSK 中止。”。根據微軟網站有關此錯誤訊息的資訊:「如果可以,請從NTFS 磁碟區中刪除一些不需要的文件,然後重試Chkdsk 命令。如果無法刪除任何文件,則必須重新格式化NTFS 磁碟區並從備份中還原數據.」。由於我無法釋放影像空間,我不知道該怎麼做。無論如何,之前只使用了 1tb 中的 400gb,因此錯誤訊息實際上沒有任何意義。 Ask Ubuntu 上的一個人說這也可能是因為一個非常大的損壞,但根據 ddrescue errsize 只有 31mb,所以這也沒有任何意義。
這是我執行 ddrescue 指令的方式
sudo ddrescue /dev/sdh1 /media/external/rescue/rescue.img /media/external/rescue/rescuelog
Initial status (read from logfile)
rescued: 1 TB, errsize: 30944 kB, errors: 345
Finished
這是我的測試命令
檔案圖像.img
image.img: x86 boot sector, code offset 0x52, OEM-ID "NTFS ", sectors/cluster 8, reserved sectors 0, Media descriptor 0xf8, heads 255, hidden sectors 2048, dos < 4.0 BootSector (0x80)
fdisk -l 鏡像.img
Disk image.img: 1000.2 GB, 1000203091968 bytes
255 heads, 63 sectors/track, 121601 cylinders, total 1953521664 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x2052474d
This doesn't look like a partition table
Probably you selected the wrong device.
Device Boot Start End Blocks Id System
image.img1 ? 6579571 1924427647 958924038+ 70 DiskSecure Multi-Boot
image.img2 ? 1953251627 3771827541 909287957+ 43 Unknown
image.img3 ? 225735265 225735274 5 72 Unknown
image.img4 2642411520 2642463409 25945 0 Empty
Partition table entries are not in disk order
我完全不知道為什麼 fdisk 顯示所有這些奇怪的分區,例如“DiskSecure Multi-Boot”和兩個“未知”分區,parted 命令給了我看起來正確的信息
分開的圖像.img 列印
WARNING: You are not superuser. Watch out for permissions.
Model: (file)
Disk /media/external/Rescue/image.img: 1000GB
Sector size (logical/physical): 512B/512B
Partition Table: loop
Number Start End Size File system Flags
1 0.00B 1000GB 1000GB ntfs
我不確定我是否有正確的標誌等,但在這裡我正在嘗試安裝驅動器
sudo mount -r -o 循環 image.img /mnt
ntfs_mst_post_read_fixup_warn: magic: 0x00000000 size: 4096 usa_ofs: 0 usa_count: 65535: Invalid argument
Index buffer (VCN 0x0) of directory inode 0x5 has a size (24) differing from the directory specified size (4096).
ntfs_mst_post_read_fixup_warn: magic: 0x00000000 size: 4096 usa_ofs: 0 usa_count: 65535: Invalid argument
Index buffer (VCN 0x0) of directory inode 0x5 has a size (24) differing from the directory specified size (4096).
ntfs_mst_post_read_fixup_warn: magic: 0x00000000 size: 4096 usa_ofs: 0 usa_count: 65535: Invalid argument
Index buffer (VCN 0x0) of directory inode 0x5 has a size (24) differing from the directory specified size (4096).
現在它實際上安裝在/mnt上,但是當執行ls /mnt時它返回“正在讀取目錄/mnt/:輸入/輸出錯誤”
感謝任何幫助,甚至非常歡迎猜測。
先致謝!
答案1
我想我也遇到過同樣的問題(失敗的 ddrescue'd NTFS 驅動器損壞了分區表(弄亂了“fdisk -l”但正確的“parted”,掛載命令將失敗)
Failed to read last sector (1953520001): Invalid argument
HINTS: Either the volume is a RAID/LDM but it wasn't setup yet,
or it was not setup correctly (e.g. by not using mdadm --build ...),
or a wrong device is tried to be mounted,
or the partition table is corrupt (partition is smaller than NTFS),
or the NTFS boot sector is corrupt (NTFS size is not valid).
Failed to mount '/dev/loop0': Invalid argument
The device '/dev/loop0' doesn't seem to have a valid NTFS.
Maybe the wrong device is used? Or the whole disk instead of a
partition (e.g. /dev/sda, not /dev/sda1)? Or the other way around?
我設法使用命令安裝了保存的圖像
sudo ntfs-3g -o force imagefile /mountpoint
我認為這相當於
sudo mount -t ntfs-3g imagefile /mountpoint
(在這裡找到http://www.makeuseof.com/tag/fix-corrupted-windows-ntfs-filesystem-ubuntu/(如果我費心去讀的話,在手冊頁中......愚蠢。))