故障外接硬碟救援紀錄
筆者於2018年在美國Walmart買了一顆WD的My Passport 1TB外接硬碟,2021年開始就出現在Windows無法打開,在Macbook上有時候讀得到,有時候讀不到(在Disk Utility看得到,但沒有掛載在桌面),一直拖到2026才來救援。
用Refus加上SystemRescue製作開機隨身碟
先用Refus加上SystemRescue製作開機隨身碟。下載Rufus,下載SystemRescue的映像檔。
按照這個頁面的指示,將SystemRescue的印像檔燒錄到隨身碟上。
燒錄的時候可能會出現the selected cluster size is not valid for this device的錯誤訊息,在Cluster size要選擇正確的size。
用隨身碟開機的時候,要設定secure boot。重開機後按F2進入BIOS,在security選單中,
分段救援
因為筆者的電腦只有512GB,但這個外接硬碟有1TB,所以原本是打算分段救援,就是一次救援200GB,然後分5次複製到電腦的硬碟中。但這個方法後來遇到了一些問題,所以沒採用,但還是記錄一下過程。(下面是以救援10GB當作示範)
用開機隨身碟進入SystemRescue後,先輸入startx,進到圖形化介面,再進到terminal,輸入lsblk -f,可以看到目前有的硬碟磁區。筆者是想要把損壞的外接硬碟檔案複製到電腦中,這個電腦的磁區的FSTYPE通常會是BitLock 2,但電腦本身有被密碼保護,所以沒辦法直接掛載。
先回到Windows,用系統管理員打開命令提示字元。輸入manage-bde -protectors -get C:畫面顯示no key protectors found,接著輸入manage-bde -protectors -add C: -RecoveryPassword,會產生一組金鑰,把金鑰抄下來。
再次到SystemRescue,輸入mkdir -p /mnt/bitlocker /mnt/computer,創建兩個新資料夾。
輸入lsblk -f,確認電腦要存放備份檔的磁區名稱,假設是nvme0n1p3,接著輸入dislocker -V /dev/nvme0n1p3 -p -- /mnt/bitlocker會要求輸入金鑰。
接著輸入mount -o loop /mnt/bitlocker/dislocker-file /mnt/computer成功掛載。
此時可以到File System中的mnt資料夾中的computer查看檔案,可以看到Windows中一般常見的Program Files資料夾。
接著插入損壞的外接硬碟,一樣輸入lsblk -f,確認損壞的外接硬碟磁區名稱,假設為為sdb1。
開始用ddrescue救援,輸入ddrescue -d -v -n -i 0GiB -s 10GiB /dev/sdb1 /mnt/computer/part1.img /mnt/computer/part1.map
備份完成後,回到Windows,下載OSFMount掛載剛剛備份出來的img檔案。
接著就可以用PhotoRec掃描掛載part1.img的磁碟,並把裡面的檔案救出來。(救回來的檔案不會顯示原本的檔名,只會是編碼)
網路上也有人推薦用Recuva,這個軟體救回來的檔案雖然能夠顯示原本的檔名,但能救的檔案不多。
第一批檔案救回來後,移到安全的地方,再騰出空間給第二批,此時第二批救援指令要用ddrescue -d -v -n -i 10GiB -s 10GiB -o 0 /dev/sdb1 /mnt/computer/part2.img /mnt/computer/part2.map,不加-o 0的話,檔案大小會變成20GB。
筆者用這個方法,後來掛載電腦硬碟的時候,出現fsconfig() failed can't find a squashfs superblock on loop1的錯誤訊息,沒有解決。
一次救援
上面分次救援到硬碟的方法行不通後,筆者另外買了一顆ADATA的2TB SSD(SE880)外接硬碟
用這個方法前要先確認USB插孔數量夠不夠,例如筆者的筆電有兩個USB Type A,一個Type C,所以一個Type A插開機隨身碟,一個Type A插舊的外接硬碟,一個Type C插新的救援外接硬碟。
用開機隨身碟進入SystemRescue後,輸入lsblk -f,看看目前的磁碟。
插入舊的待救援硬碟,再輸入lsblk -f,可以看到這個硬碟的代號,假設是sdb。
插入新的救援硬碟,再輸入lsblk -f,可以看到這個硬碟的代號,假設是sdc。
輸入ddrescue -f -r 3 -n -v /dev/sdb /dev/sdc rescue.log,開始救援。
救援完成後會第二次第三次嘗試讀取壞軌,這時候按Ctrl+C就可以退出。
這個方法只是將舊硬碟完整地複製到新硬碟上,打開新硬碟的時候一樣會出現錯誤訊息(但物理上沒有壞),所以要用PhotoRec把這個新硬碟的裡的檔案救出來。
如果空間不夠,可以分檔案類型救回,例如先救回文件檔、再救回圖檔、再救回音樂檔、再救回影片檔。
No comments:
Post a Comment