我从我的 Ubuntu 服务器收到以下错误:
exim paniclog /var/log/exim4/paniclog on (my server FQDN) has non-zero size, mail system might be broken.
Run Code Online (Sandbox Code Playgroud)
我在网上找到了一个解决方案在这里。基本上,我只需要通过输入以下代码来擦除恐慌日志:
sudo rm /var/log/exim4/paniclog
Run Code Online (Sandbox Code Playgroud)
所以,我知道如何摆脱错误,但我不知道它是如何开始的,以及如何不让它再次发生。有什么解释吗?提前致谢。
小智 5
我遇到了同样的问题,这是我的 exim4 paniclog 的样子:
$ sudo cat /var/log/exim4/paniclog
2014-02-01 21:36:51 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-01 22:03:33 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-01 22:33:19 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-01 22:36:33 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-01 23:03:51 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-01 23:14:31 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
2014-02-02 11:09:48 socket bind() to port 25 for address 127.0.0.1 failed: Address already in use: daemon abandoned
Run Code Online (Sandbox Code Playgroud)
这个问题显然是通过删除paniclog文件解决的
上面的答案很糟糕,因为您删除了一个日志文件,然后它就消失了,用于 exim 的未来日志条目。解决方案是创建日志文件备份。
大多数基于 Debian 的发行版都使用logrotate
此方法。您可以使用命令强制备份logrotate
。选项-f
是强制它并且-v
用于更详细的输出。
尝试一下(对于 Debian,也应该适用于 Ubuntu)。
sudo logrotate -f -v /etc/logrotate.d/exim4-paniclog
Run Code Online (Sandbox Code Playgroud)