Linux-存儲管理

存儲基礎知識

從工做原理區分:node

  • 機械   HDD
  • 固態   SSD

SSD的優點:linux

    SSD是摒棄傳統磁介質,採用電子存儲介質進行數據存儲和讀取的一種技術,突破了傳統機械硬盤的性能瓶頸,擁有極高的存儲性能,被認爲是存儲
    技術發展的將來新星。固態硬盤的全集成電路化、無任何機械運動部件的革命性設計,從根本上解決了在移動辦公環境下,對於數據讀寫穩定性的需
    求。全集成電路化設計可讓固態硬盤作成任何形狀。與傳統硬盤相比,SSD固態電子盤具備如下優勢:
    第一,SSD不須要機械結構,徹底的半導體化,不存在數據查找時間、延遲時間和磁盤尋道時間,數據存取速度快。
    第二,SSD所有采用閃存芯片,經久耐用,防震抗摔,即便發生與硬物碰撞,數據丟失的可能性也可以降到最小。
    第三,得益於無機械部件及FLASH閃存芯片,SSD沒有任何噪音,功耗低。
    第四,質量輕,比常規1.8英寸硬盤重量輕20-30克,使得便攜設備搭載多塊SSD成爲可能。同時因其徹底半導體化,無結構限制,可根據實際狀況  
    設計成各類不一樣接口、形狀的特殊電子硬盤。

從磁盤尺寸區分:ios

3.5 2.5 1.8vim

從插拔方式區分:centos

  • 熱插拔
  • 非熱插拔

從硬盤主要接口區分:服務器

  • IDE    —— SATA I/II/II    我的計算機
  • SCSI  —— SAS    服務器
  • FC
  • PCIE

從存儲鏈接方式區分:網絡

  • 本地存儲:例如DellR730本地磁盤
  • 外部存儲:scsi線、stat線、sas線、FC線
  • 網絡存儲:以太網絡、FC網絡

從kernel對不一樣接口硬盤命名方式:oracle

OS		IDE(並口)	    SATA(串口)		      SCSI			
RHEL5	     /dev/hda		    /dev/sda				/dev/sda		
RHEL6	     /dev/sda		    /dev/sda				/dev/sda
RHEL7	     /dev/sda		    /dev/sda				/dev/sda
KVM          /dev/vda(半虛擬化驅動)
           /dev/sda(全虛擬化驅動)

從分區方式區分:app

存儲大小			分區軟件		分區表
2TB如下的硬盤		fdisk/parted/	MSDOS(MBR) 
2TB以上的硬盤		parted		GPT
注意:從MBR轉到GPT,或從GPT轉換到MBR會致使數據所有丟失!

MSDOS(MBR)分區的限制:異步

主引導分區(Master Boot Record,縮寫:MBR),又叫作主引導扇區,是計算機開機後訪問硬盤時所必需要讀取的首個扇區。

MBR(512字節)=446字節(存放grub指針)+64字節(分區表)+2字節(校驗位)

主分區,擴展分區,邏輯分區

只支持4個主分區,總分區數不能超過15個

只支持2TB如下的硬盤

GPT的限制:

沒有限制

HP服務器硬盤:

/dev/cciss/c0d0
/dev/cciss/c0d0p1	//c0第一個控制器, d0第一塊磁盤, p1分區1
/dev/cciss/c0d0p2	//c0第一個控制器, d0第一塊磁盤, p2分區2

文件系統與數據資料:

Ext3:文件系統最大16TB,單個文件最大2TB

Ext4:文件系統最大16TB,單個文件最大16TB

XFS:

Ext3:是一款日誌文件系統,可以在系統異常宕機時避免文件系統資料丟失,並能自動修復數據的不一致與錯誤。
然而,當硬盤容量較大時,所需的修復時間也會很長,並且也不能百分之百地保證資料不會丟失。它會把整個磁盤
的每一個寫入動做的細節都預先記錄下來,以便在發生異常宕機後能回溯追蹤到被中斷的部分,而後嘗試進行修復。 Ext4:Ext3的改進版本,做爲RHEL 6系統中的默認文件管理系統,它支持的存儲容量高達1EB(1EB=1,073,741,824GB),
且可以有無限多的子目錄。另外,Ext4文件系統可以批量分配block塊,從而極大地提升了讀寫效率。 XFS:是一種高性能的日誌文件系統,並且是RHEL 7中默認的文件管理系統,它的優點在發生意外宕機後尤爲明顯,
便可以快速地恢復可能被破壞的文件,並且強大的日誌功能只用花費極低的計算和存儲性能。而且它最大可支持的存
儲容量爲18EB,這幾乎知足了全部需求。

