Ubuntu mount命令用法詳解

opaliar發表於2020-04-07
格式:mount [-引數] [裝置名稱] [掛載點] 

其中常用的引數有: 

-a 安裝在/etc/fstab檔案中類出的所有檔案系統。 

-f 偽裝mount,作出檢查裝置和目錄的樣子,但並不真正掛載檔案系統。 

-n 不把安裝記錄在/etc/mtab 檔案中。 

-r 講檔案系統安裝為只讀。 

-v 詳細顯示安裝資訊。 

-w 將檔案系統安裝為可寫,為命令預設情況。 

-t <檔案系統型別> 指定裝置的檔案系統型別,常見的有: 

ext2 linux目前常用的檔案系統 

msdos MS-DOS的fat,就是fat16 

vfat windows98常用的fat32 

nfs 網路檔案系統 

iso9660 CD-ROM光碟標準檔案系統 

ntfs windows NT/2000/XP的檔案系統 

auto 自動檢測檔案系統 

-o <選項> 指定掛載檔案系統時的選項,有些也可寫到在/etc/fstab中。常用的有: 

defaults 使用所有選項的預設值(auto、nouser、rw、suid) 

auto/noauto 允許/不允許以 –a選項進行安裝 

dev/nodev 對/不對檔案系統上的特殊裝置進行解釋 

exec/noexec 允許/不允許執行二進位制程式碼 

suid/nosuid 確認/不確認suid和sgid位 

user /nouser 允許/不允許一般使用者掛載 

codepage=XXX 內碼表 

iocharset=XXX 字符集 

ro 以只讀方式掛載 

rw 以讀寫方式掛載 

remount 重新安裝已經安裝了的檔案系統 

loop 掛載“迴旋裝置”以及“ISO映象檔案”

需要注意的是,掛載點必須是一個已經存在的目錄,這個目錄可以不為空,但掛載後這個目錄下以前的內容將不可用,umount以後會恢復正常。使用多個-o引數的時候,-o 只用一次,引數之間用半形逗號隔開: 

# mount –o remount,rw / 

例如要掛載windows下檔案系統為FAT32的D盤,一般而言在Linux下這個分割槽對應/dev/hda5,根據具體的分割槽情況會有不同,這裡就以hda5來舉例說明: 

# mkdir /mnt/hda5 //建立hda5的目錄作為掛載點,位置和目錄名可自定義// 

# mount -t vfat /dev/hda5 /mnt/hda5 

一般而言,Linux會自動探測分割槽的檔案系統,除非讓你指定時,否則-t vfat 可以省掉。 

# mount /dev/hda5 /mnt/hda5 

這樣就可以進入/mnt/hda5目錄去訪問分割槽中的資源了。 

3. 為什麼mount上分割槽後顯示不了中文檔案為問號/亂碼? 

顯示問號表明你的系統中沒有可識別使用的中文字型,請先安裝中文字型。確保你的系統已經可以很好的顯示中文。顯示為亂碼一般是mount預設使用的檔案系 統編碼和檔案系統中檔案的實際編碼不一致造成的。要想正常顯示中文檔案,mount時需要用到 -o 引數裡的codepage和iocharset選項。codepage指定檔案系統的內碼表,簡體中文中文程式碼是936;iocharset指定字符集, 簡體中文一般用cp936或gb2312。 

# mount –o iocharset=gb2312 codepage=936 /dev/hda5 /mnt/hda5 

一般來說 mount –o iocharset=cp936 /dev/hda5 /mnt/hda5 就可以解決問題了。 

如果這樣做了以後還有問題,請嘗試UTF-8編碼: 

# mount –o iocharset=utf8 /dev/hda5 /mnt/hda5 

4. 為什麼mount上去以後分割槽普通使用者不可寫? 

mount時加上 –o umask=000 即可: 

# mount –o umask=000, iocharset=cp936 /dev/hda5 /mnt/hda5 

5. 為什麼mount上去後的分割槽中的檔案都變成短檔名了? 

這是檔案系統掛錯的原因,將FAT32掛載成FAT16時就會出現這種情況,先umount,然後用 –t vfat 重新掛載即可解決問題。 

# mount –t vat /dev/hda5 /mnt/hda5 

7. 如何掛載U盤和mp3? 

如果計算機沒有其它SCSI裝置和usb外設的情況下,插入的U盤的裝置路徑是 /dev/sda1,用命令: 

# mkdir /mnt/u 

# mount /dev/sda1 /mnt/u 

掛載即可。 

8. 可以直接使用iso檔案嗎? 

可以,就是mount的這一選項使得Linux下有免費虛擬光碟機的說法,具體用法是: 

# mkdir /mnt/iso 

# mount –o loop linux.iso /mnt/iso 

當然,掛載以後掛載點/mnt/iso也是隻讀的。 

12. 如何開機自動掛載分割槽? 

每次掛載都要輸入那麼長的命令的確是繁瑣了些,只要將分割槽資訊寫到/etc/fstab檔案中即可實現系統啟動的自動掛載,例如對於/dev/hda5的自動掛載新增如下的行即可: 

/dev/hda5 /mnt/hda5 vfat defaults,iocharset=cp936, rw 0 0 

13. 如何掛載samba 分割槽? 

# mkdir /mnt/share 

# mount -t smbfs -o username=root,password=abc,codepage=936,iocharset=gb2312 //192.168.1.100/share /mnt/share 

如果中文顯示不正常請嘗試UTF-8編碼。當然可以寫到fstab中實現自動掛載。 

14. mount --bind是什麼意思? 

mount --bind 是將一個目錄中的內容掛載到另一個目錄上,用法是 

# mount --bind olddir newdir 

這個命令使得自己搭建的FTP要共享某個目錄的時候變得特別方便。如果要取消mount用命令: 

# mount --move olddir newdir 即可。 

如果mount --bind 也想寫入fstab中的話格式如下: 

olddir newdir none bind 0 0 


16. 為什麼umount的時候老顯示 device busy? 

這是因為有程式正在訪問這個裝置,最簡單的辦法就是讓訪問該裝置的程式退出以後再umount。可能有時候使用者搞不清除究竟是什麼程式在訪問裝置,如果使用者不急著umount,則可以用: 

# umount -l /mnt/hda5 

來解除安裝裝置。選項 –l 並不是馬上umount,而是在該目錄空閒後再umount。還可以先用命令 ps aux 來檢視佔用裝置的程式PID,然後用命令kill來殺死佔用裝置的程式,這樣就umount的非常放心

相關文章