Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> Linux 教學

Linux Swap 交換分區/文件創建與管理全流程

編輯:Linux 教學

當物理內存不足時,Swap 空間至關重要。本文詳細演示使用 dd 創建 Swap 文件、mkswap 格式化、swapon 啟用、swapoff 關閉、/etc/fstab 永久掛載的完整操作流程。

1. 創建 Swap 文件:dd


# 創建 128MB Swap 文件
dd if=/dev/zero of=/tmp/swap bs=1M count=128

# 輸出示例
128+0 records in
128+0 records out
134217728 bytes (134 MB) copied, 1.7066 seconds, 78.6 MB/s

# 驗證
ls -lh /tmp/swap
-rw-r--r-- 1 root root 128M Oct 28 15:33 /tmp/swap
  • if=/dev/zero:輸入全零流
  • of=/tmp/swap:輸出文件路徑
  • bs=1M count=128:塊大小 1MB,128 塊 = 128MB

2. 格式化為 Swap:mkswap


mkswap /tmp/swap
# Setting up swapspace version 1, size = 134213 kB

⚠ 警告:mkswap 會破壞目標文件/分區數據,務必確認路徑正確。

3. 啟用 Swap:swapon


# 查看當前 swap
free -h
# Swap: 1.2G  96K  1.2G

swapon /tmp/swap

# 再次查看
free -h
# Swap: 1.4G  96K  1.4G  ← 增加了 128MB

# 查看所有 swap 設備
swapon -s
Filename        Type      Size    Used  Priority
/dev/hdc5       partition 1020088 96    -1
/tmp/swap       file      131064  0     -3
  • Priority:數值越大優先級越高,內核優先使用高優先級 swap
  • 文件類型 swap 性能略低於分區,但靈活方便

4. 關閉 Swap:swapoff


swapoff /tmp/swap

free -h
# Swap: 1.2G  96K  1.2G  ← 恢復原狀

5. 開機自動掛載:/etc/fstab


# 編輯 fstab
vim /etc/fstab

# 添加一行
/tmp/swap  none  swap  defaults  0  0

字段含義:<設備> <掛載點> <類型> <選項>

  • Swap 類型掛載點固定為 none
  • defaults 即可,無需 rw 等選項

6. 立即生效


# 重新讀取 fstab 並掛載所有 swap
swapon -a

# 或
mount -a  # 但 mount -a 不處理 swap,需配合 swapon -a

進階:Swap 分區 vs 文件

類型優點缺點
分區性能穩定、無文件系統開銷、支持休眠需預留分區、調整大小麻煩
文件動態創建/刪除、大小靈活、無需重新分區文件系統碎片影響性能、不支持休眠

調優建議

  • /proc/sys/vm/swappiness (0-100):控制換出積極度,默認 60。服務器建議 10-30,桌面 60
  • 多塊磁盤可創建多個 swap,設置不同優先級並行提速
  • SSD 上頻繁 swap 影響壽命,可適當降低 swappiness 或使用 zram

總結

dd → mkswap → swapon → /etc/fstab 四步構建持久 Swap。文件適合臨時擴容,分區適合長期生產環境。

Copyright © Windows教程網 All Rights Reserved