Linux 小资源服务器使用经验总结

善用交换内存

有些时候。作为个人用的服务器我们往往不会去购买一些性能很好的服务器。但是在某些情况下我们却要临时去使用一个比较高的内存去执行某个程序,但是我们当前服务器的资源却无法执行。因为linux为了防止自身系统崩溃,引入了一个OOM Killer机制。即当一个进程占用过多内存时,系统会直接kill掉这个进程并抛出Out of memory错误。
我们可以通过grep "Out of memory" /var/log/messages来查看相关日志。
这个时候我们就可以使用交换内存来用磁盘空间换内存了。

第一步: 创建一个空白文件

使用命令dd if=/dev/zero of=/opt/swapfile bs=1M count=1024来创建一个1GB的空白文件到/opt/swapfile。同样的可以按照这个方法创建其他大小的空白文件。我一般会创建和内存一样大小的交换空间

第二步: 创建交换空间

使用命令mkswap /opt/swapfile来将这个空白文件变成一个swap文件。只有该文件才能将对应的磁盘空间作为一个临时内存。

第三部: 应用交换文件

使用命令swapon /opt/swapfile将该交换空间应用到系统中。此时执行free -h可以看到swap一行多出了1GB空间

交换空间应该设定多大?

实际内存 推荐交换空间 推荐交换空间(开启休眠模式)
⩽ 2GB 2倍 3倍
2GB - 8GB 1倍 2倍
8GB - 64GB 至少4GB 1.5倍
> 64GB 至少4GB 不推荐

参考文章:

其他

  • swapoff -a 移除所有的swap内存空间
文章目录
  1. 1. 善用交换内存
    1. 1.0.1. 第一步: 创建一个空白文件
    2. 1.0.2. 第二步: 创建交换空间
    3. 1.0.3. 第三部: 应用交换文件
  • 2. 交换空间应该设定多大?
  • 3. 其他