[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: How to "ifdown ..." on squeeze?



Tom H wrote:
> Bob Proulx wrote:
> > Tom H wrote:
> >> Dan B. wrote:
> >> > On a new installation of squeeze, ifdown no longer works as it used
> >> > to (on my old Debian system).
> >
> > This is because by default with a GNOME desktop installed Debian has
> > switched away from ifupdown and over to NetworkManager because GNOME
> > by default specifies NetworkManager.  If you don't install GNOME then
> > you won't get NetworkManager and the behavior will be traditional
> > Debian ifupdown.  There is a lot of discussion about this in the
> > mailing list archives.  It has been controversial.
> 
> NM's a GNOME project application so it's normal that they've made
> GNOME default to it...

Yes.  But why should a low level operation such as a network
management process be part of a desktop manager?  That is part of the
fundamental design problem.  Instead the operating system should
handle it and the desktop should interface to it.  GNOME subsuming the
task itself pushes GNOME further into being an operating system
itself.  It muddies the modularity between the component parts and
pushes everything all into one pile.  That isn't good design.

> NM's only controversial because there are people who oppose change not
> matter why it might be. The NM developers haven't done themselves any
> favors by not providing server-type features like bonding...

No.  NM is controversial because it stops networking in the middle of
an upgrade.(!?)  When the upgrade was being performed logged in over
the network with ssh this kills the upgrade and prevents you from
logging in again to fix it.  You can only go touch the hardware and
fix it.  Which is very, very, *very*, bad.  I was burned by this.  The
latest version may have fixed that grave bug but any time you make
that kind of mistake then you deserve to be publicly flogged for it
for a long time regardless of whether a fix is now, after all of this
time, available in a new release which may or may not be available in
Stable.

NM is controversial when it crashes at the drop of a hat.  It often
can't connect, can't connect, and then the process dies and needs to
be restarted.  Sometimes this seems to cause dbus to need to be
restarted.  Repeat this several times until it stops crashing.  This
is on Stable which isn't GNOME 3 and so there may be a fix available
in the later code but it won't be available to Stable for a while.

NM is controversial because it only handles a subset of networking
cases but takes over the functionality for everything anyway.

I will stop there.

> >> > When ifconfig lists an interface "eth0", neither "ifdown eth0" nor
> >> > "ifdown eth" takes the interface down.  The attempts yield:
> >> >  "ifdown: interface eth0 not configured" and
> >> >  "ifdown: interface eth not configured".
> >> >
> >> > How does one take an interface down on squeeze?
> >
> > The expected tool on a GNOME system would be by using the
> > NetworkManager GUI with the mouse or as Tom writes, 'nmcli' from the
> > command line.  Something like this:
> >
> >  # nmcli conn down id 'Auto eth0'
> >  # nmcli conn up id 'Auto eth0'
> 
> I gave a CLI answer because the request was for ifupdown so I assumed
> a CLI method was being sought. The NM GUI's definitely the way to go
> if you have a GUI.

I thought your suggestion of nmcli was great.  Except there wasn't an
example given along with it.  That was the only missing part.  (Using
the GUI is fine too.)  Examples are really useful and for things that
aren't quite obvious such as the need to identify the interface by
"Auto eth0" instead of simply "eth0".  That is *yet another* annoying
aspect of NM.  :-)

> >> > Also:  The reason I was trying to take it down and back up was to
> >> > trigger a fresh DHCP query and corresponding host-name configuration.
> >>
> >> When NM controls your connections, NICs aren't defined in
> >> "/etc/network/interfaces", by default; you can change that behavior by
> >> changing the "managed" variable of the "ifupdown" section of
> >> "/etc/NetworkManager/networkmanager.conf".
> >>
> >> You can also use "nmcli" to take down and bring up your NIC.
> >
> > My recommendation is to edit that commented out line and remove it
> > from NetworkManager's control and return it to ifupdown's control.
> 
> You have to be careful with editing "/etc/network/interfaces". If you
> don't have "managed" set to "true" in
> "/etc/NetworkManager/nm-system-settings.conf" or
> "/etc/NetworkManager/networkmanager.conf" (depending on the NM
> version), the interface won't be managed by NM.

It is perfectly fine for you to recommend the opposite position.  In
which case please simply state it as such.  Just say that you
recommend people stick with NetworkManager.  Just say that people
should accept it and learn how to drive it fully.  That is fine.  We
each are entitled to our respective opinions and recommendations.

But in the above response it reads like you are correcting or
improving or clarifying what I said.  But you are not.  Instead you
are working at cross purposes to it.  Please don't do that.  Following
the thread it might lead someone to flipflop the control back and
forth to and from NM and become really confused.

Having interfaces not managed by NM isn't a problem.  Having
interfaces *not* managed by NM is my desired state!  It is the entire
purpose for removing that comment and taking back control of the
interface from NM.  It is why I explicitly said that it would remove
the device from NM's control and return it to ifupdown's control.
Setting the MN variable to "managed" would recreate the problem state
of NM controlling the interface and is undesirable for that reason.

> So, if "/etc/init.d/networking" isn't enabled too (if that's
> possible), NICs'll have to be brought up manually with "ifup".

  s/manually/automatically/

You mean brought up /automatically/ by ifupdown.  :-) :-) Like it
works if you don't have GNOME installed.  As it has worked for years
and years.  As it still continues to work.

A warning would be that without a completely consistent configuration
some programs such as Evolution will assume that the network is
offline even when it is online and they won't function correctly.
Fortunately there are very few programs that tightly coupled to
NetworkManager.  I am only aware of problems in Evolution.

Note that if you don't install GNOME but instead install one of the
other window managers (I could call them "light weight" because by
comparison to GNOME they are light weight but they are both getting
pretty heavy these days) such as LXDE or XFCE then neither of those
pull in NetworkManager.  In those cases interfaces are handled by
ifupdown just as in previous Debian releases.  NetworkManager isn't a
Debian dependency.  NetworkManager is a GNOME dependency.

Bob

Attachment: signature.asc
Description: Digital signature


Reply to: