877
systemdeez nuts (sh.itjust.works)
you are viewing a single comment's thread
view the rest of the comments
[-] snake_case_lover@lemmy.world 42 points 7 months ago

What do you expect from an init system? It's like saying my cpu is infectious because my computer depends on it

[-] ricecake@sh.itjust.works 37 points 7 months ago

It's that it also decided to take over log management, event management, networking, DNS resolution, etc, etc.

If it were just an init system that would be perfectly portable. People were able to write software that way with sysv for years.

It's that in order to do certain low level tasks on a systemd system, you need to integrate with systemd, not just "be started by it". Now if a distro wants that piece of software, it needs to use systemd, and other pieces of software that want to be on that distro need to implement integration with systemd.

A dependency isn't infectious, but a dependency you can't easily swap out is, particularly if it's positioned near the base of a dependency tree.

Almost all of my software can run on x86 or arm without any issues beyond changing compiler targets. It's closer to how it's tricky to port software between Mac and Linux, or Linux and BSD. Targeting one platform entails significant, potentially prohibitive, effort to support another, despite them all being ostensibly compatible unix like systems.

[-] Vilian@lemmy.ca 7 points 7 months ago* (last edited 7 months ago)

log management, event management, networking, DNS resolution

and this is a bad thing? the distro can choose to not use it, but because every systemd distro uses it, it's a 1000x easier to implement it without needing to put a fuck tons of if-else's for every distro

[-] ricecake@sh.itjust.works 14 points 7 months ago

No, not everyone thinks it's a bad thing. It is, however, infectious, which is a reason some people don't like it.

Knowing why people dislike something isn't the same as thinking it's the worst thing ever, and liking something doesn't mean you can't acknowledge it's defects.

I think it's a net benefit, but that it would be better if they had limited the scope of the project a bit, rather than trying to put everything in the unit system.

[-] Vilian@lemmy.ca 4 points 7 months ago

and what's the problem?, it's not like everything is in the same binary or it's a monstrosity that can't be used without using every single feature, it's a project that just has different programs under the same project name, because no one wanted todo theoe programs

[-] nick@midwest.social 3 points 7 months ago

Bro I’m with you on this but the systemd bots will just keep arguing with and downvoting you. Don’t bother.

[-] radiant_bloom@lemm.ee 2 points 7 months ago

That’s why I personally try very hard to only rely on POSIX stuff, even when it’s massively inconvenient. The only thing I haven’t gotten around to replacing yet is GNU make.

[-] bjoern_tantau@swg-empire.de 19 points 7 months ago

I think the init system is the best part of systemd. It is sooo easy to use. You don't have to write the same complicated shell script for your software like everyone else. You just give systemd the path to your executable and that's basically it. It does the rest and you don't have to worry about PID files or forking the actual software. Systemd basically runs it like you did while developing it.

I think what people don't like are all the other parts of systemd that seem to be tightly coupled. I don't know if it is even possible to run just the systemd init without any other systemd package.

The last time I got angry at systemd was when resolvd did some DNS shit I did not approve of.

[-] hisbaan@lemm.ee 3 points 7 months ago

I may be wrong but I believe that all of the systemd programs are decoupled. You can run the systemd init system without any resolved or networkd. They just happen to be used by default on a lot of distros.

[-] Deckweiss@lemmy.world 6 points 7 months ago* (last edited 7 months ago)

I expect it to not run a stop job for 90 seconds by default every time I want to quickly shut down my laptop. /s

[-] snake_case_lover@lemmy.world 13 points 7 months ago

it doesn't run a job it waits for your jobs to end. You can set the default want time. Its the same thing on windows that asks programs to close before shutting down. If a critical application got stuck systemd has nothing to do with it

[-] Deckweiss@lemmy.world 6 points 7 months ago* (last edited 7 months ago)

I know what it is. But it literally says "A stop job is running" and since english is not my first language, I had no good idea how to better express the technicalities of it in a short sentence.

As for it having nothing to do with systemd:

I am dual booting arch and artix, because I am currently in the middle of transitioning. I have the exact same packages on both installs (+ some extra openrc packages on artix).

  • About 30% of the shutdowns on arch do the stop job thing. It happens randomly without any changes being done by me between the sessions.

  • 0% of the shutdowns on artix take more than 5 seconds.

I know that I can configure it. But why is 90 seconds a default? It is utterly unreasonable. You cite windows doing it, but compare it instead to mac, which has extremely fast powerups and shutdowns.

And back to the technicalities, openrc doesn't say "a stop job is running", so who runs the stop job if not systemd?

[-] MartianSands@sh.itjust.works 8 points 7 months ago

The question you should be asking is what's wrong with that job which is causing it to run for long enough that the timeout has to kill it.

Systemd isn't the problem here, all it's doing is making it easy to find out what process is slowing down your shutdown, and making sure it doesn't stall forever

[-] Deckweiss@lemmy.world 3 points 7 months ago* (last edited 7 months ago)

I will not debug 3rd party apps. I don't even want to think about my OS nor ask any questions about it. I want to use a PC and do my job. That includes it shutting down asap when I need it to shut down asap.

systemd default - shutdown not always asap

openrc default - shutdown always asap

whatever the heck macs init system is - shutdown always asap

It may be not the "fault" of systemd, but neither does it do anything helpful to align itself with my needs.

[-] MartianSands@sh.itjust.works 6 points 7 months ago* (last edited 7 months ago)

The default is as long as it is because most people value not losing data, or avoiding corruption, or generally preserving the proper functioning of software on their machine, over 90 seconds during which they could simply walk away.

Especially when those 90 seconds only even come up when something isn't right.

If you feel that strongly that you'd rather let something malfunction, then you're entirely at liberty to change the configuration. You don't have to accept the design decisions of the package maintainers if you really want to do something differently.

Also, if you're that set against investigating why your system isn't behaving the way you expect, then what the hell are you doing running arch? Half the point of that distro is that you get the bleeding edge of everything, and you're expected to maintain your own damn system

[-] Deckweiss@lemmy.world 2 points 7 months ago* (last edited 7 months ago)

If an app didn't manage to shut down in 90seconds, it is probably hanging and there will be "DaTa LoSs" no matter if you kill it after 2 seconds or after 90.


Been running arch for over 5 years now.

I track all my hours and for arch maintenance I've spent a grand total of ~41 hours (desktop + laptop and including sitting there and staring at the screen while an update is running). The top three longest sessions were:

  1. btrfs data rescue after I deleted a parent snapshot of my rollback (~20h)
  2. grub update (~2h)
  3. jdk update which was fucky (~30min)

|

It's about 8.2 hours per year (or ~10minutes per week) which is less than I had to spend on windows maintenance (~22h/y afair, about half of that time was manually updating apps by going to their website and downloading a newer version).

Ubuntu also faired worse for me with two weekends of maintenance in a year (~32h), because I need the bleeding edge and some weird ass packages for work and it resulted in a frankenstein of PPAs and self built shit, which completely broke on every release upgrade.

[-] EinfachUnersetzlich@lemm.ee 3 points 7 months ago

btrfs data rescue after I deleted a parent snapshot of my rollback

Can you expand a bit on that? I thought it didn't matter if you deleted parent snapshots because the extents required by the child would still be there.

[-] Deckweiss@lemmy.world 1 points 7 months ago* (last edited 7 months ago)

Honestly, I have no idea why it went wrong or why it let me do that. Also my memory is a bit fuzzy since it's been a while, but as best I can remember what I did step by step:

  1. fuck around with power management configs
  2. using btrfs-assistant gui app, rolled back to before that
  3. btrfs-assistant created an additional snapshot, called backup something, I didn't really pay attention
  4. reboot, all seemed good
  5. used btrfs-list to take a look, the subvolume that was the current root / was a child of the aformentioned backup subvolume
  6. started btrfs-assistant and deleted the backup subvolume
  7. system suddenly read only
  8. reboot, still read only
  9. btrfs check said broken refs and some other errors,
  10. i tried to let btrfs check fix the errors, which made it worse, now I couldn't even mount the drive anymore because btrfs was completely borked
  11. used btrfs rescue, which got all files out onto an external drive successfully
  12. installed arch again and rsync the rescued files over the new install, everything works as before, all files are there
[-] EinfachUnersetzlich@lemm.ee 2 points 7 months ago

btrfs check said broken refs and some other errors,

Gotcha. That must have been a kernel bug (or hardware error), none of the userspace utilities could cause it unless they were trying to manipulate the block device directly, which would be really dumb. It's possible it wasn't even related to the subvolume manipulation.

this post was submitted on 19 Apr 2024
877 points (100.0% liked)

linuxmemes

21291 readers
835 users here now

Hint: :q!


Sister communities:


Community rules (click to expand)

1. Follow the site-wide rules

2. Be civil
  • Understand the difference between a joke and an insult.
  • Do not harrass or attack members of the community for any reason.
  • Leave remarks of "peasantry" to the PCMR community. If you dislike an OS/service/application, attack the thing you dislike, not the individuals who use it. Some people may not have a choice.
  • Bigotry will not be tolerated.
  • These rules are somewhat loosened when the subject is a public figure. Still, do not attack their person or incite harrassment.
  • 3. Post Linux-related content
  • Including Unix and BSD.
  • Non-Linux content is acceptable as long as it makes a reference to Linux. For example, the poorly made mockery of sudo in Windows.
  • No porn. Even if you watch it on a Linux machine.
  • 4. No recent reposts
  • Everybody uses Arch btw, can't quit Vim, and wants to interject for a moment. You can stop now.
  •  

    Please report posts and comments that break these rules!


    Important: never execute code or follow advice that you don't understand or can't verify, especially here. The word of the day is credibility. This is a meme community -- even the most helpful comments might just be shitposts that can damage your system. Be aware, be smart, don't fork-bomb your computer.

    founded 1 year ago
    MODERATORS