鏡像下載、域名解析、時間同步請點擊 阿里巴巴開源鏡像站
交換空間是硬盤上的一個空間,當物理 RAM 內存被用盡時,被緊急徵用的空間。當一個 Linux 系統 RAM 內存耗盡,不活躍的內存頁將會被移動到交換空間。
交換空間可以是一個獨立的交換分區,也可以是一個交換文件。例如,當在一個虛擬機上運行一個 Ubuntu 時,沒有一個交換分區,並且唯一的選項就是創建一個交換文件。
本文將為大家講解如何在 Ubuntu 20.04上添加一個交換空間。
一、前提準備
交換分區不應該被當作物理內存的替代品。因為交換分區是硬盤驅動器的一部分,它比物理內存更慢的訪問時間。如果你的系統經常內存耗盡,你應該添加更多內存。
通常,交換文件大小依賴於你的系統有多少 RAM 內存:
- 少於2 GB RAM 內存的系統 - 2倍 RAM 內存的大小
- 2 到 8 GB RAM 內存的系統 - 同樣 RAM 內存大小
- 大於 8 GB RAM 內存的系統 - 至少 4 GB 交換文件
注意只有 root 或者其他有 sudo 權限的用戶能夠激活 swap 文件。
二、創建一個交換文件
本例中,我們創建2 GB
交換文件。如果你想添加更多交換文件,將2G
替換成你需要設置的交換空間的大小即可。
完成下面的步驟,在 Ubuntu 20.04 上添加交換空間:
1、首先,創建一個用作交換文件的文件:
sudo fallocate -l 2G /swapfile
如果fallocate
工具在你的系統上不可用,或者提示說:fallocate failed: Operation not supported
,請使用下面的命令去創建交換文件:
sudo dd if=/dev/zero of=/swapfile bs=1024 count=2097152
2、設置文件權限到600
禁止常規用戶讀寫這個文件:
sudo chmod 600 /swapfile
3、在這個文件上創建一個 Linux 交換區:
sudo mkswap /swapfile
輸出結果如下:
Setting up swapspace version 1, size = 2 GiB (2147479552 bytes)
no label, UUID=fde7d2c8-06ea-400a-9027-fd731d8ab4c8
4、通過運行下面的命令,激活交換區:
sudo swapon /swapfile
想要持久化,請打開/etc/fstab
文件:
sudo nano /etc/fstab
並且粘貼下面的行:
/swapfile swap swap defaults 0 0
5、使用swapon
或者free
命令來驗證交換區是否已激活,如下所示:
sudo swapon --show
NAME TYPE SIZE USED PRIO
/swapfile file 2G 0B -1
sudo free -h
total used free shared buff/cache available
Mem: 981Mi 97Mi 68Mi 0.0Ki 814Mi 735Mi
Swap: 2.0Gi 10Mi 1.9Gi
三、調整 Swappiness 值
Swappiness 是一個 Linux 內核屬性,用來定義系統將會有多頻繁使用交換分區。它取值範圍從 0 到 100。一個較低的取值可以在可能的情況下,儘量避免交換,而一個較高的值會使得內核更頻繁地使用交換分區。
在 Ubuntu 上,默認的 Swappiness 取值被設置成 60
。你可以通過輸入下面的命令檢查當前值:
cat /proc/sys/vm/swappiness
輸出如下:
60
Swappiness 為 60 適合大部分 Linux 操作系統,對於生產型服務器,你需要將這個值設置成更低。
例如,將 Swappiness 值修改成 10
,運行:
sudo sysctl vm.swappiness=10
如果想要將這個參數持久化,而且在重啟時仍然起作用,請將下面的內容附加到/etc/sysctl.conf
文件:
vm.swappiness=10
最理想的 swappiness 取決於你的系統、內存的使用方式。你需要在小區間內調整這個取值來查找一個最適合的值。
四、移除一個交換文件
想要取消激活,並且刪除交換文件,步驟如下:
1、取消激活交換空間:
sudo swapoff -v /swapfile
2、從/etc/fstab
文件中移除交換文件條目/swapfile swap swap defaults 0 0
。
3、使用rm
命令刪除實際的交換區文件:
sudo rm /swapfile
五、總結
至此,我們已經向你展示了在你的 Ubuntu 20.04 系統上如何創建一個交換空間,以及如何激活和配置交換空間。
“ 阿里巴巴開源鏡像站 提供全面,高效和穩定的鏡像下載服務。釘釘搜索 ' 21746399 ‘ 加入鏡像站官方用戶交流群。”