磁盤分區

磁盤管理相關命令

fdisk 分區工具

fdisk是一個建立和維護分區表的程序,它兼容DOS類型的分區表、BSD或者SUN類型的磁盤列表。

  • 語法:
    fdisk [必要參數][選擇參數]
  • 必要參數:
    -l 列出素全部分區表
    -u 與"-l"搭配使用,顯示分區數目
  • 選擇參數:
    -s<分區編號> 指定分區
    -v 版本信息
  • 菜單操做說明:
    a   toggle a bootable flag                  --設置啓動分區
    b   edit bsd disklabel                      --編輯分區標籤
    d   delete a partition                      --刪除一個分區
    l   list known partition types              --列出分區類型
    m   print this menu                         --幫助
    n   add a new partition                     --創建一個新的分區
    o   create a new empty DOS partition table  --建立一個新的空白DOS分區表
    p   print the partition table               --打印分區表
    q   quit without saving changes             --退出不保存設置
    t   changea partition's system id           --改變分區的類型
    u   changedisplay/entry units               --改變顯示的單位
    v   verifythe partition table               --檢查驗證分區表
    w   write table to disk and exit            --保存分區表
  • 示例
    # fdisk -l
    
    Disk /dev/sda: 10.7 GB, 10737418240 bytes
    255 heads, 63 sectors/track, 1305 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
      Device Boot   Start     End   Blocks  Id System
    /dev/sda1  *      1     13   104391  83 Linux
    /dev/sda2       14    1305  10377990  8e Linux LVM
    
    Disk /dev/sdb: 5368 MB, 5368709120 bytes
    255 heads, 63 sectors/track, 652 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    顯示當前分區狀況
    # fdisk -lu  
    
    Disk /dev/sda: 10.7 GB, 10737418240 bytes
    255 heads, 63 sectors/track, 1305 cylinders, total 20971520 sectors
    Units = sectors of 1 * 512 = 512 bytes
    
      Device Boot   Start     End   Blocks  Id System
    /dev/sda1  *     63   208844   104391  83 Linux
    /dev/sda2     208845  20964824  10377990  8e Linux LVM
    
    Disk /dev/sdb: 5368 MB, 5368709120 bytes
    255 heads, 63 sectors/track, 652 cylinders, total 10485760 sectors
    Units = sectors of 1 * 512 = 512 bytes
    顯示SCSI硬盤的每一個分區狀況

lsblk 查看塊設備

lsblk用於列出全部可用塊設備的信息,並且還能顯示他們之間的依賴關係,可是它不會列出RAM盤的信息。塊設備有硬盤,閃存盤,cd-ROM等等。

  • 選項:
    -a, --all            顯示全部設備。
    -b, --bytes          以bytes方式顯示設備大小。
    -d, --nodeps         不顯示 slaves 或 holders。
    -D, --discard        print discard capabilities。
    -e, --exclude <list> 排除設備 (default: RAM disks)。
    -f, --fs             顯示文件系統信息。
    -h, --help           顯示幫助信息。
    -i, --ascii          use ascii characters only。
    -m, --perms          顯示權限信息。
    -l, --list           使用列表格式顯示。
    -n, --noheadings     不顯示標題。
    -o, --output <list>  輸出列。
    -P, --pairs          使用key="value"格式顯示。
    -r, --raw            使用原始格式顯示。
    -t, --topology       顯示拓撲結構信息。
  • 示例
    [root@centos7-1 ~]# lsblk 
    NAME        MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sr0          11:0    1 1024M  0 rom  
    vda         252:0    0   10G  0 disk 
    ├─vda1      252:1    0  500M  0 part /boot
    └─vda2      252:2    0  9.5G  0 part 
      ├─cl-root 253:0    0    9G  0 lvm  /
      └─cl-swap 253:1    0  500M  0 lvm  [SWAP]
    
    NAME:這是塊設備名。
    MAJ:MIN:本欄顯示主要和次要設備號。
    RM:本欄顯示設備是否可移動設備。注意,在本例中設備sdb和sr0的RM值等於1,這說明他們是可移動設備。
    SIZE:本欄列出設備的容量大小信息。例如298.1G代表該設備大小爲298.1GB,而1K代表該設備大小爲1KB。
    RO:該項代表設備是否爲只讀。在本案例中,全部設備的RO值爲0,代表他們不是隻讀的。
    TYPE:本欄顯示塊設備是不是磁盤或磁盤上的一個分區。在本例中,sda和sdb是磁盤,而sr0是隻讀存儲(rom)。
    MOUNTPOINT:本欄指出設備掛載的掛載點。

