Announcement

Collapse
No announcement yet.

Fedora 32 Planning To Make Use Of systemd's sysusers.d For Declaring New Users

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #11
    Originally posted by jason.oliveira View Post

    it's a complicated widget to control or modify text files that are better-off hand-edited. I'll stick with useradd, thanks.
    Uh, no. This is not a tool for YOU to add users to your own system. This is for distro package maintainers. Instead of coming up with a little script for each package that adds the required system users, or maybe updates the user settings to match the latest package requirements, they just drop a file declaring which users the package needs (edit: and the configuration to use for each user/group) into sysusers.d. The tool that is developed by the systemd team then makes sure to update the system users and groups according to that file.

    Declarative config is a big win over old-fashioned shell scripts for most tasks. And actually much less complicated, because it removes complexity from lots of places and abstracts that complexity away into a single tool (that does one job and does it well!), reducing the number of bugs and failed package upgrades.

    Comment


    • #12
      Originally posted by jason.oliveira View Post
      So, like every other Red Hat-funded application since https://www.linux.co.cr/distribution...linuxconf.html, it's a complicated widget to control or modify text files that are better-off hand-edited.
      It's not complicated and it's specifically for packages, it's an interface for other software, just like other /etc/folder.d stuff. Packages can just drop their user config in the folder instead of manipulating system files with the install scripts, which is more convenient for maintainers and anyone that is actually working with the distro internals.

      The user is expected to still edit /etc/passwd and /etc/users for his own needs, or use whatever GUI application normal human beings use (for example Yast) instead of playing neckbeard and editing text files manually.
      Last edited by starshipeleven; 03 January 2020, 06:05 AM.

      Comment


      • #13
        Originally posted by tildearrow View Post
        I have a question. Is systemd able to handle a large number of users? (thousands)
        there is no space for thousands of system users in userids address space (they have uids below 1000)

        Comment


        • #14
          Originally posted by jason.oliveira View Post
          So, like every other Red Hat-funded application since https://www.linux.co.cr/distribution...linuxconf.html, it's a complicated widget to control or modify text files that are better-off hand-edited. I'll stick with useradd, thanks.
          moron, useradd is a complicated widget, while sysusers.d/* files are hand-edited

          Comment


          • #15
            FedoraD

            Comment


            • #16
              Originally posted by tildearrow View Post
              I have a question. Is systemd able to handle a large number of users? (thousands)
              also there's another reason why your question is irrelevant here. article seems to imply that fedora is going to use systemd-sysusers, but it isn't true. fedora is going to use same file format, but still apply it via useradd calls from rpm scriptlets

              Comment


              • #17
                Originally posted by NotMine999 View Post
                Fails to see what problem is being solved by this feature.
                i'm sure there is plenty of things you fail to see, it's not something to be proud of.

                from feature page: 🔗 Benefit to Fedora

                System users are declared by packages using a uniform syntax.

                The scriptlet part is standarized. Current implementation of creating users and groups is not changed, but may be switched easily in the future. For example, for container images, the macro may be replaced by a noop implementation, and the users created externally without installing the user creation tools in the container.

                Admins may easily introspect the system user list and which packages require users.

                Admins may easily override definitions of system users by providing appropriate sysusers.d files with higher priority.

                The difference between Fedora and other distros like OpenSUSE is reduced.

                Comment


                • #18
                  Originally posted by pal666 View Post
                  also there's another reason why your question is irrelevant here. article seems to imply that fedora is going to use systemd-sysusers, but it isn't true. fedora is going to use same file format, but still apply it via useradd calls from rpm scriptlets
                  They seem to imply that they want to eventually move to use it (or at least experiment with it) after they migrated packages to use this current method

                  Comment


                  • #19
                    Originally posted by pal666 View Post
                    there is no space for thousands of system users in userids address space (they have uids below 1000)
                    Well, technically, those number ranges can be changed in (typically) /etc/login.defs, but importantly, sysusers.d/*.conf is designed to support adding extended system uid/gid ranges (perhaps in the high 32-bit range?), as the space below 1000 is getting crowded with all the new services.

                    Comment


                    • #20
                      Originally posted by starshipeleven View Post
                      They seem to imply that they want to eventually move to use it (or at least experiment with it) after they migrated packages to use this current method
                      I would say more that imply. It would seem to be their (Fedora's) desired direction in another release or two, although using sysusers.d/*.conf files would not require any other distro to go the same way (as the files are declarative, many different programs/scripts would be capable of processing them, and packages will be able to agnostic to the tooling on a particular distribution).

                      As a reformed packager (for a couple of larger programs targeting multiple distributions) moving towards a declarative syntax (and making user/group creation a SEP) will simplify the testing required.

                      Comment

                      Working...
                      X