[Unit] Description=rproc - Zero-Config C Process Runner # Ensures the service starts after the system is ready for general use. After=network.target [Service] # The service is simple and does not fork. systemd handles daemonization. Type=simple # --- IMPORTANT --- # Change this path to the directory where your .sh scripts are located. WorkingDirectory=/opt/scripts # The command to start the service. ExecStart=/usr/local/bin/rproc # The service will be automatically restarted if it fails. Restart=on-failure # On stop, systemd will only send a signal to the main rproc process. # This allows rproc to handle the graceful shutdown of its children itself. KillMode=process [Install] # This enables the service to be started at boot. WantedBy=multi-user.target