2021-05-12 14:32:11
Linux LVM檔案系統管理的建立和擴充套件
LVM(Logical Volume Manager)邏輯卷管理是在Linux2.4核心以上實現的磁碟管理技術。LVM將一個或多個硬碟的分割區在邏輯上集合,相當於一個大硬碟來使用,當硬碟的空間不夠使用的時候,可以繼續將其它的硬碟的分割區加入其中,這樣可以實現磁碟空間的動態管理,相對於普通的磁碟分割區有很大的靈活性。與傳統的磁碟與分割區相比,LVM為計算機提供了更高層次的磁碟儲存。它使系統管理員可以更方便的為應用與使用者分配儲存空間。在LVM管理下的儲存卷可以按需要隨時改變大小與移除(可能需對檔案系統工具進行升級)。LVM也允許按使用者組對儲存卷進行管理,允許管理員用更直觀的名稱(如"data'、 'Oracle')代替物理磁碟名(如'sda'、'sdb')來標識儲存卷。
物理儲存媒介(The physical media):這裡指系統的儲存裝置/dev/sda1、/dev/xvdb1等,是儲存系統最低層的儲存單元。
物理卷(physical volume):物理捲就是指硬碟分割區或從邏輯上與磁碟分割區具有同樣功能的裝置(如RAID),是LVM的基本儲存邏輯塊,但和基本的物理儲存媒介(如分割區、磁碟等)比較,卻包含有與LVM相關的管理引數,PV即物理的磁碟分割區。
卷組(Volume Group):LVM捲組類似於非LVM系統中的物理硬碟,其由物理卷組成,可以在捲組上建立一個或多個“LVM分割區”(邏輯卷),LVM捲組由一個或多個物理卷組成。
邏輯卷(logical volume):LVM的邏輯卷類似於非LVM系統中的硬碟分割區,在邏輯卷之上可以建立檔案系統(比如/home或者/usr等)。
PE(physical extent):每一個物理卷被劃分為稱為PE(Physical Extents)的基本單元,具有唯一編號的PE是可以被LVM定址的最小單元。PE的大小是可設定的,預設為4MB。
LE(logical extent):邏輯卷也被劃分為被稱為LE(Logical Extents) 的可被定址的基本單位。在同一個捲組中,LE的大小和PE是相同的,並且一一對應。
建立PV
pvcreate /dev/xvdb1 /dev/xvdc1 /dev/xvde1
建立VG
vgcreate -s 8M datavg /dev/xvdb1 /dev/xvdc1 /dev/xvde1
建立LV
lvcreate -L 890G -n lvdata datavg
掛載LV
/dev/datavg/lvdata
建立PV
pvcreate /dev/xvdf1
擴充套件VG
vgextend datavg /dev/xvdf1
擴充套件LV
lvextend -L +100G /dev/datavg/lvdata
擴充套件檔案系統
resize2fs /dev/datavg/lvdata
案例:
[root@hkpgsadg dev]# ls -l /dev/xvd*
brw-rw---- 1 root disk 202, 0 Apr 13 16:37 /dev/xvda
brw-rw---- 1 root disk 202, 1 Apr 13 16:36 /dev/xvda1
brw-rw---- 1 root disk 202, 2 Apr 13 16:36 /dev/xvda2
brw-rw---- 1 root disk 202, 3 Apr 13 16:36 /dev/xvda3
brw-rw---- 1 root disk 202, 16 Apr 13 16:39 /dev/xvdb
brw-rw---- 1 root disk 202, 17 Apr 13 16:39 /dev/xvdb1
brw-rw---- 1 root disk 202, 32 Apr 13 16:37 /dev/xvdc
brw-rw---- 1 root disk 202, 64 Apr 13 16:37 /dev/xvde
brw-rw---- 1 root disk 202, 80 Apr 13 16:37 /dev/xvdf
[root@hkpgsadg dev]# fdisk /dev/xvdc
Device contains neither a valid DOS partition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with disk identifier 0x04acd4ca.
Changes will remain in memory only, until you decide to write them.
After that, of course, the previous content won't be recoverable.
Warning: invalid flag 0x0000 of partition table 4 will be corrected by w(rite)
WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
switch off the mode (command 'c') and change display units to
sectors (command 'u').
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 1
First cylinder (1-65270, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G} (1-65270, default 65270):
Using default value 65270
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
[root@hkpgsadg dev]# ls -l /dev/xvd*
brw-rw---- 1 root disk 202, 0 Apr 13 16:37 /dev/xvda
brw-rw---- 1 root disk 202, 1 Apr 13 16:36 /dev/xvda1
brw-rw---- 1 root disk 202, 2 Apr 13 16:36 /dev/xvda2
brw-rw---- 1 root disk 202, 3 Apr 13 16:36 /dev/xvda3
brw-rw---- 1 root disk 202, 16 Apr 13 16:39 /dev/xvdb
brw-rw---- 1 root disk 202, 17 Apr 13 16:39 /dev/xvdb1
brw-rw---- 1 root disk 202, 32 Apr 13 16:39 /dev/xvdc
brw-rw---- 1 root disk 202, 33 Apr 13 16:39 /dev/xvdc1
brw-rw---- 1 root disk 202, 64 Apr 13 16:40 /dev/xvde
brw-rw---- 1 root disk 202, 65 Apr 13 16:40 /dev/xvde1
brw-rw---- 1 root disk 202, 80 Apr 13 16:40 /dev/xvdf
brw-rw---- 1 root disk 202, 81 Apr 13 16:40 /dev/xvdf1
[root@hkpgsadg dev]# pvcreate /dev/xvdb1 /dev/xvdc1 /dev/xvde1
Physical volume "/dev/xvdb1" successfully created
Physical volume "/dev/xvdc1" successfully created
Physical volume "/dev/xvde1" successfully created
[root@hkpgsadg dev]# pvdisplay
--- Physical volume ---
PV Name /dev/xvda2
VG Name VolGroup
PV Size 19.51 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 4994
Free PE 0
Allocated PE 4994
PV UUID Tv6PfK-cNpj-zYU2-cPeY-Xp8H-guAW-YZOm7d
--- Physical volume ---
PV Name /dev/xvda3
VG Name VolGroup
PV Size 100.00 GiB / not usable 3.99 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 25599
Free PE 0
Allocated PE 25599
PV UUID hhOoov-6TnF-p1Mg-mPc6-66If-zNwT-v8cIKB
"/dev/xvdb1" is a new physical volume of "100.00 GiB"
--- NEW Physical volume ---
PV Name /dev/xvdb1
VG Name
PV Size 100.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID OujuQi-rD1R-K91R-Ni82-jyAX-PpjD-ZnQvo5
"/dev/xvdc1" is a new physical volume of "499.99 GiB"
--- NEW Physical volume ---
PV Name /dev/xvdc1
VG Name
PV Size 499.99 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID grJiiL-KGug-ef3c-XF2J-ffS1-AhTl-xfHSMW
"/dev/xvde1" is a new physical volume of "300.00 GiB"
--- NEW Physical volume ---
PV Name /dev/xvde1
VG Name
PV Size 300.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID 08dOWh-3dFQ-rQ00-VTGi-h9S2-PbaJ-aQKYSe
[root@hkpgsadg dev]# vgcreate -s 8M datavg /dev/xvdb1 /dev/xvdc1 /dev/xvde1
Volume group "datavg" successfully created
[root@hkpgsadg dev]# vgdisplay
--- Volume group ---
VG Name datavg
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size 899.98 GiB
PE Size 8.00 MiB
Total PE 115197
Alloc PE / Size 0 / 0
Free PE / Size 115197 / 899.98 GiB
VG UUID fINMY5-wBKS-QBKi-N6QI-ihMD-YaVb-j90u0x
--- Volume group ---
VG Name VolGroup
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 119.50 GiB
PE Size 4.00 MiB
Total PE 30593
Alloc PE / Size 30593 / 119.50 GiB
Free PE / Size 0 / 0
VG UUID RdDeWr-qxlF-f1To-zNng-nxCV-e1Hd-3xVZfH
[root@hkpgsadg dev]# vgdisplay
--- Volume group ---
VG Name datavg
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size 899.98 GiB
PE Size 8.00 MiB
Total PE 115197
Alloc PE / Size 0 / 0
Free PE / Size 115197 / 899.98 GiB
VG UUID fINMY5-wBKS-QBKi-N6QI-ihMD-YaVb-j90u0x
--- Volume group ---
VG Name VolGroup
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 5
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 119.50 GiB
PE Size 4.00 MiB
Total PE 30593
Alloc PE / Size 30593 / 119.50 GiB
Free PE / Size 0 / 0
VG UUID RdDeWr-qxlF-f1To-zNng-nxCV-e1Hd-3xVZfH
[root@hkpgsadg dev]# vgdisplay datavg
--- Volume group ---
VG Name datavg
System ID
Format lvm2
Metadata Areas 3
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 3
Act PV 3
VG Size 899.98 GiB
PE Size 8.00 MiB
Total PE 115197
Alloc PE / Size 0 / 0
Free PE / Size 115197 / 899.98 GiB
VG UUID fINMY5-wBKS-QBKi-N6QI-ihMD-YaVb-j90u0x
[root@hkpgsadg dev]# lvcreate -L 890G -n lvdata datavg
Logical volume "lvdata" created
[root@hkpgsadg dev]# lvdisplay
--- Logical volume ---
LV Path /dev/datavg/lvdata
LV Name lvdata
VG Name datavg
LV UUID yFWfNu-E1cr-px49-K9tH-Q0vU-BjfL-yt8hWh
LV Write Access read/write
LV Creation host, time hkpgsadg, 2016-04-13 16:45:21 +0800
LV Status available
# open 0
LV Size 890.00 GiB
Current LE 113920
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
--- Logical volume ---
LV Path /dev/VolGroup/lv_root
LV Name lv_root
VG Name VolGroup
LV UUID 4bM3bz-gttp-qKgr-sd9L-d24M-RMEb-LO4L4h
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2014-07-07 18:28:07 +0800
LV Status available
# open 1
LV Size 115.58 GiB
Current LE 29589
Segments 2
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/VolGroup/lv_swap
LV Name lv_swap
VG Name VolGroup
LV UUID Ic6bZU-mt6c-b0LK-1n7F-62Kc-16V1-TkcXBU
LV Write Access read/write
LV Creation host, time localhost.localdomain, 2014-07-07 18:28:11 +0800
LV Status available
# open 1
LV Size 3.92 GiB
Current LE 1004
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:1
[root@hkpgsadg dev]# mkfs.ext4 /dev/datavg/lvdata
mke2fs 1.41.12 (17-May-2010)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
Stride=0 blocks, Stripe width=0 blocks
58327040 inodes, 233308160 blocks
11665408 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
7120 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, 11239424, 20480000, 23887872, 71663616, 78675968,
102400000, 214990848
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystem accounting information: done
This filesystem will be automatically checked every 32 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
[root@hkpgsadg dev]# mkdir /data
[root@hkpgsadg dev]# mount /dev/datavg/lvdata /data
[root@hkpgsadg dev]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
114G 4.5G 104G 5% /
tmpfs 62G 0 62G 0% /dev/shm
/dev/xvda1 485M 32M 428M 7% /boot
/dev/mapper/datavg-lvdata
877G 200M 832G 1% /data
[root@hkpgsadg dev]#
[root@hkpgsadg data]# pvcreate /dev/xvdf1
Physical volume "/dev/xvdf1" successfully created
[root@hkpgsadg data]# vgextend datavg /dev/xvdf1
Volume group "datavg" successfully extended
[root@hkpgsadg data]# lvdisplay
--- Logical volume ---
LV Path /dev/datavg/lvdata
LV Name lvdata
VG Name datavg
LV UUID yFWfNu-E1cr-px49-K9tH-Q0vU-BjfL-yt8hWh
LV Write Access read/write
LV Creation host, time hkpgsadg, 2016-04-13 16:45:21 +0800
LV Status available
# open 1
LV Size 890.00 GiB
Current LE 113920
Segments 3
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:2
[root@hkpgsadg data]# vgdisplay
--- Volume group ---
VG Name datavg
System ID
Format lvm2
Metadata Areas 4
Metadata Sequence No 3
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 1
Open LV 1
Max PV 0
Cur PV 4
Act PV 4
VG Size 1.17 TiB
PE Size 8.00 MiB
Total PE 153596
Alloc PE / Size 113920 / 890.00 GiB
Free PE / Size 39676 / 309.97 GiB
VG UUID fINMY5-wBKS-QBKi-N6QI-ihMD-YaVb-j90u0x
[root@hkpgsadg data]# lvextend -L +100G /dev/datavg/lvdata
Extending logical volume lvdata to 990.00 GiB
Logical volume lvdata successfully resized
[root@hkpgsadg data]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
114G 4.5G 104G 5% /
tmpfs 62G 0 62G 0% /dev/shm
/dev/xvda1 485M 32M 428M 7% /boot
/dev/mapper/datavg-lvdata
877G 200M 832G 1% /data
[root@hkpgsadg data]# resize2fs /dev/datavg/lvdata
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/datavg/lvdata is mounted on /data; on-line resizing required
old desc_blocks = 56, new_desc_blocks = 62
Performing an on-line resize of /dev/datavg/lvdata to 259522560 (4k) blocks.
The filesystem on /dev/datavg/lvdata is now 259522560 blocks long.
[root@hkpgsadg data]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup-lv_root
114G 4.5G 104G 5% /
tmpfs 62G 0 62G 0% /dev/shm
/dev/xvda1 485M 32M 428M 7% /boot
/dev/mapper/datavg-lvdata
975G 200M 925G 1% /data
Created by Tony.Tang[TangYun]2016.04
-------------End-----------------
LVM2詳解 http://www.linuxidc.com/Linux/2015-09/122976.htm
Ubuntu 上使用 LVM 輕鬆調整分割區並製作快照 http://www.linuxidc.com/Linux/2015-09/122563.htm
使用LVM建立彈性磁碟儲存——第一部分 http://www.linuxidc.com/Linux/2014-10/107697.htm
在Linux中擴充套件/縮減LVM(第二部分) http://www.linuxidc.com/Linux/2014-10/107786.htm
在 LVM中 錄制邏輯卷快照並恢復(第三部分) http://www.linuxidc.com/Linux/2014-11/108867.htm
在LVM中設定精簡資源調配卷(第四部分) http://www.linuxidc.com/Linux/2014-11/109757.htm
使用條塊化I/O管理多個LVM磁碟(第五部分) http://www.linuxidc.com/Linux/2014-12/110532.htm
本文永久更新連結地址:http://www.linuxidc.com/Linux/2016-04/130299.htm
相關文章