我正在尝试减少专用于 root LVM 的空间,因为我真的不需要它,而且我有一些疑问。以下是输出lvdisplay
:
# lvdisplay
--- Logical volume ---
LV Path /dev/pc_rperez_lvm/root
LV Name root
VG Name pc_rperez_lvm
LV UUID m7XejM-82cZ-hODn-nT8H-y2BM-3B4s-lq2xgn
LV Write Access read/write
LV Status available
# open 1
LV Size 72.37 GiB
Current LE 18527
Segments 1
Allocation inherit
Read ahead sectors auto
- currently set to 256
Block device 253:0
--- Logical volume ---
LV Path /dev/pc_rperez_lvm/home
LV Name home
VG Name pc_rperez_lvm
LV UUID Ehl9tF-XV30-uF4Y-T1Bc-WB8r-Pfim-ONQFn3
LV Write Access read/write
LV Status available …
Run Code Online (Sandbox Code Playgroud) 多年来,我一直在个人服务器中开发 Raid5 阵列,现在是时候转向更适合此应用程序的东西了。我已经积累了 6 个 8tb 驱动器,其中包含媒体、备份等。
我买了一台 Synology 8 托架设备来容纳我的所有驱动器,但现在我正尝试跨区域移动数据,这就是麻烦开始的地方......
我额外购买了一台 8tb 设备,Raid5 中的一台设备出现故障,然后使用这两台设备在 Synology 上创建 Raid1 卷。Synology 允许在添加另一个驱动器(或 5 个)时将 Raid1 升级到 Raid5。我已将 8 tb 的数据移至此新驱动器,并使用了现有的每一点存储空间,从原始 40 tb Raid 卷中清除了总共 16 tb 的数据。
现在的计划是将原始卷减少到 24tb,将 Raid5 重塑为 3+2 Raid6,对额外的两个驱动器进行故障处理并将它们添加到 Synology,然后移动大部分剩余空间。重复一遍,所有数据都应该包含在内。
/dev/md127 挂载在 /srv/media 上,包含 LVM 中的 vg_data/lv_media。首先,卸载卷。
umount /srv/media
Run Code Online (Sandbox Code Playgroud)
在继续之前确保 fs 是健康的
e2fsck -ff /dev/vg_data/lv_media
Run Code Online (Sandbox Code Playgroud)
将 LVM 中的逻辑卷减少可用量 (16tb)
lvreduce -L -16t -r -v vg_data/lv_media
Run Code Online (Sandbox Code Playgroud)
检查 LVM 创建段的位置(正如我多年来分配的那样,lv_media 不再是连续的)
pvs -v --segments /dev/md127
Run Code Online (Sandbox Code Playgroud)
有些段位于物理卷的末端,中间有空闲空间间隙。手动将尾部移动到距离驱动器开头更近的间隙。这可能涉及分割段或创建新段,但就我而言,我只需移动一个段即可释放足够的空间。
pvmove --alloc …
Run Code Online (Sandbox Code Playgroud)