格式化 SDCARD 在 Mac Terminal


有時候SD CARD因為不同平版或是手機,變的不能使用,就得在電腦搞一搞。個人使用MAC電腦,最方便就是在terminal上使用diskutil這個指令。
我們先下 diskutil list
如下,會出現在電腦中的硬碟狀況。最下面/dev/disk3就是這次要處理的SD CARD。


我們也可以使用 diskutil listFilesystems看一下,diskutil技援哪一些格式。有 ExFAT,FAT,FAT12…幾乎都有,如下


確定了後,假設我們要格式化 ExFAT ,使用下面這條
sudo diskutil eraseDisk ExFAT RASPBIAN MBRFormat /dev/disk3(記得改成你的硬碟)


可是呢!等沒多久,出現了下面行錯誤。

-69760: Unable to write to the last block of the device

看樣子這片SD CARD被我這台爛平版用出問題了。
別急,可以試試江湖上的秘招。

先在terminal中進入超級使用者
sudo su
然後
cat /dev/random > /dev/disk3(記得改成你的硬碟)
這個動作就是把一堆亂數埴進去/dev/disk3中,破壞原本的切割區跟檔案。
可能會花一點時間,如果等很久(15分鐘)都沒有動靜,可以用crtl-c,停止執行。
然後到MAC的磁碟工具程式清除看看。成功的話,那就可以再使用了。

如果使用
cat /dev/random > /dev/disk3(記得改成你的硬碟)
出現sh: /dev/disk3: Resource busy
那麼,再執行一次
cat /dev/random > /dev/disk3(記得改成你的硬碟)
出現sh: /dev/disk3: Operation not supported

這代表電腦也在讀這個SD CARD,作業系統試著要掛上這個SD CARD
你必需搶在電腦掛上SD CARD之前執行,先把SD CARD拔出,插入之後,
馬上執行 cat /dev/random > /dev/disk3(記得改成你的硬碟)


這樣好累…

我們先寫一個小的bash執行程式。名字就叫123.sh

pico 123.sh
就會開啟pico編輯
#!/bin/bash
while [ 1 ]; do
cat /dev/random > /dev/disk3(記得改成你的硬碟)
done


然後開始執行
chmod 777 123.sh
./123.sh

這個時候terminal會出現很多

Operation not supported
不用怕,這個時候重插拔SD CARD
就會停止產生Operation not suppoted
開始真得執行 cat /dev/random > /dev/disk3(記得改成你的硬碟)。可能會花一點時間,如果等很久(15分鐘)都沒有動靜,可以用crtl-c,停止執行。
然後到MAC的磁碟工具程式清除看看。成功的話,那就可以再使用了。

這樣還是不行,那SD CARD壞掉的機會就很高了。跟廠商客訴去,不用客氣。

留言

這個網誌中的熱門文章

python 找圖自動點擊

VBA EXCEL 工作表變化 馬上執行 的作法 Worksheet_Change

Python pyserial 抓取系統內的 COM PORT