一、分区
fdisk /dev/sdb
#以下将硬盘/dev/sdb划分为两个主分区(不建扩展分区):/dev/sdb1、/dev/sdb2,类型为Linux、Linux LVM
[root@vm-centos7 ~]# fdisk /dev/sdbCommand (m for help): n #按"n"键新建一个分区 Partition type:p primary (0 primary, 0 extended, 4 free)e extended Select (default p): p #出现菜单:e表示扩展分区,p表示主分区;这里首先创建主分区 Partition number (1-4, default 1): 1 #输入分区号,1表示第一个主分区 First sector (2048-41943039, default 2048): #设置起始扇区,回车选择默认即可 Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +1G #设置末尾扇区,可通过+size{K,M,G}进行设置,这里设置为1G Partition 1 of type Linux and of size 1 GiB is setCommand (m for help): n Partition type:p primary (1 primary, 0 extended, 3 free)e extended Select (default p): p Partition number (2-4, default 2): #创建第二个主分区 First sector (2099200-41943039, default 2099200): Using default value 2099200 Last sector, +sectors or +size{K,M,G} (2099200-41943039, default 41943039): #大小默认到最大值,即硬盘剩余大小 Using default value 41943039 Partition 2 of type Linux and of size 19 GiB is setCommand (m for help): t #改变分区类型 Partition number (1,2, default 2): #选择改变/dev/sdb2分区类型 Hex code (type L to list all codes): 8e #调整为'Linux LVM',所有类型列表可通过'l'查看 Changed type of partition 'Linux' to 'Linux LVM'Command (m for help): p #查看该硬盘下的所有分区Disk /dev/sdb: 21.5 GB, 21474836480 bytes, 41943040 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: 0x1b95f623Device Boot Start End Blocks Id System /dev/sdb1 2048 2099199 1048576 83 Linux /dev/sdb2 2099200 41943039 19921920 8e Linux LVMCommand (m for help): w #保存并退出 The partition table has been altered!
#查看主机上所挂的硬盘大小及分区情况
fdisk -l
二、PV--物理卷
创建PV
pvcreate /dev/sdb2
查看PV详情
pvs
pvscan
pvdisplay
删除PV
pvremove /dev/sdb2
三、VG--卷组
创建VG
vgcreate appvg /dev/sdb2
查看VG详情
vgs
vgscan
vgdisplay
删除VG
vgremove appvg
扩展VG空间
vgextend appvg /dev/sdc
移除指定PV中的指定VG
vgreduce appvg /dev/sdc
四、LV--逻辑卷
创建LV
lvcreate -L 2G -n applv appvg
查看LV详情
lgs
lvscan
lvdisplay
格式化
mkfs.xfs /dev/appvg/applv #格式化为'xfs'格式,'/dev/appvg/applv'可通过lvdisplay查看
或
mkfs.ext4 /dev/appvg/applv #格式化为'ext4'格式
#可通过'df -T'查看当前系统使用的文件系统类型,再格式化成对应类型。
五、文件系统挂载
mkdir -p /app #首先创建目录
mount /dev/appvg/applv /app/ #挂载
将文件系统添加到开机自动挂载中
echo '/dev/mapper/appvg-applv /app xfs defaults 0 0' >>/etc/fstab
#'/dev/mapper/appvg-applv'可通过'df'查看'Filesystem'
六、xfs文件系统缩小
#说明:xfs文件系统只支持增大,不支持减小,如果要减小,必须在减小后重新格式化才能挂载上,因此必须先备份再减小。
#例子:文件系统/home目前为410G,较大,将其缩小为200G。
#调整前:
[root@bomc-node20 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/bel-root xfs 50G 3.7G 47G 8% / /dev/sda1 xfs 1014M 154M 861M 16% /boot /dev/mapper/bel-home xfs 410G 1.2G 409G 1% /home [root@bomc-node20 opt]# lvdisplay--- Logical volume ---LV Path /dev/bel/homeLV Name homeVG Name belLV UUID uyTIEv-IJHo-8a5D-dBx0-gzlT-wsUg-LUdkGmLV Write Access read/writeLV Creation host, time bomc-node20, 2018-05-04 13:47:39 +0800LV Status available# open 0LV Size 409.99 GiBCurrent LE 104957Segments 1Allocation inheritRead ahead sectors auto- currently set to 256Block device 253:2
1、使用xfsdump备份/home,首先安装xfsdump:
yum install xfsdump
2、执行备份,/opt下会生成备份文件home.xfsdump
xfsdump -l 0 -L home -M home -f /opt/home.xfsdump /home
3、卸除文件系统/home
umount /home
#如果报错:"umount: /home: target is busy."说明文件系统被进程占用,通过lsof或fuser查看
{
#安装命令:
yum install lsof
或
yum install psmisc
#检查:
lsof /home
或
fuser -m /home
#将输出结果显示的进程杀掉后,再卸除文件系统
kill -9 $PID
umount /home
}
4、缩小文件系统/home为200G
lvreduce -L 200G /dev/bel/home
5、格式化/home
mkfs.xfs -f /dev/bel/home
6、重新挂载/home
mount /dev/bel/home /home
7、将备份文件恢复至/home
xfsrestore -f /opt/home.xfsdump /home
#调整后
[root@bomc-node20 ~]# df -Th Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/bel-root xfs 50G 4.8G 46G 10% / /dev/sda1 xfs 1014M 154M 861M 16% /boot /dev/mapper/bel-home xfs 200G 1.2G 199G 1% /home [root@bomc-node20 ~]# lvdisplay--- Logical volume ---LV Path /dev/bel/homeLV Name homeVG Name belLV UUID uyTIEv-IJHo-8a5D-dBx0-gzlT-wsUg-LUdkGmLV Write Access read/writeLV Creation host, time bomc-node20, 2018-05-04 13:47:39 +0800LV Status available# open 1LV Size 200.00 GiBCurrent LE 51200Segments 1Allocation inheritRead ahead sectors auto- currently set to 256Block device 253:2
七、xfs文件系统扩展
扩展VG空间
vgextend appvg /dev/sdc
扩展LV
lvextend -L 3G /dev/mapper/appvg-applv //增大至3G
lvextend -L +1G /dev/mapper/appvg-applv //增加1G
调整文件系统
xfs_growfs /dev/mapper/appvg-applv
八、ext2/ext3/ext4文件系统大小调整
调整LV
lvextend -L 3G /dev/mapper/appvg-applv //增大至3G
lvextend -L +1G /dev/mapper/appvg-applv //增加1G
lvreduce -L 2G /dev/mapper/appvg-applv //减小至2G
lvreduce -L -1G /dev/mapper/appvg-applv //减小1G
调整文件系统
resize2fs /dev/mapper/appvg-applv //执行调整