Fusion Drive 的分離、格式和系統重裝問題解決

個人 MacMini 買來好幾年了,期間本身拆開加裝了一個 SSD,並按照網上的說明,和原先的硬盤組合爲一個 Fusion Drive 。
最近腦子發熱,想重裝一下系統,結果在格式化階段死在那裏不會動了。
各類谷歌百度,各類嘗試無效。linux

首先是分離 Fusion Drive 混合分區。

diskutil cs list # 列出全部 Fusion Drive

clipboard.png

蘋果客服支持要我直接刪除 Logical Volume Group,也就是下面的命令。安全

diskutil cs delete 11111111-2222-3333-4444-555555555555

後面的 111……555 自行替換爲你本身的Logical Volume Group 的 UUID,就是圖上第一行漂白部分。dom

反正我測試了是無效,因此,只好一步一步刪除。
找到最下面漂白部分的 logic volume 的 UUID,執行工具

diskutil cs deleteVolume 11111111-2222-3333-4444-555555555555

後面的 111……555 自行替換爲你本身的 UUID。
而後再執行上面的刪除 Logical Volume Group 的命令。測試

最後仍是無效,大概停留在 20% 左右的進度就下不去了。大概是分區表被我破壞掉了。spa

無奈之下,嘗試安全刪除磁盤

diskutil list
# 個人 ssd 盤顯示爲 disk3

diskutil unmount force /dev/disk3
# 此步出現找不到磁盤,因而換個命令

diskutil unmountDisk /dev/disk3

#而後下一步安全刪除並清零磁盤
diskutil zeroDisk /dev/disk0

#最終仍是失敗,出現以下錯誤:

~ Started erase on disk2 
~ Error: -69759: Securely erasing data to prevent recovery failed Underlying 
~ error: 5: Input/output error

#嘗試下面的命令,也是失敗
diskutil eraseDisk HFS+ NAME /dev/disk3

此處沒有測試一個命令:code

fdisk -a hfs /dev/disk3

diskutil 實際上是 fdisk 的老版本命令。只是被蘋果使用後,有過拓展。但 fdisk 能實現更靈活的操做。沒必要爲蘋果的一些安全機制所限制。只是,由於我採用了更測地的抹除模式,因此,沒有測試該命令。ip

大殺器,類 Unix 系統磁盤的深度格式方法

蘋果是類 Unix 系統,因此,他的磁盤管理模式底層也是和其餘 Unix 系統相似。好比存在一些特殊的設備驅動,如 dev/nulldev/random 等。前者接受任何輸入,就像一個實時垃圾清理站。後者若是可以被訪問,則實時輸出一堆隨機數據。咱們能夠經過 cat /dev/random 進行訪問,須要經過 Ctrl+c 進行停止。it

此處咱們就用到 dev/random 來解決咱們的磁盤問題。io

當咱們的磁盤驅動故障或者出現低格問題時,咱們能夠經過 dev/random 來強制覆蓋磁盤,它會毀壞分區表和當前格式,將驅動顯示爲一個空白盤。

# 進入 root 模式,輸入 root 口令
sudo su

# 列出你的磁盤,找到你想要重格的磁盤名稱
diskutil list

##### 千萬注意不要找錯磁盤,下列操做不可恢復。我要低格的是 disk3,命令以下 ####
cat /dev/random > /dev/disk3

運行1分鐘左右,按 ctrl+c 中斷它。而後執行

diskutil list

若是顯示以下,說明磁盤已變爲一個空盤。

clipboard.png

而後,你就在磁盤工具中分區、格式,再重裝系統便可。

超大殺器,用 dd 命令低格

在 linux 下,低格工具就是 dd

dd if=/dev/zero of=/dev/disk2 conv=noerror bs=128k
  • bs=bytes:同時設置讀寫塊的大小爲 bytes ,可代替 ibs 和 obs

  • conv=noerror:出錯時不中止處理。

盤符視實際狀況, diskutil list 能夠查看盤符

低格就使用0/1覆蓋整個硬盤,時間幾個小時,視硬盤大小。

好了,讓它格吧,我睡去咯。^_^

對了,還有屠龍刀 ddrescue

我還沒測試,不過已經用 brew 安裝了。
你能夠執行下面的命令先安裝着

brew install ddrescue

基本操做:

Usage: ddrescue [options] infile outfile [mapfile]

詳細請執行命令 ddrescue --help 查看。

相關文章
相關標籤/搜索