第8章 Linux磁盤與文件系統管理


認識EXT2文件系統

文件的系統特性

Linux的正規文件系統為Ext2

文件數據除了文件實際內容外,還包括其他屬性(文件權限、文件屬性)。

文件系統將這兩部分數據分別存放在不同的塊,權限和屬性放在inode內,實際數據放在data block塊中。此外還有一個super block,記錄整個文件系統的信息。

  1. super block:記錄文件系統的整體信息,包括inode/block的總量、使用量和剩余量。
  2. inode:記錄文件的屬性,一個文件占用一個inode,同時記錄文件數據所在的block號碼
  3. block:實際記錄文件的內容,若文件很大,會占用多個block

Ext2屬於索引式文件系統,所有block都記錄在inode中,與之不同的FAT格式則沒有inode存在,因此FAT格式無法一開始就把所有block全部讀取出來,每個block號碼都記錄在前一個block中。如果block分布離散,則讀取時間很長,因此FAT需要碎片整理,將同一個文件的block匯整到一起。

因為Ext2是索引式文件系統,基本不需要碎片整理(不絕對)。

Linux的Ext2文件系統(inode)

為了便於管理,Ext2文件系統在格式化的時候區分多個塊組(block group),每個塊組都有自己獨立的inode/block/superblock系統。

在整體規划時,文件系統最前面有一個啟動扇區,這個啟動扇區可以安裝引導裝載程序。

個人理解:磁盤分區后,針對每個分區都要進行格式化,所以Ext2文件系統是對於每個分區而言的。

 

Ext2格式化后如下表所示:

啟動扇區 block group1 block group2 block group3 ……

每個塊組如下表所示:

super block 文件系統描述 塊對應表 inode對應表 inode table data block

data block(數據塊)

大小有1kb,2kb,4kb

block的大小會影響文件系統能夠支持的最大磁盤容量和最大單一文件容量

每個塊最多只能存放一個文件,每個文件最少占有一個數據塊。

inode table(inode表格)

存放文件的屬性和文件數據所在的block號

每個inode大小均為128bytes,每個文件都僅占用一個inode

文件系統能創建的數目和inode數量有關

系統讀取文件時,先找到inode,並分析inode記錄的權限和用戶是否一致,符合才讀取對應的block

分析:

一個inode大小128bytes,記錄一個block需要4bytes,如果文件特別大,則會有許多的block,顯然inode空間不足以記錄,因此inode記錄block區域定義為:12個直接、一個間接、一個雙間接、一個三間接。

假設每個block大小為1k:

12個直接:12*1k=12k

間接:256*1k=256k  間接指inode記錄一個塊的號碼,這個塊記錄的是所有實際數據塊的號碼,每個塊大小1k,記錄一個塊號碼需要4bytes,則每個塊能記錄1k/4bytes=256條記錄。

雙間接:256*256*1k

三間接:256*256*256*1k

總額:12k+256k+256*256k+256*256*256k = 16G

super block(超級塊)

記錄整個文件系統信息。包括block和inode總量,未使用量,block和inode的大小(block:1k,2k,4k  inode:128bytes)

super block大小為1024bytes

除了第一個block group內含有super block外,其余block group不一定含有super block,若含有,則為第一個block group的super block備份,用於super block的救援

File system Description(文件系統描述)

該區段用於描述每個block group的開始和結束的block號碼,以及說明每個區段(superblock,bitmap,inodemap,datablock)分別介於哪一個block號碼之間

block bitmap(塊對應表)

記錄哪些block是空的,添加文件時,迅速找到可使用空間。當刪除文件時,也會標記對應塊為未使用狀態。

inode bitmap(inode對應表)

記錄使用與未使用的inode號碼

查看文件系統

 dumpe2fs指令(僅僅適用於ext2文件系統)

與目錄樹的關系

文件和目錄都占用一個inode,根據文件內容大小分配多個block,目錄的內容是文件名,因此文件名存放在目錄的block內。文件對應的inode不記錄文件名。

舉例:

假設需要讀物/etc/passwd這個文件,系統如何讀取?

//首先顯示下各級目錄及文件的inode號碼
[root@localhost ~]# ls -dli / /etc /etc/passwd 128 dr-xr-xr-x. 17 root root 4096 6月 29 08:50 / 134311585 drwxr-xr-x. 142 root root 8192 6月 29 08:48 /etc 138481090 -rw-r--r--. 1 root root 2386 6月 24 19:34 /etc/passwd

