掛載條件:
1、掛載點必須是一個目錄。
2、一個分區掛載在一個已存在的目錄上,這個目錄可以不為空,但掛載后這個目錄下以前的內容將不可用。對於其他操作系統建立的文件系統的掛載也是這樣。
Ctrl + Alt + T 打開終端,輸入以下命令: sudo fdisk -l
查看硬盤的分區情況,如下(本人的,僅作為實例)
Disk /dev/sda: 320.1 GB, 320072933376 bytes
255 heads, 63 sectors/track, 38913 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x624aa2e0
Device Boot Start End Blocks Id System
/dev/sda1 * 1 2612 20980858+ 7 HPFS/NTFS
/dev/sda2 2613 7834 41945715 7 HPFS/NTFS
/dev/sda3 7835 12795 39849232+ 7 HPFS/NTFS
/dev/sda4 12796 38913 209792835 7 HPFS/NTFS
使用 sudo gedit /etc/fstab 打開fstab文件,編輯fatab文件,加入相關代碼。
Ubuntu自動掛載的Windows分區無法正常顯示中文,在etc/fstab里面加上utf8就可以了,例如:
但是掛載的分區默認是沒有寫權限的,必須有root權限才能寫,如何更改這個設置呢?
用man mount查看手冊頁,發現里面有幾個有用的選項:
umask, fmask, dmask, uid, gid
首先看umask, 這個是用來指定掛載windows分區后文件的默認權限(事實上,是默認沒有的權限,即umask參數指出的值掛載后的文件將不具有),
因為Windows分區里面的文件是沒有權限這個概念的,所以要手動指定默認權限,於是,指定umask為000,就是不排除任何,即具有所有權限,例如:
就可以了,但是這樣即使一個文本文件也具有可執行權限,在文件管理器里面雙擊也要選擇是查看還是執行,很不方便,於是想屏蔽掉可執行權限:
這樣問題又來了,對於目錄來說,可執行權限又有另外的意義,沒有該權限根本無法進入該目錄(但是可以讀,即列出目錄下的文件列表,也可以寫,
即可以在該目錄下增加和刪除文件,和重命名文件。哈哈!Linux的文件權限真是奇怪呀),於是就使用fmask和dmask參數,他們分別是對應文件和
目錄的"umask",於是,將目錄設為可執行,文件不可執行(一般Windows分區下都不會有可以直接在Linux下執行的文件吧?):
關於權限的8進制表示就不需要多說了吧?
上邊的意思是
對目錄:
所有用戶可執行(進入),其他人可讀可執行(進入),只有自己可寫(修改、添加、刪除里面的文件(名))
對文件:
所有用戶可讀,自己可寫,其他人不可寫。
之后在uid和gid為自己的就好了,可以用
來查看username的gid和uid,例如:
uid=1000(pluskid) gid=1000(pluskid) groups=4(adm),20(dialout),24(cdrom),25(floppy),29(audio),30(dip),44(video),46(plugdev),104(lpadmin),105(scanner),106(admin),1000(pluskid)
如果不設的話,上面的“自己可寫”那個“自己”就不是你羅。
於是,最后就變成了這樣:
就OK了!
最后,提醒大家,不要改錯了,改到非Windows分區上了,我實驗的時候就不小心改到root分區了,提供了不能識別的參數,用於 Windows分區的參數ext3分區當然不能識別羅,於是root分區在出現錯誤的情況下被掛載成只讀了,連root也無法修改里面的文件,而 fstab又是放在root分區的,就是個悲劇。(能用livecd修復一下)