SWAP分区其实就是Linux系统里的虚拟内存机制。当你的电脑物理内存条不够用的时候,系统就会把硬盘上划分好的一段连续空间当作临时内存来用。这和Windows里的虚拟内存文件道理一样,只不过在Linux里它更像是一个专门用来救急的硬盘区域,普通用户平时是看不见它的存在的。
什么是交换分区及作用?可以更改大小吗?
虽然SWAP能当内存用,但你别指望它能有多快。它的读写速度比真正的物理内存慢太多了,所以如果服务器性能卡顿,光靠加大SWAP是没用的,最有效的办法还是直接加装更大的物理内存条。SWAP只能算是个临时的应急手段,不能解决根本的硬件瓶颈问题。
在规划Linux服务器分区时,一般建议划分一个专门的Swap分区和一个根分区。特别是对于RedHat这类系统或者内存配置不足的虚拟机来说,Swap分区非常重要,能在物理内存耗尽时防止系统直接崩溃。不过关于Swap大小的设置,网上那些说必须是内存2倍的谣言可以不用全信,具体还得看你的实际应用场景来定。
Linux系统里创建交换空间主要有两种路子:一种是直接使用Swap分区,适合那些还没划分出去的空闲硬盘区域;另一种是创建Swap文件,适合硬盘分区已经全部分配完毕,没有多余空闲分区的情况。如果Swap使用量长期超过4GB,那说明你的服务器性能可能已经严重不足了。