this post was submitted on 29 Jun 2023
141 points (96.7% liked)

Linux

48731 readers
1217 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

SystemD is blamed for long boot times and being heavy and bloated on resources. I tried OpenRC and Runit on real hardware (Ryzen 5000-series laptop) for week each and saw only 1 second faster boot time.

I'm old enough to remember plymouth.service (graphical image) being the most slowest service on boot in Ubuntu 16.04 and 18.04. But I don't see that as an issue anymore. I don't have a graphical systemD boot on my Arch but I installed Fedora Sericea and it actually boots faster than my Arch despite the plymouth (or whatever they call it nowadays).

My 2 questions:

  1. Is the current SystemD rant derived from years ago (while they've improved a lot)?
  2. Should Linux community rant about bigger problems such as Wayland related things not ready for current needs of normies?
you are viewing a single comment's thread
view the rest of the comments
[–] TerraRoot 6 points 2 years ago (3 children)

I just hate the syntax, systemctl start apache2 feels like dumb manager speak over service apache2 start.

But other then that I love how systemd has been for me.

[–] [email protected] 7 points 2 years ago (1 children)

How so? I like the systemctl syntax more, since it allows for starting/stopping many units at once. It also supports a much richer set of commons than service ever did.

[–] TerraRoot 2 points 2 years ago (2 children)

it just feels like a manager decided the command should read like english, made the decision then went back to never entering a command again in the terminal again. every day, i get to decide, should i enter "systemctl restart problem_service" all again or hit up on the keyboard and and hold back, then rewrite over the previous status command. bit less work if the status/stop/start/restart bit was on the end like it used to be.

[–] [email protected] 7 points 2 years ago (1 children)

In BASH ALT+T will swap the last white spaced separated strings.. It's still annoying but makes "systemctl problem_server start/status/restart" a bit easier. CTRL+W will clear the current string to whitespace, so up arrow, ALT+T, CTRL+W, status, ALT+T, Enter.

[–] [email protected] 1 points 2 years ago

@MaxHardwood @TerraRoot ^start^status is another option.

[–] themoonisacheese 6 points 2 years ago (1 children)

The bit was on the end because it was an argument to the script specific to that program. Instead, the control is now at the start because it is an argument to systemctl itself. This removes the ability to define custom controls, but enables you to control many things at once.

[–] [email protected] 2 points 2 years ago* (last edited 2 years ago)

Yeah, command subcommand args.... The service format makes more sense when you're seeing it as "run this script to control this service". The systemctl format makes more sense as a frontend subcommand to control systemd itself.

[–] [email protected] 2 points 2 years ago* (last edited 2 years ago)

Y'know, I felt that way to begin with and it certainly took a long time for my fingers to adjust, but I've grown to adjust to that.

And it's better - you can do: "systemctl restart Service1 Service2 Service3" Before, with "system Service1 restart" you could only action on service at a time.

Plus, it's linux, so you can set up aliases to change the order into anything you like, even carry on using the old muscle memory formats. (Although I don't encourage this if you intend working on multiple servers!)

[–] [email protected] 2 points 2 years ago

systemctl start apache2 mysql haproxy

That is the reason.