常用操作系统管理 返回

  • Swap: 如何在 Linux 中启用交换内存

    • 发布人:peadmin
    • 阅读量:15
  • 在 Windows 中,Swap 就是我们所知的“页面文件”虚拟内存。虽然在 Windows 中它一直是一个文件 (pagefile.sys),但在 Linux 中,直到最近,我们必须有一个专用的分区(格式化并挂载为交换),我们想要用于此目的的容量。最现代的发行版已经使用类似于 Windows的文件来执行此任务。

    Linux 交换

     

     

    Swap的优缺点

    像所有东西一样,此功能有其自身的优点和缺点。在主要优势中,我们可以强调它是一种“快速且廉价”的 RAM 内存问题解决方案。特别是当它们是零星的问题时。此外,需要交换才能使用某些 Linux 功能,例如使计算机休眠。此外,在这种情况下,我们将需要比我们在 PC 中拥有的总 RAM 多几个演出的交换。

    拥有 8 GB 的 Swap 与拥有 8 GB 的 RAM 不同。Swap 比 RAM 慢得多,并且从硬盘驱动器发送和检索信息需要时间,因此我们会注意到性能的显着损失。如果我们求助于这个没有问题,但是如果我们的 RAM 很少,那么物理扩展它比依赖 Swap 更好。此外,如果您有SSD,从长远来看,使用此交换可能会损坏它,因为它需要大量的写入周期。

    此外,Swap 对 Linux 的重要性不如 RAM。这意味着它将始终处于后台,并且很可能在某些情况下某些程序甚至整个操作系统会失败。

    我应该使用交换吗?

    这个问题的答案很复杂。这取决于我们的计算机拥有的硬件,以及我们使用它的目的。例如,如果我们有 4 GB 的 RAM,我们应该准备好一些交换 GB,以便在需要时可用。如果我们是经常使计算机休眠的人之一,也会发生同样的情况。

     

    如果我们使用消耗大量内存的应用程序,例如 Blender、4K 视频编辑器或在GIMP中编辑非常大的照片,那么最好有这个空间可用,尽管我们可能不需要它。

    但是,如果我们有一台具有中等 RAM(例如 16 GB)的计算机,并且我们既不使用休眠功能也不使用以前的程序,那么Swap 就没有必要了,因为我们的 Linux 永远不会使用所有这些内存。

    Swappiness:选择我们希望 Linux 何时使用 Swap

    默认情况下,Ubuntu(和许多 Linux 发行版)将默认的swappiness设置为 60。这意味着在使用 60% 的 RAM 之前不会使用 Swap。从该阈值开始是开始使用交换内存的时间。

    我们可以通过使用具有 root 权限的编辑器编辑以下文件来修改此值:

     

     

    cat /proc/sys/vm/swappiness

    我们可以通过修改我们想要的默认值来更改所需的阈值。例如,如果我们只想在使用了 90% 的 RAM 时开始使用它,我们可以设置一个值“90”。更。这将更好地利用计算机的物理内存,进而转化为更好的性能。

    如果我们不想修改这个值,我们也可以通过下面的指令来临时改变swap,不过一定要记住,重启后会恢复到默认的swappiness值。

    sudo sysctl vm.swappiness=10

    我们必须配置的最佳值取决于每个值。如果我们有足够的 RAM,则越高越好。但是如果我们要小心避免内存耗尽,默认值也不错。

    如何在 Linux 中激活 Swap

    根据我们使用的类型(分区或文件),有两种不同的方式来激活 Swap 的使用。我们可以检查我们的 Linux 是否有 Swap,以及是什么类型,在终端中执行以下命令:

    sudo swapon --show

    有了它,我们将能够看到名称或安装点、类型和大小。

    在我们使用典型的分区形式的情况下,那么我们在安装Ubuntu时唯一要做的就是创建一个分区,我们想要的大小(推荐1.5倍RAM)格式化为Linux-SWAP。此外,我们还必须为其分配交换挂载点,以便操作系统准备所述分区以将其用作交换。

    Ubuntu 参与交换

    如果我们在安装操作系统期间执行此操作,我们将无需执行任何其他操作。否则,如果我们想稍后添加它,我们必须在我们的发行版的 fstab 中指定这个挂载点,以便它在启动时自动启动。

    如果您想通过文件启用 Swap 的使用,我们必须执行以下命令:

    创建交换文件(为我们想要给它的值选择改变 1G 的大小):

    sudo fallocate -l 1G /swapfile

    接下来,我们授予它权限,以便只有 root 可以使用以下命令写入所述文件:

    sudo chmod 600 /swapfile

     

    我们给文件一个结构来充当交换文件:

    sudo mkswap /swapfile

    最后,我们通过以下方式激活它:

    sudo swapon /swapfile

    为了让这个文件默认加载到发行版的开头,我们必须在 fstab 中添加它的指令。该语句应该像另一个挂载点,具有以下内容:

    /swapfile swap swap defaults 0 0

    准备好了。我们重新启动 Linux,我们可以看到新的 Swap 分区是如何工作的。如果需要,我们可以再次使用“sudo swapon –show”命令来检查我们是否确实使用了文件交换而不是分区。

     

     

     

     

     

     

    Swap的优缺点

    像所有东西一样,此功能有其自身的优点和缺点。在主要优势中,我们可以强调它是一种“快速且廉价”的 RAM 内存问题解决方案。特别是当它们是零星的问题时。此外,需要交换才能使用某些 Linux 功能,例如使计算机休眠。此外,在这种情况下,我们将需要比我们在 PC 中拥有的总 RAM 多几个演出的交换。

    拥有 8 GB 的 Swap 与拥有 8 GB 的 RAM 不同。Swap 比 RAM 慢得多,并且从硬盘驱动器发送和检索信息需要时间,因此我们会注意到性能的显着损失。如果我们求助于这个没有问题,但是如果我们的 RAM 很少,那么物理扩展它比依赖 Swap 更好。此外,如果您有SSD,从长远来看,使用此交换可能会损坏它,因为它需要大量的写入周期。

    此外,Swap 对 Linux 的重要性不如 RAM。这意味着它将始终处于后台,并且很可能在某些情况下某些程序甚至整个操作系统会失败。

    我应该使用交换吗?

    这个问题的答案很复杂。这取决于我们的计算机拥有的硬件,以及我们使用它的目的。例如,如果我们有 4 GB 的 RAM,我们应该准备好一些交换 GB,以便在需要时可用。如果我们是经常使计算机休眠的人之一,也会发生同样的情况。

  • 2022-10-21