首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将PV1的LVM移动到PV2

将PV1的LVM移动到PV2
EN

Unix & Linux用户
提问于 2020-07-25 04:26:50
回答 1查看 147关注 0票数 0

如何将sda3上的LVM移动/合并到sda2?问题是vg1-var和vg1-opt驻留在这两个PV上,所以pvmove不会做到这一点。

代码语言:javascript
运行
复制
sda                          8:0    0   80G  0 disk
├─sda1                       8:1    0  300M  0 part /boot
├─sda2                       8:2    0   37G  0 part
│ ├─vg1-root         253:0    0    5G  0 lvm  /
│ ├─vg1-swap         253:1    0    4G  0 lvm  [SWAP]
│ ├─vg1-usr          253:2    0    8G  0 lvm  /usr
│ ├─vg1-home         253:4    0    2G  0 lvm  /home
│ ├─vg1-var          253:5    0  6.7G  0 lvm  /var
│ ├─vg1-tmp          253:6    0   10G  0 lvm  /tmp
│ └─vg1-opt          253:7    0    5G  0 lvm  /opt
└─sda3                       8:3    0 42.7G  0 part
  ├─vg1-var          253:5    0  6.7G  0 lvm  /var
  └─vg1-opt          253:7    0    5G  0 lvm  /opt
代码语言:javascript
运行
复制
  PV         VG    Fmt  Attr PSize    PFree
  /dev/sda2  vg1   lvm2 a--    37.00g       0
  /dev/sda3  vg1   lvm2 a--   <42.70g   39.00g
EN

回答 1

Unix & Linux用户

回答已采纳

发布于 2020-07-25 11:44:08

最简单的方法是临时附加一个新驱动器,然后pvmove /dev/sda3结束。这将使您能够增长/dev/sda2,并将一切都移回原处。

如果这是不可能的,您将不得不在您的驱动器内的数据洗牌。由于对齐问题,相邻的PV通常不能直接合并,所以您仍然要移动所有东西两次。

您的/dev/sda3是42.7G大,有39G免费,所以~3.7G使用。因此,您应该能够将/dev/sda3缩小到4G,以便在磁盘末尾生成一个新的/dev/sda4大小为4G:

代码语言:javascript
运行
复制
pvresize /dev/sda3 --setphysicalvolumesize 37G
parted /dev/sda -- resizepart 3 -4G
parted /dev/sda -- mkpart primary -4G -1

将所有数据移动到新分区:

代码语言:javascript
运行
复制
vgextend vg1 /dev/sda4
pvmove /dev/sda3
vgreduce vg1 /dev/sda3

删除现在空闲的/dev/sda3并相应地增长/dev/sda2

代码语言:javascript
运行
复制
parted /dev/sda -- rm 3
parted /dev/sda -- resizepart 2 -4G
pvresize /dev/sda2

将所有内容从/dev/sda4移动到现在足够大的/dev/sda2

代码语言:javascript
运行
复制
pvmove /dev/sda4
vgreduce vg1 /dev/sda4

此时,VG只使用单个PV,即/dev/sda2

删除现在空闲的/dev/sda4并再次增长/dev/sda2

代码语言:javascript
运行
复制
parted /dev/sda -- rm 4
parted /dev/sda -- resizepart 2 -1
pvresize /dev/sda2

注意,这些步骤非常粗糙,在某些时候可能会失败,因此您必须相应地进行调整。特别是parted命令不应该盲目运行,要始终验证parted /dev/sda print freevgslvspvslsblk、.

如果没有充分的理由把事情搞乱,我就按原样离开。这是很多麻烦,没有什么好处。拥有多个PV也具有优势,例如额外的元数据副本。

票数 2
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/600245

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档