1. 程式人生 > >linux中關於掛載的理解

linux中關於掛載的理解

掛載:
Liunx採用樹形的檔案管理系統,也就是在Linux系統中,可以說已經沒有分割槽的概念了。分割槽在Linux和其他裝置一樣都只是一個檔案。要使用一個分割槽必須把它載入到檔案系統中。這可能難於理解,繼續往下看。
Linux中樹形的檔案結構,最頂層是/ 目錄。在安裝系統時,你必須選擇把一個主分割槽掛載在/ 目錄下,因為系統需要安裝在/掛載的主分割槽下。否則系統會提示你。這裡又一次提到了掛載。所以掛載就是把目錄和分割槽連線起來,和上面說的WINDOWS下的對映關係是一樣的。不同的是WINDOWS是把分割槽對映到一個碟符,而LINUX下是對映到一個目錄。 這是理解他們不同最重要的地方,而導致不同的是因為檔案系統結構不同。
上面說了Linux的檔案系統是樹形的,安裝的系統必須是在/ 目錄下,因為/目錄下掛載了一個主分割槽。/目錄是樹形的根,其他所有目錄都是他的子節點。 我們安裝系統的時候已經把分割槽1掛載到 / 目錄下了. 而這個時候沒有掛載其他任何分割槽,所以/ 目錄下的所有其他目錄都在這個分割槽下,也就是說,我在任何目錄下讀寫操作實際都是操作的這個1號分割槽。如果我們想使用其他分割槽,就必須把這個分割槽掛載到一個目錄下,這個目錄可以是已經存在的目錄,比如/home,也可以是我們自己建立的目錄,比如/oracle。當然有些目錄比如/lib, /dev, /etc, /usr這些都不能掛載其他分割槽,因為他們都存放著系統需要的檔案,一旦被掛載其他分割槽,那沒OS就無法找到所需的檔案,系統就會崩潰。比如我們把分割槽2掛載到/usr/X11目錄下時,系統就無法通過X11目錄找到分割槽1上的檔案,這個時候系統圖形介面就無法使用了. 雖然檔案還在硬碟上。前面說過,目錄 --- 分割槽 是通過掛載吧他們聯絡起來。你更換了分割槽,也就破壞了聯絡,就無法在找到之前的檔案了。我們在看分割槽5和分割槽6,我們把它掛載到/home/ftp 和 /oracle目錄下,這個時候我們在操作這2個目錄是,就是操作對用的分割槽了.
而WINDOWS就沒這麼複雜,她不是採用樹形的結構,每個分割槽對應一個碟符,一旦建立對映關係就無法在修改。實際上,LINUX的每個掛載了分割槽的目錄就相當於WINDOWS系統中的碟符,比如上面的,/home/ftp 和 /oracle目錄我們就可以把她看做一個碟符和一個分割槽關聯,只是因為LINUX檔案系統,使得她更加靈活,所以也更復雜和難以理解。
df 命令可以檢視分割槽掛載情況, fdisk 命令可以檢視系統分割槽情況。
LINUX下所有裝置都被認為是檔案,而/dev目錄存放所有系統裝置檔案的,而一個分割槽就是一個檔案,名字就是分割槽的名字.
1、通過mount掛載檔案 來掛載磁碟分割槽(或儲存裝置)


mount掛載檔案  [-t  檔案系統 ]  [-o  選項]  裝置  目錄
-t 通過這個引數,我們來指定檔案系統的型別,一般的情況下不必指定有時也能識別
-o 這個選項,主要選項有許可權、使用者、磁碟限額、語言編碼等
裝置 指儲存裝置,比如/dev/hda1, /dev/sda1 ,cdrom 等...至於您的系統中有哪些儲存裝置,主要通過 fdisk -l 或者檢視 /etc/fstab 或 dmesg ;一般的情況下光碟機裝置是/dev/cdrom ;軟碟機裝置是/dev/fd0 ;硬碟及行動硬碟以 fdisk -l 的輸出為準;
1)對光碟機和軟碟機的掛載;
我們先建一個目錄,然後執行Linux mount掛載檔案 命令,這樣cdrom 就掛在 /mnt/cdrom 中了;我們就可以在/mnt/cdrom 中檢視光碟中資料和檔案;這個目錄您想怎麼建就怎麼建。用什麼目錄不是最重要的。重要的是您知道自己在做什麼就行了。比如我們也可以把這個目錄建成 dvdrom ;然後用 Linux mount掛載檔案 /dev/cdrom /mnt/dvdrom 來掛載;
2)掛載硬碟和行動硬碟的檔案系統;

一個分割槽只有建立了檔案系統後才能使用,前面我們說過了,我們在Linux大多用的是ext2 、ext3、reiserfs、fat32、msdos 、ntfs等;
[1]掛載Linux檔案系統;
首先我們得建一個檔案系統掛載的目錄;我們前面已經提到了;一個有檔案系統的分割槽要掛到系統中,必須要有一個掛載點;這個掛載點就是一個目錄;比如我們通過fdisk -l 得知hda5 是Linux分割槽,並且建立了檔案系統,比如是reiserfs 檔案系統吧;
步驟:
先建立一個掛載目錄;比如/mnt/hda5
設定/mnt/hda5的許可權為任何使用者可寫可讀可執行;這樣所有的使用者都能在寫入; 
通過-t reiserfs 來指定/dev/hda5是reiserfs 檔案系統, 並且掛載到/mnt/hda5目錄; 
假如我們不知道hda5上reiserfs 檔案系統,我們可以用 -t auto 讓系統定奪,然後掛載到/mnt/hda5  
不加任何引數,直接 Linux mount掛載檔案   /dev/hda5 到/mnt/hda5;系統自動判斷分割槽檔案系統; 
通過df -lh 來檢視是不是被掛載了;
如果不需要掛載 使用umount /mnt/hda5來取消掛載