手把手教您擴充套件虛擬記憶體

roc_guo發表於2022-08-22
導讀 在 磁碟剛分割槽的時候,我們會劃分一個swap分割槽,這塊分割槽作為一塊虛擬記憶體,承擔著擴充記憶體的作用。然而在工作中我們會遇到虛擬記憶體也不夠用的情況,這個時候我們也不能重新給磁碟進行分割槽,只能透過增加一個swap檔案,來擴充我們的虛擬記憶體。接下來,山醫的小凡將手把手帶你擴充你的虛擬記憶體。

手把手教您擴充套件虛擬記憶體手把手教您擴充套件虛擬記憶體
手把手教您擴充套件虛擬記憶體手把手教您擴充套件虛擬記憶體

1.檢查現有交換空間的大小

如果你想檢查你現有虛擬記憶體的大小,可以使用 ‘free -m ’

[root@chenfancentos ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        164        823          0         26         48
-/+ buffers/cache:         90        898
Swap:         1999          0       1999

根據現有交換空間的大小,選擇合適的擴充大小。

2.建立適合的swapfile

我們經常可以使用"dd" 來建立一個檔案,用 “if” 指定源,基本上除了 “/dev/zero” 外基本上不會寫別的,而/dev/zero 是UNIX系統特有的一個檔案。“of” 指定目標檔案, “bs” 定義塊的大小, “count” 定義塊的數量,這兩個引數的多少決定了目標檔案的大小。

[root@chenfancentos ~]# dd if=/dev/zero of=/tmp/swapfile  bs=300M count=1
記錄了1+0 的讀入
記錄了1+0 的寫出
314572800位元組(315 MB)已複製,13.9027 秒,22.6 MB/秒
[root@chenfancentos ~]# du  -h /tmp/swapfile
300M    /tmp/swapfile

可以看到新生成了一個swapfile檔案,大小為300M.

3.格式化剛才建立的swapfile
[root@chenfancentos ~]# mkswap -f /tmp/swapfile
Setting up swapspace version 1, size = 307196 KiB
no label, UUID=c4e2a8b1-fa09-41ab-bcbf-63c273ed9598

可以看到格式化後成功的UUID資訊

4.實現開機自動掛載交換檔案

我們在/etc/fstab中增加一下條目 /tmp/swapfile swap swap defaults 0 0,就能實現開機自動掛載。

[root@chenfancentos ~]# cat /etc/fstab
# /etc/fstab
# Created by anaconda on Sat Apr  2 19:37:01 2016
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
UUID=301b2f9f-91d3-47dd-8a43-d377cba1cd5c /                       ext4    defaults        1 1
UUID=812455f9-a63f-4b09-9336-05e3ada6f9a7 /boot                   ext4    defaults        1 2
UUID=416480d0-662c-406c-a328-b4c2f370577b swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/tmp/swapfile            swap                   swap    defaults        0 0

就這樣即使後續重啟,也能做到自動掛載。

5.啟用swapfile,檢視虛擬記憶體大小
[root@chenfancentos ~]# swapon /tmp/swapfile
[root@chenfancentos ~]# free -m
             total       used       free     shared    buffers     cached
Mem:           988        136        852          0         10         50
-/+ buffers/cache:         74        913
Swap:         2299          0       2299

可以興奮的看到,相對於初始的虛擬記憶體,現在增加了300M。是不是有點激動,想要體驗Linux之美,跟著山醫的小凡一起動手實驗。

本文原創地址:


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69955379/viewspace-2911418/,如需轉載,請註明出處,否則將追究法律責任。

相關文章