So I was logged into my TV today because I wanted to check my kernel version due to the recent exploits going around, especially this week, and find out just which one it ran, out of curiosity, if it could be helpful in jailbreaking others of the same firmware version or alike. But, while I was there, I looked at my dinit, and I saw this:
This was as expected; mounting the USB drive did not work as intended, possibly because of a timing from when in the init chain the dinit service starts (WebOS inits with systemd first but launches Luna, which launches other services, of which one is the Homebrew Launcher, which in return does a run-parts on a directory of which one is my dinit "service"). So chances are, sometimes, when dinit starts, the mounting script might fail because it runs too early.
Syncthing and the rclone FTP server rely on the USB stick being recognized, so naturally they failed to start - no surprises there. The NAS didn't mount because I forgot to change the IP, oops.
Now, when this mis-timing happens, all it would take is to just re-run the chain from the start again, so that Syncthing and rclone can launch.
What would be the best way to implement a "retry" here?
Kind regards,
Ingwie
PS.: That super long watch-command was an absolute brainfart but the best I could come up with to monitor if it was still mounted or not - and if not, cause the dependees to exit too, if they hadn't already.
Hello there!
So I was logged into my TV today because I wanted to check my kernel version due to the recent exploits going around, especially this week, and find out just which one it ran, out of curiosity, if it could be helpful in jailbreaking others of the same firmware version or alike. But, while I was there, I looked at my dinit, and I saw this:
This was as expected; mounting the USB drive did not work as intended, possibly because of a timing from when in the init chain the dinit service starts (WebOS inits with systemd first but launches Luna, which launches other services, of which one is the Homebrew Launcher, which in return does a
run-parts
on a directory of which one is mydinit
"service"). So chances are, sometimes, when dinit starts, the mounting script might fail because it runs too early.For reference, here are the units:
Syncthing and the rclone FTP server rely on the USB stick being recognized, so naturally they failed to start - no surprises there. The NAS didn't mount because I forgot to change the IP, oops.
Now, when this mis-timing happens, all it would take is to just re-run the chain from the start again, so that Syncthing and rclone can launch.
What would be the best way to implement a "retry" here?
Kind regards, Ingwie
PS.: That super long watch-command was an absolute brainfart but the best I could come up with to monitor if it was still mounted or not - and if not, cause the dependees to exit too, if they hadn't already.