centos系统swap设置 查看swap分区的方法

时间:2023-03-10 00:02:53
centos系统swap设置 查看swap分区的方法

交换分区swap,意思是“交换”、“实物交易”,它的功能就是在内存不够的情况下,操作系统先把内存中暂时不用的数据,存到硬盘的交换空间,腾出内存来让别的程序运行,和Windows的虚拟内存(pagefile.sys)的作用是一样的。

查看 已存在的swap分区:

1
2
3
4
5
[root@iZ94hzx4xerZ bin]# swapon -s
Filename Type Size Used Priority
/mnt/swap file 10232 10184 -1

创建用于交换分区的文件:

1
2
3
4
5
6
7
[root@iZ94hzx4xerZ bin]# dd if=/dev/zero of=/mnt/swap bs=1024 count=10240
10240+0 records in
10240+0 records out
10485760 bytes (10 MB) copied, 0.237175 s, 44.2 MB/s

bs=1024 指的是创建swap分区的初始大小,count指的是swap最大空间,推荐设置为内存的1-2倍。

设置交换分区文件:

1
2
3
4
5
6
7
8
9
[root@iZ94hzx4xerZ mnt]# mkswap /mnt/swap
mkswap: /mnt/swap: warning: don't erase bootbits sectors
on whole disk. Use -f to force.
Setting up swapspace version 1, size = 2044 KiB
no label, UUID=e6f0ae06-0e6b-4fce-8c18-d5a247b40259

立即启用交换分区文件:

1
[root@iZ94hzx4xerZ mnt]# swapon /mnt/swap

设置开机时自启用swap分区:

需要修改文件/etc/fstab中的swap行。

添加 /mnt/swap swap swap defaults 0 0

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#
# /etc/fstab
# Created by anaconda on Thu Aug 14 21:16:42 2014
#
# 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=94e4e384-0ace-437f-bc96-057dd64f42ee / ext4 defaults,barrier=0 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
/mnt/swap swap swap defaults 0 0

设置后可以执行free -m命令或者top查看效果:

1
2
3
4
5
6
7
8
9
10
11
[root@iZ94hzx4xerZ bin]# top
top - 20:33:11 up 4:53, 2 users, load average: 0.00, 0.00, 0.00
Tasks: 104 total, 1 running, 88 sleeping, 15 stopped, 0 zombie
Cpu(s): 0.3%us, 0.2%sy, 0.0%ni, 99.5%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 1920740k total, 1845096k used, 75644k free, 38716k buffers
Swap: 10232k total, 10184k used, 48k free, 260692k cached

删除swap分区:

1
[root@iZ94hzx4xerZ bin]# swapon /mnt/swap