Loading

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
posted @ 2023-02-21 17:11  小维江湖  阅读(8)  评论(0编辑  收藏  举报