为Linux手动添加swap分区

释放双眼,带上耳机,听听看~!
🤖 由 ChatGPT 生成的文章摘要

Linux中的Swap交换分区实际上就是windows中的虚拟内存,当服务器内存不够时,会使用swap分区内存。来缓解内存不够的情况

在云服务器的场景下,云厂商为我们提供的服务器基本上都是没有swap分区的

创建Swap分区

swap分区使用的是本地硬盘,将硬盘的容量充当内存使用。当物理内存比较大时,资源不够。那么swap分区也需要设置大一点,方便缓解内存压力

查看当前swap分区

[root@ops ~]# free -mh
              total        used        free      shared  buff/cache   available
Mem:            15G        3.4G         10G         16M        1.6G         11G
Swap:            0B          0B          0B

关闭swap分区

#在某些场景下,开启swap分区会影响服务正常运行,可以通过下面命令关闭

#临时关闭
swapoff -a  

#永久关闭
sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

创建swap分区

前面说了swap分区实际上还是使用 本地硬盘,所以我们创建的时候文件大小还是基于本地硬盘

linux 一切皆文件

[root@ops ~]# dd if=/dev/zero of=/opt/swapfile bs=1M count=8096

8096+0 records in
8096+0 records out
8489271296 bytes (8.5 GB) copied, 203.405 s, 41.7 MB/s

#这里我们通过dd命令,在/opt/下生成8g的swapfile文件
#bs为文件大小
#count 文件个数

接下来我们给/opt/swapfile格式修改为swap可读写格式

[root@ops ~]# ls -lh /opt/swapfile 
-rw-r--r-- 1 root root 8.0G May 17 18:02 /opt/swapfile

#通过mkswap格式化文件
[root@ops ~]# mkswap /opt/swapfile 
Setting up swapspace version 1, size = 8290300 KiB
no label, UUID=bdef23e2-0b8f-4bbb-85f7-67487b336525

#后面接上刚刚生成的文件就可以

挂载swap分区

#这步骤实际上和硬盘初始化挂载步骤大部分相同
[root@ops ~]# swapon /opt/swapfile 
swapon: /opt/swapfile: insecure permissions 0644, 0600 suggested.
[root@ops ~]# 
[root@ops ~]# free -mh
              total        used        free      shared  buff/cache   available
Mem:            15G        3.1G        2.6G         16M        9.8G         11G
Swap:          7.9G          0B        7.9G

为Linux手动添加swap分区

设置开机启动

[root@ops ~]# echo "/opt/swapfile swap swap default 0 0" >>/etc/fstab 

#查看追加文件
[root@ops ~]# cat /etc/fstab 

#
# /etc/fstab
# Created by anaconda on Thu Dec 16 21:18:04 2021
#
# 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=2ca29691-58cc-49a2-81df-2f48c0a6c660 /                       xfs     defaults        0 0
UUID=5745e5f0-aac7-4df1-9939-5e150b0c9421 /boot                   xfs     defaults        0 0
/opt/swapfile swap swap default 0 0

删除SWAP分区

很多时候swap分区可能是我们临时使用一下,测试项目后面就需要停止了。那么如何把挂载的swap分区关闭呢

停止使用swap分区

[root@ops ~]# swapoff /opt/swapfile 
[root@ops ~]# free -mh
              total        used        free      shared  buff/cache   available
Mem:            15G        3.1G        2.6G         16M        9.8G         11G
Swap:            0B          0B          0B

删除swap分区文件

[root@ops ~]#  rm -rf /opt/swapfile

删除/etc/fstab中swap设置

sed -i '/ swap / s/^\(.*\)$/#\1/g' /etc/fstab

给TA打赏
共{{data.count}}人
人已打赏
报错锦集

Containerd 提示runc: symbol lookup error: runc: undefined symbol: seccomp_notify_respond

2022-5-15 20:58:38

报错锦集

Linux yum安装软件包提示 At least 13MB more space needed on the /boot filesystem

2022-5-18 10:21:26

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索