我使用 LVM (逻辑卷管理)组合这2块硬盘使之成为200G大分区用作备份盘。
不是200G云硬盘我买不起,是买100G一块更有性价比!做活动选项只有100G和1000G选项,一年只要129元,如果后台直接买的话100G一个要接近400元一年,买200G要690元
控制台挂载云硬盘
访问轻量应用服务器
-云硬盘控制台 https://console.cloud.tencent.com/lighthouse/cbs/index 逐个挂载硬盘(挂载时选择“到期后不进行任何操作”)
先用宝塔磁盘管理挂载工具把两个磁盘都挂载上然后卸载(变相分区)挂载成功后登陆服务器,执行
fdisk -l
即可查看已挂载的磁盘。.
Disk /dev/vdb: 100 GiB, 107374182400 bytes, 209715200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disklabel type: gpt Disk identifier: 1B68D3CC-DF70-4FDB-81D6-B4B4E2A041C8 Device Start End Sectors Size Type /dev/vdb1 2048 209713151 209711104 100G Linux filesystem Disk /dev/vdc: 100 GiB, 107374182400 bytes, 209715200 sectors Units: sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes
其中 /dev/vdb是系统盘, /dev/vdb1 和 dev/vdc 为新购买的云磁盘。
三、使用 LVM 创建文件系统 /main (这里不用,因为我在宝塔后台使用宝塔磁盘管理挂载工具已经格式化并已经分区好了+)
pvcreate /dev/vdb
pvcreate /dev/vdc
pvcreate /dev/vdd
使用 pvcreate 命令创建 PV
pvcreate /dev/vdb1
pvcreate /dev/vdc1
创建成功的输出如下:
root@debian:~# pvcreate /dev/vdb
Physical volume "/dev/vdb1" successfully created.
root@debian:~# pvcreate /dev/vdc
Physical volume "/dev/vdc1" successfully created.
使用 pvs 命令查看所有的 PV:
root@debian:~# pvs PV VG Fmt Attr PSize PFree /dev/vdb1 lvm2 --- <100.00g <100.00g /dev/vdc1 lvm2 --- <100.00g <100.00g
使用 vgcreate 命令创建 VG
vgcreate 100GX2 /dev/vdb1 /dev/vdc1
其中 100GX2 为 VG 名称,可以自定义
创建成功的输出如下:
[root@VM-0-9-opencloudos ~]# vgcreate 100GX2 /dev/vdb1 /dev/vdc1 Volume group "100GX2" successfully created
使用 vgs 命令查看所有的 VG,使用 vgdisplay
命令查看所有的 VG 的详细信息:
[root@VM-0-9-opencloudos ~]# vgs VG #PV #LV #SN Attr VSize VFree 100GX2 2 0 0 wz--n- 199.99g 199.99g [root@VM-0-9-opencloudos ~]# vgdisplay --- Volume group --- VG Name 100GX2 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 1 VG Access read/write VG Status resizable MAX LV 0 Cur LV 0 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 199.99 GiB PE Size 4.00 MiB Total PE 51198 Alloc PE / Size 0 / 0 Free PE / Size 51198 / 199.99 GiB VG UUID KtGSL2-2VMq-1rYa-CJvF-6FTJ-QGK8-gLPGJf
VG 名称为 100GX2 ,由 PV /dev/vdb1 和 /dev/vdc1 组成。
故目前 VG main 的大小为 /dev/vdb1和/dev/vdc1 的大小的总和。
使用 lvcreate 命令创建 LV
创建含 49750 个 PE 块,每个 PE 块为 4MiB 的 LV
lvcreate -l 49750 -n 200Gdisk 100GX2
其中 100GX2 为上一步创建的文件系统名称,200Gdisk 为 LV 名称,可以自定义,49750 为 PE 数量,可以自定义,PE 数量*PE 大小(默认 4MiB)=LV 大小,最大值为上一步显示的 Total PE。填写最大值,即代表使用该 VG 的全部空间 (199.99TiB)。
创建成功的输出如下:
[root@VM-0-9-opencloudos ~]# lvcreate -l 49750 -n 100GX2disk 100GX2 Logical volume "100GX2disk" created.
使用 lvs 命令查看所有的 LV,使用 lvdisplay 命令查看所有的 LV 的详细信息:
[root@VM-0-9-opencloudos ~]# lvs LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert 200Gdisk 100GX2 -wi-a----- <194.34g [root@VM-0-9-opencloudos ~]# lvdisplay --- Logical volume --- LV Path /dev/100GX2/200Gdisk LV Name 200Gdisk VG Name 100GX2 LV UUID WxvdKS-6leo-O4wY-nC1v-kBaw-EDLc-gKPtBp LV Write Access read/write LV Creation host, time VM-0-9-opencloudos, 2025-09-28 12:21:58 +0800 LV Status available # open 0 LV Size <194.34 GiB Current LE 49750 Segments 2 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:0
(如果创建的LV想删除重新创建可以使用如下方法
1.确认当前系统中的LV和VG信息 使用lvdisplay和vgdisplay命令查看逻辑卷和卷组详情:
[root@VM-0-9-opencloudos ~]# lvdisplay --- Logical volume --- LV Path /dev/100GX2/100GX2disk LV Name 100GX2disk VG Name 100GX2 LV UUID LwVmVz-8O3h-T3TX-S4yf-1Trs-gY3I-3NnmJ4 LV Write Access read/write LV Creation host, time VM-0-9-opencloudos, 2025-09-28 12:07:37 +0800 LV Status available # open 0 LV Size 19.43 GiB Current LE 4975 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:0 --- Logical volume --- LV Path /dev/100GX2/200Gdisk LV Name 200Gdisk VG Name 100GX2 LV UUID fEHrxI-yfRR-ljzJ-FMVH-BEcl-PTjG-6MBYGh LV Write Access read/write LV Creation host, time VM-0-9-opencloudos, 2025-09-28 12:08:01 +0800 LV Status available # open 0 LV Size 19.43 GiB Current LE 4975 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:1 [root@VM-0-9-opencloudos ~]# vgdisplay --- Volume group --- VG Name 100GX2 System ID Format lvm2 Metadata Areas 2 Metadata Sequence No 3 VG Access read/write VG Status resizable MAX LV 0 Cur LV 2 Open LV 0 Max PV 0 Cur PV 2 Act PV 2 VG Size 199.99 GiB PE Size 4.00 MiB Total PE 51198 Alloc PE / Size 9950 / <38.87 GiB Free PE / Size 41248 / 161.12 GiB VG UUID KtGSL2-2VMq-1rYa-CJvF-6FTJ-QGK8-gLPGJf
2 卸载逻辑卷(如果已挂载)
使用umount命令卸载逻辑卷对应的挂载点:sudo umount /dev/<vg_name>/<lv_name> 例如: sudo umount /dev/100GX2/lv_data
3 删除逻辑卷(LV)
使用lvremove命令删除逻辑卷,需确认卷组名称和逻辑卷名称:
lvremove /dev/<vg_name>/<lv_name>lvremove /dev/100GX2/100GX2disk系统会提示确认删除,输入y后回车:
lvremove /dev/100GX2/100GX2disk # 输出示例: # Do you really want to remove active logical volume vg_example/lv_data? [y/n]: y # Logical volume "lv_data" successfully removed lvremove /dev/100GX2/200Gdisk
删除卷组(VG)
确保卷组内无逻辑卷后,使用vgremove命令删除卷组:sudo vgremove <vg_name> 系统会提示确认删除,输入y后回车: sudo vgremove vg_example # 输出示例: # Volume group "vg_example" successfully removed验证删除结果
再次运行vgdisplay和lvdisplay,确认卷组和逻辑卷已不存在。
注意事项:
数据备份:删除操作会永久清除数据,务必提前备份重要数据。
依赖关系:若卷组被其他逻辑卷或系统服务使用,需先解除依赖。
物理卷(PV)处理:若需进一步清理物理卷,可使用pvremove命令(需先删除所有关联的VG)。
演示:#!/bin/bash # 卸载逻辑卷(假设挂载点为/mnt/data) sudo umount /mnt/data || echo "未挂载或卸载失败" # 删除逻辑卷 sudo lvremove /dev/vg_example/lv_data -y # 删除卷组 sudo vgremove vg_example -y # 验证(可选) sudo vgdisplay 2>/dev/null || echo "卷组已删除" sudo lvdisplay 2>/dev/null || echo "逻辑卷已删除")
格式化 LV
mkfs -t ext4 /dev/100GX2/200Gdisk
其中 100GX2 为上一步创建的 VG 名称,200Gdisk 为上一步创建的 LV 名称
输出:
[root@VM-0-9-opencloudos ~]# mkfs -t ext4 /dev/100GX2/200Gdisk mke2fs 1.47.0 (5-Feb-2023) Creating filesystem with 50944000 4k blocks and 12738560 inodes Filesystem UUID: e872d065-c42c-4746-a159-8708dbdc4ed2 Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872 Allocating group tables: done Writing inode tables: done Creating journal (262144 blocks): done Writing superblocks and filesystem accounting information: done
四、挂载
使用 blkid 或 lsblk -o name,uuid 查看各分区 UUID
[root@VM-0-9-opencloudos ~]# blkid /dev/sr0: BLOCK_SIZE="2048" UUID="2025-04-07-17-52-12-00" LABEL="config-2" TYPE="iso9660" /dev/vda1: UUID="4fa1be21-8bfa-475f-a4bf-d8f45038051b" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="c4d0cac2-01" /dev/vdb1: UUID="dMp73S-kwjr-Y0of-2Jop-LYUa-hZp2-5RrJOo" TYPE="LVM2_member" PARTLABEL="1" PARTUUID="047f6b0e-03be-469a-95ea-223918f43b35" /dev/mapper/100GX2-200Gdisk: UUID="e872d065-c42c-4746-a159-8708dbdc4ed2" BLOCK_SIZE="4096" TYPE="ext4" /dev/vdc1: UUID="W0l6kp-mZeS-erSd-HjHU-cXyd-MvHc-d6W86L" TYPE="LVM2_member" PARTLABEL="1" PARTUUID="e4edd4ed-47ae-4993-a8ae-44dbc0ce9b24" [root@VM-0-9-opencloudos ~]# lsblk -o name,uuid NAME UUID sr0 2025-04-07-17-52-12-00 vda └─vda1 4fa1be21-8bfa-475f-a4bf-d8f45038051b vdb └─vdb1 dMp73S-kwjr-Y0of-2Jop-LYUa-hZp2-5RrJOo └─100GX2-200Gdisk e872d065-c42c-4746-a159-8708dbdc4ed2 vdc └─vdc1 W0l6kp-mZeS-erSd-HjHU-cXyd-MvHc-d6W86L └─100GX2-200Gdisk e872d065-c42c-4746-a159-8708dbdc4ed2
新建挂载点空文件夹,例如 /www/200Gdisk
mkdir -p /www/200Gdisk
编辑 /etc/fstab 文件,在底部加入一行
UUID=e872d065-c42c-4746-a159-8708dbdc4ed2 /www/200Gdisk ext4 errors=remount-ro 0 1
其中,e872d065-c42c-4746-a159-8708dbdc4ed2 为 /dev/mapper/main-maindisk 的 UUID,/www/200Gdisk 为上一步创建的挂载点,保存之。
执行 mount -a 挂载,并执行 echo $? 查验,若返回 0,则挂载完成。
[root@VM-0-9-opencloudos ~]# mount -a [root@VM-0-9-opencloudos ~]# echo $? 0
会更好
发表评论