问问大佬有没有设置服务器swap 内存的大小的方法或脚本呀
# 使用 fallocate 或 dd 命令创建交换文件
sudo fallocate -l 4G /swapfile
# 或
sudo dd if=/dev/zero of=/swapfile bs=1M count=4096
sudo chmod 600 /swapfile
# 使用 mkswap 命令将文件转换为交换空间
sudo mkswap /swapfile
# 立即启用交换空间
sudo swapon /swapfile
# 将以下行添加到 /etc/fstab
/swapfile none swap sw 0 0
# 查看当前交换空间
swapon --show
# 或
free -h
【配置优化】我拿到VPS服务器必做的那些事 - 教程 - IDC Flare
wget -O swap.sh https://raw.githubusercontent.com/yuju520/Script/main/swap.sh && chmod +x swap.sh && clear && ./swap.sh
提醒一下佬友,不要一上来就直接All in设置swap,先测试一下你的磁盘fio性能如何再做决定:
如果磁盘读写很拉胯,当大量使用到swap的时候你的系统会被内存抖动和频繁换页拖垮。这种情况建议使用Zram,设置为实际内存的50-100%即可。可以保留swap但是把priority降低;
如果不是石头盘再考虑给swap上强度,但也不太多。2G内存以下100%就够了,往上嗯够用就行吧。也是配合Zram使用,仅作为兜底。
swap也不是万能的,如果真的在跑内存占用高的业务建议直接升级配置。
感谢 大佬, 一般华为云的机器配置Zram 还是 swap 呢?
提醒佬swap不要超过2G,云主机用的云盘io性能极差。
华为云没有用过不知道佬的是啥配置,不过应该不会默认开swap和zram
主要还是看你的机器配置和使用场景,4G以下的小内存机器优先用Zram抗抖,避免直接云盘I/O,再配个1–2G的小swap兜底
如果磁盘读写延迟对你很重要,那就沿用官方的配置尽量少开swap,并且把优先级降到最低。Zram设置个50-100%,把优先级拉到最高
好的 感谢大佬
佬 你有设置 Zram 的脚本吗? Zram 和swap可以同时使用是吧
首先回答你的问题,一起使用肯定是没有问题的,它们会通过优先级来协同工作。ZRAM能够处理大部分不活跃内存页的交换,避免频繁的磁盘读写,比起仅用Swapfile能够显著提升系统响应速度。Swapfile则仅作为备用,防止极端情况内存暴增系统崩溃。
以下内容摘录自我的笔记,不一定完全适合你,仅供参考。所有指令默认缺省了sudo,根据你的用户决定是否需要添加。配置环境以2C2G为例,建议部署到生产环境之前先结合你自己的服务器情况问问AI合不合适:
设置ZRAM
安装并启用systemd-zram-generator,设定ZRAM为物理内存的50%:
apt install -y systemd-zram-generator
tee /etc/systemd/zram-generator.conf >/dev/null <<'EOF'
[zram0]
zram-size = ram/2
compression-algorithm = zstd
swap-priority = 120
EOF
systemctl daemon-reload
# 使zram立即生效
systemctl start dev-zram0.swap
# 或 swapon /dev/zram0
# 验证zram是否生效,是否生成了单元文件
swapon --show
ls /run/systemd/generator | grep zram
设置Swapfile
主要使用ZRAM,Swapfile仅作为兜底,1G即可:
fallocate -l 1G /swapfile
chmod 600 /swapfile
mkswap /swapfile
# 优先级仅给10
swapon -p 10 /swapfile
echo '/swapfile none swap sw,pri=10 0 0' | sudo tee -a /etc/fstab
调整内核换页倾向:
tee /etc/sysctl.d/99-vps-memory.conf >/dev/null <<'EOF'
# 此处的值取决于内存性能,建议设置100-180
vm.swappiness = 100
vm.vfs_cache_pressure = 100
EOF
sysctl --system
使用earlyoom内存防抖:
apt install -y earlyoom
systemctl enable --now earlyoom
有问题欢迎继续交流,一起学习。如果对佬有帮助就求个认可 ![]()
好的 感谢佬
