45 lines
1.1 KiB
Bash
Executable File
45 lines
1.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# (1) Primary init.
|
|
#--------------------------------------------------------#
|
|
# (1) Get absolute folder #
|
|
ROOT=$(dirname `realpath $0`);
|
|
ROOT=`dirname $ROOT`;
|
|
|
|
# (2) Check config file #
|
|
test ! -f $ROOT/com/config/sats && echo "Daemon not started" && exit 1;
|
|
|
|
# (3) Fetch BUFFERS #
|
|
source $ROOT/com/config/sats;
|
|
|
|
|
|
|
|
# (2) Start daemon
|
|
#--------------------------------------------------------#
|
|
SERV_LIST="`systemctl list-units --plain | grep 'sats' | grep -v '.slice' | grep -vP '@\.service$' | awk '{print $1}'`";
|
|
SERV_LIST="`ls -l /lib/systemd/system/sats-* | grep -vP '~$' | grep -vP '@\.service$' | awk '{print $NF}'` $SERV_LIST";
|
|
|
|
while sleep 1; do
|
|
|
|
for serv in $SERV_LIST; do
|
|
|
|
serv_name=`basename $serv`;
|
|
status="`systemctl is-active $serv_name`";
|
|
|
|
if [ "$status" = "failed" ]; then
|
|
echo "SYSD0$serv_name" >> $BUF_OUT;
|
|
|
|
elif [ "$status" = "inactive" ]; then
|
|
echo "SYSD1$serv_name" >> $BUF_OUT;
|
|
|
|
elif [ "$status" = "activating" ]; then
|
|
echo "SYSD2$serv_name" >> $BUF_OUT;
|
|
|
|
elif [ "$status" = "active" ]; then
|
|
echo "SYSD3$serv_name" >> $BUF_OUT;
|
|
|
|
fi;
|
|
|
|
done;
|
|
|
|
done; |