赞
踩
【一】LVM原理:
LVM是逻辑盘卷管理(LogicalVolumeManager)的简称,它是Linux环境下对磁盘分区进行管理的一种机制,LVM是建立在硬盘和 分区之上的一个逻辑层,来提高磁盘分区管理的灵活性。通过LVM系统管理员可以轻松管理磁盘分区,如:将若干个磁盘分区连接为一个整块的卷组 (volumegroup),形成一个存储池。管理员可以在卷组上随意创建逻辑卷组(logicalvolumes),并进一步在逻辑卷组上创建文件系 统。管理员通过LVM可以方便的调整存储卷组的大小,并且可以对磁盘存储按照组的方式进行命名、管理和分配,例如按照使用用途进行定义:“development”和“sales”,而不是使用物理磁盘名“sda”和“sdb”。而且当系统添加了新的磁盘,通过LVM管理员就不必将磁盘的 文件移动到新的磁盘上以充分利用新的存储空间,而是直接扩展文件系统跨越磁盘即可。
*物理存储介质(PhysicalStorageMedia)【二】LVM 参数:
(1)【PV阶段参数】
vgchange vgchange命令用于修改卷组的属性,经常被用来设置卷组是处于活动状态或非活动状态。处于活动状态的卷组无法被删除,必须使用vgchange命令将卷组设置为非活动状态后才能删除;
例如: vgchange -ay vg1 #将卷组"vg1"设置为活动状态 (-an 设置为非活动状态 )
(3)【LV阶段参数】
lvchange Change attributes of a Logical Volume.
lvconvert Convert a Logical Volume from linear to mirror or snapshot.lvcreate 用于创建LVM的逻辑卷. -L:指定逻辑卷的大小,单位为“kKmMgGtT”字节;-l:指定逻辑卷的大小(PE数)。
lvceate [ -L l ] [-n LV 名称] VG 名称
lvdisplay Display attributes of a Logical Volume.lvextend 在线扩展逻辑卷的空间大
lvreduce 用于减少LVM逻辑卷占用的空间大小. 收缩逻辑卷的空间大小有可能会删除逻辑卷上已有的数据; -L:指定逻辑卷的大小,单位 为“kKmMgGtT”字节;-l:指定逻辑卷的大小(PE数)。
fdisk -l
#fdisk /dev/sda(..sdb..sdc..sdd) -----p---n--t--8e---p--w--- (设置硬盘的Linux LVM 8e)
/dev/sdb1 2048 2099199 1048576 8e Linux LVM
/dev/sdb2 2099200 4196351 1048576 8e Linux LVM
/dev/sdb3 4196352 6293503 1048576 8e Linux LVM
/dev/sdb4 6293504 10485759 2096128 8e Linux LVM
(1)创建PV:
[root@localhost ~]# pvcreate /dev/sdb1 //可以dev/sdb{1,2,3,4} Physical volume "/dev/sdb1" successfully created.
[root@localhost ~]# pvscan //查看PV信息 PV /dev/sda2 VG cl lvm2 [39.00 GiB / 0 free] PV /dev/sdb1 lvm2 [1.00 GiB]
[root@localhost ~]# pvdisplay #查看PV详细信息
--- Physical volume ---
PV Name /dev/sda2
VG Name cl
PV Size 39.00 GiB / not usable 3.00 MiB
Allocatable yes (but full)
PE Size 4.00 MiB
Total PE 9983
Free PE 0
Allocated PE 9983
PV UUID YWKAcK-TqHD-94kq-lzVi-8a2g-s188-dmtO2a
"/dev/sdb1" is a new physical volume of "1.00 GiB"
--- NEW Physical volume ---
PV Name /dev/sdb1
VG Name
PV Size 1.00 GiB
Allocatable NO
PE Size 0
Total PE 0
Free PE 0
Allocated PE 0
PV UUID NXJ7oB-BXpm-7FPx-2utQ-8qrA-z5Q5-99UlSw
[root@localhost ~]# pvremove /dev/sdb3 #删除PV Labels on physical volume "/dev/sdb3" successfully wiped.
--------------------------------------------------------------------------------------------
(2)创建VG
(1)vgcreate -s 8M v_vg /dev/sdb1 ##新建一个v_vg VG 指定一个PE为8M(默认4M)
[root@localhost ~]# pvdisplay
-- Physical volume ---
PV Name /dev/sdb1
VG Name v_vg
PV Size 1.00 GiB / not usable 8.00 MiB
Allocatable yes #是否已分配
PE Size 8.00 MiB #PE 8M
Total PE 127
Free PE 127 #没有被LV用掉的PE
Allocated PE 0 #尚可分配出去的PE数量
PV UUID NXJ7oB-BXpm-7FPx-2utQ-8qrA-z5Q5-99UlSw
[root@localhost ~]# vgdisplay #查看VG的信息
--- Volume group --- VG Name v_vg System ID Format lvm2 Metadata Areas 1 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 1 Act PV 1 VG Size 1016.00 MiB PE Size 8.00 MiB Total PE 127 Alloc PE / Size 0 / 0 Free PE / Size 127 / 1016.00 MiB VG UUID JbTWno-2lf1-KZjJ-PbA1-0e4w-QH16-BE6VvX
[root@localhost ~]# vgextend v_vg /dev/sdb2 #把PV加入VG中
--- Volume group ---
VG Name v_vg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 2
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 1.98 GiB #整体VG容量的大小
PE Size 8.00 MiB
Total PE 254
Alloc PE / Size 0 / 0 #分配出去的PE数量
Free PE / Size 254 / 1.98 GiB #没有分配出去的PE数量
VG UUID JbTWno-2lf1-KZjJ-PbA1-0e4w-QH16-BE6VvX
---------------------------------------------------------------------------------------
(2)创建LVlvcreate -L +1G -n v_home v_vg
格式化文件系统和挂载: mkfs.ext4 /dev/v_vg/v_home mount /dev/v_vg/v_home /mnt 备注:设备是放在/dev/mapper/目录下
【四】、放大LV容量和缩小LV容量
lvresize -L +400M /dev/v_vg/v_home #给添加400M
LV已经扩展到400M,但是文件没有相对的增加。
dumpe2fs /dev/v_vg/v_home
resize2fs /dev/v_vg/v_home ##完整的进行LV容量扩充到整个文件系统中。
缩小LV容量:
先卸载umount
e2fsck -f /dev/v_vg/v_home #进行磁盘检查
resize2fs /dev/v_vg/v_home 2G 调整LV大小并重建文件系统
lvresize -L -400M /dev/v_vg/v_home 减小LV容量
说明: 在xfs文件系统中,只能增大分区而不能减小。
resize2fs命令 针对的是ext2、ext3、ext4文件系统
xfs_growfs命令 针对的是xfs文件系统
xfs_repair进行修复
备注: 1)ext2/ext3/ext4文件系统的调整命令是resize2fs(增大和减小都支持)centos6图形界面: system-config-lvm
lvextend -L 120G /dev/v_vg/v_home //增大至120G
lvextend -L +20G /dev/v_vg/v_home //增加20G
lvreduce -L 50G /dev/v_vg/h_home //减小至50G
lvreduce -L -8G /dev/v_vg/v_home //减小8G
resize2fs /dev/v_vg/v_home //执行调整
2)xfs文件系统的调整命令是xfs_growfs(只支持增大)
lvextend -L 120G /dev/v_vg/h_home //增大至120G
lvextend -L +20G /dev/v_vg/h_home //增加20G
xfs_growfs /dev/v_vg/h_home //执行调整
则是有进程占用/home,使用如下命令来终止占用进程: fuser -m -k /home
xfs文件系统只支持增大分区空间的情况,不支持减小的情况(切记!!!!!)。硬要减小的话,只能在减小后将逻辑分区重新通过mkfs.xfs命令重新格式化才能挂载上,这样的话这个逻辑分区上1)查看分区空间。如下可知是xfs文件系统(df的-T参数就能看出文件格式)
2)使用vgdisplay命令查看系统上的空闲空间
xfs:
xfs相关常用命令
fs_admin: 调整 xfs 文件系统的各种参数
xfs_copy: 拷贝 xfs 文件系统的内容到一个或多个目标系统(并行方式)
xfs_db: 调试或检测 xfs 文件系统(查看文件系统碎片等)
xfs_check: 检测 xfs 文件系统的完整性
xfs_bmap: 查看一个文件的块映射
xfs_repair: 尝试修复受损的 xfs 文件系统
xfs_fsr: 碎片整理
xfs_quota: 管理 xfs 文件系统的磁盘配额
xfs_metadump: 将 xfs 文件系统的元数据 (metadata) 拷贝到一个文件中
xfs_mdrestore: 从一个文件中将元数据 (metadata) 恢复到 xfs 文件系统
xfs_growfs: 调整一个 xfs 文件系统大小(只能扩展)
xfs_freeze 暂停(-f)和恢复(-u)xfs 文件系统
xfs_logprint: 打印xfs文件系统的日志
xfs_mkfile: 创建xfs文件系统
xfs_info: 查询文件系统详细信息
xfs_ncheck: generate pathnames from i-numbers for XFS
xfs_rtcp: XFS实时拷贝命令
xfs_io: 调试xfs I/O路径
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。