swap
(交換)分割槽是一種通過在硬碟中預先劃分一定的空間,然後將把記憶體中暫時不常用的資料臨時存放到硬碟中,以便騰出物理記憶體空間讓更活躍的程式服務來使用的技術,其設計目的是為了解決真實物理記憶體不足的問題。但由於交換分割槽畢竟是通過硬碟裝置讀寫資料的,速度肯定要比物理記憶體慢,所以只有當真實的物理記憶體耗盡後才會呼叫交換分割槽的資源。
交換分割槽的建立過程與前文講到的掛載並使用儲存裝置的過程非常相似。在對/dev/sdb
儲存裝置進行分割槽操作前,有必要先說一下交換分割槽的劃分建議:在生產環境中,交換分割槽的大小一般為真實物理記憶體的1.5~2
倍,為了更明顯地感受交換分割槽空間的變化,這裡取出乙個大小為5gb
的主分割槽作為交換分割槽資源。在分割槽建立完畢後儲存並退出即可:
[root@lynchj ~]# fdisk /dev/sdb
welcome to fdisk (util-linux 2.23.2).
changes will remain in memory only, until you decide to
write them.
be careful before using the write command.
device does not contain a recognized partition table
building a new dos disklabel with disk identifier 0xb3d27ce1.
command (m for help): n
partition type:
p primary (1 primary, 0 extended, 3 free)
e extendedselect (default p): p
partition number (2-4, default
2):first sector (4196352-41943039, default
4196352):
using
default value 4196352
last sector, +sectors or +size (4196352-41943039, default
41943039): +5g
partition 2
oftype linux and
of size 5 gib is
setcommand (m for help): p
disk /dev/sdb: 21.5 gb, 21474836480 bytes, 41943040 sectors
units = sectors of
1 * 512 = 512 bytes
sector size (logical/physical): 512 bytes / 512 bytes
i/o size (minimum/optimal): 512 bytes / 512 bytes
disk label type: dos
disk identifier: 0xb0ced57f
device boot start end blocks id system
/dev/sdb1 2048
4196351
2097152
83 linux
/dev/sdb2 4196352
14682111
5242880
83 linux
command (m for help): w
the partition table has been altered!
calling ioctl() to re-read partition table.
warning: re-reading the partition table failed with error 16: device or resource busy.
the kernel still uses the old table. the new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
syncing disks.
使用swap 分割槽
專用的格式化命令mkswap
,對新建的主分割槽進行格式化操作:
[root@lynchj ~]# mkswap /dev/sdb2
setting up swapspace version 1, size = 5242876 kib
no label, uuid=2972f9cb-17f0-4113-84c6-c64b97c40c75
使用swapon 命令
把準備好的swap 分割槽
裝置正式掛載到系統中。我們可以使用free -m
命令檢視交換分割槽的大小變化(由2047mb 增加到7167mb):
[root@lynchj ~]# free -m
total used free shared buffers cached
mem:
1483
78270190
254-/+ buffers/cache
:526
957swap
:2047
02047
[root@lynchj ~]# swapon /dev/sdb2
[root@lynchj ~]# free -m
total used free shared buffers cached
mem:
1483
78569790
254-/+ buffers/cache
:530
953swap
:7167
07167
[root@lynchj ~]# vim /etc/fstab
## /etc/fstab
# created by anaconda on wed may 4 19:26:23 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#1
uuid=812b1f7c-8b5b-43da-8c06-b9999e0fe48b /boot xfs defaults 120
/dev/cdrom /media/cdrom iso9660 defaults 0
0/dev/sdb1 /newfs xfs defaults 0
0/dev/sdb2 swap swap defaults 0
0
虛擬記憶體swap
虛擬記憶體 在磁碟上的一片空間,僅作為物理記憶體的補充使用.linux一般不使用虛擬內 存.虛擬記憶體資訊 proc swaps 設定虛擬記憶體 方法一 1.建立新分割槽 2.將新分割槽的system id改為82 最後儲存退出.3.使用命令mkswap device格式化剛剛建立的新分割槽 例 m...
linux系統新增swap 虛擬記憶體 分割槽
在實際的生產環境中,實際的物理記憶體我們經常會覺得不夠用,增加物理記憶體的成本又比較高,一種折中方案就出來了,使用硬碟的一部分空間來做swap windows 下叫虛擬記憶體 將系統內非活動記憶體換頁到 swap,以提高系統可用記憶體。當然在一些特殊應用 elasticsearch 的話是建議不要使...
虛擬記憶體和swap分割槽的關係
首先,這兩個概念分別對應windows和linux,即 windows 虛擬記憶體 linux swap分割槽 windows即使物理記憶體沒有用完也會去用到虛擬記憶體,而linux不一樣 linux只有當物理記憶體用完的時候才會去動用虛擬記憶體 即swap分割槽 swap類似於windows的虛擬...