我运行一个修改/var/log/security
.
如果有人试图通过 连接到我的服务器ssh
,此事件将写入/var/log/security
。(我已设置firewall_enable="YES"
和 firewall_logging="YES"
in /etc.rc.conf
)
该脚本通过在行尾添加一些符号(例如,符号!
)来查找和标记某些行。
但是在更改文件后,/var/log/security
ipfw
事件不再写入它。只会/etc/rc.d/syslogd restart
有帮助。我能做些什么?
这是正常的。您的进程不知道文件名,只知道文件描述符。因此,如果您删除该文件并创建一个具有相同名称的新文件,该进程将继续写入前一个文件的文件描述符。需要重新启动进程,以便从文件名加载和使用新的文件描述符。
因此,如果您不想更改文件描述符并清理文件的内容,而不重新启动进程,您可以尝试类似
echo "">/var/log/filename
此命令将擦除文件名的内容而不更改文件描述符。(当然必须先测试)