我同时拥有 Debian Jessie 64 位和 Windows 10,我想增加根分区(在我的配置中称为 sda5)的大小。我安装了 0.19 版的 gparted,但它不允许我更改任何分区的大小。我试图先缩小主分区,然后扩展根分区,它会自动设置以前的值。当我尝试减小单个分区的大小时,它会自动设置以前的值。他显示最小值等于最大值。 为什么 gparted 不起作用?
我也尝试通过命令行执行此操作:
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: gpt
Disk identifier: 0AE14023-D392-11E6-8283-B4774F0AF981
Device Start End Sectors Size Type
/dev/sda1 2048 1845248 1843201 900M Windows recovery environment
/dev/sda2 1845249 2050049 204801 100M EFI System
/dev/sda3 2050050 2312194 262145 128M Microsoft reserved
/dev/sda4 2312195 332339202 330027008 157.4G Microsoft basic data
/dev/sda5 332341248 346011647 13670400 6.5G Linux filesystem
/dev/sda6 346011648 351870975 5859328 2.8G Linux filesystem
/dev/sda7 351870976 368355327 16484352 7.9G Linux swap
/dev/sda8 368355328 369135615 780288 381M Linux filesystem
/dev/sda9 369135616 500117503 130981888 62.5G Linux filesystem
我之前读到过分区必须是连续的。我想将根分区从主分区增加 5GB。我需要更改根分区 (sda5) 和主分区 (sda9) 之间每个分区的大小吗?
我还尝试根据这篇文章删除交换分区: https://askubuntu.com/questions/492054/how-to-extend-my-root-partition
但sudo resize2fs /dev/sda
不会增加根分区的大小,因为它们之间有 var 分区。我再次创建了交换分区以恢复以前的状态。我该怎么办?请帮忙。
答案1
为啥
gparted
不起作用?
因为您试图影响正在使用的分区。屏幕截图左侧的关键图标指示了此类分区。
我还没有尝试确认这一点。我害怕出错,gparted
导致分区在使用过程中损坏。然而此评论并回答这个问题支持我的主张。特别是Rod Smith 的回答正是你需要知道的(顺便说一句,据我所知,Rod 是的创建者gdisk
):
GParted 不会调整当前正在使用的任何分区,但它应该能够更改当前未安装的分区并在磁盘的未分区区域中创建新分区。在某些情况下,您可以卸载已安装的分区(事实上,GParted 可以做到这一点),但您永远无法卸载根 (
/
) 分区,也可能无法卸载其他分区。如果需要调整它们,您需要从实时 CD 启动以编辑分区。一些其他工具(例如文本模式
fdisk
和gdisk
)确实使您能够编辑正在使用的分区;但是,这些工具不支持文件系统调整大小,并且如果您编辑正在使用的分区,内核将不会在您重新启动后使用这些更改。
不过,我对最后一句话的评论是:如果您编辑正在使用的分区而不相应地更改其文件系统,那么在您重新启动后,这些文件系统可能会损坏或根本无法挂载。这是因为fdisk
修改的只是一个分区表——一张告诉我们特定分区从哪里开始和结束的地图。更改地图只会让内核“认为”文件系统(和交换,如果已更改)现在位于不同的地方。如果不实际移动它们,您就会产生差异,这很容易导致数据丢失。