The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
From: "Theodore Ts'o" <tytso@mit.edu>
To: Dan Cross <crossd@gmail.com>
Cc: The Eunuchs Hysterical Society <tuhs@tuhs.org>
Subject: Re: [TUHS] moving directories in svr2
Date: Mon, 3 Jan 2022 15:23:54 -0500	[thread overview]
Message-ID: <YdNbWqv9FMJMkgDZ@mit.edu> (raw)
In-Reply-To: <CAEoi9W64Ek1++_mt84WO6WY42xZc75Y8o2kCxS-ktoCKf=NSRA@mail.gmail.com>

On Mon, Jan 03, 2022 at 08:35:24AM -0500, Dan Cross wrote:
> > (No
> > matter that Solaris 2 was a major step *backwards* in terms of
> > performance and stability compared to Sun OS....)
> 
> That it was, at least initially. It's actually pretty good now, but it
> took a _long_ time to get there, and the forced incompatibilities
> caused a lot of pain in the process, which was my original thesis.
> Even now, though, I find some things gratuitously different than other
> versions of Unix (network administration, for example). Managing NFS
> is still something of a mystery to me.

Yeah, to be fair, by the time Solaris 2.3 or 2.4 came around, it was
mostly up to par.  (Or maybe it was because Moore's law meant that we
didn't care any more.  :-)

> Are there _distros_ that don't supply those things? Probably; I really
> have no idea. Are there mainstream distros that do not? I doubt it.
> However, they have to be installed, which is an additional step that
> has to at least be accounted for. At scale, that's a pain: I imagine
> that if, say, Google wanted to move to `ip` in lieu of `ifconfig` et
> al in prod, it would be a multiyear process, including sunsetting the
> older tools. Just identifying every use of `ifconfig` in a shell
> script somewhere would be a pretty major undertaking.

Sure, but there's no *point* to sunset the old tools.  The git tree
for net-tools is still being actively developed (the last commit was
dated December 12, 2021).  And the kernel interfaces are not going to
be disappear, because of the prime directive: Thou Shalt Not Break
Userspace.

> > The reason why ip and ss were added was because there was a
> > significant amount of new functionality that was added to the Linux
> > networking stack (especially relating to routing and address aliasing)
> > that couldn't be expressed using the older C programming interfaces as
> > well as the ifconfig/route shell commands.
> 
> Surely the programmatic interfaces are separate from their realization
> in a tool? I can understand the rigidity of some `ioctl` based
> interface that's a pain to work around; I find it harder to believe
> that plugging some other interface into `ifconfig` in a relatively
> graceful way is untractible. Surely, in the limit, one could extend
> ifconfig with a new verb as the first positional argument that expands
> to the argument set of `ip`: `ifconfig ip address ...` etc. Maybe that
> was considered and rejected by the maintainers.

Well, take a look at the ip-route man page.  The BSD route command
assumes fundamentally there is a single routing table that you can
update.  In Linux, there are multiple routing tables --- to support
NAT, VRF (virtual routing and forwarding), etc.

I suspect the other consideration was that all of this extra
functionality and complexity were done by folks who wanted the Linux
networking stack to essentially have pretty much all of the
functionality of a Cisco Router.  So it made sense to create a new
user interface interface that was inspired by the Cisco IOS
configuration language.  Now, if you weren't trying to do something
ala a router in the default-free zone, and were just simply doing what
most leaf nodes on the internet (99.99999% of the hosts), there really
is no reason to need to use the ip/ss interface.  For that matter, you
probably don't need to use ifconfig/route --- just let the DHCP client
server of your choice take care of setting up the network, and you're
done.

> Well, you kind of have. It's a small thing to install another package,
> sure, but still something that must be done if you want the old tools.

That's a distro-level choice.  And for most users, their networking is
automatically brought up using NetworkManager, or some such, so they
probably don't care.  And it's not like installing a package is that
painful.  I don't see users of say, mysql complaining that they have
to install that package should they want to use it.

I'm old school, and since I generally tend to install BIND, that will
drag in net-tools as dependency, so all my systems have ifconfig
installed.  But I'm not going to have a lot of sympathy for someone
who thinks that "sudo apt-get install net-tools" is massive
inconvenience.

						- Ted

  reply	other threads:[~2022-01-03 20:24 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-30  3:45 Noel Chiappa
2021-12-30  4:02 ` Bakul Shah
2021-12-30 16:40 ` Theodore Ts'o
2021-12-30 22:31   ` Dan Cross
2021-12-31  0:43     ` Bakul Shah
2021-12-31  1:00       ` Rob Pike
2021-12-31  1:45         ` Bakul Shah
2021-12-31  2:23           ` Adam Thornton
2021-12-31 18:56       ` Chet Ramey
2021-12-31  3:08     ` Theodore Ts'o
2021-12-31  3:23       ` Rob Pike
2021-12-31  5:16         ` Theodore Ts'o
2021-12-31  5:21           ` Dan Cross
2021-12-31  5:55           ` Rob Pike
2021-12-31 13:32             ` Michael Kjörling
2021-12-31 15:53               ` Adam Thornton
2021-12-31 16:13                 ` Arthur Krewat
2021-12-31 18:17                 ` Dan Cross
2021-12-31 18:23                   ` Larry McVoy
2021-12-31 18:37                     ` Dan Cross
2021-12-31 18:29                   ` Arthur Krewat
2022-01-01  0:09                   ` Theodore Ts'o
2022-01-03 13:35                     ` Dan Cross
2022-01-03 20:23                       ` Theodore Ts'o [this message]
2022-01-03 20:45                         ` Warner Losh
2022-01-03 21:15                         ` Dan Cross
2022-01-03 22:26                           ` Theodore Ts'o
2022-01-03 23:10                             ` Dan Cross
2022-01-04 15:45                             ` Chet Ramey
2022-01-09 19:28                             ` Larry McVoy
2022-01-03 23:21                           ` Doug McIntyre
2022-01-03 23:37                             ` Adam Thornton
2022-01-04 14:49                               ` Stuart Remphrey
2022-01-03 23:44                             ` Larry McVoy
2022-01-03 23:56                               ` [TUHS] SMP: BSD vs System V (once was: moving directories in svr2) Greg 'groggy' Lehey
2022-01-07 19:01                                 ` Warner Losh
2022-01-09 17:31                                 ` Stuart Remphrey
2022-01-13  2:35                                 ` Kevin Bowling
2022-01-03 23:56                               ` [TUHS] moving directories in svr2 Warner Losh
2022-01-04  2:28                               ` Theodore Ts'o
2022-01-04  2:42                                 ` Larry McVoy
2022-01-04  9:28                                 ` [TUHS] Mythical Distress Sale (was Re: moving directories in svr2) Rob Gingell
2022-01-04 15:17                                   ` Larry McVoy
2022-01-04 15:26                                     ` arnold
2022-01-04 15:40                                       ` Larry McVoy
2022-01-04 15:48                                         ` Richard Salz
2022-01-03 22:57                         ` [TUHS] moving directories in svr2 Phil Budne
2022-01-04 15:40                         ` [TUHS] VRFs (was Re: moving directories in svr2) Derek Fawcus
2021-12-31  5:12       ` [TUHS] moving directories in svr2 Bakul Shah
  -- strict thread matches above, loose matches on Subject: below --
2021-12-29 19:33 Noel Chiappa
2021-12-30  3:40 ` Jay Logue via TUHS
2021-12-29 19:13 Douglas McIlroy
2021-12-29 19:37 ` Dan Cross
2021-12-29 20:15   ` Dan Cross
2021-12-29 20:42     ` Richard Salz
2021-12-29 20:58       ` Dan Cross
2021-12-29 21:20         ` Clem Cole
2021-12-30  3:15       ` Bakul Shah
2021-12-29 17:12 Douglas McIlroy
2021-12-29 16:59 Bakul Shah
2021-12-29 17:04 ` Clem Cole
2021-12-29 17:14 ` arnold
2021-12-29 17:38   ` Clem Cole
2021-12-29 17:49     ` Brantley Coile
2021-12-29 18:27       ` ron minnich
2021-12-29 20:59         ` Rob Pike
2021-12-29 14:33 Will Senn
2021-12-29 15:02 ` arnold
2021-12-29 15:38   ` Will Senn
2021-12-29 15:44     ` Richard Salz
2021-12-29 16:17       ` Clem Cole
2021-12-29 16:58         ` Richard Salz
2021-12-30  5:14         ` Dan Stromberg
2021-12-30 16:22           ` Clem Cole
2021-12-30 18:02           ` John Cowan
2021-12-30 23:04             ` Richard Salz
2021-12-29 15:17 ` Clem Cole
2021-12-29 15:44   ` Will Senn
2021-12-29 16:10     ` Clem Cole
2021-12-29 16:33       ` Warner Losh
2021-12-29 16:01   ` Bakul Shah

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=YdNbWqv9FMJMkgDZ@mit.edu \
    --to=tytso@mit.edu \
    --cc=crossd@gmail.com \
    --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).