一、启用交换空间(Swap)
-
Swap 是系统的虚拟内存,当物理内存耗尽时,系统会将部分数据写入硬盘中的交换空间,从而防止内核因内存不足而杀掉进程。
-
若系统没有配置交换空间,或者交换空间过小,可通过创建 swap 文件或 swap 分区来扩展虚拟内存。
二、实践(Linux系统)
-
以下是在 Linux 系统上创建一个 8GB swap 文件的示例步骤:
# 1. 创建 swap 文件(4G大小)
sudo fallocate -l 4G /swapfile
# 如果 fallocate 不可用,可用 dd 命令:
# sudo dd if=/dev/zero of=/swapfile bs=1G count=4
# 2. 设置正确的权限,防止其他用户读写
sudo chmod 600 /swapfile
# 3. 将文件格式化为 swap 分区
sudo mkswap /swapfile
# 4. 启用 swap 文件
sudo swapon /swapfile
# 5. 验证是否成功启用
free -h
# 6. 为了让 swap 在系统重启后自动启用,编辑 /etc/fstab,加入如下行:
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
- 用 swap 可以在物理内存不足时缓解内存压力,但由于硬盘(尤其是机械盘)读写速度较慢,性能上不如物理内存;对于 SSD 性能会好一些,但仍建议内存是优先升级的对象。