Ubuntu22云服務器添加2G Swap分區
- 步驟 1:檢查當前 Swap 和內存
- 步驟 2:創建 2GB 的 Swap 文件
- 步驟 3:設置權限并格式化
- 步驟 4:啟用 Swap 文件
- 步驟 5:永久保留 Swap 配置
- 可選優化:調整 Swappiness
- 驗證結果
- 注意事項
在 Ubuntu 22 云服務器上添加 2GB 的 Swap 空間(交換分區),
推薦使用 Swap 文件而非物理分區,因為操作更簡單且無需調整磁盤布局。
以下是詳細步驟:
步驟 1:檢查當前 Swap 和內存
# 查看內存和 Swap 使用情況
free -h# 檢查已啟用的 Swap 設備
swapon --show
- 確認當前內存大小(例如 32GB)及是否已有 Swap。
步驟 2:創建 2GB 的 Swap 文件
# 使用 fallocate 快速創建 2GB 文件(推薦)
sudo fallocate -l 2G /swapfile# 如果 fallocate 不可用,使用 dd(較慢)
# sudo dd if=/dev/zero of=/swapfile bs=1M count=2048
步驟 3:設置權限并格式化
# 確保文件僅 root 可讀寫
sudo chmod 600 /swapfile# 將文件格式化為 Swap 格式
sudo mkswap /swapfile
步驟 4:啟用 Swap 文件
# 臨時啟用 Swap
sudo swapon /swapfile# 驗證 Swap 是否生效
swapon --show
free -h
步驟 5:永久保留 Swap 配置
# 將 Swap 文件寫入 /etc/fstab
echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab
可選優化:調整 Swappiness
默認情況下,系統傾向于使用 Swap 的頻率由 swappiness
值控制(范圍 0-100)。
- 推薦值:
- 服務器建議設置為較低值(如
10
),減少過早使用 Swap。 - 桌面環境可適當提高(如
60
)。
- 服務器建議設置為較低值(如
# 臨時調整
sudo sysctl vm.swappiness=10# 永久生效
echo 'vm.swappiness=10' | sudo tee -a /etc/sysctl.conf# 驗證
cat /proc/sys/vm/swappiness
驗證結果
free -h
輸出示例:
total used free shared buff/cache available
Mem: 32.0Gi 31.1Gi 200Mi 10Mi 700Mi 800Mi
Swap: 2.0Gi 0B 2.0Gi
注意事項
- 云服務器限制:某些云服務商可能默認禁用 Swap,需檢查服務商文檔。
- 磁盤空間:確保根目錄有足夠空間存放
/swapfile
。 - 性能影響:Swap 基于磁盤,頻繁使用可能降低性能,建議根據應用需求調整大小。