Linux下如何关闭swap使用? (linux 关闭swap使用)

在Linux系统中,swap是用于缓存数据的一块磁盘空间,当系统内存不足时,会将一部分内存转移到swap中进行存储。但有时,我们需要关闭swap的使用,例如在一些高性能的服务器应用,为了避免swap的使用影响系统效率,需要关闭swap。本文将介绍如何在Linux系统中关闭swap使用。

一、查看系统的swap使用情况

在关闭swap使用之前,需要先查看系统当前的swap使用情况,可以使用以下命令来查看系统的swap使用情况:

“`bash

free -m

“`

执行该命令后,会输出当前系统的内存和swap使用情况,如下:

“`

total used free shared buffers cached

Mem: 15484 11948 3536 0 1183 6557

-/+ buffers/cache: 3207 12277

Swap: 20237 10080 10187

“`

其中,Swap一栏显示了当前系统swap的总量、已使用量和可用量。

二、暂时禁用swap

如果只需要暂时禁用swap,可以使用以下命令:

“`bash

sudo swapoff -a

“`

执行该命令后,系统将停止使用swap。但是该命令只是临时禁用swap,重启系统后会重新启用swap,如果需要永久禁用swap,需要进行下一步操作。

三、永久禁用swap

在Linux系统中,可以通过修改/etc/fstab文件来永久禁用swap的使用。修改/etc/fstab文件前,需要备份该文件,以便在修改失败时可以恢复原文件。备份命令如下:

“`bash

sudo cp /etc/fstab /etc/fstab.bak

“`

备份完成后,可以修改/etc/fstab文件,将与swap相关的一行注释掉或删除掉。打开/etc/fstab文件,将其中包含swap的一行注释掉或删除掉,修改完成后,保存并退出。

注释掉swap相关的一行的示例:

“`bash

UUID=xx-x-x-x- none swap sw 0 0

“`

注释掉后的示例:

“`bash

# UUID=xx-x-x-x- none swap sw 0 0

“`

删除swap相关的一行的示例:

“`bash

/dev/mapper/centos-swap swap swap defaults 0 0

“`

删除后的示例:

“`bash

# /dev/mapper/centos-swap swap swap defaults 0 0

“`

修改完成后,执行以下命令来重新挂载/etc/fstab文件:

“`bash

sudo mount -a

“`

这样就完成了在Linux系统中关闭swap使用的操作。

四、启用swap

如果需要再次启用swap,可以通过以下命令来重新挂载swap分区:

“`bash

sudo swapon -a

“`

执行该命令后,swap分区将重新挂载并开始使用。

本文介绍了在Linux系统中关闭swap使用的方法,包括查看系统的swap使用情况、临时禁用swap、永久禁用swap以及重新启用swap。在实际使用中,我们可以根据具体情况选择不同的方法来管理swap。

相关问题拓展阅读:

Linux下swap耗尽该怎么办?如何释放swap

Linux下交换内存耗尽如何查看及如何处理。以及查看shell脚本描述。交换内存不足时,启动应用时会报内存不足。

1、启动神乱应用时报内存不足,直接Linux命令行top查看下。swap used100%,0free。

2、reboot服务器能有效的释放swap,可是很多情况下是不能重启服务器的。这时就要弄明白是什么占着内存。查看下/proc目录下内容,发现很多数字命名的目录,这些就是Linux的进程了。

3、要让进程释放swap的方法只有kill掉该进程了。写个脚本来查看具体是哪些进程占着内存啦。瞎瞎档

一、对/proc目录下所有以数字为名的目录进行遍历

二、1目录是根进程重启会导致系统重启,所以直接排除掉。

三、算出每个进程占用内存的大小,然后按照大小排序

四、磨乱输出内存占用大于1MB的进程

4、将运行结果保存到swap.log文件中

5、查看swap.log.10325这个进程内存占用最多有130几M。

6、直接kill掉,然后再top查看。ok,swap一下子释放了很多,搞定。

注意事项:proc目录下1目录不能直接kill掉。

先逗源重启 然后再慢慢跟踪下内存使用情况 如果早指判有问题的进程可以看下是否陆改kill还是优化 最后再决定是否升级

Linux下swap耗尽该怎么办?如何释放swap

Linux下swap耗尽该怎么办?如何释放swap

swap的作用可简单描述知老为:

当内存不够用时,将存储器中的数据块从DRAM移到swap的磁盘空间中,以释放更多的空间给当前进程使用.

当再次需要那些数据时迹猛帆,就可以将姿雹swap磁盘中的数据重新移到内存,而将那些不用的数据块从内存移到swap中.

2)数据从内存移动交换区的行为被称为页面调用,发生在后台的页面调用没有来自应用程序的干涉.

3)swap空间是分页的,每一页的大小和内存页的大小一样.

4)并不是一定要给每个系统划分SWAP,比如大多数的嵌入式就没有swap.

首先我们需洞扮凳要使用

sync

指令,将所有未写的系统缓冲区写到磁盘中,包含已修改的 i-node、已延迟的块 I/O 和读写映射文件。否则在释放缓存的过程中,可能会丢失未保存的文件。

#sync

接下来,我们需要将需要的参数写进/proc/sys/vm/drop_caches文件中,比如我们需要释放所有缓存,就输入下面的命令:

#echo 3 > /proc/sys/vm/drop_caches

此指令输入后会立即生效,可以查询现在的可用内存纳旅明显的变多了。

要查询当缺液前缓存释放的参数,可以输入下面的指令:

#cat /proc/sys/vm/drop_caches

关于linux 关闭swap使用的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » Linux下如何关闭swap使用? (linux 关闭swap使用)