swap分区
1.作用:
- 程序在运行时所有数据是在RAM,当RAM使用量超过了限额,为了使系统更加稳定,我们在硬盘上划分一部分空间来作内存缓冲区swap。
- 当内存使用超过限额,内核会把内存中闲置的数据存放到swap中,当程序需要swap分区中的数据时,内核将swap分区中的数据在交还给内存进程处理。
- 与内存共同组成虚拟交换分区
2.swap分区大小建议:
注意:当HIBERNATE打开后,系统当中的电源信息,关机后会被保存。开机后,保存的电源信息会被交还给内存,它消耗的内存资源是比较大的。优点是这会使我们开机的速度变快。
3.swap管理
命令 | 作用 |
---|---|
swapon -s | 查看swap分区信息 |
4.创建swap分区
命令 | 作用 |
---|---|
mkswap /dev/sda1 | 格式化设备位swap格式 |
swapon /dev/sda1 -p 0-32767 | -p表示指定swap的优先级 |
优先级数字越高,则优先级越高
练习:创建分区并设定分区的类型为Linuxswap
-
fdisk /dev/sda 建立一个主分区
-
p查看,此时分区类型不是swap,而是标准的linux类型
-
t修改分区类型,可查看到
82 Linux swap / Solaris
-
修改成功后可查看是否修改成功。
-
同步分区表(rhel8推荐使用
udevadm settle
)
-
mkswap /dev/sda1
格式化设备位swap格式
-
此时可使用swapon -s查询
以上操作都位临时操作
5.如果永久添加swap分区
- vim /etc/fstab
- swapon -a读取后优先级为4
6.删除swap
- vim /etc/fstab
/dev/sda1 swap swap pri=4 0 0 ##删除此行
- swapoff /dev/sda1
- 如果要彻底删除,还可以在fdisk /dev/sda删除。退出后udevadm settle同步分区表
这样就永久的删除了设备
7.用文件的方式临时充当swap
面试小技巧:当建立swap时,空间不够了。此时可以使用文件的方式临时充当swap分区
【1】建立
- df -h发现/分区还剩4.6G
dd if=/dev/zero of=/swapfile bs=1M count=2000
截取一个2G的文件
- 与之前相比/分区被占用了2G,并且我们可以查看到
- swapon -s查看分区信息,删除后从之前设定的4又变为了-2
【2】删除
- swapoff关闭后,rm -fr /swapfile删除文件
- df -h可查看/分区又变回4.6G了