创建swap空间:
dd if=/dev/zero of=/tmp/newdisk bs=1M count=100
if指定从哪里去读,/dev/zero是linux内核里的造0器
/dev/zero 就是一个特殊设备,里面有源源不断的“0”
if指定源设备
of指定目标设备(在这里,我们创建了一个文件,作为一个模拟的设备)
bs:指定块大小
count:数量
这个问题会影响正常工作,所以把它放到/下
dd if=/dev/zero of=/newdisk bs=1M count=100创建完成,需要格式化
mkswap -f /newdisk格式化
swapon /newdisk 把它加载到现在的swap上去,他会提示权限不安全,但是依然挂载上去了,然后我们修改它的权限。
swapoff /newdisk 卸载
free -m 查看swap大小
lvm讲解
做实验首先准备磁盘分区,
1、fdisk /dev/sdb
2、n创建三个新分区,分别1G
3、t改变分区类型为8e
然后执行pvcrreate /dev/sdb1,创建物理卷,
但是有时候会遇到个问题,创建分区完了之后没有文件,所以无法创建物理卷,时候可以执行
partprobe命令,他会自动生成文件
pvdispaly 查看系统当前的所有物理卷。
pvs命令也可以查看当前所有的物理卷,而且更直观。
物理卷创建完成了,然后创建卷组。
vgcreate vg1 /dev/sdb1 /dev/sdb2
vgs 查看卷组 vgremove 删除卷组的命令
然后再创建逻辑卷:
lvcreate -L 100M -n lv1 vg1(-L指定大小,-n指定名字,从vg1组里面划分出来)
然后格式化:mkfs.ext4 /dev/vg1/lv1
然后再挂载:mount /dev/vg1/lv1 /mnt
挂载的文件名称发生改变,他们都指向同一个文件。
扩容逻辑卷
1、扩容之前首先把挂载的磁盘umount /mnt/
2、lvresize -L 200M /dev/vg1/lv1 :重新设置大小
3、e2fsck -f /dev/vg1/lv1 检查磁盘错误(ext4执行)
4、resize2fs /dev/vg1/lv1 更新逻辑卷信息(ext4执行)
针对xfs文件系统需要执行:
首先umount /mnt/
mkfs.xfs -f /dev/vg1/lv1 (用xfs文件系统格式化)
mount /dev/vg1/lv1 /mnt (重新挂载)
touch /mnt/123.txt(创建一个文件,在这里做实验创建一个文件,等扩容完成后查看文件是否被损坏)
echo “qwert” > /mnt/123.txt(写东西到文件去)
lvresize -L300M /dev/vg1/lv1 (重新设置大小)
lvs(查看逻辑卷大小,在这里查看的大小已经变了)
df -h (这里查看的大小还没变)
xfs_growfs /dev/vg1/lv1(执行完这个命令之后,逻辑卷的大小就真正改变)
df -h(这里的大小已经改变)
文件没有损坏。
缩减逻辑卷(xfs不支持)
1、首先还是umount
2、e2fsck -f /dev/vg1/lv1 检查磁盘错误(ext4执行)
3、resize2fs /dev/vg1/lv1 100M 更新逻辑卷信息(ext4执行)
4、lvresize -L 100M /dev/vg1/lv1 重新设置卷大小
总结:ext4扩容和缩减逻辑卷需要卸载逻辑卷才能操作,xfs不能缩减逻辑卷,扩容逻辑卷不用卸载逻辑卷。
扩容卷组
实验中我们创建了3个物理卷,1和2组成了一个卷组,现在把3加入到这里面来,就完成了扩容卷组,
vgextend vg1 /dev/sdb3 就可以了,可以看到卷组vg1扩容到10G了。然后就可以去扩容逻辑卷了。
故障小案例
在做lvm实验中,我们在/etc/fstab配置文件中添加了最后一行配置文件,
实验做完之后,重启就会出现这样的故障,删除我们添加的配置文件就可以了