
Eu tenho dois programas no servidor Ubuntu 20.04, localizados em:
/home/kiko/go-btfs/cmd/btfs
/home/kiko/node5007/cmd/btfs
Ambos são executados com o comando: ./btfs daemon
Como fazer este comando para ambos os diretórios iniciarem automaticamente antes do login no servidor? Tentei criar o serviço de inicialização automática sudo nano /etc/systemd/system/btfs_main.service
e coloquei as seguintes configurações na unidade btfs_main.service
:
[Unit]
Description=Starting_btfs_daemon
Wants=network.target
After=syslog.target network-online.target
[Service]
Type=simple
ExecStart=/home/kiko/go-btfs/cmd/btfs/./btfs daemon
ExecStart=/home/kiko/node5007/cmd/btfs/./btfs daemon
Restart=on-failure
RestartSec=10
KillMode=process
[Install]
WantedBy=multi-user.target
e então: sudo systemctl daemon-reload
, sudo systemctl enable btfs_main.service
, sudo systemctl start btfs_main.service
, systemctl status btfs_main.service
. Com o comando final, tenho algum erro: Unit btfs_main.service has a bad unit file setting
. Como faço para definir as configurações da unidade para que ambos os comandos sejam executados automaticamente?
Responder1
Você pode usar o arquivo /etc/rc.local para iniciar seu script após a reinicialização do servidor.
Portanto, as etapas que você precisa seguir são as seguintes:
- Primeiro crie
/etc/rc.local
o arquivo e torne-o executável. Essa nuvem pode ser feita viachmod a+x /etc/rc.local
comando. - Agora crie
/etc/systemd/system/rc-local.service
o arquivo. Depois de criar o arquivo de serviço systemd, adicione o seguinte conteúdo a ele.
[Unit]
Description=/etc/rc.local Compatibility
ConditionPathExists=/etc/rc.local
[Service]
Type=forking
ExecStart=/etc/rc.local start
TimeoutSec=0
StandardOutput=tty
RemainAfterExit=yes
SysVStartPriority=99
[Install]
WantedBy=multi-user.target
- Depois disso, habilite o serviço na inicialização do sistema:
systemctl habilitar rc-local
- Agora inicie o serviço e verifique seu status:
systemctl iniciar rc-local.service
status do systemctl rc-local.service
você deve obter uma saída como a imagem abaixo.
- Agora coloque seus scripts no
/etc/rc.local
arquivo e torne-os executáveis. - Reinicie o servidor e verifique os resultados.