partprobe 刷新受權表

partprobe命令用於重讀分區表,當出現刪除文件後,出現仍然佔用空間。能夠partprobe在不重啓的狀況下重讀分區。

  • 選項:
    -d:不更新內核;
    -s:顯示摘要和分區;
    -h:顯示幫助信息;
    -v:顯示版本信息。
  • 示例:
    1、添加新的磁盤分區
    [root@localhost ~]# fdisk /dev/sda
    The number of cylinders for this disk is set to 38770.
    There is nothing wrong with that, but this is larger than 1024,
    and could in certain setups cause problems with:
    1) software that runs at boot time (e.g., old versions of lilo)
    2) booting and partitioning software from other OSs
       (e.g., DOS FDISK, OS/2 FDISK)
    
    command (m for help): p
    
    Disk /dev/sda: 318.9 GB, 318901321728 bytes
    255 heads, 63 sectors/track, 38770 cylinders
    Units = cylinders of 16065 * 512 = 8225280 bytes
    
       Device Boot      Start         End      Blocks   id  System
    /dev/sda1   *           1        3824    30716248+  83  Linux
    /dev/sda2            3825        7648    30716280   83  Linux
    /dev/sda3            7649        8668     8193150   82  Linux swap / Solaris
    
    Command (m for help): n
    Command action
       e   extended
       p   primary partition (1-4)
    p
    Selected partition 4
    First cylinder (8669-38770, default 8669):
    Using default value 8669
    last cylinder or +size or +sizeM or +sizeK (8669-38770, default 38770): +100G   
    Command (m for help): w
    The partition table has been altered!
    
    Calling ioctl() to re-read partition table.
    
    WARNING: Re-reading the partition table failed with error 16: 
    
    Device or resource busy.
    The kernel still uses the old table.
    The new table will be used at the next reboot.
    Syncing disks.
    
    2、 使用工具partprobe讓kernel讀取分區信息
    [root@localhost ~]# partprobe
    使用fdisk工具只是將分區信息寫到磁盤,若是須要mkfs磁盤分區則須要重啓系統,而使用partprobe則可使kernel從新讀取分區信息,從而避免重啓系統。
    
    3、格式化文件系統
    [root@localhost ~]# mkfs.ext3 /dev/sda4
    mke2fs 1.39 (29-May-2006)
    Filesystem label=
    OS type: Linux
    Block size=4096 (log=2)
    Fragment size=4096 (log=2)
    12222464 inodes, 24416791 blocks
    1220839 blocks (5.00%) reserved for the super user
    First data block=0
    Maximum filesystem blocks=4294967296
    746 block groups
    32768 blocks per group, 32768 fragments per group
    16384 inodes per group
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 
        2654208, 4096000, 7962624, 11239424, 20480000, 23887872
    
    Writing inode tables: done
    Creating journal (32768 blocks): done
    Writing superblocks and filesystem accounting information:
    
    done
    
    This filesystem will be automatically checked every 26 mounts or
    180 days, whichever comes first.  Use tune2fs -c or -i to override.
    [root@localhost ~]#
    
    4、 mount新的分區/dev/sda4
    [root@localhost ~]# e2label  /dev/sda4 /data
    [root@localhost ~]# mkdir /data
    [root@localhost ~]# mount /dev/sda4 /data
    [root@localhost ~]# df
    Filesystem           1K-blocks      Used Available Use% Mounted on
    /dev/sda1             29753556   3810844  24406900  14% /
    /dev/sda2             29753588  11304616  16913160  41% /oracle
    tmpfs                  2023936         0   2023936   0% /dev/shm
    /dev/sda4             96132968    192312  91057300   1% /data
    View Code

blkid  查看設備UUID

在Linux下可使用blkid命令對查詢設備上所採用文件系統類型進行查詢。blkid主要用來對系統的塊設備(包括交換分區)所使用的文件系統類型、LABEL、UUID等信息進行查詢。要使用這個命令必須安裝e2fsprogs軟件包。

  • 示例:
    # blkid /dev/sda3
    /dev/sda3: UUID="3bca1b81-1339-4345-9df4-9c25ec00a60b" TYPE="swap" 

磁盤分區示例

分區步驟:

  • 一、須要有一塊硬盤
  • 二、使用分區工具對硬盤進行分區(fdisk)
  • 三、格式化分區
  • 四、掛載使用
  1. 進入分區表 新建分區
  2. 更新分區表(刷新分區表)
  3. 格式化
  4. 掛載

第1步:咱們首先使用fdisk命令來嘗試管理/dev/vdb硬盤設備。在看到提示信息後輸入參數p來查看硬盤設備內已有的分區信息,其中包括了硬盤的容量大小、扇區個數等信息:

[root@centos7-1 ~]# fdisk /dev/vdb 
歡迎使用 fdisk (util-linux 2.23.2)。

更改將停留在內存中,直到您決定將更改寫入磁盤。
使用寫入命令前請三思。

Device does not contain a recognized partition table
使用磁盤標識符 0xf24ceedc 建立新的 DOS 磁盤標籤。

命令(輸入 m 獲取幫助):p

磁盤 /dev/vdb:21.5 GB, 21474836480 字節,41943040 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0xf24ceedc

   設備 Boot      Start         End      Blocks   Id  System

命令(輸入 m 獲取幫助):

第2步:輸入參數n嘗試添加新的分區。系統會要求您是選擇繼續輸入參數p來建立主分區,仍是輸入參數e來建立擴展分區。這裏輸入參數p來建立一個主分區:

命令(輸入 m 獲取幫助):n
Partition type:
   p   primary (0 primary, 0 extended, 4 free)
   e   extended
Select (default p): p

第3步:在確認建立一個主分區後,系統要求您先輸入主分區的編號。咱們在前文得知,主分區的編號範圍是1~4,所以這裏輸入默認的1就能夠了。接下來系統會提示定義起始的扇區位置,這不須要改動,咱們敲擊回車鍵保留默認設置便可,系統會自動計算出最靠前的空閒扇區的位置。最後,系統會要求定義分區的結束扇區位置,這其實就是要去定義整個分區的大小是多少。咱們不用去計算扇區的個數,只須要輸入+2G便可建立出一個容量爲2GB的硬盤分區。

分區號 (1-4,默認 1):1
起始 扇區 (2048-41943039,默認爲 2048):此處敲擊回車
將使用默認值 2048
Last 扇區, +扇區 or +size{K,M,G} (2048-41943039,默認爲 41943039):+2G
分區 1 已設置爲 Linux 類型,大小設爲 2 GiB

第4步:再次使用參數p來查看硬盤設備中的分區信息。果真就能看到一個名稱爲/dev/vdb一、起始扇區位置爲204八、結束扇區位置爲4196351的主分區了。這時候千萬不要直接關閉窗口,而應該敲擊參數w後回車,這樣分區信息纔是真正的寫入成功啦。

命令(輸入 m 獲取幫助):p

磁盤 /dev/vdb:21.5 GB, 21474836480 字節,41943040 個扇區
Units = 扇區 of 1 * 512 = 512 bytes
扇區大小(邏輯/物理):512 字節 / 512 字節
I/O 大小(最小/最佳):512 字節 / 512 字節
磁盤標籤類型:dos
磁盤標識符:0xf24ceedc

   設備 Boot      Start         End      Blocks   Id  System
/dev/vdb1            2048     4196351     2097152   83  Linux

命令(輸入 m 獲取幫助):w
The partition table has been altered!

Calling ioctl() to re-read partition table.
正在同步磁盤。

第5步:在上述步驟執行完畢以後,Linux系統會自動把這個硬盤主分區抽象成/dev/vdb1設備文件。咱們可使用file命令查看該文件的屬性,有些時候系統並無自動把分區信息同步給Linux內核,並且這種狀況彷佛還比較常見(但不能算做是嚴重的bug)。咱們能夠輸入partprobe命令手動將分區信息同步到內核,並且通常推薦連續兩次執行該命令,效果會更好。若是使用這個命令都沒法解決問題,那麼就重啓計算機吧,這個殺手鐗百試百靈,必定會有用的。

[root@centos7-1 ~]# partprobe
[root@centos7-1 ~]# partprobe
[root@centos7-1 ~]# file /dev/vdb1 
/dev/vdb1: block special

第6步:格式化,若是硬件存儲設備沒有進行格式化,則Linux系統沒法得知怎麼在其上寫入數據。所以,在對存儲設備進行分區後還須要進行格式化操做。在Linux系統中用於格式化操做的命令是mkfs。這條命令頗有意思,由於在Shell終端中輸入mkfs名後再敲擊兩下用於補齊命令的Tab鍵,會有以下所示的效果

[root@centos7-1 ~]# mkfs
mkfs         mkfs.cramfs  mkfs.ext3    mkfs.fat     mkfs.msdos   mkfs.xfs     
mkfs.btrfs   mkfs.ext2    mkfs.ext4    mkfs.minix   mkfs.vfat 

對!這個mkfs命令很貼心地把經常使用的文件系統名稱用後綴的方式保存成了多個命令文件,用起來也很是簡單—mkfs.文件類型名稱。例如要格式分區爲XFS的文件系統,則命令應爲mkfs.xfs /dev/sdb1。

[root@centos7-1 ~]# mkfs.xfs /dev/vdb1 
meta-data=/dev/vdb1              isize=512    agcount=4, agsize=131072 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0, sparse=0
data     =                       bsize=4096   blocks=524288, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal log           bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0

第7步:掛載,完成了存儲設備的分區和格式化操做,接下來就是要來掛載並使用存儲設備了。與之相關的步驟也很是簡單:首先是建立一個用於掛載設備的掛載點目錄;而後使用mount命令將存儲設備與掛載點進行關聯;最後使用df -h命令來查看掛載狀態和硬盤使用量信息。

[root@centos7-1 ~]# mkdir /newFS
[root@centos7-1 ~]# mount /dev/vdb1 /newFS/
[root@centos7-1 ~]# df -h
文件系統             容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root  9.1G  3.7G  5.4G   41% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                497M  124K  497M    1% /dev/shm
tmpfs                497M   14M  484M    3% /run
tmpfs                497M     0  497M    0% /sys/fs/cgroup
/dev/vda1            497M  166M  332M   34% /boot
tmpfs                100M  8.0K  100M    1% /run/user/42
tmpfs                100M   16K  100M    1% /run/user/0
/dev/vdb1            2.0G   33M  2.0G    2% /newFS

開機自動掛載,經過UUID掛載,blkid  查看設備的UUID

[root@centos7-1 ~]# blkid /dev/vdb1 
/dev/vdb1: UUID="a9c72628-f6b1-4feb-bdfb-9fa456d119bb" TYPE="xfs"
[root@centos7-1 ~]# vim /etc/fstab
UUID=a9c72628-f6b1-4feb-bdfb-9fa456d119bb  /newFS         xfs     defaults        0 0

磁盤掛載與卸載

  • 單一文件系統不該該被重複掛載在不一樣的掛載點(目錄)中;
  • 單一目錄不該該重複掛載多個文件系統;
  • 要做爲掛載點的目錄,理論上應該都是空目錄纔是。

