[Pkg-kde-extras] Bug#928980: icecc: Icecream writing logs to location with no permission
Matthew Exon
debian.mexon at spamgourmet.com
Tue May 14 13:47:04 BST 2019
Source: icecc
Version: 1.2-1
Severity: normal
Tags: patch
Icecream is writing its log files directly to /var/log, even though it
is running as the icecc user which has no permission to write to
/var/log. This problem has already been reported in Ubuntu here:
https://bugs.launchpad.net/ubuntu/+source/icecc/+bug/1671926
I've attached a patch to fix it. As suggested in the Ubuntu bug, I have
added a HUP signal when the logs are rotated. I have also added
/etc/default files to allow easily turning up the log level.
-- System Information:
Debian Release: buster/sid
APT prefers bionic-updates
APT policy: (500, 'bionic-updates'), (500, 'bionic-security'), (500, 'bionic'), (100, 'bionic-backports')
Architecture: amd64 (x86_64)
Kernel: Linux 4.15.0-48-generic (SMP w/1 CPU core)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), LANGUAGE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled
-------------- next part --------------
diff -Nru icecc-1.2/debian/changelog icecc-1.2/debian/changelog
--- icecc-1.2/debian/changelog 2018-12-21 08:29:36.000000000 +0000
+++ icecc-1.2/debian/changelog 2019-05-14 12:12:44.000000000 +0000
@@ -1,3 +1,10 @@
+icecc (1.2-1.1) UNRELEASED; urgency=medium
+
+ * Non-maintainer upload.
+ * Write log files to a location with appropriate permissions
+
+ -- Matthew Exon <mat at exoniceserver1> Tue, 14 May 2019 12:12:44 +0000
+
icecc (1.2-1) unstable; urgency=medium
[ Pino Toscano ]
diff -Nru icecc-1.2/debian/icecc.conf icecc-1.2/debian/icecc.conf
--- icecc-1.2/debian/icecc.conf 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.conf 2019-05-14 12:12:44.000000000 +0000
@@ -8,7 +8,7 @@
# icecc daemon log file
#
# ICECC_LOG_FILE="/var/log/iceccd.log"
-ICECC_LOG_FILE="/var/log/iceccd.log"
+ICECC_LOG_FILE="/var/log/icecc/iceccd.log"
#
# Identification for the network the scheduler and daemon run on.
@@ -47,7 +47,7 @@
# icecc scheduler log file
#
# ICECC_SCHEDULER_LOG_FILE="/var/log/icecc_scheduler.log"
-ICECC_SCHEDULER_LOG_FILE="/var/log/icecc_scheduler.log"
+ICECC_SCHEDULER_LOG_FILE="/var/log/icecc/icecc_scheduler.log"
#
# If the daemon can't find the scheduler by broadcast (e.g. because
diff -Nru icecc-1.2/debian/icecc.iceccd.default icecc-1.2/debian/icecc.iceccd.default
--- icecc-1.2/debian/icecc.iceccd.default 1970-01-01 00:00:00.000000000 +0000
+++ icecc-1.2/debian/icecc.iceccd.default 2019-05-14 12:12:44.000000000 +0000
@@ -0,0 +1,7 @@
+# /etc/default/icecc
+
+# Defaults for icecc initscript. This file is sourced by
+# /bin/sh from /etc/init.d/iceccd
+
+# Options to pass to iceccd
+#ICECCD_OPTS=
diff -Nru icecc-1.2/debian/icecc.iceccd.init icecc-1.2/debian/icecc.iceccd.init
--- icecc-1.2/debian/icecc.iceccd.init 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.iceccd.init 2019-05-14 12:12:44.000000000 +0000
@@ -12,7 +12,7 @@
DAEMON=/usr/sbin/iceccd
CONFIGFILE=/etc/icecc/icecc.conf
-DEFAULTFILE=/etc/default/icecc
+DEFAULTFILE=/etc/default/iceccd
# Read configuration files
[ -r $CONFIGFILE ] && . $CONFIGFILE
@@ -59,7 +59,7 @@
fi
start-stop-daemon --start --quiet --exec $DAEMON -- \
- -d $logfile $nice $scheduler $netname -u icecc $basedir $maxjobs $noremote
+ -d $logfile $nice $scheduler $netname -u icecc $ICECCD_OPTS $basedir $maxjobs $noremote
}
stop_icecc_daemon() {
diff -Nru icecc-1.2/debian/icecc.icecc-scheduler.default icecc-1.2/debian/icecc.icecc-scheduler.default
--- icecc-1.2/debian/icecc.icecc-scheduler.default 1970-01-01 00:00:00.000000000 +0000
+++ icecc-1.2/debian/icecc.icecc-scheduler.default 2019-05-14 12:12:44.000000000 +0000
@@ -0,0 +1,7 @@
+# /etc/default/icecc
+
+# Defaults for icecc initscript. This file is sourced by
+# /bin/sh from /etc/init.d/icecc-scheduler
+
+# Options to pass to icecc-scheduler
+#ICECC_SCHEDULER_OPTS=
diff -Nru icecc-1.2/debian/icecc.icecc-scheduler.init icecc-1.2/debian/icecc.icecc-scheduler.init
--- icecc-1.2/debian/icecc.icecc-scheduler.init 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.icecc-scheduler.init 2019-05-14 12:12:44.000000000 +0000
@@ -12,7 +12,7 @@
SCHEDULER=/usr/sbin/icecc-scheduler
CONFIGFILE=/etc/icecc/icecc.conf
-DEFAULTFILE=/etc/default/icecc
+DEFAULTFILE=/etc/default/icecc-scheduler
# Read configuration files
[ -r $CONFIGFILE ] && . $CONFIGFILE
@@ -36,7 +36,7 @@
: > $ICECC_SCHEDULER_LOG_FILE
chown icecc $ICECC_SCHEDULER_LOG_FILE
start-stop-daemon --start --quiet --chuid icecc \
- --exec $SCHEDULER -- -d $logfile $netname
+ --exec $SCHEDULER -- $ICECC_SCHEDULER_OPTS -d $logfile $netname
}
stop_icecc_scheduler() {
diff -Nru icecc-1.2/debian/icecc.logrotate icecc-1.2/debian/icecc.logrotate
--- icecc-1.2/debian/icecc.logrotate 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.logrotate 2019-05-14 12:12:44.000000000 +0000
@@ -7,7 +7,9 @@
/var/log/iceccd.log {
missingok
- copytruncate
+ postrotate
+ /usr/bin/killall -HUP iceccd
+ endscript
notifempty
}
diff -Nru icecc-1.2/debian/icecc.postinst icecc-1.2/debian/icecc.postinst
--- icecc-1.2/debian/icecc.postinst 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.postinst 2019-05-14 12:12:44.000000000 +0000
@@ -12,6 +12,7 @@
ICECC_GROUP=icecc
ICECC_USER=icecc
ICECC_HOME=/var/cache/icecc
+ICECC_LOG=/var/log/icecc
# create group
getent group $ICECC_GROUP > /dev/null || ( echo Creating $ICECC_GROUP group... ; \
@@ -24,6 +25,9 @@
chown $ICECC_USER:$ICECC_GROUP $ICECC_HOME
+mkdir -p $ICECC_LOG
+chown $ICECC_USER:$ICECC_GROUP $ICECC_LOG
+
if [ -x "/etc/init.d/icecc-scheduler" ]; then
update-rc.d icecc-scheduler defaults >/dev/null
# disable icecc-scheduler either when upgrading from < 1.0.0, or when
diff -Nru icecc-1.2/debian/icecc.postrm icecc-1.2/debian/icecc.postrm
--- icecc-1.2/debian/icecc.postrm 2018-12-21 07:52:33.000000000 +0000
+++ icecc-1.2/debian/icecc.postrm 2019-05-14 12:12:44.000000000 +0000
@@ -24,6 +24,7 @@
fi
rm -rf /var/cache/icecc
+ rm -rf /var/log/icecc
;;
remove)
;;
More information about the pkg-kde-extras
mailing list