Re: fix for no ssh
On Mon 08 Jul 2019 at 19:21:37 (+0300), Andrei POPESCU wrote:
> On Lu, 08 iul 19, 10:19:35, Curt wrote:
> >
> > I thought you were saying that
> > '/etc/udev/rules.d/70-persistent-net.rules' remains a valid mechanism
> > for defining interface names in Buster (fixed). But the release-notes
> > (hmm, I think they've been modified since I last looked and now state
> > that that file is no longer "officially" supported by udev---but may
> > work in some cases). So I wouldn't be filing a bug report against that
> > stanza any longer, as current situation seems unverifiable.
>
> For the record, the current wording (no official support) is based on
> input from the Debian systemd maintainers. They should know what is
> supported or not ;)
>
> As far as I know the /etc/udev/rules.d/70-persistent-net.rules method
> can fail to properly rename the interfaces in certain situations which
> can leave your system without networking.
>
> Not nice on remote machines.
>
> It is also my understanding that systems with only one interface (of a
> given type[1]) are pretty safe with it or net.ifnames=0, so the impact
> on regular[2] desktop/laptop users should be minimal.
>
> [1] assuming ethernet cards are always named ethX and wireless cards are
> always named wlanX by the kernel. I might have had a wireless card that
> came up as ethX, but that was a long time ago. Still, something to be
> aware of.
I'm still running one that comes up in jessie as eth0 and eth1;
stretch gets it right with enp2s2 and wlp2s4 respectively.
> [2] one ethernet interface, usually integrated in the motherboard and
> one (additional) wireless interface for the laptops. Anything more
> complicated than that might break without warning.
>
> > Well, at the very least people should be informed who is likely to be
> > affected by the bug
>
> In my understanding a lot of daemons are affected. Would it make sense
> to (try to) list them all?
I guess I don't use my interfaces very adventurously so I don't see
many instances of their names, but one or two look odd. On jessie
(old-style names), and ignoring comments, I see
# grep -r -e '\<eth\>' -e 'eth[01]' /etc/
/etc/wicd/manager-settings.conf:wireless_interface = eth1
/etc/wicd/manager-settings.conf:wired_interface = eth0
/etc/samba/smb.conf:; interfaces = 127.0.0.0/8 eth0
/etc/samba/dhcp.conf: wins server =eth1:192.168.6.1
/etc/resolvconf/interface-order:eth*([^.]).inet6
/etc/resolvconf/interface-order:eth*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:eth*([^.]).inet
/etc/resolvconf/interface-order:eth*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:eth*
/etc/udev/rules.d/70-persistent-net.rules: … … … [obviously]
#
The wicd settings were entered by myself.
Actually, smb.conf is a comment line (with ;) but I think it was
written from information derived from the system. But dhcp.conf
looks odd because eth1: (my wireless interface) has never seen
a network numbered 192.168.6.0.
Turning to a new stretch installation, I see
# grep -r -e '\<eth\>' -e 'eth[01]' -e 'enp1s0' -e '\<wl' /etc/
/etc/wicd/manager-settings.conf:wireless_interface = wlp2s0
/etc/wicd/manager-settings.conf:wired_interface = enp1s0
/etc/resolvconf/interface-order:@(br|eth)*([^.]).inet6
/etc/resolvconf/interface-order:@(br|eth)*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:@(br|eth)*([^.]).inet
/etc/resolvconf/interface-order:@(br|eth)*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:@(br|eth)*
/etc/resolvconf/interface-order:@(ath|wifi|wlan)*([^.]).inet6
/etc/resolvconf/interface-order:@(ath|wifi|wlan)*([^.]).ip6.@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:@(ath|wifi|wlan)*([^.]).inet
/etc/resolvconf/interface-order:@(ath|wifi|wlan)*([^.]).@(dhclient|dhcpcd|pump|udhcpc)
/etc/resolvconf/interface-order:@(ath|wifi|wlan)*
/etc/init.d/ifplugd: eth*|wlan*)
#
Again, the wicd settings were entered by myself. So the oddity here is
interface-order which has patterns that don't match the interface
names. man interface-order doesn't say which directory it should
be run in, but I'm assuming it's going to be something like
/run/resolvconf/interface where I see files called wlp2s0.dhclient
and wlp2s0.wicd. Perhaps I'm off the mark here.
I haven't studied the contents of /etc/init.d/ifplugd, but cut and
pasting the all_interfaces() function into the commandline prints
nothing, whereas editing it eth*|wlan* → en*|wl* makes it report
enp1s0 and wlp2s0, which suggests that that script is just plain wrong.
BTW, I don't actually use ifplugd; I installed it in June during the
"New nomeclature of ethernet devices" thread.
Cheers,
David.
Reply to: