Normalmente, os serviços que devem estar sempre ativos são controlados pelo systemd (em versões mais recentes do Ubuntu). Você pode criar sua própria configuração do systemd. Se você quiser apenas executar o script, crie o seguinte arquivo em /etc/systemd/system/servicename.service
:
[Unit]
Description=Description of service
After=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/path/to/script
[Install]
WantedBy=multi-user.target
Em seguida, recarregue a configuração do systemd e ative o serviço no momento da inicialização:
$ systemctl daemon-reload
$ systemctl enable servicename
$ systemctl start servicename
No entanto, você também pode ter o systemd iniciando o processo diretamente, sem envolver o script. Nesse caso, o systemd irá reiniciar o processo quando ele morrer. Um guia bastante abrangente pode ser encontrado no link