1. 首先找到根目錄的inode號碼為128,inode具有的root權限為讀取和執行,我們可以讀取其block內容

2. 經過上面步驟,我們獲得/的block的號碼,並找到該內容有etc/目錄的inode號碼(134311585)

3. 讀取134311585的inode號碼后,獲取etc/的inode,得知root具有對該目錄的rwx權限,因此可以讀取etc/的目錄

4. 通過上面的inode,可以取得block號碼,並找到文件passwd的inode號碼(138481090)

5. 讀取138481090得到inode,得知root具有rw權限,因此可以讀取passwd的block

6.根據上面得到的inode,得到block號碼,讀取block內容

Ext2/Ext3文件的訪問與日志文件系統的功能

新增一個文件或目錄時文件系統的行為:

1.確定用戶對於添加文件的目錄是否有w和x的權限

2.根據inode bitmap找到未使用的inode,並將新文件的權限和屬性寫入

3.根據block bitmap找到未使用的block,並將實際數據寫入,更新inode的block指向數據。

4.將剛才寫入inode和block數據同步更新inode bitmap和block bitmap,並更新super block

數據的不一致性:

當上述操作過程出現故障,導致部分寫入,比如第四步未完成。

日志文件系統:

在文件系統中規划一個塊,專門記錄寫入或修訂文件的步驟。

Ext2的升級版本Ext3支持日志功能。

Linux文件系統的操作:

Linux對文件的寫入采用異步處理,當系統加載一個文件到內存后,如果文件未被修改,則在內存區段的文件數據會被設置為clean,如果內存中的文件被修改了,內存的數據被設為dirty,系統會不定時的將內存中設為dirty的數據寫入到磁盤。可以使用sync指令手動寫入

載點的意義

文件系統必須連接到目錄樹才能被我們使用,將文件系統與目錄樹結合的操作稱為掛載。

掛載點一定是目錄,該目錄為進入該文件系統的入口。

 VFS(虛擬文件系統)

用於管理所有Linux的文件系統

文件系統的簡單操作

 磁盤與目錄的容量:df,du

df:列出文件系統的整體磁盤使用量

-a:列出所有文件系統,包括/proc等

-h:以合適的方式顯示容量單位

-i:不用硬盤容量,而用inode數量顯示

[root@localhost ~]# df
Filesystem              1K-blocks    Used Available Use% Mounted on
/dev/mapper/centos-root  47957116 5028252  42928864  11% /
devtmpfs                  1892188       0   1892188   0% /dev
tmpfs                     1907756      88   1907668   1% /dev/shm
tmpfs                     1907756    9076   1898680   1% /run
tmpfs                     1907756       0   1907756   0% /sys/fs/cgroup
/dev/mapper/centos-home  23413588   94120  23319468   1% /home
/dev/sda5                  508588  217968    290620  43% /boot
tmpfs                      381552       8    381544   1% /run/user/0

[root@localhost ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/mapper/centos-root 46G 4.8G 41G 11% / devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 88K 1.9G 1% /dev/shm tmpfs 1.9G 8.9M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/mapper/centos-home 23G 92M 23G 1% /home /dev/sda5 497M 213M 284M 43% /boot tmpfs 373M 8.0K 373M 1% /run/user/0

[root@localhost ~]# df -ah Filesystem Size Used Avail Use% Mounted on rootfs - - - - / sysfs 0 0 0 - /sys proc 0 0 0 - /proc devtmpfs 1.9G 0 1.9G 0% /dev securityfs 0 0 0 - /sys/kernel/security tmpfs 1.9G 88K 1.9G 1% /dev/shm devpts 0 0 0 - /dev/pts tmpfs 1.9G 8.9M 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup ......省略

上述,有些使用量為0的文件系統(如/proc),都是掛在內存上的。

/dev/shm該目錄是利用內存虛擬出來的磁盤空間

du:評估文件系統的磁盤使用量

du [-ahskm] 文件或目錄名

-a:列出所有文件和目錄容量

-h:以合適的方式顯示容量

-s:列出總量而已,而不列出每個各別的目錄占用容量

//直接使用du,列出當前目錄目錄下的目錄容量(不含文件)
[root@localhost ~]# du
0    ./.config/imsettings
0    ./.config/gnome-session/saved-session
0    ./.config/gnome-session
0    ./.config/gconf
.
.
.
省略
.
.
.
40    ./.vnc
0    ./.pki/nssdb
0    ./.pki
12    ./.gnupg
0    ./.ssh
0    ./Desktop
0    ./Downloads
0    ./Templates
0    ./Public
0    ./Documents
0    ./Music
0    ./Pictures
0    ./Videos
0    ./桌面
127632    .

//將文件容量也列出來
[root@localhost ~]#du -a
.
.
.
省略
.
.
.
4    ./.vnc/passwd
4    ./.vnc/xstartup
4    ./.vnc/localhost.localdomain:1.log
4    ./.vnc/localhost.localdomain:2.pid
4    ./.vnc/localhost.localdomain:2.log
4    ./.vnc/localhost.localdomain:3.pid
4    ./.vnc/localhost.localdomain:3.log
4    ./.vnc/localhost.localdomain:4.pid
4    ./.vnc/localhost.localdomain:4.log
40    ./.vnc
0    ./.pki/nssdb
0    ./.pki
4    ./.viminfo
4    ./.Xauthority
0    ./.gnupg/pubring.gpg
8    ./.gnupg/gpg.conf
0    ./.gnupg/secring.gpg
4    ./.gnupg/trustdb.gpg
12    ./.gnupg
0    ./.ssh
0    ./Desktop
0    ./Downloads
0    ./Templates
0    ./Public
0    ./Documents
0    ./Music
0    ./Pictures
0    ./Videos
0    ./桌面
308    ./Screenshot from 2016-06-28 20-49-50.png
127632    .

//查看根目錄下每個目錄占用量
[root@localhost ~]# du -sm /*
0    /bin
188    /boot
1    /dev
33    /etc
60    /home
0    /lib
0    /lib64
0    /media
0    /mnt
0    /opt
du: cannot access ‘/proc/15885/task/15885/fd/4’: No such file or directory
du: cannot access ‘/proc/15885/task/15885/fdinfo/4’: No such file or directory
du: cannot access ‘/proc/15885/fd/4’: No such file or directory
du: cannot access ‘/proc/15885/fdinfo/4’: No such file or directory
0    /proc
125    /root
9    /run
0    /sbin
0    /srv
0    /sys
1    /tmp
3950    /usr
734    /var

連接文件:ln

-s:默認硬連接,加-s表示符號連接

-f:如果目標文件存在,主動刪除目標文件,再創建

hard link:硬連接或實際連接

前面學到,每個文件占用一個inode,文件內容有inode來指向。想要讀取文件,必須通過目錄記錄的文件名來指向正確的inode號碼才能讀取。即文件名只與目錄有關,文件內容只與inode有關。

硬連接就是在某個目錄下創建一個新的文件名連接到某inode號碼的關聯記錄。

舉例:

[root@localhost Desktop]# cd /tmp
[root@localhost tmp]# mkdir link_t1
[root@localhost tmp]# mkdir link_t2

[root@localhost tmp]# touch ./link_t1/test1.txt

[root@localhost tmp]# ln ./link_t1/test1.txt ./link_t2/test2.txt
[root@localhost tmp]# ls -li ./link_t1/test1.txt ./link_t2/test2.txt
68137576 -rw-r--r--. 3 root root 0 6月  29 13:37 ./link_t1/test1.txt
68137576 -rw-r--r--. 3 root root 0 6月  29 13:37 ./link_t2/test2.txt

如上,建立硬連接后,兩個文件名不同的文件的inode的號碼卻是一模一樣。說明他們所指向的文件內容是一致的。

硬連接的使用限制:

  1. 不能跨文件系統
  2. 不能連接到目錄

symbolic link:符號連接,即快捷方式

創立一個獨立的文件,這個文件會讓數據的讀取指向它連接的那個文件的文件名。但源文件被刪除后,該文件也就無法打開。

舉例:

[root@localhost tmp]# ln -s ./link_t1/test1.txt ./link_t2/test2.txt

[root@localhost tmp]# ls -il ./link_t1/test1.txt ./link_t2/test2.txt
 68137576 -rw-r--r--. 2 root root  0 6月  29 13:37 ./link_t1/test1.txt
134382007 lrwxrwxrwx. 1 root root 19 6月  29 13:54 ./link_t2/test2.txt -> ./link_t1/test1.txt

如上,inode明顯不一樣了。

符號連接可以連接到目錄。

目錄連接數

連接到該目錄的其他目錄的數目,包括上層目錄、本層目錄和子目錄,因此一般連接數至少為2,但文件連接數為1.

 

磁盤的分區、格式化、檢驗與掛載

磁盤分區:fdisk

查看根目錄所在磁盤的分區信息

//查看根目錄的磁盤文件名
[root@localhost ~]# df / Filesystem 1K-blocks Used Available Use% Mounted on /dev/mapper/centos-root 47957116 5040212 42916904 11% /

//查看該磁盤的分區表信息 [root@localhost ~]# fdisk /dev/mapper/centos-root Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Device does not contain a recognized partition table Building a new DOS disklabel with disk identifier 0x784862a5. Command (m for help): p Disk /dev/mapper/centos-root: 49.1 GB, 49132077056 bytes, 95961088 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x784862a5 Device Boot Start End Blocks Id System

//由上,可知沒有分區信息

查看所有分區信息:

[root@localhost ~]# fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0008668e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   403138559   201465856    7  HPFS/NTFS/exFAT
/dev/sda3       403138560   473042943    34952192    7  HPFS/NTFS/exFAT
/dev/sda4       473042944   625141759    76049408    5  Extended
/dev/sda5       473044992   474068991      512000   83  Linux
/dev/sda6       474071040   625141759    75535360   8e  Linux LVM

Disk /dev/mapper/centos-root: 49.1 GB, 49132077056 bytes, 95961088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-swap: 4160 MB, 4160749568 bytes, 8126464 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-home: 24.0 GB, 23987224576 bytes, 46850048 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

可以看到磁盤/dev/sda有六塊分區。

此外,要想查詢分區信息,使用fdisk /dev/sda ,而不用加數字(/dev/sda1)

  刪除磁盤分區:

由上面我們知道/dev/sda有六個分區,使用fdisk /dev/sda指令進入操作,並查看分區信息:

[root@localhost ~]# fdisk /dev/sda
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.


Command (m for help): p

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0008668e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   403138559   201465856    7  HPFS/NTFS/exFAT
/dev/sda3       403138560   473042943    34952192    7  HPFS/NTFS/exFAT
/dev/sda4       473042944   625141759    76049408    5  Extended
/dev/sda5       473044992   474068991      512000   83  Linux
/dev/sda6       474071040   625141759    75535360   8e  Linux LVM

在以上界面內,嘗試刪除第一個分區,即/dev/sda1:

Command (m for help): d
Partition number (1-6, default 6): 1
Partition 1 is deleted

Command (m for help): p

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0008668e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda2          206848   403138559   201465856    7  HPFS/NTFS/exFAT
/dev/sda3       403138560   473042943    34952192    7  HPFS/NTFS/exFAT
/dev/sda4       473042944   625141759    76049408    5  Extended
/dev/sda5       473044992   474068991      512000   83  Linux
/dev/sda6       474071040   625141759    75535360   8e  Linux LVM

新增磁盤分區:

先刪除所有分區

//新增分區
Command (m for help): n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
//選擇主分區
Select (default p): p
//選擇分區號
Partition number (1-4, default 1): 1
//選擇起始柱面,直接enter
First sector (2048-625142447, default 2048): 
Using default value 2048
//選擇結束柱面,+512M表示分區大小為512M,讓系統自動尋找結束柱柱面
Last sector, +sectors or +size{K,M,G} (2048-625142447, default 625142447): +512M
Partition 1 of type Linux and of size 512 MiB is set
//查看分區結果
Command (m for help): p

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0008668e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1            2048     1050623      524288   83  Linux

分區后,執行partprob更新分區表

磁盤的格式化

mkfs:

mkfs [-t 文件系統格式]  設備文件名

[root@localhost ~]# mkfs -t ext3 /dev/sda3
mke2fs
1.42.9 (28-Dec-2013) /dev/sda3 is mounted; will not make a filesystem here! [root@localhost ~]# mkfs -t ext3 /dev/sda3 mke2fs 1.42.9 (28-Dec-2013) Filesystem label= OS type: Linux Block size=4096 (log=2) Fragment size=4096 (log=2) Stride=0 blocks, Stripe width=0 blocks 2187264 inodes, 8738048 blocks 436902 blocks (5.00%) reserved for the super user First data block=0 Maximum filesystem blocks=4294967296 267 block groups 32768 blocks per group, 32768 fragments per group 8192 inodes per group Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done

mke2fs

mke2fs  [-b block大小]  [-i block大小]  [-L卷標]  [-cj]  設備

磁盤檢查:fsck

fsck

[root@localhost ~]# fsck -C -f -t ext3 /dev/sda3
fsck from util
-linux 2.23.2 e2fsck 1.42.9 (28-Dec-2013) Pass 1: Checking inodes, blocks, and sizes Pass 2: Checking directory structure Pass 3: Checking directory connectivity Pass 4: Checking reference counts Pass 5: Checking group summary information /dev/sda3: 11/2187264 files (0.0% non-contiguous), 182345/8738048 blocks

磁盤掛載與卸載

進行掛載前,確保以下幾件事:

  1. 單一文件系統不應該被重復掛載到不同的掛載點
  2. 單一目錄不應該重復掛載多個文件系統
  3. 作為掛載點的目錄理論上應該是空目錄

mount:

舉例:

創建目錄/mnt/sda3,並將分區/dev/sda3掛載到/mnt/sda3下

[root@localhost ~]# mkdir /mnt/sda3
[root@localhost ~]# mount /dev/sda3 /mnt/sda3

使用df查詢掛載情況

[root@localhost ~]# df
Filesystem              1K-blocks    Used Available Use% Mounted on
/dev/mapper/centos-root  47957116 5040192  42916924  11% /
devtmpfs                  1892188       0   1892188   0% /dev
tmpfs                     1907756     144   1907612   1% /dev/shm
tmpfs                     1907756    9076   1898680   1% /run
tmpfs                     1907756       0   1907756   0% /sys/fs/cgroup
/dev/mapper/centos-home  23413588   94120  23319468   1% /home
/dev/sda5                  508588  217968    290620  43% /boot
tmpfs                      381552      16    381536   1% /run/user/0
/dev/sda3                34271976   49172  32475196   1% /mnt/sda3

掛載U盤

先查看U盤信息

[root@localhost ~]# fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x0008668e

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048      206847      102400    7  HPFS/NTFS/exFAT
/dev/sda2          206848   403138559   201465856    7  HPFS/NTFS/exFAT
/dev/sda3       403138560   405235711     1048576   83  Linux
/dev/sda4       473042944   625141759    76049408    5  Extended
/dev/sda5       473044992   474068991      512000   83  Linux
/dev/sda6       474071040   625141759    75535360   8e  Linux LVM

Disk /dev/mapper/centos-root: 49.1 GB, 49132077056 bytes, 95961088 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-swap: 4160 MB, 4160749568 bytes, 8126464 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/centos-home: 24.0 GB, 23987224576 bytes, 46850048 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/sdb: 15.4 GB, 15376000000 bytes, 30031250 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1   *     1040128    30031249    14495561    c  W95 FAT32 (LBA)

創建掛載點,並掛載

[root@localhost ~]# mkdir /mnt/flash
[root@localhost ~]# mount /dev/sdb1 /mnt/flash

卸載

umount

舉例:

[root@localhost ~]# mkdir /mnt/flash
[root@localhost ~]# mount /dev/sdb1 /mnt/flash

//卸載上面掛載的U盤
[root@localhost ~]# umount /dev/sdb1

 設置開機掛載

開機掛載/etc/fstab及/etc/mtab

系統掛載的一些限制:

  1. 根目錄必須掛載,而且一定是第一個被掛載
  2. 其他掛載點必須是已新建的目錄
  3. 所有掛載點和分區在同一時間只能掛載一次
  4. 若進行卸載,必須先將工作目錄移到掛載點

 查閱/etc/fstab內容:

[root@localhost Desktop]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Fri Jun 24 19:10:06 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info

#Device                                               Mount point   filesystem   parameters  dump  fsck
/dev/mapper/centos-root / xfs defaults 0     0 UUID=4204a9c8-573a-4f7d-a55f-9fe81888ba34             /boot xfs defaults 0     0 /dev/mapper/centos-home /home xfs defaults 0      0 /dev/mapper/centos-swap swap swap   defaults 0     0

這個文件內容共有6個字段:

第一列:磁盤設備文件名或設備的Label

第二列:掛載點

第三列:磁盤分區的文件系統

第四列:文件系統參數

第五列:能否被dump命令使用

第六列:是否以fsck檢查扇區

內存交換空間(swap)的構建

當硬件內存不足時,系統將內存中暫時不用的數據放在swap中。

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM