Linux(Centos7)存儲管理

存儲管理

基本分區

^流程: 分區、格式化(文件系統)、掛載。

1.查看磁盤信息

# lsblk

2.創建分區

創建
# disk    /dev/sdb
1.n       //創建新分區     
2.p       //主分區      
3.1       //選擇1號分區       
4.回車    //確定起始扇區
5.+size   //結束大小       
6.w       //保存分區設置
7.d       //刪除
查看分區信息
# fdisk -l /dev/sdb       //查看分區信息
# partprobe /dev/sdb      //在有緩存的時候,刷新磁盤分區表。

3.格式化(創建文件系統)

# mkfs.ext4    /dev/sdb1        

^注: centos7 默認使用 xfs文件系統

4.掛載

手動掛載 [重啓失效]
   1>   創建掛載點   mikdir  /mnt/disk1(名字隨意)
   2>   # mount -t ext4  /dev/sdb1 /mnt/disk1       //手動不推薦
   3>   # mount -t xfs  /dev/sdb2 /mnt/disk2       //手動不推薦
自動掛載 [重啓不失效]
  • 查看分區 ID (UUID)
# blkid
  • 使用UUID創建分區
1> # vim  /etc/fstab
2> UUID複製到原有的UUID下面 
       UUID="9bf6b9f7-92ad-441b-848e-0257cbb883d1" /mnt/disk1 auto defaults 0 0 
       UUID="4d26172c-7aff-4388-baa5-c6756c014d52" /mnt/disk2 ext4 defaults 0 0
3> 手動刷新  mount -a
注意/etc/fstab中有固定格式
磁盤                   掛載點    文件系統        屬性   備份  檢測
/dev/vdb1   /mnt/disk1    xfs或者auto    default    0     0
查看掛載信息
# df -hT

邏輯卷LVM

^目的: 管理磁盤的一種方式,性質與基本磁盤無異
^特點: 隨意擴張大小,縮減大小,快照備份。
^流程: 格式化、掛載

名詞

PV:物理卷(Physical volume)
VG:卷組(Volume Group)
LV:邏輯卷(Logical Volume)
PE:物理塊(Physical Extent)
LE:邏輯塊(Logical Extent)
創建LVM
1.pv
將物理磁盤轉轉換成物理卷 -pv
# pvcreate /dev/sdc

查看pv信息
# pvcan    # pvs  #pvdisplay   
2.vg

^vgcreate: 將使用pvcreate建立的物理卷創建爲一個完整的卷組

創建卷組 -vg
# vgcreate vg1   /dev/sdc
3.lv
# lvcreate  -L  200M   -n lv1   vg1 
             |------|---|---|----|------------- 指定大小   
                        |   |----|------------- 指定lv名
                                 |--------------指定卷組
# 指定大小單位:M,G
# lvscan    //查看lv
4.創建文件系統
mkfs.ext4  /dev/vg1/lv1 
5.掛載
# 見基本分區掛載
VG管理
擴容
  • 創建PV
#pvcreate  /dev/sdd
  • 擴展PV
# vgextend vg1 /dev/sdd
縮容

注意!數據遷移。

  • 查看pv使用情況
pvs
  • 數據遷移
# pvmove /dev/sdc
^注:此處遷移的是vg裏的數據
# pvs   
^注:再次查看空間已發生變化
  • 縮減 vgreduce
# vgreduce vg1 /dev/sdd
^注:vgs 觀察 pv數量變少了
LV擴容
1.擴容lv
1> 查看vg空間
# vgs
2> 擴容 lvextend
# lvextend  -L +200M  /dev/vg1/lv1

2.擴容FS

# resize2fs  /dev/vg1/lv1
2.減小lv
1> 卸載 
# umount  /dev/vg1/lv1
2> 調整分區大小
# e2fsck -f /dev/vg1/lv1
# resize2fs -p /dev/vg1/lv1 100M
3> 減容
# lvreduce -L 200M  /dev/vg1/lv1
4> 掛載

LVM快照snap

