码农日记

薄洪涛的个人博客

服务器:swap告警,系统异常报错

登陆自己的小服务器,用composer下载个东西,一直报killed

[root@host voyager]# composer require tcg/voyager
Killed

这个错误是内存不足导致的,我看了下我的内存,好像还可以

image.png

又看了下swap,发现swap告警,当初默认的swap容量如下:

[root@host /]# free -h
             total       used       free     shared    buffers     cached
Mem:          504M       387M       116M       392K        10M        47M
-/+ buffers/cache:       328M       175M
Swap:         131M       124M       7.8M

几乎全占满了,这还了得,得要扩容啊, 我得内存是512m,怎么也要扩容要1024m(一般为内存的两倍)

先说下swap的作用(黑体部分是百度搜索的)

Linux系统的Swap分区,即交换区,Swap空间的作用可简单描述为:当系统的物理内存不够用的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap空间中,等到那些程序要运行时,再从Swap中恢复保存的数据到内存中。这样,系统总是在物理内存不够时,才进行Swap交换。其实,Swap的调整对Linux服务器,特别是Web服务器的性能至关重要。通过调整Swap,有时可以越过系统性能瓶颈,节省系统升级费用。 

说下扩容的步骤:

  1. 先查看自己的内存,确定自己的swap大小(内存的2倍)

[root@host /]# free -h
             total       used       free     shared    buffers     cached
Mem:          504M       387M       116M       392K        10M        47M
-/+ buffers/cache:       328M       175M
Swap:         131M       124M       7.8M

   2. 找个空白的目录,大小自己指定,我是在/opt下自己新建的swap文件夹,然后在此文件夹下进行的如下操作

[root@host swap]# dd if=/dev/zero of=/swapfile bs=1024 count=1024000
1024000+0 records in
1024000+0 records out
1048576000 bytes (1.0 GB) copied, 4.81479 s, 218 MB/s

 3. 将此转换成swap分区

[root@host swap]# mkswap /swapfile
mkswap: /swapfile: warning: don't erase bootbits sectors
        on whole disk. Use -f to force.
Setting up swapspace version 1, size = 1023996 KiB
no label, UUID=e9cc0e81-e6bb-4a73-b96a-c707ad83574f

 4.  加入到当前的swap分区

[root@host swap]# swapon /swapfile

 5.  查看swap分区大小

[root@host swap]# free -h
             total       used       free     shared    buffers     cached
Mem:          504M       495M       8.3M       392K        10M       151M
-/+ buffers/cache:       333M       170M
Swap:         1.1G       124M       1.0G

image.png

最后继续之前的composer下载,成功!

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

Powered By Z-BlogPHP 1.7.3

版权所有 | 转载请标明出处