如果要讓曾拿來當Live USB安裝系統的SD卡/隨身碟,還原到原本單純儲存資料的用途,就必須砍掉所有分區,再將其格式化,也就是新建檔案系統。
提示:不想攜帶多個隨身碟的用戶,未來可以試試 Ventoy,讓隨身碟既能當開機碟又能存資料。
本文教學Linux圖形化介面和純文字的格式化方法,二擇一。
首先要知道如何查看電腦上的裝置資訊。
1. 使用指令查看SD卡資訊#
- 讀卡機插到電腦,有些發行版會自動掛載,用
sudo lsblk
指令查看。例如我的SD卡是/dev/sdb
,MOUNTPOINT
下顯示的是分區掛載點。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 1 29.7G 0 disk
├─sdb1 8:17 1 243M 0 part /media/ivon/pmOS_boot
└─sdb2 8:18 1 29.5G 0 part /media/ivon/pmOS_root
- 要修改這個SD卡的內容,必須先將已掛載的分區取消掛載:
sudo umount /media/ivon/pmOS_boot
sudo umount /media/ivon/pmOS_root
- 再執行一次
sudo lsblk
,會發現SD卡的掛載點(MOUNTPOINT)消失了,只剩下前面的/dev/sdb
。
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 1 29.7G 0 disk
├─sdb1 8:17 1 243M 0 part
└─sdb2 8:18 1 29.5G 0 part
- 確認SD卡未被掛載之後,就可以開始變更了。
2. 使用圖形工具Gparted來格式化SD卡#
第一個方法是使用圖形化工具Gparted,相較於指令比較不容易搞錯要格式化的SD卡在哪。
圖形化工具還有KDE Partition Manager、GNOME Disk Utility等等。
- 安裝Gparted
sudo apt install gparted exfat-utils ntfs-3g
開啟Gparted(需要root權限),於右上角找到掛載的SD卡(/dev/sdb)。
對SD卡所有分區,例如我這裡有二個,右鍵點選卸載(umount)。
對所有分區,右鍵,刪除。
按下綠色打勾,寫入變更。
現在分區都被砍掉了,點選「裝置」→「建立分割表」,點選建立GPT分割表
接著對空白的分區右鍵,按一下「新增檔案系統」。檔案系統選擇FAT32 ,按下確認,再按下綠色勾勾套用變更。
完成,拔掉SD卡後重插,再用Gparted查看,SD卡只剩一個分區了。
3. 使用純文字工具fdisk來格式化SD卡#
第二個方法是用純指令來操作,所以要很小心。
以Ubuntu來說,執行以下指令安裝fdisk和exFAT工具:
sudo apt install fdisk exfat-utils ntfs-3g
以下介紹fdisk用法。
使用
lsblk
找到SD卡取消掛載後的裝置名稱啟動fdisk,開始對SD卡磁碟分割
sudo fdisk /dev/sdb
- 輸入
p
,查看此SD卡上的分區。像是我這張有裝過postmarketOS系統,有二個分割區。
Disk /dev/sdb: 29.74 GiB, 31914983424 bytes, 62333952 sectors
Disk model: Mass-Storage
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9baf2b08
所用裝置 可開機 Start 結束 磁區 Size Id 類型
/dev/sdb1 * 2048 499711 497664 243M 83 Linux
/dev/sdb2 499712 62333951 61834240 29.5G 83 Linux
接著要把分割區都刪除。輸入
d
,再輸入數字,Enter,刪除分割區。把二個分割區都刪除完後,再度輸入
p
會看到分割區空空如也。
Disk /dev/sdb: 29.74 GiB, 31914983424 bytes, 62333952 sectors
Disk model: Mass-Storage
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x9baf2b08
輸入
w
,Enter,確認寫入變更。輸入
g
,新建GPT分割表。輸入
n
,再輸入0
,接著全部Enter,建立一個包含整張SD卡剩餘容量的分割區。輸入
w
確認寫入。再輸入q
,退出fdisk。分割區建立好之後,將SD卡的分區格式化成FAT32檔案系統:
sudo mkfs.fat -F 32 /dev/sdb
#或是exFAT,支援4GB以上的單一大檔案
sudo mkfs.exfat /dev/sdb
這樣就格式化好了。因為我是比較懶的人,因此直接拔出SD卡,之後插入,Ubuntu會自動掛載回來。
或者手動掛載:
sudo mkdir /run/media/$USER/sdcard
#先用sudo lsblk確認SD卡路徑再掛載
sudo mount /dev/sdb /run/media/$USER/sdcard
- 用指令
lsblk
一看,SD卡上沒有多餘分區了。
sdb 8:16 1 29.7G 0 disk /run/media/user/sdcard