咱們都知道在安裝Linux系統時在分區時能夠分配swap分區,而系統安裝後(在運行中)如何創建或調整swap分區呢?
在裝完Linux系統以後,創建Swap分區有兩種方法。
1.新建磁盤分區做爲swap分區
2.用文件做爲swap分區 (操做更簡單,我更經常使用)
下面介紹這兩種方法:(都必須用root權限,操做過程應該當心謹慎。)mysql
1、新建磁盤分區做爲swap分區
1.以root身份進入控制檯(登陸系統),輸入
# swapoff -a #中止全部的swap分區sql
2. 用fdisk命令(例:# fdisk /dev/sdb)對磁盤進行分區,添加swap分區,新建分區,在fdisk中用「t」命令將新添的分區id改成82(Linux swap類型),最後用w將操做實際寫入硬盤(沒用w以前的操做是無效的)。vim
3. # mkswap /dev/sdb2 #格式化swap分區,這裏的sdb2要看您加完後p命令顯示的實際分區設備名spa
4. # swapon /dev/sdb2 #啓動新的swap分區操作系統
5. 爲了讓系統啓動時能自動啓用這個交換分區,能夠編輯/etc/fstab,加入下面一行
/dev/sdb2 swap swap defaults 0 0
2、用文件做爲Swap分區內存
1.建立要做爲swap分區的文件:增長1GB大小的交換分區,則命令寫法以下,其中的count等於想要的塊的數量(bs*count=文件大小)。
# dd if=/dev/zero of=/root/swapfile bs=1M count=1024it
2.格式化爲交換分區文件:
# mkswap /root/swapfile #創建swap的文件系統io
3.啓用交換分區文件:
# swapon /root/swapfile #啓用swap文件登錄
4.使系統開機時自啓用,在文件/etc/fstab中添加一行:
/root/swapfile swap swap defaults 0 0
新建和增長交換分區用到的命令爲:mkswap、swapon等,而想關閉掉某個交換分區則用「swapon /dev/sdb2」這樣的命令便可sed
Linux環境下Swap配置方法
場景:
今天下午安裝一個CentOS6.5操做系統,忘記配置swap分區。看看如何安裝系統以後,增長和刪除swap分區。
方法以下:
1.內存佔用狀況
[root@joshua ~]# free -m
total used free shared buffers cached
Mem: 2006 1886 119 31 33 574
-/+ buffers/cache: 1278 727
Swap: 0 0 0
2.經過dd命令增長swap,增長一個2g的swap空間
[root@joshua ~]# dd if=/dev/zero of=/var/swap bs=1024 count=2048000
2048000+0 records in
2048000+0 records out
2097152000 bytes (2.1 GB) copied, 36.4509 s, 57.5 MB/s
3.建立swap文件
[root@joshua ~]# mkswap /var/swap
mkswap: /var/swap: warning: don't erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 2047996 KiB
no label, UUID=eba0b718-b5d0-488f-a368-0af288def8b6
[root@joshua ~]# mkswap -f /var/swap
Setting up swapspace version 1, size = 2047996 KiB
no label, UUID=5039b019-2db5-41b2-a289-3caf4fdd98bf
[root@joshua ~]#
4.加載該文件:
[root@joshua ~]# swapon /var/swap
5.看看swap是否生效
[root@mysql01 var]# free
6.查看swap當前狀態:
[root@joshua ~]# cat /proc/swaps
Filename Type Size Used Priority
/var/swap file 2047996 0 -1
7.添加至/etc/fstab , vim /etc/fstab
#
# /etc/fstab
# Created by anaconda on Thu Aug 24 12:21:20 2017
#
# 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=1ae5f12f-79c1-47d4-bed7-941ab9385396 / ext4 defaults 1 1
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
/var/swap swap swap defaults 0 0
8.若是再也不須要swap,能夠清理該分區: [root@joshua ~]# swapoff /var/swap