linux 開機時自動掛載分區

來源:互聯網
上載者:User

linux下開機自動掛載FAT分區

1、掛載點必須是一個目錄。 

2、一個分區掛載在一個已存在的目錄上,這個目錄可以不為空白,但掛載後這個目錄下以前的內容將不可用。 
對於其他動作系統建立的檔案系統的掛載也是這樣。但是需要理解的是:光碟片、磁碟片、其他動作系統使用的檔案系統的格式與linux使用的檔案系統格式是不一樣的。光碟片是ISO9660;磁碟片是fat16或ext2;windows NT是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=XXX 字碼頁 
iocharset=XXX 字元集 
ro 以唯讀方式掛載 
rw 以讀寫方式掛載 
nouser 使一般使用者無法掛載 
user 可以讓一般使用者掛載裝置 

提醒一下,mount命令沒有建立掛載點的功能,因此你應該確保執行mount命令時,掛載點已經存在。(不懂?說白了點就是你要把檔案系統掛載到哪,首先要先建上個目錄。這樣OK?) 

例子: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核心,就不在這裡說了。 

四 、自動掛載 
每次開機訪問windows分區都要運行mount命令顯然太煩瑣,為什麼訪問其他的linux分區不用使用mount命令呢? 
其實,每次開機時,linux自動將需要掛載的linux分區掛載上了。那麼我們是不是可以設定讓linux在啟動的時候也掛載我們希望掛載的分區,如windows分區,以實現檔案系統的自動掛載呢? 
這是完全可以的。在/etc目錄下有個fstab檔案,它裡面列出了linux開機時自動掛載的檔案系統的列表。我的/etc/fstab檔案如下: 

/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 

在/etc/fstab檔案裡,第一列是掛載的檔案系統的裝置名稱,第二列是掛載點,第三列是掛載的檔案系統類型,第四列是掛載的選項,選項間用逗號分隔。第五六列不知道是什麼意思,還望高手指點。 

在最後兩行是我手工添加的windows下的C;D盤,加了codepage=936和iocharset=cp936參數以支援中文檔案名稱。參數defaults實際上包含了一組預設參數: 

rw 以可讀寫入模式掛載 
suid 開啟使用者ID和群組ID設定位 
dev 可解讀檔案系統上的字元或區塊裝置 
exec 可執行二進位檔案 
auto 自動掛載 
nouser 使一般使用者無法掛載 
async 以非同步方式執行檔案系統的輸入輸出操作 

大家可以看到在這個列表裡,光碟機和軟碟機是不自動掛載的,參數設定為noauto。(如果你非要設成自動掛載,你要確保每次開機時你的光碟機和軟碟機裡都要有盤,呵呵。)

首先在 /mnt 下建立幾個目錄,如:d, e, f, g 等。然後用文字編輯器(如 vi)修改 /etc/fstab 檔案,在最末尾添上

        /dev/hda5 /mnt/d auto defaults 0 0

重新啟動 linux 就會發現 D 盤已經自動掛載在/mnt/d 下了。如果您還要掛載 E 盤,只要再在 /etc/fstab 檔案末尾添上

        /dev/hda6 /mnt/e auto defaults 0 0

    注意,如果用 hda5 出錯,請試著改成 hdb5、hdc5 等。這是因為 linux 中,硬碟表示為 hd,第一塊硬碟為 hda,第二塊為 hdb,以此類推。一塊硬碟最多可分成四個主要磁碟分割:dos 主要磁碟分割、dos 擴充分區、linux 根分區和 linux 交換分區都屬於主要磁碟分割。4 個主要磁碟分割分別用數字表示。如果是第一塊硬碟,就是 hda1、hda2、hda3 和 hda4。擴充分區上可以分邏輯分區,標號從 5 往後依次排列。windows 中 C 盤為 dos 主要磁碟分割(hda1),D 盤一般是 dos 擴充分區上的第一個邏輯分區(hda5),E 盤是 hda6,以此類推。各位可以先用 mount 命令掛載 hda5,看看是否成功。如果不成功,則改成 hdb5、hdc5 等。例如:

        mount -t auto /dev/hda5 /mnt/d

以上內容是針對 IDE 硬碟而言的,如果您的是 SCSI 硬碟,請將 hda 改成 sda、sdb、sdc 等。

    如果您的 linux 核心版本太舊,有可能不支援 ntfs 分區,就要安裝一個補丁。

    首先確定您的 linux 核心的版本號碼:

        rpm -q kernel

您會發現顯示的結果中有一條類似這樣的資訊:kernel-2.4.20-8。這個就是您的 linux 核心的版本號碼。

    然後到 http://rpm.pbone.net/ 尋找 kernel-ntfs-核心版本.i686.rpm(如 kernel-ntfs-2.4.20-8.i686.rpm)。下載後,使用以下命令安裝

        rpm -ivh kernel-ntfs-2.4.20-20.8.i686.rpm

如果沒出錯,您的系統就已經支援 ntfs 了。如果報錯,肯定是您下載的補丁和您的核心版本不匹配。

PS: 本教程測試環境為 RedHat 9.0

 /etc/fstab檔案中加上
/dev/hda? /mnt/??? vfat codepage=936,iocharset=gb2312 0 0

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.