若是你要用來掛載的目錄裏面並非空的,那麼掛載了文件系統以後,原目錄下的東西就會暫時的消失。 舉個例子來講,假設你的 /home 本來與根目錄 (/) 在同一個文件系統中,底下本來就有 /home/test 與 /home/vbird 兩個目錄。而後你想要加入新的硬盤,而且直接掛載 /home 底下,那麼當你掛載上新的分割槽時,則 /home 目錄顯示的是新分割槽內的數據,至於原先的 test 與 vbird 這兩個目錄就會暫時的被隱藏掉了!注意:並非被覆蓋掉, 而是暫時的隱藏了起來,等到新分割槽被卸除以後,則 /home 本來的內容就會再次的跑出來啦!

  • 格式:
    mount [-t 文件系統]  [-o 額外選項]  裝置文件名  掛載點
  • 參數:
    選項與參數:
    -a  :依照配置文件 /etc/fstab 的數據將全部未掛載的磁盤都掛載上來
    -l  :單純的輸入 mount 會顯示目前掛載的信息。加上 -l 可增列 Label 名稱!
    -t  :與 mkfs 的選項很是相似的,能夠加上文件系統種類來指定欲掛載的類型。
          常見的 Linux 支持類型有:ext2, ext3, vfat, reiserfs, iso9660(光盤格式),
          nfs, cifs, smbfs(此三種爲網絡文件系統類型)
    -n  :在默認的狀況下,系統會將實際掛載的狀況實時寫入 /etc/mtab 中,以利其餘程序
          的運行。但在某些狀況下(例如單人維護模式)爲了不問題,會刻意不寫入。
          此時就得要使用這個 -n 的選項了。
    -L  :系統除了利用裝置文件名 (例如 /dev/hdc6) 以外,還能夠利用文件系統的標頭名稱
          (Label)來進行掛載。最好爲你的文件系統取一個獨一無二的名稱吧!
    -o  :後面能夠接一些掛載時額外加上的參數!比方說帳號、密碼、讀寫權限等:
        rw           讀寫
        ro           只讀
        suid         支持suid
        dev          支持設備文件
        nodev        不支持設備文件
        noexec       不容許執行二進制文件
        exec         容許執行二進制文件
        auto         mount -a 開機自動掛載
        noauto       mount -a 開機不自動掛載
        async        異步寫入
        sync         同步同入
        noatime      不更新訪問時間atime
        usrquota     支持用戶級磁盤配額功能
        grpquota     支持組級磁盤配額功能
        acl          支持acl功能
        remount      在線從新掛載
        pri          指定優先級
  • 示例
    mount -t ext4 -o acl /dev/sdb1 /mnt/disk1 
    文件系統類型:ext4,xfs,nfs,cifs,iso9660,loop

掛載IOS文件

[root@centos7-1 ~]# mount -o loop /data/CentOS-7.3-x86_64-DVD-1611.iso /ios/
[root@centos7-1 ~]# df -h
文件系統                 容量  已用  可用 已用% 掛載點
/dev/mapper/centos-root  202G   34G  169G   17% /
devtmpfs                 1.7G     0  1.7G    0% /dev
tmpfs                    1.8G   12M  1.7G    1% /dev/shm
tmpfs                    1.8G   26M  1.7G    2% /run
tmpfs                    1.8G     0  1.8G    0% /sys/fs/cgroup
/dev/sda1                794M  179M  616M   23% /boot
/dev/mapper/centos-opt   200G   85M  200G    1% /opt
/dev/mapper/centos-home   51G   37M   51G    1% /home
tmpfs                    349M   36K  349M    1% /run/user/0
/dev/loop0               4.1G  4.1G     0  100% /ios

開機自動掛載

/etc/fstab

格式說明:

要掛載的資源路徑    掛載點    資源類型    掛載選項    dump備份支持  文件系統檢測
/dev/vda1           /      ext4      defaults        1            1
1段:掛載的設備(磁盤設備的文件名或設備的卷標或者是設備的UUID)
2段:掛載點(建議用一個空目錄)
3段:文件系統類型(ext三、ext四、vfat、ntfs、swap等等)
4段:文件系統選項(fs mntops)在裝載文件系統時使用的裝載選項
5段:是否支持dump備份。0表明不要作dump備份,1表明要天天進行dump的動做,2也表明其餘不定日期的dump備份。數字越小優先級越高。
6段:是否用 fsck 檢驗扇區。#開機的過程當中,系統默認會用fsck檢驗文件系統是否完整。0是不要檢驗,1表示最早檢驗(通常只有根目錄會設定爲1)
[root@centos7-1 ~]# cat /etc/fstab 
...
須要掛載的設備            掛載點                  文件類型 
/dev/mapper/cl-root     /                        xfs       defaults        0 0
/dev/mapper/cl-swap     swap                     swap      defaults        0 0
  • 示例:
    [root@centos7-1 ~]# blkid /dev/vdb1 
    /dev/vdb1: UUID="a9c72628-f6b1-4feb-bdfb-9fa456d119bb" TYPE="xfs"
    [root@centos7-1 ~]# vim /etc/fstab
    UUID=a9c72628-f6b1-4feb-bdfb-9fa456d119bb  /newFS         xfs     defaults        0 0 

