我目前正在尝试在linux中检测文件旋转,但是在旋转过程中只要有压缩,文件压缩都会更改它的Inode,而我在使用它来检测旋转时,我的程序就无法对其进行跟踪。 我还注意到,如果在最后一个文件之前旋转压缩文件并删除最后一个文件,压缩文件将获取已删除文件的索引节点。
示例:
file.1 (inode 1)
file.2.gz (inode 2)
旋转后
file.1 (inode 3)
file.2.gz (inode 2) --. this file used to be file.1 and got rotated but also inherited the inode of the previous file which got deleted
我正在使用此bash脚本模拟旋转
gzip ../auth.log.1
mv ../auth.log.1.gz ../auth.log.2.gz
mv ../auth.log ../auth.log.1
touch ../auth.log
所以我的问题是如何使用Node.js和fs库检测日志的旋转压缩。
在我当前的解决方案(有效)中,必须将系统配置为至少设置2个文件,然后再压缩它们
file.1
file.2
file.3.gz
file.4.gz
但是我不想强迫用户使用此最小配置以使其正常工作
预先感谢