The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: Steffen Nurpmeso <steffen@sdaoden.eu>
To: Bakul Shah via TUHS <tuhs@tuhs.org>
Cc: Noel Chiappa <jnc@mercury.lcs.mit.edu>
Subject: [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' The Register
Date: Tue, 18 Jun 2024 00:49:31 +0200	[thread overview]
Message-ID: <20240617224931.bogV4e4V@steffen%sdaoden.eu> (raw)
In-Reply-To: <653E15D7-DD66-414C-94F3-A74B4EE3DD10@iitbombay.org>

Bakul Shah via TUHS wrote in
 <653E15D7-DD66-414C-94F3-A74B4EE3DD10@iitbombay.org>:
 |On Jun 16, 2024, at 8:57 PM, ron minnich <rminnich@gmail.com> wrote:
 |> I'm curious, as to the original topic of this discussion: can anyone \
 |> justify systemd-homed and how it works? Does that even look like \
 |> 0% of a unix idea?
 |
 |I am not a fan of systemd (or linux) and don't follow their excesses/adv\
 |entures but I am not a fan of how BSD does initialization & brings \
 |up services either. They don't quite get all the dependencies right \
 |for all the possible combinations of devices etc.  Its /etc/rc.d/* \
 |system is pretty clunky -- I tend to think any time you are repeating \

Now even more since they started to add a "jail-this-service"
variable, ie containerization by setting a variable.

 |more or less the same boilerplate code in many files, something worth \
 |abstracting is hiding in there.
 |
 |I like how launchd  treats a service as an object (more than just a \
 |program but also the auxiliary files and scripts). For me it was a \
 |lightbulb moment (like realizing how a function operates in an environme\

To me -- it turned off my light as i tried to "do something", but
could not figure out how; i somehow managed to create the XML file
necessary.  I am happy to have forgotten what it was about.  Ah,
wait, voila:

  $ v ~/arena/misc/macosx-plist-use.txt
  
  <?xml version="1.0" encoding="UTF-8"?>
  <!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
  <plist version="1.0">
  <dict>
          <key>Label</key>
          <string>com.bell-labs.plan9.u9fs</string>
          <key>Program</key>
          <string>/usr/bin/u9fs</string>
          <key>ProgramArguments</key>
          <array>
                  <string>u9fs</string>
                  <string>-l</string>
                  <string>/var/log/u9fs.log</string>
                  <string>-a</string>
                  <string>p9any</string>
                  <string>/opt/plan9</string>
          </array>
          <key>Sockets</key>
          <dict>
                  <key>Listeners</key>
                  <dict>
                          <key>SockServiceName</key>
                          <string>9pfs</string>
                  </dict>
          </dict>
          <key>inetdCompatibility</key>
          <dict>
                  <key>Wait</key>
                  <false/>
          </dict>
  </dict>
  </plist>
  
   To cause this to be run on system start, this should be
   installed as /Library/LaunchDaemons/9pfs.plist. Installing
   instead in /Library/LaunchAgents will cause it to be run only
   when a user is logged in, while $HOME/Library/LaunchAgents will
   cause it to be run only when that particular user is logged in.
  
   In order to start the listner it must first be ``loaded''
  $ sudo launchctrl load /path/to/9pfs.plist
  
   If you are running the Mac OS X firewall you will need to add
   an entry pass the 9pfs protocol in:
  SystemPreferences->Sharing->Firewall

I give you ten points for configuration lightbulb moments!
So nice and easy, also for human consumption once written.

  ...
 |What I want is to be able to map all my computers and compute clusters \
 |into a single virtual machine -- where storage, IO and computing resources \
 |may be added / removed without taking the whole VM down, and where \
 |each display/input user interface is a window on the same underlying \
 |VM and all sharing is under my control. Plan9 does a bit of this but \
 |that experiment ended too early. Apple is tending in this direction \
 |though not cleanly (+ I don't want to rely on a faceless behemoth corp \
 |that may trample on my data without even meaning to).

I had that dream somewhen spoken out in a FreeBSD IRC channel
a few years back.  It *could* be that the new per-service-jails do
it a bit like that, via nullfs mounting, that deep i have not
looked into it yet.
But my idea was that the base system is mounted partially, and you
would specify the PKGs you want in the jail, and that only the
files of the given pkgs are actually visible in the jail.

I use something a bit similar for some boxed things here on Linux,
with overlayfs; however, after

    mount -n -t overlay -o upperdir=${rundir}/storage,lowerdir=/,workdir=${rundir}/work \
            overlayfs ${rundir}/root || exit 21

i then start rm(1) removal of some files, eg

    rm -rf \
            ${rundir}/root/boot \
            ${rundir}/root/home \
            ${rundir}/root/media \
            ${rundir}/root/opt \
            ${rundir}/root/root \
            ${rundir}/root/run \
            ${rundir}/root/var \

plus over-mounting things like dev

    # devtmpfs fully populates instead, including log socket etc!!
    #mount -n -t devtmpfs dev ${rundir}/root/dev || exit 50
    mount -n -t tmpfs -o nosuid,noexec dev ${rundir}/root/dev || exit 50

etc etc etc.  That is *not* what i meant.
That idea is old, i have not yet managed it to create a shareable
root system, which is then *per-se* overlay mounted, even by the
system itself.  (That is: the base is shared by the base system
and containers, which then add onto what they want and need.  It
could even be mounted as a base for real VMs.)

Regarding systemd my only hope is that Linux remains usable
without it.  It seems more and more require the systemd
infrastructure in order to function, i have heard.
That "super / sudo / doas / [BSD] su -c" replacement that systemd
just recently added, somehow i followed a link to the github or so
issue where this was discussed, and i still hear the lead
developer of AlpineLinux ask for a separate udev, a part that
anyone needs, i think he did not even get an answer.  Which
deterred me further.  (I think the AlpineLinux lead developer's
name is pretty well-known in that society.)  Hmm.  It *could* be
that it was in fact in another issue that turned fixed linked-in
libraries like compressors like xz (the backdoor there, you know)
into dlopen()-managed mess, via kinda marshalling.  There.
Whatever.
Btw i did not sent out another email last week

  Jim Capp wrote in
   <1403506.1536.1718310415450.JavaMail.root@zimbraanteil>:
   |https://nosystemd.org/

  It is the pride and ignorance of the billion dollars that pay lots
  of developers on the Linux front that makes me sad.

  For example, on ossec-, we repeatedly see an OpenSUSE employee,
  who seems to get paid for doing security audits, publish security
  advisories.  That is (mostly seems to be) a one man show.
  Of course, many things happen behind the scenes, in bug trackers
  etc.  But i track fulldisclosure and ossec- for way over a decade.

  And "the same is true" for the boot and daemon monitoring
  environment.

  On FreeBSD, for example, one programmer is working to integrate
  "jail"ing
    (FreeBSD jails: twenty+ years ago it was a precondition in some
    system calls, looking for "is-jailed", plus dedicated network
    stack etc; usually (i hate it) also with its dedicated file
    system aka mounts etc. etc)
  into daemon startup aka the rc system, so you (that seems to be
  the idea) just set a rc.conf variable and the service is "boxed"
  in a jail automatically.

  If you look at all the rotten data in the Linux login etc (with
  PAM or not, etc etc), just a few programs in the startup process,
  but it is too much to keep them in line

Yeah!  [.] with modern achievements like PR_SET_CHILD_SUBREAPER to
move entire process hierarchies to dedicated zombie collectors and
such that is to say, with capabilities and all that, which systemd
makes easy, via easy text config files.  Ie, namespace containment
(aka network stack etc isolation), at your fingertips.
But per se a stacked call like

        cd /
        ip netns exec ${netns} \
                /usr/bin/env -i AUTHDISPLAY=${AUTHDISPLAY} DISPLAY=${DISPLAY} TERM=${TERM} XAUTHORITY=${XAUTHORITY} \
                        /usr/bin/unshare --ipc --uts --pid --fork --mount --mount-proc ${kill_child} ${rooter} ${prog} &
        pid=${!}
        [ -d /sys/fs/cgroup/_box_web ] && printf '%s\n' ${pid} > /sys/fs/cgroup/_box_web/cgroup.procs

#       if [ ${netns} = secweb ] || [ ${netns} = priwse ]; then
                wait $pid
                cleanup_setup
#       fi
        exec 7>&-

can (add capabilities) do the very same thing.

Btw there is an init-on-steroids [1] from the guy who took
maintainership of sysklogd quite some years ago (used by my Linux
distro ever since), it can also supervise, use cgroups, etc.
I plan to try it out for years, but since i realized i have to go
second line i have written some scripts, and then just call in via
SysV or OpenRC, or what.

I mean, i have no problem with the notification stuff of systemd,
it is now even included in OpenSSH (optionally, in
openbsd-compat/port-linux.c), but i mean the PID file things are
used for decades, and with "daemons and zombies are reparented to
a configured subreaper process" (instead of PID 1), and with the
fully capable but not systemd integrated udev (all "looser" Linux
distributions "have to use" eudev).  Ah!  Talking too much!!

  [1] https://github.com/troglobit/finit

--steffen
|
|Der Kragenbaer,                The moon bear,
|der holt sich munter           he cheerfully and one by one
|einen nach dem anderen runter  wa.ks himself off
|(By Robert Gernhardt)

  parent reply	other threads:[~2024-06-17 22:49 UTC|newest]

Thread overview: 142+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-06-17  0:48 Noel Chiappa
2024-06-17  1:02 ` Clem Cole
2024-06-17  1:05 ` Larry McVoy
2024-06-17  3:56   ` ron minnich
2024-06-17  3:57     ` ron minnich
2024-06-17  5:41       ` Bakul Shah via TUHS
2024-06-17  5:51         ` Bakul Shah via TUHS
2024-06-17 15:56           ` Clem Cole
2024-06-17 16:00             ` Clem Cole
2024-06-17 16:59               ` Charles H Sauer (he/him)
2024-06-17 16:43             ` Larry McVoy
2024-06-17 22:49         ` Steffen Nurpmeso [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-06-20 16:45 Lyndon Nerenberg (VE7TFX/VE6BBM)
2024-06-20 18:32 ` Kevin Bowling
2024-06-13 14:56 [TUHS] Version 256 of systemd boasts '42% less Unix philosophy' • " Charles H Sauer (he/him)
2024-06-13 15:33 ` [TUHS] " Dan Cross
2024-06-13 15:35 ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' ??? " Larry McVoy
2024-06-13 15:41   ` Alan D. Salewski
2024-06-13 15:55   ` Steve Nickolas
2024-06-13 15:39 ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' • " Clem Cole
2024-06-13 16:47   ` Arrigo Triulzi via TUHS
2024-06-13 18:39     ` segaloco via TUHS
2024-06-13 18:45       ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' ??? " Mychaela Falconia
2024-06-14  8:59         ` Ralph Corderoy
2024-06-13 18:54       ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' • " Dan Cross
2024-06-12 19:29         ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' " Greg A. Woods
2024-06-13 20:03           ` Dan Cross
2024-06-13 17:07             ` Greg A. Woods
2024-06-14 14:17             ` Grant Taylor via TUHS
2024-06-16  5:48               ` Alexis
2024-06-15  8:48                 ` Greg A. Woods
2024-06-16 19:44                   ` Clem Cole
2024-06-17  0:10                     ` Peter Yardley
2024-06-17  0:29                       ` Clem Cole
2024-06-17  1:01                   ` Alexis
2024-06-17  1:21                     ` Warner Losh
2024-06-17  1:25                     ` Larry McVoy
2024-06-17  1:32                       ` Warner Losh
2024-06-17 19:21                       ` Stuff Received
2024-06-17 19:28                         ` Larry McVoy
2024-06-17 22:34                         ` Steve Nickolas
2024-06-16  7:57                           ` Greg A. Woods
2024-06-17 23:44                             ` Warner Losh
2024-06-18  0:06                               ` Larry McVoy
2024-06-18 22:44                               ` Greg A. Woods
2024-06-19  2:33                                 ` David Arnold
2024-06-18  1:52                             ` Steve Nickolas
2024-06-18  4:52                               ` segaloco via TUHS
2024-06-18 22:50                                 ` Greg A. Woods
2024-06-18 23:03                                   ` Warner Losh
2024-06-18 23:27                                     ` ron minnich
2024-06-19  1:38                                     ` Greg 'groggy' Lehey
2024-06-19  1:42                                       ` Warner Losh
2024-06-19 23:28                                         ` Greg A. Woods
2024-06-20  5:01                                           ` Scot Jenkins via TUHS
2024-06-20  5:09                                             ` Luther Johnson
2024-06-20  5:18                                               ` Luther Johnson
2024-06-20 18:34                                             ` Greg A. Woods
2024-06-20 18:41                                               ` Adam Thornton
2024-06-20 19:59                                                 ` Warner Losh
2024-06-20 20:12                                                   ` ron minnich
2024-06-20 20:22                                                     ` Adam Thornton
2024-06-20 20:29                                                     ` ron minnich
2024-06-21 15:46                                                     ` Chet Ramey via TUHS
2024-06-21 16:06                                                       ` Henry Bent
2024-06-21 16:24                                                         ` Chet Ramey via TUHS
2024-06-21 16:40                                                           ` Henry Bent
2024-06-21 16:52                                                             ` Warner Losh
2024-06-21 17:25                                                             ` Chet Ramey via TUHS
2024-06-21 17:31                                                             ` Phil Budne
2024-06-21 17:55                                                               ` Chet Ramey via TUHS
2024-06-20 20:19                                                   ` Clem Cole
2024-06-20 20:34                                                   ` Luther Johnson
2024-06-20 21:00                                                     ` ron minnich
2024-06-20 21:53                                                       ` David Arnold
2024-06-20 22:00                                                         ` ron minnich
2024-06-20 22:11                                                           ` Larry McVoy
2024-06-20 22:35                                                       ` Luther Johnson
2024-06-21 13:57                                                       ` Stuff Received
2024-06-20  8:05                                           ` Steve Nickolas
2024-06-19  2:38                                     ` David Arnold
2024-06-19 22:52                                     ` Greg A. Woods
2024-06-19  0:08                                   ` Luther Johnson
2024-06-19  0:46                                     ` Nevin Liber
2024-06-19  1:00                                       ` segaloco via TUHS
2024-06-19  3:07                                       ` Luther Johnson
2024-06-19  3:14                                         ` Luther Johnson
2024-06-19  3:36                                           ` Luther Johnson
2024-06-19  6:50                                           ` arnold
2024-06-19 11:28                                             ` sjenkin
2024-06-19  9:00                                         ` Ralph Corderoy
2024-06-19 13:28                                       ` Larry McVoy
2024-06-19 14:44                                         ` Warner Losh
2024-06-19 14:53                                           ` Larry McVoy
2024-06-19 15:08                                             ` Warner Losh
2024-06-19 15:11                                             ` G. Branden Robinson
2024-06-19 15:16                                             ` ron minnich
2024-06-19 15:59                                         ` Theodore Ts'o
2024-06-19 22:48                                           ` Kevin Bowling
2024-06-20  5:14                                             ` David Arnold
2024-06-20  5:32                                               ` George Michaelson
2024-06-20  6:37                                                 ` Alexis
2024-06-20  7:07                                                   ` David Arnold
2024-06-21 15:41                               ` Chet Ramey via TUHS
2024-06-21 15:38                           ` Chet Ramey via TUHS
2024-06-20 20:14                       ` Alexander Schreiber
2024-06-16  6:43                 ` Wesley Parish
2024-06-16 21:56               ` David Arnold
2024-06-16 23:34                 ` Luther Johnson
2024-06-16 23:46                   ` Larry McVoy
2024-06-17 21:40                     ` Steffen Nurpmeso
2024-06-17  0:54                 ` Åke Nordin
2024-06-18  5:55                 ` Alexis
2024-06-18  6:39                   ` Michael Kjörling
2024-06-13 19:37       ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' • " Alan D. Salewski
2024-06-13 20:05         ` Clem Cole
2024-06-13 20:31           ` Bakul Shah via TUHS
2024-06-13 20:06         ` A. P. Garcia
2024-06-13 20:26           ` Jim Capp
2024-06-13 21:35           ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' ??? " Larry McVoy
2024-06-14  0:27         ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' • " Alexis
2024-06-14  0:59           ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' ??? " Larry McVoy
2024-06-14  1:11             ` Luther Johnson
2024-06-14  1:42             ` Alexis
2024-06-14  4:22               ` ron minnich
2024-06-14  6:54               ` Angel M Alganza
2024-06-14  7:04             ` Dave Horsfall
2024-06-14  7:33             ` arnold
2024-06-14  7:34             ` Andy Kosela
2024-06-14  7:44               ` Dave Horsfall
2024-06-14 11:31             ` Vincenzo Nicosia
2024-06-13 20:26     ` [TUHS] Re: Version 256 of systemd boasts '42% less Unix philosophy' • " Dave Horsfall
2024-06-14 11:32       ` Michael Kjörling
2024-06-14 12:21         ` A. P. Garcia
2024-06-18 12:02           ` Arrigo Triulzi via TUHS
2024-06-23  0:13         ` Dave Horsfall
2024-06-23  1:47           ` Alexis
2024-06-23 19:00             ` Theodore Ts'o
2024-06-23 20:04               ` Alexander Schreiber
2024-06-24 13:50                 ` Theodore Ts'o
2024-06-24 14:21                   ` Dan Cross
2024-06-26  7:39                     ` Kevin Bowling
2024-06-24 15:03                   ` Steffen Nurpmeso

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240617224931.bogV4e4V@steffen%sdaoden.eu \
    --to=steffen@sdaoden.eu \
    --cc=jnc@mercury.lcs.mit.edu \
    --cc=tuhs@tuhs.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).