此实验在可以达到效果,我使用nginx做的实验,在不停掉服务的情况下达到磁盘释放的结果。ionde节点也相同释放。
实验环境selinux、filewalld 状态关闭
实验思虑先下载epel源,在下载nginx,正常开启nginx服务,往日志中写入文件把磁盘空间堆满,模拟在不知道的环境下查找问题所在。
查找方法,使用df查看挂在的分区,是有那里造成的缩小判断范围,在使用du -h 搭配grep查找大文件,分析大数据是有谁产生的在删除。
安装软件 [root@localhost ~]# yum -y install epel-release.noarch && yum -y install nginx 开启服务 [root@localhost ~]# systemctl start nginx 导入文件,模拟磁盘100% [root@localhost ~]# dd if=/dev/zero of=/var/log/nginx/access.log bs=1G count=100 dd: 写入"/var/log/nginx/access.log" 出错: 设备上没有空间 记录了12+0 的读入 记录了11+0 的写出 12369244160字节(12 GB)已复制,72.8332 秒,170 MB/秒
想知道过程的可以在开一终端查看状态
外部访问nginx端口
在客户端执行访问 [root@localhost ~]# for ((i=1;i<10000;i++));do curl 192.168.1.50;done
使用du -sh查看文件大小,判断大文件来源,要是有更好的方法希望留言
删除文件,实验完成。在不停止服务的情况下解决大文件问题。
注意:删除正在写的文件一般用 cat /dev/null > file,而不是直接rm(直接rm会造成文件删除空间不释放的问题)