Automount 自動掛載

本地掛載

  • 掛載是由訪問產生的:設置開機不必定要掛載的目錄,當用的時候才實現自動掛載。
  • 卸載是由超時產生的:用戶不使用自動掛載的目錄一段的時間,會自動卸載。(默認時間爲5分鐘)

autofs    ----自動掛載的軟件

[root@centos7-1 ~]# rpm -q autofs 
autofs-5.0.7-56.el7.x86_64

配置文件:

/etc/auto.master        主配置文件
/etc/auto.misc          子配置文件/etc/sysconfig/autofs   額外配置文件
/usr/sbin/automount     二進制命令

示例:

經過autofs 自動掛載本地設備 /dev/vdb1 到 /fs 目錄

第1步:修改主配置文件,定義一級掛載點以及子配置文件, --timeout=20 設置超時時間爲20秒。20秒若是沒有訪問,自動卸載

[root@centos7-1 ~]# vim /etc/auto.master
/-      /etc/auto.fs     --timeout=20

第2步:建立子配置文件,並定義二級掛載點

[root@centos7-1 ~]# vim /etc/auto.fs
/fs    -fstype=xfs,rw :/dev/vdb1

一級二級掛載點說明:將/dev/vda1  掛載到/u01/vd1目錄下,那麼一級掛載點就是/dev、二級掛載點就是vd1
若是單獨只有一級目錄,那麼auto.master裏面寫/-

第3步:啓動服務並查看狀態

[root@centos7-1 ~]# systemctl start autofs
[root@centos7-1 ~]# systemctl status autofs

第4步:測試驗證

[root@centos7-1 ~]# df -h                // 能夠查看到沒有進行使用,雖然啓動了服務,可是仍是沒有掛載
文件系統             容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root  9.1G  3.7G  5.4G   41% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                497M  124K  497M    1% /dev/shm
tmpfs                497M   14M  484M    3% /run
tmpfs                497M     0  497M    0% /sys/fs/cgroup
/dev/vda1            497M  166M  332M   34% /boot
tmpfs                100M  8.0K  100M    1% /run/user/42
tmpfs                100M   16K  100M    1% /run/user/0

[root@centos7-1 ~]# cd /fs/                // 一旦掛載點進行了使用,再次查看,就自動掛載上了
[root@centos7-1 fs]# ls
[root@centos7-1 fs]# df -h
文件系統             容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root  9.1G  3.7G  5.4G   41% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                497M  124K  497M    1% /dev/shm
tmpfs                497M   14M  484M    3% /run
tmpfs                497M     0  497M    0% /sys/fs/cgroup
/dev/vda1            497M  166M  332M   34% /boot
tmpfs                100M  8.0K  100M    1% /run/user/42
tmpfs                100M   16K  100M    1% /run/user/0
/dev/vdb1            2.0G   33M  2.0G    2% /fs

[root@centos7-1 ~]# date                 // 測試超時是否自動卸載
2018年 11月 09日 星期五 16:21:19 CST
[root@centos7-1 ~]# date 
2018年 11月 09日 星期五 16:21:51 CST
[root@centos7-1 ~]# df -h                // 時間超過了20秒後查看,已自動卸載
文件系統             容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root  9.1G  3.7G  5.4G   41% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                497M  124K  497M    1% /dev/shm
tmpfs                497M   14M  484M    3% /run
tmpfs                497M     0  497M    0% /sys/fs/cgroup
/dev/vda1            497M  166M  332M   34% /boot
tmpfs                100M  8.0K  100M    1% /run/user/42
tmpfs                100M   16K  100M    1% /run/user/0

遠程掛載 NFS

要求:將NFS服務器上的/home/dir1和/home/dir2目錄分別掛載 到 掛載服務器的/nfs-server/dir1和/nfs-server/dir2上

NFS服務器:192.168.122.228
簡單準備共享目錄

[root@centos7-2 ~]# mkdir /home/dir{1,2} 
    [root@centos7
-2 ~]# vim /etc/exports /home/dir1 *(rw,sync,no_root_squash) /home/dir2 *(rw,sync,no_root_squash)
[root@centos7
-2 ~]# systemctl restart nfs-server.service [root@centos7-2 ~]# systemctl status nfs-server.service

