Ubuntu修改Swap交換空間大小的三種方法
Ubuntu 修改 Swap 交換空間大小
在 Ubuntu 系統(tǒng)(包括 18.04、20.04、22.04 等版本)中,Swap 交換空間是虛擬內(nèi)存,用于在物理 RAM 不足時(shí)擴(kuò)展內(nèi)存。默認(rèn)情況下,Ubuntu 通常創(chuàng)建一個(gè) 1-2 GB 的 Swap 文件(位于 /swapfile)。修改 Swap 大小的原因可能是運(yùn)行內(nèi)存密集型任務(wù)(如機(jī)器學(xué)習(xí)、視頻編輯)時(shí)出現(xiàn) OOM(Out of Memory)錯(cuò)誤。
注意事項(xiàng):
- 操作前備份重要數(shù)據(jù),以防分區(qū)調(diào)整出錯(cuò)。
- 推薦 Swap 大小:等于或略大于 RAM(例如 RAM 8 GB 時(shí) Swap 設(shè)為 8-16 GB),但不超過(guò) 4 GB 作為備份使用。如果是服務(wù)器,建議根據(jù)實(shí)際負(fù)載調(diào)整。
- 這些操作需要 root 權(quán)限,使用
sudo。 - 如果系統(tǒng)使用 Swap 分區(qū)(而非文件),調(diào)整更復(fù)雜,可能需調(diào)整分區(qū)表(使用
gparted工具),建議在單用戶(hù)模式或 Live USB 下操作。
以下是兩種常見(jiàn)方法:調(diào)整現(xiàn)有 Swap 文件(推薦,簡(jiǎn)單無(wú)風(fēng)險(xiǎn))和創(chuàng)建新 Swap 文件(如果現(xiàn)有 Swap 不足)。我將以調(diào)整為 8 GB 為例。
方法一:調(diào)整現(xiàn)有 Swap 文件大?。ㄟm用于大多數(shù) Ubuntu 安裝)
查看當(dāng)前 Swap 信息
運(yùn)行命令確認(rèn)當(dāng)前 Swap 大小和位置:
sudo swapon --show
或
free -h
輸出示例:
NAME TYPE SIZE USED PRIO /swapfile file 1G 0B -2
這顯示 Swap 文件位于 /swapfile,大小 1 GB。
停用當(dāng)前 Swap
sudo swapoff -a
(這會(huì)暫時(shí)禁用 Swap,確保沒(méi)有進(jìn)程在使用它。如果系統(tǒng)內(nèi)存緊張,此步可能失敗——先關(guān)閉不必要程序。)
刪除舊 Swap 文件
sudo rm /swapfile
(確認(rèn)文件已刪除:ls /swapfile 應(yīng)無(wú)輸出。)
創(chuàng)建新 Swap 文件(例如 8 GB)
使用 fallocate(更快)或 dd(更兼容):
(bs=1G count=8 表示塊大小 1 GB,創(chuàng)建 8 個(gè)塊。)
fallocate 方法:
sudo fallocate -l 8G /swapfile
dd 方法(如果 fallocate 不可用):
sudo dd if=/dev/zero of=/swapfile bs=1G count=8
設(shè)置權(quán)限(僅 root 可讀寫(xiě)):
sudo chmod 600 /swapfile
格式化為 Swap:
sudo mkswap /swapfile
啟用新 Swap:
sudo swapon /swapfile
永久生效(開(kāi)機(jī)自動(dòng)掛載):
編輯 /etc/fstab 文件:
sudo nano /etc/fstab
在文件末尾添加一行(如果已存在 /swapfile none swap sw 0 0,無(wú)需重復(fù)):
/swapfile none swap sw 0 0
保存退出(Ctrl+O, Enter, Ctrl+X)。
驗(yàn)證:
sudo swapon --show free -h
應(yīng)顯示新大小 8 GB。
方法二:創(chuàng)建額外 Swap 文件(不刪除舊的,增加總空間)
如果不想修改現(xiàn)有 Swap,可創(chuàng)建新文件(例如 /newswapfile)并啟用。步驟類(lèi)似方法一的 4-9,但路徑改為 /newswapfile,并在 /etc/fstab 中添加相應(yīng)行。
方法三:調(diào)整 Swap 分區(qū)(高級(jí),需分區(qū)工具)
如果使用分區(qū)(非文件),需:
- 停用 Swap:
sudo swapoff -a。 - 使用
gparted(sudo apt install gparted)調(diào)整分區(qū)大?。ㄐ栉捶峙淇臻g)。 - 格式化:
sudo mkswap /dev/sdX(X 為分區(qū),如 sda3)。 - 更新
/etc/fstab和sudo swapon /dev/sdX。 - 重啟驗(yàn)證。
警告:分區(qū)操作風(fēng)險(xiǎn)高,可能導(dǎo)致數(shù)據(jù)丟失。
優(yōu)化 Swap 使用
調(diào)整 Swappiness(Swap 使用傾向):默認(rèn) 60(內(nèi)存用 40% 后開(kāi)始 Swap)。設(shè)為 10(更傾向內(nèi)存)或 0(禁用 Swap):
sudo sysctl vm.swappiness=10
永久:編輯 /etc/sysctl.conf 添加 vm.swappiness=10,然后 sudo sysctl -p。
優(yōu)先級(jí):如果多個(gè) Swap,設(shè)置優(yōu)先級(jí):sudo mkswap -p 10 /swapfile(數(shù)字越高優(yōu)先)。
如果遇到錯(cuò)誤(如“no space left”),檢查磁盤(pán)空間:df -h。對(duì)于特定 Ubuntu 版本(如 24.04),步驟類(lèi)似,但確認(rèn)文件位置。
如果你的系統(tǒng)是服務(wù)器或有特殊配置,建議提供更多細(xì)節(jié)(如 swapon --show 輸出)以進(jìn)一步診斷。
以上就是Ubuntu修改Swap交換空間大小的三種方法的詳細(xì)內(nèi)容,更多關(guān)于Ubuntu修改Swap交換空間大小的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
新手學(xué)習(xí)Linux系統(tǒng)的11點(diǎn)建議
這篇文章主要為大家詳細(xì)介紹了新手學(xué)習(xí)Linux系統(tǒng)的11點(diǎn)建議,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09
阿里云基于CentOS用vsftpd搭建FTP服務(wù)器
這篇文章主要介紹了阿里云CentOS系統(tǒng)yum方式安裝vsftpd的相關(guān)資料,最近想要了解的朋友可以了解一下。2016-10-10
Ubuntu18.04服務(wù)器密碼忘記或被篡改如何重置密碼
這篇文章主要介紹了Ubuntu18.04服務(wù)器密碼忘記或被篡改如何重置密碼,本文分步驟給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
Linux多路轉(zhuǎn)接之select函數(shù)使用方式
這篇文章主要介紹了Linux多路轉(zhuǎn)接之select函數(shù)使用方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-08-08
linux查看主板內(nèi)存槽與內(nèi)存信息的命令dmidecode方法
下面小編就為大家?guī)?lái)一篇linux查看主板內(nèi)存槽與內(nèi)存信息的命令dmidecode方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-11-11
Linux服務(wù)器部署JavaWeb項(xiàng)目完整教程
這篇文章主要介紹了Linux服務(wù)器部署JavaWeb項(xiàng)目完整教程,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-09-09
ubuntu (linux)修改網(wǎng)卡名稱(chēng)命令
這篇文章主要介紹了ubuntu (linux)修改網(wǎng)卡名稱(chēng)命令的相關(guān)資料,這里提供了實(shí)現(xiàn)的命令代碼,需要的朋友可以參考下2016-11-11

