mount and fstab的使用(整理)
2007-06-24 20:39:26
分類: linux
mount
1、掛載點必須是乙個目錄。
2、乙個分割槽掛載在乙個已存在的目錄上,這個目錄可以不為空,但掛載後這個目錄下以前的內容將不可用。
對於其他作業系統建立的檔案系統的掛載也是這樣。但是需要理解的是:光碟、軟盤、其他作業系統使用的檔案系統的格式與linux使用的檔案系統格式是不一樣的。光碟是iso9660;軟盤是fat16或ext2;windowsnt是fat16、ntfs;windows98是fat16、fat32;windows2000和windowsxp是fat16、fat32、 ntfs。掛載前要了解linux是否支援所要掛載的檔案系統格式。
掛載時使用mount命令:
格式:mount [-引數] [裝置名稱] [掛載點]
其中常用的引數有
-t《檔案系統型別》 指定裝置的檔案系統型別,常見的有:
minix linux最早使用的檔案系統
ext2 linux目前常用的檔案系統
msdos ms-dos的fat,就是fat16
vfat windows98常用的fat32
nfs 網路檔案系統
iso9660 cd-rom光碟標準檔案系統
ntfs windows nt 2000的檔案系統
hpfs os/2檔案系統
auto 自動檢測檔案系統
-o《選項》 指定掛載檔案系統時的選項。有些也可用在/etc/fstab中。常用的有
codepage=*** **頁
iocharset=*** 字符集
ro 以唯讀方式掛載
rw 以讀寫方式掛載
nouser 使一般使用者無法掛載
user 可以讓一般使用者掛載裝置
提醒一下,mount命令沒有建立掛載點的功能,因此你應該確保執行mount命令時,掛載點已經存在。
例子:windows98裝在hda1分割槽,同時計算機上還有軟盤和光碟需要掛載。
# mk /mnt/winc
# mk /mnt/floppy
# mk /mnt/cdrom
# mount -t vfat /dev/hda1 /mnt/winc
# mount -t msdos /dev/fd0 /mnt/floppy
# mount -t iso9660 /dev/cdrom /mnt/cdrom
現在就可以進入/mnt/winc等目錄讀寫這些檔案系統了。
要保證最後兩行的命令不出錯,要確保軟碟機和光碟機裡有盤。
如果你的windows98目錄裡有中文檔名,使用上面的命令掛載後,顯示的是一堆亂碼。這就要用到 -o
引數裡的codepage iocharset選項。codepage指定檔案系統的**頁,簡體中文中文**是936;iocharset指定字符集,簡體中文一般用cp936或 gb2312。
當掛載的檔案系統linux不支援時,mount一定報錯,如windows2000的ntfs檔案系統。可以重新編譯linux核心以獲得對該檔案系統的支援。關於重新編譯linux核心,就不在這裡說了。
/etc/fstab
在/etc目錄下有個fstab檔案,它裡面列出了linux開機時自動掛載的檔案系統的列表。
/dev/hda2 / ext3 defaults 1 1
/dev/hda1 /boot ext3 defaults 1 2
none /dev/pts devpts gid=5,mode=620 0 0
none /proc proc defaults 0 0
none /dev/shm tmpfs defaults 0 0
/dev/hda3 swap swap defaults 0 0
/dev/cdrom /mnt/cdrom iso9660 noauto,codepage=936,iocharset=gb2312 0 0
/dev/fd0 /mnt/floppy auto noauto,owner,kudzu 0 0
/dev/hdb1 /mnt/winc vfat defaults,codepage=936,iocharset=cp936 0 0
/dev/hda5 /mnt/wind vfat defaults,codepage=936,iocharset=cp936 0 0
fstab中存放了與分割槽有關的重要資訊,其中每一行為乙個分割槽記錄,每一行又可分為六個部份
1. 第一項是您想要mount的儲存裝置的實體位置,如hdb或如上例的/dev/hda7。
2. 第二項就是您想要將其加入至哪個目錄位置,如/home或如上例的/,這其實就是在安裝時提示的掛入點。
3. 第三項就是所謂的local filesystem,其包含了以下格式:如ext、ext2、msdos、iso9660、nfs、swap等,或如上例的ext2,可以參見/prco/filesystems說明。
4. 第四項就是您mount時,所要設定的狀態,如ro(唯讀)或如上例的defaults(包括了其它引數如rw、suid、exec、auto、nouser、async),可以參見「mount nfs」。
5. 第五項是提供dump功能,在系統dump時是否需要backup的標誌位,其內定值是0。
6. 第六項是設定此filesystem是否要在開機時做check的動作,除了root的filesystem其必要的check為1之外,其它皆可視需要設定,內定值是0。
在最後兩行是新增的windows下的c;d盤,加了codepage=936和iocharset=cp936引數以支援中文檔名。引數defaults實際上包含了一組預設引數:
rw 以可讀寫模式掛載
suid 開啟使用者id和群組id設定位
dev 可解讀檔案系統上的字元或區塊裝置
exec 可執行二進位制檔案
auto 自動掛載
nouser 使一般使用者無法掛載
async 以非同步方式執行檔案系統的輸入輸出操作
大家可以看到在這個列表裡,光碟機和軟碟機是不自動掛載的,引數設定為noauto。 例子
# /etc/fstab: static file system information. #
#
proc /proc proc defaults 0 0
/dev/hdb1 / ext3 defaults,errors=remount-ro 0 1
/dev/hda5 /media/hda5 vfat defaults,utf8,umask=007,gid=46 0 1
/dev/hda7 /media/hda7 vfat defaults,utf8,umask=000,user 0 1
/dev/hdb5 none swap sw 0 0
/dev/hdc /media/cdrom0 udf,iso9660 user,noauto 0 0
SqlCacheDependency的使用方法
步驟一 sql資料庫必須開啟servicebroker服務,首先檢測是否已經啟用servicebroker,檢測方法 select databasepropertyex 資料庫名稱 isbrokerenabled 1表示已經啟用0表示沒有啟用 步驟二 如果servicebroker沒有啟用,使用下面...
UITabBarController的使用心得
這段時間了解下uitabbarcontroller,今天把我遇到的問題和心得記錄下。網上有很多uitabbarcontroller的資料,對於一些uitabbarcontroller的基礎性知識,在這裡我就不囉嗦了。可以看這裡 今天我要說的是自己的一些不同於網上的的心得。官方的一副還是要貼出來。我也...
UITabBarController的使用步驟
初始化 uitabbarcontroller 設定uiwindow的rootviewcontroller為 uitabbarcontroller 根據具體情況,通過addchildviewcontroller方法新增對應個數的子控制器 uitabbarcontroller新增控制器的方式有2種 新增...