echo "" > nohup.out
使用nohup ... & 命令启动服务器后,磁盘满了,服务宕了,然后一步一步排查是哪个文件过大,最终定位到是nohup.out文件过大,占了40G,
df -lh #磁盘容量命令
du -sh #查看当前文件夹大小
du -sh * #查看当前文件夹下所有文件/文件夹大小,当磁盘满了可以从根目录使用该命令一路排查下去,最终定位到最大的文件
另外来说说nohup的问题,都知道nohup可以后台启动服务并且输出日志,问题是不加控制nohup是无限制的输出日志,硬盘占满是早晚的事,笔者百度了一下可以通过以下方式解决
不生成nohup文件:
nohup ./a.sh >/dev/null 2>&1 &
关键在于最后的 >/dev/null 2>&1 部分,/dev/null是一个虚拟的空设备(类似物理中的黑洞),任何输出信息被重定向到该设备后,将会石沉大海
>/dev/null 表示将标准输出信息重定向到"黑洞"
2>&1 表示将标准错误重定向到标准输出(由于标准输出已经定向到“黑洞”了,即:标准输出此时也是"黑洞",再将标准错误输出定向到标准输出,相当于错误输出也被定向至“黑洞”)
联系客服