Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stopping one of multiple beesd services removes the /run/bees directory #273

Open
lilydjwg opened this issue Jan 3, 2024 · 4 comments
Open

Comments

@lilydjwg
Copy link

lilydjwg commented Jan 3, 2024

I ran two instances of beesd@....service, and stopped one of them (because this was a removable disk and deduplication was done), then the whole /run/bees directory was gone (tried nsenter into the beesd process's namespace but it was not there either).

This seems to be the culprit:

RuntimeDirectory=bees

@kakra
Copy link
Contributor

kakra commented Jan 3, 2024

So for a multi-instance bees service, we should probably have one runtime directory per instance? OTOH, I wonder if that's intended behavior of systemd, or if it is a bug... I'd expect multiple instances of a service to share one runtime directory just fine...

@kakra
Copy link
Contributor

kakra commented Jan 3, 2024

Does it work with RuntimeDirectory=bees/%I?

@lilydjwg
Copy link
Author

lilydjwg commented Jan 4, 2024

It works better with RuntimeDirectory=bees/%i. %I will create nested directories as it replaces - with /. beesd still places files in /run/bees though, so these files are preserved.

RuntimeDirectoryPreserve=yes does the same.

if that's intended behavior of systemd, or if it is a bug

Maybe ask systemd devs?

@kakra
Copy link
Contributor

kakra commented Jan 4, 2024

It works better with RuntimeDirectory=bees/%i. %I will create nested directories as it replaces - with /. beesd still places files in /run/bees though, so these files are preserved.

Oh yes, I was unsure about %i vs %I. I think for the instantiated services, we should go with that then - and somehow ensure that such bees instance would actually place the files in such a subdirectory.

RuntimeDirectoryPreserve=yes does the same.

Yes but it would leave created files and directories behind if the last instance exited.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants