Linux 中的最大交换内存是多少

Linux 中的最大交换内存是多少

今天,在出现 PHP 错误“ cannot allocate memory in...”、“ The following exception is caused by a lack of memory and not having swap configured”之后,我发现了 Linux 上的交换内存是什么。所以我搜索了一下,找到了free -mt命令。

$ free -mt
              total        used        free      shared  buff/cache   available
Mem:           3855         445        2725          83         684        3072
Swap:          2047         584        1463
Total:         5903        1030        4188

上面的代码显示已经配置了大约 2GB 的交换内存,用于大约 4GB 的 RAM。在此RedHat 页面,我们可以看到基于 RAM 的交换内存量:

Amount of RAM in the System Recommended Amount of Swap Space
4GB of RAM or less      a minimum of 2GB of swap space
4GB to 16GB of RAM      a minimum of 4GB of swap space
16GB to 64GB of RAM     a minimum of 8GB of swap space
64GB to 256GB of RAM    a minimum of 16GB of swap space
256GB to 512GB of RAM   a minimum of 32GB of swap space

我的问题是,交换内存是如何工作的,我可以在不减少基本内存的情况下增加它吗?我还看到我们可以添加第二个交换内存。这是我工作的服务器,上面运行着很多程序,我不想犯错误或破坏某些东西,所以我在这里发帖。

附言:我是 Linux 服务器的新手,如果我的英语不好的话还请见谅 :)

谢谢 !

相关内容