Skip to content

Commit 142bea9

Browse files
Andreas PoulsenMarcus Funch
authored andcommitted
Make shutdown_and_wakeup.sh always log out user
1 parent e22727d commit 142bea9

File tree

1 file changed

+18
-1
lines changed

1 file changed

+18
-1
lines changed

os2borgerpc/os2borgerpc/shutdown_and_wakeup.sh

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@
4747
set -x
4848

4949
WAKE_PLAN_FILE=/etc/os2borgerpc/plan.json
50+
SCHEDULED_OFF_SCRIPT="/usr/local/lib/os2borgerpc/scheduled_off.sh"
5051

5152
if [ -f $WAKE_PLAN_FILE ]; then
5253
echo "Dette script kan ikke anvendes på en PC, der er tilknyttet en tænd/sluk tidsplan."
@@ -65,6 +66,7 @@ if [ "$1" == "--off" ]; then
6566

6667
if [ -f $TCRON ]; then
6768
sed -i -e "/\/rtcwake/d" $TCRON
69+
sed -i "/scheduled_off/d" $TCRON
6870
crontab $TCRON
6971
fi
7072

@@ -73,9 +75,23 @@ if [ "$1" == "--off" ]; then
7375
crontab -u user $USERCRON
7476
fi
7577

78+
rm --force $SCHEDULED_OFF_SCRIPT
79+
7680
else
7781

7882
if [ $# -gt 2 ]; then
83+
cat <<EOF > $SCHEDULED_OFF_SCRIPT
84+
#!/usr/bin/env bash
85+
86+
MODE=\$1
87+
DURATION=\$2
88+
89+
pkill -KILL -u user
90+
pkill -KILL -u superuser
91+
/usr/sbin/rtcwake --mode \$MODE --seconds \$DURATION
92+
EOF
93+
94+
chmod 700 $SCHEDULED_OFF_SCRIPT
7995
HOURS=$1
8096
MINUTES=$2
8197
SECONDS_TO_WAKEUP=$(( 3600 * $3))
@@ -86,12 +102,13 @@ else
86102
# We still remove shutdown lines, if any
87103
if [ -f $TCRON ]; then
88104
sed -i -e "/\/rtcwake/d" $TCRON
105+
sed -i "/scheduled_off/d" $TCRON
89106
fi
90107
if [ -f $USERCRON ]; then
91108
sed -i -e "/lukker/d" $USERCRON
92109
fi
93110
# Assume the parameters are already validated as integers.
94-
echo "$MINUTES $HOURS * * * /usr/sbin/rtcwake --mode $MODE --seconds $SECONDS_TO_WAKEUP" >> $TCRON
111+
echo "$MINUTES $HOURS * * * $SCHEDULED_OFF_SCRIPT $MODE $SECONDS_TO_WAKEUP" >> $TCRON
95112
crontab $TCRON
96113

97114
MINM5P60=$(( $(( MINUTES - 5)) + 60))

0 commit comments

Comments
 (0)