掛載服務器:192.168.122.205

第1步:查看nfs服務器共享的目錄

[root@centos7-1 ~]# showmount -e 192.168.122.228
Export list for 192.168.122.228:
/home/dir2 *
/home/dir1 *

手動掛載示例:

[root@centos7-1 ~]# mount -t nfs 192.168.122.228:/home/dir1 /nfs-server/dir1
[root@centos7-1 ~]# mount -t nfs 192.168.122.228:/home/dir2 /nfs-server/dir2
[root@centos7-1 ~]# df -h
文件系統                    容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root         9.1G  3.7G  5.4G   41% /
devtmpfs                    481M     0  481M    0% /dev
tmpfs                       497M  124K  497M    1% /dev/shm
tmpfs                       497M   14M  484M    3% /run
tmpfs                       497M     0  497M    0% /sys/fs/cgroup
/dev/vda1                   497M  166M  332M   34% /boot
tmpfs                       100M  8.0K  100M    1% /run/user/42
tmpfs                       100M   16K  100M    1% /run/user/0
192.168.122.228:/home/dir1  9.1G  3.7G  5.4G   41% /nfs-server/dir1
192.168.122.228:/home/dir2  9.1G  3.7G  5.4G   41% /nfs-server/dir2

開機自動掛載示例:

[root@centos7-1 ~]# vim /etc/fstab
192.168.122.228:/home/dir1    /nfs-server/dir1    xfs        defaults        0 0
192.168.122.228:/home/dir2    /nfs-server/dir2    xfs        defaults        0 0
優勢:能夠實現開機自動掛載 缺點:因爲網絡鏈接的不穩定性,會致使網絡設備掛載失敗 結論:適合掛載本地設備和持續使用的設備

第2步:修改主配置文件;定義一級掛載點以及子配置文件

[root@centos7-1 ~]# vim /etc/auto.master
/-     /etc/auto.nfs   --timeout=60

第3步:建立子配置文件

[root@centos7-1 ~]# vim /etc/auto.nfs
/dir1    rw  192.168.122.228:/home/dir1
/dir2    rw  192.168.122.228:/home/dir2

第4步:啓動服務

[root@centos7-1 ~]# systemctl start autofs 
[root@centos7-1 ~]# systemctl status autofs

第5步:測試驗證

[root@centos7-1 ~]# df -h
文件系統             容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root  9.1G  3.7G  5.4G   41% /
devtmpfs             481M     0  481M    0% /dev
tmpfs                497M  124K  497M    1% /dev/shm
tmpfs                497M   14M  484M    3% /run
tmpfs                497M     0  497M    0% /sys/fs/cgroup
/dev/vda1            497M  166M  332M   34% /boot
tmpfs                100M  8.0K  100M    1% /run/user/42
tmpfs                100M   16K  100M    1% /run/user/0

[root@centos7-1 ~]# cd /dir1
[root@centos7-1 dir1]# df -h
文件系統                    容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root         9.1G  3.7G  5.4G   41% /
devtmpfs                    481M     0  481M    0% /dev
tmpfs                       497M  124K  497M    1% /dev/shm
tmpfs                       497M   14M  484M    3% /run
tmpfs                       497M     0  497M    0% /sys/fs/cgroup
/dev/vda1                   497M  166M  332M   34% /boot
tmpfs                       100M  8.0K  100M    1% /run/user/42
tmpfs                       100M   16K  100M    1% /run/user/0
192.168.122.228:/home/dir1  9.1G  3.7G  5.4G   41% /dir1

[root@centos7-1 dir1]# cd /dir2
[root@centos7-1 dir2]# df -h
文件系統                    容量  已用  可用 已用% 掛載點
/dev/mapper/cl-root         9.1G  3.7G  5.4G   41% /
devtmpfs                    481M     0  481M    0% /dev
tmpfs                       497M  124K  497M    1% /dev/shm
tmpfs                       497M   14M  484M    3% /run
tmpfs                       497M     0  497M    0% /sys/fs/cgroup
/dev/vda1                   497M  166M  332M   34% /boot
tmpfs                       100M  8.0K  100M    1% /run/user/42
tmpfs                       100M   16K  100M    1% /run/user/0
192.168.122.228:/home/dir2  9.1G  3.7G  5.4G   41% /dir2
相關文章
相關標籤/搜索