记一次Reids磁盘空间写满的后的操作处理

感谢:http://www.178linux.com/58067

发现错误:

Redis Write error saving DB on disk: No space left on device
image.png

使用命令查看空间占用:

$ df
image.png

发现其中,/dev/vda1 占用空间接近100%,这个应该是阿里云服务器中的挂载的磁盘,也就是说磁盘空间已经接近满了。那么这时候能够实现应该是删除一些无用数据或者磁盘扩容。

当然为了解决目前的问题,应该去查看各个文件夹的空间占用,这时首先想到的是日志文件/var/log、以及数据库相关文件/var/lib,当然还有项目目录/www(nginx默认为/var/www/html)。

使用该命令,查看某个文件夹所占用空间信息。

$ du -sh
image.png

可以看到,项目目录 6.1 G,log目录 4.8G,库目录为 11G。
项目中使用七牛,本地文件会很少,理论上说就一点日志文件,怎么可能这么大呢?
于是继续排查。

使用该命令,按顺序查看大文件信息

du /www | sort -nr | more
image.png

这时,发现有一个项目的 debugbar 竟然没关,于是删除之。

然后再按着这个思路检查一下其他文件,然后删除即可。

但是,感觉一直在写东西,硬盘空间一直在涨。


image.png
image.png

重启服务器之后好了


image.png
image.png

偶然发现一个 IP 正在爬数据:


image.png

使用 nginx 屏蔽掉 该IP:
在 HTTP config 里面

deny 112.10.100.117

这时发现,它被 403 了。但是这时,他换了一个IP。

此时,在 Laravel 的中间件,在中间件里记录下所有访问用户、IP、以及整个路由 URL 地址。
这时,最终把这个人啾了出来。

最后得到上级答复是,分配给了一个人导出所有数据,这个人写了脚本去扒取数据。

总结:

  1. 接口必须使用频率限制

Laravel 中的 throttle 中间件可以搞定

  1. 必须添加操作日志

Laravel 中的 Log 解决

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 14,350评论 2 33
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 100,115评论 9 468
  • Linux 目录 /:根目录,一般根目录下只存放目录,在Linux下有且只有一个根目录。所有的东西都是从这里开始。...
    miniminiming阅读 4,312评论 0 4
  • 1、第八章 Samba服务器2、第八章 NFS服务器3、第十章 Linux下DNS服务器配站点,域名解析概念命令:...
    哈熝少主阅读 9,176评论 0 10
  • 官方原文链接其他不错的翻译 这里只是作为笔记,还有我还没过四级。。。。。 介绍(基于butterKnife 8.4...
    威宸阅读 3,641评论 0 0

友情链接更多精彩内容