Hallo, Am Mittwoch, 18. Juli 2018, 16:15:19 CEST schrieb Kasimir Müller:
Hi,
dnsmasq Version ist 2.78-lp150.1.11 aus dem openSUSE-Leap 15.0 Repo.
nach dem Update auf Leap 15.0 sehe ich folgendes Problem:
failed to execute /usr/local/bin/logdnsmasq.sh: Permission denied
in dnsmasq.conf :
dhcp-script=/usr/local/bin/logdnsmasq.sh
Das Script ist ein einfaches sh-Skript und schreibt eine log-Datei
#!/bin/sh LOG="/var/log/dnsmasq.log" DD=`date +"%Y-%m-%d %H:%M:%S"` ACTION="$1" MAC="$2" IP="$3" HOST="$4" if [ "$HOST" = "" ]; then Host='unknown' fi
echo "$DD $ACTION $MAC $IP $HOST">>$LOG exit 0
Das lief unter 42.3 problemlos. dnsmasq wird mit systemd gestartet und läuft als user "dnsmasq", der hat keine Gruppe und als shell /bin/null
Die Arbeit macht dnsmasq, nur das Aufrufen des externen Programms scheitert. Die Berechtigung für das Log-File habe ich versuchsweise auf 777 gesetzt ohne Effekt, das script hat 755.
Hat jemand eine Erklärung und/oder Abhilfe ? !.) Skript lief NIE richtig. 2.) Vielleicht bricht es irgendwo ab wegen falscher Umgebung. Kann man verbose/debug einschalten?
Mein test/dein skript . diff foodns foodns-orig . 1,2c1,2 . < #!/bin/sh -vx . < LOG="/tmp/dnsmasq.log" . ---
#!/bin/sh . > LOG="/var/log/dnsmasq.log" . 8,9c8,9. < if [ -z ${HOST} ]; then . < HOST='unknown' . --- . > if [ "$HOST" = "" ]; then . > Host='unknown'
Gruß Hugo Mahr -- Um die Liste abzubestellen, schicken Sie eine Mail an: opensuse-de+unsubscribe@opensuse.org Um den Listen Administrator zu erreichen, schicken Sie eine Mail an: opensuse-de+owner@opensuse.org