上一篇 下一篇 分享链接 返回 返回顶部

centos7如何增加swap虚拟内存

发布人:纽特云计算 发布时间:2024-11-10 22:48 阅读量:1347

在linux中,项目占用内存有点大,进程总被杀死,当物理内存不足时,就会使用虚拟内存(swap分区),设置一下虚拟内存试试

增加虚拟内存步骤如下(适用centos),红色为命令,按步骤复制到自己的ssh窗口就可以

一、先查看一下自己的服务器swap大小
[root@niuteyun] free -h

# 下面显示的 Swap 即为我们的虚拟内存(我的内存条为4G的)
total            used        free        shared        buff/cache   available
Mem:           3.6G        2.9G        333M         33M        340M        414M
Swap:           0          0           0


二、创建虚拟内存缓存文件
一般设置为物理内存的2倍。

# 在root目录下创建swap文件(每块1M,总共8192块,共计:8192M)
[root@niuteyun] dd if=/dev/zero of=/root/swapfile bs=1M count=8192

重点,这一步大概等待30-60秒左右,耐心等待不要操作其他

记录了8192+0 的读入
记录了8192+0 的写出
8589934592字节(8.6 GB)已复制,17.1021 秒,502 MB/秒

# 查看swapfile文件的大小
[root@niuteyun] ll /root -h
总用量 8.1G
-rw-rw-r--. 1 root root 8.0G 2月  12 13:31 swapfile


三、构建+激活swap
# 构建swap格式到swapfile
[root@localhost ~] mkswap /root/swapfile
正在设置交换空间版本 1,大小 = 8388604 KiB
无标签,UUID=c13a3fc1-0a0b-4c73-963e-c383df554dff

# 激活swap
[root@niuteyun] swapon /root/swapfile
swapon: /root/swapfile:不安全的权限 0664,建议使用 0600。

# 查看一下swap的大小
[root@niuteyun] free -h

Swap:          8.0G          0B        8.0G


四、永久生效
上述操作仅仅在本次开机有效,重启失效,我们需要保存一下配置

[root@niuteyun] vim /etc/fstab

# 将/swap none swap sw 0 0 这行注释掉,新增一行
/root/swapfile swap swap defaults 0 0


五、修改虚拟内存大小,或重新设定虚拟内存
果已经设置了虚拟内存,想修改一下大小,或者取消设置虚拟内存的,
只需关闭swap并删除之前创建的swapfile文件即可

# 1.关闭swap
swapoff /root/swapfile

# 2.删除wsap

/root/swapfile
rm -rf /root/swapfile

# 3.然后重复设置的步骤二、三  swap的设置步骤,即重新删除之前的,重新添加

温馨提示:虚拟内存就是从硬盘上划分一块容量代替物理内存.因为硬盘速度比内存慢很多.而且会造成硬盘频繁读取.对硬盘数据会造成一定安全隐患.
其次因为速度慢.CPU就需要等硬盘数据读入.间接的拖慢CPU速度.所以一般情况下优先增加物理内存

目录结构
全文