73 lines
2 KiB
Bash
Executable file
73 lines
2 KiB
Bash
Executable file
#!/bin/bash
|
|
# /etc/rc.d/rc.local_shutdown - Local system shutdown script.
|
|
# This script will be run when the system is shutdown or rebooted.
|
|
|
|
# Notify that the server is shutting down.
|
|
CONFIG_FILE="server" /opt/bin/pushover -T "Shutting down: ${HOSTNAME%%.*}" -p 1 -m "$(printf '%(%d %b %Y - %H:%M:%S)T')"
|
|
|
|
# Stop containers.
|
|
[ -x /etc/rc.d/rc.lxc ] && /etc/rc.d/rc.lxc stop
|
|
|
|
# Stop lxcfs.
|
|
[ -x /etc/rc.d/rc.lxcfs ] && /etc/rc.d/rc.lxcfs stop
|
|
|
|
# Stop libvirt.
|
|
[ -x /etc/rc.d/rc.libvirt ] && {
|
|
/etc/rc.d/rc.libvirt guests_shutdown
|
|
/etc/rc.d/rc.libvirt stop
|
|
}
|
|
|
|
# Stop the rtorrent instances started at boot.
|
|
grep "^seeder:" /etc/passwd >/dev/null 2>&1 && {
|
|
pkill -INT -u seeder '^rtorrent .*$'
|
|
printf "%s" "Waiting up to 30 seconds for rtorrent to exit"
|
|
for ((i=0; i <= 59; i++)); do
|
|
if pgrep -u seeder '^rtorrent .*$' >/dev/null 2>&1; then
|
|
printf "%s" "."
|
|
sleep 0.5
|
|
else
|
|
break
|
|
fi
|
|
done
|
|
if ! pgrep -u seeder '^rtorrent .*$' >/dev/null 2>&1; then
|
|
printf "%s\n" " clean exit."
|
|
else
|
|
printf "%s\n" " failed - terminating."
|
|
pkill -TERM -u seeder '^rtorrent .*$'
|
|
sleep 2
|
|
pkill -KILL -u seeder '^rtorrent .*$'
|
|
fi
|
|
}
|
|
|
|
# Stop rsyncd.
|
|
[ -x /etc/rc.d/rc.rsyncd ] && /etc/rc.d/rc.rsyncd stop
|
|
|
|
# Stop proftpd.
|
|
[ -x /etc/rc.d/rc.proftpd ] && /etc/rc.d/rc.proftpd stop
|
|
|
|
# Stop greylistd.
|
|
[ -x /etc/rc.d/rc.greylistd ] && /etc/rc.d/rc.greylistd stop
|
|
|
|
# Stop SpamAssassin.
|
|
[ -x /etc/rc.d/rc.spamd ] && /etc/rc.d/rc.spamd stop
|
|
|
|
# Stop the php-fpm FastCGI daemon.
|
|
[ -x /etc/rc.d/rc.php-fpm ] && /etc/rc.d/rc.php-fpm stop
|
|
|
|
# Stop fail2ban.
|
|
[ -x /etc/rc.d/rc.fail2ban ] && /etc/rc.d/rc.fail2ban stop
|
|
|
|
# Stop netdata.
|
|
[ -x /etc/rc.d/rc.netdata ] && /etc/rc.d/rc.netdata stop
|
|
|
|
# Stop the vnstat daemon.
|
|
[ -x /etc/rc.d/rc.vnstat ] && /etc/rc.d/rc.vnstat stop
|
|
|
|
# Stop GlusterFS daemon.
|
|
[ -x /etc/rc.d/rc.glusterd ] && /etc/rc.d/rc.glusterd stop
|
|
|
|
# Stop the qemu guest additions agent.
|
|
[ -x /etc/rc.d/rc.qemu-ga ] && /etc/rc.d/rc.qemu-ga stop
|
|
|
|
# Stop the MCE daemon.
|
|
[ -x /etc/rc.d/rc.mcelog ] && /etc/rc.d/rc.mcelog stop
|