目錄
一、Swap 交換分區的功能
二、swap 交換分區的典型大小的設置
2.1 查看交換分區的大小
2.1.1 free
2.1.2?cat /proc/swaps 或 swapon -s
2.1.3 top
三、使用交換分區的整體流程
3.1 案例一
?3.2 案例二
一、Swap 交換分區的功能
計算機運行一個程序首先會將外存(硬盤)中的數據讀取到內存中,而 CPU 則從內存中讀取數據并根據指令運行相應的程序。其中讀寫速度(速度不匹配):CPU > 內存 > 硬盤。我們通過引入 swap 交換分區可以緩解 內存與外存之間的讀取數據的速度問題。swap 交換分區的物理實體是通過占用一部分外存的存儲空間實現的。通過 swap 交換分區技術實現內存從外存的讀取速度接近于內存的讀取速度(遠高于外存)。我們可以將 swap 交換分區理解為緩沖的橋梁,從而緩解了速度不匹配的矛盾。
二、swap 交換分區的典型大小的設置
1. 如果物理內存 <= 2G,swap 設置為 內存的 2 倍
2. 如果物理內存介于 2G~8G 之間,swap 設置為同等內存大小
3. 如果物理內存介于 8G~64G 之間,swap 設置為至少 4?G
4. 如果物理內存 >= 64G,swap 設置為至少 4 G
2.1 查看交換分區的大小
2.1.1 free
free:查看內存的詳細信息,其中包括交換分區的大小,單位為 K
free -m:查看內存的詳細信息,其中包括交換分區的大小,大小為 M
free -h :查看內存的詳細信息,其中包括交換分區的大小,大小為 G
2.1.2?cat /proc/swaps 或 swapon -s
cat /proc/swaps 或 swapon -s:查看即時內存中的交換分區信息。其中 proc 為根路徑下的即時內存目錄
2.1.3 top
top(實時刷新):顯示系統中運行的進程信息,包含swap分區信息 (q退出)
三、使用交換分區的整體流程
- 第一步:分區
- 第二步:更新磁盤分區表
- 第三步:格式化
- 第四步:掛載
- 第五步:使用(系統會自動使用)
3.1 案例一
要求:添加一個 1G 的 swap 分區并且重啟系統依然有效,不能改變原來的 swap 分區
1. 尋找空閑的磁盤:選擇 5G 空閑的 vdb
fdisk -l
2. 分區
fdisk /dev/vdb
3. 更新磁盤分區表
4. 格式化
mkswap /dev/vdc1
blkid
5. 手動掛載:將 1G 的 vdb1 填充到交換分區中(重啟后會失效)
驗證swap交換分區掛載成功與否的方法:
swapon /dev/vdb1
5. 永久掛載(開機自動掛載)
寫入開機自啟文件:
vim /etc/fstab/dev/vdb1 ? ? ? ? ?swap ? ? ? ? ?swap ? ? ? ? defaults 0 0swapon -a ? //不同于掛載普通分區時執行的mount -a
free
reboot ? //重啟驗證效果
驗證永久掛載的效果前:卸載手動掛載
swapoff /dev/vdb1
?3.2 案例二
要求:將系統的 swap 分區增加到 1500000K,并且重啟系統依然有效,不能改變原來的 swap 分區
1.?查看swap分區的大小
2.?計算swap的差值(要求將swap分區調整到1500000K)
3. 創建一個大小為451428大小的物理分區/dev/vdb2
4.?更新磁盤分區表
5.?格式化
6.?掛載
vim /etc/fstab
/dev/vdb2 swap swap defaults 0 0
7. 模擬交換分區重啟
8. 查看底層分區支持