在双引导系统上使用未使用的 Windows 分区空间增加 Linux 分区

在双引导系统上使用未使用的 Windows 分区空间增加 Linux 分区

我有一个带 Fedora 27 和 Windows 10 的双引导系统。我的 linux 卷组(即分区)上的空间不足,而且我没有未分配的空间。我读到我可能需要 Gparted,它也许resize2fs可以用来增加 linux 分区(参考文献1,参考文献2)但所有这些情况都涉及扩展已存在未分配空间的根分区。

输出df -h

Filesystem               Size  Used Avail Use% Mounted on
devtmpfs                 3.9G     0  3.9G   0% /dev
tmpfs                    3.9G  192M  3.7G   5% /dev/shm
tmpfs                    3.9G  2.0M  3.9G   1% /run
tmpfs                    3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/mapper/fedora-root   43G   32G  8.1G  80% /
tmpfs                    3.9G   14M  3.9G   1% /tmp
/dev/sda5                976M  196M  713M  22% /boot
tmpfs                    789M   16K  789M   1% /run/user/42
tmpfs                    789M   11M  778M   2% /run/user/1000
tmpfs                    789M     0  789M   0% /run/user/0

和输出fdisk -l

Disk /dev/sda: 238.5 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xb72b0508

Device     Boot     Start       End   Sectors   Size Id Type
/dev/sda1  *         2048   1026047   1024000   500M  7 HPFS/NTFS/exFAT
/dev/sda2         1026048 395909025 394882978 188.3G  7 HPFS/NTFS/exFAT
/dev/sda3       498311168 500113407   1802240   880M 27 Hidden NTFS WinRE
/dev/sda4       395909120 498311167 102402048  48.8G  5 Extended
/dev/sda5       395911168 398008319   2097152     1G 83 Linux
/dev/sda6       398010368 498311167 100300800  47.8G 8e Linux LVM

Partition table entries are not in disk order.


Disk /dev/mapper/fedora-root: 43 GiB, 46103789568 bytes, 90046464 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes


Disk /dev/mapper/fedora-swap: 4.9 GiB, 5247074304 bytes, 10248192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

我的分区是: 在此输入图像描述

Windows 10 有 80 GB 的可用空间。我想从 Windows 中取出 70 GB 并将其提供给 fedora。如何在不丢失一个或两个操作系统和任何数据的情况下执行此操作?我可以先缩小窗口以创建未定位空间,还是应该在 Windows 分区内创建 70 GB 的分区?如果是这样,我可以在 Windows 内执行此操作,否则如果我必须使用 Gparted,我可以将其下载到包含其他文件的外部硬盘驱动器上,还是需要一个空白记忆棒?

我的 Linux 分区是在使用 rufus 安装 fedora 之前在 Windows 中创建的,我有大约 5 GB 的交换空间。如果可能的话,我还想增加交换的大小以匹配我的 RAM 大小,因为我发现我的系统往往会用完所有交换分区。

答案1

您可以使用 Windows 磁盘管理器本身来减少 Windows 分区 C(其中有 80G 可用空间)。

完成后,我认为您将无法将新未分配的空间添加到 LVM,但您可以创建一些新分区,然后将其安装在 Linux 中以保存特定安装点上的数据(/home 或其他)。

答案2

我最终使用了终端,但在此之前我使用 GParted live 来缩小 Windows 分区以创建未分配的空间。 GParted 的问题是,将这个未分配的空间添加到扩展分区后,我的引导分区位于这个新空间和我的逻辑卷组之间,所以我切换到更容易使用的命令行。

这就是我所做的:

在切换到终端之前,我首先将未分配的空间转换为名为 的分区/dev/sda7。我在 GParted 中执行此操作并选择了 ext4。

现在请记住以下内容仅适用于 lvm。

  1. 创建物理卷

    pvcreate /dev/sda7
    
  2. 扩展卷组以利用此物理卷

    vgextend fedora /dev/sda7
    

    注意:我通过运行命令找到了我的卷组名称:vgdisplayvgs也有效。

  3. 激活逻辑卷以使其可用,以便文件系统检查和调整大小正常工作。

    lvchange -ay /fedora/root
    

    或者

    vgchange -ay
    

    -a选项代表激活,-y意味着在所有现有设备上,因此它看起来无处不在。

  4. 我执行了文件系统检查以确保没有错误。这实际上发现了一些错误并修复了它。

    e2fsck /dev/fedora/root
    
  5. 调整文件系统的大小

    resize2fs -l 100%FREE /dev/fedora/root
    

    如果您想按绝对数字增加大小,50 GB请使用该-L选项。

  6. 再次执行另一次文件系统检查以修复任何错误

    e2fsck /dev/fedora/root
    

    lsblk您现在可以通过运行或类似的显示分区的命令来检查您的根目录是否已扩大。

之后,我还将交换逻辑卷增加了超过50%,尽管步骤略有不同,但它同样简单,例如不需要,e2fsck因为它仅适用于 ext 2、3、4 文件系统。

相关内容