一、添加新硬盘,并分区
1.虚拟机添加2块10G新硬盘。
2.重启虚拟机,使用fdisk -l | grep "Disk /dev/sd" 即可查看物理硬盘个数
[root@bogon ~]# fdisk -l | grep "Disk /dev/sd"
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
Disk /dev/sdc: 10.7 GB, 10737418240 bytes, 20971520 sectors
相当于服务器上有3块物理硬盘
3.fdisk -l 可以查看物理硬盘使用信息
4.fdisk /dev/sdc 对sdc物理硬盘进行分区
输入p回车,将会显示出sdc分区情况,如下,可以看出此硬盘并未分区
输入n回车进行分区,会出现以下提示,其中p表示主分区,e表示拓展分区,拓展分区最多只能有一个,与主分区总计不能超过4个分区
输入p回车,准备创建一个主分区
输入1回车,设置主分区编号为1,First sector 默认从2048开始而不从1开始参考此链接http://tieba.baidu.com/p/2162330956
输入2048回车或者直接回车都是默认第一个分区是从2048开始
输入+2G回车,说明第一个分区大小为2G,如果直接回车则会直接把sdc硬盘分区为一个大分区
输入p回车,则会看到刚才创建的第一个分区
输入m回车,第一个2G的主分区正式创建完成。
若创建第二个分区,以此类推(一个硬盘最多只能有4个分区,最多只能有一个拓展分区)
二、LVM动态管理磁盘
1.查看所有分区
[root@bogon ~]# fdisk -l | grep "/dev/sd"
Disk /dev/sda: 21.5 GB, 21474836480 bytes, 41943040 sectors
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 41943039 19921920 8e Linux LVM
Disk /dev/sdb: 10.7 GB, 10737418240 bytes, 20971520 sectors
/dev/sdb1 2048 2099199 1048576 83 Linux
/dev/sdb2 2099200 6293503 2097152 83 Linux
Disk /dev/sdc: 10.7 GB, 10737418240 bytes, 20971520 sectors
/dev/sdc1 2048 4196351 2097152 83 Linux
/dev/sdc2 4196352 14682111 5242880 83 Linux
2.根据硬盘的分区用pvcreate命令创建PV
[root@bogon ~]# pvcreate /dev/sdb1 /dev/sdb2 /dev/sdc1 /dev/sdc2
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdb2" successfully created.
Physical volume "/dev/sdc1" successfully created.
Physical volume "/dev/sdc2" successfully created.
注:执行命令若出现“Device /dev/sda3 not found (or ignored by filtering).”,先将分区的ID转换成8e(LVM分区类型).
输入t进入修改分区,输入3对第三个分区进行修改,输入8e改为8e格式,输入w保存退出,重启系统即可pvcreate。
3.用pvs命令查看有哪些PV(输入pvdisplay则可以查看PV详细信息)
[root@bogon ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda2 centos lvm2 a-- <19.00g 0
/dev/sdb1 lvm2 --- 1.00g 1.00g
/dev/sdb2 lvm2 --- 2.00g 2.00g
/dev/sdc1 lvm2 --- 2.00g 2.00g
/dev/sdc2 lvm2 --- 5.00g 5.00g
4.用vgcreate命令创建VG时,必须带一个物理卷。创建2个VG名为vg_sdb,vg_sdc 并将/dev/sdb1、/dev/sdc1分别加入VG。
root@bogon ~]# vgcreate vg_sdb /dev/sdb1
Volume group "vg_sdb" successfully created
[root@bogon ~]# vgcreate vg_sdc /dev/sdc1
Volume group "vg_sdc" successfully created
5.用vgs查看有哪些VG
[root@bogon ~]# vgs
VG #PV #LV #SN Attr VSize VFree
centos 1 2 0 wz--n- <19.00g 0
vg_sdb 1 0 0 wz--n- 1020.00m 1020.00m
vg_sdc 1 0 0 wz--n- <2.00g <2.00g
6.用lvcreate创建LV
[root@bogon ~]# lvcreate -L 1G -n vg_sdc_lv1 vg_sdc
Logical volume "vg_sdc_lv1" created.
[root@bogon ~]# lvcreate -L 500M -n vg_sdb_lv1 vg_sdb
Logical volume "vg_sdb_lv1" created.
7.用lvs查看哪些lv
[root@bogon ~]# lvs
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
root centos -wi-ao---- <17.00g
swap centos -wi-ao---- 2.00g
vg_sdb_lv1 vg_sdb -wi-a----- 500.00m
vg_sdc_lv1 vg_sdc -wi-a----- 1.00g
8.要想存放数据在逻辑卷,必须用mkfs.xfs/mkfs.ext4等命令格式化逻辑卷.
[root@bogon ~]# mkfs.xfs /dev/vg_sdc/vg_sdc_lv1
meta-data=/dev/vg_sdc/vg_sdc_lv1 isize=512 agcount=4, agsize=65536 blks
= sectsz=512 attr=2, projid32bit=1
= crc=1 finobt=0, sparse=0
data = bsize=4096 blocks=262144, imaxpct=25
= sunit=0 swidth=0 blks
naming =version 2 bsize=4096 ascii-ci=0 ftype=1
log =internal log bsize=4096 blocks=2560, version=2
= sectsz=512 sunit=0 blks, lazy-count=1
realtime =none extsz=4096 blocks=0, rtextents=0
9.挂载格式化后的lv
[root@bogon /]# mount /dev/vg_sdc/vg_sdc_lv1 /app
注:当/app下有数据时,在重新挂载/app到其他lv时,再切换到/app下时数据将不存在(会出现lost+found),因为之前的数据存在其他的分区中,不存在新挂载的分区,只有卸载分区后,/app回到原来的分区才可以恢复之前的数据。
10.使用df -hT 命令可以查看挂载后的信息
11.手动挂载后重启后需要重新再次挂载,在/etc/fstab最后加入 /dev/mapper/vg_sdc-vg_sdc_lv1 /app xfs defaults 0 0 重启则不需要重新挂载。
#
# /etc/fstab
# Created by anaconda on Tue Apr 9 09:42:06 2019
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos-root / xfs defaults 0 0
UUID=18bef4d0-83e5-46fd-be79-5f065f381f18 /boot xfs defaults 0 0
/dev/mapper/centos-swap swap swap defaults 0 0
/dev/mapper/vg_sdc-vg_sdc_lv1 /app xfs defaults 0 0
参考链接:https://www.cnblogs.com/the-study-of-linux/p/5390082.html