Package: tor Version: 0.2.3.25-1 Severity: wishlist File: /etc/init.d/tor Tags: patch
Dear Maintainer (you are awesome), So I run /var/log on a tmpfs, which means at restart, it is empty. Most programs will recreate their logfiles in the absence of any old files or directories, but Tor will fail with the following error > Starting tor daemon... > [warn] Couldn't open file for 'Log notice file /var/log/tor/notice.log': No > such file or directory > [warn] Failed to parse/validate config: Failed to init Log options. See logs > for details. > [err] Reading config failed--see warnings above. Tor's init.d script already handles a missing /var/run/tor/ directory by creating a new one, so I thought it might be useful for the same script to re-create a missing /var/log/tor directory. Patch is included below. The additional function is based on the /var/run/tor action. d. -- System Information: Debian Release: 7.0 APT prefers testing APT policy: (500, 'testing'), (500, 'stable') Architecture: amd64 (x86_64) Foreign Architectures: i386 Kernel: Linux 3.11-2-amd64 (SMP w/4 CPU cores) Locale: LANG=en_US.utf8, LC_CTYPE=en_US.utf8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages tor depends on: ii adduser 3.113+nmu3 ii libc6 2.17-2 ii libevent-2.0-5 2.0.19-stable-3 ii libssl1.0.0 1.0.1e-2 ii lsb-base 4.1+Debian9 ii zlib1g 1:1.2.7.dfsg-13 Versions of packages tor recommends: ii logrotate 3.8.3-3 ii tor-geoipdb 0.2.3.25-1 ii torsocks 1.2-3 Versions of packages tor suggests: pn apparmor-utils <none> pn mixmaster <none> ii privoxy 3.0.20-1 ii socat 1.7.1.3-1.4 pn tor-arm <none> ii xul-ext-torbutton 1.4.6.3-1 -- Configuration Files: /etc/init.d/tor changed -- no debconf information
--- /home/danny/tmp/tor 2013-12-18 13:41:17.884898842 -0800 +++ /etc/init.d/tor 2013-12-18 13:38:14.321388245 -0800 @@ -24,6 +24,7 @@ DAEMON=/usr/sbin/tor NAME=tor DESC="tor daemon" +TORLOGDIR=/var/log/tor TORPIDDIR=/var/run/tor TORPID=$TORPIDDIR/tor.pid DEFAULTSFILE=/etc/default/$NAME @@ -108,6 +109,15 @@ fi } +check_torlogdir () { + if test ! -d $TORLOGDIR; then + mkdir -m 02750 "$TORLOGDIR" + chown debian-tor:adm "$TORLOGDIR" + ! [ -x /sbin/restorecon ] || /sbin/restorecon "$TORPIDDIR" + fi +} + + check_config () { if ! $DAEMON $VERIFY_ARGS > /dev/null; then log_failure_msg "Checking if $NAME configuration is valid" @@ -134,6 +144,7 @@ fi check_torpiddir + check_torlogdir check_config log_action_begin_msg "Starting $DESC"