我刚刚全新安装了包含 3 个磁盘的 Centos 7 系统。最终结果如下:
[root@nas /]# fdisk -l
Disk /dev/sda: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x000a491f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 2099199 1048576 83 Linux
/dev/sda2 2099200 3907028991 1952464896 8e Linux LVM
Disk /dev/sdb: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x00031210
Device Boot Start End Blocks Id System
/dev/sdb1 2048 3907028991 1953513472 8e Linux LVM
Disk /dev/sdc: 2000.4 GB, 2000398934016 bytes, 3907029168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk label type: dos
Disk identifier: 0x000839dc
Device Boot Start End Blocks Id System
/dev/sdc1 2048 3907028991 1953513472 8e Linux LVM
Disk /dev/mapper/centos_nas-root: 53.7 GB, 53687091200 bytes, 104857600 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/centos_nas-swap: 4026 MB, 4026531840 bytes, 7864320 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk /dev/mapper/centos_nas-home: 5942.4 GB, 5942389243904 bytes, 11606228992 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
以及一个 fstab:
[root@nas /]# cat /etc/fstab
#
# /etc/fstab
# Created by anaconda on Mon Dec 3 19:45:04 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/centos_nas-root / xfs defaults 0 0
UUID=f62f73ae-52eb-49b8-9d40-2cc274c89112 /boot xfs defaults 0 0
/dev/mapper/centos_nas-home /home xfs defaults 0 0
/dev/mapper/centos_nas-swap swap swap defaults 0 0
最终,我希望第一个磁盘是“系统磁盘”,并带有 / 等的挂载点。
然后我希望第二个 (/dev/sdb) 和第三个磁盘 (/dev/sdc) 作为
/disk-2
/disk-3
这样我就有了 3 个带有各自文件系统的独立磁盘。
由于我不明白如何在不破坏所有内容的情况下“撤消” LVM,因此我希望有人能够好心地让我调用命令来获取我请求的分区方案?
答案1
如果您需要询问该方法,那么您可能不应该尝试该方法。
该配方(显然没有经过测试,仅供粗略指导,而不是逐字复制)大致如下:
- 首先备份您的数据并验证/测试您的恢复功能
很大程度上取决于物理磁盘当前如何分配给 LVM 卷组、有多少空间是空闲的或分配给 LVM 逻辑卷的、以及文件系统有多大以及其中有多少数据。(pvdisplay
vgdisplay
lvdisplay
)
如果安装程序留下了大量未分配的可用磁盘空间,您可以通过让 LVM 迁移数据来做很多事情,但如果没有,您就会面临额外的困难,因为据我所知,XFS 文件系统只能增大,不能缩小,您将手动备份数据并删除 LVM 分区以创建空白空间。
您需要能够拥有/创建足够的“可用”空间,以便可以从 LVM 中删除 /dev/sda2。然后:
/dev/sda2
请求 LVM 从底层物理磁盘中删除所有数据pvmove /dev/sda2
/dev/sda2
使用以下命令从 LVM 中删除vgreduce centos_nas /dev/sda2
和pvremove /dev/sda2
为了正确性:更改 sda 上的分区标签,使 /dev/sda2 变为“Linux”,而不是“Linux LVM”,
fdisk /dev/sda
创建新的文件系统
mkfs.xfs /dev/sda2
挂载新的文件系统
mkdir /mnt/temp
并mount /dev/sda2 /mnt/temp
将数据从当前根文件系统复制到新的根文件系统:
tar --one-file-system -lcf - .|(cd /mnt/temp; tar -xpvf - )
或与您选择的备份工具类似更改 grub 配置
/boot
和新的 fstab/mnt/temp/etc/fstab
以用作/dev/sda2
根文件系统
重启
希望最好的
移动根文件系统后,您可以随意移动其他 LVM 卷中的数据