4.10/4.11/4.12 lvm 讲解
4.13 磁盘故障小案例
4.10/4.11/4.12 lvm 讲解
LVM(logical volume manager 逻辑卷管理), 主要用于扩容或缩容磁盘.
如图所示, 假设有两块硬盘 a 和 b
a 划分了 2 个分区 b 划分了 1 个分区.
然后可以把这三个分区组成一个物理卷 physical(实际上就是磁盘分区, 磁盘分区形成物理卷).
然后在物理卷的基础上组成卷组 (物理卷的集合, 可以有 1 个也可以有两个).
再在卷组的基础上划分出逻辑卷.
最终再逻辑卷的基础上格式化, 挂载到系统上去用.
操作步骤:
1. 首先准备磁盘分区
(n 创建三个新分区分别 1G, 然后 t 改变分区类型为 8e)
fidsik /dev/sdb 再 p 查看
目前是没有分区的, 创建 3 个 1G 的分区, n p
id 是 83, 意味着是普通的分区, 用 t 分别改变成 8e 就是 LVM 的 id, 这样才能够做物理卷
这样 3 个 id 都是 8e,linux LVM 就可以做物理卷了. w 保存退出
fdisk -l 看一下
3 个都 LVM 8e
2: 创建物理卷
pvcreate 命令创建物理卷, 把三个分区都创建成物理卷
未找到命令 lvm 还没有安装.
先安装 lvm
安装包的名字错误.
当想安装一个包 确有忘记名字的时候可以这样
现在忘记了包名字, 知道这个命令是 pvcreate, 可以根据这个命令去搜
provides 后面跟的是一个命令的绝对路径,* 是通配的意思 (因为这个路径目前是把握不准确的).
搜索结果出来后可以看到 这个包的名字是 lvm2, 安装这个包
因为他依赖很多包 所以东西比较多.
安装完成
继续上面的操作 pvcreate /dev/sdb1
如果出现这个状况
实际上有三个分区的, 但是系统里面这些文件还不存在
需要运行一个命令 partprobe
然后就有了, 就是自动生成意思.
正常情况
运行后提示按 y
同样的 再执行一下 sdb2 和 sdb3
物理卷创建完成
然后可以用 pvdisplay 看查系统里所有的物理卷
还可以用 pvs 来查看 更直观
继续创建物理卷组
vgcreate 命令. 先用两个物理卷创建一个卷组, 组名为 vg1
vgdisplay(更详细) 或 vgs 看查卷组的信息
2 个 G 没问题
vgremove(删除卷组的命令)
有了卷组后就可以创建逻辑卷
命令格式: lvcreate -L 大小 -n 名字 从哪个组分离, 选择 100M , 名字 lv1
同样 lvdisplay 或者 lvs 查看
然后开始格式化, 这里做 ext4 格式
完成之后挂载到 / mnt / 下
df -h 看一下
按理来说应该挂载到 mnt 下 , 却变成 mapper. 名字变了. ls -l /dev/vg1/lv1 看一下
实际上他们指向了同一个文件 dm-0
然后在 mnt 下创建一个目录一个文件, 并写入一串数字
3: 扩容和缩容
逻辑卷存在的价值是因为能够很容易的扩容和缩容, 多数用的是扩容
扩容命令 lvresize -L 200M /dev/vg1/lv1(原来是 100M 现在扩容到 200M)
先把挂载取消掉 umount /mnt/, 然后再执行这个操作
然后做一个检测磁盘错误的命令 e2fsck -f /dev/vg1/lv1
然后更新逻辑卷信息 (不更新的话在挂载时候无法识别新的大小)
resize2fs /dev/vg1/lv1
然后重新挂载一下
ls /mnt/
原先创建的文件没有丢失
然后是缩容 (xfs 是不支持的)
先 umount /mnt/ 取消挂载
然后检测磁盘有无错误 e2fsck -f /dev/vg1/lv1
再更新逻辑卷 resize2fs /dev/vg1/lv1 100M(改成一百兆)
最后重新设置卷的大小 lvresize -L 100M /dev/vg1/lv1 (步骤与扩容大致相同)
同样 lvs 或 lvdisplay 看一下是不是变成 100M 了
然后去挂载就完成了 mount
ls /mnt/
文件依然存在
缩容也不会使文件丢失 (假如只有 100M, 文件也是 100M 刚好, 再缩容那就会出问题)
接下来看 xfs 的扩容 (缩容不支持)
前面有两个命令 e2fsck -f /dev/vg1/lv1 和 resize2fs/dev/vg1/lv1 都是仅仅针对 ext4 的
重新格式化
挂载
重新格式化后原来的文件就没了, 重新创建几个文件
lvs 可以看到现在逻辑卷是 100m
lvresize -L 300M /dev/vg1/lv1(扩容成 300M)
df -h 看一下
依旧还是 100M, 如果想让他变成 300M 还需要执行 xfs_growfs /dev/vg1/lv1, 然后再 df -h 看一下
变成 300M 了, 这就是 xfs 的扩容.
扩展卷组 (逻辑组怎么扩容都只能扩容到卷组那么大, 逻辑卷空间耗完就要去扩容卷组)
前面只用了 2 个卷组 第三个 sdb3 没有用.
vgextend vg1 /dev/sdb3
然后 vgs 或 vgdisplay 看一下
变 3 个 G 了
再去扩容卷组
lvresize -L 100M /dev/vg1/lv1 (重新设置卷大小) 就可以了
4.13 磁盘故障小案例
无法正常运行比如
像这个情况很可能是磁盘的挂载出现了问题, 无法正常加载
(前面修改过 / etc/fastab 这个配置文件)
先输入 root 密码就可以进入到类似正常的界面.
最后一行删掉按到最后一行按 dd 就可以了.
退出来之后 reboot 重启 ok 没问题了
来源: http://www.bubuko.com/infodetail-2559139.html