情况是这样的:
用于生产的系统(不能重启)所产生的日志文件不再根据时间进行切换,所有的日志写入同一个文件,该日志文件不断增大。现在尝试用crontab定时备份并清空文件。但是日志文件虽然内容被清空,但是文件大小不变(文件空洞),用more命令查看,发现文件前面一片空白,只有到文件底部发现有新写入的数据。
自我分析: 这是由于写日志的进程保存了文件指针值(文件描述表项),虽然清空了文件但该文件指针值依然不变,所以产生文件空洞。求助:用什么办法,可以备份当前日志内容,并减小日志文件大小,新内容又能被正确写入。
1、因为生产系统不能重启,请使用 echo > log_file_name【这个会把你所有的日志内容清掉,空间会释放掉,如果日志重要建议备份在执行,后期就写一个自动的脚本 cp一份然后echo清除】
2、等下次应用系统停机或者其他维护需要停应用的时候,让应用改一下应用的日志机制,如:日志大小切换、日期切换机制等
关于TWT使用指南社区专家合作厂商入驻社区企业招聘投诉建议版权与免责声明联系我们 © 2024talkwithtrend — talk with trend,talk with technologist京ICP备09031017号-30