redhat linux swap分區擴展的三種方法
swap 介紹:
當物理內存佔用完了後,當系統還須要更多的物理內存時,物理內存中inactive pages ,就move到swap空間。swap 空間是在位於硬盤上的,所以訪問速度較物理內存慢。
當機器的物理內存發生變化時,swap 分區也要作相應的擴展:
有三種方法能夠對swap 分區進行擴展:
1、擴展正在使用的swap 分區的邏輯卷(推薦使用此種方式)
2、新建swap 分區,
3、新建swap file,
具體步驟以下:linux
第一種方法:
擴展正在使用的swap 分區的邏輯卷
- step 1 -app
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 -ui
partprobe 使新建的分區生效,若是沒有這個命令就重啓虛擬機: reboot
- step 3 -spa
mkfs.ext3 /dev/sda3 將分區格式轉化爲ext4格式,適用於5系6系
mkfs.ext4 /dev/sda3 將分區格式轉化爲ext4格式 適用於7系
- step 4 -code
df -h 查看root主分區的名字叫什麼(Filesystem 下面的‘mapper/’後面的就是主分區名字) 好比個人主分區名字叫: VolGroup00-LogVol00 ---記下,後面擴容會用到 /dev/mapper/VolGroup00-LogVol00
- step 5 -orm
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供使用,而後關鍵部分:server
- step 6 -blog
你得查得系統得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 分區ci
設定新建的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 分區進行擴展,可是推薦使用第一種法。