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
[bug:1598900] tmpfiles snippet tries to create folder owned by nonexistent user #992
Comments
Time: 20180706T19:33:14 |
Time: 20190614T10:16:54 |
Time: 20190614T12:53:56 We could include a sysusers.d snippet and install it. But it would need to be removed (or not installed) by the included glusterfs.spec.in file. |
Time: 20190620T11:54:06 The GlusterFS packaging files for Debian are at https://github.com/gluster/glusterfs-debian if someone would like to send a PR for such a change. |
Time: 20190620T14:24:44 I still figure it probably makes sense to ship the paired files. e.g. what happens if you use sudo make install, that does not run fedora %pre either. If nothing else, a sysusers.d file serves as documentation for what to do, and for distros that do expect to use them, it's always best to have a canonical one. |
Time: 20190620T14:33:28 I am curious why Fedora guidelines say not to use them. It looks like that page is very, very old, its current form dates to 2013-04-17, and systemd added the sysusers.d file format and systemd-sysusers tool with systemd 215, released 2014-07-03. Perhaps it has simply never been updated since then? I know systemd ships with its own sysusers.d snippets internally, and according to https://rpmfind.net/linux/RPM/fedora/devel/rawhide/x86_64/s/systemd-242-3.git7a6d834.fc31.x86_64.html it also packages them. This would indicate, perhaps, that glusterfs should both (optionally) install a sysusers.d file, and (mandatory) run useradd in %pre. |
Time: 20191022T08:02:03 From /usr/lib/rpm/macros.d/macros.systemd: This should be used by package installation scripts which require users orgroups to be present before the files installed by the package are present ondisk (for example because some files are owned by those users or groups).Example:Source1: %{name}-sysusers.conf...%installinstall -D %SOURCE1 %{buildroot}%{_sysusersdir}/%{name}.conf%pre%sysusers_create_package %{name} %SOURCE1%files%{_sysusersdir}/%{name}.confTogether with sysusers.d(5) this is pretty well explained. I do not have any objection to adding a sysusers.d snippet :) |
Thank you for your contributions. |
Closing this issue as there was no update since my last update on issue. If this is an issue which is still valid, feel free to open it. |
URL: https://bugzilla.redhat.com/1598900
Creator: eschwartz at archlinux.org
Time: 20180706T19:30:50
When installing glusterfs using --with-tmpfilesdir=/usr/lib/tmpfiles.d a tmpfiles snippet is installed that creates /run/gluster owned by the "gluster" user, but the user itself is never created and won't exist without user intervention.
Initially introduced in 0e50c4b which is the commit which introduced the snippet itself.
Looks like the sysusers.d snippet was instead inlined as part of the redhat-specific build scripts in a post-install statement, which is quite odd.
Rather than requiring distros to reimplement this on their own, it should be moved to a sysusers.d snippet.
Aside: why is this disabled by default, and why does it use a --with-=$path argument then heuristically check if it is nonexistent instead of an --enable- argument which uses the default path?
The text was updated successfully, but these errors were encountered: