温馨提示×

Debian Swap更新后重启吗

小樊
41
2025-11-21 06:51:49
栏目: 智能运维

是否需要重启

  • 仅调整 Swappiness/vm.swappiness 等内核参数:不需要重启,执行 sudo sysctl -p 即可生效。
  • 新增或启用 Swap 文件/分区:不需要重启,使用 sudo swapon <文件或设备> 即可立即生效;若希望开机自动挂载,需写入 /etc/fstab
  • 修改 /etc/fstab 中现有 Swap 条目:已启用的 Swap 不会自动按新配置生效,需先 swapoffswapon,或执行 sudo systemctl daemon-reloadswapon -a;为确保一致性,建议重启一次。
  • 使用 LVM 扩容 Swap 分区:多数情况下在线生效,但为确保内核与 initramfs 一致,建议重启。
  • 启用或更改用于休眠的 Swap(涉及 /etc/initramfs-tools/conf.d/resumeupdate-initramfs):需要重启,使 initramfs 在下一次启动时使用正确的 RESUME=UUID
  • 仅执行 apt update/upgrade 等常规系统更新:与 Swap 无直接关系,通常无需重启;若更新涉及相关内核或 initramfs,按提示重启即可。

常见场景与操作

  • 查看当前 Swap:
    • sudo swapon --show
    • free -h
  • 启用新 Swap 文件/分区:
    • 文件示例:sudo fallocate -l 2G /swapfile && sudo chmod 600 /swapfile && sudo mkswap /swapfile && sudo swapon /swapfile
    • 分区示例:sudo swapon /dev/sdXn
    • 开机自动挂载:向 /etc/fstab 追加 /swapfile none swap sw 0 0/dev/sdXn none swap sw 0 0
  • 修改 fstab 后使配置生效:
    • sudo swapoff -a,再 sudo swapon -a;或 sudo systemctl daemon-reload && sudo swapon -a
  • 调整 Swappiness:
    • 临时:sudo sysctl vm.swappiness=10
    • 永久:写入 /etc/sysctl.conf/etc/sysctl.d/*.confsudo sysctl -p
  • 配置休眠使用的 Swap:
    • /etc/initramfs-tools/conf.d/resume 中设置 RESUME=UUID=<swap-uuid>
    • 更新 initramfs:sudo update-initramfs -u
    • 重启以生效

风险提示

  • 修改 /etc/fstab 前务必备份;错误的 Swap 配置可能导致系统无法启动。
  • 执行 swapoff -a 前确认系统内存充足,避免 OOM。
  • 扩容或替换正在使用的 Swap 前,建议先停用旧 Swap,确认新 Swap 正常后再删除旧空间。

0