redhat linux swap磁區擴展的三種方法
swap 介紹:
當物理記憶體占用完了后,當系統還需要更多的物理記憶體時,物理記憶體中inactive pages ,就move到swap空間,swap 空間是在位于硬碟上的,因此訪問速度較物理記憶體慢,
當機器的物理記憶體發生變化時,swap 磁區也要做相應的擴展:
有三種方法可以對swap 磁區進行擴展:
一、擴展正在使用的swap 磁區的邏輯卷(推薦使用此種方式)
二、新建swap 磁區,
三、新建swap file,
具體步驟如下:
第一種方法:
擴展正在使用的swap 磁區的邏輯卷
- step 1 -
1 fdisk /dev/sda 2 > p 查看現有的主磁區,一般是2個 3 > n 新建一個磁區 4 > p 新建一個主磁區 5 > 3 選擇編號3(如果已有磁區是2個) 6 > t 轉換一個磁區的型別 7 > l 查看所有可以選型別 8 > 8e 選擇磁盤型別為Linux LVM型別 9 > w 寫入磁區表
- step 2 -
partprobe 使新建的磁區生效,如果沒有這個命令就重啟虛擬機: reboot
- step 3 -
mkfs.ext3 /dev/sda3 將磁區格式轉化為ext4格式,適用于5系6系
mkfs.ext4 /dev/sda3 將磁區格式轉化為ext4格式 適用于7系
- step 4 -
df -h 查看root主磁區的名字叫什么(Filesystem 下面的‘mapper/’后面的就是主磁區名字) 比如我的主磁區名字叫: VolGroup00-LogVol00 ---記下,后面擴容會用到 /dev/mapper/VolGroup00-LogVol00
- step 5 -
lvm 進入lvm管理 lvm>vgdisplay -v 先查看自己的虛擬機組是什么(在--- Volume group ---下面,就是VG Name那一行),比如我的是VolGroup00 lvm>pvcreate /dev/sda3 這是初始化剛才的磁區,必須的 lvm>vgextend VolGroup00 /dev/sda3 將初始化過的磁區加入到虛擬卷組VolGroup00 (卷和卷組的命令可以通過 vgdisplay ) lvm>vgdisplay -v 查看可用容量大小,在Free PE / Size 這一行,后面/前面的數字就是,比如我的是: Free PE / Size 640 / 20.00 GB lvm>quit
#### 到這一步后才有Free Space供使用,然后關鍵部分:
- step 6 -
你得查得系統得swap磁區叫什么名字,可在/etc/fstab中查詢
# /etc/fstab檔案中需要有得:/dev/VolGroup00/LogVol01 swap swap defaults 0 0
其中/dev/VolGroup00/LogVol01就是swap磁區名字
那么swap 磁區的邏輯卷為:/dev/VolGroup00/LogVol01
/dev/mapper/vg_dnfserver-lv_swap Disable swapping for the associated logical volume: # swapoff -v /dev/VolGroup00/LogVol01 Resize the LVM2 logical volume by 256 MB: # lvm lvresize /dev/VolGroup00/LogVol01 -L +256M Format the new swap space: # mkswap /dev/VolGroup00/LogVol01 Enable the extended logical volume: # swapon -va # swapon /dev/mapper/vg_dnfserver-lv_swap Test that the logical volume has been extended properly: # cat /proc/swaps 或者# free
第二種方法:
新建swap 磁區
設定新建的swap 磁區的邏輯卷為:/dev/VolGroup00/LogVol02 Create the LVM2 logical volume of size 256 MB: # lvm lvcreate VolGroup00 -n LogVol02 -L 256M Format the new swap space: # mkswap /dev/VolGroup00/LogVol02 Add the following entry to the /etc/fstab file: /dev/VolGroup00/LogVol02 swap swap defaults 0 0 Enable the extended logical volume: # swapon -va Test that the logical volume has been extended properly: # cat /proc/swaps 或者# free
第三種方法:
新建swapfile
通過此種方式進行swap 的擴展,首先要計算出block的數目,具體為根據需要擴展的swapfile的大小,以M為單位,block=swap磁區大小*1M, 例如,需要擴展8G的swapfile,則:block=8192*1M=8G. 然后做如下步驟: # dd if=/dev/zero of=/mnt/swapfile bs=1M count=8192 2. 創建SWAP檔案 # mkswap /mnt/swapfile 3. 激活SWAP檔案 # swapon /mnt/swapfile 4. 查看SWAP資訊是否正確 # swapon -s 5. 添加到fstab檔案中讓系統引導時自動啟動 # echo "/mnt/swapfile swap swap defaults 0 0" >> /etc/fstab 6. 用命令free檢查2G交換磁區生效 # free -m # grep SwapTotal /proc/meminfo 7. 釋放SWAP檔案 # swapoff /mnt/swapfile 8. 洗掉SWAP檔案 # rm -fr /mnt/swapfile
總結:三種方法都能對swap 磁區進行擴展,但是推薦使用第一種法,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/228277.html
標籤:Linux
