樹莓派掛載和卸載U盤或移動硬盤


通常我們在 /mnt 或 /media 目錄下新建一個目錄udisk作為掛載點

sudo mkdir /mnt/udisk

1.手動掛載:

掛載命令:

sudo mount -uid=pi,gid=pi /dev/sda1 /mnt/udisk

 

卸載命令:

===================================================================================================

外接U盤或移動硬盤時,默認不會自動掛載,所以需要用 mount 命令掛載。通常我們在 /mnt 或 /media 目錄下新建一個目錄作為掛載點。比如:

1
2
3
4
sudo mkdir /mnt/1GB_USB_flash
sudo mount -o uid=pi,gid=pi /dev/sda1 /mnt/1GB_USB_flash
// 用完之后卸載
sudo umount /mnt/1GB_USB_flash

sda1 是取決於你的實際情況,a表示第一個硬盤,1表示第一個分區。

掛載exFAT格式的硬盤
FAT 格式U盤 mount 本身就能支持,但如果你的U盤或移動硬盤使用的是 exFAT 格式,mount 會說不支持。沒關系,安裝 exfat-fuse 軟件之后 mount 就支持了。

1
sudo apt-get install exfat-fuse

如果想開機自動掛載,而不是每次手工執行,可以編輯 /etc/fstab 文件。比如在末尾添加一行:

1
/dev/sda1 /mnt/usbdisk vfat rw,defaults 0 0

掛載NTFS格式的硬盤(讀寫方式掛載)
默認掛載NTFS格式的硬盤只有只讀權限,需要借助其它工具實現。

1
2
3
4
5
6
7
8
9
#安裝所需軟件包
sudo apt-get install fuse-utils ntfs-3g
#加載內核模塊
modprobe fuse
#編輯fstab讓移動硬盤開機自動掛載
sudo nano /etc/fstab
#在最后一行添加如下內容
/dev/sda1 /mnt/myusbdrive ntfs-3g defaults,noexec, umask =0000 0 0
#保存重啟,即可生效

掛載FAT32格式的硬盤

1
2
3
4
5
6
7
#創建掛載點
sudo mkdir /mnt/myusbdrive
#編輯fstab讓移動硬盤開機自動掛載
sudo nano /etc/fstab
#在最后一行添加如下內容
/dev/sda1 /mnt/myusbdrive auto defaults,noexec, umask =0000 0 0
#保存重啟,即可生效

說明:
sda1是取決於你的實際情況,a表示第一個硬盤,1表示第一個分區。
umask=0000 0 0
前面四個0就是對所有人,可讀可寫可執行,
后面兩個0,第一個代表dump,0是不備份
第二個代表fsck檢查的順序,0表示不檢查
卸載:sudo umount /mnt/myusbdrive

查看掛載情況可使用以下命令。

1
2
cd /mnt/myusbdrive
ls

掛載U盤的更多細節請參考 RPi Adding USB Drives

 

出處:樹莓派實驗室

==================================================================================================

 卸載USB設備

umount是一個文件解掛文件系統了,下面我們一起來看看關於linux下umount強行卸載設備的例子了,希望下文可以給各位帶來幫助。
umount命令

解掛文件系統。umount [-ahnrvV][-t <文件系統類型>][文件系統]

umount可卸除目前掛在Linux目錄中的文件系統。

線上在用的nfs訪問時出了問題,導致/data1目錄ls都無法進行輸出,需要進行卸載掉 。而直接卸載時由於目錄正被其他進程占用 ,無法直接umount,這里就結合fuser進行umount卸載。

1、直接卸載

[root@localhost /]# umount /data1/img
umount: /data1/img: device is busy
umount: /data1/img: device is busy

2、提示被占用,使用強制卸載

[root@localhost /]# umount -f /data1/img
umount2: Device or resource busy
umount: /data1/img: device is busy
umount2: Device or resource busy
umount: /data1/img: device is busy

注:使用-f 參數進行強制卸載時一般建議等一會兒再進行下面的操作,一些情況下處理需要1-2分鍾的時間。

3、使用umount -f,問題依舊。使用fuser命令,先確認有那些進程在占用該目錄

[root@localhost /]# fuser -cu /data1/img
/data1/img:                1757c(mysql)

上面查看發現是pid為1757的mysql用戶起的進程在占用該目錄。

4、確認mysql所起的進程可以kill 后,可以直接使用fuser 的k參數進行kill (也可以手動停掉1757進程再卸載)

[root@localhost /]# fuser -ck /data1/img
/data1/img:                1757c

注:這里k 就是kill的意思,注意沒進行確認前要謹慎使用該參數。

確認

[root@localhost /]# fuser -c /mnt

[1]+  Killed                  dd if=1g of=/dev/null bs=1M  (wd: /mnt)

(wd now: /)

另外,umount異常時,也經常會用到 lsof 指定確認文件被什么進程占用

 

出處:https://blog.csdn.net/wendellluntan/article/details/73087874

=============================================================================================

最后在給一個 fuser命令 用法詳解 做為參考:

fuser命令_Linux fuser 命令用法詳解


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM