我想知道一些事情:
背景
我有一台带有 2 个 HDD(每个 500GB SATA)的机器。 /dev/sda
只包含不常用的 Windows10 游戏。 /dev/sdb
包含我当前的 Gentoo + Systemd + KDE 安装,通过 Grub2 启动。由于我的安装时间已超过 3 年,我的分区图(如下所示)是“旧式”MS-DOS,即不超过 4 个主分区,具有 DOS 式 MBR - 非 UEFI。
问题
- 我想知道是否可以将此布局转换为 LVM无数据丢失,如果是这样,我该怎么做?
- 我想将我的
/home
目录中的文件放在单独的分区上。我应该在开始#1 之前这样做吗?我是否缩小/复制/安装,或者只是安装/home
在我创建的空白空间中? - 创建完所有这些后,我想将 1 和 2 一起视为一个卷。那可能吗?
- 为了在完成后启动它,我需要做些什么不同的事情吗?
更新
在尝试下面接受的答案时,我丢失了所有数据。我想让大家知道这是由于用户错误和 LVM 缺乏经验, 和不是因为答案不正确。当我应该回答“否”时我却回答“是”像这样,并从我的根分区上删除了签名。 执行此操作后,我重新开始,我的系统现在如下所示:
# /etc/fstab: static file system information.
# Extraneous comments removed
#
# <fs> <mountpoint> <type> <opts> <dump/pass>
# NOTE: If your BOOT partition is ReiserFS, add the notail option to opts.
/dev/sdb1 /boot ext4 noauto,noatime 1 2
/dev/gentoo/root / btrfs noatime 0 1
/dev/gentoo/home /home btrfs noatime 0 0
/dev/gentoo/swap none swap sw 0 0
/dev/cdrom /mnt/cdrom auto noauto,ro 0 0
/dev/fd0 /mnt/floppy auto noauto 0 0
# glibc 2.2 and above expects tmpfs to be mounted at /dev/shm for
# POSIX shared memory (shm_open, shm_unlink).
shm /dev/shm tmpfs nodev,nosuid,noexec 0 0
Grub2 现在启用了 LVM,Gentoo 现在是我能得到的最纯粹的 systemd,仅在我的本地网络上运行 XFCE 和 SSHd,因此我可以从我的笔记本电脑上安装、调整和编译。我仍然不太明白 Gentoo 阵营中关于为什么 systemd 比 sysVinit 更差的争论,但这本身就是另一个问题了。请注意,我无法将磁盘转换为 GPT,因为操作系统探测器/grub2 无法从 GPT 启动,并且仍然读取我的 MS-DOS Windows 分区。因此,我完成了我的问题,然后是一些问题。现在我的系统已恢复,我可以再次以任何方式提供帮助
答案1
我想您可以将该单个分区更改为 LVM 卷,因为您有足够的可用空间来容纳内容的另一个副本。
我在想这样的事情:
resize2fs
文件系统变小。- 删除交换分区并将根分区调整为较小的大小
- 创建一个新分区,从中创建一个 LVM PV(并在其上创建一个 VG 和一个 LV)。
- 复制所有内容,将系统更改为从 LVM 启动。 (并确保其正常工作。)
- 擦除旧分区并将其也变成 PV。将其添加到 VG 中。
- 在 VG 中创建您喜欢的任何其他 LV,例如单独的
/home
.
但您可以...吗不等于你应该。上面的内容足够棘手,我会费心去尝试,而且最终结果会有点难看,因为你在一个磁盘上有两个 PV(避免可能需要更多的洗牌)。如果您可以从一个磁盘移动到新磁盘,同时保持旧磁盘不变且安全,那就更容易、更安全。
(哦,还有,备份.)