Linux User Share Instructions

Linux User Share | Zrok

I have spent some time trying to get Linux User Shares to work in both debian and a fresh ubuntu 24.04 install, and these instructions don't work when I follow them verbatim. And after messing around for quite a while I still wasn't able to get it working on my own when trying to manually create a modified user .service file copied from the zrok-share.service.

I get the following error:

$ systemctl --user enable --now zrok-share@drive.service
Failed to connect to bus: Permission denied

# trying again with sudo, even though it shouldn't be required.
$ sudo systemctl --user enable --now zrok-share@drive.service
Failed to connect to bus: No such file or directory

It is not clear to me if we're supposed to create our own .service file as well, I tried but it didn't seem to work. Also, in a fresh ubuntu installation why wouldn't systemctl --user it work without sudo? I can google this second question, but I'm suggesting maybe some docs updates to clarify for non-expert users.

My apologies if this is an ignorant question, my linux skill is probably considered sub-par. I was able to get just regular zrok-share working using the root zrok-share.service as described in the frontdoor docs. And it works great, really like what you all are building here.

I am running the latest release, v0.4.45.

1 Like

Welcome, @v0idDaemon. You're on the right track. I published those instructions prematurely and apologize for that. The next zrok release has the missing and updated files you need. You can patch your installation like this to follow those instructions.

This is correct, assuming you placed the env config in ~/.zrok/zrok-share@drive.env:

systemctl --user enable --now zrok-share@drive.service
1 Like

@v0idDaemon I forgot to mention you must also systemctl --user daemon-reload after you cp the user unit template to the system-wide user unit location.

BTW, you surmised correctly it's never necessary to manage --user units with sudo.