nohup命令导致磁盘空间满
nohup 英文全称 no hang up(不挂起),用于在系统后台不挂断地运行命令,退出终端不会影响程序的运行。
最开始发现 docker 中 MySQL 由于磁盘空间不足而无法启动
使用df -h
命令来查看磁盘信息,-h
选项为根据大小情况使用适当单位显示
可以看到是/docker/overlay2 下文件挂载点占用大量磁盘空间
据此我查看 docker 占用的磁盘空间:docker system df
,实际情况发现 docker 占用空间不大
仔细查看/docker/overlay2 当前文件目录文件大小:ll -h
,确定不是 docker 空间占用问题
但是为了增大空间,删除了 docker 的不必要占用:
- 删除所有没有使用的容器或镜像:
docker system prune -a
- 删除没有使用的卷:
docker volume rm $(docker volume ls -qf dangling=true)
通过层层查找发现了是 logstash 的问题:du -sh *
(统计当前目录下所有文件或目录的大小)
最终定位到 nohup 命令的问题:由于使用 nohup 会不断产生日志信息,默认输出当前目录的 nohup.out 文件
然后上网查找方法得到:nohup.out 过大导致磁盘爆满
使用命令nohup ./logstash -f > /dev/null 2>&1 &
后不起作用,nohup.out 文件大小仍然持续增长。在了解可以删除 nohup.out 文件后,直接删除了当前文件来达到停止文件大小增大问题,暂时解决了问题。
Linux nohup 命令 | 菜鸟教程