1. 程式人生 > 其它 >Ubuntu系統調整Swap交換檔案大小

Ubuntu系統調整Swap交換檔案大小

技術標籤:# Ubuntuswap交換檔案

什麼是Swap分割槽

Swap分割槽在系統的實體記憶體不夠用的時候,把硬碟記憶體中的一部分空間釋放出來,以供當前執行的程式使用。那些被釋放的空間可能來自一些很長時間沒有什麼操作的程式,這些被釋放的空間被臨時儲存到Swap分割槽中,等到那些程式要執行時,再從Swap分割槽中恢復儲存的資料到記憶體中。

系統安裝時自動建立的swap交換檔案只有1G,然而跑編譯的時候一直會提示錯誤,後來才發現是交換檔案太小了,需要另外再增加一些swap交換檔案的大小。

檢視Swap檔案大小

free -m m 是以兆為單位, g是以GB為單位, 預設是kb

在這裡插入圖片描述

我們可以看到預設配置的swap檔案是2G,如果是用來編譯處理大資料的話肯定是不夠用的。

建立目錄和SWAP檔案

在相應目錄下建立一個存放swap檔案的資料夾 並進入該目錄

sudo mkdir /home/swapfile

cd home/swapfile

用dd命令建立swap檔案

用dd命令建立一個2G的交換空間檔案

sudo dd if=/dev/zero of=swap bs=1G count=2

在這裡插入圖片描述

dd 命令解釋

dd:用指定大小的塊拷貝一個檔案,並在拷貝的同時進行指定的轉換。
注意:指定數字的地方若以下列字元結尾,則乘以相應的數字:b=512;c=1;k=1024;w=2

引數註釋:
1 if=檔名:輸入檔名,預設為標準輸入。即指定原始檔。< if=input file
> 2 of=檔名:輸出檔名,預設為標準輸出。即指定目的檔案。< of=output file > 3 ibs=bytes:一次讀入bytes個位元組,即指定一個塊大小為bytes個位元組。 obs=bytes:一次輸出bytes個位元組,即指定一個塊大小為bytes個位元組。 bs=bytes:同時設定讀入/輸出的塊大小為bytes個位元組。 4 cbs=bytes:一次轉換bytes個位元組,即指定轉換緩衝區大小。 5 skip=blocks:從輸入檔案開頭跳過blocks個塊後再開始複製。 6 seek=blocks:從輸出檔案開頭跳過blocks個塊後再開始複製。 注意:通常只用當輸出檔案是磁碟或磁帶時才有效,即備份到磁碟或磁帶時才有效。 7 count=
blocks:僅拷貝blocks個塊,塊大小等於ibs指定的位元組數。 8 conv=conversion:用指定的引數轉換檔案。 ascii:轉換ebcdic為ascii ebcdic:轉換ascii為ebcdic ibm:轉換ascii為alternate ebcdic block:把每一行轉換為長度為cbs,不足部分用空格填充 unblock:使每一行的長度都為cbs,不足部分用空格填充 lcase:把大寫字元轉換為小寫字元 ucase:把小寫字元轉換為大寫字元 swab:交換輸入的每對位元組 noerror:出錯時不停止 notrunc:不截短輸出檔案 sync:將每個輸入塊填充到ibs個位元組,不足部分用空(NUL)字元補齊。

轉換swap檔案

sudo mkswap -f swap

啟用swap檔案

sudo swapon swap

有時候會出現報錯 swapon: /swapfile: insecure permissions 0644, 0600 suggested.

此時需要將swap檔案修改許可權為644 或者600即可

chmod 644 swap

永久啟用swap

編輯 fstab 檔案

sudo nano /etc/fstab

在最後加上之前建立的swap檔案路徑和引數,重啟後就正常載入swap檔案了

/home/swapfile/swap none swap defaults 0 0

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片儲存下來直接上傳(img-qwHZodML-1608256282857)(https://www.linuxitellu.com/wp-content/uploads/2020/12/wp_editor_md_0a3a5edd4e5461a72a8f6d8af033884f.jpg)]

檢視swap檔案狀態

swapon

會將所有的swap檔案位置都列出來

再次檢視狀態

free -m 此時已經正常顯示交換檔案大為4G。

停止swap交換檔案

sudo swapoff /home/swapfile/swap

刪除交換檔案

sudo rm /home/swapfile/swap

相關內容

本文 Linuxitellu.com 同步釋出
更多Linux知識請訪問 Linuxitellu.com

如果覺得對你有所幫助請多多鼓勵 點贊 評論支援一下