使用 Amazon Linux 为 t1.micro Amazon EC2 实例制作交换文件

使用 Amazon Linux 为 t1.micro Amazon EC2 实例制作交换文件

我正在将t1.microEC2 实例与 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

相关内容