summaryrefslogtreecommitdiff
path: root/autorestart/scripts/95-systemd-restart-as-needed
diff options
context:
space:
mode:
Diffstat (limited to 'autorestart/scripts/95-systemd-restart-as-needed')
-rwxr-xr-xautorestart/scripts/95-systemd-restart-as-needed34
1 files changed, 0 insertions, 34 deletions
diff --git a/autorestart/scripts/95-systemd-restart-as-needed b/autorestart/scripts/95-systemd-restart-as-needed
deleted file mode 100755
index c8099ee..0000000
--- a/autorestart/scripts/95-systemd-restart-as-needed
+++ /dev/null
@@ -1,34 +0,0 @@
-#!/bin/bash
-
-TMP="/tmp"
-DELETED="$TMP/restart.deleted"
-OWNED="$TMP/restart.owned"
-UPDATED="$TMP/restart.updated"
-UNITS="$TMP/restart.units"
-
-lsof -n | awk '{ if ($5 == "DEL" || $10 == "(deleted)") print $9,$2; }' | sort -uk 1,2 > $DELETED
-find /var/db/pkg/ -name CONTENTS | xargs cat | awk '{ if ($1 != "dir") print $2; }' | xargs realpath 2> /dev/null | sort > $OWNED
-join $DELETED $OWNED | awk '{ print $2 }' | sort -gu > $UPDATED
-
-(for pid in $(cat $UPDATED) ; do
- systemctl status $pid | head -n 1
-done) | sort -u > $UNITS
-
-if [ -s $UNITS ] ; then
- (
- echo "Restarting units:"
- for unit in $(awk '{print $2}' $UNITS) ; do
- if ( echo $unit | grep $( ls -1 /etc/autorestart/ignore.d/* | sed -e 's/^/-f /' ) > /dev/null ) ; then
- echo "Skipping $unit"
- else
- systemctl restart $unit
- systemctl status $unit
- fi
- echo
- done
- ) | mailx -a "Content-Type: text/plain; charset=utf-8" \
- -s "$(hostname) systemd units requiring restart" $(whoami)
-fi
-
-rm -f $TMP/restart.*
-