Linux swap分区操作

swap交换分区是系统RAM的补充,swap 分区支持虚拟内存。当没有足够的 RAM 保存系统处理的数据时,会将数据写入 swap 分区,当系统缺乏 swap 空间时,内核会因 RAM 内存耗尽而终止进程。

swap  模拟内存

[root@localhost ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           977M        328M        109M        7.5M        539M        411M
Swap:          2.0G          0B        2.0G

案例1:增加linux系统可用的swap空间

[root@localhost ~]# mkswap /dev/sdc3  将/dev/sdc3的文件系统设为swap
mkswap: /dev/sdc3: warning: wiping old ext4 signature.
Setting up swapspace version 1, size = 2097148 KiB
no label, UUID=fd15d73b-b842-4c9b-9c3e-15c22548ef47


[root@localhost ~]# blkid /dev/sdc3   查看swap分区的uuid
/dev/sdc3: UUID="fd15d73b-b842-4c9b-9c3e-15c22548ef47" TYPE="swap" PARTUUID="1c175a58-1f6c-4456-aee7-378142e83b6f" 

#vim /etc/fstab
UUID=fd15d73b-b842-4c9b-9c3e-15c22548ef47 swap     swap   defaults      0 0

[root@localhost ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           977M        328M        109M        7.5M        539M        411M
Swap:          2.0G          0B        2.0G

[root@localhost ~]# swapon -a   将/etc/fstab文件中所有设置为swap的设备,启动为交换区;

[root@localhost ~]# free -h 
              total        used        free      shared  buff/cache   available
Mem:           977M        330M        108M        7.5M        539M        409M
Swap:          4.0G          0B        4.0G
注:可以看到swap分区的大小发生了变化

[root@localhost ~]# swapon -s   -s:显示交换区的使用状况;
Filename				Type		Size	Used	Priority
/dev/dm-1                              	partition	2097148	0              -1
/dev/sdc3                              	partition	2097148	0	       -2


[root@localhost ~]# dd if=/dev/zero of=/dev/null count=1 bs=4G   模拟内存占用,使其使用swap
0+1 records in
0+1 records out
2147479552 bytes (2.1 GB) copied, 2.86847 s, 749 MB/s

[root@localhost ~]# free -h
              total        used        free      shared  buff/cache   available
Mem:           977M         78M        827M        272K         71M        790M
Swap:          4.0G        186M        3.8G
注:可以看到swap分区发生了变化,使用了186M


可以通过修改优先级,来选择优先使用哪一块设备的swap
vim /etc/fstab
UUID=fd15d73b-b842-4c9b-9c3e-15c22548ef47 swap     swap   pri=100      0 0
swapoff /dev/sdc3  先禁用swap
swapon -a     再启用

案例2:禁用swap

vim /etc/fstab  将文件里的swap全部注释掉
swapoff -a  禁用全部swap
swapon -s  查看swap  

案例3:使用一个文件来充当swap

#dd if=/dev/zero of=/swapfile bs=1M count=2048
#ll -h /swapfile
#chmod a= /swapfile   修改权限

#mkswap /swapfile
#blkid /swapfile
#vim /etc/fstab
/swapfile      none   swap  defaults 0 0
#swapon -a

案例4:迁移文件swap

#swapoff -a  先禁用
#mv /swapfile /test/
#vim /etc/fstab
/test/swapfile   none   swap  defaults  0 0
#swapon -a
posted @ 2021-11-10 23:05  咚咚小孩  阅读(227)  评论(0)    收藏  举报