重命名linux文件时更改描述符
我在CentOS中有一个进程,它将日志写入一个文件。当我重命名它时,它仍然会写入它。有没有办法在不重新启动进程的情况下更改该文件描述符?没有。写入管道,在管道的另一端使用日志旋转实用程序。或者重新启动守护进程。有些程序接受SIGHUP信号来重新打开日志文件。@n.m.谢谢,这似乎是合理的,但由于我是linux方面的初学者,你能为一个好的教程提供一些参考吗?你可以使用例如。为了将输出输送到重命名linux文件时更改描述符,linux,rename,Linux,Rename,我在CentOS中有一个进程,它将日志写入一个文件。当我重命名它时,它仍然会写入它。有没有办法在不重新启动进程的情况下更改该文件描述符?没有。写入管道,在管道的另一端使用日志旋转实用程序。或者重新启动守护进程。有些程序接受SIGHUP信号来重新打开日志文件。@n.m.谢谢,这似乎是合理的,但由于我是linux方面的初学者,你能为一个好的教程提供一些参考吗?你可以使用例如。为了将输出输送到rotatelogs,您可能需要创建一个命名管道。类似于mkfifomypipe;rotatelogs日志文件
rotatelogs
,您可能需要创建一个命名管道。类似于mkfifomypipe;rotatelogs日志文件3600
。或者,如果您的进程写入标准输出,只需myprocess | rotatelogs…
,无命名管道。