[HN Gopher] OpenRC is a dependency-based init system for Unix-li...
___________________________________________________________________
OpenRC is a dependency-based init system for Unix-like systems
Author : mariuz
Score : 111 points
Date : 2023-06-27 17:18 UTC (5 hours ago)
(HTM) web link (wiki.gentoo.org)
(TXT) w3m dump (wiki.gentoo.org)
| nickstinemates wrote:
| I really love OpenRC, and Gentoo in general. It's my favorite
| linux distro by far.
| contingencies wrote:
| Me too. It has the best and only package management system with
| the required configurability for many complex but real
| situations that make other distros a non-option. The biggest
| drawback of course is if you don't update a box for awhile you
| have to redo from stage3 - rolling releases are a double-edged
| sword. In theory, portage solves this. In practice, it just
| gets to a certain level of ungrokkable problems and you have to
| pull the parachute. Currently battling with ZFS root (stage3
| and portage snapshots on same filesystem) as a workaround. It's
| nontrivial getting that up and running again. But once I do
| it's probably going to be a stable workhorse for 5+ years. I'm
| done with Apple.
| VTimofeenko wrote:
| That parachute even comes with a spare for some open heart
| surgery on a system. Migrating no-multilib -> multilib is
| totally doable with some careful chrooting and a rebuild from
| stage1.
| redog wrote:
| Zfs root on my daily driver machine is held together by...
| blood sacrifice .,built it's first kernel in Feb 2014 and
| have rescued it at least three times from catastrophic update
| neglect
|
| I finally killed a fedora install 2years unupdated...I quit
| trying to restore it after an hour and just took my data off
| wkat4242 wrote:
| Try FreeBSD. ZFS on root is like a concrete foundation <3
| contingencies wrote:
| 'zfs root on gentoo': _The way that can be named is not the
| way._ But it 's damn close.
| redog wrote:
| A zfs root implementation on a Gentoo system(which builds
| the zfs system it depends upon)...
| pxc wrote:
| When I was a teenager adventuring through the GNU/Linux userland
| and all its interchangeable components (including on Gentoo!),
| OpenRC was awesome compared to what I was used to (SysV).
| Beautiful colorized output, fast startup with parallel execution
| of jobs... all before Upstart (RIP, though I don't miss it) and
| Systemd.
|
| I'm pretty happy with Systemd these days, and in some ways I
| don't mind the way it has 'standardized' (read: dominated) Linux
| stacks. But I'm glad that people are still doing the work to keep
| OpenRC viable and integrating it into a full-featured, long-
| lived, relatively popular distro.
| skldjfhskdfgh wrote:
| i was fine with systemd for a few years, even truly enjoying
| getting rid of hacky docker workflows in place of machined.
|
| then i start to find out it is full of rando backdoors intended
| for VMs, which will run just the same on your bare metal. For
| example, just to list the very last one, you can inject smbios
| data that will be parsed to create files in your system. very
| convenient to drop passwords and keyfiles around a vm... unless
| it is the firmware on your actual bios doing the same. And we
| know how common persistence via bios is. sigh.
|
| but as you mention correctly, it have crushed and dominated
| linux. so i guess i just waste a week or some working around
| those things later, as usual.
| Asooka wrote:
| The unit and service file formats are honestly fine, it
| should be possible to have a second implementation. We have
| several varieties of SysV init already.
| dv_dt wrote:
| It may shift to a different community balance seeing how
| RedHat employs a lot of the main contributors to systemd and
| more recently are showing signs of acting in a more closed
| manner.
| gary_0 wrote:
| The main systemd guy, Lennart Poettering, recently left Red
| Hat to go work for Microsoft. Hmm...
| dv_dt wrote:
| Oh I didn't realize that. Maybe similar teeth, different
| dragon. I'm cautious about Microsoft, but recently I'd
| have to say they've been a reasonable Linux community
| member - though if there are fewer larger balancing orgs
| - who knows.
| inetknght wrote:
| > _about Microsoft, but recently I 'd have to say they've
| been a reasonable Linux community member_
|
| All it takes is to look around at what Microsoft is doing
| to _gestures vaguely_ to see the writing on the wall for
| how Microsoft sees Linux.
|
| Advertisements on the home screen? Advertisements on the
| every screen? Login darkpatterns? Configuration resets on
| updates? Forceful browser choices? Forced updates? UEFI
| shenanigans? Boot manager shenanigans?
| hawski wrote:
| Being now run increasingly more and more by IBM mothership
| I guess systemd may become a very profitable cow to fatten
| for them.
| wkat4242 wrote:
| How though? How will they make money off it?
|
| I do think they had commercial aspirations work systemd,
| but more about "being the company that invented..." Than
| a direct cash cow.
|
| This is in contrast to the play canonical makes with
| snaps that has 30% app store tax written all over it.
| Eduard wrote:
| > then i start to find out it is full of rando backdoors
| intended for VMs,
|
| Do you have some links to share?
| avhception wrote:
| Gentoo was the first distro that lead to me really
| understanding what was going on.
|
| So OpenRC was "normal" for me, and when the systemd debate came
| around I didn't think about the fact that OpenRC wasn't the
| norm and folks hat been using SysV init all that time.
|
| I'm still a Gentoo user these days (although not as heavily,
| the laptops are running Fedora nowadays), but running systemd.
| The unitfile format is really great.
| alerighi wrote:
| I also remember it, first time I installed Gentoo for it, it
| was very nice compared to the alternatives. Also very
| configurable, easy, and did also have an interactive boot mode
| to debug a system that didn't start.
| PrimeMcFly wrote:
| How does it compare to Runit[[0] used by Void Linux?
|
| [0]http://smarden.org/runit/
| euclaise wrote:
| Runit is way more minimal, the difference between them is
| extreme even on that alone
| arp242 wrote:
| I wouldn't say it's "more minimal", it just operates on an
| entirely different set of principles and assumptions.
| felixgallo wrote:
| finally, a modern alternative to systemd.
| bitwize wrote:
| Systemd is a complete solution to a variety of problems with
| system services under Linux, including user sessions, non-racy
| session termination, etc.
|
| Other init systems, not so much.
|
| There are no alternatives to systemd, kinda like there are no
| alternatives to Excel. Some packages solve many of the same
| problems, but none solve all of them as thoroughly.
| timw4mail wrote:
| Systemd is a hydra, gradually strangling more and more
| existing functionality with replacements of questionable
| utility.
| ape4 wrote:
| And it uses Linux native services like cgroups for isolation.
| blablabla123 wrote:
| > non-racy session termination
|
| I've seen a lot of dangling sessions with systemd actually
| although I'm not sure what the root cause is.
| anthk wrote:
| >non-racy session termination
|
| The irony it's hard there. SystemD it's the only init system
| which gave me errors trying to shutdown a machine...
|
| >alternatives to Excel
|
| You are right. Both systemd and Excels are turds. Excel
| mangled genomics data making it unusable and forcing
| _scientists_ to rename sequences in order to not clash with
| Excel 's internal names. That's utterly crap and a severe
| step backwards from scientists from the 90's used to be
| around Unix/GNU-Linux envs where they were utterly free to
| name whatever thing in almost any way they wanted.
| chaxor wrote:
| What scientist would ever even consider excel in the first
| place?
| bombela wrote:
| Same systemd often hang at shutdown and I cannot be
| bothered to understand why.
|
| My biggest issue with systemd is the log system. It is so
| stupidly slow, that I don't think it is possible to make it
| that slow without purpose. It literally takes minutes to
| grep though logs on any of my machines with journalctl.
|
| In fact it is so slow. It is faster to first eat the few
| minutes to extract the logs into a text file. Which I can
| then grep through in milliseconds.
|
| Oh and the raw text file takes less space than the systemd
| log database!
| jandrese wrote:
| [flagged]
| rkeene2 wrote:
| Yes, I have a software watchdog specifically because
| systemd sometimes fails to reboot correctly :-)
| krzyk wrote:
| Systemd is a solution to problems that exist in rare corner
| cases.
|
| We had a nail and all we needed was a hammer, instead we got
| a hydraulic press.
| wener wrote:
| Systemd is a complete solution to a variety of problems may
| not exists. :P
| hackcasual wrote:
| OpenRC predates systemd I believe
| hedora wrote:
| That doesn't mean its initial design didn't learn from the
| mistakes systemd made.
| edgyquant wrote:
| How could that be possible if it predates systemd?
| Arnavion wrote:
| It's also not a complete alternative, because it doesn't have
| anything for user session services like `systemd --user`. I
| use postmarketOS which is based on Alpine which uses OpenRC,
| and desktop session daemons currently have to be started by
| the compositor via XDG autostart files. So services start
| fine but they're not restarted if they crash, they have ad-
| hoc logging, etc.
|
| One of the pmOS devs wrote a user session service manager [1]
| but pmOS doesn't use it (yet?). And Alpine as a whole is
| planning on moving away from OpenRC anyway.
|
| [1]: https://git.sr.ht/~craftyguy/superd
| jabl wrote:
| Oh, what is Alpine planning to move to?
| Arnavion wrote:
| https://news.ycombinator.com/item?id=36496431
| jmclnx wrote:
| And it is portable to the BSDs, what a concept, writting
| portable applications :)
|
| To bad that is now out of fashion. If the BSD software was not
| portable Linux would not have gotten off the ground.
| Arnavion wrote:
| If there was a portable implementation of namespaces that was
| implemented by both Linux and BSDs, then sure systemd could
| be made more portable. Otherwise the only reason OpenRC is
| more portable is that it does not isolate services in the
| first place (as systemd does using namespaces).
| PlutoIsAPlanet wrote:
| It's a system service manager, it being portable is not a
| requirement nor any benefit when BSD has nearly no traction
| in the desktop or server space other than a few cases.
| jmclnx wrote:
| Some complex applications are starting to require systemd
| components. So yes, portability may become important to the
| BSDs.
| Gud wrote:
| Which applications?
| bmacho wrote:
| GNOME since more than 10 years
| yjftsjthsd-h wrote:
| > it being portable is not a requirement nor any benefit
| when BSD has nearly no traction in the desktop or server
| space other than a few cases.
|
| Is your argument that portability is irrelevant because
| nothing but (systemd/)GNU/Linux matters, or that service
| manager in particular don't need to be portable?
| lockhouse wrote:
| BSD is used in a lot more than you think due to solid
| engineering and a non-viral commercial friendly license.
| redog wrote:
| Daemontools for maximum minimumness
| throw7 wrote:
| Didn't know there was a standalone logind. Reminded me of how
| they broke vnc sessions. Still kind of annoyed at that one.
| jpgvm wrote:
| Loved OpenRC when I was still a Gentoo daily driver.
|
| These days on I'm systemd like almost everyone else but I will
| never forget how advanced it felt for it's time.
|
| It predated Upstart and systemd by several years but was already
| fully event-based with parallel execution etc BUT it didn't
| sacrifice the best parts of sysv to get there. At the end of the
| day you still had a bunch of relatively easily to debug shell
| scripts. Running Gentoo with OpenRC meant booting in a fraction
| of time of other distros out of the box.
|
| I appreciate the format of systemd unit files but they result in
| much of the complexity, corner cases etc being baked into systemd
| itself reducing debugability. systemd has it's own killer
| features ofc like systemd-nspawn and friends.
| messe wrote:
| You should try Gentoo+systemd these days. I'm running KDE
| Plasma on my gaming PC, and it works pretty smoothly. Wayland
| still has a few rare hiccups, as I'm on NVIDIA, but for the
| most part works without issue.
| srgpqt wrote:
| It's been the default (only?) init system for Alpine Linux since
| forever.
| Arnavion wrote:
| Alpine is hoping to replace it with s6.
| Pet_Ant wrote:
| For those who haven't heard of s6 before (like myself) here
| is the homepage: https://www.skarnet.org/software/s6/ and the
| repo: https://github.com/skarnet/s6
| wener wrote:
| Not by s6, but s6 author may introduce a new init for alpine
| generalizations wrote:
| Either way, I've been watching that s6 project for a couple
| years now and am looking forward to when that happens. Is
| there any progress on that front? I hadn't heard that the
| replacement might not actually be s6.
| jiripospisil wrote:
| Not really.
|
| https://old.reddit.com/r/AlpineLinux/comments/ug3ipr/any_
| new...
| systems_glitch wrote:
| Yup, we use Alpine on all of our hypervisors, the init system
| has never been a problem :P
| puzzlingcaptcha wrote:
| Few might remember that Alpine was originally based on Gentoo.
| You can still find some old references (like mkinitcpio hooks
| for fbsplash).
| klardotsh wrote:
| Possibly the biggest hint is /etc/apk/world, the "worldfile",
| or the list of explicitly installed packages. It's even the
| same verbiage Gentoo uses (albeit a different location -
| Gentoo stores it somewhere under /var)
| slicktux wrote:
| Oh, yes, OpenRC...my choice init when I was using Gentoo! I
| recall the controversy of OpenRC vs Systemd and the flame wars in
| IRC...
| bamfly wrote:
| I've used several Linux init systems over the years.
|
| OpenRC is the only one I've ever _liked_ using. Not sure why it
| never seemed to catch on with any of the major distros, even
| before Systemd made itself nigh-unavoidable.
| agumonkey wrote:
| it's strange that "liked using" isn't the goal in general
| zh3 wrote:
| Probably not a popular opinion in a systemd world (and being
| responsible for a lot of critical systems where things don't
| change much but absolutely have to work every day), the nice
| thing about sysv is all you need to know a little bit about
| shell commands and every day is groundhog day (i.e. not getting
| any calls because X has broken after touching Y). Not great for
| companies selling support, but great for those selling high-
| rel.
| linksnapzz wrote:
| I agree; not so much that I've found systemd to be
| unreliable, so much as that it is far more opaque than even
| the most involved SXX/KXX SysV shell script; I can debug a
| shell script, but when systemd does do something unexpected,
| it's utterly inscrutiable.
| taneliv wrote:
| I have serious dislike for what I perceive as (unnecessary)
| complexity of Systemd. I made a quick analysis of different
| init systems when that nigh-unavoidability had not yet
| happened. OpenRC seemed then the most reasonable of the ones I
| read about (for qualities I have since forgotten), and your
| comment stirred this memory.
|
| So, a question: why did/do you like using it?
| bamfly wrote:
| Found the ergonomics of rc-update and other commands
| exceptionally decent, and consistent enough that I could
| usually guess the correct invocation even if I hadn't used it
| in a while. Never saw it break or tie itself in knots (which,
| on Gentoo, at least as I managed _my_ Gentoo systems, was an
| accomplishment). I find the config syntax non-awful. Every
| other init system I 've tried is worse (IMO, obviously) on
| one or more of those fronts, and not enough-better on any
| others to make up for it.
| arp242 wrote:
| I use OpenRC to start runit on my Alpine systems, and use runit
| to manage everything else.
|
| I had some trouble getting the OpenRC script "just right", and
| figured this was easier. The systemd people really were right
| about SysV init being not-so-great (which, of course, doesn't
| automatically mean systemd is the answer).
|
| The overall principles and usage of runit (e.g. just keeping
| stdout/err attached) is significantly simpler than the whole
| "daemonize" dance.
| timw4mail wrote:
| Last I checked, OpenRC is still the default init system
| recommended in Gentoo setup.
| Arnavion wrote:
| Gentoo setup involves completely different downloads depending
| on whether you want OpenRC or systemd. It's not like there's a
| single installer that you run which lets you choose between the
| two and has OpenRC as the default choice. They're both
| equivalent and the installation handbook doesn't suggest either
| one over the other.
|
| Of course I have no doubt that there are more Gentoo users that
| use OpenRC than systemd, and I wouldn't be surprised if outing
| yourself as a systemd user will get you flamed in tech support
| channels :)
| Zambyte wrote:
| I don't think there is anything really stopping you from
| standing up a Gentoo system with OpenRC from the systemd
| installer or vice versa though. It seems really more like a
| convenience than a requirement to have both installers.
| Arnavion wrote:
| To be precise, there is a single installer image that you
| boot and use to create the partition layout. Then you pick
| a stage 3 tarball and unpack it into the root partition,
| and this tarball is either OpenRC-specific or systemd-
| specific.
|
| Yes it is possible to change your mind and switch from one
| to the other after installation, but it's not
| straightforward.
| djbusby wrote:
| IIRC the Kernel needs to know which one you use too.
| Flowdalic wrote:
| The kernel usually just needs to know which binary to
| execute as init, which is often provided as kernel
| command line argument by the bootloader.
| djbusby wrote:
| I use syslinux, which is manually updated, no init is
| passed in.
|
| In the Gentoo kernel make menuconfig there are options
| for Systemd vs OpenRC - not entirely sure what they do.
| djbusby wrote:
| I lurk the Gentoo IRC & mail (15+ years). I've never seen any
| systemd flames (not that they never happened). Gentoo IRC has
| always been helpful - even when I want to do stupid things.
| drbawb wrote:
| I tried to setup a Gentoo system for fun last weekend.
| (Crazy idea of a "fun weekend," I know.) I got to selecting
| a profile and wondered why there was no `systemd-hardened`
| profile. I was googling to try and understand what the
| hardened profiles do and found this thread[1] which said:
| "My personal opinion, having read many of the threads I've
| referred you to is that systemd and security go together
| like windows and security. That is, its an oxymoron."
|
| Maybe we have different ideas of what constitutes flaming,
| but to me comparing somebody's choice of operating software
| to the "W-word", in a linux distro support forum, is about
| as inflammatory as it gets. Saying that systemd is
| insecure-by0definition is also quite rude. This is several
| years old, and I'm sure things have changed in the
| intervening years, but as a perfectly happy systemd user I
| can say that thread definitely left a sour taste in my
| mouth, at least initially.
|
| [1]:
| https://forums.gentoo.org/viewtopic-t-1029642-start-0.html
| timw4mail wrote:
| Apparently it's been a while since I've had to go through
| that section of the manual.
| wkat4242 wrote:
| I don't like systemd, but I'm not too convinced by openrc.
|
| I know alpine has the inventor of s6 working on a service manager
| based on that and I have higher hopes for it.
___________________________________________________________________
(page generated 2023-06-27 23:00 UTC)