Encontrou esta solução:
crontab -e
i
@reboot /opt/teamspeak3-server_linux-x86/ts3server_startscript.sh restart
<esc>
:wq
A versão do Linux no servidor é o Centos 7.0.
O servidor Teamspeak é executado com este comando:
./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start
Meu servidor não tem 100% de tempo de atividade. Portanto, quero que o programa do servidor seja iniciado automaticamente usando um usuário não raiz.
Se você não precisar de privilégios root
para iniciar o servidor, poderá usar algo como
sudo -u <username> ./opt/teamspeak3-server_linux-x86/ts3server_startscript.sh start
para iniciá-lo como usuário <username>
.
Esta linha de comando deve ser colocada em um arquivo que é executado durante a inicialização.
IIRC existe um arquivo para material local cujo nome é parecido com 99-local
in /etc/init.d/
. Se não, você poderia escrever um você mesmo usando algum outro arquivo de inicialização como modelo. Para agendar o arquivo para ser executado durante a inicialização, use o seguinte comando:
chkconfig --level 345 <your file name> on
considerando que <your file name>
é relativo a /etc/init.d/
.
Observe que você deve especificar sudo
com seu caminho completo (por exemplo, /usr/bin/sudo
) para evitar a possibilidade de executar outra versão de sudo
em algum lugar no caminho de pesquisa e você deve resolver o .
em ./opt/...
(se executado a partir do diretório raiz, seria /opt/...
).