創建
創建快照卷((ext4)
# lvcreate -L 128M -s -n lv1-snap /dev/vg1/vg1

^注: 注意vg大小

查詢快照卷大小
# lvs
掛載快照卷
1>創建目錄
# mkdir /mnt/lv1-snap
2>mount -o ro /dev/vg1/lv1-snap  /mnt/lv1-snap

查看Snapshot

1>查看兩個卷掛載情況
# df -Th 
2>查看兩個卷的關係
# lvscan
3>查看文件內容
# ls /mnt.lv1
4>觀察Snapshot
# lvs
^注:XFS不識別uuid,所以需要單獨加上-o nouuid來忽略。掛載快照儘量使用ro方式,不易損壞數據。
# mount -o nouuid,ro /dev/vg1/lv1-snap /mnt/lv1-snap/

恢復

進入快照目錄
# cd  /mnt/lv1-snap
打包內容
# tar  -cf snap.tar
卸載快照
# umount  /mnt/lv1-snap
解壓到原目錄
# tar xf

交換分區swap

簡介

作用

‘提升‘ 內存的容量,防止OOM(Out Of Memory)

swap大小

交換分區大小爲內存的2倍

查看當前交換分區
# free -m
total used free shared buff/cache available
Mem: 489 140 145 4 202 304
Swap: 0 0 0

# swapon -s
增加交換分區

^注: 以LVM爲例

準備分區
# fdisk /dev/sde         //劃分分區磁盤
格式化
# mkswap  /dev/sde1
掛載
1>查詢uuid
# blkid /dev/sde1
2>自動掛載
# vim /etc/fstab
3> 讀取
# swapon -s
交換分區調優
swap優先級
swap分區的優先級(Priority)從高到低依次使用,最高32767,最低優先級是0

這樣設置使得Linux並行的使用優先級相同的swap分區(Priority = 1的分區),這會大幅的提高對swap的讀寫。當這些分區滿了,就會使用較低優先級swap分區(Priority = 0的分區) 
設置
# /vim/etc/fstab
UUID="ea5b1c77-e540-463c-9644-0d75450f8b4c" swap swap defaults,pri=1 0 0                                                               ↑注意
UUID="ea5b1c77-e540-465c-9644-0d75457f8b45" swap swap defaults,pri=1 0 0↑                                                              ↑注意
# swapon -a
# swapon -s

文件系統詳解

EXT3/4文件系統

類型

索引index文件系統

存儲結構

磁盤>分區>文件系統>塊組>索引目錄>數據塊

名詞
superblock
#記錄此文件系統的整體信息。包括inode/block的總量,使用量,剩餘量,以及文件系統的格式等等。
inode
#記錄文件的屬性(文件的元數據metadata),一個文件佔用一個inode,同時記錄此文件數據所在的block numbber。inode大小 爲 128 bytes
block
# 實際存儲文件的內容,若文件較大,會佔用多個block。block大小 爲 1, 2, 4K
查看方式
  • ext4文件系統
1>通過 dumpefs查看
# dumpe2fs  /dev/vg1/lv1
# dumpe2fs /mnt/lv2 |les
2>通過tunfs查看
# tune2fs -l /dev/sda3
  • xfs文件系統
# xfs_growfs /dev/vg1/lv1
# xfs_info /dev/vg1/lv1

文件鏈接

軟連接

^注: 軟連接是一個新文件,像快捷方式。可以對文件和目錄做軟連接,軟連接記錄的是源文件的絕對路徑。軟連接失去不可用。

創建方式
# ln -s  /file1     /home/file11

硬鏈接

^注: 1.硬鏈接只對文件做,不能對目錄做。2.硬鏈接只能在同分區做。3.硬鏈接不佔block只是複製了inode。

# ln /file1 /home/file11

RAID

raid:廉價磁盤冗餘陣列

作用

容錯,提升讀寫速度。

raid0 條帶集 2+100% 讀寫速率快,不容錯
raid1 鏡像集 2 50%讀寫速率一般,容錯。
raid5 帶奇偶校檢條帶集 3+(n-1)/n 讀寫快,容錯,允許壞一塊
raid6 帶奇偶校驗條帶集雙校驗 4+ (n-2)/n 讀寫快,容錯,允許壞兩塊
raid10 RAID1的安全+RAID0的高速 4 50% 讀寫速率快,容錯
raid50 RAID5的安全+RAID0的高速 6 (n-2)/n 讀寫速率快,容錯
raid60 RAID6的安全+RAID0的高速 8 (n-4)/n 讀寫速率快,容錯

實現方式

硬RAID: 需要RAID卡,有自己的CPU,處理速度快,有電池和無電池。
軟RAID: 通過操作系統實現,比如Windows、Linux

附表1

功能 物理卷管理 卷組管理 邏輯卷管理
Scan 掃描 pvscan vgscan lvsacan
Crerate 建立 pvcreate vgcreate lvcreate
Display 顯示 pvdisplay vgdisplay lvdispaly
Remove 刪除 pvremove vgremove lvremove
Extend 擴展 vgextend lvextend
Reduce 減少 vgreduce lvreduce

附表2

功能 命令
查看磁盤信息 lsblk
查看分區 ID (UUID) blkid
查看掛載信息 df -hT
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章