简介: Ubuntu 系统上的内存耗尽可能会导致应用程序运行缓慢,甚至意外崩溃。为了保持最佳性能,特别是在 RAM 有限的系统上,设置交换空间被证明是非常有价值的。本教程将指导您完成使用 Bash 脚本在 Ubuntu 系统上制作和安装交换文件的过程。
先决条件:
- 运行 Ubuntu 的系统(已在 Ubuntu 20.04 及后续版本上验证)。
- 对 Linux 命令行有基本的了解。
第 1 步:建立 Bash 脚本:
启动您喜欢的文本编辑器并生成一个名为create_swap.sh
的新文件。
第 2 步:填写 Bash 脚本:
将以下代码复制并集成到您的create_swap.sh
文件中:
#!/bin/bash # Verify if the script is executed as root if [ " $EUID " -ne 0 ]; then echo "This script requires root privileges. Please run as root." exit 1 fi # Specify the swap file location and size (in megabytes) SWAP_FILE= "/swapfile" SWAP_SIZE_MB=2048 # Modify this size as necessary # Construct the swap file fallocate -l " ${SWAP_SIZE_MB} M" " $SWAP_FILE " chmod 600 " $SWAP_FILE " mkswap " $SWAP_FILE " # Activate the swap file swapon " $SWAP_FILE " # Append an entry to /etc/fstab to mount the swap file upon boot echo " $SWAP_FILE none swap sw 0 0" >> /etc/fstab echo "Swap file successfully created and mounted. Use 'swapon -s' to verify the swap usage."
第 3 步:渲染脚本可执行文件:
打开终端并导航到存储create_swap.sh
目录。执行以下命令使脚本可执行:
chmod +x create_swap.sh
第 4 步:启动脚本:
使用以下命令运行脚本:
sudo ./create_swap.sh
第5步:验证:
要验证交换文件是否成功创建和安装,请使用以下命令:
swapon -s
此命令将产生有关当前活动交换设备的信息。
步骤六:调整隔夜利息使用率(Swappiness):
Linux 中的“swappiness”参数控制系统将数据从 RAM 交换到交换空间的频率。该值范围在 0 到 100 之间,值越高表示交换越频繁。
步骤 6.1:检查当前交换值:
您可以使用以下命令检查当前的 swappiness 值:
cat /proc/sys/vm/swappiness
步骤6.2:修改 Swappiness 值:
如果要更改 swappiness 值,可以使用sysctl
命令。例如,要将 swappiness 值设置为 10,您可以使用:
sudo sysctl vm.swappiness=10
此更改将立即生效,但重新启动后不会保留。
步骤 6.3:使 Swappiness 更改永久化:
要使更改永久生效,您需要编辑/etc/sysctl.conf
文件。您可以使用文本编辑器打开此文件:
sudo nano /etc/sysctl.conf
然后,在文件末尾添加或修改以下行:
vm.swappiness = 10
按 CTRL+X,然后按 Y,然后按 ENTER 保存文件并退出。重新启动后更改将持续存在。
结论:
太棒了!您已使用 Bash 脚本在 Ubuntu 系统上成功设置并安装了交换文件。这种额外的交换空间将增强系统性能,特别是当您的应用程序需要的内存超过物理 RAM 所能提供的内存时。
请记住,您可以根据系统的需要调整交换文件大小 ( SWAP_SIZE_MB
)。但是,通常建议将交换空间保持为物理 RAM 大小的大约 1.5 到 2 倍。
如有任何疑问或问题,请随时联系 Ubuntu 社区论坛或寻求经验丰富的 Linux 用户的指导。
免责声明:在处理系统级操作(例如创建和修改交换文件)时请务必小心。系统文件的不当更改可能会导致数据丢失或系统不稳定。请务必确保备份您的重要数据并谨慎操作。