如何轻松添加更多交换以便我可以休眠笔记本电脑?

如何轻松添加更多交换以便我可以休眠笔记本电脑?

我在笔记本电脑上安装了 Natty,使用的是默认选项。我猜它创建了一个与我的 RAM 大小相同的交换分区。每次我尝试休眠时,都会收到“交换空间不足”的消息,这很烦人。我想休眠!为什么不能只使用我的 20GB 可用 HD 空间中的部分空间来休眠?我这个老家伙只有 1GB RAM。

我已查看交换常见问题解答@http://help.ubuntu.com/community/SwapFaq但它太难懂了。它向我展示了如何创建交换文件并打开它,但没有解释以下内容:

  1. 系统是否会休眠到该交换文件,或者是否会因为交换分区存在并且太小而仍然感到困惑?
  2. 我需要删除交换分区吗?我并不急需空间,但我想重新利用它,因为这台电脑的硬盘很小。
  3. 这一切为何如此困难?

谢谢!

答案1

我认为最好的方法就是增加交换分区的大小。

使用 Ubuntu Live CD/USB 启动您的计算机。

实时 CD 将检测并使用您的交换,您应该禁用它才能对其进行操作。打开终端并输入以下命令:

sudo swapoff -a

之后,打开 Gparted,调整分区大小。您需要缩小一些靠近它的分区。这应该很简单。

您将需要从某种外部方法启动,因为您无法调整正在使用的分区的大小,并且很可能需要缩小主分区。

现在其他的问题:

  1. 是的。

  2. 如果您使用交换文件,那么是的,您可以摆脱交换分区。但我相信使用交换分区更容易。这也是 Linux 中的标准做法,您可以在网上找到的大多数教程都会期待它。

  3. 在任何操作系统中,新手都不应该乱动交换。无需让事情变得简单。

答案2

我终于解决了这个问题。当然,要回答我的问题中“为什么这一切都这么难?”的部分,我只需要回答“这是 Linux,你这个傻瓜,当然一切都很难!”

步骤如下:

  1. 启动 Ubuntu 安装 CD(我在 Natty 上)并选择立即运行 Ubuntu
  2. 进入系统 -> GParted 分区编辑器
  3. 删除交换分区和包含它的扩展分区(如果奇迹般地您可以从这里调整交换分区的大小,我想您的生活会比我轻松得多)
  4. 将主分区的大小减少到您想要的新交换空间的大小(为了安全起见,我将其设置为 2x RAM + 500MB)。最简单的方法是在“以下可用空间”字段中填写您想要交换的空间量
  5. 在现在已创建的可用空间中,选择新建,输入 linux-swap,你可以将分区命名为“swap”
  6. 申请按钮(应该是一个复选标记)将更改写入磁盘
  7. 完成后,重新启动回到 Ubuntu

现在您需要找到交换分区所在的分区以及它的 UUID 是什么。你说的是 UUID?!好吧,这是分区的通用唯一标识符,因此即使由于添加磁盘等原因,它在启动时位于不同的挂载点,您也可以引用它。如果这是您的主磁盘,那么可能没什么大不了的。

  1. 打开终端并运行gksu gparted &,然后输入您的 root 密码。& 可让此进程运行,同时仍允许您访问命令行。
  2. 右键单击交换分区并选择信息. 您应该看到小路唯一唯一标识符列在此处。请保留此信息以供进一步参考。
  3. 运行gksu gedit /etc/fstab &并查找包含以下内容的行交换在其中。它应该是第三列,以空格或制表符分隔。您可以使用路径或 UUID 来告诉 Linux 在哪里找到您的交换分区。我推荐使用 UUID,因为即使您移动分区或磁盘以某种方式变成 sdb 而不是 sda 或类似名称,它也会保持不变。进行适当的编辑并保存文件。如果您使用 UUID(当然,用您的 UUID 代替),您的行应该看起来像这样:
    • UUID=41e86209-3802-424b-9a9d-d7683142dab7 none swap sw 0 0
    • 或者如果你使用路径:/dev/sda2 none swap sw 0 0
  4. 保存并重新启动,以确保新的交换在启动时正确激活

拿一杯牛奶,等待 Ubuntu 恢复……接下来是有趣的部分

  1. 再次打开终端并运行cat /proc/swaps,希望您能看到列出的交换分区路径。如果没有,则可能是上述步骤出了问题。这是我的输出:

    Filename                Type        Size    Used    Priority
    /dev/sda2               partition   2676732 6360    -1
    
  2. gksu gedit /etc/default/grub &调出引导加载程序配置

  3. 查找该行GRUB_CMDLINE_LINUX=""并确保它看起来像这样(当然使用你的 UUID)GRUB_CMDLINE_LINUX="resume=UUID=41e86209-3802-424b-9a9d-d7683142dab7"并保存文件
  4. sudo update-grub并等待它完成
  5. gksu gedit /etc/initramfs-tools/conf.d/resume &并确保其内容正确resume=UUID=41e86209-3802-424b-9a9d-d7683142dab7(当然,UUID 是您的,而不是我的)。保存文件!
  6. sudo update-initramfs -u
  7. 重启!

现在你应该可以休眠并恢复了!我真的希望这能帮助别人。我不敢相信 Ubuntu 已经是第 11 版了,但让它让你的笔记本电脑休眠仍然如此困难。不过不要失去信心,这是可以做到的!

相关内容