一:基本概念
PV:物理卷:作用是将普通的物理分区转换为可以被LVM所使用的物理卷
PV命令如下:
pvcreate:创建一个pv
pvcsan:查看pv
pvdisplay:查看pv详细信息
pvremove:删除一个pv
VG:卷组:将多个PV组合成为一个大的分区空间,即卷组
VG命令如下:
vgcreate:创建一个vg
vgextend:扩展vg
vgcsan:查看vg
vgdisplay:查看vg详细信息
vgreduce:在vg内移除一个pv
vgchange:设定vg是否启动active
vgremove:删除一个vg
LV:逻辑卷:将VG进行分割,分割的单位就是LV,实际使用的时候,也就将各个LV挂载到目录上使用
LV命令如下:
lvcreate:创建一个lv (-L 设定容量大小 -n 设定lv名字)
lvextend:扩展lv
lvcsan:查看lv
lvdisplay:查看lv详细信息
lvreduce:在lv内减少容量
lvremove:删除一个lv
二:演示操作:
具体操作为:增加一个磁盘为/dev/sdb,进行分区为/dev/sdb1,之后创建pv,加入到VGroup的vg卷组里,再创建Oracle_lv的lv,把/u01目录挂载到Oracle_lv的lv上,增加Oracle_lv容量500M
1、查看磁盘/dev/sdb
[root@localhost ~]# fdisk -l
Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
Sector size (logical/physical): 512 bytes /512 bytes
I/O size (minimum/optimal): 512 bytes / 512bytes
Disk identifier: 0x0003a0c2
Device Boot Start End Blocks Id System
/dev/sda1 * 1 26 204800 83 Linux
Partition 1 does not end on cylinderboundary.
/dev/sda2 26 1306 10279936 8e Linux LVM
Disk /dev/sdb: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
Sector size (logical/physical): 512 bytes /512 bytes
I/O size (minimum/optimal): 512 bytes / 512bytes
Disk identifier: 0x00000000
Disk /dev/mapper/VGroup-LogVol01: 9449 MB,9449766912 bytes
255 heads, 63 sectors/track, 1148 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
Sector size (logical/physical): 512 bytes /512 bytes
I/O size (minimum/optimal): 512 bytes / 512bytes
Disk identifier: 0x00000000
Disk /dev/mapper/VGroup-LogVol00: 1073 MB,1073741824 bytes
255 heads, 63 sectors/track, 130 cylinders
Units = cylinders of 16065 * 512 = 8225280bytes
Sector size (logical/physical): 512 bytes /512 bytes
I/O size (minimum/optimal): 512 bytes / 512bytes
Disk identifier: 0x00000000
2、分区/dev/sdb
[root@localhost ~]# fdisk /dev/sdb
Device contains neither a valid DOSpartition table, nor Sun, SGI or OSF disklabel
Building a new DOS disklabel with diskidentifier 0x91b093e1.
Changes will remain in memory only, untilyou decide to write them.
After that, of course, the previous contentwon't be recoverable.
Warning: invalid flag 0x0000 of partitiontable 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-2610, default 1):
Using default value 1
Last cylinder, +cylinders or +size{K,M,G}(1-2610, default 2610):
Using default value 2610
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
Syncing disks.
3、创建pv
[root@localhost ~]# pvcreate /dev/sdb1
Writing physical volume data to disk "/dev/sdb1"
Physical volume "/dev/sdb1" successfully created
4、查看pv
[root@localhost ~]# pvscan
PV/dev/sda2 VG VGroup lvm2 [9.80 GiB / 0 free]
PV/dev/sdb1 lvm2[19.99 GiB]
Total: 2 [29.79 GiB] / in use: 1 [9.80 GiB] / in no VG: 1 [19.99 GiB]
查看具体的pv
[root@localhost ~]# pvdisplay
---Physical volume ---
PVName /dev/sda2
VGName VGroup
PVSize 9.80 GiB / not usable3.00 MiB
Allocatable yes (butfull)
PESize 4.00 MiB
Total PE 2509
Free PE 0
Allocated PE 2509
PVUUID tD3JHJ-M520-hg2W-zvlN-2F7R-MYf7-DCMQsJ
"/dev/sdb1" is a new physical volume of "19.99 GiB"
---NEW Physical volume ---
PVName /dev/sdb1
VGName
PVSize 19.99 GiB
Allocatable NO
PESize 0
Total PE 0
Free PE 0
Allocated PE 0
PVUUID 5v6rvn-UNGN-yQXz-qe95-5MfM-UHsc-ktpShq
5、向VGroup 的vg中添加生成的pv
[root@localhost ~]# vgextend VGroup /dev/sdb1
Volume group "VGroup" successfully extended
6、查看vg信息
[root@localhost ~]# vgscan
Reading all physical volumes. This may take a while...
Found volume group "VGroup" using metadata type lvm2
查看具体的vg
[root@localhost ~]# vgdisplay
---Volume group ---
VGName VGroup
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 4
VGAccess read/write
VGStatus resizable
MAXLV 0
CurLV 2
Open LV 2
MaxPV 0
CurPV 2
ActPV 2
VGSize 29.79 GiB
PESize 4.00 MiB
Total PE 7627
Alloc PE / Size 2509 / 9.80 GiB
Free PE / Size 5118 / 19.99 GiB
VGUUID qfQsVS-YRlt-E1Vz-f8wE-uZOK-R1g3-5IGY5M
7、创建一个名为Oracle_lv 的lv
[root@localhost ~]# lvcreate -L 18G -n Oracle_lv VGroup
Logical volume "Oracle_lv" created
8、查看lv信息
[root@localhost ~]# lvscan
ACTIVE '/dev/VGroup/LogVol01' [8.80 GiB] inherit
ACTIVE '/dev/VGroup/LogVol00' [1.00 GiB] inherit
ACTIVE '/dev/VGroup/Oracle_lv' [18.00 GiB] inherit
查看具体的lv信息
[root@localhost ~]# lvdisplay
---Logical volume ---
LVPath /dev/VGroup/LogVol01
LVName LogVol01
VGName VGroup
LVUUID hzd5V0-16DI-mtuY-oDWX-UDfo-BdKy-ERxbpT
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-02 16:34:08 +0800
LVStatus available
#open 1
LVSize 8.80 GiB
Current LE 2253
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:0
---Logical volume ---
LVPath /dev/VGroup/LogVol00
LVName LogVol00
VGName VGroup
LVUUID ukUQ4I-yBzQ-DZnA-eVfG-PWvs-wBew-2AU73W
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-02 16:34:09 +0800
LVStatus available
#open 1
LVSize 1.00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:1
---Logical volume ---
LVPath /dev/VGroup/Oracle_lv
LVName Oracle_lv
VGName VGroup
LVUUID SijL1X-1anp-eUh1-AaJx-sNYP-XDJj-YYFQpx
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-05 21:01:27 +0800
LVStatus available
#open 0
LVSize 18.00 GiB
Current LE 4608
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:2
9、格式化Oracle_lv
[root@localhost /]# mkfs.ext4 /dev/VGroup/Oracle_lv
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
1179648 inodes, 4718592 blocks
235929 blocks (5.00%) reserved for thesuper user
First data block=0
Maximum filesystem blocks=4294967296
144 block groups
32768 blocks per group, 32768 fragments pergroup
8192 inodes per group
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000
Writing inode tables: done
Creating journal (32768 blocks): done
Writing superblocks and filesystemaccounting information: done
This filesystem will be automaticallychecked every 24 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.
10、创建要挂载的目录
[root@localhost ~]# cd /
[root@localhost /]# mkdir /u01
11、挂载目录
[root@localhost /]# mount /dev/VGroup/Oracle_lv /u01
12、查看目录
[root@localhost /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VGroup-LogVol01
8.7G 2.5G 5.8G 31% /
tmpfs 2.0G 88K 2.0G 1% /dev/shm
/dev/sda1 194M 32M 152M 18% /boot
/dev/mapper/VGroup-Oracle_lv
18G 172M 17G 1% /u01
13、挂载设置重启生效
[root@localhost /]# vi /etc/fstab
/dev/mapper/VGroup-Oracle_lv /u01 ext4 defaults 0 0
14、增加lv大小
卸载目录
[root@localhost /]# umount /u01
增加VGroup-Oracle_lv 的lv大小500M
[root@localhost /]# lvextend -L +500M/dev/mapper/VGroup-Oracle_lv
Extending logical volume Oracle_lv to 18.49 GiB
Logical volume Oracle_lv successfully resized
查看lv信息
[root@localhost /]# lvdisplay
---Logical volume ---
LVPath /dev/VGroup/LogVol01
LVName LogVol01
VGName VGroup
LVUUID hzd5V0-16DI-mtuY-oDWX-UDfo-BdKy-ERxbpT
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-02 16:34:08 +0800
LVStatus available
#open 1
LVSize 8.80 GiB
Current LE 2253
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:0
---Logical volume ---
LVPath /dev/VGroup/LogVol00
LVName LogVol00
VGName VGroup
LVUUID ukUQ4I-yBzQ-DZnA-eVfG-PWvs-wBew-2AU73W
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-02 16:34:09 +0800
LVStatus available
#open 1
LVSize 1.00 GiB
Current LE 256
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:1
---Logical volume ---
LVPath /dev/VGroup/Oracle_lv
LVName Oracle_lv
VGName VGroup
LVUUID SijL1X-1anp-eUh1-AaJx-sNYP-XDJj-YYFQpx
LVWrite Access read/write
LVCreation host, time localhost.localdomain, 2017-06-05 21:01:27 +0800
LVStatus available
#open 0
LVSize 18.49 GiB
Current LE 4733
Segments 1
Allocation inherit
Read ahead sectors auto
-currently set to 256
Block device 253:2
再次挂载
[root@localhost /]# mount /dev/mapper/VGroup-Oracle_lv /u01
查看目录大小 没变
[root@localhost /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VGroup-LogVol01
8.7G 2.5G 5.8G 31% /
tmpfs 2.0G 88K 2.0G 1% /dev/shm
/dev/sda1 194M 32M 152M 18% /boot
/dev/mapper/VGroup-Oracle_lv
18G 172M 17G 1% /u01
resize2fs一下
[root@localhost /]# resize2fs -f /dev/mapper/VGroup-Oracle_lv
resize2fs 1.41.12 (17-May-2010)
Filesystem at /dev/mapper/VGroup-Oracle_lvis mounted on /u01; on-line resizing required
old desc_blocks = 2, new_desc_blocks = 2
Performing an on-line resize of/dev/mapper/VGroup-Oracle_lv to 4846592 (4k) blocks.
The filesystem on/dev/mapper/VGroup-Oracle_lv is now 4846592 blocks long.
再次查看/dev/mapper/VGroup-Oracle_lv已经增加了500M
[root@localhost /]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VGroup-LogVol01
8.7G 2.5G 5.8G 31% /
tmpfs 2.0G 88K 2.0G 1% /dev/shm
/dev/sda1 194M 32M 152M 18% /boot
/dev/mapper/VGroup-Oracle_lv
19G 172M 18G 1% /u01