解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

2023年11月17日11:04:20 发表评论 11

今天访问怀音街网站出现数据库异常情况,提示需要修复数据库,修复后出现失败,然后查看磁盘空间,dev/vda1占用率达到98%(磁盘空间40GB)。无法找到什么原因磁盘占用率这么高,服务器上运行的个人博客,没有视频、高清图片等大文件。

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

那么,如何排查和解决WordPress网站占用服务器磁盘空间较大的文件?

 

排查思路:

使用du -sh * 命令,逐级查看哪个目录占用磁盘空间较大,删除不需要的文件,如网站的日志等,操作前建议做好数据备份。

 

解决方法

1、登录服务器,使用df -h命令查看磁盘使用率,其中的 Mounted on 指挂载的目录。

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

可以看到,分区容量占用98%,很明显磁盘空间不够用了。但是个人博客,这个数据量肯定异常,逐一排查无用的大文件或日志。

 

2、进入根目录,执行如下指令,逐级查看哪个目录占用磁盘空间较大,进入该目录,直到找到最精确的的文件或目录。

  1. du -sh *

系统显示类似如下。

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

可以看到 data 和 usr 这两个文件占用磁盘的空间比较大,需要对这两个文件目录进行进一步排查。

 

3、最后,结合具体情况等判断对相关文件或目录进行删除,或者购买更大的数据盘分担处理。

最后发现,都是生成的日志文件造成的大数据文件。删除大文件即可,删除前先做好数据备份,以防误删。

data文件夹下大文件:

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

这些大文件都是数据库的备份日志文件,将超过1G的大文件通过FTP工具删除即可。

禁用数据库日志

1、查找数据库日志文件 my.cnf 命令:

  1. find / -name my.cnf

2、找到 my.cnf 文件后,打开并禁用以下3行代码;

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

3、将更改后的 my.cnf 文件回传服务器,重启数据库,重启命令:

  1. service mysqld restart

数据库开启关闭命令

#重启

service mysqld restart

#开启

service mysqld start

#关闭

service mysqld stop

 

关闭 nginx 访问日志自动备份

usr文件夹下大文件:

解决WordPress网站占满Linux服务器磁盘空间的方法(日志)

这个文件夹下的大文件是一个叫“on”的文件,经过查看里面的数据发现是 nginx 访问日志。因为之前怀音街网站被攻击时开启过自动备份访问日志功能,后来忘记关了。直接删除这个文件即可,不过它还会自动创建on文件并备份。我们需要关闭 nginx 访问日志自动备份功能。

找到网站 nginx 配置文件 www.xxx.com.conf 文件,将 access_log 的 on 更改为 off ,然后执行命令 service nginx restart 重启即可关闭。

1、查找网站配置文件路径命令:

  1. find / -name www.xxx.com.conf

2、找到网站nginx配置文件后,打开并将所有access_log参数改成off(“on”代表开启);

3、将更改后的nginx配置文件回传服务器,重启nginx,重启命令:

  1. service nginx restart

文章参考自:Linux实例磁盘空间满和inode满的问题排查方法

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: