linux – 将非条带LVM LV更改为条带化LV

我目前在卷组(VG)上有几个逻辑卷(LV).此VG托管在单个物理卷(PV)上.我有一个备用驱动器,我可以用来随机播放数据.

我现在还有一个与我原来的光伏驱动器相匹配的新驱动器.我想移动现有的LV并最终在两个PV上划分LV.这可能吗?你怎么做呢?

解决方法

看来这不可能来自命令行.条带化与认的线性分配方案完全不同.因此,虽然您可以跨多个物理卷(PV)增长文件系统,但您无法获得条带化的“负载平衡”优势.

要扩展文件系统,你可以这样做:

pvcreate /dev/mapper/md2_crypt
vgextend crypto /dev/mapper/md2_crypt
umount /dev/mapper/crypto-srv
fsck.ext4 -C0 -f /dev/mapper/crypto-srv
lvresize -l +100%FREE /dev/mapper/crypto-srv
resize2fs /dev/mapper/crypto-srv
mount /srv

在上面的示例中,md2_crypt是RAID-1阵列之上的加密卷,但它可以是任何设备. crypto是卷组(VG),crypto-srv是保存安装在/ srv上的文件系统的逻辑卷.

Reminder: you should really use at least a RAID-1 array because if a PV fails in a linear logical volume (LV),you can loose all the data.

这不会使/ srv分区跨PV条带化.这是因为there are no userland tools to support linear to striped conversions.逻辑上,这将在lvconvert命令中,但是它仅支持从线性模式转换为镜像模式,例如.随着所有新开发进入BTRFS,如果有记录,我会感到惊讶.

但是,您可以做的一件事是将驱动器上的新数据条带化.这是相当棘手的,但它可以做到.让我们假设我们想条纹crypto-tmp,LV为/ tmp.我们首先需要为第一个PV中的条纹释放空间:

pvmove -n crypto/tmp /dev/mapper/md1_crypt

这将在PV中重新分配LV,在我的情况下,它将所有内容移动到第二个PV:

root@foo:~# pvs --segments -o+lv_name,seg_start_pe,segtype
  PV                    VG     Fmt  Attr PSize PFree  Start SSize  LV   Start Type
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 10.00g     0   2384 root     0 linear
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 10.00g  2384    256 swap     0 linear
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 10.00g  2640   2560          0 free
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 10.00g  5200 709901 srv      0 linear
  /dev/mapper/md2_crypt crypto lvm2 a--  1.82t  1.81t     0   2560 tmp      0 linear
  /dev/mapper/md2_crypt crypto lvm2 a--  1.82t  1.81t  2560 474077          0 free

现在你可以扩展文件系统(比如我们将它的大小加倍)并告诉LVM对新数据进行条带化:

root@foo:~# lvresize -i 2 -l 5120 /dev/crypto/tmp
  Using default stripesize 64.00 KiB
  Extending logical volume tmp to 20.00 GiB
  Logical volume tmp successfully resized

现在,/ tmp的新数据在两个PV上进行了条带化​​:

root@foo:~# pvs --segments -o+lv_name,segtype
  PV                    VG     Fmt  Attr PSize PFree Start SSize  LV   Start Type
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 5.00g     0   2384 root     0 linear
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 5.00g  2384    256 swap     0 linear
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 5.00g  2640   1280 tmp   2560 striped
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 5.00g  3920   1280          0 free
  /dev/mapper/md1_crypt crypto lvm2 a--  2.73t 5.00g  5200 709901 srv      0 linear
  /dev/mapper/md2_crypt crypto lvm2 a--  1.82t 1.80t     0   2560 tmp      0 linear
  /dev/mapper/md2_crypt crypto lvm2 a--  1.82t 1.80t  2560   1280 tmp   2560 striped
  /dev/mapper/md2_crypt crypto lvm2 a--  1.82t 1.80t  3840 472797          0 free

但原始数据仍处于线性模式.可以将文件系统移动到条带范围,但此时要考虑对读者进行练习.

相关文章

1、安装Apache。 1)执行如下命令,安装Apache服务及其扩展包...
一、先说一下用ansible批量采集机器信息的实现办法: 1、先把...
安装配置 1. 安装vsftpd 检查是否安装了vsftpd # rpm -qa | ...
如何抑制stable_secret读取关键的“net.ipv6.conf.all.stabl...
1 删除0字节文件 find -type f -size 0 -exec rm -rf {} ...
## 步骤 1:安装必要的软件包 首先,需要确保系统已安装 `dh...