Linux建立swap檔案

2022-08-18 15:48:12 字數 1456 閱讀 7636

新增swap分割槽

根據redhat公司的建議,swap分割槽最適合的大小是物理記憶體的1-2倍.不過linux上有些軟體對swap分割槽得需求較大,

例如要順利執行oracle資料庫軟體,swap分割槽至少需要400mb或者物理記憶體2倍以上的空間.當然我們在安裝linux的時候,就能直接講swap分割槽設定到足夠的大小,但如果已經安裝好linux了,之後又想再安裝類似oracle的軟體,卻發現swap分割槽空間不夠,該如何處理?

針對此種情況,有兩種解決方法:一是建立新的swap分割槽;另一則是建立swap檔案. 

(這裡暫時對建立swap檔案做說明)

建立swap檔案

如果你的硬碟空間已經全部分配給其他分割槽,也沒有多餘的預算新添購硬碟,我們可以利用swap檔案的方式增加虛擬的swap空間,

不過執行效能會較實際的swap分割槽差.

產生swap檔案 

要建立swap檔案,執行dd命令,新增乙個256mb的swap檔案:

# dd if=/dev/zero of=/tmp/myswap bs=32k count=8192

(bs=32k指定每個扇區占用32kb(也可用512k),讀入了8192+0個區段,輸出了8192+0個區段)

注意:bs引數的目的在於指定每次讀取及輸入多少個bytes;由於磁碟訪問的最小單位為扇區,因此設定bs也等於設定每個扇區的大小

;而count的目的則在指定可以使用多少個扇區.因此,可以使用的硬碟空間就等於bs*count.以上範例為例,可以使用的硬碟空間等於32*8192=262144(kb),亦等於256mb.

執行上述命令後,會在/tmp目錄中建立乙個256mb的myswap檔案 

格式華及啟動swap檔案

接下來執行mkswap命令,將myswap檔案格式化成s檔案系統,系統才能使用,切換到/tmp目錄,並執行以下命令:

# mkswap myswap (#將檔案格式化為swap檔案格式)

setting up swapspace version 1 , size = 262144 kb

# swapon /tmp/myswap (#啟動swap分割槽)

要停止使用新建立的swap檔案,只要執行 swapoff /tmp/myswap命令即可.

開機時自動啟動新新增的swap分割槽

如果每次開機後都要執行swapon命令啟動swap分割槽或者檔案,這太麻煩了.這時可以利用文字編輯器在/etc/fstab檔案加一行,

好讓開機時自動啟動swap分割槽及檔案:

/dec/hdb5 swap swap defaults 0 0 (開機時啟動此swap分割槽) 

/tmp/myswap swap swap defaults 0 0 (開機時啟動此swap檔案)

當然系統可以用多個swap,對已分配有swap,但不夠用,可以依照此方法增加,swap檔案的位置按自己喜好任選。

Linux建立swap分割槽 檔案方式

對於伺服器來說記憶體比較昂貴,需求不是特別強的時候經常採用swap windows 下叫虛擬記憶體 來節省一部分記憶體,現在ssd做swap的話速度比之前機械硬碟也有很高提公升。自己經常需要這個操作,總是忘記命令,特此記錄一下便於後續查詢。通過建立分割槽來建立 通過檔案方式建立 第1種方式要求比較高...

Linux下建立Swap交換檔案

據了解linux下可以有兩種方法建立交換空間,一種是建立交換分割槽,另一種是建立交換檔案。本文記錄的是建立交換檔案的方法,因為我用的是這種方法。起因就是打算編譯整個安卓原始碼,然後報錯,然後有人告訴我說你交換空間為零,然後需要新增交換空間。新增交換檔案步驟 1 找個地方建立乙個.swap的檔案,我放...

LINUX 手動建立SWAP檔案及刪除

原文 1.確定swap檔案的大小,單位為m。將該值乘以1024得到塊大小。例如,64mb的swap檔案的塊大小是65536。2.在root提示符下,鍵入下面的命令,其中count大小等於所要求的塊大小 dd if dev zero f swapfile bs 1024 count 655363.建立...