title: 2021-02-07-Linux开启Swap分区
date: 2021-02-07 11:20:20
categories: [linux]
tags: [linux分区扩容]
toc: true
场景: 华为云购买的机器,默认不会开启 swap 分区,服务器运行内存只有 4GB ,不满足使用,开启 swap 交换分区
1、 开启 swap 分区
新建一个专门的文件用于 swap 分区
注:此文件的大小是 count 的大小乘以 bs 大小,上面命令的大小是 8GB
2、 通过 mkswap 命令将上面新建出的文件做成 swap 分区
3、 查看内核参数 vm.swappiness
若 vm.swappiness 为 0 则根据实际需要调整成 30 或者 60
注:若想永久修改,则编辑 /etc/sysctl.conf 文件
4、 启用此交换分区的交换功能
这里有可能会有报错,如下
解决方法:
尝试激活 Swap 文件
5、 关闭 swap 分区
6、 重新激活 swap 分区,没有写入系统配置文件中,系统重启后,就需要重新激活
7、 如果需要一直保持这个 swap ,可以把它写入 /etc/fstab 文件
8、 关机重启确认 Swap 大小
1、 控制swap使用的系统参数:swappiness
如果swappiness设置太大(内存的速度会比磁盘快很多),这样子会加大系统io,同时造的成大量页的换进换出,严重影响系统的性能,所以我们在操作系统层面,要尽可能使用内存,对该参数进行调整。
2、 Linux默认swappiness
默认为60,也就是说当物理内存使用到40%的时候开始使用swap。
1、设置
2、激活
当以上方法无法解决问题,或者机器内存消耗大,添加内存,swap也要相应扩展。
1、 查看swap****空间
2、 查看/dev/zero
此/dev/zero一共就1.9G所以添加swap空间不可以超过1.9G
解释: /dev/zero也是一个伪文件,但它实际上产生连续不断的null的流(二进制的零流,而不是ASCII型的)。写入它的输出会丢失不见,/dev/zero主要的用处是用来创建一个指定长度用于初始化的空文件,像临时交换文件。可以用来创建swap。
3、 新建swap****分区空间
注意:创建好的交换文件不能删除,所以要提前找到一个目录。
解释:of为文件名。Bs为单个大小。Count为数量。我创建了一个1G的文件。
4、 mkswap****创建交换文件
5、 swapon****激活
6、 验证
7、 开机启动
由于以上操作为临时生效,服务器重启会失效。所以要设置开机启动。
8、 其他操作
a) 停用:swapoff swapfile
b) 删除:rm –rf swapfile
c) 删除随即启动swap:vi /etc/fstab
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)