# 方法一:dmesg 即時訊息
dmesg -T | grep -i -e usb -e scsi -e sd
# 方法二:lsblk 列出區塊裝置(推薦)
lsblk -f
# 方法三:fdisk -l(需 root)
sudo fdisk -l
# 輸出範例:/dev/sdb1 7.3G FAT32 USB_DISK
# 建立掛載目錄
sudo mkdir -p /mnt/usb
# 掛載 FAT32/exFAT(需安裝 exfat-fuse、exfat-utils)
sudo mount -t vfat /dev/sdb1 /mnt/usb -o uid=1000,gid=1000,utf8,umask=022
# 掛載 NTFS(需安裝 ntfs-3g)
sudo mount -t ntfs-3g /dev/sdb1 /mnt/usb -o uid=1000,gid=1000
# 驗證
ls -l /mnt/usb
參數說明: `uid=1000,gid=1000` 讓普通用戶擁有權限;`utf8` 支援中文檔名;`umask=022` 設定預設權限 755。
獲取 UUID(推薦,避免裝置節點變動):
sudo blkid /dev/sdb1
# 輸出:/dev/sdb1: UUID="1234-ABCD" TYPE="vfat"
編輯 /etc/fstab:
# 方案一:開機自動掛載(裝置必須存在,否則進入急救模式)
UUID=1234-ABCD /mnt/usb vfat defaults,uid=1000,gid=1000,utf8,umask=022 0 0
# 方案二:noauto + 用戶可掛載(推薦,開機不掛載,需時手動 mount /mnt/usb)
UUID=1234-ABCD /mnt/usb vfat noauto,user,uid=1000,gid=1000,utf8,umask=022 0 0
建立 `.desktop` 檔案而非硬連結,支援點擊掛載/卸載:
# ~/.local/share/applications/mount-usb.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=掛載 USB 隨身碟
Comment=掛載 /dev/sdb1 到 /mnt/usb
Exec=sh -c 'if mountpoint -q /mnt/usb; then notify-send "已掛載" && gio open /mnt/usb; else pkexec mount /mnt/usb && notify-send "掛載成功" && gio open /mnt/usb; fi'
Icon=drive-removable-media-usb
Terminal=false
Categories=System;
同理建立 `umount-usb.desktop` 執行 `pkexec umount /mnt/usb`。
| 問題 | 原因 | 解決 |
|---|---|---|
| Permission denied | 掛載選項缺 uid/gid 或 ntfs-3g 未安裝 | 加上 uid=1000,gid=1000;安裝 ntfs-3g/exfat-fuse |
| 中文檔名亂碼 | 缺 utf8 選項或檔案系統編碼不符 | vfat 加 utf8;ntfs-3g 通常自動處理 |
| 開機卡住/進入急救模式 | fstab 設備不存在且無 noauto | 改用 UUID + noauto,或加 nofail 參數 |
| 卸載失敗 target is busy | 有程式正在存取掛載點 | `lsof /mnt/usb` 找出程式關閉;或 `umount -l` 延遲卸載 |