移至主內容
DarkRanger's Secret Area

主導覽

  • 首頁
  • 關於本站
  • Linux
  • 程式開發
  • N900
  • 譯文
  • 資訊技術辭典

文章分類

  • 影劇
  • 遊戲
  • 筆記
  • 雜文
  • 資訊技術
  • 站務訊息

最新內容

  • How-To:Linux 安裝 DevilutionX
  • 於 2012 年建立的一份音樂播放清單
  • How-To:Linux 安裝 Medal of Honor: Allied Assault
  • Fallout 4 (2015)
  • How-To:Linux 安裝 Blood
  • 《終極動員令》系列早期作品原始碼釋出
  • How-To:Linux 安裝 Doom 3
  • Nausicaä of the Valley of the Wind (1984)
  • Intel 內顯與 Linux 桌面死當問題排解
  • 《哥吉拉 -1.0》心得補遺

ddrescue 救援藍光光碟

發表日期:星期日, 10/31/2021 - 22:11,更新日期:星期二, 11/02/2021 - 19:46

自從 DR 在去年將二號機的資料碟也更換為 SSD 後,開始接受將藍光光碟備份一份複本的作法。於是便使用 MakeMKV,陸續將手上的藍光媒體皆備份到磁碟裡。前面幾片都相當順利,直到一路操作到 DR 入手的第一片藍光、也就是 2014 年的《哥吉拉》(Godzilla)時,卻出現了光碟部份資料始終讀取失敗,以致無法完成備份的情形。

 

若嘗試單純使用 dd 將光碟複製為映像檔,也會在執行過程中出現錯誤而失敗,且 dmesg 內也會有 I/O 錯誤的記錄。看起來這片光碟似乎沒解了,只是轉念一想,既然都用到 dd 了,為什麼不乾脆用 ddrescue 救援看看呢?平常 DR 算蠻常使用 ddrescue 的,不僅是用於磁碟資料救援,即便是正常磁碟的對拷需求,DR 也習慣使用 ddrescue 來做複製。不過在此之前,DR 還未曾使用 ddrescue 來做光碟救援。

 

於是便嘗試執行諸如以下指令:

  • ddrescue -vv -r 3 /dev/sr0 rescue.iso recovery.log

 

前述指令表示光碟機位置為 /dev/sr0,輸出的映像檔為 rescue.iso,記錄檔為 rescovery.log,以及重試次數為 3。實際重試的次數其實遠多於三次,因為 DR 還反覆執行了很多次。只要每次執行皆沿用同一支記錄檔,就不會有進度重來的問題。

 

跑了幾天後,根據 ddrescue 所顯示的狀態,大小約 40GB 左右的藍光光碟,最後只剩下約 30MB 未能救援出來。後來索性再增加重試次數,並嘗試使用直接存取模式(direct disc access)試試看,則修改後的指令如下:

  • ddrescue -vv -r 120 -d -b 2048 /dev/sr0 rescue.iso recovery.log

 

然後就斷斷續續跑了約三個多月……原先讀取失敗的 30MB 區塊,最後僅剩下不到 1MB 是沒救援出來的。然而不幸地後續就沒有什麼進展了,DR 也就決定就這麼打住。儘管從結果來看,這不是一個成功的案例;不過就過程而言,則顯示利用 ddrescue 來救援光碟資料是可以嘗試的。雖然在某些情境來說,直接再買一張藍光可能是最快的……

 

筆記