配置swap交互内存解决centos7服务器内存不足问题

avatar
作者
筋斗云
阅读量:2

centos7服务器内存不足

在系统物理内存不足时,将部分数据暂时移动到硬盘上的交换分区(或称为交换文件、页交换文件),从而释放出物理内存空间供其他程序使用。当需要访问被移动到硬盘上的数据时,操作系统会将其重新加载到物理内存中。这个过程被称为“页面置换”。

1、使用命令查看当前服务器的内存和交换内存的使用情况

free -h 

在这里插入图片描述

2、创建一个新的交换分区或文件。可以使用mkswap命令创建一个新的交换分区

(1)例如,要在/dev/sda3分区上创建一个4GB的交换分区,可以运行以下命令:

通常,交换内存的大小应该在物理内存的1-2倍之间。例如,如果物理内存为8GB,交换内存可以设置为8GB-16GB。

sudo mkswap /dev/sda3 

(2)如果要创建一个交换文件,可以使用dd命令创建一个指定大小的文件,然后使用mkswap命令将其设置为交换文件。例如,要创建一个4GB的交换文件,可以运行以下命令:

sudo dd if=/dev/zero of=/swapfile bs=1M count=4096 sudo mkswap /swapfile 

dd:是一个Linux命令,用于将一个文件或设备的内容复制到另一个文件或设备
if=/dev/zero:表示输入文件是/dev/zero,即一个无限循环的零字节设备文件
of=/swapfile:表示输出文件是/swapfile,即要创建的交换文件
bs=1M:表示每次读写的块大小为1MB
count=4096:表示要复制的块数为4096个,即要创建的交换文件大小为4096MB
mkswap:是一个Linux命令,用于将指定的分区或文件设置为交换分区
/swapfile:表示要设置为交换分区的文件。在这个例子中,/swapfile是刚刚创建的交换文件。执行这个命令后,Linux系统会将/swapfile文件设置为交换分区,以便在物理内存不足时,将部分数据暂时移动到硬盘上的交换分区,从而释放出物理内存空间供其他程序使用

3、启用交换分区或文件。使用swapon命令启用交换分区或文件

例如,要启用/dev/sda3分区上的交换分区,可以运行以下命令

sudo swapon /dev/sda3 

要启用/swapfile文件,可以运行以下命令:

sudo swapon /swapfile 

4、设置交换分区或文件的权限

使用chmod和chown命令设置交换分区或文件的权限。例如,要设置/swapfile文件的权限,可以运行以下命令:

sudo chmod 600 /swapfile sudo chown root:root /swapfile 

5、使交换分区或文件在系统启动时自动挂载

在/etc/fstab文件中,添加一行以指定交换分区或文件的挂载信息。例如,要在/dev/sda3分区上自动挂载交换分区,可以在/etc/fstab文件中添加以下行:

/dev/sda3 swap swap defaults 0 0 

要在/swapfile文件上自动挂载交换文件,可以在/etc/fstab文件中添加以下行:

/swapfile swap swap defaults 0 0 

6、重启系统以使更改生效。运行以下命令重启系统:

sudo reboot 

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!