Centos 7 磁盤管理(LVM)

一、無需重啓主機增加磁盤

1、爲虛擬機添加多一塊磁盤

2、檢測磁盤空間

無法發現新增的2G磁盤

3、,重新掃描磁盤

通過重新掃描 SCSI (注:Small Computer System Interface 小型計算機系統接口)總線並添加 SCSI 設備,系統就可以擴展操作系統的物理卷磁盤空間,而且不需要重啓虛擬機。

[root@localhost ~]# ls /sys/class/scsi_host/
host0  host1  host2
[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host0/scan
[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host1/scan
[root@localhost ~]# echo "- - -" > /sys/class/scsi_host/host2/scan

使用下面的命令來檢查 SCSI 設備的名稱,然後重新掃描 SCSI 總線。

[root@localhost ~]# ls /sys/class/scsi_device/
0:0:0:0  0:0:1:0  2:0:0:0
[root@localhost ~]# echo 1>/sys/class/scsi_device/0\:0\:0\:0/device/rescan
[root@localhost ~]# echo 1>/sys/class/scsi_device/0\:0\:1\:0/device/rescan
[root@localhost ~]# echo 1>/sys/class/scsi_device/2\:0\:0\:0/device/rescan

二、擴容主機現有的根分區

如果磁盤使用率超過前期預算的,又需要保留所有數據,可以選擇擴容根分區

1、查看磁盤使用率和“/”目錄大小

[root@localhost ~]# df -HT
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs       8.6G  1.1G  7.5G  13% /
devtmpfs                devtmpfs  4.1G     0  4.1G   0% /dev
tmpfs                   tmpfs     4.2G     0  4.2G   0% /dev/shm
tmpfs                   tmpfs     4.2G  9.3M  4.1G   1% /run
tmpfs                   tmpfs     4.2G     0  4.2G   0% /sys/fs/cgroup
/dev/sda1               xfs       1.1G  153M  912M  15% /boot
tmpfs                   tmpfs     821M     0  821M   0% /run/user/0

2、爲新增的磁盤分區格式化

查看新的磁盤(是否存在/dev/sdb)

[root@localhost ~]# fdisk -l

Disk /dev/sda: 10.7 GB, 10737418240 bytes, 20971520 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: 0x00002170

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *        2048     2099199     1048576   83  Linux
/dev/sda2         2099200    20971519     9436160   8e  Linux LVM

Disk /dev/mapper/centos-root: 8585 MB, 8585740288 bytes, 16769024 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: 1073 MB, 1073741824 bytes, 2097152 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: 2147 MB, 2147483648 bytes, 4194304 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

對磁盤進行分區

[root@localhost ~]# fdisk /dev/sdb

fdisk的交互模式,依次輸入
n  --創建新分區
p  --創建主分區
<回車>  --默認分區編號
<回車>  --默認起始扇區位置。
<回車>  --默認結束扇區位置。
w  --寫入分區表

3、再查看磁盤能看到新增的/dev/sdb1

[root@localhost ~]# fdisk -l
......
Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 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: 0x07276705

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4194303     2096128   83  Linux

4、將新磁盤分區擴容到根分區 "/"

4.1、查看卷分組

[root@localhost ~]# vgdisplay -v
  --- Volume group ---
  VG Name               centos
  System ID             
  Format                lvm2
  Metadata Areas        1
  Metadata Sequence No  3
  VG Access             read/write
  VG Status             resizable
  MAX LV                0
  Cur LV                2
  Open LV               2
  Max PV                0
  Cur PV                1
  Act PV                1
  VG Size               <9.00 GiB
  PE Size               4.00 MiB
  Total PE              2303
  Alloc PE / Size       2303 / <9.00 GiB
  Free  PE / Size       0 / 0   
  VG UUID               DmqyXY-Kj13-sfSR-v9i5-wpLc-ht7c-kPJIvC
......

  --- Physical volumes ---
  PV Name               /dev/sda2     
  PV UUID               7CPA1z-xrMe-CAo7-g14k-cL8B-zgm2-vXbuP3
  PV Status             allocatable
  Total PE / Free PE    2303 / 0

4.2、爲新增的分區創建物理卷

[root@localhost ~]# pvcreate /dev/sdb1
  Physical volume "/dev/sdb1" successfully created.



查看創建結果,有新建的/dev/sdb1,大小爲2G
[root@localhost ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               <9.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2303
  Free PE               0
  Allocated PE          2303
  PV UUID               7CPA1z-xrMe-CAo7-g14k-cL8B-zgm2-vXbuP3
   
  "/dev/sdb1" is a new physical volume of "<2.00 GiB"
  --- NEW Physical volume ---
  PV Name               /dev/sdb1
  VG Name               
  PV Size               <2.00 GiB
  Allocatable           NO
  PE Size               0   
  Total PE              0
  Free PE               0
  Allocated PE          0
  PV UUID               SnXl2W-LsFp-FHUT-M4Ze-yZy9-Y6WH-p3kQ0S

4.3、擴展卷分組,“centos”就是前面使用vgdisplay查看到的主機原本的卷分組名

[root@localhost ~]# vgextend centos /dev/sdb1
  Volume group "centos" successfully extended

4.4、查看邏輯卷,並擴展邏輯卷

目前/dev/centos/root的LV Size大小爲8G

[root@localhost ~]# lvdisplay 
  --- Logical volume ---
  LV Path                /dev/centos/swap
  LV Name                swap
  VG Name                centos
  LV UUID                4U7aBO-Nknq-ZkLc-sLXU-bGpH-Ru9B-5lzejQ
  LV Write Access        read/write
  LV Creation host, time localhost, 2020-05-08 02:15:24 -0400
  LV Status              available
  # open                 2
  LV Size                1.00 GiB
  Current LE             256
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:1
   
  --- Logical volume ---
  LV Path                /dev/centos/root
  LV Name                root
  VG Name                centos
  LV UUID                D20gW5-4CiO-Pdfp-68yn-t4wG-h1cs-aw4ge7
  LV Write Access        read/write
  LV Creation host, time localhost, 2020-05-08 02:15:26 -0400
  LV Status              available
  # open                 1
  LV Size                <8.00 GiB
  Current LE             2047
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     8192
  Block device           253:0

擴展操作

[root@localhost ~]# lvextend -L +1G /dev/centos/root 
  Size of logical volume centos/root changed from <8.00 GiB (2047 extents) to <9.00 GiB (2303 extents).
  Logical volume centos/root successfully resized.

注意:不能全部把2G空間都擴展,因爲實際沒有這麼大的空間

報錯如下,提只有511可用
[root@localhost ~]# lvextend -L +2G /dev/centos/root 
  Insufficient free space: 512 extents needed, but only 511 available

執行pvdisplay可以看到可用的PE數量是511,而且每個PE大小是4.00MiB,所以實際空間並沒有2G
[root@localhost ~]# pvdisplay 
  --- Physical volume ---
  PV Name               /dev/sda2
  VG Name               centos
  PV Size               <9.00 GiB / not usable 3.00 MiB
  Allocatable           yes (but full)
  PE Size               4.00 MiB
  Total PE              2303
  Free PE               0
  Allocated PE          2303
  PV UUID               7CPA1z-xrMe-CAo7-g14k-cL8B-zgm2-vXbuP3
   
  --- Physical volume ---
  PV Name               /dev/sdb1
  VG Name               centos
  PV Size               <2.00 GiB / not usable 3.00 MiB
  Allocatable           yes 
  PE Size               4.00 MiB
  Total PE              511
  Free PE               511
  Allocated PE          0
  PV UUID               SnXl2W-LsFp-FHUT-M4Ze-yZy9-Y6WH-p3kQ0S

4.5、因爲安裝CentOS用的xfs分區,所以使用命令xfs_growfs擴展文件系統大小。

[root@localhost ~]# xfs_growfs /dev/centos/root 
meta-data=/dev/mapper/centos-root isize=512    agcount=4, agsize=524032 blks
         =                       sectsz=512   attr=2, projid32bit=1
         =                       crc=1        finobt=0 spinodes=0
data     =                       bsize=4096   blocks=2096128, imaxpct=25
         =                       sunit=0      swidth=0 blks
naming   =version 2              bsize=4096   ascii-ci=0 ftype=1
log      =internal               bsize=4096   blocks=2560, version=2
         =                       sectsz=512   sunit=0 blks, lazy-count=1
realtime =none                   extsz=4096   blocks=0, rtextents=0
data blocks changed from 2096128 to 2358272

5、再次查看根目錄大小,/dev/mapper/centos-root已經擴容到9G

[root@localhost ~]# df -HT
Filesystem              Type      Size  Used Avail Use% Mounted on
/dev/mapper/centos-root xfs       9.7G  1.1G  8.6G  12% /
devtmpfs                devtmpfs  4.1G     0  4.1G   0% /dev
tmpfs                   tmpfs     4.2G     0  4.2G   0% /dev/shm
tmpfs                   tmpfs     4.2G  9.3M  4.1G   1% /run
tmpfs                   tmpfs     4.2G     0  4.2G   0% /sys/fs/cgroup
/dev/sda1               xfs       1.1G  153M  912M  15% /boot
tmpfs                   tmpfs     821M     0  821M   0% /run/user/0

三、爲主機掛載新的磁盤空間

不改變原主機磁盤狀態,新掛載一個磁盤做數據存儲

1、一樣先看是否能看到新添加的磁盤,不能就執行第一大點的操作

[root@localhost ~]# fdisk -l
......

Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 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

2、對新磁盤進行分區

再查看磁盤個數與分區情況

[root@localhost ~]# fdisk -l
......

Disk /dev/sdb: 2147 MB, 2147483648 bytes, 4194304 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: 0xaaed78bd

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048     4194303     2096128   83  Linux

3、格式化

[root@localhost ~]# partprobe /dev/sdb
[root@localhost ~]# mkfs.ext3 /dev/sdb1 

4、創建掛載目錄

[root@localhost ~]# mkdir /mydata

5、掛載分區

[root@localhost ~]# mount /dev/sdb1  /mydata

6、創建開機自動掛載

7、查看掛載

8、也可以通過磁盤的UUID進行掛載

查看uuid

[root@localhost ~]# blkid 

8、掛載

9、重啓,再查看掛載

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章