我正在将t1.micro
EC2 实例与 Amazon Linux 结合使用。由于微实例的 RAM 有限(总共 589MB RAM),对于安装和编译 Python 包等许多操作来说是不够的。一些教程建议我使用交换文件来提高性能,如下所示:
sudo fallocate -l 1G /tmp/swapfile
sudo chmod 600 /tmp/swapfile
sudo mkswap /tmp/swapfile
sudo swapon /tmp/swapfile
并通过以下方式删除它:
sudo swapoff /tmp/swapfile
sudo rm /tmp/swapfile
我认为这会增加磁盘 I/O,但有利于整体性能。我是否应该在操作系统启动时启用大型交换文件并使其始终处于活动状态?如果是,如何实现这一目标?
仅供参考:命令的输出free -m
如下:
[ec2-user@myhostname ~]$ free -m
total used free shared buffers cached
Mem: 589 340 249 0 13 97
-/+ buffers/cache: 229 360
Swap: 0 0 0
答案1
通过以下方式创建交换空间:
sudo dd if=/dev/zero of=/tmp/swapfile bs=1M count=1024
(# bs*count = file size)
sudo mkswap /tmp/swapfile
sudo chmod 600 /tmp/swapfile
(# for security reasons)
sudo swapon /tmp/swapfile
free -h
删除方式:
swapoff /tmp/swapfile
rm -f /tmp/swapfile