我有以下情况:
。
我想调整 ntfs 分区的大小。具体来说,我想将其增加 15 GB。最佳操作顺序是什么?
sudo fdisk -l /dev/sda
和 的输出sudo fdisk -l /dev/sdb
答案1
确保文档和其他重要文件的备份是最新的。您可能会犯错误,或者在动态分区调整大小期间可能会丢失数据。完成后,从 Ubuntu Live CD/DVD/USB 启动,选择尝试 Ubuntu,然后运行 GParted 分区编辑器。
从 中获取空间/dev/sda7
是最简单的,因为它需要的调整大小/移动操作比从 中获取要少/dev/sda5
。反过来,这是因为您的/dev/sda7
分区更接近/dev/sda2
(扩展分区容器)的起始(左)边界,并且必须移动该边界。
右键单击
/dev/sda7
(您的 Ubuntu 分区/
),然后单击调整大小/移动。从左边收缩——也就是说,增加前面有空闲空间。将其减少到您希望 Windows 分区增加的量。请注意,您不一定能够将 Windows 分区精确地增加到该量(取决于对齐问题),但它会非常接近。
/dev/sda6
现在和之间有空格/dev/sda7
。右键单击
/dev/sda6
(您的 linux-swap 分区),然后单击调整大小/移动. 将其尽可能向右滑动,使其再次齐平/dev/sda7
(或尽可能接近)。现在,扩展分区的最开始处有未分配的空间。
右键单击
/dev/sda2
(扩展分区)。从列表中选择它比从代表磁盘的水平栏中选择它要容易得多。单击调整大小/移动。从左边收缩——也就是说,增加前面有空闲空间。现在,扩展分区外面有未分配的空间,位于 Windows 分区的右侧。
这是您期待已久的时刻。扩展 Windows 分区 (
/dev/sda1
) 以填充该空间:右键单击它,单击缩放/移动,并在右侧展开——也就是说,减少自由空间跟随。单击复选标记以应用您的更改,并希望一切顺利。完成后,退出 GParted。
您不一定需要将 Ubuntu 的 GRUB2 引导加载程序重新安装到主引导记录,但只要您已经启动到实时环境,您也可能需要这样做。(否则,在发现 GRUB 无法很好地启动 Ubuntu……或启动任何东西后,您可能必须重新启动到实时 CD/DVD/USB 来执行此操作。)
打开终端窗口 ( Ctrl+ Alt+ T) 并运行以下命令将 GRUB2 重新安装到 MBR(它是这种技术,但填写了适合您系统的正确值):
sudo mount /dev/sda7 /mnt # For other folks: Replace sda7 with your / device.
sudo grub-install --root-directory=/mnt /dev/sda
sudo umount /mnt
从理论上来说,你的 Windows 系统也可能需要修复,但是不太可能, 因为:
GRUB2 负责引导至 Windows 引导加载程序(位于其分区的引导扇区中,而不是 MBR 中)。它仍然存在且完好无损。
这就是 Windows 系统几乎肯定会没问题的真正原因。如果您对次要因素感兴趣,请继续阅读...
Windows 分区仍然从磁盘上的同一位置开始。
Windows 分区刚刚向右侧扩展,因此其所有文件都位于磁盘上的同一位置。
某些 Windows 7 系统为引导加载程序设置了单独的分区(与
/boot
某些 Ubuntu 和其他类 Unix 系统上的分区类似,但不完全相同)。您的系统没有。因此,sda1
对于 Windows 系统是否正常工作而言,没有任何外部因素重要。GRUB2 将控制权传递给 中的引导加载程序sda1
,从那时起,一切都与以前相同。
如果您的 Windows 系统确实停止启动并且您必须修复它,您可以从 Windows 安装 DVD/USB(包括试用版 DVD/USB)上的恢复控制台进行修复。
但您可能根本不需要调整分区大小。
现在我已经提供了有关调整分区大小的详细说明,我想建议一种替代方法。
我猜您想扩展 Windows 主分区,因为您需要将更多内容放入应该位于该分区而不是其他分区的文件夹中。
但是,您有另一个 NTFS 分区(逻辑分区,位于扩展分区中,位于 Ubuntu 分区的右侧),其中有大量可用空间。
所以你可以NTFS 连接在您的小型 Windows 分区中,其目标文件夹位于大型逻辑 NTFS 分区中。
例如,可以将内部文件夹Program Files
(甚至是Program Files
其本身!)移至更大的 NTFS 分区,并在其位置创建一个连接点,指向大分区上的该文件夹。
或者看看“如何创建和操作 NTFS 连接点”,其中解释了如何使用linkd
和delrp
命令来创建和销毁连接点。或者您可能更喜欢命令junction
,你可以在这里获取(Windows 7 还支持另一种符号链接,请参阅本文和mklink
。
NTFS 目录连接与 ext4 和其他 Unix 风格文件系统中的符号链接非常相似。但要小心!目录连接像目录一样解析,即使在 *nix 符号链接像文件一样解析的情况下也是如此。例如:
- 删除连接点,就像删除文件或文件夹一样,删除它指向的内容(或者至少删除内容它指向什么。)
- 如果某个目录
C:\foo
包含一个目录,而该目录又包含指向 的qux
连接点,并且您以递归方式删除或(例如,通过在 Windows 资源管理器中+删除该文件夹),那么其中包含的所有内容都会被删除。bar
D:\baz
foo
qux
ShiftDeleteD:\baz
- 移至(将会
C:\foo\qux
如此)C:\
C:\qux
移动D:\baz
以及其中的D:
一切C:
!
NTFS 连接不会在 Ubuntu 中造成问题。Ubuntu 的 NTFS 文件系统驱动程序 NTFS-3G 是与它们兼容(尽管它们被视为 Unix 风格的符号链接,这意味着它们的行为与 Windows 上的行为略有不同)。
有关创建和管理连接点(或其他形式的符号链接,如 Windows 7 中添加的)的详细信息或建议在 Windows 中,你应该询问 Windows 支持的地方,例如超级用户(并且,至少在我看来,如果您决定使用它们,您应该使用 Windows 来制作它们,即使理论上可以在 Ubuntu 中这样做。)但我想介绍一下调整分区大小的一个好替代方法。
答案2
免责声明
在继续操作之前,请做好系统无法启动的准备。获取一个Knoppix
、一个 Win7 恢复磁盘和一个知道如何从损坏的Grub2
/Win7 引导加载程序中恢复的人。
好的,这应该是最简单的解决方案。调整大小/dev/sda5
以接近 165Gb。您将在磁盘末尾得到一个可用的 30Gb 分区。在那里,您可以复制主 NTFS 分区 ( /dev/sda1
) 并调整其大小以填充空白空间。
gparted
完成后,隐藏第一个分区( /dev/sda1
)并grub2
立即更新配置(sudo update-grub
)。
grub2
如果 Win7正常工作,那么从磁盘末尾的逻辑分区启动应该不会有问题。但是,Win7 本质上是不可预测的,所以要做好准备。
祝你好运!