1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- #!/bin/sh -e
- # checking debian-tor account
- uid=`getent passwd debian-tor | cut -d ":" -f 3`
- home=`getent passwd debian-tor | cut -d ":" -f 6`
- # if there is the uid the account is there and we can do
- # the sanit(ar)y checks otherwise we can safely create it.
- if [ "$uid" ]; then
- if [ "$home" = "/var/lib/tor" ]; then
- :
- #echo "debian-tor homedir check: ok"
- else
- echo "ERROR: debian-tor account has an unexpected home directory!"
- echo "It should be '/var/lib/tor', but it is '$home'."
- echo "Removing the debian-tor user might fix this, but the question"
- echo "remains how you got into this mess to begin with."
- exit 1
- fi
- else
- adduser --quiet \
- --system \
- --disabled-password \
- --home /var/lib/tor \
- --no-create-home \
- --shell /bin/bash \
- --group \
- debian-tor
- fi
- for i in lib run log; do
- if ! [ -d "/var/$i/tor" ]; then
- echo "Something or somebody made /var/$i/tor disappear."
- echo "Creating one for you again."
- mkdir "/var/$i/tor"
- fi
- done
- find /var/lib/tor ! -user debian-tor -o ! -group debian-tor -print0 | xargs -0 --no-run-if-empty chown debian-tor:debian-tor
- find /var/lib/tor -type d -print0 | xargs -0 --no-run-if-empty chmod 02700
- find /var/lib/tor -type f -print0 | xargs -0 --no-run-if-empty chmod 00600
- find /var/run/tor ! -user debian-tor -o ! -group debian-tor -print0 | xargs -0 --no-run-if-empty chown debian-tor:debian-tor
- find /var/run/tor -type d -print0 | xargs -0 --no-run-if-empty chmod 02750
- find /var/run/tor -type f -print0 | xargs -0 --no-run-if-empty chmod 00600
- find /var/log/tor ! -user debian-tor -o ! -group adm -print0 | xargs -0 --no-run-if-empty chown debian-tor:adm
- find /var/log/tor -type d -print0 | xargs -0 --no-run-if-empty chmod 02750
- find /var/log/tor -type f -print0 | xargs -0 --no-run-if-empty chmod 00640
- #DEBHELPER#
- exit 0
|