-
Notifications
You must be signed in to change notification settings - Fork 708
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
clamd crash with : ERROR: Failed to open log file /dev/stdout: Too many levels of symbolic links #1371
Comments
I forgot to mention that this is a new issue introduced with 1.7.0 and this was working with 1.6.0, before the patch for CVE-2024-20506 |
Hi @ybrock. You're the second person I've heard that ran into this. I feel like I must be misunderstanding something. I am still confused why it is necessary to use If you need the stderr messages sent to stdout, perhaps you can change to start |
We were running clamav in a kubernetes and were using /dev/stdout for log visibility. Since the patch that @ybrock mentioned, clamav has been crashing across our environments with the "Too many levels of symbolic links" error. Our solution was to remove any reference to /dev/stdout in clam.conf and freshclam.conf, use a log file location for clamd and freshclam, and then tail -f those log files to /dev/stdout with an entrypoint.sh. |
link to the commit which changed the behavior for reference: 88efeda |
the same in our case. clamd running in kubernetes. We don't want to lose the freshclam logs so we are sending them to /dev/stdout using this: it would be nice if there was a built in way to do it to avoid customizing dockerfiles just for that. Or perhaps I am missing some piece from the documentation. The advice of using 2>&1 is not useful here, as it would require adjustments in the original init script |
I'm not sure why I didn't mention this earlier but
It is already used in that init script. If I just run the container with docker, I see messages from both
Is there something about kubernetes that silences stdout from the init script unless you write to I tried basically the same thing, using microk8s to run a
|
Since the patch regarding CVE-2024-20506, it is not possible to use /dev/stdout as Logfile parameter.
In containerized environment, this is an issue, as we want to capture the output of the process to the console (to be sent later on the any log stack).
If you set "LogFile /dev/stdout" in clamd.conf, clamd refuses to start now :
The text was updated successfully, but these errors were encountered: