Ubuntu 新增 4GB Swap 教學文件
以下為在 Ubuntu 24.04 主機上新增 4GB swap 的完整操作流程與解說,包含你實際執行的指令整理後的教學。
📌 1. 查看磁碟使用狀況
在新增 swap 前,先確認磁碟空間是否足夠:
1 | df -h |
1 | df -h |
範例輸出:
1 | Filesystem Size Used Avail Use% Mounted on |
1 | Filesystem Size Used Avail Use% Mounted on |
可見有 11GB 可用空間,足以建立新的 4GB swapfile。
📌 2. 建立 4GB Swap File
使用 fallocate 建立一個大小為 4GB 的 swap 檔案:
1 | sudo fallocate -l 4G /swapfile2 |
1 | sudo fallocate -l 4G /swapfile2 |
📌 3. 設定 Swap 檔案權限
Swap file 必須設定成只有 root 能讀寫,否則系統會拒絕使用:
1 | sudo chmod 600 /swapfile2 |
1 | sudo chmod 600 /swapfile2 |
📘 額外補充:Linux 權限教學(給完全不懂的人)
為了更容易理解,我用超白話方式說明:
🔹 什麼是 Linux 權限?
Linux 裡每個檔案與資料夾都有三種「身分」能對它做事:
User(u):檔案的擁有者
Group(g):與該檔案同群組的人
Others(o):所有其他人(包含陌生人)
每個身分都可以有三種權限:
r = read(讀)
w = write(寫)
x = execute(執行)
🔹 數字是怎麼來的?
Linux 會用一個「三位數」表示權限,例如:
chmod 600 file
代表:
第一個數字(6)→ user 的權限
第二個數字(0)→ group 的權限
第三個數字(0)→ others 的權限
那 6、0、0 是什麼意思?
權限對應如下:
r = 4
w = 2
x = 1
所以:
6 = 4 + 2 = rw-(讀寫可)
0 = —(完全沒權限)
🔹 用表格讓你秒懂
| 數字 | 權限 | 意思 |
|---|---|---|
| 7 | rwx | 讀寫執行全部可 |
| 6 | rw- | 讀 + 寫 |
| 5 | r-x | 讀 + 執行 |
| 4 | r– | 只有讀 |
| 0 | -– | 什麼都不行 |
🔹 swapfile 為什麼不能設 644 或 777?
644 = 其他人能讀 → 完全不行
666 = 其他人能寫 → 大爆炸級資安問題
777 = 人人可讀寫執行 → 不要命了
因為 swapfile 裡可能包含:
密碼明文
MySQL 的資料
後台 session
記憶體裡任何曾存在過的資料
所以必須限制成:
600(rw——-)
這樣才能確保:
root 可以使用
其他任何人都不能讀寫
系統才能安全掛載 swapfile
📌 4. 將檔案格式化成 Swap 空間
將剛建立的檔案轉成 swap 格式:
1 | sudo mkswap /swapfile2 |
1 | sudo mkswap /swapfile2 |
執行後會看到類似:
1 | Setting up swapspace version 1, size = 4 GiB<br>UUID=xxxxx-xxxxx |
1 | Setting up swapspace version 1, size = 4 GiB<br>UUID=xxxxx-xxxxx |
📌 5. 啟用 Swap File
讓 swapfile 立即生效:
1 | sudo swapon /swapfile2 |
1 | sudo swapon /swapfile2 |
📌 6. 設定開機自動啟用 Swap
把設定寫入 /etc/fstab:
1 | echo '/swapfile2 none swap sw 0 0' | sudo tee -a /etc/fstab |
1 | echo '/swapfile2 none swap sw 0 0' | sudo tee -a /etc/fstab |
📌 7. 確認 Swap 是否成功新增
使用 free -h 查看目前的記憶體與 swap 狀態:
1 | free -h |
1 | free -h |
範例輸出:
1
2
3
total used free shared buff/cache available
Mem: 961Mi 873Mi 79Mi 71Mi 221Mi 88Mi
Swap: 4.5Gi 520Mi 4.0Gi
1 | total used free shared buff/cache available |
可以看到:
原本的 512MB swap + 新增的 4GB → 總共 4.5GB swap
系統已成功使用新的 swap。




