增加交换分区大小的 GUI 方法

增加交换分区大小的 GUI 方法

默认情况下,Ubuntu 中的交换空间为 250MB,我想将其扩展到更大的大小。我需要 800MB,我认为这足以打开几个应用程序,而不会达到当前的交换限制。我希望有人能帮助我。

答案1

您可以随时创建交换文件添加更多交换空间。这在各个方面与交换分区并不相同,但它会变得简单且动态。

在以下步骤中,请/media/fasthdd/swapfile.img随意更改。例如,也可以是/swap.img/media/fasthdd/swapfile.img这只是一个示例文件名。如果您使用此文件名,那么当然必须有一个目录/media/fasthdd/具有足够的可用空间来存放您的新交换文件。

使用任何终端应用程序运行以下步骤的命令。所有命令都应运行具有 root 权限。为此,您可以将其添加sudo到每个命令的开头,或者sudo bash在运行命令之前运行。

  1. 创建一个空文件

    此文件将包含虚拟内存内容,因此请将文件大小设置为满足您的需求。此文件将创建一个 1GiB 文件,这意味着您的系统将有 +1GiB 交换空间:

    dd if=/dev/zero of=/media/fasthdd/swapfile.img bs=1024 count=1M
    

    如果要创建 3GiB 文件,则将计数值更改为count=3Mman dd有关更多信息,请参阅。

  2. 烘焙交换文件

    以下命令将在您的新交换文件中创建一个“交换文件系统”。

    mkswap /media/fasthdd/swapfile.img
    
  3. 启动时启动

    为了确保在启动计算机时激活新的交换空间,您应该将其添加到文件系统配置文件中/etc/fstab。将其添加到文件末尾。建议这样做,因为其他文件系统(至少一个包含交换文件) 必须以读写模式安装,我们才能访问任何文件。

    # Add this line to /etc/fstab
    /media/fasthdd/swapfile.img swap swap sw 0 0
    
  4. 启用

    您可以重新启动计算机,也可以使用以下命令手动激活新的交换文件:

    swapon /media/fasthdd/swapfile.img
    

如果一切顺利,您应该会看到有更多交换空间可供使用。您可以使用以下命令检查新的交换并确认它处于活动状态:

$ cat /proc/swaps
Filename                           Type       Size    Used    Priority
/media/fasthdd/swapfile.img        file       8388604 2724    -1

$ grep 'Swap' /proc/meminfo
SwapCached:         4772 kB
SwapTotal:       8388604 kB
SwapFree:        8355812 kB

答案2

将交换大小调整为 8GB

# Turn swap off
# This moves stuff in swap to the main memory and might take several minutes
sudo swapoff -a

# Create an empty swapfile
# Note that "1G" is basically just the unit and count is an integer.
# Together, they define the size. In this case 8GB.
sudo dd if=/dev/zero of=/swapfile bs=1G count=8

# Set the correct permissions
sudo chmod 0600 /swapfile

sudo mkswap /swapfile  # Set up a Linux swap area
sudo swapon /swapfile  # Turn the swap on

检查是否有效

grep Swap /proc/meminfo

使其永久生效(重启后依然有效)

将这一行添加到您的末尾/etc/fstab

/swapfile swap swap sw 0 0

答案3

增加交换分区大小的 GUI 方法

增加交换大小的另一种方法是使用GParted 分区编辑器简而言之,你调整交换分区的大小,然后右键单击它并选择“Swapon”。

启动 gparted-live-disk 或 Ubuntu live disk 更容易(这样所有/dev/sda分区都将被卸载)。如果你在 18.04 之前的某些版本中运行 Ubuntu live disk,则可能需要安装分区通过运行以下命令:

sudo apt-get update
sudo apt-get install gparted && sudo gparted

仅当交换分区之前或之后有未分配空间时,您才可以增加交换分区的大小。如果交换分区下方或上方没有未分配空间(我们试图用交换分区添加的空间),那么我们必须调整分区大小并获取未分配空间。

情况 1 - 交换分区之前或之后存在未分配的空间

GParted 分区

在上面的截图中,我在 linux-swap 之前有 11.4 GB 的未分配空间,在交换分区之后有 12.8 GB 的未分配空间。

  • 要调整大小,请右键单击交换分区(此处为 /dev/sda9),然后单击“调整大小/移动”选项。它看起来如下:

    在此处输入图片描述

  • 向左或向右拖动滑块箭头,然后单击“调整大小/移动”按钮。您的交换分区将被调整大小。


情况 2 - 未分配的空间位于分区之间

在此处输入图片描述

在上面的屏幕截图中,我们要添加到交换分区的未分配空间位于dev/sda7和之间/dev/sda8。要将未分配的空间从该空间移动到交换分区上方,我们必须遵循下面给出的简单步骤,

  • 右键单击 /dev/sda8 分区,然后单击调整大小/移动选项。

    在此处输入图片描述

  • 单击并将滑块移动到最左边,这样分区上方未分配的空间/dev/sda8就会移动到下方/dev/sda8。然后单击调整大小/移动按钮。

  • 现在未分配的空间就在交换分区的正上方,就像情况1现在按照案例 1 进行。


情况 3 - 如果未分配空间存在于扩展分区之外)

在此处输入图片描述

我在扩展分区要将此空间添加到 linux-swap 分区(位于扩展分区内),我们必须遵循以下步骤,

  • 右键单击扩展分区并选择调整大小/移动选项,它将像下面的截图一样

    在此处输入图片描述

  • 点击并将箭头拖到最右侧,然后单击调整大小/移动,这样 18 GB 的未分配空间将位于扩展分区的底部。我在底部已经有 14.80 GB 的未分配空间,现在 18.34 GB 与其相结合,在扩展分区的底部创建了(18.34+14.80 GB)的未分配空间。

  • 现在交换分区下方有一个未分配的空间,它将像情况1,然后按照情况 1 进行。

注意:在继续上述操作之前,请不要忘记备份所有重要数据。

答案4

我发现以下视频非常有趣,并且是增加交换文件大小的直接方法。查看这个简短的视频教程:如何增加 Ubuntu Linux 上的交换空间 | Linux 手册

(来自该视频)以下是增加交换空间的方法(如果您的系统正在使用交换文件):

首先检查你的 Linux 系统的交换大小:

swapon --show

示例输出:

NAME      TYPE   SIZE USED PRIO
/swapfile file 797.2M   0B   -2

此输出显示正在使用的交换大小和交换类型。此处的交换类型为“文件”类型(也可以是分区类型)。Ubuntuswapfile默认使用交换,增加或减少交换大小相当容易。

因为我们要修改,swapfile所以首先将其关闭。您可能会注意到该进程被多次终止。发生这种情况的原因是,在关闭交换之前,系统会将其内容移动到主内存,这可能会溢出主内存。因此,如果以下命令被终止,请多次运行它,直到成功完成。您还可能会遇到突然注销和/或其他进程可能会自动终止的情况。

sudo swapoff /swapfile

现在,如果您运行swapon --show它,它将不会显示任何内容,因为它已被关闭。

现在更改交换大小(我将其设为 4GB,对于 n GB,将其设为 nG):

sudo fallocate -l 4G /swapfile

现在,如果你检查文件,你会发现文件大小增加了。查看方法如下:

ls -lh /swapfile

现在告诉 Linux 系统将此文件用作交换系统:

sudo mkswap /swapfile

这将擦除旧的交换签名并使用新的交换签名。

现在打开交换(因为我们最初关闭了交换空间):

sudo swapon /swapfile

完毕!

现在使用swapon --showfree -h查看变化。

相关内容