furzegulo1312 ( @furzegulo@lemmy.dbzer0.com ) 60•11 months agoi’m fine with this nor do i have a problem with systemd in genereal
Dracocide ( @Dracocide@lemm.ee ) Akan26•11 months agoI never understood the hate, tbh. A lot of users don’t even care if Sysd is used, as long as it works. So… Since the majority of distros use it… I think it works enough.
Grangle1 ( @Grangle1@lemm.ee ) 15•11 months agoIt seems to me to be mainly from people who are dedicated to the Unix philosophy that programs should do only one thing, and do it well. Tying everything up into systemd doesn’t follow that. I don’t care either, and I don’t mind systemd, but some people care about it enough to throw paragraphs of hate on it wherever it’s mentioned online. And apparently it’s “bloat”, and to some " bloat" is worse than the devil himself.
Max-P ( @Max_P@lemmy.max-p.me ) 25•11 months agoIf you dig deeper into systemd, it’s not all that far off the Unix philosophy either. Some people seem to think the entirety of systemd runs as PID1, but it really only spawns and tracks processes. Most systemd components are separate processes that focus on their own thing, like journald and log management. It’s kinda nice that they all work very similarly, it makes for a nice clean integrated experience.
Because it all lives in one repo doesn’t mean it makes one big fat binary that runs as PID1 and does everything.
pmk ( @pmk@lemmy.sdf.org ) 8•11 months agoI bet some of those people use neovim instead of the more unix philosophy ed.
laurelraven ( @laurelraven@lemmy.blahaj.zone ) 4•11 months agoMy main issues are that it obfuscates things and seems to consume everything it can into itself.
Honestly, if it were more transparent and designed in a way to easily facilitate swapping out components with alternatives, I’d be a lot more okay with it.
HubertManne ( @HubertManne@kbin.social ) 2•11 months agoI understand the concern about the future and we have seen overbloated projects have issues. In the long run though I will use what works best for me and only get into philosophical comparisons if im making the choice between relatively equal options.
Yozul ( @yozul@beehaw.org ) 50•11 months agoThis is fine, but why does everything need to be part of Systemd? Like, seriously, why can’t this just be an independent project? Why must everything be tied into this one knot of interdependent programs, and what’s going to happen to all of them when the people who are passionate about it and actually understand all the stupid ways they interrelate move on with their lives? Are we looking at the formation of the next Xorg? Will everybody being scrambling to undo all of this in another 20 years when we all realize it’s become an unmaintainable mess?
Melmi ( @melmi@lemmy.blahaj.zone ) English34•11 months agoSystemd does a lot of things that could probably be separate projects, but run0 is an example of something that benefits from being a part of systemd. It ties directly into the existing service manager to spawn new processes.
nous ( @nous@programming.dev ) English9•11 months agoSystemd does a lot of things that could probably be separate projects,
I dont get the hate for this - Linux is full of projects that do the same thing: coreutils, busybox, kde, gnome, different office suites, even the kernel itself. It is very common for different related projects to be maintained together under the same project/branding with various different levels of integration between them. But people really seem to only hate on systemd for this…
Yozul ( @yozul@beehaw.org ) 4•11 months agoI guess for me the difference is that the kernel is just way beyond what I can understand and has never had any viable alternatives, gnome I really don’t like, and everything else you listed is just collections of simple stuff that aren’t actually very interdependent. Systemd is a giant mess of weirdly interdependent things that used to be simple things. Sure, some of them weren’t great, but every major distro abandoning all of the alternatives feels like putting all of our eggs in one basket that’s simultaneously getting more important and more fragile the bigger it gets.
nous ( @nous@programming.dev ) English4•11 months agoExcept desktop environments - they are far from a simple loosely collection of simple stuff. They coordinate your whole desktop experience. Apps need to talk to them a lot and often in ways specific to a single DE. Theming applications is done differently for every toolkit there is, startup applications (before systemd) is configured differently, global shortcuts are configured differently by each one… If anything it is something you interact with far more than systemd and has far more inconsistencies between each one. Yet few people complain about this as much as they complain about systemd.
Systemd is a giant mess of weirdly interdependent things that used to be simple things.
They used to be simple things back when hardware and the way we use computers were much simpler. Nowadays hardware and computers are much more dynamic and hotplugable and handle a lot more state that needs to persist and be kept track of. https://www.youtube.com/watch?v=o_AIw9bGogo is a great talk on the subject and talks about why systemd does what it does.
Adanisi ( @Adanisi@lemmy.zip ) English3•11 months agoSystemd likes to break standards. That’s a big reason
nous ( @nous@programming.dev ) English4•11 months agoWhat standards? The old init systems were a loose collection of shell scripts that were wildly different on every distro. Other tools like sudo also broke the established standards of the time, before it you had to login as root with the root password.
Even gnome and KDE have their own themeing standards as well as other ways of doing things. Even network manager is its own standard not following things that came before it. Then there are flatpack, snaps and app images. Not to mention deb vs rpm vs pacman vs nix package formats. Loads of things in Linux userland have broken or evolved the standards of oldern times.
AVincentInSpace ( @AVincentInSpace@pawb.social ) English2•11 months agoSystemd breaks its own standards. Oh, were you making a replacement for this component of systemd that does some things the systemd version doesn’t? Well the latest version of systemd just changed the Unix socket protocol that it uses to communicate with the rest of systemd from text based to binary. Sorry for the lack of warning.
Christopher Goss ( @chrisg@aus.social ) 1•11 months ago@AVincentInSpace @nous I’ve always disliked the arrogance of the lead Dev & the inexorable incremental usurping of Linux functionality. I’m deeply uncomfortable with so much being absorbed into a big binary black box
eveninghere ( @eveninghere@beehaw.org ) 2•11 months agoAnd fragmentation of projects is what caused the xz security incident.
flying_sheep ( @flying_sheep@lemmy.ml ) 3•11 months agoYeah, if all those complainers want something more modular, they’re free to push for protocols that allow to leverage existing components while also allowing for them to come from multiple vendors.
- LeFantome ( @LeFantome@programming.dev ) 25•11 months ago
It seems a fairly explicit goal of systemd to redefine Linux as a unified platform rather than as a kernel that can run any one of many implementations of many different services. I assume this is not just the systemd lead but also a goal of Red Hat.
Personally, while I am ok with systemd defining itself as a single source for all this functionality, I hate that they are taking away ( or making it hard at least ) to have independent implementations of these services.
What Chinera is doing with dinit and turnstile is really interesting. It would be nice to have feature comparable approaches to the systemd monolith that distributions could choose from.
lemmyreader ( @lemmyreader@lemmy.ml ) English6•11 months agoWhat Chinera is doing with dinit and turnstile is really interesting. It would be nice to have feature comparable approaches to the systemd monolith that distributions could choose from.
Link for other readers about Chimera Linux, dinit, turnstile : https://chimera-linux.org/development
Kusimulkku ( @Kusimulkku@lemm.ee ) 5•11 months agoIt does make sense for me to have this functionality in systemd the way they want to go about doing this.
Yozul ( @yozul@beehaw.org ) 4•11 months agoOkay, but why go about it that way? That can’t be the only way of making a viable alternative to sudo. Why does everything need to be part of one project? If you want to reuse code why not spin it out into a library so each component can be installed with just the libraries it needs and not the depending on the whole gigantic thing? KDE works that way. It’s obviously possible for some things, at least.
One of my favorite things about Linux is simply fiddling around and finding the things I like and don’t and just using the ones I do. I can’t do that effectively with systemd though. Sure, it’s theoretically modular, and there are even a couple parts left that can work independently, but mostly it’s just one big block of half an operating system that all gets lumped together into one gigantic mess, and I can’t effectively just use the bits I like. It’s kind of all or nothing, and then maybe being allowed to double up on some of the things I’d like to use an alternative to… for now. It just kinda sucks the joy out of using my computer, but trying to avoid it completely is a massive pain in the butt.
There’s no big dramatic thing wrong with systemd. Using systemd and being happy with it is a good thing. I do not object to the existence of systemd. Systemd is fine. It just makes me like Linux less is all. I am enjoying my time with my computer less than I used to, and the universal dominance of systemd is probably the biggest reason for that.
m4 ( @m4@kbin.social ) 43•11 months agoComing up:
systemd-antivirusd
Jay🚩 ( @jaypatelani@lemmy.ml ) 38•11 months agoSystemD looks to replace Linux kernel with kern0
laurelraven ( @laurelraven@lemmy.blahaj.zone ) 13•11 months agoI’d just like to interject for a moment. What you’re referring to as Linux, is in fact, SystemD/Linux, or as I’ve recently taken to calling it, SystemD plus Linux. Linux is not an operating system unto itself, but rather another free component of a fully functioning SystemD system made useful by the SystemD corelibs, shell utilities and vital system components comprising a full OS as defined by POSIX.
Many computer users run a modified version of the SystemD system every day, without realizing it. Through a peculiar turn of events, the version of SystemD which is widely used today is often called Linux, and many of its users are not aware that it is basically the SystemD system, developed by the SystemD Project.
There really is a Linux, and these people are using it, but it is just a part of the system they use. Linux is the kernel: the program in the system that allocates the machine’s resources to the other programs that you run. The kernel is an essential part of an operating system, but useless by itself; it can only function in the context of a complete operating system. Linux is normally used in combination with the SystemD operating system: the whole system is basically SystemD with Linux added, or SystemD/Linux. All the so-called Linux distributions are really distributions of SystemD/Linux!
neutron ( @neutron@thelemmy.club ) 9•11 months agoSo we’ll have to say GNU/Linux/SystemD soon?
Jay🚩 ( @jaypatelani@lemmy.ml ) 2•11 months agoLol probably
downhomechunk ( @downhomechunk@midwest.social ) English2•11 months agoSlackware users won’t! At least not so far.
arran 🇦🇺 ( @arran4@aussie.zone ) 30•11 months agoSounds reasonable. But I don’t like the
0
in the name. purplemonkeymad ( @purplemonkeymad@programming.dev ) 2•11 months agoDid they think about how far I would have to move my hand to type it? Sudo is only in two easy to reach places on the keyboard, run0 is 4 separate areas of the keyboard, one two rows from home and none on the home row.
I’m only partially joking.
- Fizz ( @Fizz@lemmy.nz ) 27•11 months ago
Sounds good. It’s a win win. People that doesn’t like the system d implementation can use doas or keep sudo. I Hate the name though. Run0 is dumb can’t they just steal the name doas
loops ( @loops@beehaw.org ) English31•11 months agoI’ll just use an alias; sudo has been around for to long for me to change it and not be stressed about it.
topher ( @codapine@lemm.ee ) 28•11 months agoReminds me of when I aliased ‘man’ to ‘rtfm’
Zucca ( @Zucca@sopuli.xyz ) 5•11 months agoSir, your thinking is certainly what kids call “next-level”.
theshatterstone54 ( @theshatterstone54@feddit.uk ) 4•11 months agoBest alias confirmed
proceeds to add it to .bashrc and .zshrc
ReallyZen ( @reallyzen@lemmy.ml ) 5•11 months agoYou guys know that there’s an actual rtfm app that condenses the output of man to human-readable stuff right? Right??
theshatterstone54 ( @theshatterstone54@feddit.uk ) 2•11 months agoWait, what?
ReallyZen ( @reallyzen@lemmy.ml ) 2•11 months agoOf course. . …I was wrong and it is tldr not rtfm.
https://github.com/tldr-pages/tldr
But surely you heard about TheFuck?
https://github.com/nvbn/thefuck
There’s actually an rtfm package in Arch’s aur, but it just opens the archwiki for you which just adds that tiny bit of… of That Arch Way Of Doing Things I guess.
theshatterstone54 ( @theshatterstone54@feddit.uk ) 3•11 months agoI HAVE heard about thefuck!
Andromxda 🇺🇦🇵🇸🇹🇼 ( @Andromxda@lemmy.dbzer0.com ) English1•11 months agoLink to GitHub?
ReallyZen ( @reallyzen@lemmy.ml ) 2•11 months agoMy bad: it’s tldr not rtfm
Me too I have
stupiddisputable aliases… Andromxda 🇺🇦🇵🇸🇹🇼 ( @Andromxda@lemmy.dbzer0.com ) English2•11 months agoOh yeah I know about
tldr
. It’s pretty great. I actually use a Rust version of it called teeldeer. I also have a whole lot of “disputable” aliases, for examplertfm
fortldr
andrtfmp
(read the fucking man page) forman
. I also usefucking
for sudo. There’s nothing better than runningpacman -Syu
, realizing the mistake and then typing infucking pacman -Syu
SwingingTheLamp ( @SwingingTheLamp@midwest.social ) English23•11 months agoThis just sounds like a bad idea, a solution in search of a problem. Sure, sudo is a setuid binary, but it’s a fairly simple program, and at some point, you have to trust the code. It’s also a very fundamental piece of the system that you want to always work, even (especially!) when other things get borked. The brief description of run0 already has too many potential points of failure.
lemmyvore ( @lemmyvore@feddit.nl ) English32•11 months agosudo is a setuid binary, but it’s a fairly simple program
Sudo is actually fairly huge and complex. Alternatives like
really
ordoas
orsu
are absolutely tiny by comparison. TechNom (nobody) ( @technom@programming.dev ) English1•11 months agoThe OP can make the same argument after replacing sudo with doas or su.
lemmyreader ( @lemmyreader@lemmy.ml ) English13•11 months agoSure, sudo is a setuid binary, but it’s a fairly simple program, and at some point, you have to trust the code.
Have to trust the code ? doas for OpenBSD was created because of issues with sudo.
Talking with deraadt and millert, however, I wasn’t quite alone. There were some concerns that sudo was too big, running too much code in a privileged process. And there was also pressure to enable even more options, because the feature set shipped in base wasn’t big enough.
Max-P ( @Max_P@lemmy.max-p.me ) 13•11 months agoI’ve actually ran into some of those problems. If you run
sudo su --login someuser
, it’s still part of your user’s process group and session. With run0 that would actually give you a shell equivalent to as if you logged in locally, and manage user units, all the PAM modules.systemd-run can do a lot of stuff, basically anything you can possibly do in a systemd unit, which is basically every property you can set on a process. Processor affinity, memory limits, cgroups, capabilities, NUMA node binding, namespaces, everything.
I’m not sure I would adopt run0 as my goto since if D-Bus is hosed you’re really locked out and stuck. But it’s got its uses, and it’s just a symlink, it’s basically free so its existence is kBs of bloat at most. There’s always good ol
su
when you’re really stuck. unknowing8343 ( @unknowing8343@discuss.tchncs.de ) 10•11 months agoI have 0 knowledge of these things, but I do know that people always comment that sudo is bloated, that nobody is truly using everything that sudo can do, only one basic command.
The Doctor ( @drwho@beehaw.org ) English1•11 months agoNobody is using all of sudo’s features because those features are for different use cases. Case in point, LDAP support. At home, pretty much nobody uses it. But on the job, where there are tens to hundreds of machines that someone might need, and they’re all hooked into LDAP for centralized authentication management, it makes sense to have that built into sudo. Same with Kerberos support - at home, forget it, but in a campus environment where Kerberos (and possibly AFS) are part of the network, it makes sense.
Zucca ( @Zucca@sopuli.xyz ) English6•11 months agosudo is a setuid binary, but it’s a fairly simple program
Some people would disagree to this.
The brief description of run0 already has too many potential points of failure.
If the “listener” is PID1, which will run the privileged command, in theory, it would be quite bullet proof (in a working system PID1 is always there). But since this is systemd, PID1 is much more than that and much more complex. On the other hand spawning another daemon from PID1 to be the “listener” makes it, perhaps, even more complicated. You’d have to make sure the listener is always running and have some process supervisor there to watch if it exits… and maybe even a watchdog polling it to make sure it isn’t frozen.
So my conclusion is the same as yours:
a solution in search of a problem
We already have a working solution. Have a well written SUID program. I’ve been using doas for some years now. It’s simple enough that I trust it.
lemmyvore ( @lemmyvore@feddit.nl ) English2•11 months agoI’ve always wondered why we even bother with SUID commands. Why not just log in as root?
Kata1yst ( @Kata1yst@kbin.social ) 5•11 months agoOn a server, it allows you to track who initiates which root season session. It also greatly minimizes the attack surface from a security perspective to have admin privileged accounts unable to be remotely connected to.
lemmyvore ( @lemmyvore@feddit.nl ) English2•11 months agoOn a server, it allows you to track who initiates which root season session.
Wouldn’t separate SSH keys achieve the same?
greatly minimizes the attack surface from a security perspective to have admin privileged accounts unable to be remotely connected to.
Really? How, exactly? Break the ssh key authentication? And wouldn’t that apply to all accounts equally?
Kata1yst ( @Kata1yst@kbin.social ) 3•11 months agoWouldn’t separate SSH keys achieve the same?
Separate ssh keys for the user and the admin? Yeah, see point 2, admins should not be remotely accessible.
Really? How, exactly? Break the ssh key authentication? And wouldn’t that apply to all accounts equally?
Keys aren’t perfect security. They can easily be mishandled, sometimes getting published to GitHub, copied to USB drives which can easily be lost, etc.
Further, there have been attacks against SSH that let malicious actors connect remotely to any session, or take over existing sessions. By not allowing remote access on privileged accounts, you minimize risk.
Forcing a non privileged remote session to authenticate with a password establishes a second factor of security that is different from the first. This means a cracked password or a lost key is still not enough for a malicious actor to accomplish administrative privileges.
A key is something you have
A password is something you know
So, by not allowing remote privileged sessions, we’re forcing a malicious actor to take one more non-trivial step before arriving at their goals. A step that will likely be fairly obvious in logs on a monitored machine.
lemmyvore ( @lemmyvore@feddit.nl ) English1•11 months agoIf I get into your non-privileged account I can set up a program that acts like sudo and I bet 99% of people will never notice they just gave their password away. And even if they do it’s too late anyway because I’ve just compromised root and locked everybody out and I’m in there shitting on the filesystems or whatever. Because root can do anything.
And if I can’t break into your non-privileged account then I can’t break into a privileged account either.
These artificial distinctions between “non-privileged” and “superuser” accounts need to stop. This is not good security, this is not zero trust. Either you don’t trust anybody and enforce explicit privilege escalation for specific things, or just accept that you’re using a “super” paradigm and once you’ve got access to that user all bets are off.
Kata1yst ( @Kata1yst@kbin.social ) 4•11 months agoI strongly disagree with your premise. Separating authentication and privilege escalation adds layers of security that are non-trivial and greatly enhance resilience. Many attacks are detected and stopped at privilege escalation, because it happens locally before a user can stop or delete the flow of logs.
If I get into your non-privileged account I can set up a program that acts like sudo
No you cannot. A non privileged user doesn’t have the access necessary to run a program that can accomplish this.
And even if they do it’s too late anyway because I’ve just compromised root and locked everybody out and I’m in there shitting on the filesystems or whatever. Because root can do anything.
Once again, you didn’t privilege escalate, because once you have a foothold (authentication) you don’t have the necessary privileges, so you must perform reconnaissance to identify an exploitable vector to privilage escalate with. This can be any number of things, but it’s always noisy and slow, usually easy to detect in logs. There is a reason the most sophisticated attacks against well protected targets are “low and slow”.
And if I can’t break into your non-privileged account then I can’t break into a privileged account either.
You’re ignoring my points given regarding the risks of compromised keys. If there are no admin keys, there are no remote admin sessions.
These artificial distinctions between “non-privileged” and “superuser” accounts need to stop. This is not good security, this is not zero trust. Either you don’t trust anybody and enforce explicit privilege escalation for specific things, or just accept that you’re using a “super” paradigm and once you’ve got access to that user all bets are off.
Spoken like someone who has never red teamed or purple teamed. Even admin accounts are untrusted, given only privileges specific to their role, and closely monitored. That doesn’t mean they should have valid security measures thrown away.
TimeSquirrel ( @TimeSquirrel@kbin.social ) 4•11 months agoWe used to do that a lot, in the 90s and early 2000s. We determined that that’s not a good idea. People even ran DEs under root.
lemmyvore ( @lemmyvore@feddit.nl ) English2•11 months agoI’m not saying to run everything as root but most of the reasons given for sudo are bull. This blog post makes a good job of debunking them.
Zucca ( @Zucca@sopuli.xyz ) English1•11 months agoYeah. I keep one root tmux session open on my main PC for administrative tasks.
Adanisi ( @Adanisi@lemmy.zip ) English22•11 months agoFuck off Poettering. Stop trying to absorb the whole system.
EDIT: apparently systemd absorbing the whole system with it’s nonstandard, monolithic nightmare is a good thing, judging from downvotes. Carry on.
The Doctor ( @drwho@beehaw.org ) English12•11 months agoHe’s trying to turn Linux into Windows NT. And Microsoft hired him as a reward for doing so.
TechNom (nobody) ( @technom@programming.dev ) English5•11 months agoThe vast majority of Linux users consider systemd as a good thing because it apparently makes system administration easier. They also don’t agree that systemd is monolithic, because it’s actually designed modular.
But of course there are detractors. The only thing I like about systemd is its declarative service definition and parallel service startup. But if I wanted to run an OS with bloated and inscrutable software (even with the source code), my choice wouldn’t be Linux or Systemd.
I also routinely switch parts of my OS. This is harder with systemd. Although it is modular, the modules are so tightly coupled that it will prevent the replacement of modular components with alternatives. Frankly, I think systemd is killing the innovation in system component development.
laurelraven ( @laurelraven@lemmy.blahaj.zone ) 4•11 months agoYeah… Not sure how everyone lets them get away with calling it “modular” when it’s next to impossible to swap out the modules
Zucca ( @Zucca@sopuli.xyz ) 1•10 months agobecause it’s actually designed modular
Oh? Try to use systemd without logind or journald. logind isn’t so bad, but journald was bad enough, that I gave up with systemd.
TechNom (nobody) ( @technom@programming.dev ) English2•10 months agoI use Gentoo with OpenRC. So my position in this matter should be clear. Anyway, check the last paragraph again to see what I think about systemd’s modularity.
Zucca ( @Zucca@sopuli.xyz ) 2•10 months agoYes. I agreed with you. But I made it sound like something else. Bad wording on my side.
As I’m too Gentoo openrc user. I also use seatd+greetd instead of (e)logind and replacing sysvinit with openrc-init. The availability of choices made me do it!
TechNom (nobody) ( @technom@programming.dev ) English2•10 months agoOh! I misunderstood. Sorry! Glad to meet a fellow Gentoo here!
Eugenia ( @eugenia@lemmy.ml ) English22•11 months agoI personally don’t have a problem with run0 over sudo, however, I don’t want to have to remember to use a different command on the terminal. Just rename it “sudo”, and do the new stuff with it. Just don’t bother me having to remember new commands.
TechNom (nobody) ( @technom@programming.dev ) English10•11 months agoYou can uninstall the sudo application and add
sudo
as an alias forrun0
in your shell initialization script. That’s better than them renaming run0 to sudo, because that will prevent people from running the real sudo if they want it. mariusafa ( @mariusafa@lemmy.sdf.org ) 7•11 months agoYou can create aliases
jeremyparker ( @jeremyparker@programming.dev ) 22•11 months agoMe: Oh, I get it, this “Lemmy” website – it’s like The Onion but for nerds?
My fellow lemmings: No, they’re serious. run0 is real.
Me: Hah. The Onion, but for nerds! I love it.
ancap shark ( @pipows@lemmy.today ) 17•11 months agoWill this be an integral part of systemd, or will they release it as a separate thing? I mean, if I like it, but I’m not using systemd (I do use it, but I’m just thinking about it), could I use this run0 (horrible name) without having to buy into all of systemd?
Brunacho ( @brunacho@scribe.disroot.org ) English24•11 months agoit’s just a link to systemd-run which is a part of systemd, i doubt it works separately.
but, if you use s6 as an alternative init system, s6-sudo is a somewhat equivalent aproach to how run0 works (instead of systemd-run it calls s6-ipcclient)
Possibly linux ( @possiblylinux127@lemmy.zip ) English1•11 months agoMost systems ship with systemd
null ( @null@slrpnk.net ) 17•11 months agoThey were very specifically talking about ones that don’t.
penquin ( @penquin@lemmy.kde.social ) 15•11 months agoLol. Right after Microsoft added sudo to windows.
corsicanguppy ( @corsicanguppy@lemmy.ca ) 9•11 months agoLennart’s cancer spreads.
twei ( @twei@discuss.tchncs.de ) 4•11 months agowtf
MonkderDritte ( @MonkderDritte@feddit.de ) 6•11 months agoNot-invented-here
jbk ( @jbk@discuss.tchncs.de ) 2•11 months agoIt does something different and doesn’t ask to replace sudo everywhere. You brainless trashtalkers can’t even read an article before you judge.
Phoenixz ( @phoenixz@lemmy.ca ) 5•11 months agoAt this point I looks to replace systemd with vim. Anything better than systemd mess