Missing /dev/xconsole causes rsyslog to stop as well as all other services
I'm running Ubuntu-10.04.04LTS in Hyper-V environments. I found that SSH, HTTP or any other service else stopped because the rsyslog
daemon had died with the message unable to find the /dev/xconsole file
.
I fixed it temporarily with the following.
FILE=/dev/xconsole
if [ -e $FILE ]; then
echo "$FILE exists Carry on!"
else
mknod -m 640 /dev/xconsole c 1 3
chown syslog:adm /dev/xconsole
echo "Created $FILE."
fi
The problem is that I can not get rsyslog
daemon to process these 8 lines when I restart the daemon.
Also restarting the daemon removes the /dev/xconsole
file and we are back to all service stopped. In addressing this problem I have inserted the if
--fi
lines after the start and restart conditions in the rsyslog
script. The problem is I do not get an echo
to stdio
. Does someone have an idea on how to make the rsyslog
report to stdio
when it creates the /dev/xconsole
device?
The reason this exists is because Ubuntu Server 12.04 incorrectly assumes you have xterminal installed. It may be a hang over from their desktop OS where it does perhaps exist by default.
Anyway, best thing to do is simply comment it out of /etc/rsyslog.d/50-default.conf
as follows:
# daemon.*;mail.*;\
# news.err;\
# *.=debug;*.=info;\
# *.=notice;*.=warn |/dev/xconsole
And viola, no more error.
BTW. I doubt that was causing it to die though.