From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_INVALID,DKIM_SIGNED, HTML_MESSAGE,MAILING_LIST_MULTI autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 30786 invoked from network); 3 Jan 2022 20:45:50 -0000 Received: from minnie.tuhs.org (45.79.103.53) by inbox.vuxu.org with ESMTPUTF8; 3 Jan 2022 20:45:50 -0000 Received: by minnie.tuhs.org (Postfix, from userid 112) id 9BE7294997; Tue, 4 Jan 2022 06:45:48 +1000 (AEST) Received: from minnie.tuhs.org (localhost [127.0.0.1]) by minnie.tuhs.org (Postfix) with ESMTP id 5895F93FD1; Tue, 4 Jan 2022 06:45:26 +1000 (AEST) Authentication-Results: minnie.tuhs.org; dkim=fail reason="signature verification failed" (2048-bit key; unprotected) header.d=bsdimp-com.20210112.gappssmtp.com header.i=@bsdimp-com.20210112.gappssmtp.com header.b="0qz3ccD2"; dkim-atps=neutral Received: by minnie.tuhs.org (Postfix, from userid 112) id 5A29B93FD1; Tue, 4 Jan 2022 06:45:25 +1000 (AEST) Received: from mail-ua1-f46.google.com (mail-ua1-f46.google.com [209.85.222.46]) by minnie.tuhs.org (Postfix) with ESMTPS id 56DDC93FCC for ; Tue, 4 Jan 2022 06:45:24 +1000 (AEST) Received: by mail-ua1-f46.google.com with SMTP id u6so52342791uaq.0 for ; Mon, 03 Jan 2022 12:45:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bsdimp-com.20210112.gappssmtp.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=/LU+ZbJIjvd2XaF3RIJ9SLP9wGxubPxfFFD+YUrpmo4=; b=0qz3ccD2Qv2dbpTBaoYt6JpA5SfCyiMuzcmpTwuRDHoYi6vLz0W+G5hOF2MNLBfUXc 26FESuhwAUyfgzox4NZYTngz4CFoNsEWtnj2J4BnRW0PTKwT+9TynITrtUA+0qnxpQ9o D/RVTyppgUAdKwQucjnKd/dwc3zbtWaPofYQM4npvysfGkUZ0APJVQAxkeo0v6Va0OTT VYEJFmfgn2UOeMIq3tjH15rNtvPKbWzyx4EJlLJi8xXfvX2pvsipfre2DxS8FbFrbGTX 6ah5gRDS7HdfeWL32WJiT2vvswqV/SN31V2xtxgipJOhgwQU4KInRaqjf/xNV7ngPK8G Md9Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=/LU+ZbJIjvd2XaF3RIJ9SLP9wGxubPxfFFD+YUrpmo4=; b=uTmL2awxZXjyp7UmMYdCeZvMsniE7oh1/H1Ic6V2tvTc/la64lpbs9XVUg/SvNr5U3 nyj3PmFdxpU1Ur0QC/zgkv1gHYkZufNlhjy8EB4Dptpz2eSE/xIHYJmSjSgJcqDJYNRZ XqpCHx7Cok5hMZT2O8Byc/odrB9KEsbNyawgVmcfKQWhhcr5neH4DIORotN+ZchLWaYj Oo7d6w11CKahsqo1Mgw0VjlGpq2XsVExeNHRpGlVZW9jT7Sn9J7e1o8beStH7awIouMD SQaliUGj/7D5WmHd+rqmbBelBEtmICntoIm+vPHfalN1nTVp0TW9/4PMp+C9OPfm/zrB OVsA== X-Gm-Message-State: AOAM530c9lNU8boEUgvfJua2ULFYZ9rXalDQH2pDuDwvRsRsM3QbCjDv LIEDul8fOXtNcxVP1AkFLxkF6cbRKkl0dc8uy3sK8A== X-Google-Smtp-Source: ABdhPJwg/ABjzQq98z5cQXutEhUZMcxCXB+mxls2BHh1QG3ARyeHQjC79RZeGylWO4vgy3YeEuzG17t5GOKdsa0xg2w= X-Received: by 2002:ab0:4405:: with SMTP id m5mr15408767uam.11.1641242723154; Mon, 03 Jan 2022 12:45:23 -0800 (PST) MIME-Version: 1.0 References: <97f563fa-5a17-424b-acc6-07cf127f496d@localhost> In-Reply-To: From: Warner Losh Date: Mon, 3 Jan 2022 13:45:12 -0700 Message-ID: To: "Theodore Ts'o" Content-Type: multipart/alternative; boundary="000000000000810e4205d4b39944" Subject: Re: [TUHS] moving directories in svr2 X-BeenThere: tuhs@minnie.tuhs.org X-Mailman-Version: 2.1.26 Precedence: list List-Id: The Unix Heritage Society mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: The Eunuchs Hysterical Society Errors-To: tuhs-bounces@minnie.tuhs.org Sender: "TUHS" --000000000000810e4205d4b39944 Content-Type: text/plain; charset="UTF-8" On Mon, Jan 3, 2022 at 1:24 PM Theodore Ts'o wrote: > 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. :-) > For my corner of the world, 2.3 was stable enough to run in production. 2.4 was fast enough :) > > 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. > The 4.4BSD route command does this. The various BSDs now support multiple routing tables through an evolved interface... > 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. > True. The vast majority of installs today are just "use DHCP and be happy" though somebody has to run the dhcp server :) > > 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. > For machines you manage, sure. It's easy. Try it with the linksys router you can log into and it starts to get much harder... though with those loading new firmware isn't super hard. Warner --000000000000810e4205d4b39944 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable


=
On Mon, Jan 3, 2022 at 1:24 PM Theodo= re Ts'o <tytso@mit.edu> wrot= e:
On Mon, Jan 0= 3, 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, bu= t 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.=C2=A0 (Or maybe it was because Moore's law meant that= we
didn't care any more.=C2=A0 :-)

For= my=C2=A0corner of the world, 2.3 was stable enough to run in production. 2= .4
was fast enough :)
=C2=A0
> Are there _distros_ that don't supply those things? Probably; I re= ally
> 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 imagi= ne
> 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<= br> > 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.=C2=A0 The git tre= e
for net-tools is still being actively developed (the last commit was
dated December 12, 2021).=C2=A0 And the kernel interfaces are not going to<= br> 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 Lin= ux
> > networking stack (especially relating to routing and address alia= sing)
> > that couldn't be expressed using the older C programming inte= rfaces 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 believ= e
> 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.=C2=A0 The BSD route command
assumes fundamentally there is a single routing table that you can
update.=C2=A0 In Linux, there are multiple routing tables --- to support NAT, VRF (virtual routing and forwarding), etc.

The 4.4BSD route command does this. The various BSDs now support m= ultiple
routing tables through an evolved interface...
= =C2=A0
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.=C2=A0 So it made sense to create a new
user interface interface that was inspired by the Cisco IOS
configuration language.=C2=A0 Now, if you weren't trying to do somethin= g
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.=C2=A0 For that matter, you=
probably don't need to use ifconfig/route --- just let the DHCP client<= br> server of your choice take care of setting up the network, and you're done.

True. The vast majority of instal= ls today are just "use DHCP and be happy"
though somebo= dy has to run the dhcp server :)
=C2=A0
> Well, you kind of have. It's a small thing to install another pack= age,
> sure, but still something that must be done if you want the old tools.=

That's a distro-level choice.=C2=A0 And for most users, their networkin= g is
automatically brought up using NetworkManager, or some such, so they
probably don't care.=C2=A0 And it's not like installing a package i= s that
painful.=C2=A0 I don't see users of say, mysql complaining that they ha= ve
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.=C2=A0 But I'm not going to have a lot of sympathy for someon= e
who thinks that "sudo apt-get install net-tools" is massive
inconvenience.

For machines you manage,= sure. It's easy. Try it with the linksys
router you can log = into and it starts to get much harder... though
with those loadin= g new firmware isn't super hard.

Warner
<= div>
--000000000000810e4205d4b39944--