Ubuntu Server挂载swap文件
我在为 服务器 安装系统的时候,并没有挂载swap分区。把博客转过来之后,发现 MySQL时不时就罢工 ,原因就是内存不足。看来必须要挂载一个swap分区才好。
但是,我在对数据盘进行分区的时候,把整个磁盘都用上了,并没用预留空间。swap分区是行不通了,只能试试swap文件。
建立一个有连续空间的空白文件
服务器的物理内存是512MB,按照1.5~2倍原则,我将swap文件设置为1GB。
1#root@aliyun:/srv# dd if=/dev/zero of=SWAPFILE bs=1024 count=1048576
21048576+0 records in
31048576+0 records out
41073741824 bytes (1.1 GB) copied, 59.7957 s, 18.0 MB/s
使用swap文件
使用 swapon
命令让系统使用这个文件作为swap文件。但是这个文件不能直接使用,否则会报错:
1root@aliyun:/srv# swapon swapfile
2swapon: /srv/swapfile: read swap header failed: Invalid argument
必须先使用 mkswap
将文件格式化成swap格式(不知道为什么会少了4KB):
1root@aliyun:/srv# mkswap SWAPFILE 1048576
2Setting up swapspace version 1, size = 1048572 KiB
3no label, UUID=1aaed031-33ef-479b-a9a4-2f008a7bbb2f
使用格式化完毕的文件:
1root@aliyun:/srv# swapon SWAPFILE
查看文件使用情况:
1root@aliyun:/srv# swapon -s
2Filename Type Size Used Priority
3/srv/SWAPFILE file 1048572 95852 -1
加入自动启用
为避免重启后swapfile生效,可以将启用swap的代码加入启动文件中,对于ubuntu server,编辑 /etc/rc.local
文件,加入以下内容(具体文件路径自定):
1swapon /srv/SWAPFILE
或者
修改 /etc/fstab
文件,加入以下内容:
1/srv/SWAPFILE swap swap defaults 0 0
- 文章ID:1763
- 原文作者:zrong
- 原文链接:https://blog.zengrong.net/post/mount_swapfile/
- 版权声明:本作品采用 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可,非商业转载请注明出处(原文作者,原文链接),商业转载请联系作者获得授权。