在linux中合​​并分区而不丢失数据

在linux中合​​并分区而不丢失数据

我使用的是 CentOS 7。我的数据位于vdb2. ,我没有数据vdb3。是否可以合并所有 4 个分区并分配一个挂载点(/data1)而不丢失数据?vddvde

[user@hbase2 ~]$ lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sr0     11:0    1  1024M  0 rom  
vda    253:0    0    50G  0 disk 
└─vda1 253:1    0    50G  0 part /
vdb    253:16   0   450G  0 disk 
├─vdb1 253:17   0  46.6G  0 part /mnt/10.1.14.83
├─vdb2 253:18   0 372.5G  0 part /data1
└─vdb3 253:19   0  30.9G  0 part 
vdc    253:32   0    20G  0 disk 
├─vdc1 253:33   0     4G  0 part /home
├─vdc2 253:34   0     4G  0 part /var/tmp
├─vdc3 253:35   0     4G  0 part /var/log
├─vdc4 253:36   0     4G  0 part /var/log/audit
└─vdc5 253:37   0     4G  0 part /var
vdd    253:48   0    20G  0 disk 
vde    253:64   0   250G  0 disk
[user@hbase2 ~]$ df -h
Filesystem      Size  Used Avail Use% Mounted on
/dev/vda1        50G   36G   15G  71% /
devtmpfs        3.9G     0  3.9G   0% /dev
tmpfs           3.9G     0  3.9G   0% /dev/shm
tmpfs           3.9G  385M  3.5G  10% /run
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/vdc5       3.9G  333M  3.4G   9% /var
/dev/vdc2       3.9G   16M  3.6G   1% /tmp
/dev/vdc3       3.9G  113M  3.5G   4% /var/log
/dev/vdb1        46G   53M   44G   1% /mnt/10.1.14.83
/dev/vdc1       3.9G  222M  3.5G   6% /home
/dev/vdc4       3.9G   82M  3.6G   3% /var/log/audit
/dev/vdb2       367G  242G  106G  70% /data1
tmpfs           783M     0  783M   0% /run/user/1002

答案1

是的,您可以使用 LVM 将四个块设备放入一个池中,从中您可以为文件系统创建逻辑卷/data

  1. vdd在和上创建分区vde。技术上不需要,但推荐。
  2. 使用三个未使用的分区创建 LVM 卷组:vgcreate vg0 /dev/vdb3 /dev/vdd1 /dev/vde1
  3. 创建逻辑卷:lvcreate -l 100%FREE -n data1 vg0
  4. 在逻辑卷上创建文件系统。例如,使用 ext4: mkfs.ext4 -L DATA1 /dev/mapper/vg0-data1`
  5. /data1以只读模式远程文件系统,以使复制文件更安全: umount /data&& mount -o ro /data1`
  6. 将新文件系统挂载到临时位置:mkdir /mnt/foo && mount -L DATA1 /mnt/foo
  7. 将文件复制/data1到临时安装点:cp -av /data1/ /mnt/foo/
  8. 进行修改/etc/fstab,以便它/data1从新文件系统(步骤 3 中的逻辑卷)安装。
  9. 重新启动并交叉手指。
  10. 验证新文件系统是否已安装在/data1
  11. 一旦您满意,就可以回收旧分区了:wipefs /dev/vdb2 && vgextend vg0 /dev/vdb2 && lvextend vg0/data1 -r -l +100%FREE

相关内容