[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