创建物理卷 pvcreat /dev/sd{b,c} //建立物理卷 创建物理卷组 vgcreate vg1 /devsdb /dev/sdc //创建物理卷组vg1 创建逻辑卷 lvcreate -L 10G -n ggg vg1 //在vg0卷组上创建名为ggg,大小为10G的逻辑卷 (-L指定创建的LV大小,-l指定创建的LV的PE数量,-n是LV的名字)
逻辑卷创建成功但还不能使用,需要建立文件系统
建立文件系统
mkfs.xfs /dev/vg1/ggg //建立文件系统
挂载
mount /dev/vg1/ggg /mnt //挂载成功后就可以使用了
创建步骤
1.建立物理卷
[root@localhost ~]# pvcreate /dev/sd{b,c}
// 命令 设备名(物理卷名)
2.建立卷组
3. 建立逻辑卷
[root@localhost ~]# lvcreate -L 23G -n ky22 vg1
//创建逻辑卷命令 指定逻辑卷大小 创建逻辑卷名 从哪一个卷组中取pe
4.建立文件系统
mkfs.xfs /dev/vg1/ky22
//建立文件系统 vg1自己取的卷组名 ky22 自己取的逻辑卷名字
5.挂载
mount /dev/vg1/ky22 /mnt
挂载成功后可以使用
如何扩容:
xfs系统中的扩容:
情况一:vg足够扩展 lvextend -L +3G /dev/vg1/ky22
xfs_growfs /dev/vg1/ky22
情况二:vg不够拉伸,得先扩大设备再扩大系统
扩大设备: pvcreate /dev/vdd //创建物理卷/dev/vdd
vgextend vg1 /dev/vdd ##将新的物理卷vdd添加到现有的卷组vg1
扩展逻辑卷
lvextend -L +3G /dev/vg1/ky22
xfs_growfs /dev/vg1/ky22
ext4系统的扩容
[root@localhost ~]# umount /mnt ##先卸载
[root@localhost ~]# mkfs.ext4 /dev/vg0/lv0 ##格式化逻辑卷 ,并改系统为ext4
[root@localhost ~]# mount /dev/vg0/lv0 /mnt/ ##挂载
[root@localhost ~]# lvextend -L 1800M /dev/vg0/lv0 ##增加逻辑卷空间
Extending logical volume lv0 to 1.76 GiB Logical volume lv0 successfully resized
[root@localhost ~]# resize2fs /dev/vg0/lv0 ##更新逻辑卷信息
缩减逻辑卷空间
[root@localhost ~]# umount /mnt ##先卸载
[root@localhost ~]# e2fsck -f /dev/vg0/lv0 ##扫描逻辑卷上的空余空间
[root@localhost ~]# resize2fs /dev/vg0/lv0 1000M ##设备文件减少到1000M
[root@localhost ~]# lvreduce -L 1000M /dev/vg0/lv0 ##将逻辑卷减少到1000M
[root@localhost ~]# mount /dev/vg0/lv0 /mnt ##挂载
缩减vg:(迁移到闲置设备)
[root@localhost ~]# pvmove /dev/vdb1 /dev/vdb2 ##将vdb1的空间数据转移到vdb2
/dev/vdb1: Moved: 88.0%
/dev/vdb1: Moved: 100.0% ##转移数据成功
[root@localhost ~]# vgreduce vg0 /dev/vdb1 ##将/dev/vdb1分区从vg0卷组中移除
Removed "/dev/vdb1" from volume group "vg0"
[root@localhost ~]# pvremove /dev/vdb1 ##把/dev/vdb1分区从系统中删除
Labels on physical volume "/dev/vdb1" successfully wiped
注意:将vdb1的空间数据转移到vdb2时,要确保vdb2的足够的空间能将vdb1的数据转移,否则需要先将vdb1缩减。
磁盘配额
[root@localhost ~]# xfs_quota -x -c 'limit -u bsoft=20M bhard=30M isoft=5 ihard=6 zhangsan' /opt/log/
[root@localhost ~]# chmod 777 /opt/log/
[root@localhost ~]# su zhangsan
[zhangsan@localhost log]$ touch file{1..10}.txt
touch: 无法创建"file7.txt": 超出磁盘限额
touch: 无法创建"file8.txt": 超出磁盘限额
touch: 无法创建"file9.txt": 超出磁盘限额
touch: 无法创建"file10.txt": 超出磁盘限额
[zhangsan@localhost log]$ ls
file1.txt file2.txt file3.txt file4.txt file5.txt file6.txt
[zhangsan@localhost log]$ dd if=/dev/zero of=/opt/log/test.txt bs=1M count=20
记录了20+0 的读入
记录了20+0 的写出
[zhangsan@localhost log]$ dd if=/dev/zero of=/opt/log/test1.txt bs=1M count=20
dd: 写入"/opt/log/test1.txt" 出错: 超出磁盘限额
记录了11+0 的读入
记录了10+0 的写出
10485760字节(10 MB)已复制,0.00546079 秒,1.9 GB/秒
[zhangsan@localhost log]$ touch file{1..10}.txt
touch: 无法创建"file1.txt": 超出磁盘限额
touch: 无法创建"file2.txt": 超出磁盘限额
touch: 无法创建"file3.txt": 超出磁盘限额
touch: 无法创建"file10.txt": 超出磁盘限额
[zhangsan@localhost log]$ ls
test1.txt test.txt
[zhangsan@localhost log]$ rm -rf *
[zhangsan@localhost log]$ touch file{1..10}.txt
touch: 无法创建"file7.txt": 超出磁盘限额
touch: 无法创建"file8.txt": 超出磁盘限额
touch: 无法创建"file9.txt": 超出磁盘限额
touch: 无法创建"file10.txt": 超出磁盘限额
[zhangsan@localhost log]$ ls
file1.txt file2.txt file3.txt file4.txt file5.txt file6.txt