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

前端之家收集整理的这篇文章主要介绍了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

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

猜你在找的Linux相关文章