linux mount/umount命令
如(rú)果想在運行的Linux下訪問其它文件係統中的(de)資源(yuán)的話,就要用mount命令來實(shí)現。
1. mount的基本(běn)用法是?
格式:mount [-參數] [設備名稱] [掛載點(diǎn)]
其中常用的參數有:
-a 安裝在/etc/fstab文件中(zhōng)類出的(de)所有文件係統(tǒng)。
-f 偽裝mount,作出檢查設備和(hé)目錄的樣子(zǐ),但並不真(zhēn)正掛載文件係統。
-n 不把安(ān)裝記(jì)錄在/etc/mtab 文件中(zhōng)。
-r 講文件係統安裝為隻讀。
-v 詳細顯(xiǎn)示安裝信(xìn)息。
-w 將(jiāng)文件係統安裝為可寫,為命令默認情況。
-t 指定設備的文件係統類型,常見的有:
ext2 linux目前(qián)常用的文件係(xì)統
msdos MS-DOS的fat,就是fat16
vfat windows98常用的fat32
nfs 網絡文件係統
iso9660 CD-ROM光盤標準文件係(xì)統
ntfs windows NT/2000/XP的文件係統
auto 自動檢測文(wén)件係(xì)統
-o 指定掛載(zǎi)文件(jiàn)係統時的選項,有些也可寫到在/etc/fstab中。常用的有(yǒu):
defaults 使用所有選項的(de)默認值(zhí)(auto、nouser、rw、suid)
auto/noauto 允許/不允許以 –a選項(xiàng)進行安裝
dev/nodev 對/不對文(wén)件係統上的特殊設備進(jìn)行解釋
exec/noexec 允許(xǔ)/不允許執行二進製代碼
suid/nosuid 確認/不確認suid和sgid位(wèi)
user /nouser 允許/不允許一(yī)般用戶掛載
codepage=XXX 代(dài)碼頁
iocharset=XXX 字符集
ro 以隻讀方式掛載
rw 以讀寫方式掛載
remount 重新安裝已(yǐ)經安裝了的文件係統
loop 掛載回旋設備
需要注意的是,掛載點(diǎn)必須是一個已經存在的目錄,這個(gè)目錄可以不為空,但掛載(zǎi)後這個目錄下以前的內容將不可用,umount以後會恢複正常。使用多(duō)個-o參數的(de)時候,-o 隻(zhī)用一次,參數之間用半角逗號隔開:
CODE:
# mount –o remount,rw /
例(lì)如要掛載(zǎi)windows下文件係統為FAT32的D盤,一般而言在Linux下這個分區對應/dev/hda5,根(gēn)據(jù)具體的分區情況會(huì)有不同,這裏就以(yǐ)hda5來舉例說明:
CODE:
# mkdir /mnt/hda5 //創建hda5的目錄作為(wéi)掛載點,位置和目錄名可自定義//
# mount -t vfat /dev/hda5 /mnt/hda5
一般而言,Linux會自動探測分區的文件係統,除非讓你指定時,否則-t vfat 可以省掉。
CODE:
# mount /dev/hda5 /mnt/hda5
這樣就可以進(jìn)入/mnt/hda5目(mù)錄去(qù)訪問分區中的資源了。
3. 為什麽mount上分(fèn)區後顯示不了中文文件為問(wèn)號/亂碼?
顯示問號表明你的係統中沒有可識別使用(yòng)的中文字(zì)體,請先安裝中文字體。確保你的係(xì)統已(yǐ)經可以很好的(de)顯示中文。顯示為亂碼一般是mount默認使用的文件係統編碼和文件係統中文件的(de)實際編(biān)碼不一致造成的。要想正(zhèng)常顯示中文文件,mount時需要用到 -o 參數裏的codepage和iocharset選項。codepage指定文件係統的代(dài)碼(mǎ)頁,簡體中文中文代碼是936;iocharset指(zhǐ)定字符(fú)集,簡體中文一般用(yòng)cp936或gb2312。
CODE:
# mount –o iocharset=gb2312 codepage=936 /dev/hda5 /mnt/hda5
一般來說 mount –o iocharset=cp936 /dev/hda5 /mnt/hda5 就可以解決問題(tí)了。
如果這樣做了以後還有問題,請嚐試UTF-8編碼:
CODE:
# mount –o iocharset=utf8 /dev/hda5 /mnt/hda5
4. 為什麽mount上去以後分區普通用戶不可寫?
mount時(shí)加上 –o umask=000 即可:
CODE:
# mount –o umask=000, iocharset=cp936 /dev/hda5 /mnt/hda5
5. 為什麽mount上去後的分區中的文件都變成短文件(jiàn)名了(le)?
這是文件係統掛錯的原因,將FAT32掛載成FAT16時就會出現這種情況,先(xiān)umount,然後用 –t vfat 重新掛載即可解決問題。
CODE:
# mount –t vat /dev/hda5 /mnt/hda5
6. 為什麽不能mount ntfs分區(qū)?
這是內核不支持NTFS文(wén)件係統的原因,請重新編譯內核或者安裝內(nèi)核的NTFS文件係統支(zhī)持包,以使得內核有NTFS文件係統的支持。
7. 如何(hé)掛載U盤和(hé)mp3?
如果計算(suàn)機(jī)沒有其它SCSI設備和usb外設的(de)情況下,插入的U盤(pán)的設備路徑是 /dev/sda1,用命令:
CODE:
# mkdir /mnt/u
# mount /dev/sda1 /mnt/u
掛載即可。
8. 可以直接使用iso文件(jiàn)嗎?
可以,就是mount的這一選項使得(dé)Linux下有免費虛擬(nǐ)光驅的說法,具體用法是:
CODE:
# mkdir /mnt/iso
# mount –o loop linux.iso /mnt/iso
當然,掛載以後掛(guà)載點/mnt/iso也是隻讀的。
9. 我怎麽不可以mount iso文件?
一般而言,大多數的發行(háng)版(bǎn)使(shǐ)用的內核均已將loop設備(bèi)的(de)支持編譯進去了,但是也有沒有的情(qíng)況,所以請確保係統所使(shǐ)用的(de)內核(hé)支持loop設備。
第二種情況是(shì)iso文件被放置到了NTFS或其它隻讀文件係統中了。掛載loop 設備必須要求(qiú)掛載到一個可寫的分區中,目前Linux內核對NTFS文件係統的寫支持非常有限,請將iso文件複製到其它可寫文件(jiàn)係統中後再掛載。
10. 如何掛載光驅和軟驅(qū)
一般(bān)來說CDROM的設備文件是/dev/hdc,軟驅的設備名是(shì)/dev/fd0
CODE:
# mkdir /mnt/cdrom
# mount /dev/hdc /mnt/cdrom //掛載光驅 //
# mkdir /mnt/floppy
# mount /dev/fd0 /mnt/floppy //掛載軟驅 //
11. 為何掛載的CD-ROM不能顯示中文文件?
使用 –o iocharset=cp936 選項(xiàng)一般(bān)能解決問題,否則(zé)使用(yòng)utf-8編碼。
CODE:
# mount –o iocharset=cp936 /dev/hdc /mnt/cdrom
12. 如何(hé)開機自動掛載分區?
每次掛載都要輸入那麽(me)長的命令的確是繁瑣了些,隻要將分(fèn)區信息寫到/etc/fstab文(wén)件中即可實現(xiàn)係統啟動的自動掛載,例如對於/dev/hda5的(de)自動掛載添加如下的行(háng)即可:
CODE:
/dev/hda5 /mnt/hda5 vfat defaults,iocharset=cp936, rw 0 0
13. 如何掛載samba 分區?
CODE:
# mkdir /mnt/share
# mount -t smbfs -o username=root,password=abc,codepage=936,iocharset=gb2312//192.168.1.100/share /mnt/share
如果中文顯示(shì)不正常請嚐試UTF-8編碼。當然可以寫到fstab中(zhōng)實現自動掛載(zǎi)。
14. mount --bind是什麽意思(sī)?
mount --bind 是將一個目錄中的內容掛載到另一個目錄(lù)上,用法是
CODE:
# mount --bind olddir newdir
這個命令使得自己搭建的FTP要共享某個目錄的時候變得特別方便。如果要取消(xiāo)mount用(yòng)命令:
CODE:
# mount --move olddir newdir 即可(kě)。
如果mount --bind 也想寫入fstab中的話格式如下:
CODE:
olddir newdir none bind 0 0
15. umount基本用法(fǎ)是?
譬(pì)如 /dev/hda5 已(yǐ)經掛載在/mnt/hda5上,用一下三條命令均可卸載掛載(zǎi)的文件係統
CODE:
# umount /dev/hda5
# umount /mnt/hda5
# umount /dev/hda5 /mnt/hda5
16. 為什麽umount的時候老顯示 device busy?
這是因為(wéi)有程序正在訪問(wèn)這個設備,最簡單的辦法就是讓訪問該設備的程序退(tuì)出(chū)以後再umount。可能有時(shí)候(hòu)用戶(hù)搞不(bú)清除(chú)究竟是什麽程序在訪問設備,如果用戶不急(jí)著umount,則可以用:
CODE:
# umount -l /mnt/hda5
來卸載設備。選項(xiàng) –l 並不是馬上umount,而是在該目錄空閑後再umount。還可以先用命令 ps aux 來查(chá)看占用設備的(de)程序PID,然後用命令kill來殺死占用設備的進程,這樣就umount的非常放心了。
關鍵詞(cí):linux
閱(yuè)讀本文後(hòu)您有什麽感想? 已有 人給出評價(jià)!
- 0
- 0
- 0
- 0
- 0
- 0