[Linux] 如何 掛載USB ?以及支援讀取 exFAT 格式


在上一篇「VMware無法偵測USB 如何解決?unable to connect to its ideal host controller」有提到如何解決VMware中的Linux偵測不到USB的問題,但偵測到後還無法直接存取資料的,必需經過掛載的步驟才可以讓使用者存取裡面的資料,而在 掛載USB 的過程中,可能還會遇到USB格式的問題,例如:exFAT的相容性,所以本文將繼續說明該如何解決這些在使用USB過程中可能遭遇的問題。

本文示範OS:Ubuntu 18.04 Server 英文版

Linux 掛載USB

進入正題前,先讓我們來複習一下 lsblk 的用法,它主要是用來列出系統可用的區塊設備(Block Device),例如硬碟、USB隨身碟、DVD-ROM等,在還沒插入USB前,我們可以先用此指令查閱一下系統的磁碟狀態,如下所示:

Linux末掛載USB前

接著插入USB後,再重新執行 lsblk ,正常情況下可以看到USB狀態,通常只要找空間大小差不多的那個就對了,如下圖的裝置檔名 sdb,是個8G容量的USB

註:本例中「sdb」被切剛成「sdb1sdb2」二個磁碟,另外,裝置名稱會省略前導目錄 /dev

Linux 掛載USB

掛載步驟

本例中,假設我們要把USB掛載到 /mnt 下的 myusb 目錄,步驟如下:

1. 在 「/mnt」 目錄下建立資料夾 「myusb」

cd /mnt # 進入 /mnt 目錄
sudo mkdir myusb # 建立 myusb 資料夾

2. 掛載USB:目的是把剛剛的 sdb2 掛載到「myusb」中,各位可以依自己的需求,變更裝置名稱即可。另外,剛剛也有提到,再用「lsblk」查閱磁碟狀態時,裝置名稱是會省略「/dev」這個前導目錄的,所以在下掛載指令時要把路徑加回來,記得用root權限執行

格式:mount USB裝置 目的資料夾
範例:sudo mount /dev/sdb2 myusb

3. 查閱掛載後的USB:掛載後可以進「myusb」的目錄,查看一下內容是否和USB中的相同,以確保掛載無誤

下圖是這幾個步驟的示意圖:

Linux 掛載USB 步驟

Linux 卸載USB

當用完了USB後,建議要進行卸載的動作,不要直接拔出USB,避免系統在操作上遇到異常現象。那麼如何卸載呢?執行步驟如下:

1. 卸載USB:執行卸載同樣需要root的權限,並記得要退離掛載的目錄再執行指令,否則是無法執行的,指令如下:

格式:umount USB裝置
範例:sudo umount /dev/sdb2

2. 查看資料夾:卸載後再進入「myusb」中查看,就會發現裡面的資料已經都不見囉

Linux 卸載USB

如何支援 exFAT 格式的USB

現在很多人會把USB格式化成 exFAT 格式,原因是它可以通用在Mac與Windows系統,而且也解決了舊格式「FAT32」常遇到「檔案太大無法放置在目的檔案系統」的問題 (即單檔4G的限制),如果不知道怎麼在Mac上將USB格式化成「exFAT」,可參考文末的延伸閱讀文章。

回到重點,當USB是使用 exFAT 格式時,預設的 Ubuntu 是不支此掛載格式的,因此各位再執行上面的掛載步驟時就會出現錯誤,訊息如下:

Linux 掛載USB exFAT格式出錯

那怎麼解決呢?很簡單,安裝支援exFAT格式的相關套件就行囉,步驟如下:

1. 先更新一下軟體列表 (建議執行,但可略過)

sudo apt update

Linux apt update

2. 接著安裝 exfat-fuseexfat-utils 這二個套件 (註:因我之前裝過了,所以下方的示意圖中會顯示沒有安裝新套件)

sudo apt install exfat-fuse exfat-utils

Linux install exfat-fuse and exfat-utils

3. 最後再執行剛剛示範過的掛載指令,就可以看到順利的將exFAT格式的USB掛載進來囉

Linux掛載exFAT格式的USB

延伸閱讀:
VMware無法偵測USB 如何解決?unable to connect to its ideal host controller
ExFAT格式 – 讓Windows、Mac OS共用隨身碟或外接硬碟
Linux 磁碟與檔案系統管理