Ubuntu交換區(qū)(Swap)擴(kuò)容實(shí)現(xiàn)方式
一、簡介 Swap 分區(qū)
Swap 分區(qū)是 Linux 操作系統(tǒng)中用于臨時(shí)存儲數(shù)據(jù)的一種特殊分區(qū)類型。它可以用來輔助物理內(nèi)存(RAM)工作,尤其是在內(nèi)存不足時(shí),系統(tǒng)會將一些數(shù)據(jù)從內(nèi)存移動到 Swap 空間,從而釋放內(nèi)存供其他任務(wù)使用。Swap 的本質(zhì)是磁盤上的一塊區(qū)域(分區(qū)或文件),充當(dāng)虛擬內(nèi)存,一般我們可以分為兩種類型:
Swap 分區(qū):專門劃分磁盤空間并設(shè)置為 swap 類型的分區(qū)。Swap 文件:在文件系統(tǒng)中創(chuàng)建的一個普通文件,功能與 Swap 分區(qū)相同
sudo swapon --show ---------------------------------- # swap 文件 NAME TYPE SIZE USED PRIO /swapfile file 4G 0B -2 # swap 分區(qū) NAME TYPE SIZE USED PRIO /dev/sda2 partition 4G 0B -2 # /dev/sda2 是具體的硬盤類型,HDD/SSD
Swap 分區(qū)是傳統(tǒng)的虛擬內(nèi)存實(shí)現(xiàn)方式,為操作系統(tǒng)提供內(nèi)存不足時(shí)的備用空間。而在現(xiàn)代系統(tǒng)中(Ubuntu 18.04 開始,默認(rèn)使用 Swap 文件),Swap 文件更常用,因?yàn)樗`活易調(diào)整,但對于特定場景(如系統(tǒng)休眠),Swap 分區(qū)仍然不可或缺。因此,在 Ubuntu 中調(diào)整 swap 交換分區(qū)的大小,具體取決于使用的是分區(qū)(Swap Partition) 還是交換文件(Swap File) 作為交換空間。
二、調(diào)整 Swap 文件大小
關(guān)閉(禁用)當(dāng)前 Swap 文件
sudo swapoff /swapfile
刪除當(dāng)前的 Swap 文件
sudo rm /swapfile
創(chuàng)建新的 Swap 文件并指定大小,以4G為例
sudo dd if=/dev/zero of=/swapfile bs=1G count=4 # count=4表示創(chuàng)建4個1GB的塊

權(quán)限設(shè)置
sudo chmod 600 /swapfile

格式化新的 Swap 文件
sudo mkswap /swapfile

啟用新的 Swap 文件
sudo swapon /swapfile
驗(yàn)證是否啟用了新的 Swap
sudo swapon --show
編輯 fstab 文件,確保 /swapfile 開機(jī)自動掛載
sudo vim /etc/fstab
在 fstab 文件中插入(已有可忽略這步)
/swapfile none swap sw 0 0
查看當(dāng)前的 Swap 狀態(tài)
free -h

三、調(diào)整 Swap 分區(qū)大小
關(guān)閉(禁用)當(dāng)前 Swap 文件
sudo swapoff -a

使用命令行找到 Swap 分區(qū)
fdisk -l 或者 lsblk -f # 后續(xù)會頻繁使用,請關(guān)注工具的顯示格式


刪除舊的 Swap 分區(qū)(磁盤分區(qū)另見文章),這里為了展示,沒有刪除舊的交換分區(qū)只是停用,可以根據(jù)自己情況酌情選擇刪除與否。
創(chuàng)建新分區(qū)并指定大小

將新分區(qū)格式化為 Swap 類型
sudo mkswap /dev/nvme0n1p12 # 換成自己的分區(qū)名


啟用新的 Swap 分區(qū)
sudo swapon /dev/nvme0n1p12

驗(yàn)證是否啟用了新的 Swap 分區(qū)
sudo swapon --show

編輯 fstab 文件,確保 Swap 分區(qū)開機(jī)自動掛載
sudo vim /etc/fstab
在 fstab 文件中插入(注意將原交換區(qū)注釋掉)
/dev/nvme0n1p12 none swap sw 0 0

查看當(dāng)前的 Swap 狀態(tài)
free -h

總結(jié)
從 Ubuntu 18.04 開始,Swap 文件已成為默認(rèn)設(shè)置,手動創(chuàng)建 Swap 分區(qū)已不是必要步驟。
在安裝系統(tǒng)的時(shí)候,可以只指定 根目錄(/) 和 Home 目錄(/home) 的分區(qū)大小,而不專門為 Swap 創(chuàng)建分區(qū),安裝程序會自動創(chuàng)建一個 Swap 文件。
安裝程序會根據(jù)物理內(nèi)存大小自動計(jì)算(通常是內(nèi)存大小的等量或兩倍,具體取決于內(nèi)存和硬盤空間的實(shí)際情況)。以上是兩種交換區(qū)擴(kuò)容的方法。
這些僅為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
如何解決win10與Ubuntu16.04時(shí)間不同步的問題的方法
本篇文章主要介紹了如何解決win10與Ubuntu16.04時(shí)間不同步的問題的方法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-05-05
Linux下查看壓縮文件內(nèi)容的10種方法(小結(jié))
這篇文章主要介紹了Linux下查看壓縮文件內(nèi)容的10種方法(小結(jié)),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-11-11
詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式
這篇文章主要介紹了詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2019-06-06
Ubuntu系統(tǒng)下USB無線網(wǎng)卡無法識別的解決方案
當(dāng)無線網(wǎng)卡插入U(xiǎn)buntu系統(tǒng)后,lsusb顯示設(shè)備已識別,但網(wǎng)絡(luò)管理工具無反應(yīng),iwconfig找不到無線接口,核心問題是系統(tǒng)識別了USB設(shè)備,卻未正確加載無線網(wǎng)卡驅(qū)動,本文給大家介紹了Ubuntu系統(tǒng)下USB無線網(wǎng)卡無法識別的解決方案,需要的朋友可以參考下2025-08-08

