As a non-root user, I want to run a background job when the system boots. It's sort of a service which doesn't require root privilege. Is there a way to do it?
One way is to put
sudo -u user command in
rc.local, but editing
rc.local requires root privilege.
Another way is to launch it from
cron every minute and check for any running instance, but firstly it wakes up the system unnecessarily and secondly, there can be race condition in checking running instances.
A third way is to run it in
~/.bash_profile, but I want to start it without user login.