centos7如何增加swap虚拟内存
在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速度.所以一般情况下优先增加物理内存