lvm 相关
定义相关信息
# 定义挂载点
mount_point='/data'
# 定义使用的磁盘
disk='/dev/sdb'
# 定义卷组名称
vg_name='vg_data'
# 定义逻辑卷名称
lv_name='lv_data'
创建LVM
# 创建挂载点目录
mkdir -p ${mount_point}
# 创建lvm并使用所有磁盘空间
pvcreate ${disk} &&
vgcreate ${vg_name} ${disk} &&
lvcreate -l100%Free -n ${lv_name} ${vg_name}
# 格式化
mkfs.xfs /dev/${vg_name}/${lv_name}
# 配置开机自动挂载
# dev="/dev/mapper/${vg_name}-${lv_name}" &&
# uuid=$(blkid | grep $dev | cut -d'"' -f2) &&
# echo "UUID=${uuid} ${mount_point} xfs defaults 0 0" >>/etc/fstab
# 或者使用这种方式
dev="/dev/mapper/${vg_name}-${lv_name}"
echo "UUID=$(lsblk -o UUID --noheadings ${dev}) ${mount_point} xfs defaults 0 0" >>/etc/fstab
挂载并查看
mount -a && df -h
LVM扩容
# 需要加入卷组的磁盘
ex_disk="/dev/sdc"
# 需要被扩容的卷组名称
vg_name="vg_data"
# 需要扩容的逻辑卷名称
lv_name="lv_data"
pvcreate ${ex_disk} &&
vgextend ${vg_name} ${ex_disk} &&
lvextend -l +100%Free /dev/${vg_name}/${lv_name} &&
xfs_growfs /dev/${vg_name}/${lv_name}
df -h
重装系统后重新挂载
vgchange -a y ${vg_name}
删除lvm
# 删除卷组
vg_name='vg_data'
vgremove ${vg_name}
# 删除pv
disk="/dev/sdb"
ex_disk="/dev/sdc"
pvremove ${disk}
pvremove ${ex_disk}
其他命令使用
lvreduce 命令
lvreduce
命令用于缩减 Linux 逻辑卷(Logical Volume)。使用该命令可以调整逻辑卷的大小,以便更好地管理磁盘空间。下面是 lvreduce
命令的常见选项和用法:
常规语法
lvreduce [options] <logical volume path>
常见选项说明
-L, --size
: 指定逻辑卷的新大小。-r, --resizefs
: 在缩减逻辑卷大小后自动调整文件系统大小。-t, --test
: 测试,并不实际执行操作。
示例
以下是一些 lvreduce
的使用示例:
1. 缩减逻辑卷的大小
sudo lvreduce -L -2G /dev/mapper/vg01-lv01
上述例子将 /dev/mapper/vg01-lv01
逻辑卷的大小缩小了 2GB。
2. 自动调整文件系统大小
如果您想在缩减逻辑卷大小后自动调整文件系统大小,请使用 -r
或 --resizefs
选项。
sudo lvreduce -L -2G -r /dev/mapper/vg01-lv01
上述例子将 /dev/mapper/vg01-lv01
逻辑卷的大小缩小了 2GB,并自动调整文件系统大小。
3. 只测试
如果您只想测试 lvreduce
命令是否能够成功缩小逻辑卷而不实际执行操作,请使用 -t
或 --test
选项。
sudo lvreduce -L -2G -t /dev/mapper/vg01-lv01
上述例子将测试 /dev/mapper/vg01-lv01
逻辑卷是否能够成功缩小 2GB。
e2fsck 命令
e2fsck
是一个用于检查和修复 ext2,ext3 或 ext4 文件系统中的错误的命令。它是一个非常重要的工具,可以在文件系统受到破坏时帮助恢复数据。
用法
默认情况下, e2fsck
命令需要以 只读模式 运行。这意味着它可以检查文件系统上的任何错误,但不能更改文件系统。要在发现错误时自动修复它们,请使用 -p
选项,如下所示:
sudo e2fsck -p /dev/sda1
如果希望手动确定哪些问题应该被修复,则可以使用 -y
选项与交互式模式一起使用:
sudo e2fsck -y /dev/sda1
要对文件系统进行完全检查并尝试修复所有问题,请使用以下命令:
sudo e2fsck -f /dev/sda1
如果需要,您还可以指定其他选项或参数,但请确保阅读官方文档并理解每个选项的含义和效果。
注意事项
- **不要在挂载的文件系统上运行
e2fsck
**。首先卸载该文件系统,然后再运行该命令。 - 如果检测到严重的问题,请考虑备份您的数据并格式化文件系统,这样能比继续使用故障文件系统更安全和可靠。
更多信息和用法,请参阅官方文档: e2fsck(8)
resize2fs
resize2fs
命令用于调整ext2、ext3或ext4文件系统的大小,以匹配缩小或扩展的逻辑卷的大小。 在更改逻辑卷之后,必须使用此命令来通知文件系统进行扩展或收缩。
语法如下:
resize2fs [options] device [new_size]
其中,device
是要扩展或缩小的块设备或文件系统。 新大小可以直接通过new_size
参数给出或使用选项指定。 例如,-M
选项可以将文件系统缩小到最小可能的大小,而-p
选项将在调整大小时显示进度条。
例如,如果您已经缩小了逻辑卷/dev/vg01/lvol1
的大小,并希望相应地缩小其上的文件系统,请先使用e2fsck
命令检查文件系统,并使用以下命令调整文件系统大小:
resize2fs /dev/vg01/lvol1 10G