歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> Linux教程

[實例]用fstab在Linux下自動掛載Win的FAT和NTFS分區

這是根據自己的電腦掛載NTFS分區,結合網上信息,在archLinux wiki上的編寫的頁面中的一段。

講解下關於fstab的用法

下面請看具體步驟:

1.先在用fdisk -l(可能需要在root權限下)得到硬盤信息表,例如:

# Device     Boot     Start     End    Blocks            Id      System

 /dev/sda1    *            1      2397   19253871      b      W95 FAT32

 /dev/sda2             2398     3144   6000277+     83     Linux

 /dev/sda3             3145     9729   52894012+   5       Extended

 /dev/sda5             3145     3152   64228+         83     Linux

 /dev/sda6             3153     3276   995998+       82     Linux swap / Solaris

 /dev/sda7             3277     7340   32644048+   83     Linux

 /dev/sda8            7341      9729   19189611     7       HPFS/NTFS

從上面知道,這台電腦上只有一個硬盤,其中分區sda1為fat32格式,sda8為NTFS格式,sda1為可以啟動的,因而可能為window的系統所在盤。下面把系統盤以只讀方式持載上去,非系統盤sda8以讀寫方式掛載上去(不能掛載在"/"及其以下的任何目錄)。

2.用你喜歡的編輯器在終端中打開/etc/fstab,例如:

 nano /etc/fstab

在文件末尾加入:

/dev/sda1 /home/username/WindowsC vfat defaults,iocharset=cp936,umask=022,nls=gb2312 0 0

/dev/sda8 /home/username/WindowsD ntfs defaults,iocharset=utf8,umask=000,nls=utf8 0 0

保存,退出。

3.在終端中輸入

 mount -a

你就應該能在/home/username/WindowsC下找到你的系統分區sda1內容,在/home/username/WindowsD中找到sda8的內容(其中username指用戶名)。

我的win分區都是ntfs的,對於ntfs分區,進行了測試:

只用nls=utf8,就沒有中文亂碼!!!

而只用iocharset=utf8,顯示的時候還會有亂碼!!!

WindowsC用umask=022只能進行讀操作,用000之後能進行正常讀寫,WindowsD能進行正常的文件讀寫。

注意:我是把分區都掛在“/home”的子目錄下了,如果掛在“/”及其子目錄下,即使用了umask=000也不能寫的,這是Linux系統對“文件系統”權限的問題。為了雙重保險,你可以把win的系統分區--C盤掛在“/”及其子目錄下,但是要想寫文件的話,最好掛在/home下。

其中掛載fat32的項用nls是猜想的,網上都是用codepage和iocharset,我不知道用nls能不能行!(哈哈,有點造假的味道)

Copyright © Linux教程網 All Rights Reserved