reiniciando um script ao inicializar na tela / tmux

0

Eu tenho um script que roda em dot net, que funciona bem ao iniciá-lo através de putty - na tela ou no tmux.

No entanto, eu tenho tentado no total mais de 8 horas para fazê-lo funcionar com systemd ou crontab, mas parece que não funciona.

Quando eu executo no cron ou systemd, o script não vai começar ou funcionar.

Este é o script:

#!/bin/sh
echo ""
echo "Running NadekoBot with auto restart and updating to latest build!"
root="/root"
youtube-dl -U

sleep 5s
while :; do cd "$root/NadekoBot" && dotnet restore && dotnet build --configuration Release && cd "$root/NadekoBot/src/NadekoBot" && dotnet run -c Release && cd "$root" && wget -N https://github.com/Kwoth/NadekoBot-BashScript/raw/1.4/nadeko_installer_latest.sh && bash "$root/nadeko_installer_latest.sh"; sleep 5s; done
echo ""
echo "That didn't work? Please report in #NadekoLog Discord Server."
sleep 3s

cd "$root"
bash "$root/linuxAIO.sh"
echo "Done"

rm "$root/NadekoARU_Latest.sh"
exit
    
por Boaz van Veen 05.09.2017 / 16:14

1 resposta

0

Aqui está a resposta, depois de muitas horas tentando descobrir. Isso funciona para nadekobot , pelo menos. Copie esse texto para a pasta do sistema systemd como um arquivo nedekobot.service e, em seguida, não se esqueça de ativar o arquivo de serviço.

[Unit]
Description=Nadekobot

[Service]
WorkingDirectory=/root/
User=root
Type=forking

ExecStart=/usr/bin/tmux new-session -s mc-%i -d '/bin/sh nadeko_start.sh'

ExecStop=/bin/sleep 2

[Install]
WantedBy=multi-user.target
    
por 05.09.2017 / 19:38