Slashdot Mirror


'Severe' Systemd Bug Allowed Remote Code Execution For Two Years (itwire.com)

ITWire reports: A flaw in systemd, the init system used on many Linux systems, can be exploited using a malicious DNS query to either crash a system or to run code remotely. The vulnerability resides in the daemon systemd-resolved and can be triggered using a TCP payload, according to Ubuntu developer Chris Coulson. This component can be tricked into allocating less memory than needed for a look-up. When the reply is bigger it overflows the buffer allowing an attacker to overwrite memory. This would result in the process either crashing or it could allow for code execution remotely. "A malicious DNS server can exploit this by responding with a specially crafted TCP payload to trick systemd-resolved in to allocating a buffer that's too small, and subsequently write arbitrary data beyond the end of it," is how Coulson put it.
Affected Linux vendors have pushed out patches -- but the bug has apparently been present in systemd code since June of 2015. And long-time Slashdot reader walterbyrd also reports a recently-discovered bug where systemd unit files that contain illegal usernames get defaulted to root.

551 comments

  1. Time for tar and feathers? by chthon · · Score: 4, Insightful

    Anyone?

    1. Re:Time for tar and feathers? by Anonymous Coward · · Score: 5, Interesting

      Besides the author who suggests with the title that the bug resides in systemd itself rather than a project included under the systemd umbrella that's disabled by default on most distributions?

    2. Re:Time for tar and feathers? by KiloByte · · Score: 3, Interesting

      Tarring and feathering would indeed be good -- especially that Lennart as usual insta-closes an obvious and nasty security bug[1] as "non-bug". And when presented with standards documents, he says they don't apply to him. Seriously, can someone buy this guy an "Unix for dummies" book?

      While we don't exactly suffer from a dearth of kooks, this particular kook enjoys having his employer promote his masterpieces even when totally inadequate. The world would be so much better without systemd, PulseAudio and avahi.

      [1]. "0day" is somehow a popular name for CI systems these days, and those often allow weakly-trusted or even completely untrusted submissions.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    3. Re:Time for tar and feathers? by The123king · · Score: 5, Funny

      I can't see how a tape archive could possibly help.

      --
      If you gave me a choice between a printer and a giraffe with explosive diarrhoea, i'll get my ladder and my raincoat
    4. Re:Time for tar and feathers? by Z00L00K · · Score: 1

      Tar and Feathers are so expensive these days, I'd take poison ivy instead.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    5. Re:Time for tar and feathers? by Anonymous Coward · · Score: 2, Insightful

      Wow, what a douchebag that guy comes off as.

    6. Re:Time for tar and feathers? by Opportunist · · Score: 2

      But feather probably would Considering how ancient the most recent version of Feather Linux is, chances are good that this might actually not use systemd.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    7. Re:Time for tar and feathers? by stooo · · Score: 0

      >>"Severe' Systemd Bug Allowed Remote Code Execution For Two Years"
      Yes, Systemd is a severe bug in itself.
      That code should not run as root.

      --
      aaaaaaa
    8. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      Surely the modern equivalent is superglue and packing peanuts?

    9. Re:Time for tar and feathers? by AmiMoJo · · Score: 2, Informative

      It was closed because it has already been discussed at length here: https://github.com/systemd/sys...

      Do you actually have an argument against his logic here? As in a good reason to follow POSIX rules in this case when Linux in general, which is what systemd follows, does not.

      I'm not saying he is right, merely that your statement gives a false narrative of what actually happened and that you don't seem to have any actual argument beyond "he immediately closes bugs I think are obvious!"

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Time for tar and feathers? by KiloByte · · Score: 5, Informative

      It was closed because it has already been discussed at length here:

      6237 is about running services as the wrong user, 6259 is about usernames allowed by POSIX but not by systemd.

      Do you actually have an argument against his logic here? As in a good reason to follow POSIX rules in this case when Linux in general, which is what systemd follows, does not.

      Linux doesn't even know about usernames (just uids), you may at most discuss the behaviour of a particular userland program. And every program I know of (a bunch was tested by someone on IRC) except systemd handles ones starting with a digit correctly, as POSIX prescribes. For some reason, adduser (but not, eg, useradd) dislikes creating new accounts with such a name but all it takes is specifying an option when it relaxes the check from names merely discouraged to ones that are illegal only. No other account creation program complains.

      The other reason is that you have to accept any legal external input, and input allowed by the standard is certainly legal. And you need to handle illegal input as well, at the very least by returning an error rather than giving full root access.

      any actual argument beyond "he immediately closes bugs I think are obvious!"

      That's Lennart's usual response to anything that's not obvious to him. Most of us try to at least research a bug or ask the reporter to explain.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    11. Re:Time for tar and feathers? by lucm · · Score: 3, Insightful

      Followed your link, and interestingly:

      poettering locked and limited conversation to collaborators 23 hours ago

      He's a real team player

      --
      lucm, indeed.
    12. Re:Time for tar and feathers? by thegreatbob · · Score: 1

      Yay! At some point we crossed 5 million commentards, and they just keep getting better!

      --
      There is no XUL, only WebExtensions...
    13. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      There is no limitation specified by Linux. It's just that single tool. If there were a limitation you couldn't use usernames with leading digits, but they are fully supported except that wrapper around useradd. It's not like puppet where digits are a silly idea as first letter because you can't uppercase digits.

    14. Re:Time for tar and feathers? by squiggleslash · · Score: 5, Insightful

      Not a Lennart critic in general (I usually defend systemd) but I think the GP has a point here.

      - The first bug was closed immediately despite systemd treating what Lennart considers an error (debatable) in the worst way possible - escalating a process to root privileges when the user is clearly stating it shouldn't.
      - The second bug is an attempt to say "OK, we'll play your game, if you're saying that's correct behavior because of {another issue}, then let's state that {another issue} is also a bug because that's not right either.

      In both cases Lennart has immediately closed the ticket without waiting for discussion. He may or may not have reasonable reasons for initially opposing the tickets (he doesn't in the first ticket's case, he absolutely doesn't - root privileges because a username (which you're not even going to bother validating) doesn't look right?! - which is what the GP is complaining about.

      This is, frankly, horrifying. systemd is a key part of the GNU/Linux infrastructure, and it exists for a reason: to remove the reliance on shitty, fragile, shell scripts that were all-too-easily made insecure through ignorance or haste. Those who develop it must, absolutely must, listen to and take seriously security concerns. Closing two tickets in a row, immediately, without discussion, concerning a major privilege escalation, still worse because of logic that ultimately boils down to "The user should be smart enough to know some username rules that some developer somewhere pulled out of their arse and which only one or two tools actually enforce", is ridiculously incompetent.

      --
      You are not alone. This is not normal. None of this is normal.
    15. Re:Time for tar and feathers? by jmccue · · Score: 2, Insightful

      And again, it's not the huge security issue some people make out that it is because in order to create a user with a name starting with a digit and then create a service starting as that user, you have to have root anyway.

      true, but - with people downloading packages (rpm/deb/whatever), what if that package contained a unit file with such an ID ? off to root it goes. So does that means a admin after installing a package needs to examine the unit files even if from a trusted source ?

      Bugs happen and since systemd is open someone found it and it may very well have been fixed by now. If systemd was proprietary, at this point maybe only the (three letter) orgs would know and keep it a secret. So the development model worked anyway :)

      The silly thing is the argument of "is this a bug ? yes/no/yes/no...".

    16. Re:Time for tar and feathers? by aardvarkjoe · · Score: 3, Insightful

      Poettering's "logic" is pretty much that he doesn't want to adhere to standards just because he doesn't want to. He spouts some nonsense about making the unit files "portable," but that argument really doesn't make any sense in the context of this bug -- how on earth can you justify misinterpreting a username that is valid on some systems as being "portable"?

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    17. Re:Time for tar and feathers? by aardvarkjoe · · Score: 5, Informative

      So specifically what part of his argument makes you think he doesn't understand this? Because he seems to have addressed your points directly and with reasonable, factually and logically correct arguments.

      Well, let's look at his arguements:
      First, he said:

      Yes, as you found out "0day" is not a valid username.

      Which is really damn obviously false, because the relevant standards permit it and various Linux systems permit it. It's only "not valid" as defined by systemd.
      Then he says:

      1. systemd is not the one coming up with the restrictions on user names, and while some distributions are less restrictive, many do enforce the same restrictions as we do. In order to make systemd unit files portable between systems we'll hence enforce something that resembles more the universally accepted set, rather than accept the most liberal set possible.

      Making things "portable" by restricting the configurations that systemd will work with? On what planet does that make any sense at all? It's not like correctly handling user names that Poettering doesn't use is going to break things on his computer; he just doesn't want to make a simple change to fix something because of his ego.

      2. User= in unit files is about system users, not regular users, and I am pretty sure we should enforce a stricter regime about system users than regular users.

      Since systemd doesn't get to dictate valid usernames, this isn't a reasonable argument.

      3. In systemd we generally follow the rule that when we encounter a unit setting that does not validate syntax-wise we'll log about it and ignore it, for compat reasons. We do the same for User= here as for all other options. Note that if you specify a valid user name but where the user doesn't exist, then we'll instead fail the service on start, because in that case there's not just something wrong with the syntax the service author used but actually something inconsistent on the system, and that should be considered fatal.

      This just demonstrates a lax attitute towards security. If the unit file specifies a "User=" line, then they obviously want to set a particular user to run the service, and unexpectedly running it as root is a security hole. The fact that Poettering can't see that after 10 seconds of thinking about it tells me that I wouldn't want his code anywhere near my system.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    18. Re:Time for tar and feathers? by dbIII · · Score: 1

      Maybe - but it's truly a newbie mistake to allow invalid input. Letting invalid input allow full access is the sort of stuff we laugh at the worst of MS for and not something to emulate.

    19. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      Epoxy, simulate tar way better than superglue

    20. Re:Time for tar and feathers? by Type44Q · · Score: 1

      That creepy weirdo would like it.

    21. Re:Time for tar and feathers? by Anonymous Coward · · Score: 3, Insightful

      any actual argument beyond "he immediately closes bugs I think are obvious!"

      The solution is left as an exercise

      Serious users do not consider this a problem

      I don't know what the name for this fallacy is, but if nothing else, it's an Appeal to Authority by proxy. It shuts down discussion by implying that if one were at the same exalted intellectual plane as the claimant, then there would be nothing to discuss. And that, by implication, if you consider that there actually is something to discuss, you are inferior.

      Given in response to an honest question, it is an attack on the querent, and, as such, intellectual bullying.

    22. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Welcome to systemd.

    23. Re:Time for tar and feathers? by DontBeAMoran · · Score: 1

      As long as it's open hardware tar and feathers from free range chickens.

      --
      #DeleteFacebook
    24. Re:Time for tar and feathers? by AmiMoJo · · Score: 1

      That's a fair point. I guess the question is if the input should be validated by systemd or the tool creating the user. I suppose that as the service may be run as root, it's not unreasonable to make that extra check.

      Thanks for being the first one to answer with an actual argument rather than "hurrr, systemd!"

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    25. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Why does it not surprise me that you're a systemd-defender?? You're so much like the Slashdot version of Emmanuel Goldstein that I have to wonder if you're actually fictional!

    26. Re:Time for tar and feathers? by AmiMoJo · · Score: 1

      - The first bug was closed immediately despite systemd treating what Lennart considers an error (debatable) in the worst way possible - escalating a process to root privileges when the user is clearly stating it shouldn't.
      - The second bug is an attempt to say "OK, we'll play your game, if you're saying that's correct behavior because of {another issue}, then let's state that {another issue} is also a bug because that's not right either.

      One of us has this backwards... It looks to me like in both cases Lennart is saying that systemd follows the Linux standard, not POSIX. Under the Linux rules on usernames they can't start with a number, so using "0day" as a username is invalid and the service won't start because the user doesn't exist.

      Unfortunately some tools allow you to create a user whose name starts with a number, which is a bug in those tools.

      I'd say that it's valid to check for this in systemd due to the resulting action being "run as root", but I can appreciate the argument that systemd shouldn't be checking for bugs in other software. And the second bug is complaining that systemd isn't POSIX, which is by design so really is not-a-bug. One could argue it should be POSIX, but bug reports are not the place to do that.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    27. Re:Time for tar and feathers? by AmiMoJo · · Score: 1, Insightful

      Which is really damn obviously false, because the relevant standards permit it and various Linux systems permit it. It's only "not valid" as defined by systemd.

      No! This is where you are confused. It's not valid. Some Linux tools allow it, but they shouldn't. The rules for Linux user names say they must not start with a digit, and for good reason (could accidentally insert a space and be treated as a UID, similar to the old "rm /rf / random_dir" mistake).

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    28. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Tar and Feathers are so expensive these days, I'd take poison ivy instead.

      I much prefer Catwoman.

    29. Re:Time for tar and feathers? by drinkypoo · · Score: 3, Insightful

      One of us has this backwards... It looks to me like in both cases Lennart is saying that systemd follows the Linux standard, not POSIX.

      What Linux standard? The LSB? POSIX is the only other standard involved, and Linux tends to follow POSIX in spite of the many protestations that Linux is not POSIX.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    30. Re:Time for tar and feathers? by drinkypoo · · Score: 2

      Since systemd doesn't get to dictate valid usernames, this isn't a reasonable argument.

      It's also just outright wrong because Unix does not have any concept of system users, nor does Linux. Only one user is inherently special, and that user has UID 0. Every other user is used exactly as you use it. Nothing prevents you from assigning a password to one of those "special" users and logging in to it, any more than anything prevents you from creating another user account with a locked-out password and using it in the same way as the "system users".

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    31. Re:Time for tar and feathers? by squiggleslash · · Score: 5, Insightful

      One of us has this backwards... It looks to me like in both cases Lennart is saying that systemd follows the Linux standard, not POSIX. Under the Linux rules on usernames they can't start with a number, so using "0day" as a username is invalid and the service won't start because the user doesn't exist.

      Neither of us have it backwards. First ticket is Lennart essentially saying "It's OK for systemd to run an application as root when a user specifies an username beginning with a digit because I (Lennart) think the user has made an error, a username shouldn't begin with a digit (his justification being what you're saying.) The second is saying "We shouldn't treat a username beginning with a digit as an error".

      It's debatable it is a "Linux" standard to begin with. Only one of the two command line tools to add users actually enforces this supposed rule. Literally nothing else does. The kernel is agnostic. And the command line tools aren't Linux, they're GNU. So what we're looking for is evidence that (1) RMS or an officer blessed by RMS has declared this to be a standard and (2) No declaration since has placed POSIX compatibility ahead of legacy GNU functionality.

      Both tickets are entirely reasonable and not one of them should have been closed without discussion. Actually, let me correct that, the first should have been closed with just a note along the lines of "Fuck me! You're right! Personally I think {Inserts personal beliefs about "Linux"'s username policy here} so I'll just have it output an error message and not start the daemon", not "Ha, user is an idiot! LOL ROLF APK!! EVERYONE knows usernames begin with letters LOL! Root privileges for everyone!"

      --
      You are not alone. This is not normal. None of this is normal.
    32. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Tie Lennart up in tape so that he cannot do more damage to Linux?

    33. Re:Time for tar and feathers? by Anonymous Coward · · Score: 1

      Why is systemd even validating usernames using its own hastily written code and arbitrary rules? What purpose does this serve other than to introduce bugs like this? Use POSIX rules or just map directly to UID and use that. Is it even reasonable to make that extra check if failing the check just escalates privileges to root anyway?

      "hurrr, systemd!" is just shorthand for all of the valid arguments that are continually brought up and dismissed out of hand by Lennart and his gullible followers. Your post here has essentially just wallpapered over a privilege escalation implemented by shoddy architectural logic. How do you expect people to keep wasting time with real arguments if they're received like this. It's maddening!

    34. Re:Time for tar and feathers? by AmiMoJo · · Score: 1

      I suppose technically it depends on adduser.conf and the regex defined in there, which only one tool apparently bothers to check. GNU isn't POSIX either, in any case.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    35. Re:Time for tar and feathers? by Joce640k · · Score: 0

      Luckily for us Linus is still banning std::vector/std::string and forcing everybody to use malloc() instead.

      Idiot.

      --
      No sig today...
    36. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      > and it exists for a reason: to remove the reliance on shitty, fragile, shell scripts

      Is that the reason?
      Maybe the reason is to have a consistent vector into Linuxes. After all, everyone called anyone who wanted even ONE distro to not use systemd a buncha kooks, and it is very obvious that systemd has raised consistency among Linuxes, up to and including one of the few true bugs that goes from data packet on the wire to running exploit code in one swoop.

      Just at least consider the possibility; in the light of the events of the past few years, that is not too much to ask.

    37. Re:Time for tar and feathers? by I'm+New+Around+Here · · Score: 1

      Best movie ever.

      --
      If you think I voted for Trump because of this post, you're wrong. I voted for Dr. Jill Stein of the Green Party. Again.
    38. Re:Time for tar and feathers? by godrik · · Score: 2

      tar and feathers?

      $ man feathers
      No manual entry for feathers

      mmm...

    39. Re:Time for tar and feathers? by BronsCon · · Score: 2

      " " is a digit now?

      --
      APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
    40. Re:Time for tar and feathers? by aardvarkjoe · · Score: 4, Informative

      The rules for Linux user names say they must not start with a digit,

      Where are you finding this documented?

      As you have been informed repeatedly in this thread, the Linux kernel doesn't even use the concept of user names (it works with IDs instead), so your statement can't possibly be true. Apparently one particular tool, adduser, by default, enforces some extra rules, but that doesn't mean that those rules are universal to all Linux systems.

      Linus has a rule "don't break userspace." Poettering's rule is apparently "let's break userspace every chance we get for no damn reason at all."

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    41. Re:Time for tar and feathers? by BronsCon · · Score: 1

      This. Look up the username in /etc/passwd and be done with it. Well, maybe also check file permissions and ownership of /etc/passwd and reject it if not owned by uid 0 or if writable by anyone other than uid 0. Then be done with it.

      --
      APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
    42. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      systemd is pure retardness ever since it's day 0, it's designed to take over linux ecosystem with it's stupid way of making things

    43. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      2. User= in unit files is about system users, not regular users, and I am pretty sure we should enforce a stricter regime about system users than regular users.

      Since systemd doesn't get to dictate valid usernames, this isn't a reasonable argument.

      This is an issue because many programs which specify a user accept either a uid (purely numeric) or a username (use the OS to translate to a uid). What happens when someone creates a user whose username is purely numeric and that number is different from the uid? What happens when a hacker creates a user with a username of "1" (eg. the uid of root)? Should systemd treat that as root (assuming "1" is a uid) or as the user with username "1" (uid is above 100)?

      To be honest, I think it should only be an issue if the username only contains digits. 0day shouldn't cause a problem.

    44. Re:Time for tar and feathers? by BronsCon · · Score: 1

      Restore a non-systemd version of your favorite distro from tape?

      --
      APK quotes people (including myself) without context and should not be trusted. Just thought you should know.
    45. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      This is, frankly, horrifying. systemd is a key part of the GNU/Linux infrastructure, and it exists for a reason: to remove the reliance on shitty, fragile, shell scripts that were all-too-easily made insecure through ignorance or haste.

      I'm sure that getting rid of shitty, fragile, shell scripts is something that systemd does. A lot of unit files I see have the Exec line set to one of the old, shitty, fragile, shell scripts. So you not only have to trouble shoot the unit files but also cruddy old shell scripts ported from Debian sarge or CentOS 5.

      The user bug was fun. You get to troubleshoot user permissions on things like /run and /etc and things all over /var/lib or /usr. Consider what happens when a daemon starts up as root, writes out its log files into /var/log and dies because the code composing it refuses to run as root. Once you fix the user problem in the unit file (User=u0day instead of User=0day) you also need to go chown or remove all the files that root-ran instance left behind.

      "The user should be smart enough to know some username rules that some developer somewhere pulled out of their arse and which only one or two tools actually enforce",

      I think this is the next step of bloat after every program gets big enough that it reads e-Mail. Once a program reads mail the next step is to enforce bullshit username requirements on end users. (Password requirements are always bullshit. It's the first law of computer security.)

    46. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      "just stand still for 3 hours while it cures"

    47. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Tar at least doesn't have problems with usernames starting with a number

    48. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      I hate all of the quarreling, name-calling, etc. online in general, esp. here, but I have to voice my opposing position. You're obviously very strong/adept with words (I am not) but I think you're caught up in details and missing the big picture.

      This is, frankly, horrifying. systemd is a key part of the GNU/Linux infrastructure...

      You meant: "systemd sadly has become an integral core to many GNU/Linux distributions, but many have wisely recognized the foolishness of the MS Windows ways and have steered clear of it (because systemd is _exactly_ like MS Windows ways of doing things)."

      ... and it exists for a reason: to remove the reliance on shitty, fragile, shell scripts that were all-too-easily made insecure through ignorance or haste.

      You seem to understand the idea of security, but somehow you think a poorly written and poorly debugged binary is safer than "shitty, fragile shell scripts". As a full-time Linux admin, I would MUCH MUCH rather deal with "shitty" shell scripts, rather than try to fix shitty spaghetti .c crap that's born of bad philosophical thinking. Yes, Iv'e done C and Assembler, and that's exactly why I have this opinion. When I'm adminning a server, I don't want to have to re-write .c files, recompile, debug, etc., and then some day in the future, have to merge my patches in to the next version .c source.

      As a 20+ year Linux admin, one of the features I most like about Linux is that _I_ am in control of what the OS does, what services start, stop, nice levels, etc. One of the things I most HATE in technology today is overly automated everything. The "shitty fragile" shell scripts have NEVER surprised me with anything. One thing I least need in life is gremlin processes thinking they are smarter than me, and I get an alert in the middle of the night and lots of unhappy customers.

      I'd love to know your professional background, as you seem much more of an MS admin than Linux.

    49. Re:Time for tar and feathers? by aardvarkjoe · · Score: 4, Insightful

      What happens when someone creates a user whose username is purely numeric and that number is different from the uid? What happens when a hacker creates a user with a username of "1" (eg. the uid of root)? Should systemd treat that as root (assuming "1" is a uid) or as the user with username "1" (uid is above 100)?

      It would be sensible to disallow creation of all-numeric user names, because of the reasons you stated (far too likely that somebody is doing something nasty.) But disallowing them really doesn't fall under systemd's purview, since systemd is not the manager of the username database. And even if we decided that all-numeric usernames should be disallowed, systemd's totally braindead behavior of granting root access if you try to use one would still be wrong.

      In today's environment, we can't afford security to be an afterthought, especially in an extremely pervasive and complex piece of software like systemd.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    50. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      You can have it all at hack.me/systemd

    51. Re:Time for tar and feathers? by nnet · · Score: 1

      systemd-tar will, bet on it. also coming, systemd-emacs.
      /sarcasm

    52. Re: Time for tar and feathers? by aix+tom · · Score: 1

      Maybe the reason is to have a consistent vector into Linuxes.

      And it sure does a good job at creating a consistent attack vector.

    53. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      Well that rpm/deb/whatever could run scripts as root when you install it with dpkg/apt anyway. No one is going to attack you this way and the main reason to run the service as user XX is to try and limit the damage in case the specific service gets exploited.

    54. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      No! This is where you are confused.

      No, this is where *you* are confused. You're missing the bigger problem in your rush to defend L.P. The validator should allow one of exactly two patterns: ^\d+$ or ^[a-z_][a-z0-9_-]*[$]?$ (the first for a UID and the second for a username). Anything else should be declared as illegal and hence result in an error message and a refusal to execute whatever the unit file specifies.

      Systemd should not be as forgiving as a children's toy. It should fail noisily so that a responsbile adult can see the problem and fix it.

    55. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      It makes unit files more portable since the restrictions on usernames are stricter in systemd that on some other distribution which means that your unit file will work on those distributions where the username restrictions are stricter than the one you created the unit file on. I.e let's say that your distribution allows any byte sequence as a username and you create a unit file with "0x00 0x02" as the username, then some one else tries to use your unit file on a distribution that does not allow this and the unit file refuses to work, so if systemd denies your username even on the less restrictive distribution then it makes sure that your unit file works in that other distribution.

    56. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      Is that why tools such as "adduser" have a "--system" flag to "Create a system account."?

    57. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      The unit files are portable because the exact same thing will happen regardless of if your specific system would allow that username or not. If "0day" would work on one system but not on another (which currently is the case) then the unit file would not be portable since it would work on one of those systems but not the other.

    58. Re:Time for tar and feathers? by drinkypoo · · Score: 1

      Is that why tools such as "adduser" have a "--system" flag to "Create a system account."?

      Quick quiz, what is the difference between a "system" account and a "user" account? How are they handled differently?

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    59. Re:Time for tar and feathers? by Anonymous Coward · · Score: 1

      Welcome to the insane "logic" of systemd, and of course the fanbois chime in to defend it. Sweet jeebus "people shouldn't do that!" is a terrible attitude for system security.

      "Herpy derpy doo, I'll just drive my semi through your kernel, don't mind meeeee!"

    60. Re:Time for tar and feathers? by knope · · Score: 1

      lol ... aside from the yes, indeed clickbait... this fails to define exactly what was affected, the LTS branches weren't using this piece of systemd yet

    61. Re:Time for tar and feathers? by Anonymous Coward · · Score: 1

      POSIX covers this here: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/V1_chap03.html#tag_03_437

      With the exception of the hyphen character, all characters from here are permitted as the leading character in a username: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap03.html#tag_03_276

      Linux Standard Base has nothing to say about his: http://refspecs.linux-foundation.org/LSB_3.1.0/LSB-Core-generic/LSB-Core-generic/tocusersgroups.html

      Nor does the useradd page: https://refspecs.linuxfoundation.org/LSB_3.0.0/LSB-PDA/LSB-PDA/useradd.html

    62. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      There does not exist man pages on your computer?

      System users will be created with no aging information in /etc/shadow, and their numeric identifiers are choosen in the SYS_UID_MIN-SYS_UID_MAX range, defined in /etc/login.defs, instead of UID_MIN-UID_MAX (and their GID counterparts for the creation of groups).

      They don't get a /home/ directory either per default.

    63. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      > The rules for Linux user names
      Where are those rules, other than in Poeterings imagination?

    64. Re:Time for tar and feathers? by aardvarkjoe · · Score: 1

      That is a very tortured definition of "portable" in this context. You're essentially saying that you want unit files to be "portable" in that they can be used unchanged on every system using systemd, but you are achieving that by making systemd itself non-portable to any system that doesn't enforce the particular peculiar user name restrictions that systemd expects. So far, nobody has come up with a single system that actually disallows usernames starting with a number.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    65. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Linux doesn't care about the format of the username. It just uses the uid internally.

    66. Re:Time for tar and feathers? by aix+tom · · Score: 1

      Yeah, the unit file "works" in the sense that the service is now running as root.

      Which makes me wonder if Poettering is paid by the NSA or something......

    67. Re:Time for tar and feathers? by drinkypoo · · Score: 2

      I'm asking you to find out if you know, not to find out the answer, which I already know without having to look anything up. They don't have passwords or expiry, and they're in a low UID range. That's it. It's a convention, and if you completely ignore the convention then everything still works anyway. If you create a system-like user with a higher UID, or if you give a system user a password, the system does not give a fig; It does not malfunction, nor does it attempt to prevent it even slightly.

      Neither UNIX nor Unix nor Linux even notices if you violate the conventions around "system" users.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    68. Re:Time for tar and feathers? by Etcetera · · Score: 1

      "Making unit files more portable" is a euphemism for "enforcing our standard on other systems and distributions".

      If "0day" is a valid user on a system, there's absolutely ZERO reason why "User=0day" shouldn't be valid config on a system management tool (let alone an init replacement) that runs on that system. I don't care what other distributions do.

      LP, once again, shows us that he thinks "Doesn't work on anything except my laptop with my particular setup" is a feature, not a bug, for middleware he's snuck into every distro out there.

      Tarring and feathering is quite appropriate.

    69. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      I'd call it "rhetoric with tacit implication", rather than 'bullying'. The kind of indirect passive-aggressive speech that gets used when the speaker is too chickenshit to just say "I think you are stupid and/or wrong".

      Obviously coming from a scrawny, ginger fuckstick like Poettering this kind of snippy weakling tone is par for the course.

    70. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Linux does not know about usernames.
      There is no "Linux standard" other than POSIX, and whatever useradd, vim, etc allow you to do.

    71. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      BoboHD sucks cock.

    72. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      If you can't use malloc, you're the idiot.

    73. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      You are being disingenuous ami and you know it. Plenty of people have replied on this thread and gave valid reasons. You ignored them. What did you do? You replied with some made up shit about Linux rules being enforced. Which several people replied to you saying that those rules YOU made up, do not exist. Instead of admitting you were wrong, you double down on stupidity.

    74. Re:Time for tar and feathers? by HiThere · · Score: 2

      Could you give a reference to the rule you are referring to? I don't know where to look it up and determine that:
      "The rules for Linux user names say they must not start with a digit"

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    75. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      And your sysv scripts runs as what now? And if someone could change your unit file to contain a "User=0xxx" then they already own you since it requires root to edit the file and to launch it.

    76. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      That's the price you have to pay when the goal is to have distro agnostic unit files. And apparently there are Linux distros which forbids usernames with prefixing numbers, it does work on my Ubuntu so I guess that it's blocked on Rhat or something.

    77. Re:Time for tar and feathers? by HiThere · · Score: 1

      When I've moved files between systems, what ported was the userid#, not the user name. Has that changed recently?

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    78. Re:Time for tar and feathers? by TemporalBeing · · Score: 1

      from the "adduser" manpage:
      Add a system user
      If called with one non-option argument and the --system option, adduser will add a system user. If a user with the same name already exists in the system uid range (or, if the uid is specified, if a user with that uid already exists), adduser will exit with a warning. This warning can be suppressed by adding "--quiet".

      adduser will choose the first available UID from the range specified for system users in the configuration file (FIRST_SYSTEM_UID and LAST_SYSTEM_UID). If you want to have a specific UID, you can specify it using the --uid option.

      By default, system users are placed in the nogroup group. To place the new system user in an already existing group, use the --gid or --ingroup options. To place the new system user in a new group with the same ID, use the --group option.

      A home directory is created by the same rules as for normal users. The new system user will have the shell /bin/false (unless overridden with the --shell option), and have logins disabled. Skeletal configuration files are not copied.


      One big difference is the lack of any shell application (f.e /bin/false instead of /bin/bash), the assignment to "nogroup", and a few other things. By convention system users have UID's 1000 and are allowed root equivalent access.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    79. Re:Time for tar and feathers? by TemporalBeing · · Score: 1

      In today's environment, we can't afford security to be an afterthought, especially in an extremely pervasive and complex piece of software like systemd.

      Please remind me why we are using systemd at all? This has been a consistent issue with systemd, and Lennart and team. One reason I'm quite happy to see Devuan release 1.0; really good work and without systemd at all (or rather, it's your choice if you want to use it, but it's not enabled by default).

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    80. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      They are not only in a low UID range, they are specifically lower than SYS_UID_MAX which in a well setup system means that you can separate them from the other users, i.e if you make sure that UID_MIN is > SYS_UID_MAX. But what matters more in this particular context is what they are intended to be used for; to be used as users for system daemons. The quote from Lennart that makes you so upset is that he thinks that the naming rules for such users should adhere to a higher/stricter standard which for one would rule out "0day" as a valid name.

      Neither UNIX nor Unix nor Linux even notices if you violate the conventions around "system" users.

      Which of course no one claimed, nice strawman.

    81. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      Where are not talking about moving files, we are talking about executing unit files on different systems. Like i.e trying to execute the sysv script from RHat on a FreeBSD system.

    82. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Referencing a man page...I don't think you are sophisticated enough for this straightforward discussion about userspace.

    83. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      He asked, and he asked in a way that suggested that he didn't believe that system users existed so I quoted a man page as a form of QFT.

    84. Re:Time for tar and feathers? by serviscope_minor · · Score: 1

      The rules for Linux user names say they must not start with a digit, and for good reason

      Which rules?

      --
      SJW n. One who posts facts.
    85. Re:Time for tar and feathers? by serviscope_minor · · Score: 1

      Maybe "feathers" is an option for cpio instead? I can never remember how to use that one.

      --
      SJW n. One who posts facts.
    86. Re: Time for tar and feathers? by KGIII · · Score: 1

      Some quick searching indicates this is the standard, for a few reasons. I am on a tablet, but Google that statement. There are a bunch of hits to wade through.

      --
      "So long and thanks for all the fish."
    87. Re: Time for tar and feathers? by KGIII · · Score: 1

      Tools like chown can use either a UID or name. If I am reading correctly, this stems from that. It isn't specific to a starting digit, but is meant to prevent usernames being made up entirely of digits. It looks like this does go back to POSIX.

      Hmm...

      --
      "So long and thanks for all the fish."
    88. Re:Time for tar and feathers? by viperidaenz · · Score: 1

      "rm /rf / random_dir" won't do much
      It'll remove a file called /rf
      It'll remove a file called random_dir
      It will refuse to remove the directory /

    89. Re:Time for tar and feathers? by viperidaenz · · Score: 2

      Perhaps this:

      ~# adduser 0day
      adduser: Please enter a username matching the regular expression configured
      via the NAME_REGEX configuration variable. Use the `--force-badname'
      option to relax this check or reconfigure NAME_REGEX.

      Wait a minute...

      ~# adduser --force-badname 0day
      Allowing use of questionable username.
      Adding user `0day' ...
      Adding new group `0day' (1001) ...
      Adding new user `0day' (1001) with group `0day' ...
      Creating home directory `/home/0day' ...
      Copying files from `/etc/skel' ...
      Enter new UNIX password:

    90. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Preventing numeric user names isn't sensible. Any string should be valid except for one delimiter character or character sequence. That's one character, not a whole class of characters and that special character doesn't even need to be a printable character. In fact, we can do away with that by always specifying the length of a user name before storing it so we don't even need any delimiter characters. Thus user names should be able to be anything.

      You should always know if you're dealing with the string of a user name or the user's uid. If you can't determine that then it's a bug in the code. Checking user supplied data to determine what you're looking at is completely wrong as stated in almost every software engineering class and book ever written. It's amazing how people never learn YOU NEVER TRUST USER INPUT and ANYTHING WHICH IS COMING INTO YOUR MODULE IS CONSIDER USER INPUT EVEN IF IT CAME FROM ANOTHER PROGRAM OR FIXED FORMAT FILE.

      The fact that an invalid user name can have an effect on the system other than printing an error message is astounding. There are way to many shitty programmers in the world and the languages they're using need to be banned.

    91. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      Nope, red hat permits it as well. It appears that the misconception came from the default behavior of the useradd tool, but that is hardly the definitive source of what is and is not permissible.

      If the goal was really for all unit files to be distribution agnostic, then you'd have to disallow things like "exec" which obviously can't be guaranteed to have identical behavior. Of course, that would be a ridiculous limitation. A much more sensible approach would be to publish guidelines for portable unit files, but not have systemd exhibit broken behavior if someone doesn't follow them exactly.

      In any case, LP's refusal to make any change should be considered completely unacceptable. It would be one thing if systemd threw an error in this case; at least then the user knows that they'll have to work around this bug. But allowing a security hole to persist after it's been reported? That's almost malicious.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    92. Re: Time for tar and feathers? by squiggleslash · · Score: 1

      I just Googled serviscope's statement and I found a lot of links to articles about the systemd controversy, plus a Stack Overflow where someone asks why, and is told emphatically that he's wrong - but in all cases the links are to, and quotes are from, manpages, not to a standards document blessed by RMS, the LSB people, or anyone else.

      I can believe that this is the standard though I disagree with the rationale, which seems to be "Then someone could create a username that's all digits fooling applications that allow you to specify either a UID or username" (I've never come across an application that does, but assuming some do, so what? They shouldn't) but it'd be nice to see an actual formal document, followed by all mainstream GNU/Linux distributions as a matter of policy, that mandates this.

      --
      You are not alone. This is not normal. None of this is normal.
    93. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      Yet that backfired on you slugger. Cheer up when you get out of junior college it will make more sense.

    94. Re:Time for tar and feathers? by aardvarkjoe · · Score: 2

      I've been a Debian user for a really long time and have put up with systemd since it's easier than trying to avoid it. But this has pretty much convinced me that I need to switch. I can't afford to allow these jokers to compromise the security of my system.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    95. Re:Time for tar and feathers? by drinkypoo · · Score: 1

      I suppose technically it depends on adduser.conf and the regex defined in there, which only one tool apparently bothers to check. GNU isn't POSIX either, in any case.

      Too bad you didn't check the manpage for adduser.conf:

      /etc/adduser.conf - configuration file for adduser(8) and addgroup(8).

      It's not that "only one tool [...] bothers to check" that file. It's that this file is specifically for adduser. You're mischaracterizing the purpose of the file in order to serve a disingenuous interpretation of the situation.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    96. Re: Time for tar and feathers? by KGIII · · Score: 1

      It looks like convention, more than a default rule.

      Stuff like chown will run with the UID or username. So, if you had username of 1001, with a real UID of 1000, and a second user as 1001, then stuff like that would get confused. That's one such example.

      I'm not sure that it's so much a standard, it's just that that's what people have been doing. Some further reading said it goes way back to early POSIX?

      I am, by no means, asserting any skill or authority on the subject. That's just what I read. It does seem strange that it's not actually a formal statement OR that usernames aren't just automatically processed - so that (in the above example) 1001 would be processed via UID and appear as 1000 to the system. That later seems like it shouldn't be too hard to do - check against some API, or something, and interpreted usernames would be the solution? Maybe?

      Again, I am absolutely not an authority.

      --
      "So long and thanks for all the fish."
    97. Re: Time for tar and feathers? by aberglas · · Score: 1

      If you use C or C++ you are an idiot. Archaic shit obsolete before it was introduced long ago. And responsible for a huge number of bugs, both security and stability.

    98. Re:Time for tar and feathers? by dbIII · · Score: 1

      I guess the question is if the input should be validated by systemd or the tool creating the user

      Considering that the tool can be a text editor it's nothing but ignorance (on the part of the developer not yourself) or an excuse for laziness to expect the tool to do the work of checking for a valid input.

    99. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      That's not surprising considering the Linux kernel is written in C, not C++!

    100. Re:Time for tar and feathers? by Bert64 · · Score: 1

      But the service may get exploited, and it's good practice to run as an unprivileged user incase it does...
      The user may believe that the service runs as an unprivileged user when in fact it does not. If an error like this is encountered the service should refuse to start and display/log a clear error message rather than running as root, so the user can go and correct the situation.

      --
      http://spamdecoy.net - free throwaway anonymous email - avoid spam!
    101. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      This seems to me to be similar to airbags ... May seem silly at first, but disallowing user name that start with a digit may just be a wise idea... Using the example 0day, why would you want to use that? What's so difficult about changing the username? Is you're software.shittily written?

    102. Re: Time for tar and feathers? by Demena · · Score: 1

      Errr.... since the first #! line indicates what shell is to be used to run the script there should be no problem as a default FreeBSD install comes with the requisite shells.

    103. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      This is, frankly, horrifying. systemd is a key part of the GNU/Linux infrastructure, and it exists for a reason: to remove the reliance on shitty, fragile, shell scripts that were all-too-easily made insecure through ignorance or haste.

      I'd like to dispute "key part of the GNU/Linux" infrastructure, as there are many distributions that do not use systemd, but do fly the GNU/Linux banner. Rather, say that systemd is a key part of several GNU/Linux distributions that are widely used.

      Small but significant point.

      Also, "shitty, fragile, shell scripts" are primarily the result of those selfsame distributions that are now pushing systemd, without having learned their lessons, because they're pushing an insecure and badly-engineered system in ignorance and haste.

      Starting up with simple shell scripts was one of the key features of UNIX, as it let the system administrator adjust the behavior of the system as needed. I will grant that there is a presumption that the applications being started aren't shitty and fragile, and if they were, UNIX is okay in making that visible all the way back to the users.

      I must have missed the vulnerability where a UNIX startup shell script was insecure. Given that a minimally competent system administrator (1) doesn't work as root as a matter of course, (2) ensures that all startup scripts are owned by root, (3) ensures that all startup scripts are writable only by root, and (4) ensures that the directories containing the startup scripts are writable only by root, I would find the exploit quite interesting.

    104. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      "In systemd we generally follow the rule that when we encounter a unit setting that does not validate syntax-wise we'll log about it and ignore it, for compat reasons."

      Read: for compatibility with our own past mistakes, we simply say "what the heck, let's run this anyway". The file might be truncated here, broken, filled with garbage, who cares? If we have enough info run "something" "somehow", I say let's do it! No user? Just assume root, shall we? After all, systemd is about running things, right?

      The correct way to handle something that "does not validate syntax-wise" is to fail with a "?SYNTAX ERROR". Even Microsoft got that one right as far back as in their Altair BASIC Interpreter.

    105. Re: Time for tar and feathers? by Joce640k · · Score: 1

      ...and it's still causing bugs like this one.

      --
      No sig today...
    106. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      I'd be okay with keeping systemd but revoking poettering's commit access.

      If people can fix it without him, then I say "sure, let's keep it." If not, then it's time go get rid of both.

    107. Re:Time for tar and feathers? by putaro · · Score: 1

      If his response was "That's an invalid user name, we'll just reject it and fail the command" that would be OK. Ignoring it and running as root silently isn't.

    108. Re: Time for tar and feathers? by paulatz · · Score: 1

      Systemd is not kernel code

      --
      this post contain no useful information, no need to mod it down
    109. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      Ah, a programming language religious nutjob. I know its a very common failing on the autism spectrum, but you should read up on the perfect solution fallacy. Also, I believe there's a lot of computing history you've missed out on. For those that need to program closer to the metal, C remains the prime choice in terms of abstraction/complexity tradeoff and remains so to this day. There are "safer" languages, there are more abstract languages, so if you'd prefer to be constructive, why not try writing a kernel in a "safe" language and let us know how you get on?

    110. Re: Time for tar and feathers? by MoHaG · · Score: 1

      I'm assuming they should be using something using a compiler/interpreter written in C / C++ instead?

    111. Re:Time for tar and feathers? by slashways · · Score: 1

      Someone killing a bulletproof 'security model'; and replacing it by a lot of absurd random layer of software code is at least an 'useful idiot' in this post Snowden era.

    112. Re:Time for tar and feathers? by strikethree · · Score: 1

      The fact that Poettering can't see that after 10 seconds of thinking about it tells me that I wouldn't want his code anywhere near my system.

      Welcome to the "Frothing at the mouth Poettering haters club". Your opinion will now be ignored because you can now be classified as a hater.

      It does not matter what the reality of the situation is because this is NOT about logic or reasonableness. It is about one group forcing their power and control on another group. Logic and reasonableness have no place in a political fight for control. THAT is why there is no use discussing any of this. Poettering and Redhat have made their stance clear: They will dominate and control Linux and fuck you if you do anything that could jeopardize that control.

      I am just shocked that nobody else seems to see this and call it out. But then, I have never been politically savvy so I end up calling out shit like this at all the wrong times. Meh. Linux will be a political beast no less than Microsoft and I can't help wondering why more people are not fighting against it. I want code that does what *I* want it to do, not what someone else wants it to do.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    113. Re:Time for tar and feathers? by strikethree · · Score: 1

      As you have been informed repeatedly in this thread ...

      As I said in my earlier response to you: Logic and reason do NOT apply here. The words you are arguing against have no meaning of their own, they are just words that convey the message of, "Poettering is right and everyone is wrong."

      You are wasting your time arguing about any of this. (We are on the same side of all of this if it is not obvious yet)

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    114. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      The goal really is to be distribution agnostic, that is why the master list of unit files are managed in a central location from which the various distributions fetches the majority of their unit files (and contribute changes). Things like exec of course does exist but if you use a distro specific script there then your unit file will not be accepted upstream, but writing your own personal unit files are of course ok.

      This is hardly a security hole. All sysv scripts have run as root for ages without people crying wolf, and for this to impact your security you have to first come up with a way where I can attack you with this bug with no other possibility for me to run things as root on your system first.

      All that said, I believe that this behaviour is going to change, LP is not the sole dictator of systemd and note that the bug on GitHub was not closed but closed for public discussion so to me this looks like they discuss it internally.

    115. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      Oh a funny AC who sees no merit in man pages. Junior College? Now I'm not American, but that would have been over 20 years too late if I where.

    116. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      Of course, but then we also have to dream the pipe dream that running a exploited daemon with a non privileged user will still protect the system. So far this have not worked out so well unfortunately. And there is a warning logged when this particular bug is encountered, that is how it was found in the first place.

      And no I don't think that this behaviour of systemd is good or OK but I also don't see the sky falling.

    117. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      I see that you have not written sysv init scripts before.

      The sysv init scripts from Linux does not work on FreeBSD i.e because they don't use sysv init to begin with. And there are big differences between Debian and Red Hat systems and then you have all the other distros with their little changes here and there. For the most part the init scripts are written by the distro maintainers and not by upstream due to these differences. And this is one of the things that made systemd be so quickly adopted by the distributions because they no longer had to maintain their old specific scripts.

    118. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      The goal really is to be distribution agnostic, that is why the master list of unit files are managed in a central location from which the various distributions fetches the majority of their unit files (and contribute changes). Things like exec of course does exist but if you use a distro specific script there then your unit file will not be accepted upstream, but writing your own personal unit files are of course ok.

      Fixing this problem doesn't stop systemd from being distribution agnostic in any way. If he wants a policy of "no usernames starting with numerals in standardized unit files", that's fine. But refusing to fix a systemd problem for a completely valid configuration just because of his tremendous ego? Not acceptable.

      This is hardly a security hole. All sysv scripts have run as root for ages without people crying wolf...

      These aren't equivalent. In this case, the user is telling systemd to run something as another user, and systemd is ignoring that directive, without any notification to the user. So you end up with something that is intended to run as another user with root permissions.

      With sysv init, the scripts are intended to run as root. If you want to run something from a sysv init script as a different user, that's easy to do with various tools. And guess what -- if those tools can't run the command as the specified user, they don't run the command. That's how you handle this situation correctly in a secure way. You don't say, "screw it, if I don't like the username I'll just run it as root instead!"

      ...and for this to impact your security you have to first come up with a way where I can attack you with this bug with no other possibility for me to run things as root on your system first.

      Typical systemd apologism. LP claims that it's not a problem because any tool that can create one of these userids is broken. (He's wrong.) You claim that it's not a problem because you can't see a way to trivially exploit it. (You're wrong.) In both cases, you dismiss any criticism of systemd because you don't understand the underlying issues. We've see this happen over and over.

      In the real world, most security exploits need multiple steps to exploit. Running software with elevated permissions is a classic security vulnerability. This is the kind of bug that turns a small problem into a gaping security hole.

      All that said, I believe that this behaviour is going to change, LP is not the sole dictator of systemd and note that the bug on GitHub was not closed but closed for public discussion so to me this looks like they discuss it internally.

      According to https://github.com/systemd/systemd/issues/6237, it's been closed with not-a-bug. I hope it gets fixed someday, but I'm not holding my breath.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    119. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      without any notification to the user.

      Do I really have to tell you once again that systemd logs a warning when this happens?

      With sysv init, the scripts are intended to run as root. If you want to run something from a sysv init script as a different user, that's easy to do with various tools. And guess what -- if those tools can't run the command as the specified user, they don't run the command. That's how you handle this situation correctly in a secure way. You don't say, "screw it, if I don't like the username I'll just run it as root instead!"

      Only if you specifically check the exit code of su in your script, so you must manually check all sysv scripts that claim to run under a different user just as you have to check all the unit files that claim to run under a different user and checking all the unit files is way easier "grep User= /lib/systemd/system/.*service" and see if any of them starts with a number. Far easier than to go over all the sysv scripts in order to find missing checks.

      You claim that it's not a problem because you can't see a way to trivially exploit it. (You're wrong.)

      So prove me wrong then. Please come up with a scenario where you can exploit this.

      it's been closed with not-a-bug.

      The bug reads: "This conversation has been locked and limited to collaborators.". Perhaps that is how all bugs that are closed looks like (I don't use github) but if not then too me this sounds exactly what I wrote earlier.

    120. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      Do I really have to tell you once again that systemd logs a warning when this happens?

      Unless you happen to be monitoring the specific logfile where that is logged, you will never know. I have no idea where the hell systemd would log such a thing. And why would I be looking for it? I made a completely reasonable setting in the unit file, and the associated program started. I would have no reason to dig through logfiles to make sure that systemd actually did what it was told to do.

      Only if you specifically check the exit code of su in your script, so you must manually check all sysv scripts that claim to run under a different user....

      You are speaking from ignorance. You can't actually use 'su' the way you're suggesting. This doesn't work:

      #!/bin/sh
      su user
      whoami

      Instead, you have to use something like the following:

      #!/bin/sh
      su user -c "whoami"

      That will print "user", as expected. And if you give it a bad username, then instead you'll get:

      [root@oc0114316170 ~]# sh test.sh
      su: user user does not exist

      Under no circumstances will this construct end up running the 'whoami' command as root.

      So prove me wrong then. Please come up with a scenario where you can exploit this.

      This is security 101, dude. Take a service with one of any number of potential security problems -- a buffer overflow, for instance. Normally it is run under a non-root user account, but because of the systemd bug it is run as root instead. Abracadabra, systemd has turned a limited exposure into a local root exploit.

      And please don't turn around and claim that that doesn't count because it requires a problem in another piece of software. Secure engineering means that you design your software to limit exposure from other sources.

      The bug reads: "This conversation has been locked and limited to collaborators.". Perhaps that is how all bugs that are closed looks like (I don't use github) but if not then too me this sounds exactly what I wrote earlier.

      The state of the bug is shown near the top. LP closed the bug, saying it's not-a-bug, and then locked the discussion, because he can't stand to have people point out that he's full of crap.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    121. Re:Time for tar and feathers? by jeremyp · · Score: 1

      If I create a unit file with jeremyp as the user name, it probably isn't going to be portable. You understand that, even if you restrict user names to start with a letter, you can't guarantee they exist on an arbitrary different system?

      This whole conversation is bullshit. The so called standard seems to be based on oner tool that restricts user names, but nobody seems to have noticed that the rule is defined by a regular expression in a configuration file, which means you are allowed to change it.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    122. Re:Time for tar and feathers? by jeremyp · · Score: 1

      Firstly, some other bit of software also having a security hole is no excuse for leaving this one in system-d.

      Secondly, this bug will manifest itself not only if somebody maliciously changes the user name, but also if you accidentally mistype it such that it breaks Poettering's mysterious syntax rules (or have a perfectly legal user that breaks Poettering's rules). Then you have a service running as root that might have a vulnerability that can be exploited from outside if it, for example, opens a listen socket

      There's no excuse for this.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    123. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      Unless you happen to be monitoring the specific logfile where that is logged, you will never know. I have no idea where the hell systemd would log such a thing. And why would I be looking for it? I made a completely reasonable setting in the unit file, and the associated program started. I would have no reason to dig through logfiles to make sure that systemd actually did what it was told to do.

      With systemd you don't have to hunt down logfiles, you either issue a "systemctl status servicename" which gives you the last few log rows from the service or you issue "journalctl -u servicename" to get the full log of the service you just started.

      You are speaking from ignorance. You can't actually use 'su' the way you're suggesting. This doesn't work:

      #!/bin/sh su user whoami

      Problem with this is that you just guessed now and didn't test it because it does work, su changes to the new user and the rest of the script runs as that very user. Yes I did just test it on my machine and "whoami" gave the name of the other user I put after su.

      This is security 101, dude. Take a service with one of any number of potential security problems -- a buffer overflow, for instance. Normally it is run under a non-root user account, but because of the systemd bug it is run as root instead. Abracadabra, systemd has turned a limited exposure into a local root exploit.

      And please don't turn around and claim that that doesn't count because it requires a problem in another piece of software. Secure engineering means that you design your software to limit exposure from other sources.

      But for this to work some one must have been also able to #1 put such an invalid username in the User= setting in this unit file and #2 the very some one must also have somehow convinced you that this particular unit runs under a different user account and #3 you never checked that it did.

      #1 rules out any unit file supplied by a distribution so where did you get the unit file from. And if you never did #3 then that person could just as easily not have used the User= setting in the first place.

      The end of it is that you simply cannot trust a random sysv script or systemd unit file regardless of if this bug is fixed or not. You must always check that it does what it claims it does. Do you now understand why I see this as a problem but not of a the sky is falling kind if problem?

    124. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      You don't write init scripts and rpm/deb packages do you? Features like this, when we are talking about distro agnostic unit files, the rpm/deb/whatever creates a user with adduser in the postinst script with the same name that you then use in the User= stanza in the unit file. If this where for a sysv script you usually put the username in the daemon config instead (if the daemon supports changing user and/or group), which at the moment is also how 99% of the daemons on systemd distributions also handle this since the User= stanza have not been used yet.

    125. Re:Time for tar and feathers? by F.Ultra · · Score: 1

      I never said that it wasn't a problem. But if you create your own unit files and never once looks at the logs or checks that it runs as the user you thought it should then this accidental typo could as easily be that you prefixed User= with #User= and thus turned it into a comment. Yes silly argument I know but so are your "LP must protect my from ever making a mistake".

    126. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      With systemd you don't have to hunt down logfiles, you either issue a "systemctl status servicename" which gives you the last few log rows from the service or you issue "journalctl -u servicename" to get the full log of the service you just started.

      How do I know I'm supposed to do that? I gave systemd a clear, correct directive, and it started the service. Why am I double checking that it did what I told it to do? (Well, unless I happen to know that systemd is total crap and so needs constant monitoring.)

      Problem with this is that you just guessed now and didn't test it because it does work, su changes to the new user and the rest of the script runs as that very user. Yes I did just test it on my machine and "whoami" gave the name of the other user I put after su.

      As a matter of fact, I did. What is your /bin/sh, and what was the exact script you ran? I have one redhat (/bin/sh is bash) and one debian (/bin/sh is dash) system, and neither one exhibits the behavior that you describe. The script, as I posted, will invoke a new login shell as the user, and then after you exit that shell, will run the whoami command. Given that this should be the expected behavior with any shell and any version of su, I have a hard time believing what you're saying.

      More to the point, I defy you to find any existing sysv init script that tries to use that idiom. It's not an issue, and the fact that you think it is tells me that you don't really know what you're talking about.

      Do you now understand why I see this as a problem but not of a the sky is falling kind if problem?

      I don't think that the fact that systemd had this particular bug is a huge deal. It's symptomatic of the lack of foresight that we see in systemd a lot -- in this case, not fully thinking through the implications of simply ignoring a parsing error in a unit file -- but if the bug had been reported, accepted, and fixed, most people wouldn't have cared.

      The fact that LP and friends refuse to fix it is the big deal.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    127. Re:Time for tar and feathers? by Anonymous Coward · · Score: 0

      If "0day" would work on one system but not on another (which currently is the case) then the unit file would not be portable

      Except they work.

    128. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      How do I know I'm supposed to do that? I gave systemd a clear, correct directive, and it started the service. Why am I double checking that it did what I told it to do? (Well, unless I happen to know that systemd is total crap and so needs constant monitoring.)

      Because you are developing a new daemon and testing out your unit/service file/script. Why else would you play around with the User= setting?

      As a matter of fact, I did. What is your /bin/sh, and what was the exact script you ran? I have one redhat (/bin/sh is bash) and one debian (/bin/sh is dash) system, and neither one exhibits the behavior that you describe. The script, as I posted, will invoke a new login shell as the user, and then after you exit that shell, will run the whoami command. Given that this should be the expected behavior with any shell and any version of su, I have a hard time believing what you're saying.

      Sorry got confused, my bad. The new shell output the username of the new user which the whoami command also does which is why I was fooled (tested too quickly)

      More to the point, I defy you to find any existing sysv init script that tries to use that idiom. It's not an issue, and the fact that you think it is tells me that you don't really know what you're talking about.

      Well I thought that no sysv script did that was afraid that if I claimed that this where the case then I would get 2 billion angry comments about that (I'm already getting tons of hate posts due to me not writing shit about systemd on this very article). So yes systemd can (if you use a username that starts with a zero) run your daemon as root just like sysv does in 100% of the time and still people claim that this bug of systemd makes it less secure than old sysv (I'm not saying that you claim this) while the User= feature of systemd actually makes for a more secure environment than sysv could ever achieve.

      Yes that LP closes bugs like this a bit too quick is a problem, I would however be concerned if he did so for something really serious and I have not seen him do that just yet so I'm not ready to throw him under the bus right now. Systemd is such a big improvement over sysv, upstart, smf, launchd and so on that he have done quite a lot of things right at least.

    129. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      Because you are developing a new daemon and testing out your unit/service file/script. Why else would you play around with the User= setting?

      Why am I not surprised that you can't imagine a reason to change a configurable option?

      So yes systemd can (if you use a username that starts with a zero) run your daemon as root just like sysv does in 100% of the time and still people claim that this bug of systemd makes it less secure than old sysv (I'm not saying that you claim this) while the User= feature of systemd actually makes for a more secure environment than sysv could ever achieve.

      You're still talking utter nonsense.

      In a sysv init script, if you want to run your daemon as a particular user, you add a line like the following:

      su 0day -c /usr/bin/daemon

      It's simple and it works. If you do give it an invalid username, it will fail to start the daemon, as one would expect, instead of running the daemon with elevated privileges.

      Perhaps the reason you're getting all this "hate" is because you keep making obviously false statements? In this case that "the User= feature of systemd actually makes for a more secure environment than sysv could ever achieve."

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    130. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      Why am I not surprised that you can't imagine a reason to change a configurable option?

      That is not what I wrote! If you change it then you have an equal responisibility as that of the maintainer, i.e you have to check that your change did what you expected it to do. Or are I'm to believe that you blindly make changes to systems without checking the result?

      You're still talking utter nonsense.

      In a sysv init script, if you want to run your daemon as a particular user, you add a line like the following:

      su 0day -c /usr/bin/daemon

      It's simple and it works. If you do give it an invalid username, it will fail to start the daemon, as one would expect, instead of running the daemon with elevated privileges.

      Perhaps the reason you're getting all this "hate" is because you keep making obviously false statements? In this case that "the User= feature of systemd actually makes for a more secure environment than sysv could ever achieve."

      Okey that one was stretching it a bit I admit but one such statement is far from "keep making". And there is a good reason why no sysv script changes the user but lets the daemon itself do it and that is due to the complexity needed to make su work here. First you need to have a user with a password since su does not work with passwordless users, then you need to use an expect script in order to send this password with your non interactive script, then you have to either give this user a valid shell which breaks a few of the reasons we used this user to begin with so you then have to enter the command to run as the shell which means that the daemon have to be in a path where this user have the right to execute it and it must also have execute rights on the daemon.

      None of this is of course impossible but AFAIK no one have yet bothered to do it this way leading us to a world where all sysv scripts execute as root and the responsibility to be able to drop privileges is left to the daemon itself, and have we checked the source of every such daemon to see if they exit if setuid() and/or getpwnam() fails?

      So yes, the User= feature or systemd will lead to a more secure environment than what we had in the old sysv days not because it's impossible to do so under sysv but because it was too much trouble. And yes this bug in systemd puts some shame on this whole premise but I have a hard time seeing any one successfully exploiting this.

    131. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      t's impossible to do so under sysv

      No, you have been able to do it even under sysv since 2004.

    132. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      runit is not sysv though, it's compatible with sysv scripts but so are most other replacements including upstart and systemd of course.

    133. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      And there is a good reason why no sysv script changes the user but lets the daemon itself do it...

      Totally, utterly false. Switching users in an init script is something that a fair number of scripts do, as you'd know if you bothered to google it.

      First you need to have a user with a password since su does not work with passwordless users, then you need to use an expect script in order to send this password with your non interactive script, then you have to either give this user a valid shell which breaks a few of the reasons we used this user to begin with so you then have to enter the command to run as the shell which means that the daemon have to be in a path where this user have the right to execute it and it must also have execute rights on the daemon.

      You are still talking complete nonsense. Yes, using 'su' only works for users with a password. There are other tools that don't have that limitation, if that's what you need. For instance, look up "setuidgid" from daemontools, which is specifically designed to address running daemons as a different userid -- the use case that you are now claiming that nobody does!

      I don't know what you're trying to talk about with your stuff about expect scripts. As I've already mentioned, a perfectly acceptable way to start a daemon as user 0day is:

      su 0day -c /usr/bin/daemon

      No expect script needed. And as for what you're trying to say about permissions ... of course the user that you're running as has to have permission to run the daemon. That's the whole point! What, do you think that doesn't hold true with systemd's "User=" option?

      None of this is of course impossible but AFAIK no one have yet bothered to do it this way...

      Apparently, "as far as you know" isn't very far at all. You probably should stop talking about topics that you obviously know next to nothing about.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    134. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      Which does not matter, because chpst can be extracted and work as a standalone utility.

    135. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      Yes there are other tools that don't have that limitation and you could write your own tools. But that is besides the point because I'm not talking from the "I hack on my own system" point of view, I'm talking about creating init scripts meant for distribution and that will work on all systems. When you do that you can not hope that the end user have daemontools installed or some other tool that does this for you. This is where systemd (and upstart before it) helps because it offers all this functionality and more as a base.

      You need an expect script if you plan to use su in a init script so that you can supply the password to it, your "su 0day -c /usr/bin/daemon" would just hang the the entire boot sequence waiting for interactive input. The permissions is that your "0day" user must have execute rights on /usr/bin/ which it does not need if you use User= in systemd. Your 0day user also needs to have a shell, somehting that the User= in systemd doesn't need.

      And even with something like daemontools (which I have used extensively back when I wrote sysv scripts for Gentoo) the daemon runs as a different user but not the rest of the sysv script, which btw is one of the ways that the MySQL sysv script was hacked last year.

      Apparently, "as far as you know" isn't very far at all. You probably should stop talking about topics that you obviously know next to nothing about.

      So show me a single sysv script shipped with any distribution that uses SU in order to run a daemon as a different user, a single one.

    136. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      So now the sysv script that I distribute to people borks if they don't have runit installed?

    137. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      Yes there are other tools that don't have that limitation and you could write your own tools. But that is besides the point because I'm not talking from the "I hack on my own system" point of view, I'm talking about creating init scripts meant for distribution and that will work on all systems. When you do that you can not hope that the end user have daemontools installed or some other tool that does this for you. This is where systemd (and upstart before it) helps because it offers all this functionality and more as a base.

      Init scripts are typically maintained per-distribution, and so will rely on tools present in that distribution. The utility of being able to distribute a common file to start a service is a point worth considering, but it is completely irrelevant to your claims that nobody uses this function.

      You need an expect script if you plan to use su in a init script so that you can supply the password to it, your "su 0day -c /usr/bin/daemon" would just hang the the entire boot sequence waiting for interactive input.

      You're looking more and more like either a troll or an idiot. If you don't know how su works, how about you try it instead of spouting more incorrect information? I gave you a script earlier that runs 'whoami' as a different user. It's just two lines long. How hard is it to run it instead of looking like a moron when you make incorrect claims about it?

      "su" does not require a password when run as root. This whole expect script requirement is a fiction that you've invented.

      And even with something like daemontools (which I have used extensively back when I wrote sysv scripts for Gentoo)

      ...uh huh. right. If you used them "extensively" and wrote init scripts, I'm pretty sure you'd be a little better informed about how they work.

      ...the daemon runs as a different user but not the rest of the sysv script,...

      Nobody has objected to the script running as root. We also don't object to systemd running as root. Is this the strawman you're attempting to attack?

      So show me a single sysv script shipped with any distribution that uses SU in order to run a daemon as a different user, a single one.

      Although I don't know any good way to search all released init scripts for a distribution, the script "/etc/init.d/speech-dispatcher" on my debian stretch system runs the /usr/bin/speech-dispatcher daemon as the user "speech-dispatcher". This is done using "start-stop-daemon --user", which is a Debian-provided tool to start daemons.

      (I'm not sure why you would be insistent on using "su" to achieve this.)

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    138. Re: Time for tar and feathers? by Anonymous Coward · · Score: 0

      Why would it bork if the distro maintainer (who provides the init script) has already added a dependency of "runit-chpst" to the package?

    139. Re: Time for tar and feathers? by aardvarkjoe · · Score: 1

      Forgot to respond to this part; hate to let this little bit of misinformation to stay uncommented on.

      The permissions is that your "0day" user must have execute rights on /usr/bin/ which it does not need if you use User= in systemd.

      First off, I have no idea what you think you'd be accomplishing by denying the user id that is supposed to be running the daemon search permission (execute permission on the directories) for the executable that it is supposed to be executing. That's what those permissions are for, after all -- to define which users are or are not permitted to perform certain operations. If you want a particular user to be able to access an executable in a particular directory, you grant that user permission to do so.

      Secondly, since your claim that systemd doesn't require the the user to have search permission sounded fishy, I checked it out.

      exec_spawn() (src/core/execute.c) calls fork() to create the child process, and then calls exec_child(). exec_childs call enforce_user(), which switches the UID by calling setresuid(). It then calls execve() to execute whatever it needs to run.

      execve() will fail with EACCES if search permission is denied on any portion of the path prefix for the executable file. So systemd will have the exact same behavior with regard to permissions as su or any other similar tool. That shouldn't be a surprise, since this is essentially exactly the same process that su uses.

      Your 0day user also needs to have a shell, somehting that the User= in systemd doesn't need.

      We've already established that using 'su' is not a requirement. The only reason we're even talking specifically about 'su' is because you keep bringing it up.

      I've mostly kept responding because I'm curious exactly how much deeper you're going to dig yourself in. So far, it seems like you haven't hit the limit.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    140. Re: Time for tar and feathers? by F.Ultra · · Score: 1

      The state of the bug is shown near the top. LP closed the bug, saying it's not-a-bug, and then locked the discussion, because he can't stand to have people point out that he's full of crap.

      And now systemd will no longer run a unit with an invalid name: https://github.com/systemd/sys... , so as I assumed there where further non-public discussions that eventually led to this bug being solved.

  2. Now it becomes clear... by Anonymous Coward · · Score: 0

    ...why there was a push for the change to systemd.

    1. Re: Now it becomes clear... by Anonymous Coward · · Score: 5, Insightful

      See, this is textbook example of systemd apologists having zero clue about the software they praise.

      Is the INIT part of systemd and PROCESS MANAGEMENT "simply better"? Maybe, probably (with the exception of it ignoring invalid values instead of failing to start, like this 0day issue).

      But how on gods goddamned earth is reinventing a DNS recursor, which btw is not RFC compliant (per the developer's OWN words it might NEVER be compliant because that idiot has no clue what resolvers really are), any BETTER?!?! It is not better. It is far worse. They're reinventing something they do NOT properly understand and in the process introduce NEW bugs and insecurities, and reinvent OLD bugs that proper resolvers have gone through in the past decades.

      Maybe if you would LEARN what systemd really is inside, maybe then you'd see it's a steaming pile of shit that has LONG gone beyond being an init replacement.

    2. Re: Now it becomes clear... by lucm · · Score: 1

      It's just a matter of time before we get kernelctl. Then Linux will be perfect since the whole ecosystem will have been "improved" to work with systemd. No more discrepancies between distributions; just one big binary file.

      When this is done, maybe The Hero could go and save other things, like smartphones and IoT devices.

      --
      lucm, indeed.
    3. Re: Now it becomes clear... by gweihir · · Score: 1

      The systemd fanatics are mostly authoritarian followers, i.e. they care very much about following the "right" (i.e. most powerful) religion, but not at all what it actually says or entails.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    4. Re: Now it becomes clear... by Anonymous Coward · · Score: 0

      They learned from the best. Xtians have been doing that for centuries.

    5. Re: Now it becomes clear... by Anonymous Coward · · Score: 0

      >how are we supposed to backdoor linux without systemd ?
      t.nsa

      you guys are being gaslighted

  3. The problem with systemd by SharpFang · · Score: 5, Insightful

    That's a problem with Systemd. It's a pretty decent idea with a sub-par execution and a crappy way of dealing with an inherent problem.

    Idea: centralized place to optimize startup, management and interconnectivity of all kinds of services.

    Problem: some services in their standard form don't quite fit that model.

    Solution: let's rewrite them and include as parts of systemd.

    The crap part: while the originals were made by experts in that field, the replacements are made by a group of wannabe experts on everything ever, some with overinflated ego. This results in seriously inferior code replacing old 'tried and true' solutions.

    At this point, the only real solution I can see is making a fork of systemd, banning the current systemd creators from participating in it, and trimming it to size. If a service doesn't quite fit systemd, work on systemd until it fits, don't rewrite it!

    --
    45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    1. Re:The problem with systemd by dwywit · · Score: 5, Informative

      "a fork of systemd, banning the current systemd creators from participating in it, and trimming it to size. If a service doesn't quite fit systemd, work on systemd until it fits, don't rewrite it!"

      That's not a bad idea - meanwhile, Poettering's response (presumably): "Systemd is working as expected. This is a flaw in {bind/whatever}. Bug closed."

      --
      They sentenced me to twenty years of boredom
    2. Re:The problem with systemd by Tranzistors · · Score: 2, Informative

      If a service doesn't quite fit systemd, work on systemd until it fits, don't rewrite it!

      Part of the appeal of the systemd is that it minimises the idiosyncrasies of all the different tools. You don't have to rewrite the services, but fitting them to systemd is reasonable. For example, udev was not rewritten, just integrated.

      originals were made by experts in that field

      Whatever made you say that? There are no mandatory security audit, secure coding practices, mandatory code reviews, qualification certificates or anything like that in free software. Some of it is even insecure by design (I'm looking at you, X.org). systemd will get rid of these bugs eventually as time goes on.

      Of course, all theses problems could have been avoided, if it had been written in C++14 or rust from the beginning. (And yes, that was sarcasm. Sorry.)

    3. Re:The problem with systemd by carnivore302 · · Score: 2

      The crappy part is the centralized place to optimize startup.

      --
      Please login to access my lawn
    4. Re:The problem with systemd by Gravis+Zero · · Score: 4, Informative

      At this point, the only real solution I can see is making a fork of systemd, banning the current systemd creators from participating in it, and trimming it to size.

      There are problems with that idea:

      * Red Hat is backing Systemd and this is the only thing Lennart seems to work on. You'll be in the quagmire of always trying to catch up on new shitty features and broken compatibility.
      * Systemd was 250K+ LoC last I checked
      * Systemd's source code is poorly documented at best.
      * Systemd has a overly clever design that makes it difficult to grok.

      I'm not saying that Systemd shouldn't be replaced, I'm saying that you need to discard the original.

      --
      Anons need not reply. Questions end with a question mark.
    5. Re:The problem with systemd by Viol8 · · Score: 5, Insightful

      "Some of it is even insecure by design "

      So because all software has bugs we should just say: "Meh, who cares if systemd is bloated, has monumental feature creep, an author with a serious ego problem who doesn't like fixing them and it replaced an init which, while a bit crusty did what it said on the tin, because, well, systemd." Right?

      Wrong. Systemd, is a poor idea, poorly implemented in a project thats poorly managed. Quite why redhat are in thrall to the arrogant little twerp in charge is anyones guess.

    6. Re:The problem with systemd by jellomizer · · Score: 1

      So the product is open source but not open spec.

      --
      If something is so important that you feel the need to post it on the internet... It probably isn't that important.
    7. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Part of the appeal of the systemd is that it minimises the idiosyncrasies of all the different tools. You don't have to rewrite the services, but fitting them to systemd is reasonable. For example, udev was not rewritten, just integrated.

      Funny you say that because those idiosyncrasies are largely a byproduct of [yet another] group trying to fit *nix tools into their system. GNU is, afterall, not Unix. Instead it's a whole set of idiosyncrasies disparate from every other *nix (and BSD). Windows has its own set from its lineage. So does Mac OS X. Honestly, you can't get rid of idiosyncrasies. You can merely replace one set with another.

      Whatever made you say that? There are no mandatory security audit, secure coding practices, mandatory code reviews, qualification certificates or anything like that in free software. Some of it is even insecure by design (I'm looking at you, X.org). systemd will get rid of these bugs eventually as time goes on.

      Because the latter is precisely how we got experts in making a DNS service that isn't readily exploitable. Why throw away a perfectly good, heavily tested DNS service that's been broken dozens of times and patched and audited several times for your own home grown version? Why didn't they do like udev and integrate bind or djbdns? Idiosyncrasies and NIH. That's precisely the core problem with systemd, not the monolithic nature. Compare to retroarch.

    8. Re:The problem with systemd by Tranzistors · · Score: 1, Troll

      I am not saying that systemd is flawless, but the OP made a point that other software is well designed and well written. Which is not true. I would suggest reading The Unix-Haters handbook.

    9. Re:The problem with systemd by Anonymous Coward · · Score: 3, Insightful

      That's a problem with Systemd. It's a pretty decent idea with a sub-par execution and a crappy way of dealing with an inherent problem.

      If by "decent" you mean "spectacularly stupid, fantastically bad, terrible to depraved depths, will never work properly", then yes.

      The problems with basically anything written by poettering and crew start with them being... let's be polite here, not very good with this "software architecture" thingy. Their approaches to any problem they're setting out to solve, real or imagined, are baroque, juvenile, overly complex, brittle, prone to spectacular breakage, and so is their entire everything else.

      Yes, there are problems with the software they're seeking to replace, but that doesn't mean their solutions are anything of the sort. We're seeing time and again that their improvements are in fact detriments and so even as a simple user you're typically better off without.

      It also doesn't mean the problems cannot be solved some other way. In fact, we have at least a dozen replacements for sysvinit, fully half of which would certainly better than systemd. So there really is no point to use their software at all except because you like sticking to fantastiterribad ideas.

      Among poettering and crew's many failings is that they have no truck at all with "the Unix philosophy". If they are dimly aware of where that came from, at best they'll wilfully do something else, just to "be different". Linux' own dave cutler, with fanclub, if you will.

      This is quite damaging. So why are red hat still backing poettering and crew? In short, politics. They're having their lunch eaten by oracle, yet they're bound by the GPL, so they're trying a different tack. And for them it's working fine, to the point that many other linux distributions are following their lead.

      Which, frankly, is entirely stupid from the other projects' users' PoV. But too many in the community don't grasp the finer points of what's really going on (did you know red hat and oracle are in a corporate war of domination, with oracle doing a good cuckoo impression?) so they'll just bob along with the currents, to their detriment.

      I don't expect poettering and crew to understand that they're red hat's useful idiots in this, mind. They might, but from their works I'm inferring they're just not that bright.

      So the simple solution is really quite simpler than your proposal: Do away with the poettering crap. Just out with it. All of it. No exceptions. Yes, some things will break, most of which well deserve to break. Some in fact don't even need fixing. Then we can fix the important broken bits, preferrably in a sensible, simple way that keeps well to itself, and doesn't try to overpower fifty other unrelated subsystems. A little architecture and some (un)common decency go a long way here.

    10. Re:The problem with systemd by AmiMoJo · · Score: 0

      If systemd is that bad, why is it so popular? The only distros not using it are niche ones, and no-one has bothered to fork it and no-one has built anything so compellingly better that it withers and dies.

      I'm not saying systemd is great, merely that it's not as terrible as some people seem to think. If it was, it would surely be ditched. FWIW I've tried many distros lately, and Fedora is by far the best, and of course uses systemd.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    11. Re:The problem with systemd by SharpFang · · Score: 4, Insightful

      Because "the crap part" is not what is written on the box. Systemd *appears* attractive. The idea is neat. The promise is tempting.

      Including systemd in your distro is like preordering No Man's Sky.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    12. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Except that systemd often makes so-called substitutes that are worse than those they attempt to substitute ;)

    13. Re:The problem with systemd by AmiMoJo · · Score: 1

      while the originals were made by experts in that field, the replacements are made by a group of wannabe experts on everything ever, some with overinflated ego. This results in seriously inferior code replacing old 'tried and true' solutions.

      This is a form of survivor bias. Those older tools have just been around longer, with issues fixed over many decades. And even then, there are still some serious bugs in them. For example, recently it was found that some tools to add users allow the username to start with a number, which isn't allowed by the spec and can result in such a user (e.g. "0day") getting root access. Been there for a long, long time because apparently no-one does even basic tests on such critical bits of software to make sure it complies with he established rules.

      I'm not saying systemd is great, merely that older tools aren't really either and their current level of quality is largely the result of decades of accidental testing and improvement.

      What we really need is people dedicated to testing important OS code. It's a boring job that no-one wants, and anyone who takes it on will probably give up quickly as their bug reports are met with abuse and indifference.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    14. Re:The problem with systemd by Anonymous Coward · · Score: 5, Interesting

      Systemd, is a poor idea, poorly implemented in a project thats poorly managed.

      Yup.

      Quite why redhat are in thrall to the arrogant little twerp in charge is anyones guess.

      I don't know how he got a foot in the door, so all I have is my long-distance high-level. The short and sweet is "politics", and he's red hat's useful idiot in their war with oracle.

      red hat tried to tighten up their business model by splitting red hat-the-distro into fedora and RHEL. The centos guys forced red hat to release RHEL anyway because GPL. oracle then copied the whole thing verbatim, minus the branding, and called it "unbreakable linux". This allowed them to piggyback on red hat's hard work including their knowledge base. Which is why red hat put that thing behind a paywall. So oracle is doing their level best to eat red hat's lunch and using red hat's own work to do it.

      So, what can red hat still do? Well, they can become more proprietary, which is where systemd comes in. No, it's not closed source, but it sure is wilfully, deliberately, and very gratuitously, incompatible with everyone else. So if a big enough party like red hat pushes it into the market, then the rest (*cough* debian *cough*) feels they have to follow suit. That means a big boon in control for red hat. And that's what it ultimately is about.

      Of course, you have to have some sort of story of benefit for people to go along with the gambit. But for many the sort of fine-grained control you lose by going systemd wasn't that important anyway, for the good and simple reason that throwing more virtualisation and more hardware at it seems faster and so more cost effective. It's the same sort of reason why virtualisation and massive hardware is so popular in the windows world. The big gain for red hat sure isn't technical, it's political. You can see this in the fact that many rebuttals to technical complaints about systemd are entirely non-technical. Any time a technical argument ends up full of bullshit and personal attacks it really isn't about the technical merits any more.

      I doubt poettering himself understands his role in this, seeing his grasp of architecture, code quality, and so on, so that makes him a "useful idiot". He sure does have the personality to pull it off, though. Incompetent arrogance does go a long way, with the right backing.

      And, of course, once they get off the ground, bad ideas are hard to kill.

    15. Re: The problem with systemd by Anonymous Coward · · Score: 1

      Like his reply to the fact that systemd so often swallows log messages.

    16. Re: The problem with systemd by Anonymous Coward · · Score: 5, Insightful

      And, security problems + no logs = even bigger problem. Even if he doesn't get why logs are important for security, I wish he would get why they're needed for troubleshooting. It sucks managing a lot of special snowflake servers with systemd since so often error messages don't make it to the journal.

    17. Re:The problem with systemd by SharpFang · · Score: 1

      "Their approaches to any problem they're setting out to solve, real or imagined, are baroque, juvenile, overly complex, brittle, prone to spectacular breakage, and so is their entire everything else."

      The problem is moving goalposts.

      There is a problem, which they spot, and most people can agree this is a problem.

      Then they come up with a solution which is clean, neat, simple and wrong.

      Simply, the problem is more complex than what they postulated and their solution, while working on most of it, breaks on the edge cases, which are... more than a bit numerous. And sometimes quite fundamental.

      And so, instead of thinking up a different solution, that is more correct, they begin patching the caveats and edge cases in a half-assed manner one by one, building that brittle, baroque, juvenile and overly complex tower on top of the neat core. And as more and more things start falling through the cracks, they keep adding bandaids.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    18. Re:The problem with systemd by Viol8 · · Score: 1

      Can't disagree with any of that.

    19. Re: The problem with systemd by Anonymous Coward · · Score: 5, Interesting

      It's worse than that. The community didn't have any say in it, it just got rammed down everyones throats; its revealed that linux has started to follow the cathedral model as vendors like Redhat gain more and more exclusive control over it. At this point its worth asking who controls linux, the community built out of tends of thousands of projects that come together, or a few corporate entities?

    20. Re: The problem with systemd by Anonymous Coward · · Score: 2, Interesting

      POSIX actually permits user names that start with a number. Not a bug.

    21. Re:The problem with systemd by makomk · · Score: 3, Interesting

      Because systemd is now a hard dependency of the Gnome desktop, which a lot of distros want to ship. There were some interesting shenanigans involved in getting that through too - initially the Gnome developers insisted this was no bid deal because logind (the part they required) didn't actually depend on systemd and could be used seperately. Ubuntu did this for a while. Then Poettering declared that actually this was never supported, Ubuntu were idiots for doing it, and it would be broken shortly. Ubuntu reluctantly switched to systemd in the next release.

    22. Re:The problem with systemd by KiloByte · · Score: 4, Interesting

      Systemd is abysmal for users, but less work for distro maintainers.

      For example, service files are drastically shorter than init scripts (albeit unlike them, not universal unless you fall back). This could be easily fixable by using a common library, but that'd be a bit of actual work!

      On the other hand, systemd is a complete and utter abomination for sysadmins. When sysv-rc (not sysvinit, these parts are modular!) does something wrong, it's a matter of a single line of shell to hack it for your particular use case. On the other hand, when you want systemd to do something Lennart didn't think of, there's no resource (unless you really want to dig through the source of the huge blob, debug it, recompile, install, then do the whole thing again on an upgrade or security update). Just two examples: 1. the usual idiom of mount --bind a filesystem with complex sub-mounts so you can rsync/etc it in peace, 2. degraded mount of btrfs RAID.

      Seriously, an init implementation that conflicts with something as basic as RAID, has no place on any non-toy machine.

      I for one wear both hats, of a distro developer and a sysadmin. But it's the latter what I get paid for, thus sorry, no systemd anywhere I can shake a shit-covered stick at.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    23. Re:The problem with systemd by Anonymous Coward · · Score: 0

      If tax cuts for just the rich are that bad, why are they so popular?

      In both cases the answer is: because they benefit the small group of people on the committees that choose them.

    24. Re:The problem with systemd by NicknameUnavailable · · Score: 0

      You're being a bit generous there. SystemD exists as it does to put a security hole in Linux. Pottering is likely just an oblivious mentally-deficient ego-driven tool for some alphabet agency.

    25. Re:The problem with systemd by thegarbz · · Score: 1

      Systemd, is a poor idea

      Which is why all the technical leads of various distributions couldn't wait to adopt it...

    26. Re:The problem with systemd by Anonymous Coward · · Score: 0

      As with many such problems when the problems become painful enough and the standard civilized solutions do not seem to work a use of tools like hammer etc is unavoidable.

    27. Re:The problem with systemd by Anonymous Coward · · Score: 0

      A few years back I decided I was going to rewrite init to do a lot of things systemd does. I spent a week or two contemplating the requirements. Given the important role init plays in the system, I realized reliability and security were the two biggest factors.

      After some more thought, I realized that init was just too important to mess with and that if I really wanted faster boots, the correct answer was to replace the rc system with something more like pmake. It wasn't an interesting project, so I didn't do it.

      Now I try hard to avoid systemd.

      Challenge Word: smarter

    28. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Lennart announced two separate projects he is working on in the past week. He definitely does other things.

    29. Re:The problem with systemd by Anonymous Coward · · Score: 2, Insightful

      Which is why all the technical leads of various distributions couldn't wait to adopt it...

      ...wherever its promoters had managed to remove the opposition through politicking. No success *at all* anywhere else.

      Wake us up when anyone adopts systemd-trojan *voluntarily*. Till then, do abstain from crowing.

    30. Re:The problem with systemd by ckatko · · Score: 3, Insightful

      There is no one on the internet who uses Linux who hasn't heard a hate-filled rant calling systemd a piece of shit.

      Every comment section, of every website. Reddit. Slashdot. Mailing lists.

      So you're welcome to come up with a new reason for why everyone uses it "even though it sucks." But your reason of "nobody knew it would suck" is complete bullshit.

    31. Re:The problem with systemd by dyfet · · Score: 1

      I have come to like runit, which at least only tries to do the task of being a better init rather well and consistent with existing practices, rather than having idiots rewriting everything and force needless changes just to create one big fail.

    32. Re:The problem with systemd by Anonymous Coward · · Score: 1

      Original emails concerning "why systend" have been published. Years ago. All have read them I trust. The given reason was to force **brand** on RedHat/Gnome products.

    33. Re:The problem with systemd by Bing+Tsher+E · · Score: 1

      The only way said 'real solution' would ever be able to work is if a certain individual was hit by a bus sometime this week.

      We can erect brass statues of said individual so that people can commemorate him and in fifty years time people will have forgotten the details and will revere him and the work he did. So his 'legacy' can go on. Eventually.

      Would that suffice? Who's got a chauffeur's license?

    34. Re:The problem with systemd by silas_moeckel · · Score: 5, Interesting

      The reason is simply every commercially used Linux distro switched to it. We're stuck going along for the ride.

      --
      No sir I dont like it.
    35. Re: The problem with systemd by dyfet · · Score: 4, Interesting

      Indeed, I already had two remote servers lost over this very issue. I never had systems fail before systemd, either. The first was one that consistently failed to shutdown, but no logging and nothing in the journal made it impossible to ever discover exactly why. Another failed to boot, and it is equally unclear why. It really is rather crappy.

    36. Re:The problem with systemd by dbIII · · Score: 1

      systemd will get rid of these bugs eventually as time goes on.

      Over the last decade it's simply expanded instead of getting things right with existing functions.
      Note in the summary "the bug has apparently been present in systemd code since June of 2015". That's about the time DNS was dragged into SystemD isn't it?

    37. Re:The problem with systemd by dbIII · · Score: 1

      If systemd is that bad, why is it so popular

      Because RedHat are pushing it and Lennart convinced the Gnome people to depend upon it. Grubby office politics not functionality.

    38. Re:The problem with systemd by Anonymous Coward · · Score: 0

      The level of optimizations to startup systemd provides is impossible without a central place to manage them.

      OTOH, I don't think that level of optimizations is nearly worth the resulting sacrifices.

    39. Re:The problem with systemd by Gr8Apes · · Score: 1

      The simple reason is that systemd generates consulting dollars for those selling certain distros and maintenance contracts. When you first start, it seems simpler. When you run into trouble, you're screwed. You're going to need someone well-versed in systemd (consultant) or spend the effort to learn that monumental pile of shit yourself. Conceptually, systemd's proposal is sound. Everyone would love a simple one stop shop to simple start their services with an easy to understand model. The reality is a convoluted and over engineered and complex system that's not really setup to do just what it promised, instead doing a whole slew of extra crap that it really didn't need to deal with.

      --
      The cesspool just got a check and balance.
    40. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Have you looked at NetBSD's rc.d init system?

      Maybe that could be adapted to Linux.

    41. Re: The problem with systemd by lucm · · Score: 4, Insightful

      Lately I had a flaky service and to get it working I ended up wrapping the daemon in a shell script, and had systemd call that shell script instead. I still had to fight with systemctl because apparently it knows better than me how long a daemon should take to start before giving up, but I managed to get it working *in spite* of systemd.

      Now I have a Docker-first policy and for the most part it's to avoid dealing with systemd.

      --
      lucm, indeed.
    42. Re:The problem with systemd by Anonymous Coward · · Score: 0

      I am using Debian 9 without it, and already pre-testing FreeBSD and OpenBSD servers...

    43. Re:The problem with systemd by Anonymous Coward · · Score: 0

      No it is NOT a pretty decent idea, you only trying to whitewash your own disgrace for supporting a filthy gentrification of the linux distros.
      Init systems are fast enough, paralleled and very diverse.
      Systemd solved no problems only created new ones and a bloody kingdom.

    44. Re:The problem with systemd by gweihir · · Score: 1

      Pretty good summary. Also make sure sysvinit and systemd can be swapped out against each other without any need to change anything else in the system, including traditional init-scripts. (I mean if Solaris SMF manages to do that, then systemd should easily be able to do that as well.) You know, because some people actually want an init-system that is modular, easy to debug and respects KISS. With that fixed and the things from your comment fixed, all my issues with systemd would vanish. As it is, systemd is on my blacklist for things to never install or use. Rewriting system services because their init-system is broken is just insane.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    45. Re:The problem with systemd by r_naked · · Score: 0

      The reason is simply every commercially used Linux distro switched to it. We're stuck going along for the ride.

      THIS! So much THIS!

      I am fortunate enough to work for a company that stuck with Debian 7, and is now switching to Devuan for all new builds. They saw the writing on the wall when the systemd virus started spreading. We also have a few CentOS boxes that will stay on 6 until we can migrate those applications to work on Devuan.

      It is my hope that Devuan isn't a "one hit wonder", but just in case, we are prepared to use it as a base in house distribution.

      My personal workstation and all of my home boxes have been switched to Arch without systemd. OpenRC is a great init system, that is capable of everything that systemd (the INIT part) is, and more. As for udev, resolver, logger, ntp, etc..etc... Why is the world would I want to use anything other than known -- PROVEN daemons? What do they plan to try and suck in next?

      And really, Lennart, take logind and shove it up your ass.

      --
      -- http://anonet.org -- The internet the way it was meant to be. Check it out, you may be surprised.
    46. Re:The problem with systemd by Anonymous Coward · · Score: 0

      The problem is moving goalposts.

      There is a problem, which they spot, and most people can agree this is a problem.

      Then they come up with a solution which is clean, neat, simple and wrong.

      So their initial analysis of the problem and consequently the design of their solution falls woefully short of reality...

      Simply, the problem is more complex than what they postulated and their solution, while working on most of it, breaks on the edge cases, which are... more than a bit numerous. And sometimes quite fundamental.

      And so, instead of thinking up a different solution, that is more correct, they begin patching the caveats and edge cases in a half-assed manner one by one, building that brittle, baroque, juvenile and overly complex tower on top of the neat core. And as more and more things start falling through the cracks, they keep adding bandaids.

      ... and they'll never admit they were wrong in the first place, but will just keep trying to polish that turd into solid gold.

      Because it's the effort that counts, not the results, right?

      IOW, I don't think "moving goalposts" is the problem here. The actual goalposts don't move. They just didn't manage to see the correct goalposts in the first place, then reality ensues.

      Nonetheless, I like your description of development under Dunning-Krueger effect-affected.

      On another note, Fred Brooks in his 1975 book has a section not exactly on this, but on ships that by all measures seem fine except they somehow keep on having "accidents". As with such ships, as with software projects similarly affected, the only solution is to break 'em down to planks and rebuild from scratch. This seems harsh, but sometimes it is necessary. Because even if everybody is fully competent, the sum of the parts might still turn out wrong in unobvious and hard to fix but very noticeable and often very costly ways. In above example, though, we don't just see such a wreck-afloat in action, but also why, in this case, nuking from orbit is the only correct approach.

    47. Re:The problem with systemd by gweihir · · Score: 0

      Several reasons:
      1. Most people cannot recognize engineering quality levels. Case in point: Windows

      2. Most people feel safe following the perceived mainstream or powerful entities ("authoritarian followers"), see also "nobody was ever fired for buying IBM" or "The People's Front of Judea" vs. the "Judean People's Front".

      3. Most people in IT are afraid of being accused of being backwards and not on board with the new hype-du-jour. Incidentally, that is the usual first accusation against anybody that does not like systemd. Baseless as that accusation is in this case, it works on many, many people.

      4. Many people mistake arrogance for actual skill. The systemd-team has plenty of the former but only an average amount of the later (and by far not enough for a project on this level of difficulty...)

      Hence the buyer/user is pretty stupid here and falls for all the wrong things. Not a new phenomenon either.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    48. Re:The problem with systemd by gweihir · · Score: 1

      Excellent comparison, except that for No Man's Sky, I got a full refund a day before it launched officially. The early reviews made it pretty clear that it was mostly vaporware.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    49. Re:The problem with systemd by gweihir · · Score: 1

      I doubt there is a spec, except maybe some chaotic jumble in Lennarts deranged mind.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    50. Re:The problem with systemd by gweihir · · Score: 1

      I fully agree on this. Excellent summary on the political angle.

      For myself, I will just stick with Debian with sysIVinit until the major distros finally wake up and make systemd _not_ the default again. Works reliably, is simple, and I have not yet found anything that I care about being broken as a result. Sure, there is some systemd cruft still around, but that can be mostly ignored at this time.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    51. Re:The problem with systemd by ooloorie · · Score: 1

      Idea: centralized place to optimize startup, management and interconnectivity of all kinds of services.

      Ah, the central planning mindset at work again.

    52. Re:The problem with systemd by Opportunist · · Score: 1

      The entries for the obfuscated C code contest are open source too. But nothing you should take as a foundation for any kind of sensible work.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    53. Re:The problem with systemd by SharpFang · · Score: 1

      So their initial analysis of the problem and consequently the design of their solution falls woefully short of reality...

      Yes. Something that looks good on paper. The kind of naivety found in Tom Clancy's novels, where a single clever unorthodox political move brings peace to Middle East.

      ... and they'll never admit they were wrong in the first place, but will just keep trying to polish that turd into solid gold.

      Ego.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    54. Re:The problem with systemd by Anonymous Coward · · Score: 1

      Oh, plenty waited. Some got dragged into it kicking and screaming. Some still haven't adopted it.

      And a bunch of users just switched to some flavor of BSD.

    55. Re:The problem with systemd by Anonymous Coward · · Score: 0

      "(Score:2, Troll)"

      I see some Poettering fanboy has mod points today.

    56. Re:The problem with systemd by SharpFang · · Score: 1

      You're completely missing the point.

      Systemd is a neat idea the same way communism is a neat idea.

      Everyone being kind to each other, everyone doing their fair share and receiving their fair share out of honest sense of duty and desire to build a better future for all, no enemies of the system because who'd be stupid to oppose an utopia like that, and nobody slacking off or grabbing more than their fair share because people are inherently honest, generous and laziness doesn't exist.

      That's the world where systemd would have been a wonderful solution. Too bad reality doesn't work like that, and Lennart has similar ego problems as Stalin.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    57. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Even windows is made of a lot of components that deal with one subject at a time.
      I think that without a simple, explicit and consice design systemd is unforkable.

    58. Re:The problem with systemd by silas_moeckel · · Score: 1

      Supporting commercial software on top of Linux and you're quickly out of options, old rehl6 based stuff is pretty widely supported but also very old.

      --
      No sir I dont like it.
    59. Re:The problem with systemd by aardvarkjoe · · Score: 3, Insightful

      For example, recently it was found that some tools to add users allow the username to start with a number, which isn't allowed by the spec and can result in such a user (e.g. "0day") getting root access. Been there for a long, long time because apparently no-one does even basic tests on such critical bits of software to make sure it complies with he established rules.

      This is gold. You're throwing an absolute hissy fit over people saying that systemd is responsible for the bug in question. Then you turn around and claim that the real fault is in long-established tools for not following your (imagined) rules, and exposing a serious security bug in your new systemd code.

      What we really need is people dedicated to testing important OS code. It's a boring job that no-one wants, and anyone who takes it on will probably give up quickly as their bug reports are met with abuse and indifference.

      .... I bet you don't even realize the irony of this coming from a systemd supporter.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    60. Re:The problem with systemd by myowntrueself · · Score: 2

      Systemd, is a poor idea

      Which is why all the technical leads of various distributions couldn't wait to adopt it...

      Not quite. It was more a case of "Do we want to include Gnome in our distribution or not?"

      --
      In the free world the media isn't government run; the government is media run.
    61. Re:The problem with systemd by Anonymous Coward · · Score: 0

      The kind of naivety found in Tom Clancy's novels, where a single clever unorthodox political move brings peace to Middle East.

      Oh foo. The thing where you read an entire book (_Against All Enemies_, Clarke) and learn from an insider just how fscking rotten American foreign policy is (as if it didn't stink on the next continent over already), especially regarding the middle east, and then you learn a single thing from a different source and suddenly you realise even that book earnestly unwittingly paints a picture that's toxic levels of saccharine. Compared to that, Clancy is, well, I lack the words. Kiddie stuff.

      And yeah, Clancy is required reading for the American military, has been for years. Its leadership is steeped in it.

    62. Re:The problem with systemd by r_naked · · Score: 0

      Supporting commercial software on top of Linux and you're quickly out of options, old rehl6 based stuff is pretty widely supported but also very old.

      RHEL 6 / CentOS 6 does not reach EOL until 2020.

      I hope the Debian devs come to their senses and at LEAST release a server version without systemd.

      The whole point of systemd was to improve boot times, something you most certainly do not need on servers.

      --
      -- http://anonet.org -- The internet the way it was meant to be. Check it out, you may be surprised.
    63. Re:The problem with systemd by phantomfive · · Score: 2

      Are you sure? Devuan seems to have Gnome, so it must be working without systemd.

      --
      "First they came for the slanderers and i said nothing."
    64. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Thank you thank you for these comments and information. I really hate to say this, but reading your post makes me ever so happy than I have flat out refused to use any distro which uses systemd. I hate it, and I hate/loathe anything which is overly automated, and like you, in 20+ years of Linux adminning, I have _never_ had a surprise from any init.d / rc.d / OpenRC / etc. scripts.

      I have not yet deployed SlackWare on a live server, but I might soon. I love adding that magic "&" (intelligently) in some init scripts.

      If I wanted systemd behavior I would deploy MS Windows Servers- _some_ of the GUI admin tools are easier than Linux, but overall MS Windows is more of a battle, and often can't be won, so Linux is staying.

    65. Re:The problem with systemd by Wolfrider · · Score: 1

      --I've read the Unix-Haters handbook - more than once. Systemd is arguably as bad as, or worse, than what they had to deal with back then. (Most of the stuff in that book from waybackwhen has been fixed, at least in Linux and some of the BSDs.)

      --Pulseaudio is not bad these days, in fact it helps with HDMI output. But the horror stories surrounding systemd are so godawful that I go out of my way to avoid it wherever possible, at least on systems that I control directly.

      --Ubuntu 16.04 in particular was such a non-starter for my needs (and the frequent Ubuntu support-forum bug reports from other users will bear me out on this) that I switched to Antix/MX for daily use/testing - and stuck with Ubuntu 14.04 as a fallback on my main PC - rather than having to deal with the bugs and random system-no-longer-boots issues.

      --
      .
      == WolfriderV6 == I'm willing to admit that *I just might* be wrong... Are you??
    66. Re:The problem with systemd by Qzukk · · Score: 1

      If systemd is that bad, why is it so popular?

      Because 4 people on Debian's tech committee voted for it? Because RedHat hired Pottering?

      You seem to have a twisted idea of "popular". The vast majority of people run Windows. Of the tiny fraction that's left, the vast majority doesn't give a shit because it isn't causing a problem for them. The only people we hear about against it are the ones who have been bitten by the issues in it and faced nothing but frustration getting them fixed thanks to Pottering's view that if systemd doesn't work, it's the rest of the universe's fault, and therefore the rest of the universe MUST be changed to fix it. Whether that is network filesystem issues that have lingered for years because Pottering insists that ALL network devices must be turned off before turning off the computer, or this bug where invalid usernames bypass all the other checks and run as root.

      Which, btw, isn't limited to just usernames starting with a digit. Because the "invalid username" check disables the User= option, it therefore also bypasses the "username exists" check. Therefore, it could also include code you copy off Stack Overflow which appears to run a service as "User=nobody" but "nobody" is actually written with Cyrillic "nоbody" and is therefore invalid.

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    67. Re: The problem with systemd by F.Ultra · · Score: 1

      This old FUD again? Systemd does not and have never swallowed any logs. In fact it (in contrast with sysv init) even preserves everything the daemon outputs to stdout and stderr by sending it to the journal together with the logs from syslog.

    68. Re:The problem with systemd by Anonymous Coward · · Score: 0

      If bashing homosexualists is so bad why is it so popular? The only people not doing it are fringe and....

      Come on amiga, surely you know this is a fallacy.

      The answer is because of a few groups having a war( RH &ORACLE ), internal social RH politics and sweet sweet inertia.

    69. Re:The problem with systemd by kbahey · · Score: 1

      I disagree that systemd centralization of services is a good idea. That is exactly what got it into this bug, and there will be more.

      But, regarding this:

      At this point, the only real solution I can see is making a fork of systemd, banning the current systemd creators from participating in it, and trimming it to size.

      Systemd has only two advantages:

      1. Startup Sequence Dependency Management. A way to tell daemon X that daemon Y and Z have to start first.

      2. An easier syntax. I myself don't mind shell script startup inits, but it seems that other do, perhaps the younger generation.

      To that end, there is a solution that addresses the above two advantages, while abandoning all the other bad things about systemd, such as scope creep, swallowing all other services, ...etc.

      It is called uselessd. It seems dormant at the moment though, but that is the right approach.

      If systemd is replaced by uselessd, AND a given distro (e.g. Debian) allows for multiple init replacements, without a deep dependency chain (e.g. most Desktop Environments today), then I don't mind those who want systemd to remain as an option. The rest of us can just replace it with uselessd, or OpenRC, or anything else and everything works, and continue the UNIX philosophy of many components each specializing in one thing: do one thing and do it right.

    70. Re: The problem with systemd by Anonymous Coward · · Score: 1

      Yeah except if the binary log files get corrupted in which case systemd just truncates. Nice.

    71. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Because they infiltrated the distro teams and bullied their way through any obstacles. See the Debian saga.

    72. Re: The problem with systemd by amorsen · · Score: 1

      The server probably had something sensible in /etc/fstab that systemd didn't happen to like. It causes systemd to stop booting without giving any kind of error.

      --
      Finally! A year of moderation! Ready for 2019?
    73. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Show me the pages in the Unix Haters Handbook that cover
        - bind
        - ntp
        - syslog
        - sudo

      Or just about anything else that systemd has tried to replace. Here is a hint, they don't exist because the book predates all of those. Yes many amusing and crappy things from the book still apply to Linux, however systemd has done fuck-all to address them and simply made Linux worse.

    74. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Systemd, is a poor idea, poorly implemented in a project thats poorly managed.

      If systemd is bad, why the distros featuring it are thriving, while the non-systemd ones are small projects with uncertain future [Nota bene: I'm not a systemd advocate?

    75. Re: The problem with systemd by Etcetera · · Score: 1

      Possibly also SELinux problems. I've seen policy problems silently freeze startup for no reason that were quite tricky to resolve. And a policy rollback in RHEL7.1 ended with me wiping and rebuilding the box.

    76. Re:The problem with systemd by Etcetera · · Score: 1

      Many people turned the other way, trusting that RH (which had just seamlessly switched from traditional init to upstart in the previous release) wouldn't do anything particularly dumb. We were wrong. Or we assumed that Fedora's community would self-correct.

      All through the F14 and F15 release cycles concerns were raised as feature and scope creep began to set in (even then). Many people "knew it would (likely) suck" because things were getting out of hand (and they remembered how LP had screwed up PulseAudio) and spoke up about it.

    77. Re:The problem with systemd by sjames · · Score: 1

      Most people believe the flu sucks, but it remains "popular".

    78. Re:The problem with systemd by Anonymous Coward · · Score: 0

      No. No we're not. If you can kick ms windows to the curb ditching systemd is a cake walk. The way hard dependencies in debian packages are being tortured it may be the death of that distro but many more options are becoming available.

      Leave systemd to the pointy haired boss peons.

    79. Re:The problem with systemd by SharpFang · · Score: 1

      I meant centralization of service startup and management (start/stop/reload/reinit). Not centralization of *services*. That's a definitely bad idea.

      Init started rc. Rc, besides its own scripts, would branch out into a dozen custom startup sequences for various stuff; xinit, iptables, these are separate initialization systems. It was... manageable, though far from clean.

      Systemd trying to *be* everything it can't *start* (and some which it can but still prefers to *be*) is stupid though.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    80. Re: The problem with systemd by F.Ultra · · Score: 1

      And logs that it did happen. Compare that with what would happen if say /var/log/syslog would be corrupted by inserting say a 0x00 byte somewhere ;)

    81. Re:The problem with systemd by Anonymous Coward · · Score: 1

      ... are you fucking serious, or making some sort of joke?

      For example, recently it was found that some tools to add users allow the username to start with a number, which isn't allowed by the spec and can result in such a user (e.g. "0day") getting root access

      You know systemd is the thing that gave them root access, right? That everything else would have allowed the username and NOT given it escalated privileges, but Poettering's idea of 'fail safe' is 'fuck it, here's root'. And by the holy spec of "has been working that way for years", usernames starting with numbers were frowned upon but not disallowed.

      I'm not saying systemd is great, merely that older tools aren't really either and their current level of quality is largely the result of decades of accidental testing and improvement.

      The older tools WERE great. That's why everyone is bemoaning systemd replacing them. If systemd was actually better, we'd be lauding the genius who overshadowed so many of his technological forefathers. But we're not. It's almost as if Red Hat Inc. has forced an inferior replacement on us to get the upper hand on Oracle...

      What we really need is people dedicated to testing important OS code. It's a boring job that no-one wants, and anyone who takes it on will probably give up quickly as their bug reports are met with abuse and indifference.

      Agreed. It amazes me how many businesses rely on linux, how much money it makes for them, but no one seems to be willing to pay testers. As you said, it's a shit job that no one competent is going to volunteer for. Then again, Red Hat pays Lennart's salary. If systemd is what we get when Red Hat foots the bill, then I'm thinking we're better off without paid testers...

    82. Re:The problem with systemd by HiThere · · Score: 1

      Sorry, but you're forgetting that the current system has had a bunch of startup pains that have been corrected. But this is what makes replacing it with systemd except on a few test systems such a bad idea.

      Note: Pottering may be less pleasant and more opinionated than the current maintainers of the standard tools, but the early builders of those tools weren't mild and unopinionated themselves. And they weren't all experts to start with. The difference is that the tools they were working on were relatively small, and they didn't have a major corporation pushing their megalomania.

      The past wasn't anything golden, but over time we worked through the problems. And a part of the way we did so was by modularizing so that small pieces were worked on at any particular time.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
    83. Re:The problem with systemd by F.Ultra · · Score: 1

      So that is why I can run Gnome3 on FreeBSD, because FreeBSD adopted systemd? Are you sure?

    84. Re:The problem with systemd by F.Ultra · · Score: 2

      Yeah systemd is such a hard dependency on Gnome that you cannot run Gnome3 on say FreeBSD, oh wait, it does!

    85. Re:The problem with systemd by serviscope_minor · · Score: 1

      Systemd is abysmal for users, but less work for distro maintainers.

      For example, service files are drastically shorter than init scripts (albeit unlike them, not universal unless you fall back). This could be easily fixable by using a common library, but that'd be a bit of actual work!

      No surprises it came out of deadrat. Did you ever look at their init scripts? Christ alive! those things were huge, hairy and hideous. I remember screwing around with the X init scripts somewhere in the early 2000s. Basically RH6.something had completely rewritten scripts, but the old scripts for 5.2 then 4 were pasted at the end such that if one failed it would fall through to the next.

      Most weren't quite that bad, but given that's how they wrote shell scripts, no wonder they though the scripts sucked.

      On the other hand, when you want systemd to do something Lennart didn't think of, there's no resource (unless you really want to dig through the source of the huge blob, debug it, recompile, install, then do the whole thing again on an upgrade or security update)

      And of course, it's still in C in the 2010s. So you have to figure out the system logic from in amongst all the micro-managing of resource allocation. Yay!

      --
      SJW n. One who posts facts.
    86. Re:The problem with systemd by serviscope_minor · · Score: 1

      For example, recently it was found that some tools to add users allow the username to start with a number,

      Like vi, emacs, pico, ed, ex, nano, and even Atom?

      --
      SJW n. One who posts facts.
    87. Re:The problem with systemd by viperidaenz · · Score: 1

      I thought it was systemd because boottime!
      initd was a bit shit at starting services in parallel

      I know it's been worth my while using it. My 'workhorse' linux machine has saved seconds off the only boot it's done in the last 4 months.

    88. Re: The problem with systemd by KGIII · · Score: 1

      \o

      But, I am just a fairly typical user and have just a small network. I kinda like systemd.

      --
      "So long and thanks for all the fish."
    89. Re:The problem with systemd by chihowa · · Score: 1

      Systemd, is a poor idea, poorly implemented in a project thats poorly managed.

      If systemd is bad, why the distros featuring it are thriving, while the non-systemd ones are small projects with uncertain future [Nota bene: I'm not a systemd advocate?

      Inertia. The specifically non-systemd ones are either brand new and are in the early stages of adoption/development (Devuan) or are old, but haven't had a large following for years (Slackware). [Slackware will never die, by the way. It's one of the immortals.]

      Let's look at it another way: This may be because I'm not in the corporate world, but I haven't met somebody who has deliberately installed anything from RedHat (or had anything good to say about RedHat) during this decade and systemd development and integration started at the beginning of this decade at RedHat. If systemd was not bad, why would this be the case?

      --
      If you want a vision of the future, imagine a youtube comments section scrolling - forever.
    90. Re:The problem with systemd by Anonymous Coward · · Score: 0

      This is a form of survivor bias. Those older tools have just been around longer, with issues fixed over many decades.

      So, after all that time and effort, why are we throwing them out and starting the cycle again??

    91. Re:The problem with systemd by Anonymous Coward · · Score: 0

      There is no one on the internet who uses Linux who hasn't heard a hate-filled rant calling systemd a piece of shit.

      This cannot plausibly be true. I doubt even most people using systemd have heard such rants, let alone Linux (e.g. Android) users.

    92. Re:The problem with systemd by fisted · · Score: 1

      Show me the pages in the Unix Haters Handbook

      1994

      that cover

        - bind

      Early 1980s

      - ntp

      1985-1988

      - syslog

      1980s

      - sudo

      1980s

      they don't exist because the book predates all of those.

      Yeah right.

    93. Re:The problem with systemd by fisted · · Score: 1

      This sums it up pretty nicely.

    94. Re: The problem with systemd by Anonymous Coward · · Score: 0

      If Debian hadn't gone along for the ride, Ubuntu wouldn't have switched, and the majority of Linux servers would not be running it. I think the community did have their say, in much the same way as they then went and elected Trump.

    95. Re:The problem with systemd by Tranzistors · · Score: 1

      rather than having to deal with the bugs and random system-no-longer-boots issues

      This is rather interesting. As a Fedora user I have lived with systemd for quite a while and now looking back I can say that i had much more issues with booting and shutdown before switching to systemd. Perhaps I'm just lucky, perhaps software has matured more and with time such bugs get caught regardless of init systems.

    96. Re:The problem with systemd by phorm · · Score: 1

      Most shops I know that are paying for RHEL support contracts, not for the software. That gives them somebody to call if issues come up or there's a critical bug to fix, as well as access to the KB's etc.

      I don't know that SystemD changes this much. If anything, it's hurting RedHat's reputation.

    97. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Not quite. It was more a case of "Do we want to include Gnome in our distribution or not?"

      If building up a crazy replacement for major parts of Linux that do silly things like binary log files and require message bus daemons running about al the time was a requirement then I think for any sane engineer the answer should be a resounding: "No."

      If I wanted an OS with a hard-to-remove GUI I'll use Windows or some other "consumer" OS. It's even more surprising that RedHat was the source of the systemd nonsense. RedHat makes their money off servers. Servers hardly ever get rebooted (so who cares if bootup is a few microseconds faster); don't go into sleep mode, don't need column 80-truncating binary log files, or need a GUI.

      So why is RedHat, a maker of server class operating systems pushing this garbage? I'm an embedded guy but I have lots of sysadmin friends. I don't know a single one that isn't avoiding systemd like the plague (that it is).

      The sooner systemd fades away and is completely gone the better. I spent a good week or two working on some CentOS 7 systems. It was painful. In the end we upgraded to CentOS 6 and rebuilt the offending CentOS 7 boxes.

    98. Re:The problem with systemd by Anonymous Coward · · Score: 0

      Idea: centralized place to optimize startup, management and interconnectivity of all kinds of services.

      But even this doesn't make any sense. Never mind that systemd is a steaming pile of garbage. But why oh why does startup need to be optimized? Except for kernel developers and embedded engineers who reboots a machine often enough that it matters? I would say rebooting once a month is frequent. And if it takes a few extra seconds does it really matter? Memory and hardware tests take quite a long time such that a few seconds don't matter.

      On a few of my specialized systems (FreeBSD) I have an uptime of 800 days.

    99. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Indeed, I already had two remote servers lost over this very issue. I never had systems fail before systemd, either.

      A friend of mine runs a medium-scale ISP. He has since enforced a 100% no systemd policy and upgraded all his CentOS 7 machines to CentOS 6. Since the upgrade all of our issues have disappeared and the staff is much happier to boot (pun intended).

    100. Re:The problem with systemd by makomk · · Score: 1

      Devuan has gnome since it's a Debian fork, but all the information I can find says it doesn't work properly and they don't encourage people to use it, e.g. https://www.theregister.co.uk/...

    101. Re:The problem with systemd by SharpFang · · Score: 1

      Gotta agree. Optimized startup is a nice thing, but not necessary, by far. Definitely not worth sacrificing so much.

      (and while startup optimization IS important in embedded, systemd alone is heavyweight enough that it's not really welcome.)

      Personally, I'd much rather see a robust, fault-proof hibernation. My Windows desktop has 15 days of uptime by now recorded (since last updates that required reboot) - because thanks to hibernation I can resume work where I ended it last day, everything back to original state, and faster than with cold boot. Linux... if you ever get hibernation to work, after resuming the work several times, programs begin misbehaving. Firefox starts leaking memory left and right, Plasmashell crashes, something everything freezes.

      Systemd is really a solution in search of a problem.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    102. Re: The problem with systemd by strikethree · · Score: 1

      It sucks managing a lot of special snowflake servers with systemd since so often error messages don't make it to the journal.

      You are doing it wrong. You can have SystemD export text logs. Go reconfigure the defaults on those thousands of servers if you don't like it.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    103. Re: The problem with systemd by strikethree · · Score: 1

      Indeed, I already had two remote servers lost over this very issue. I never had systems fail before systemd, either. The first was one that consistently failed to shutdown, but no logging and nothing in the journal made it impossible to ever discover exactly why. Another failed to boot, and it is equally unclear why. It really is rather crappy.

      Again, this is totally your fault. SystemD will do everything that syslog will do if you take the time to configure it correctly. A new paradigm is upon us and your outdated way of doing things will be flushed down the toilet. Get with the times old man, learn how to use PROPER software instead of that ancient junk that you started out with 30 years ago. The old tools are not compatible with the new reality that is upon us. Adapt or die.

      (it should be noted that adapting is the same as dying since the philosophical framework behind SystemD does not support actually working correctly in the real world, but being logically coherent and consistent with reality is NOT a requirement in this new paradigm. Gotta love insanity, but meh ... )

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    104. Re: The problem with systemd by strikethree · · Score: 1

      SystemD will be completely unavoidable in another 5 to 7 years. I just gave up on Linux two days ago. I can't use insane software and I can't fight it. The only thing left to do is quit entirely. The software world is FUCKED and there is no hope. Microsoft happily collects all of your data (including passwords and such) so that every portion of your life that touches binary communication will be available for analysis. Microsoft sells access to that data to any large group that wants it. Especially concerning since the NSA seems to have gone off the rails and forgotten that the 4th and 5th amendments take precedence over any executive orders or laws that Congress pass (unless those laws are created as a new Amendment!). Linux has Redhat using Poettering to utterly corrupt and "control" the Free Software stack.

      OpenBSD is the only operating system worth using at this point. Theo may be a politically incorrect raging asshole (or not) but he has honor, ethics, and morals which appear to be impeccable.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    105. Re:The problem with systemd by strikethree · · Score: 1

      Quite why redhat are in thrall to the arrogant little twerp in charge is anyones guess.

      Eh? This is all being driven by Redhat. Poettering is merely the useful idiot in this scenario. Redhat would have chosen someone like Poettering if he was not available.

      Redhat wants control. That is the answer to your question.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    106. Re:The problem with systemd by phantomfive · · Score: 1

      oh, nice find, thanks.

      --
      "First they came for the slanderers and i said nothing."
    107. Re: The problem with systemd by TechnoJoe · · Score: 1

      I don't know why everyone is complaining so much about systemd. It works great for me.

      FYI, I'm the guy who makes airline seats so comfortable.

    108. Re: The problem with systemd by jeremyp · · Score: 1

      open it with a hex editor and change all the nuls to something else.

      --
      All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
    109. Re: The problem with systemd by F.Ultra · · Score: 1

      And you can create a program that reads and opens a corrupted journal file as well since the format is open.

    110. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Has anyone considered that Poettering is under the influence of any one of the various organizations which wish to weaken system security?

    111. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Except that the contents of the corrupt journal would be much more difficult to recover than those of a corrupted text log file.

    112. Re: The problem with systemd by F.Ultra · · Score: 1

      Yes that is one of the major drawbacks of using a binary format for anything. There are upsides as well and speaking for myself since I have yet to encounter a corrupted logfile by either syslog or journald I find the upsides outweighing that downside.

    113. Re: The problem with systemd by Anonymous Coward · · Score: 0

      And since there is a significant proportion of people actually get corrupted journals, the downside outweighs the upsides after all.

    114. Re: The problem with systemd by F.Ultra · · Score: 1

      Perhaps you should examine why you experience so much corruption then. I've run journald for years now on lots of servers and have not to this day experienced a single corruption, and that is with servers that create GB:s of logs each day.

    115. Re: The problem with systemd by Anonymous Coward · · Score: 0

      examine why you experience so much corruption then.

      Which is probably the responsibility for the systemd developers.

    116. Re: The problem with systemd by F.Ultra · · Score: 1

      So they ninja:d their way into your servers and put shitty drives in them or what?

    117. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Perhaps. If not, why no any other else logging solution has so serious a corruption issue?

    118. Re: The problem with systemd by F.Ultra · · Score: 1

      Don't know, better yet but doesn't any of my machines show any of this corruption if it's caused by journald? And I run some servers with several millions of rows of logs per server per day, but not a single corruption.

    119. Re: The problem with systemd by Anonymous Coward · · Score: 0

      Which only implies you don't run into the corner cases, which work well with all other logging solutions, but systemd developers failed to consider in the first place and refuse to fix now. Nice mentality for you and the systemd developers.

  4. Software is shite by Anonymous Coward · · Score: 0

    Goddamn. I mean, seriously. Software is total crap; why do we deal with this shit? WHY?!

    1. Re:Software is shite by Barsteward · · Score: 1

      you don't have to... roll your own if you are capable or go to a distro that doesn't use it.

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    2. Re:Software is shite by segedunum · · Score: 2

      Cognitive dissonance translation: You're stuck with it.

    3. Re:Software is shite by shoor · · Score: 1

      Not quite. It's something I learned as (Theodore) Sturgeon's law, though the wikipedia calls it Sturgeon's revelation because Sturgeon himself deemed something else as his 'law' Anyway, the relevant revelation goes something like this:
      90% of Science Fiction is crud, but then 90% of everything (including in this case software) is crud.

      --
      In theory, theory and practice are the same; in practice they're different. (Yogi Berra & A. Einstein)
  5. With enough bugs, all developers are shallow by Anonymous Coward · · Score: 0

    With enough bugs, all developers are shallow.

  6. Calm down. Don't panic. by Anonymous Coward · · Score: 1

    Yes, it's a typical systemd boo-boo: it's just because systemd (the project) wants to absorb the resolver, after having absorbed (hardware) event management, device management, (user) session management, yadda, yadda.

    (Disclaimer: I neither like not use myself systemd. And I'm a happy user of Debian. Yes, it is possible).

    *But*: systemd-resolved is an *optional* part of the whole thing. And in Debian, for example, it is disabled by default.

    So. Just disable systemd-resolved until the problem is... resolved. Pretty normal bug, I'd say. And this "for two years" part is extra scare mongering. If you've been running **bleeding edge** versions of systemd (not your usual, boring distro), then you might have been vulnerable. But then, hopefully, you'll have known what you were doing.

    So... don't panic.

    Like systemd? Continue using it. Don't enable -resolved until told so. Don't like systemd? Don't use. And oh, be nice to each other.

    1. Re:Calm down. Don't panic. by KiloByte · · Score: 1

      So. Just disable systemd-resolved until the problem is... resolved.

      I'd heartily recommend running local unbound -- it provides a sane, RFC-compliant, secure, fast, DNSSEC-validating, ISP-bogosity-resistant resolver.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    2. Re:Calm down. Don't panic. by dbreeze · · Score: 1

      "And oh, be nice to each other."
      Newbie ACs are just adorable, ain't they?...

      --
      When the king heard the words of the Book of the Law he tore his robes.2Kings22:11
  7. Surprised? by MrKaos · · Score: 4, Insightful

    No.

    --
    My ism, it's full of beliefs.
    1. Re:Surprised? by Anonymous Coward · · Score: 0

      No.

      surprised sounds like a lot better name than systemd. At least it's fitting.

    2. Re:Surprised? by gweihir · · Score: 1

      Surprised it took so long to find something _this_ bad. But likely all the really competent people are not using systemd and hence have no reason looking at its code or fuzzying it.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
  8. in before by Anonymous Coward · · Score: 0

    The creator of systemd announces that these are all bugs in the kernel and have nothing to do with systemd.

    1. Re:in before by Opportunist · · Score: 1

      You're WAY too late for this.

      I have this feeling he wrote a trigger for blame shifting.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  9. Dupe by lobiusmoop · · Score: 4, Informative
    --
    "I bless every day that I continue to live, for every day is pure profit."
  10. From all of us Linux greybeards: by Gravis+Zero · · Score: 5, Insightful

    We told you so.

    --
    Anons need not reply. Questions end with a question mark.
    1. Re:From all of us Linux greybeards: by Tranzistors · · Score: 0

      Told what exactly? That software has bugs?

    2. Re:From all of us Linux greybeards: by Tranzistors · · Score: 1

      Thanks for actually saying what you "have been saying". But "not having to reboot to upgrade your system" until very recently has not been true for Linux kernel.

    3. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 1

      > greybeard
      > six digit uid

    4. Re:From all of us Linux greybeards: by Barsteward · · Score: 0

      who takes notice of troll websites created by the bitter and twisted?

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    5. Re: From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      Please define "very recently." -PCP

    6. Re:From all of us Linux greybeards: by Barsteward · · Score: 1

      show us any useful software that has never had a bug......

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    7. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      Those who are not morons?

    8. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      Show us any useful software from systemd.

      I too can make blank claims that are clearly going to be refused as presented based on an insistence to be right.

    9. Re:From all of us Linux greybeards: by Gravis+Zero · · Score: 1

      There is a tremendous difference between a bug and a remotely exploitable bug.

      --
      Anons need not reply. Questions end with a question mark.
    10. Re:From all of us Linux greybeards: by Gravis+Zero · · Score: 1

      security and stability are what's important. rebooting to upgrade is just annoying. Being insecure, unstable and annoying isn't exactly a winning combination.

      --
      Anons need not reply. Questions end with a question mark.
    11. Re:From all of us Linux greybeards: by segedunum · · Score: 1

      Funny. I'm not seeing any arguments here. Only a whole load of psychological issues about how the whole world is so bitter and twisted against systemd.

    12. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      I love how the "problems" listed at that link aren't actually real. The criticism that everything in the systemd world is somehow all crammed into PID 1 is a bald face lie. If you believe it, then you're not qualified to be discussing systems programming and development.

      Maybe try linking to something that isn't talking out of its ass.

    13. Re:From all of us Linux greybeards: by guruevi · · Score: 1

      SysV never had a "remote access" bug because it didn't have remote access. Not sure why an init system has TCP capacities. This is typically what you'd find in Windows (and systemd).

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    14. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      systemd's init system does not have TCP capacities. The bug described is not in the init system of systemd.

    15. Re:From all of us Linux greybeards: by Bing+Tsher+E · · Score: 1

      Believe it or not, credibility does not depend on the size of one's UID on a blog that started in 1998 or so. It's a big world out there.

      At times this place stinks so badly that throwing away an account and leaving for six months before coming back anew is the only solution. There are plenty of people who have better things to do than fight and argue on forums.

      Now, people who consistently have remained Slashdot loyalists, who have slurped down the Mae Ling Mak/ Natalie Portman/ Hotgrits spam since the beginning... well, anyhow.

    16. Re:From all of us Linux greybeards: by ArchieBunker · · Score: 1

      This is the tip of the iceburg. Just wait.

      --
      Only the State obtains its revenue by coercion. - Murray Rothbard
    17. Re:From all of us Linux greybeards: by Opportunist · · Score: 1

      Yes, that's the big issue here. We finally got rid of rebooting woes that would threaten our e-peen in the form of the numbers in /proc/uptime (because every halfway critical system only exists on a single machine and is not behind a load balancer or at the very least a hot standby, which makes rebooting a critical downtime matter that could threaten the 99.99999999999% availability the SLA promises).

      What's a few bugs that allow remote code execution in return?

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    18. Re:From all of us Linux greybeards: by Opportunist · · Score: 1

      Wrong question. The right one is "is there any software that could be used instead that has fewer critical bugs?"

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    19. Re:From all of us Linux greybeards: by I'm+New+Around+Here · · Score: 1

      Exactly. I am on my third account on slashdot. Mainly because i was logged in on a computer before, that I no longer have access to. Same with email address to reset forgotten password. Solution is to make a new account.

      --
      If you think I voted for Trump because of this post, you're wrong. I voted for Dr. Jill Stein of the Green Party. Again.
    20. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      Ah, systemd is the kernel now too, huh? Well, I guess it was only a matter of time.

    21. Re:From all of us Linux greybeards: by Wolfrider · · Score: 1

      > greybeard
      > six digit uid

      --We told you so!!

      / had a bird named Greybeard once
      // kinda miss him

      --
      .
      == WolfriderV6 == I'm willing to admit that *I just might* be wrong... Are you??
    22. Re:From all of us Linux greybeards: by F.Ultra · · Score: 1

      systemd does not have TCP capacities either. systemd-resolved which is a DNS resolver does of course since it would be strange to have a DNS resolver without network capacities. So systemd have not had a remote access bug either, systemd-resolved had one, and so have dnsmasq, bind and many other DNS resolvers.

    23. Re:From all of us Linux greybeards: by Anonymous Coward · · Score: 0

      If by "very recently" you mean "a decade". kexec and ksplice have been around for quite some time.

    24. Re:From all of us Linux greybeards: by Bing+Tsher+E · · Score: 1

      I have a list of Slashdot IDs that I can no longer retrieve a password from, because of old email addresses I no longer have. Some of them I really wish I could go back to using instead of this. But this one works.

    25. Re:From all of us Linux greybeards: by segedunum · · Score: 1

      It is not a lie I'm afraid. The argument is that there is *too much* in PID 1. PID 1 should spawn other process and be done. That's it.

    26. Re:From all of us Linux greybeards: by strikethree · · Score: 1

      show us any useful software that has never had a bug......

      Defend yourself sir.

      The problems are not the bugs. The problem is what is CAUSING the bugs. The "We told you so" is addressing the CAUSE of the bugs, not the individual bugs themselves.

      So you need to defend why your comment is not an outright troll because that is EXACTLY what you are doing whether you realize it or not.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
  11. Even Windows isn't this bad by Anonymous Coward · · Score: 5, Interesting

    When I first read about systemd I thought it was a knock off of the NT service control manager. Except on Windows, that's all it does. It controls services. It starts and stops them. And manages dependencies. And that's it. It doesn't take over the fucking world and try to control everything in the OS. I think this is where systemd lost its way. It's a sad day when we look to Windows as the example of "does one thing and does it well" and not the whole fucking kitchen sink.

    1. Re:Even Windows isn't this bad by SharpFang · · Score: 3, Interesting

      Systemd's extra promise was *optimization* of startup.

      It was meant to be achieved through creation and binding of sockets: Service X must wait for service Y to start and create a start up, because X needs to bind to a socket Y creates. It won't be using that socket in a while yet, but it can't initialize without that socket present.
      What systemd does is create that socket so that Service X can bind to it right away, and proceed with startup, and once Y arrives at the point of creation of the socket, it's bound to the socket Systemd created. There, instead of sequence of complete startups of services, which is lengthy, you have only sequence of socket binding, which is fast, and parallel startup, which is fast too.

      This is a neat idea which breaks upon meeting the reality.

      Because not everything uses sockets. Not everything can start up with the socket merely present, some need it for real right away. Not everything is structured the way systemd envisioned it; some applications aren't just monolithic executables, but e.g. lengthy shell scripts repeating hundreds of calls to a given executable with different parameters (e.g. iptables). They just don't fit that idealized framework.

      And so, the framework does what a framework with overinflated ego author does. Including the crap part.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    2. Re:Even Windows isn't this bad by Z00L00K · · Score: 0

      And a start-up optimization could as well have been done using 'make' and makefiles.

      --
      If builders built buildings the way programmers wrote programs, then the first woodpecker would destroy civilization.
    3. Re:Even Windows isn't this bad by Bongo · · Score: 1

      That's interesting. I haven't followed the systemd controversy, but as you put it, it is a design idea that should have been toyed with for a few days and then thrown in the trash, just as *most* new ideas should be thrown in the trash. Most new ideas don't work.

      "We judge people not by the quality of the ideas they put on the wall, but by the quality of ideas they throw in the trash." -- some professor.

    4. Re:Even Windows isn't this bad by SharpFang · · Score: 3, Interesting

      That is doable but very cumbersome. You'd need a central makefile for the whole system, and adding or removing anything would require a rebuild.

      Gentoo isn't exactly everyone's favorite, and this would make Gentoo's level of problems pale by comparison.

      Note it's not just about ordering the startup, it's about fulfilling all the requisites with 'dummy' interfaces until the provider of what the 'dummy' is for starts up, then transparently substituting. "Want to write logs but syslog still didn't start? We provide a queue that will store your logs until syslog... uh, wait, syslog can't do this that way. Welp, fuck syslog, here's our journald, and it has binary log files which are superior because we say so."

      I don't quite see how just makefiles could solve that.

      OTOH I really don't see the problem with delaying the startup by literally several milliseconds to let syslog start, instead of ripping it off and replacing with something everyone hates. Simply put, some optimizations are definitely not worth the cost.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    5. Re:Even Windows isn't this bad by SharpFang · · Score: 3, Informative

      My guess is it's the sunken cost fallacy - in the beginning they didn't realize just how many flaws their idea had, and once they got the thing running initially, they would not admit the failure (ego problem).

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    6. Re:Even Windows isn't this bad by gweihir · · Score: 1

      Incidentally, Solaris SMF does pretty much the same. And it can still deal with old-style init-scripts. Not saying it is a really good solution, but it does at least not fall for the absolute beginners mistake of writing a "Master Control Program" that does everything.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    7. Re:Even Windows isn't this bad by jon3k · · Score: 0

      What systemd does is create that socket so that Service X can bind to it right away, and proceed with startup, and once Y arrives at the point of creation of the socket, it's bound to the socket Systemd created. There, instead of sequence of complete startups of services, which is lengthy, you have only sequence of socket binding, which is fast, and parallel startup, which is fast too.

      I actually just read this chapter in the RHCSA book I was reading (don't give me that look, I just wanted to see if there were any gaps to fill in). It was the one idea I wasn't aware of that actually made a lot of sense. One of the first things it does is initialize all those sockets, and if an application tries to communicate before the service actually connects to the socket, it just holds it in a buffer. That's actually a pretty cool idea!

      Unfortunately systemd is an overgrown mess that's slowly snaking it's way through everything. If this is what the open source community decides is best, fine, I'm just along for the ride, but I genuinely feel like this is an overwrought very unnecessary system that eventually linux, in the general sense, will become far too dependent on.

    8. Re:Even Windows isn't this bad by Anonymous Coward · · Score: 0

      i can understand wanting to... needing to... optimize windows startup; but linux? that extra ten seconds saved every six months is so very much appreciated, guys. thank you so much!

    9. Re:Even Windows isn't this bad by SharpFang · · Score: 1, Informative

      heh. It IS important in Linux for embedded. You switch your Linux toaster on, or whatever you have running Linux, you want it up and toasting in 10 seconds max.

      But the approach is totally misguided because Systemd alone adds so much overhead any benefits it might bring are lost on time spent loading Systemd, all its configurations and dependencies. The actual approach is init with custom inittab consisting of 5-6 lines that start only the bare essentials you need. Systemd is the kind of cure that is worse than the disease.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    10. Re:Even Windows isn't this bad by tirnacopu · · Score: 1

      No it doesn't - referring to Windows. The most popular tool you hear of when automating NT systems is PsExec, and that one uncovered to the world an always-on, separate from SMB/CIFS, publicly available file transfer and command execution channel that I shamefully admit at the time, after years of MS servers management, had never heard of: http://techgenix.com/psexec-na...
      The author - Mark Russinovich - went on to a technical leadership position within Microsoft itself.

    11. Re:Even Windows isn't this bad by ausekilis · · Score: 2

      Note it's not just about ordering the startup, it's about fulfilling all the requisites with 'dummy' interfaces until the provider of what the 'dummy' is for starts up, then transparently substituting. "Want to write logs but syslog still didn't start? We provide a queue that will store your logs until syslog... uh, wait, syslog can't do this that way. Welp, fuck syslog, here's our journald, and it has binary log files which are superior because we say so."

      Put this way it sounds like systemd is to init what GUICE is to Java. Lets create some stub interface for all services that doesn't actually do anything until we can spin up whatever it is that's supposed to go there. It can be very powerful to do this sort of dependency injection in user space and have things like circular dependencies resolved automagically. I haven't had many issues with systemd on any of my personal systems, but I may be a over 3 sigma from the mean.

      Though I do have to question the logic of bringing a Java-like idea into kernel space.

    12. Re:Even Windows isn't this bad by F.Ultra · · Score: 1

      Since when has the service control manager in Windows "done things well"? It's a complicated mess that you need 3d party tools just in order to add services, dependencies are hell to setup and you need special code in your application in order to run as a system service; why only have main() when you can have ServiceMain()!

    13. Re:Even Windows isn't this bad by F.Ultra · · Score: 3, Insightful

      The problem is not having to wait a few ms for syslog to startup, the problem is that syslog have dependencies (like i.e access to a file system) that needs to be up before it can be started and thus everything that logs before that is missed unless something else does it.

      And journald is not something that "everyone hates", some people here on Slashdot does yes, but there are lot's of people out in the real world who uses it and prefers it to the old syslog. I was myself quite sceptical when journald was announced with binary files but now that I've used it for some time I do realise that there are things it does and that it does well that would be just impossible or extremely complicated to do with the old syslog text format (i.e that the journal catches all output from stdout and stderr and joins it with the syslog output by adding the unit name in the meta-data, or that you can search for all logs produced by a special unit without accidentally get logs from other applications mixed in due to them matching the same grep pattern).

    14. Re:Even Windows isn't this bad by Anonymous Coward · · Score: 0

      Especially since half of us were yelling at them that it was a bad idea from the start, simply from experience with his audio abomination.

    15. Re:Even Windows isn't this bad by drinkypoo · · Score: 1

      It can be very powerful to do this sort of dependency injection in user space and have things like circular dependencies resolved automagically.

      Saving a second or two on boot time (hey, maybe as much as five seconds, wow!) might be important while you're starting up short-lived VM instances, but it is completely, utterly, and in all other redundant ways irrelevant when it comes to actual, physical computers. They tend to waste more time in POST than you could ever possibly save by optimizing boot. So while systemd might actually make good sense specifically for short-lived VMs, it makes less than no sense for desktops, laptops, servers, media centers, or really any other kind of PC. Most of the time we don't even turn those off any more! We just let them drift off to sleep when we're not using them, and they wake up in much less than boot time when we want to start using them again.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    16. Re:Even Windows isn't this bad by drinkypoo · · Score: 2

      (i.e that the journal catches all output from stdout and stderr and joins it with the syslog output by adding the unit name in the meta-data,

      if I want all the output from a daemon, I can have that without systemd. I just stuff it into /var/log/.

      or that you can search for all logs produced by a special unit without accidentally get logs from other applications mixed in due to them matching the same grep pattern).

      If I want that functionality with syslog, I just log that group to its own file. Then I can search just that file to get only logs from that group. Done and done. Though actually, the only Linux machines I have running 24x7 are actually using busybox's syslogd, which I don't think has that functionality. I don't need it, so why bother to have it? The systems in question are very low-memory.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    17. Re:Even Windows isn't this bad by SharpFang · · Score: 1

      it's good at managing dependencies and starting/stopping services on demand (you've got to admit it was a mess before; init.d scripts often not following the standard format) but it could do this without hijacking half of the OS.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    18. Re:Even Windows isn't this bad by gustygolf · · Score: 1

      That is doable but very cumbersome. You'd need a central makefile for the whole system, and adding or removing anything would require a rebuild.

      I believe the GP meant that make(1) is to work as the dependency resolver of init scripts. Because that's what make(1) is: a way to run arbitrary commands in dependency order.

      He did not mean that the init system should involve compilation. (I think. I'm no mind-reader. I could be wrong.)

      --
      "Slow Down Cowboy! It's been 58 minutes since you last successfully posted a comment" -- slashdot, driving users away.
    19. Re:Even Windows isn't this bad by F.Ultra · · Score: 1

      Sorry, forgot that what you need should dictate the need of any other admin out there. So easy to forget such little details.

    20. Re:Even Windows isn't this bad by Anonymous Coward · · Score: 0

      Wow, isn't this what systemd developers do all the time?

  12. Re:The real problem is systemd haters by Tranzistors · · Score: 1

    If you want to publish fan-fic about how “the left” victimize software developers, there are more appropriate places, like dedicated fan-fic sites for all tastes, however bizarre.

  13. How unexpected. by Anonymous Coward · · Score: 1

    Considering Potterings track record writing shoddy software I can't say I'm surprised. After all it's been quite clear for a long time that he has all the qualities someone writing code like that shouldn't have, like being arrogant, ignorant, careless and cavalier and none of the ones you'd want to see.

    What I'd really want to know though is; Who the hell, considering his track record with PA et al, thought it was a good idea to let him loose on system critical components? But maybe the more pertinent question is, why is anyone going anywhere near it? I know, "because Red Hat", but that doesn't explain why there apparently isn't anyone there with a working brain. Is it really that important to become "not Linux/UNIX" so you can sell training courses, support, certifications etc? Depressing.

    I think we're going to see a lot more critical bugs in the lennartware parts of the system, and if I were a black hat that's where I'd start looking.

    1. Re:How unexpected. by gweihir · · Score: 1

      I have pretty much the same question. I do not go anywhere near that failure of a software project myself, and neither does my employer. But most people do not seem to have a clue what the problem is and that is a rather serious problem in itself.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    2. Re:How unexpected. by Opportunist · · Score: 1

      and if I were a black hat that's where I'd start looking.

      Say what you want, I call it job security. Now that MS gets its act together and their OS becomes nearly useable, now that even Adobe starts to catch on that buffer overflow doesn't mean that the toilet is backing up, we in security have to look for new stuff we can wank over, I mean, hold talks about at security conferences.

      And this is a gold mine.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    3. Re:How unexpected. by Anonymous Coward · · Score: 0

      I used to have a bunch of Linux machines. Nowadays I have only one Linux machine. The rest are all Free/OpenBSD. Linux is just too cavalier lately.

  14. Old News by Anonymous Coward · · Score: 5, Interesting

    This is old news, why don't you publish that story how "Principal systemd developer refuses to acknowledge serious security vulnerability where processes that request to be run as unprivileged user, run as root because Lennyboi does NOT like them start with zeroes! And POSIX be damned, Lenny knows better!"

    1. Re:Old News by AmiMoJo · · Score: 2

      Okay, let's look at this bug.

      It requires existing root access in order to create a new user. So if someone exploits it, you are already fucked.

      You say it goes against POSIX. This is true, but so does Linux. So do some of the GNU tools. Somehow that's okay, because strcmp("systemd", "linux") returns a non-zero value in your mind.

      What is your argument that it shouldn't be fixed in the various user account management tools rather than in systemd?

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:Old News by Anonymous Coward · · Score: 1

      Well, POSIX allows usernames that start with a digit. In fact, systemd reads it as a uid. If you would make a used called 1user it would be executed under uid 1, whoever that may be. Seems harmless, you need to be root to exploit it, however some continuous integration systems have a user account named 0day, which is used to run the latest test build. This has accidentially happened as root due to this bug.

    3. Re:Old News by Bing+Tsher+E · · Score: 1, Flamebait

      Are you a paid 'Red Hat Community Manager'?

      Because you stick like shit to all the most poignant criticisms on here about systemd.

      "You're doing a hell of a job, Brownie."

    4. Re:Old News by Anonymous Coward · · Score: 0

      This is old news, why don't you publish that story how "Principal systemd developer refuses to acknowledge serious security vulnerability where processes that request to be run as unprivileged user, run as root because Lennyboi does NOT like them start with zeroes! And POSIX be damned, Lenny knows better!"

      Unlike his website...

    5. Re:Old News by Anonymous Coward · · Score: 0

      Somehow that's okay, because strcmp("systemd", "linux") returns a non-zero value in your mind.

      And in your mind it does not?
      Guess that's all we need to know about systemd guys.

    6. Re:Old News by Anonymous Coward · · Score: 2, Insightful

      You're too stupid to understand this. The vulnerable vector is not someone creating a user on your system. The vulnerable vector is not someone installing a unit file without your knowledge.

      The vulnerable vector is in TIRED admin typing User= and accidentally starting it with 0. The vulnerable vector is process intended to run unprivileged, running as root.

      AND WHY?

      ONLY BECAUSE the systemd developer is too arrogant to admit his little shit of a product parses values wrongly.

      * Forget POSIX
      * Forget whether useradd or shadowutils may or may not allow creating usernames that start with 0
      * Forget politics, reasons, distros
      * Forget EVERYTHING except ONE little thing: "0string" is ** NOT ** a valid integer value, so don't treat it as one.

      Your shitty little parser is WRONGLY parsing the value of User= field. It does not take the WHOLE value in consideration but only the numeric part of it. There is not a single situation where you'd want your program to do that. Absolutely no excuse, no use case, nothing, where "0day" is taken AS A VALID NUMBER 0, regardless how it got there.

      garbage-in = garbage-out. That makes systemd a GARBAGE DISPENSER, because it allows garbage-in without validating it.

    7. Re:Old News by Anonymous Coward · · Score: 1

      IF IT DID take the whole value into consideration then it would realize that the value given is NOT 0, but "0day" and would conclude (arrogantly or not) that "0day" cannot be a valid username.

      What does systemd do when you put User=inexisting-user ?

      It FAILS, it does not start the process. So, parsing "0day" as string and not a number it would conclude that "0day" cannot possibly exist, and it would FAIL.

      THAT is acceptable (if you ignore POSIX). Running as root is NOT acceptable.

    8. Re:Old News by aardvarkjoe · · Score: 2

      It requires existing root access in order to create a new user. So if someone exploits it, you are already fucked.

      Not really. A really obvious way to exploit this: say someone manages to compromise the repository of a project that has a decent chance of being run by a "0day" user (apparently fairly common in some circles.) They add some code that opens a backdoor if the tool is run as root. A user downloads this software, installs it as the "0day" user, and then installs a completely innocuous unit file to start the tool as that user. At this point, the user would expect that damage would be limited to the user he had created if there is malicious code in the tool, but because Poettering doesn't believe in fixing problems, instead he just gave root access to the malicious tool.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    9. Re:Old News by AmiMoJo · · Score: 1

      So in order for this to work, we have to have a security outfit running as user "0day", a username that is illegal on Linux but apparently some buggy tools allow, and a compromised project... And somehow this is the fault of systemd, not the broken tools that allow you to create illegal user names.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    10. Re:Old News by Anonymous Coward · · Score: 0

      How is the username 0day illegal on linux? Are you paying attention?
      Also, what's with those "buggy tools"? You seem to not know the first thing about Linux. The userdb is a fucking plaintext file. What are you proposing, patching vi so it doesn't allow the first line to start with a number if the file edited happens to be /etc/passwd or /etc/master.passwd^Wshadow?

    11. Re:Old News by aardvarkjoe · · Score: 1

      we have to have a security outfit running as user "0day", a username that is illegal on Linux but apparently some buggy tools allow,

      You're asserting this over and over again with no proof. Point us to the documentation that shows that such usernames are illegal.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    12. Re:Old News by chihowa · · Score: 2

      "0day" is not an illegal username. You don't even any need "tools", beyond a text editor, to legitimately and legally create users on Linux.

      Systemd only considers it to be illegal because they don't want to bother correctly parsing and validating strings and yet still want to use a common field for string or integer input values.

      --
      If you want a vision of the future, imagine a youtube comments section scrolling - forever.
    13. Re:Old News by AmiMoJo · · Score: 1

      http://www.unix.com/man-page/l...

      See your NAME_REGEX in /etc/adduser.conf

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    14. Re:Old News by aardvarkjoe · · Score: 3, Informative

      That page says:

      It is usually recommended to only use usernames that begin with a lower case letter or an
                    underscore, followed by lower case letters, digits, underscores, or dashes. They can end
                    with a dollar sign. In regular expression terms: [a-z_][a-z0-9_-]*[$]?

      Note the use of the word "recommended." Not "required", or "mandatory." You're misinterpreting a convention as an actual rule.

      --

      How can we continue to believe in a just universe and freedom to eat crackers if we have no ale?
    15. Re:Old News by Qzukk · · Score: 2

      where "0day" is taken AS A VALID NUMBER 0,

      That's not the error here, the error here is that "0day" is ignored, leaving the service to run as the default user "root". It could just as easily been "3day" or "nоbody" and the service would have run as root.

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    16. Re:Old News by Anonymous Coward · · Score: 0

      It requires existing root access in order to create a new user. So if someone exploits it, you are already fucked.

      By that logic, you should give up on security altogether. Exploits, by their very definition, are about doing things you don't have the access for. In this case, maybe ALL the attacker has is a way to create user accounts. Now this becomes a privilege escalation that gives someone who could merely gain user-level access before root access now.

      You say it goes against POSIX. This is true, but so does Linux. So do some of the GNU tools. Somehow that's okay, because strcmp("systemd", "linux") returns a non-zero value in your mind.

      Yes, it goes against POSIX. Yes, Linux and GNU also go against POSIX at times. Systemd goes against EVERYTHING. It ignores precedent and expected behavior in favor of whatever fever dream Poettering is having at the moment. If it worked WITH everything instead of trying to enforce Lennart's ideals of system behavior on everyone else (and wasn't terribly broken), it would have been welcomed with open arms.

      What is your argument that it shouldn't be fixed in the various user account management tools rather than in systemd?

      The user management tools aren't the things granting root access, systemd is, and is therefore the culprit to be fixed.
      GNU/Linux systems had no issue with this before systemd. Therefore, it is the element introducing the incompatibility.

      What is your argument that the rest of the world needs to be rewritten to coddle Lennart's broken nightmare?

    17. Re:Old News by serviscope_minor · · Score: 1

      Double also, Linux as a system isn't really defined by anyone. The only people who get to say anything official about Linux itself are the kernel people, as it were. There really isn't an official truth for the userland tools.

      --
      SJW n. One who posts facts.
    18. Re:Old News by sjames · · Score: 2

      I don't know about AC, but I can name a few reasons. First, systemd is the noob, it's up to it to fit in with existing systems which may already have user names it doesn't like. Or it should at least not create an accident waiting to happen (that is, at least fail clean).

      Second, any software should be liberal in what it accepts and strict in it's output. I suppose that's an argument that it be fixed in systemd AND the other utilities. Robust systems should deal in a reasonable way with illegal but not actually impossible situations.Surely system init should be robust.

    19. Re:Old News by chihowa · · Score: 1

      Linux, the kernel, doesn't care about usernames at all and only deals in UIDs, which would be the most portable and simple way for systemd to handle this, using the name-to-UID mapping found in /etc/passwd.

      This talk attributes the picky behavior of adduser to working around other flaky userland tools' conventions, like chmod's "username.groupname". The no leading numbers rule is certainly not written anywhere that I've found besides the adduser manpage.

      As far as POSIX is concerned, usernames can be any of the portable character set [A-Za-z0-9_-.] but can't start with a hyphen.

      3.426 User Name
      A string that is used to identify a user; see also User Database. To be portable across systems conforming to IEEE Std 1003.1-2001, the value is composed of characters from the portable filename character set. The hyphen should not be used as the first character of a portable user name.

      --
      If you want a vision of the future, imagine a youtube comments section scrolling - forever.
  15. Re:The real problem is systemd haters by Gravis+Zero · · Score: 1

    the fuck are you talking about? what does politics have to do with shitty software development?

    --
    Anons need not reply. Questions end with a question mark.
  16. No, its not a pretty decent idea by Viol8 · · Score: 5, Insightful

    "centralized place to optimize startup, management and interconnectivity of all kinds of services."

    Sorry, thats not how its done in Unix. We don't want a huge monolithic application as init since that brings a huge attack surface to the most important process in the OS, not to mention a bug in a service that doesn't belong there potentially bringing down the entire system.

    1. Re:No, its not a pretty decent idea by Tranzistors · · Score: 3, Insightful

      We don't want a huge monolithic application as init since that brings a huge attack surface to the most important process in the OS

      Perhaps we need to get rid of Linux kernel as well. But seriously, to reduce the attack surface, just disable unused services (the article even points out that Debian has systemd-resolved disabled by default). systemd is modular.

    2. Re:No, its not a pretty decent idea by Barsteward · · Score: 1

      Where do you think this service lies? Do you think its running in PID1? It might be a good idea to find out where systemd_resolved runs in the system. No matter how many time people peddle the lie that "systemd is monolithic", it does not make it true. If you don't want a monolithic software on your system, you'd better remove the kernel and install Hurd.

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    3. Re:No, its not a pretty decent idea by cheesybagel · · Score: 1

      Disable unused services? Like DNS in this case? Good luck using your computer to browse the web without it.

    4. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 5, Funny

      systemd is modular.

      Yes, so modular.

    5. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      Isn't resolved just a clone of Windows' "DNS Client" service, a global lookup cache? DNS queries work just fine without it.

    6. Re:No, its not a pretty decent idea by SharpFang · · Score: 1

      There was a centralized place to perform startup: init. There was no optimization of startup at all. Optimization is arguably desirable, and it makes sense to include it.

      There was a zoo of interconnectivity methods that everyone hated, and it broke at a lot of points. A unified interconnectivity hub is desirable. Also, the process of optimization of startup required it. (although it *might* be done as a separate service.)

      Management was also a loose recommendation of what boiled down to including start), stop) options in the init scripts, sometimes adhered to, sometimes not really.

      There was also the dependency tree, which was non-obvious, easy to break and hard to fix (plus far from unified) - the dependencies were usually embedded in the dependency tree of whatever package distribution system given distro used, and once deployed, finding what requires what usually boiled down to "disable something and see what else breaks." A dependency tree within the startup system is a good thing.

      But that's it. Dependency, startup optimization, management (start/stop/reload on demand, bring system to given state/runlevel.) And interconnectivity, which could be delegated to a separate demon. This is a good set for a unix demon should be able to do. All the rest of systemd does is bloat.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    7. Re: No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      The kernel do one thing (kernel stuff) and do it well. Unlike windows, it doesn't run wndowing in the kernel. Everything that can be delegated to userspace, is delegated.

      While the kernel may compile to a monolithic file, its internal organization is anything but monolithic. There is clear separation between various drivers and filesystems. It is object-oriented in this respect.

    8. Re:No, its not a pretty decent idea by Viol8 · · Score: 1

      Bash scripts have one syntax and bash is pretty well debugged now.

    9. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      True, but when that surface drops logging messages so often, is that really better?

    10. Re:No, its not a pretty decent idea by TheRaven64 · · Score: 1

      Perhaps we need to get rid of Linux kernel as well.

      Well, that would make the BSD advocates happy...

      More seriously, the biggest Linux vendor (Google) is currently doing that and moving to their Magenta microkernel, which can run a lot of things in userspace at a lower privilege level. Even within the world of monolithic kernels, a lot of things are moving out of the kernel (ironically, for performance reasons: the same reason that they moved in there in the first place). GPU drivers are now almost entirely userspace: the kernel component maps device registers into a process' address space, manages the IOMMU so that memory is shared between the GPU and the process, and then largely gets out of the way. High-end network cards have done this for a while, but NetMap (in the default kernel on FreeBSD, available as patches for Linux) lets most NICs expose send and receive queues directly to userspace so that you can bypass the kernel network stack for very high performance networking with specialist workloads (there's a good chance that the last time you queried a DNS root server the response came from one of these). FreeBSD and XNU do low-latency sound mixing in the kernel, but most other systems do it in userspace. Most *NIX systems have a ugen device type that makes it easy to implement userspace drivers for USB devices and these are commonly used for MIDI and a number of other device types (for example, webcamd uses this to implement a load of webcam drivers in userspace). FUSE has allowed moving some filesystem drivers out of the kernel.

      Some drivers are moved out because they don't care about performance (the computer is so much faster than the device that latency from an extra context switch doesn't matter) and the isolation is a win. Some are moved out because they really care about performance and the extra context switch to the kernel costs too much, and they're typically very complex so moving the untrusted code into userspace makes more sense. In both cases, there's a general trend towards having less stuff in the kernel.

      --
      I am TheRaven on Soylent News
    11. Re:No, its not a pretty decent idea by thegarbz · · Score: 1

      Disabling a service in systemd does not cause the entire system to stop using it and does not prevent you installing an alternative. Just like that small virtually unknown distribution called Debian that the GP referenced.

    12. Re:No, its not a pretty decent idea by thegarbz · · Score: 1

      Sorry, thats not how its done in Unix.

      You'll be happy to know that systemd doesn't run on Unix. Also most computer users don't give a shit about philosophy[1]

      1: See Microsoft end users.

    13. Re:No, its not a pretty decent idea by segedunum · · Score: 2

      'Unix' is used in this case to reference a particular philosophy of many small, decoupled systems doing specific jobs. Linux systems, and other 'Unix' derivatives, have followed that philosophy. systemd is a very sharp departure.

    14. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 1

      Well, that would make the BSD advocates happy...

      No, not at all. We need Linux, if only to keep people like Poettering and the whole "it's shiny, we need it!" crowd away from BSD.

    15. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      Love it when systemd is compared to the kernel as if that is a defense of systemd's bloat.

      Instead one should stop to wonder it is worth having a second kernel in userland that is a few decades less tested, but still second guessing the actual kernel in all manner of ways.

    16. Re:No, its not a pretty decent idea by cstacy · · Score: 1

      We don't want a huge monolithic application as init since that brings a huge attack surface to the most important process in the OS

      Perhaps we need to get rid of Linux kernel as well.

      Yes we ought to.
      Legacy inertia, and efficiency, are the reasons that getting rid of monolithic kernels has not been popularized.
      Both of those problems can be overcome with time and resources.
      As compartmentalization and virtualization become even more important in the future, that's how things are going to shake out.

    17. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      That gambit already didn't work. pkgng (bloat, too clever by half, unstable, arrogant developers, massive mishandling, second system effect), openntpd (doesn't actually do ntp, but sntp; the devs think that's a feature because they're security nerds, not time nerds), and a bunch of rewriting other things (mail, dns, etc.), the whole n:m boondoggle, so many other things. Typically all well-intentioned but in practice only good things if you look at it just so, IOW, good for the devs, not necessarily for the world.

      FreeBSD has been shedding its old greybeards because of various idiocies that amount to making the thing unfit for serious production use, but core didn't notice because the stream of linux refugees has drowned out the signals. To my way of thinking there is currently no *BSD worth the trouble. There might be a linux, if I can find it, and stomach lack of basic needs like a decent ifconfig. Perhaps it's time for a greybeard distro, though there already are too many remixes upon remixes of distributions around.

      It wouldn't be wrong to say it's because I'm getting older. But it would be an incomplete answer, for in this aging is actually a boon-and-curse: I grow to see further and farther, and it becomes obvious to me that things that seemed sufficient yesteryear no longer are. And it also becomes clear that the *BSDs have suffered from a, well, brain-drain, in this regard. Some never had anything but tunnel vision, but some used to be better, a lot better. The question then becomes, but are they still good enough? And I don't think so.

      Nor is linux without, and certainly not with, systemd or any other poetteringware, for that matter. Nor windows. And with that, there's nothing close to the mainstream left that counts as usable.

    18. Re:No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      systemd is modular

      It's modular if it's possible to write replacements for individual modules, with reasonably stable interfaces. Are there any competing implementations for specific modules of systemd, that can interoperate with the rest of it?

    19. Re: No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      By using a systemD based linux distro you are saying that you do

    20. Re:No, its not a pretty decent idea by strikethree · · Score: 1

      Perhaps we need to get rid of Linux kernel as well.

      Funny that you should mention that... The main difference (re monolithic) between SystemD and the Linux kernel is that the Linux kernel is generally stable and well written... but yeah, we actually do need to get rid of the monstrosity that is known as the Linux kernel. Let me know when you find or create something that is a worthy successor please.

      What? Did you think Linux was a religion? lol

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    21. Re:No, its not a pretty decent idea by gweihir · · Score: 1

      Very much this.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    22. Re: No, its not a pretty decent idea by Anonymous Coward · · Score: 0

      Sysvinit are all one-shots, there's no constantly running binary with 100K's LOC presenting a variety of services to present a large attack surface, which would be systemd.

    23. Re:No, its not a pretty decent idea by gweihir · · Score: 1

      Microkernels have been tried. At this time, they are inferior in several regards, except for special situations. When that changes, the Linux Kernel will likely undergo some major architectural revision. The same is not true for init-systems. You seem to have no clue what you are talking about. Pretty typical for the systemd-proponents, I have to say. All belief, no facts.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    24. Re:No, its not a pretty decent idea by SharpFang · · Score: 1

      The idea with microkernels is that almost all modules are optional, loosely coupled, and the system loads only what it needs.

      Systemd, under guise of modularity, is composed of a set of tightly tied modules which have so many cross-dependencies between each other the whole thing crashes and burns if you remove a single one.

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    25. Re:No, its not a pretty decent idea by SharpFang · · Score: 1

      instead of dozen towns to surround with city walls, you have a single continent to secure...

      --
      45 5F E1 04 22 CA 29 C4 93 3F 95 05 2B 79 2A B2
    26. Re:No, its not a pretty decent idea by jon3k · · Score: 1

      systemd can either be modular or "one place you need to secure". So, systemd proponents, which is it?

      How it's structured between modules when there are no alternatives to those modules and they are all interdependent on one another makes that a philosophical debate, not a practical one.

    27. Re:No, its not a pretty decent idea by JonJ · · Score: 1

      That gambit already didn't work. pkgng (bloat, too clever by half, unstable, arrogant developers

      Yes, because if it's one thing the BSD camp lacked, it was arrogant developers.

      --
      -- Linux user #369862
    28. Re:No, its not a pretty decent idea by phantomfive · · Score: 1

      Also most computer users don't give a shit about philosophy[1]

      May those people remain far away from us.

      --
      "First they came for the slanderers and i said nothing."
    29. Re:No, its not a pretty decent idea by cheesybagel · · Score: 1

      That is only until it becomes mandatory much like systemd itself.

    30. Re:No, its not a pretty decent idea by thegarbz · · Score: 1

      Systemd is mandatory? That must be news to the many distributions which don't use it.

    31. Re:No, its not a pretty decent idea by Tranzistors · · Score: 1

      My point was that systemd is modular. It is an umbrella term that encompass init system itself, logind, journald, udevd and other daemons and utilities. I personally don't care much about monolith vs. modular meta discussion, since those are vague terms to begin with and each approach has problems of its own, therefore I tend to discard opinion that can be summed up with “project X should be modular/monolith”, unless they have actually worked with the software and the architecture has limited them somehow.

      That being said, have you written software for systemd or used its API? If so, what were the issues that would have been solved by further modularization? Have you contacted systemd team (yes, there are many) about the issues? If so and they didn't buy your case, what were the reasons for rejecting proposal?

      If you have had issues with administrating machines running systemd, what issues were there because of “monolith design”? The parent “Viol8” was concerned with attack surface, but in this particular case the surface attack could be easily reduced by disabling the service.

    32. Re:No, its not a pretty decent idea by segedunum · · Score: 1

      Alas, many people have warned of these types of things surfacing with systemd's sprawling feature creep. This is only going to get worse, despite your desperate protestations. The code, and the attitude towards security problems, is exactly the same regardless of where it sits in systemd's monolithic mess.

  17. not the init, and it doesn't affect Debian by Phil+Hands · · Score: 4, Informative

    The summary misleadingly opens with "systemd, the init system", whereas what we're talking about is "systemd-resolved, a part of the SystemD project" (or some such -- I'm a bit vague about the capitalisation TBH).

    Anyway, the point is that this bug is not in the init code.

    On Debian, we don't even execute this code by default.

    So, if you see red and start screaming whenever you see the sequence of characters: s y s t e m d then I'm sorry if you're still reading this, but perhaps you should consider calming down long enough to notice that systemd is both the name of the init program, and the project that also includes a lot of other bits and pieces that are not even needed quite often, and can generally be run without having systemd running as init.

    --

    Debian: GNU/Linux done the Linux way
    1. Re:not the init, and it doesn't affect Debian by Viol8 · · Score: 4, Interesting

      "that are not even needed quite often, and can generally be run without having systemd running as init."

      I don't think anyone is in any doubt that once systemd has the option to run a service most of the bleeting distro maintaining sheep use it. It won't be long before it becomes the default resolver on most of them.

    2. Re:not the init, and it doesn't affect Debian by Barsteward · · Score: 1

      You are not expecting the trolls to understand that, are you?

      --
      "The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
    3. Re:not the init, and it doesn't affect Debian by KiloByte · · Score: 5, Informative

      On Debian, we don't even execute this code by default.

      But Ubuntu does. And the other security hole mentioned in the article does apply to Debian.

      As for systemd being more than just an init: the problem lies in it replacing a large set of modular projects with an entangled blob. For example, vdev is an (experimental for now) replacement for udev that fixes a number of design problems, yet good luck using it on a systemd system.

      As for running systemd without it being init: systemd-shim is dead, and it was flaky to the point of uselessness even while it lived. You need to recompile the Utopia stack to enjoy basics we used to take for granted like being able to shutdown or suspend from a GUI.

      People have tried carving out pieces of systemd to use them separately, like uselessd, yet all such attempts I know of ended in failure because of systemd's blobbiness.

      --
      The creatures outside looked from Alt-Right to Antifa; but already it was impossible to say which was which.
    4. Re:not the init, and it doesn't affect Debian by Anonymous Coward · · Score: 0

      OMG, your irony is going to make me...... UHHHH.... OHHHH, YEAH, Barsteward......

      Whew....

      Excuse me, I need to change my shorts.

    5. Re:not the init, and it doesn't affect Debian by Anonymous Coward · · Score: 1

      elogind is alive and well

  18. Clearly by Anonymous Coward · · Score: 1

    This is why you shouldn't use Windows when... OH WAIT.

  19. I expect nothing less from Poettering by Anonymous Coward · · Score: 2, Insightful

    Remote exploits in critical system services? I expect nothing less from the PulseAudio creator.

    If you're not familiar with smoke any mirrors from the SystemD PR king, then perhaps these inherent flaws in his projects comes as a surprise to you. But for years a handful of people tried to put the brakes on Poettering and his cronies from hijacking Linux and turning it into his egotistical vision of desktop Unix.

    We have failed.

    1. Re:I expect nothing less from Poettering by thegarbz · · Score: 1

      We have failed.

      Oh please. This didn't even qualify for a catchy name that other Linux bugs get. Give yourself a hug and pull yourself together.

  20. Reductio ad absurdum by Anonymous Coward · · Score: 0

    That's a Reductio ad absurdum argument. Linux Kernel is a minimum block of code to perform a function, maintained by a large block of people, systemd should be the same.

  21. I don't think anyone is asking for that. by Anonymous Coward · · Score: 1

    Even though systemd is built as a pile of horseshit to make Linux more like Windows for system builders (not maintainers), this is an issue which any program could have. If some fixing of this causes more bugs elsewhere in systemd to be created as a consequence of fixing this one, THEN that is a good reason to tar and feather poettering, because the design itself is creating bugs that could have been avoided if the system had been designed without monolithic integration. That said, if finding or fixing this bug was made harder because of the deliberately obscurant and monolithic design of the system, that would institute another reason for getting out the feathers and adhesive.

    1. Re:I don't think anyone is asking for that. by Type44Q · · Score: 1

      feathers and adhesive

      Ever gotten glue on your hand? Ever gotten hot glue on your hand?? It's called tar for a fucking reason.

  22. Better distro suggestions? by AHuxley · · Score: 1

    Anyone like to list some OS that are can help avoid all this?

    --
    Domestic spying is now "Benign Information Gathering"
    1. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      Windows 10 / macOS.

    2. Re:Better distro suggestions? by fnj · · Score: 5, Insightful

      That's easy. FreeBSD! It is POSIX, UNIX philosophy through and through, and not only completely free of Poetteringitis; it's free of all immature and incompetent vanities and warped design crazes.

    3. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      Alpine Linux, if you're okay with minimalism. It uses OpenRC instead of SystemD as init system, BusyBox instead of GNU CoreUtils, and Musl instead of Glibc. In total that makes for a very small and efficient distribution, which runs great on servers and embedded systems, but can be used for desktops too.

    4. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      It also is sort of the Linux among the BSDs, so transition shouldn't be all too hard.

    5. Re:Better distro suggestions? by Opportunist · · Score: 1

      IIRC BSD looks quite promising the more I look at it. Together with the features of ZFS... I still don't get everything about it (and if this was Slashdot a decade ago I'd add "but I'm sure there's someone around who does and can write a lengthy novel about it") but it looks like something I could move to in the foreseeable future.

      --
      We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
    6. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      Anyone like to list some OS that are can help avoid all this?

      All Systemd using Linux distros except Ubuntu. The bug was in an experimental module that is disabled by default because it isn't ready for use.

    7. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      Gentoo Linux
      Void Linux
      Slackware

    8. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      FreeDOS!

    9. Re:Better distro suggestions? by Anonymous Coward · · Score: 1

      Sure!

      Gentoo supports its own OpenRC by default, but has a systemd-specific profile and a general profile for other inits like runit, s6, daemontools+sysvinit, etc. It's one of the few distros left that respects the choices of the user. Other forks of it (Exherbo, Calculate, Sabayon, Funtoo) are similar in their defense of choice and putting the user in the driver's seat.

      Devuan is a continuation of the Debian project that explicitly forbids systemd and will do nothing to support it. They recently hit a 1.0 release, so they're gaining more steam and momentum than naysayers assumed.

      The BSDs do not have Linux cgroups, so they don't support systemd, which is Linux-only. I do believe there was talks of creating a tool that would work with systemd unit files, but I've not heard much about it since then.

      More can be found at:

      http://without-systemd.org/wiki/index.php/Main_Page#Free_and_Open-Source_.28FOSS.29_operating_systemswithout_systemd_in_the_default_installation

      But generally, if a distro is popular, it's going to run systemd because Mr. Poettering also happens to be a GNOME Foundation member and pushed systemd as a blessed dependency:

      https://mail.gnome.org/archives/desktop-devel-list/2011-May/msg00427.html

      And here's proof of that functionality's agenda, in code, a year later:

      https://cgit.freedesktop.org/systemd/systemd/commit/?id=6bae23a0388dd077fee99e83e161d297c3e2b768

      Also note that he has openly trolled Gentoo developers in the initial push for kdbus, saying "Gentoo folks, this is your wake-up call."

      https://lists.freedesktop.org/archives/systemd-devel/2014-May/019657.html

      Without hard deps from GNOME, KDE, and friends, systemd would be on an even playing field with other inits. It was pushed, and pushed hard. The simple fact is no user-facing software should give a shit what init started the system.

      No shill can deny the citations, so spread'em and show the world that there *was* an agenda. Particularly, a Red Hat agenda to commandeer Linux from the bottom up. When confronted, shills will deflect and claim that the only legitimate conversation is technical. They know they're crooked, and attempt to control the conversation to avoid discussing their conduct. The free software world should understand by now that social merit is equally important to technical merit.

    10. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      I forgot to add: the last link was the impetus for Gentoo's eudev, which is udev that's been separated from the systemd project and receives backports when the codebase is actively improved upstream. So systemd not only pushes other software out of its way, it forces users to fork in order to maintain existing functionality.

    11. Re:Better distro suggestions? by alkyl · · Score: 1

      OpenBSD or FreeBSD. I switched my servers to one or the other (depending on the tasks) during the last couple of years and it's working great. Documentation is top notch. Not going back.

    12. Re:Better distro suggestions? by Anonymous Coward · · Score: 0

      -MX Linux (I use this)
      -antiX (shares a lot of devs with MX)
      -Devuan (Debian without systemd)

      But really, just go to Distrowatch, click Search, and then on the Init Software pulldown, choose "not systemd".

    13. Re:Better distro suggestions? by drinkypoo · · Score: 1

      It is also free of vmware and its nvidia support is crap. If you are the freer-than-free type and refuse to use anything with good performance, then this is not going to be a problem for you, but for many people it is a show-stopper.

      Also, Linux runs on many, many more devices these days than all the *BSDs put together, even including netbsd. Odds are very good that you're going to have some Linux in your house anyway...

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    14. Re:Better distro suggestions? by strikethree · · Score: 1

      FreeBSD! .. it's free of all immature and incompetent vanities and warped design crazes.

      That is not entirely true. There is a very strong "Social Justice Warrior" element within FreeBSD and all it would take is for FreeBSD to hit critical mass and those SJW-type people will feel validated and go batshit crazy. Dragonfly BSD or OpenBSD is the way to go... NetBSD is always a further option. :)

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
  23. Because it's Red Hat by Anonymous Coward · · Score: 0

    Red Hat, due to their US centric model and their use as "de facto Linux for business", they get a shit ton of cash and they therefore have a large number of people working for pay on Linux.

    This is a great thing.

    What is not great is that RH write what RH desire most to have. What makes that unacceptable and the problem here is that RH can move the entire ecosystem with their power. This is, in effect, the same thing as Microsoft, with RH being Microsoft and Linux being "Desktop Operating Systems". Like MS, there is no actual reason why any one decision is bad, and there are some good ideas, but the problem is that the good ideas aren't all the ideas and the bad ideas do not get challenged because nobody can afford the time and effort to keep changing them or proving the badness of the idea.

    What makes it bad for Linux is that this idea of systemd is how RH can make distributions easier to make and proper running of the system is not something RH care about. Both for the reasons of your system is looked after by you, so why optimise it? And also that if you are a business, the more work needed, especially if they are in a special position to be able to do it, the more revenue they get from the OS.

  24. One has to hand it to the systemd team by gweihir · · Score: 1

    Remote exploitable bugs in core-Linux are incredibly rare. The systemd team is really going where nobody else has gone before. That is not a good thing at all, of course, because if you do this, you need to have excellent skills, which the systemd team most decidedly does not have. Fortunately, none of my machines or those of my employer needs to be patched, because we have banned systemd early on due to the massive KISS violation it represents. Nobody here is surprised by this bug.

    --
    Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    1. Re:One has to hand it to the systemd team by Ash-Fox · · Score: 1

      Fortunately, none of my machines or those of my employer needs to be patched, because we have banned systemd early on due to the massive KISS violation it represents.

      You wouldn't be using the Linux kernel either, since that would be a "massive KISS violation", so what do you run?

      --
      Change is certain; progress is not obligatory.
    2. Re:One has to hand it to the systemd team by gweihir · · Score: 0

      As KISS basically says "make it as simple as possible, but not simpler", the kernel is actually not a KISS violation. But I am not surprised that you lack the mental capabilities required to understand that. Some actual insight required here, not just mindless fandom.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    3. Re:One has to hand it to the systemd team by Ash-Fox · · Score: 1

      As KISS basically says "make it as simple as possible, but not simpler", the kernel is actually not a KISS violation.

      The KISS principle is "Keep It Simple Stupid". There is plenty of unnecessary complexity in the kernel, just look at udev's implementation for one.

      --
      Change is certain; progress is not obligatory.
    4. Re:One has to hand it to the systemd team by Anonymous Coward · · Score: 0

      I don't know about the original poster, but in my case I use Windows. No monolithic kernel on my system.

    5. Re:One has to hand it to the systemd team by F.Ultra · · Score: 1

      Does there exist any DNS resolver out that that have not had a single remote exploit? I would say that systemd-resolved is in "good" (should really be "bad") company there and certainly not where nobody else have gone before. A few days after the bug in systemd-resolved where shouted all over the Internet there where a new CVE issued for bind but no one seams to have been as upset about that.

      And no, systemd-resolved is not core-Linux, not more than dnsmasq or bind is.

    6. Re:One has to hand it to the systemd team by gweihir · · Score: 1

      Networking is core-Linux. As for any UNIX or UNIX-like system.

      --
      Most ACs are not even worth the keystrokes to insult them. Be generically insulted by this and ignored otherwise.
    7. Re:One has to hand it to the systemd team by F.Ultra · · Score: 1

      If so then they are far far long away from "where nobody else have gone before".

  25. What a load of bollocks. by Anonymous Coward · · Score: 5, Insightful

    The design of systemd is that they all adhere together. Claiming this is somehow not systemd is only slightly less silly than claiming it's not systemd because it's in one of the source files not called "systemd.c".

    1. Re:What a load of bollocks. by Anonymous Coward · · Score: 1

      The design of systemd is that they all adhere together. Claiming this is somehow not systemd is only slightly less silly than claiming it's not systemd because it's in one of the source files not called "systemd.c".

      Nonsense. Systemd is extremely modular, and this is a module specifically not installed normally because it isn't ready.

    2. Re:What a load of bollocks. by Anonymous Coward · · Score: 0

      NONE of the systemd modules are "ready". Some of us don't like running alpha-level software on our production boxes.

    3. Re:What a load of bollocks. by Anonymous Coward · · Score: 0

      Everything's agile! Get with the times!

  26. No accident by Anonymous Coward · · Score: 0

    This was no accident. This was NSA/CIA work. Plain and simple.

  27. In something as trivial as an init system? by Anonymous Coward · · Score: 0

    This must be fake. No code could be as complex in an init system as to hide a bug like this for several years...

  28. The second one by sad_ · · Score: 5, Informative

    The second 'bug' mentioned is far more crazy. The unit file mentions a user that doesn't exist (well, in tfa it is wrongly parsed, even worse), so the default action is to continue as root (instead of supplied user). And this is a good idea because... ??

    Why can't this unit action just fail? Wouldn't that be far far better then just deciding to use root, this might cause all kinds of problems. I wonder which other nice surprises and default fall-back action are encoded.

    --
    On a long enough timeline, the survival rate for everyone drops to zero.
    1. Re:The second one by guruevi · · Score: 0

      In systemd, if a unit fails, the ENTIRE init system fails and your system boots in emergency mode.

      --
      Custom electronics and digital signage for your business: www.evcircuits.com
    2. Re:The second one by dbIII · · Score: 3, Insightful

      In systemd, if a unit fails, the ENTIRE init system fails and your system boots in emergency mode.

      And that is worse than allowing full escalation to root in what way?
      The problem with that development team is a focus on single user laptops and desktops where it doesn't really matter if the user has full root access. They should be paddling in the shallow pool of MS Windows 10 instead of changing something people want to use for servers.

    3. Re:The second one by F.Ultra · · Score: 1

      Full escalation? You don't start home written unit files in order to contain escalation attacks.

    4. Re:The second one by Qzukk · · Score: 1

      Wow, I'll have to keep that in mind when I'm writing custom unit files for our company's services. No pressure!

      --
      If I have been able to see further than others, it is because I bought a pair of binoculars.
    5. Re:The second one by Anonymous Coward · · Score: 0

      IN-CRED-I-BLE!!!!

      It's better to leave your system open to running with latent wonkiness by having a service run with an illegal configuration--or worse, with a security vulnerability--just because it is more important to have your system *appear* to boot up flawlessly?

      In systemd, if a unit fails, the ENTIRE init system fails and your system boots in emergency mode.

      Damn straight! If there is such a glaring error in a unit file, it is far better to have the system to fail to boot--with a useful error message--than to pretend that everything is OK.

    6. Re:The second one by dbIII · · Score: 1

      We are discussing the opposite of containment - we are discussing a newbie mistake (design error not bug) and scope creep that allows escalation.
      It's a bit more fundamental than "home written unit files".

    7. Re:The second one by Anonymous Coward · · Score: 0

      Um, no. It is far better to boot (with a useful error message) than to fail so gracelessly.

    8. Re:The second one by phorm · · Score: 1

      You don't need a home-written unit file, just some other issue that makes a user unavailable on a system (deleted, inaccessible to the underlying authentication mechanism, etc).

      For example, a tomcat/apache/etc host where the tomcat or www-data user is missing.

    9. Re:The second one by Anonymous Coward · · Score: 0

      I also find it hard to believe that systemd is needed because laptops now need to suspend and resume in milliseconds, just like MacOS and Windows. This was the argument, anyway, for needing Systemd and its parallelization features when it first launched.

      So I just tried out RHEL 7.3 which is free for developers. And the last thing on my wishlist is fast suspend and resume while Gnome is still a complete mess - fonts that look worse than something from the 90s, system completely crashes when I have a mistyped directive in a X config file for my mouse, Firefox about 5 years behind what's now default with Safari and even Edge, out of the box.

      Nevermind that basic things like Mp3s, a lot of web videos, non MS Office apps, most games, etc. don't work - they've always been a problem.

      I know other distros do a better job of polishing up the desktop, but if some company is paying millions of dollars for RHEL workstation and desktop licenses, I've gotta assume their poor users feel a bit discouraged.

    10. Re:The second one by dbIII · · Score: 1

      Have you thought this through?
      Which is better in your opinion, not starting a service if there is a problem with a service or running arbitrary code as root?


      Can you see now why it is being called a newbie mistake?

    11. Re:The second one by phorm · · Score: 1

      Not starting the service is the appropriate response in this case, I wasn't arguing that, but rather that it's not just homebrewed unit files that are at risk. A system unit file could also cause privilege escalation if there's issues with the underlying user.

      I'd rather have my webserver crap out on startup than run with root privileges.

    12. Re:The second one by F.Ultra · · Score: 1

      That is not how this bug works though. If the user in the unit file is valid from the viewpoint of systemd but no longer found on the system then the unit will not start:

      Note that if you specify a valid user name but where the user doesn't exist, then we'll instead fail the service on start, because in that case there's not just something wrong with the syntax the service author used but actually something inconsistent on the system, and that should be considered fatal.

    13. Re:The second one by F.Ultra · · Score: 1

      But this is not how it works, in your scenario the unit would not start.

      Note that if you specify a valid user name but where the user doesn't exist, then we'll instead fail the service on start, because in that case there's not just something wrong with the syntax the service author used but actually something inconsistent on the system, and that should be considered fatal.

    14. Re:The second one by F.Ultra · · Score: 1

      But it will only happen on home written unit files. If you where a maintainer and wrote a unit file with the intention of running under user X and #1 ignored the warning in the log and #2 didn't test if it really started as user X then you should think over if you should be a maintainer in the fist place. And with that said how many sysv scripts runs as non root? I would say none does, yes some daemons changes user once spawned if configure to do so but then they would do the very same under systemd regardless of this bug or not.

    15. Re:The second one by phorm · · Score: 1

      Ah, I misunderstood the issue and thus stand corrected:

      Unit file has invalid/missing user: breaks and won't start
      Unit file has valid user (that it doesn't like): runs as root instead

      Still kinda crappy but at least not as dangerous as the first scenario which I had mistakenly imagined might occur.

      Thanks for correcting me.

    16. Re:The second one by F.Ultra · · Score: 1

      I agree that it's crappy (just not as crappy as the millions of slashdot comments have made it out to be) and I do hope and think that this will be fixed. I.e I noticed that the bug on github was not closed but closed from public access which means that people within the systemd project can still discuss it internally and LP is not the systemd dictator since they have several maintainers now a days.

    17. Re:The second one by dbIII · · Score: 1

      So? Isn't it better to have DNS or whatever not start than getting 0wned by a script kiddie?

    18. Re:The second one by F.Ultra · · Score: 1

      Reading comprehension much? I did say that in his scenario the unit would not start. And btw good luck getting 0wned by a script kiddie due to this, if you are then you are the same with sysv since all sysv scripts runs as root.

    19. Re:The second one by dbIII · · Score: 1

      There is an incredibly major difference between calling on a service to start as the proper user via a thing running as root and actually running the service as root like the systemD design fault does.
      I've got no idea why you are defending this newbie mistake of not checking inputs. Even Lennart pointed out that it's not a good thing to happen - I quoted him in another thread where he was annoyed that a user creation "tool" was allowing such a name.

    20. Re:The second one by F.Ultra · · Score: 1

      I'm not defending him, I'm just not trying to play this whole "systemd will eat your children and rape your pets" scheme that the lot of you are playing at the moment. And this is hardly a newbie mistake, the input is checked and acted upon, it's not a mistake but a deliberate design. In your eyes that might make this worse but the thing is that there will not be a single system 0wned due to this. There will not be a single unit file from any distribution with a username that starts with a zero.

    21. Re:The second one by dbIII · · Score: 1

      I'm just not trying to play this whole "systemd will eat your children and rape your pets"

      It's the exact opposite. Criticism, even mild criticism, even when the actual developers see it as a mistake is shouted down time after time by idiot fanboys blowing shit out of proportion. Are you going to act like one of those idiot fanboys or are you going to stop using lines like "systemd will eat your children and rape your pets" in response to a discussion about a real flaw that Lennert also sees as a real flaw?

      the input is checked and acted upon

      It should be but it is not - that is the problem here. Someone else above provided a link to the bug report. Perhaps you should take a look at it and catch up on the subject being discussed instead of some sort of uninformed rant.

    22. Re:The second one by F.Ultra · · Score: 1

      It's the exact opposite. Criticism, even mild criticism, even when the actual developers see it as a mistake is shouted down time after time by idiot fanboys blowing shit out of proportion. Are you going to act like one of those idiot fanboys or are you going to stop using lines like "systemd will eat your children and rape your pets" in response to a discussion about a real flaw that Lennert also sees as a real flaw?

      So you can actually find a single post to this article that contains "mild criticism"?

      It should be but it is not - that is the problem here. Someone else above provided a link to the bug report. Perhaps you should take a look at it and catch up on the subject being discussed instead of some sort of uninformed rant.

      And from the actual bug report: "The 7oz test was perfect. Clearly the issue is not missing validation - in fact, the safe_atou function does exactly what it should..." and "The real bug is that invalid User= directives are skipped rather than rejecting the whole unit."

    23. Re:The second one by dbIII · · Score: 1

      So you can actually find a single post to this article that contains "mild criticism"?

      I wrote several myself as did many others.
      What is it with you fanboys?

    24. Re:The second one by F.Ultra · · Score: 1

      So your claims of "full escalation" was "mild criticism"? Still no one have presented a single credible way to exploit this.

    25. Re:The second one by Anonymous Coward · · Score: 0

      So your claims of "full escalation" was "mild criticism"? Still no one have presented a single credible way to exploit this.

      Why not? I think this would not be mild criticism only if the flaw was easily exploitable.

    26. Re:The second one by dbIII · · Score: 1

      So your claims of "full escalation" was "mild criticism"

      No, it's an term used for a bug where a process ends up running as root when it should not. (https://en.wikipedia.org/wiki/Privilege_escalation)
      Why are you going on and on without even knowing what "full escalation" means? WTF is it with fanboys - get a clue before trying to "correct" people who dare to suggest the object of your fandom is less than perfect.

    27. Re:The second one by F.Ultra · · Score: 1

      Because there have to be an active attack that does this for you in order for it to be full escalation, that you start a service as whatever user by mistake is not full escalation unless that mistake was due to some one tricking you into doing it.

  29. Integrate the Linux kernel by stooo · · Score: 3, Funny

    >> Perhaps we need to get rid of Linux kernel as well.
    Nooo, that's a bit over the top.
    We only need to integrate the Linux kernel into Systemd.

    --
    aaaaaaa
  30. Lennart Pottering by Dunbal · · Score: 1

    Guys, this is just part of using a modern operating system. You're just going to have to get used to getting your system pwned.

    --
    Seven puppies were harmed during the making of this post.
    1. Re:Lennart Pottering by Anonymous Coward · · Score: 0

      Part and parcel of living in a big distro

  31. Meanwhile in Slackware land... by Noryungi · · Score: 4, Insightful

    - "Uh? There has been another issue with systemd? Really?"
    - "Yeah, but anyway, never mind, we have better things to do."
    - "Okay."

    Slackware: no systemd, sane defaults, no weirdo patches.

    Yeah, it works.

    --
    The right to offend is far more important than the right not to be offended. (Rowan Atkinson)
    1. Re:Meanwhile in Slackware land... by slashways · · Score: 2

      As a Slackware user myself; Slackware chooses the right path; and follow the good UNIX practices that gives us better securities expectations. Systemd users choose to follow the M$ model; A 'do everything', but a do everything without any concern for the implementation; and the ‘testability’ of the whole code. This gives us, tasks using useless 'root' privileges, functions that can’t be part of a ‘/bin/init’ but are added anyway to Systemd and so on The good move is to remove Systemd. Systemd has no added values and add only new issues.

    2. Re:Meanwhile in Slackware land... by jmccue · · Score: 1

      As a Slackware user myself; Slackware chooses the right path; and follow the good UNIX practices that gives us better securities expectations.

      As a Slackware user this is true. I need to use a systemd workstation at work and I get the benefit of random freezes, I cannot even ssh to it. Bringing back my "ptsd" from windows use ages ago :).

      At home with Slackware (same hardware), no random freezes, my server only goes down when I loose power (I know, UPS blahblah, someday) and the desktop no issues either.

      So that indicates something in the 'systemd' workstation is a bit off.

    3. Re:Meanwhile in Slackware land... by strikethree · · Score: 1

      Slackware was my second distro. My first distro, Red Hat, lasted about two weeks before I had to blow it away (long but interesting story which fits right in with the current dislike of SystemD).

      I tried Slackware again in 2013. Still same ncurses issues that existed back in 1997. Installing 32 bit capable software on the 64 bit version of Slackware is... an interesting exercise.

      Long story short, I have VERY fond memories of Slackware but it is not a reasonable distribution for me. If/when Slackware dies, I may actually cry. It is the only "pure" Linux distribution left.

      --
      "Someone needs to talk to the tree of liberty about its ghoulish drinking problem." by ohnocitizen
    4. Re:Meanwhile in Slackware land... by Anonymous Coward · · Score: 0

      That's not as powerful at those *BSD variants. FreeBSD, OpenBSD, NetBSD, DragonFlyBSD, and all their derivatives.

    5. Re:Meanwhile in Slackware land... by Anonymous Coward · · Score: 0

      Pity about the PulseAudio, though.

  32. Why does Red Hat allow damage to its reputation? by Futurepower(R) · · Score: 4, Insightful

    Quotes, with minor modifications to make comments more readable, and some text in bold:

    "Systemd is a poor idea, poorly implemented, in a project that's poorly managed."

    "... sure is wilfully, deliberately, and very gratuitously, incompatible with everyone else. ... That means a big boon in control for Red Hat.

    "I doubt Poettering himself understands his role in this, seeing his grasp of architecture, code quality, and so on, so that makes him a 'useful idiot'. He sure does have the personality to pull it off, though. Incompetent arrogance does go a long way, with the right backing."

    Systemd, and the poor way it has been presented, had been damaging to Red Hat's reputation ("Dead Hat"). Why did Red Hat management allow that? Is it because Red Hat makes money providing consulting services, and wants Linux configuration to be difficult so that the company will make more money?

  33. "use a condom" by Anonymous Coward · · Score: 0

    no biggy. after all this dns-lookup daemon is creating ports beyond 1024 and since it has to touch a rather big portion of the internet it obviously is running as a very least privileged user, right?

  34. My problem with systemd by Anonymous Coward · · Score: 0

    Initially, I was not bothered by systemd, an alternate init system.

    Fast forward to today. I begin to see the "mission creep" it has. My primary concern in even using GNU/Linux is for security and I am aware that the NSA approached Linus to put back doors into the Linux kernel. Now I think systemd is the perfect choice of the NSA to totally compromise our systems. It is stupid, dangerous and unwanted!

    At this point, with the herd group think drinking the cool-aid, I think BSD is where I need to go. I am dismayed that most of the distros are GNU/Linux but never give GNU any credit for anything. They don't even mention GNU. Maybe we should call this systemd/Linux windows-like OS.

    BSD now!

  35. "Intellectually dishonest" by jgotts · · Score: 5, Informative

    The last time I criticized systemd I was accused of being intellectually dishonest.

    I'm not sure how being a Linux developer and sysadmin both in my personal life and as a paid employee since 1994 could possibly allow me to intellectually dishonest about any subject having to do with Linux. Dishonesty about Linux could not possibly benefit me in any way.

    What I said is that systemd started out being very buggy. Admittedly, to paraphrase Linus Torvalds, they shook most of the bugs out and it works okay most of the time.

    Except that systemd changed the way everything has worked for decades, and not for the better.

    I could go into specific examples, but suffice it to say that virtually everything that systemd has taken over, it is doing that job poorly. Seeing why services didn't work and making them work has gone from a 5 minute job to something that can take hours. Troubleshooting system problems by looking at logs has become arduous in some cases compared to looking at /var/log/messages or typing dmesg and having your answer in 2 minutes.

    systemd needs to slim down and focus on what it does well, initializing weird devices. systemd has no business monkeying around with DNS, and that is just the beginning of the list of things it needs to take a step back from.

    Call me intellectually dishonest, but I've been working with Linux for 23 years now (I installed Slackware 2.0 in July of 1994 from a stack of floppy disks) and I haven't failed to learn a thing or two along the way.

    1. Re:"Intellectually dishonest" by Anonymous Coward · · Score: 5, Insightful

      I started with Unix in 1982.

      Systemd fails many of the basic Unix concepts. Small, interconnectable tools, text log files, human readable configurations.

    2. Re:"Intellectually dishonest" by F.Ultra · · Score: 3, Insightful

      How are the unit files not "human readable configurations", especially when compared with the old sysv init scripts?

    3. Re:"Intellectually dishonest" by drinkypoo · · Score: 2

      How are the unit files not "human readable configurations", especially when compared with the old sysv init scripts?

      Because virtually all of the behavior was in the init scripts where you could read it, whereas most of systemd's behavior is in the various daemons, where you have to be able to understand the code to understand what it's going to do when you feed it a simple unit file.

      Of course, in order to understand what an init script does, you have to understand shell scripting; but shell scripting is a central feature of Unix which you should understand anyway as an admin, no matter what you are doing with it. Users aren't expected to understand unit scripts any more than they are expected to understand init scripts.

      Unfortunately, understanding what systemd is going to do at any given time requires understanding quite a lot of code because of the way it is interconnected, and everyone and their mom has complained about the poor quality of the code and the even poorer quality of its documentation.

      init does one simple job. If you need complexity, you can get it in the script, and you can look right at it. If you need more complexity that it is convenient to look at, then you can abstract it away into a script library.

      Unit files are human-readable, but they don't tell the whole story of what is happening. It's like trying to understand the deep cultural ramifications of the way language is used in a book by reading the cliff notes.

      --
      "You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
    4. Re:"Intellectually dishonest" by F.Ultra · · Score: 1

      You make it out to be far more complicated that it really is. Things only get close to complicated if the unit adds dependencies to other events and if that happens then whoever wrote the unit file did so on purpose, and boy o boy would a corresponding sysv script be a mess.

      And the code comments I cannot take seriously since the "everyone and their mom" seams to be people who actually never looked at the code nor know how code looks like. I've cloned the git repository and looked at the code when I was wondering a specific thing and had no problem following the logic, but if that makes me some wizard coder then I'm all for it :)

    5. Re:"Intellectually dishonest" by Anonymous Coward · · Score: 0

      And the code comments I cannot take seriously since the "everyone and their mom" seams to be people who actually never looked at the code nor know how code looks like. I've cloned the git repository and looked at the code when I was wondering a specific thing and had no problem following the logic, but if that makes me some wizard coder then I'm all for it :)

      Yes, I have looked at the code of systemd, a large part of which is tight-coupled mess like this. I am certain you did not read the code of some truly advanced competitors, for instance s6. By the way, most functions that systemd implemented in C are implemented by simple scripts with s6, which is a good hint at how poor systemd is designed.

  36. Linux Bad Press.. by sqorbit · · Score: 1

    All this negative information about Linux is totally going to kill it as the desktop choice for a majority of users. There goes 2017 as a year of the Linux desktop.

    --
    Sent from my TARDIS
    1. Re:Linux Bad Press.. by Misagon · · Score: 1

      Oh, the GNOME 3 developers already did that years ago.

      Not only did they foul up GNOME itself, they also took it on themselves to foul up the mainline GTK+ 3.0 toolkit which thousands of non-GNOME 3 applications use.
      On the surface, many widgets work really weird compared to how they used to do on GTK+ 2.0 (and how they do on Windows and MacOS as well). For instance, sliders and scroll bars are now practically unusable (for those who still use them with mice and not just scroll wheel).
      When you look deeper you will find that they have introduced API changes on minor version numbers without pushing different dynamically linked libraries, thus making programs written for earlier revisions of the library crash or behave in weird ways. Seriously, that is a cardinal sin.
      It is as if some other OS vendor had paid them to do as much damage as they can.

      --
      "We mustn't be caught by surprise by our own advancing technology" -- Aldous Huxley
  37. Poettering & co. are achieving their goals by OneHundredAndTen · · Score: 1

    Which consist of making Linux more and more similar to Windows, including the presence of serious bugs for years.

    1. Re:Poettering & co. are achieving their goals by Anonymous Coward · · Score: 0

      Including the bad press.

  38. MikeeUSA, is that you? by Anonymous Coward · · Score: 0

    On a more serious note... trolls like MikeeUSA have done more for systemd adoption than they realize: no sane systemd opponent dared to argue too strongly for fear of being associated with *that* repugnant crap. I know from personal experience, mind you.

  39. What does it matter? by pellik · · Score: 1

    Why does it matter how long the remote code executed for? It's just as dangerous to allow remote code to run once as it is to allow it to run for two years.

    1. Re:What does it matter? by dbIII · · Score: 1

      Why does it matter how long the remote code executed for?

      It matters because it gives us a little bit of insight into the testing and development process (and the low priority of security).

  40. Corps control Linux, not hobbyists by perpenso · · Score: 2

    At this point its worth asking who controls linux, the community built out of tends of thousands of projects that come together, or a few corporate entities?

    For a while now, the corps. Whoever is paying the salaries of developers is in control. Look at the concept of budgeting. Its not necessarily about how to wisely spend money, its also about control. Control by determining how much in the way of resources get allocated to some idea. To prioritize idea. To ensure that work is following the plan developed by senior management, not some plan developed by a consensus of engineers.

    Didn't some analysis of commits a while back show most Linux development is corporate funded? Thus corps are in control.

  41. Moved goalposts by dbIII · · Score: 1

    It is in SystemD, an expanded init system. Written by SystemD developers. Pretending that it's not a SystemD problem because it's a different subsystem to the main thread is somewhat misleading IMHO so please don't insult the intelligence of readers.
    If you are going to have a sig like yours you should probably try to live up to the standards of what you advocate.

  42. MS Windows attitude by dbIII · · Score: 5, Insightful
    With one of those links Lennart wrote:

    Yes, as you found out "0day" is not a valid username. I wonder which tool permitted you to create it in the first place ... So, yeah, I don't think there's anything to fix in systemd here.

    It's things like this that remind us that Lennart is even now still a newbie who thinks in terms of MS Windows. The tool that could create such a username is any text editor, which is something nearly every sysadmin and nearly any long term user of *nix could have told him.

  43. Who the fuck are you?! by GeekWithAKnife · · Score: 5, Insightful

    Tarring and feathering would indeed be good -- especially that Lennart as usual insta-closes an obvious and nasty security bug[1] as "non-bug". And when presented with standards documents, he says they don't apply to him [github.com]. Seriously, can someone buy this guy an "Unix for dummies" book? While we don't exactly suffer from a dearth of kooks, this particular kook enjoys having his employer promote his masterpieces even when totally inadequate. The world would be so much better without systemd, PulseAudio and avahi.

    Actually nevermind, here's root access.

    --
    A 'singular oddity' is an event that cannot be explained and only happens when you are alone.
    1. Re:Who the fuck are you?! by Anonymous Coward · · Score: 0

      Tarring and feathering would indeed be good -- especially that Lennart as usual insta-closes an obvious and nasty security bug[1] as "non-bug". And when presented with standards documents, he says they don't apply to him [github.com]. Seriously, can someone buy this guy an "Unix for dummies" book?

      While we don't exactly suffer from a dearth of kooks, this particular kook enjoys having his employer promote his masterpieces even when totally inadequate. The world would be so much better without systemd, PulseAudio and avahi.

      Actually nevermind, here's root access.

      The way you respond, anything new is evil and bad. Do you want to go back to when my Linux fit on a 700meg CD?
      Pulse works, systemd works, and yes, over time, someone will figure out how to hack your UEFI bios on your system. What then?

      The bug was found, immediately addressed and an update pushed out. Can you do better?

  44. Remind me by jon3k · · Score: 1

    Remind me again, how many remote remote code execution bugs were in sysvinit? I can't remember.

  45. a bug? by ooloorie · · Score: 1

    In a bloated, poorly written piece of software like systemd? You don't say!

  46. These guys saw the writing on the wall... by Anonymous Coward · · Score: 0

    https://devuan.org/

  47. Re:Why does Red Hat allow damage to its reputation by Anonymous Coward · · Score: 1

    Why did Red Hat management allow that? Is it because Red Hat makes money providing consulting services, and wants Linux configuration to be difficult so that the company will make more money?

    By George, I think he's got it!

  48. Re:The real problem is systemd haters by Opportunist · · Score: 1

    Funny enough, a lot. Though it's not a matter of left or right, liberal or conservative. No such petty things. This is about corporations and control of the OSS market.

    --
    We used to have a Bill of Rights. Now, with the rights gone, all we have left is the bill.
  49. Thanks Team Devuan by HalAtWork · · Score: 1

    Not affected here, thanks Team Devuan. Maintaining a complete GNU/Linux distro that is not reliant on systemd is extremely responsible and valuable.

  50. not your father's least surprise by epine · · Score: 2

    It requires existing root access in order to create a new user. So if someone exploits it, you are already fucked.

    You must be new here. The Doctrine of the Useful Idiot is referenced these days almost hourly. Hence, you must be really new here.

    In this case the "useful idiot" is the trusted repository administrator, who permits a package to be hosted from upstream because it doesn't look suspicious in any way (unless the obscure rule about user accounts with leading digits is top of mind—as if every project doesn't have at least one wonky anomaly, most of which, if pursued, turn out to accord with "who knew?"—and Poettering-appropriate paranoia level is set to deep fat fry).

    The trusting user will run the package installer from the trusted repository using "sudo". There's your TRANSITORY, apparently harmless root. No weird system calls. No overt fingerprint of escalation. Mission accomplished. Tick, tick, tick ...

    Under Poettering, the principle of least surprise is obeyed by allowing any departure from convention, no matter how thinly understood on the ground where it matters, to lead to an unchecked root escalation.

    This was not your father's principle of least surprise.

    The long cascade of trusted upstream is become our new Leviathan. Can one even finish a review of inbound patches any more before the next batch arrives?

    Work started in 2002 to repaint the bridge fully for the first time in its history, in a L130 million contract awarded to Balfour Beatty.

    Up to 4,000 tonnes of scaffolding was on the bridge at any time, and computer modelling was used to analyse the additional wind load on the structure.

    The bridge was encapsulated in a climate controlled membrane to give the proper conditions for the application of the paint.

    All previous layers of paint were removed using copper slag fired at 200 miles per hour, exposing the steel and allowing repairs to be made.

    The paint, developed specifically for the bridge by Leigh Paints, consisted of a system of three coats derived from that used in the North Sea oil industry.

    240,000 litres of paint was applied to 255,000 square metres of the structure, and it is not expected to need repainting for at least 20 years.

    The top coat can be reapplied indefinitely, minimising future maintenance work

    Software security engineers, eat your heart out. The veritable mascots of unfinishable business sit there drinking tea, while we double down on making things worse.

    For the record, Trump is also making a good case for himself as the President of Least Surprise.

    This, too, was not your father's least surprise.

  51. pid 1 BUG?!? by Anonymous Coward · · Score: 0

    A security vulnerability in something that runs as PID 1? And the systemd people go "oh, this isn't THAT terrible!"
    PID 1 needs to be stable and secure. If I can crash it or tell it to perform arbitrary code as root, that's not ok. No matter what excuses the systemd people come up with, it is not acceptable. They did not fix their bug.

    Here's the principle with security bugs: for the time period that it was present, you can assume there's an exploit which uses it in the wild. That is why PID 1 needs to be small and simple. Systemd is neither, so it fails at my requirement for PID 1.

  52. Time for OpenBSD by Anonymous Coward · · Score: 0

    Nope, don't waste perfectly good tar and feathers.

    Just switch to OpenBSD already.

    1. Re:Time for OpenBSD by HiThere · · Score: 1

      I might well if OpenBSD supported ext4 in read/write mode. As it is I can't test it out without trashing my files.

      --

      I think we've pushed this "anyone can grow up to be president" thing too far.
  53. Oh ho ho by Anonymous Coward · · Score: 0

    But guys, Linux is open source and therefore anyone can see where all the bugs are before the bad guys do.

    1. Re:Oh ho ho by Anonymous Coward · · Score: 0

      Millions of eyes looking the codebase... and turns out every single one was looking in the wrong direction! Sad!

    2. Re:Oh ho ho by Anonymous Coward · · Score: 0

      Too bad for you little troll that SystemD isn't "Linux". But don't worry, I don't hate you, I pity you. Life must be hard when you don't have a brain.

  54. Only key infrastructure for schmucks... by Anonymous Coward · · Score: 0

    Sane Linux users have been migrating to distros which don't include systemd for the past 3-5 years.

    Personally, none of my systems run systemd anymore (the only one that ever did was an Ubuntu distro because launchpad is good for testing unusual apps that other distros don't have in their repos and that are too hard to build on gentoo/arch), although there are a few in the house running off legacy distros that still do.

  55. Be precise now by Anonymous Coward · · Score: 0

    No, it's only ALMOST ALL Linuxes.
    Why did everyone decide they HAD to follow Red Hat's lead with systemd? This shows Linux is vulnerable to monopoly issues like the other operating systems.

  56. The hard dependency is FAKE by Anonymous Coward · · Score: 1

    Because systemd is now a hard dependency of the Gnome desktop, which a lot of distros want to ship.

    Yes, and as the Gentoo spinoff Funtoo (forked by Gentoo's original author) shows, this "hard dependency" is bullshit. They maintain a patch that removes the dependency, allowing Gnome (for those masochistic enough to want to use it) to work just fine on a non-systemd distro.[1]

    [1]Funtoo, like default Gentoo, uses openrc instead.

  57. Is there a replacement for systemd? by Qbertino · · Score: 2

    This is a serious question. Yes I know there's init, but systemd must have something going for it, otherwise it wouldn't be the default of just about all distros on the planet. ... Faster boot times come to mind.

    So, is there an alternative to systemd since everybody seems to be bickering about it? What about a Linux that boots in under 10 seconds? If systemd is so shitty, what's holding people back from developing a system that is better and faster?

    Thanks for any input on this.

    --
    We suffer more in our imagination than in reality. - Seneca
    1. Re:Is there a replacement for systemd? by boudie2 · · Score: 1

      OpenRC. This is the alternative that works perfectly fine for me https://en.wikipedia.org/wiki/...

    2. Re:Is there a replacement for systemd? by Anonymous Coward · · Score: 0

      It's all politics. systemd is forced on everyone by Red Hat due to their ongoing war with Oracle. That's all there is to it. There are alternatives, but as a large corporation with money behind it, Red Hat can push systemd into more areas and change interfaces faster than volunteers can keep up. All the systemd shims are dead or dying, unable to keep up.

      Linux is mostly used on servers. How often do you think servers are rebooted? For that matter, how often do you reboot your laptop or desktop? Most people just put them to sleep.

    3. Re:Is there a replacement for systemd? by Anonymous Coward · · Score: 0

      systemd must have something going for it ... Faster boot times come to mind.

      Personal anecdote, not scientific study: I have a dual-boot laptop, with linux mint and devuan, both with xfce desktop environment. Devuan boots considerably faster on it.

    4. Re:Is there a replacement for systemd? by silverdirk · · Score: 1

      There are quite a few small projects that aim to do service monitoring "better", but none of them is a complete solution. They are all designed as building blocks (the way they should) but nobody has gone through the effort to build the missing pieces that would let you run i.e. Gnome3 desktop on them.

      https://skarnet.org/software/s...

      I even wrote my own, though it needs a "version 2" before it will really be ready for prime-time.

      http://www.nrdvana.net/daemonp...

      I only use these service monitors for embedded systems and minimalist systems. All my desktops are running systemd simply because it came with the distro and I don't want to spent the time learning to make Gnome3 run on a more minimal tool. I really hate Gnome's design, but I like having a desktop that looks and feels modern.

      --
      Mark of the Coder fades from you. You perform Opening on World of Warcraft. Warcraft crits GPA for 4. GPA dies.
    5. Re:Is there a replacement for systemd? by Anonymous Coward · · Score: 0

      Faster boot times are a red herring. My FreeBSD desktop boots faster than the whole BIOS init procedure. Under 30 seconds. Reducing that to ten seconds is not worth the sacrifices of systemd. FYI, none of my systemd installations at work boot in under ten seconds.

    6. Re:Is there a replacement for systemd? by Anonymous Coward · · Score: 0

      Not trying to start a war here. But my free systemd gentoo with OpenRC boots faster than systemd version. No idea how it is possible. Look into that if you are curious.

  58. tool creating the user ? by bingoUV · · Score: 1

    the tool creating the user

    Ok, consider this :

    1. [root@localhost ~]# adduser ii
    2. [root@localhost ~]# sed -i 's/ii/8i/g' /etc/passwd
    3. [root@localhost ~]# su 8i

    So "sed" is the tool "creating" the user, at least it (re)defines the user name. It could have been some text editor, or "echo", or someone could mount the filesystem with /etc/passwd file in some other operating system and edited in a million ways imaginable.

    Do you propose sed and all software directly or indirectly used for text editing under any operating system "validate" user names ? How about direct access to storage device with a magnet or firmware interface to storage device ?

    --
    Bingo Dictionary - Pragmatist, n. A myopic idealist.
    1. Re:tool creating the user ? by AmiMoJo · · Score: 1

      I actually posted elsewhere that I think there is a good case to be made for checking. On the other hand... If you are root you accept some responsibility, like not deleting important stuff or misconfiguring things.

      But year, on balance probably best to check. My point was that few people argued that point, they just made ad hominem attacks.

      --
      const int one = 65536; (Silvermoon, Texture.cs)
      SJW, n: "Someone I don't like, and by the way I'm a fuckwit" - AC
    2. Re:tool creating the user ? by bingoUV · · Score: 1

      My point was not about checking at all. As the changed subject indicates, I was talking about an extremely surprising statement from you about a "tool" that creates the user, which can be dreamt of as possibly responsible for validating the name of the user.

      I still don't understand which "tool" you are talking about that has any say in the name of the user, unless the tool is physics and "validation" is prayer. In which case I apologize while mildly irritated at your unusual language.

      --
      Bingo Dictionary - Pragmatist, n. A myopic idealist.
    3. Re:tool creating the user ? by dbIII · · Score: 1

      Don't blame the poster for the stupid phrase since the "tool" bit is a quote from Lennart.

      Lennart P: "Yes, as you found out "0day" is not a valid username. I wonder which tool permitted you to create it in the first place"

      The stupidity of the the whole thing is of course something I totally agree with.

  59. You've got serious issues squiggleslash by Anonymous Coward · · Score: 0

    "The APK posts are largely legit (except those of us teasing him.) " - by squiggleslash ( 241428 ) on Tuesday January 10, 2012 @08:15AM (#38649488)

    Too bad you gave yourself away admitting you either impersonate me bogusly or harass/stalk me by a quote of your own words: Grow up.

    * Unbelievable...

    (Guess you're still butthurt I shot you to pieces on PING of DEATH here https://slashdot.org/comments.pl?sid=2610052&cid=38754490/ )

    APK

    P.S.=> Nice to see one of your sockpuppet SELF-UPMODDED posts exposing you this way... apk

  60. Dear Lord, by TheDarkener · · Score: 1

    Please give us back Ian Murdock.

    In exchange we will give you Lennart Pottering.

    Thanks in advance. Amen.

    --
    It is pitch black. You are likely to be eaten by a grue.
  61. Now You've Done it ! Next is systemd.adduser ! by kjhambrick · · Score: 1

    Hoo Boy ...

    I can see it now ... systemd.adduser is coming right up because All'Y'All are stupid -- everyone knows UserNames do not begin with Digits !

    -- kjh

  62. The definition of anti-unix.. by CptLoRes · · Score: 1

    Is changing something that is not broken, just so that you can experience the old bugs anew again.

  63. Buffer overrun in 2017? SERIOUSLY?!?! by Anonymous Coward · · Score: 0

    What incompetent moron wrote it and what fools incorporated it into ANY other software?

    [I know, I could look it up, but I have better things to do and a little time on Slashdot is better than time wasted googling while making a larger point]

    There is simply NO EXCUSE for ANY post-1980 software EVER having a "bug" that allows ANY buffer overrun. It is an act of gross coding negligence to not check bounds, to load more data than the size of a buffer, etc. Anybody caught doing it should immediately lose all academic credentials and be excluded from any serious projects going forward until he/she/it earns a new 4-year degree and makes a big public grovelling apology, preferably accompanied by tears and the old self-administered back-whipping routine some old-school monks used to do - it's really THAT BAD of a coding sin.

    Writing code that allows a buffer overrun is a firing offense level of incompetence, right up there with a surgeon sexually molesting a patient on the table and then leaving a dozen tools and sponges inside the patient while closing the incision before discovering he has amputated the wrong limb.

  64. Prime deterent to new code by Lady+Galadriel · · Score: 1

    This is a prime example of why systemd is the annoyance it is, new code is never bug free.

    I prefer the older init systems that at least have modular designs and tend to be less buggy.

    --
    Lady Galadriel
  65. Impossible by Anonymous Coward · · Score: 0

    Linux has no flaws this is just Micro$oft propaganda. nice try steve jobs go use you buggy office in your android shit

  66. Red Hat not vulnerable? by Anonymous Coward · · Score: 0

    https://access.redhat.com/secu...

    It is interesting to me that this issue did not affect the version of systemd as shipped with RHEL 7. Does this not seem rather suspicious?

  67. Re:Why does Red Hat allow damage to its reputation by Anonymous Coward · · Score: 0

    Seriously, anyone tries to discredit systemd needs to state very clearly:

    a) technical reasons why systemd design is bad (e.g there is no design at all, etc)
    b) technical reasons why systemd implementation is bad (why running everything from PID 1 is bad, etc)
    c) non-technical reasons why systemd is bad (e.g. the guys behind it are a**s, etc)
    d) non-technical reasons why systemd is bad *for the normal user*
    e) and if we do avoid systemd, what would be the implications (e.g. no GNOME for you, etc)

  68. Who didn't see this coming? by Anonymous Coward · · Score: 0

    SystemD is NSA's wet dream coming true.

  69. Null in username by aberglas · · Score: 1

    So, how does it behave if we put a Null in a username. A good way to break most C grade programs. (Sure, not supposed to be allowed, but if an upstream process has a bug that lets it through, the world should not collapse.)

    1. Re:Null in username by TemporalBeing · · Score: 1

      So, how does it behave if we put a Null in a username. A good way to break most C grade programs. (Sure, not supposed to be allowed, but if an upstream process has a bug that lets it through, the world should not collapse.)

      If the username is not found, then no UID will be located and the program will fail to start. That is how every administrator expects things to work; not to be handed full root access. Doesn't matter whether it's because of a NULL in the username or otherwise.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    2. Re:Null in username by aberglas · · Score: 1

      Yes, but what part of the username? The bit before the null or the whole lot. What if someone creates a user rootstuff, and has the password for the full name but not for root?

      This sort of thing was used to break certificate processing in a number of implementations, due to inconsistent handling of nulls.

    3. Re:Null in username by aberglas · · Score: 1

      That was root[null]stuff.

    4. Re:Null in username by TemporalBeing · · Score: 1

      Yes, but what part of the username? The bit before the null or the whole lot. What if someone creates a user rootstuff, and has the password for the full name but not for root?

      This sort of thing was used to break certificate processing in a number of implementations, due to inconsistent handling of nulls.

      Usernames are quite well defined in Linux as only being those in /etc/passwd - which is a pure text file and thereby a NULL wouldn't be allowable in there. Good luck trying to match a username with a null in it it (root\0stuff) against anything in that file, or /etc/shadow.

      Now where it would get complex would be if an external auth provider (e.g LDAP), but even then the tools would add the user locally and thereby end up in the same pattern. Often integration tools (f.e Samba) provide mappings when they support different kinds of usernames than are locally allowed; but then a NULL would be of issue in most protocols unless it was escaped.

      All that to say - using a NULL in a string is a bit of an absurdity for this; and that's not even relevant to the original issue which was valid textual strings that have historically been allowed - and nearly all tools allow - only because an idiot overseeing a system that is getting into the ecosystem by fiat - not technical merit - has decided he doesn't like it.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
    5. Re:Null in username by aberglas · · Score: 1

      There is no reason that a "text file" cannot have a null In it. Just open an editor and put one there.

      What the effect of that is depends on how the C code happened to be written. If, for example, it scans for new lines, and ":"s, it will just happily include the null in the string. But then some strlen function will truncate it.

      Most programmers will make the same assumption that you did. Namely that nulls should not be there, and will therefor ignore the problem.

      This type of attack is not theoretical, it was used to break Certificates.

    6. Re:Null in username by TemporalBeing · · Score: 1

      There is no reason that a "text file" cannot have a null In it. Just open an editor and put one there.

      What the effect of that is depends on how the C code happened to be written. If, for example, it scans for new lines, and ":"s, it will just happily include the null in the string. But then some strlen function will truncate it.

      Most programmers will make the same assumption that you did. Namely that nulls should not be there, and will therefor ignore the problem.

      This type of attack is not theoretical, it was used to break Certificates.

      Exactly. No, I didn't ignore that they *couldn't* be in a text file; only that the normal tooling - all of it - won't do that. So if it's there it's there from a nefarious actor.

      --
      Truth is like the sun. You can shut it out for a time, but it ain't goin' away. - Elvis Presley (source: imdb.com)
  70. To quote Linus... by Anonymous Coward · · Score: 0

    "I don't actually have any particularly strong opinions on systemd itself. I've had issues with some of the core developers that I think are much too cavalier about bugs and compatibility, and I think some of the design details are insane (I dislike the binary logs, for example), but those are details, not big issues."

    Sums it up, Poettering is trash.

  71. Comment removed by account_deleted · · Score: 1

    Comment removed based on user account deletion

  72. is this lennart guy the guy from big bang theory? by Anonymous Coward · · Score: 0

    no wonder his system sucks dick, he is always chasing that horse faced blonde with running back like shoulders

  73. Re: Why does Red Hat allow damage to its reputatio by Anonymous Coward · · Score: 0

    Wow. You have to be trolling or you're LP. This whole entire conversation has covered all of your questions.

  74. Good grief by Anonymous Coward · · Score: 0

    This dumpster fire gets bigger (and stinkier) every time I go past it. Someone put it out before it immolates the entire kernel.

    Manjaro-OpenRC works well and I've heard good things about Calculate Linux, neither of which use systemd by default. Void (musl version) worked well on a sacrificial netbook until an update did something dreadful to it, rendering it non-booting. Manjaro-OpenRC worked great until the cat kicked the machine off the table and nerfed the display. C'est la vie.

  75. It's organisational by Anonymous Coward · · Score: 0

    The more things change, the more difficult they are to change back.
    Especially managers - once you finally get the PHB to make a necessary change, they go ahead and implement it without consultation because it wasn't their idea in the first place and the PHB just HATES implicitly acknowledging the underling's technical superiority.
    Then when the shit is installed, without documentation, without communication, without analysis, without confirmation, without testing, without any kind of robust process, the underling says: "that's not quite what I meant, and it's actually worse now", the PHB throws a shit fit at you and says that this is how it's going to stay now that we've gone to all the trouble of making the changes YOU asked for, and you simply don't understand that we implemented is actually right, you're only an underling and so SHUT UP AND GET WITH THE PROGRAM, SCUM !!!

  76. Should I say, "I told you so?" by petrus4 · · Score: 1

    I know I will get hate for this, but I stopped using Linux when systemd was forcibly and mysteriously rammed down almost everyone's throat. I've always known that systemd is to Linux what UEFI is to the PC itself; an abstraction layer allowing control for the intelligence community.

    Call me a troll, scream at me as much as you like; but if as a Linux user, you support systemd, you are a traitor. It is extremely simple.

  77. Let's ask Linus to make an init. by cryptogranny · · Score: 1

    Let's make a petition for Linus to ask him to write a small init. What would be better then correct integration of kernel and init.

  78. almost malicious? I'd say this is grounds for RH by Anonymous Coward · · Score: 0

    this is clearly grounds for RH to completely re-evaluate their love affair with an obviously gifted coder, who shows he has no business being on the mgmt end of anything.

    it's cut and dry, this is malicious behavior - enforced by the arrogance of the maintainer, LP

    this is EXACTLY WHY OLD TIME *nix users have been screaming about systemd the whole time

    WE ALL AGREE sysv init has problems, some big ones even, but systemd offers another set of problems, most of which could be avoided by having a sane, older & more experienced group steer the systemd project.

    I'm really glad this has happened in a way, LP has been able to arrogance talk his way out of so much bs in the past, but not on this one.

    Even a basic 5 minute discussion with senior mgmt at companies that use RedHat linux servers explaining this issue will result in a phone call to RH mgmt demanding some oversight/reshuffling/sanity be implemented

    most *nix flavors have bought into systemd hook, line and sinker

    (the notable exception, gentoo, got to the heart of the matter quite a long while back if you check some historical posts)... the rest of the world is finally getting upto speed :)

    now modern *nix people may realize systemd haters are NOT just tin-foil hat old farts who want no progress

    these arguments have been going back and forth too much, too often, and its total bs

    * allowing a gifted coder the reins to the whole wagon is a wreck waiting to happen