Debian 服务器内存偶尔不够用怎么办: Difference between revisions

From 清冽之泉
Jump to navigation Jump to search
Created page with "前几天,我稳定运行两年的服务器里的网站的搜索功能,崩了。我查了下,是 out of memory,内存耗尽。听 ChatGPT 的加了 Swap 空间,目前来看确实有效,也没见到负面效果,暂且记下相关命令以备后用。 <syntaxhighlight lang="bash" line> # 设置 sudo fallocate -l 5G /swapfile sudo chmod 600 /swapfile sudo mkswap /swapfile sudo swapon /swapfile echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab 在 /et..."
 
No edit summary
Line 14: Line 14:
sudo mount -a
sudo mount -a
swapon --show
swapon --show
# 设置
sudo fallocate -l 5G /swapfile          # 快速创建 5GB 的空文件作为交换文件
sudo chmod 600 /swapfile                # 设置权限为仅 root 可读写,确保安全
sudo mkswap /swapfile                    # 将文件格式化为交换空间
sudo swapon /swapfile                    # 立即启用该交换文件
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab  # 将交换文件条目加入 /etc/fstab,开机自动启用
# 在 /etc/sysctl.conf 里添加 vm.swappiness=10  # 调整内核参数,降低使用交换的倾向性(值范围 0-100)
# 验证
free -h                                  # 以易读格式查看内存和交换空间使用情况
sudo mount -a                            # 重新挂载 /etc/fstab 中的所有文件系统(检查配置语法)
swapon --show                            # 显示当前已激活的交换设备和文件
</syntaxhighlight>
</syntaxhighlight>

Revision as of 23:04, 16 March 2026

前几天,我稳定运行两年的服务器里的网站的搜索功能,崩了。我查了下,是 out of memory,内存耗尽。听 ChatGPT 的加了 Swap 空间,目前来看确实有效,也没见到负面效果,暂且记下相关命令以备后用。

# 设置
sudo fallocate -l 5G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfile
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
 /etc/sysctl.conf 里添加 vm.swappiness=10

# 验证
free -h
sudo mount -a
swapon --show



# 设置
sudo fallocate -l 5G /swapfile           # 快速创建 5GB 的空文件作为交换文件
sudo chmod 600 /swapfile                 # 设置权限为仅 root 可读写,确保安全
sudo mkswap /swapfile                    # 将文件格式化为交换空间
sudo swapon /swapfile                    # 立即启用该交换文件
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab   # 将交换文件条目加入 /etc/fstab,开机自动启用
# 在 /etc/sysctl.conf 里添加 vm.swappiness=10   # 调整内核参数,降低使用交换的倾向性(值范围 0-100)

# 验证
free -h                                   # 以易读格式查看内存和交换空间使用情况
sudo mount -a                             # 重新挂载 /etc/fstab 中的所有文件系统(检查配置语法)
swapon --show                             # 显示当前已激活的交换设备和文件