Bug 468028

Summary: /etc/sysconfig/network-scripts/ifcfg-eth0 defaults to NM_CONTROLLED=yes even without NetworkManager installed
Product: [Fedora] Fedora Reporter: Michael Cutler <m>
Component: anacondaAssignee: David Cantrell <dcantrell>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: medium Docs Contact:
Priority: medium    
Version: rawhideCC: alexl, dcbw, k.georgiou, wtogami
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2008-10-22 15:59:16 EDT Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Bug Depends On:    
Bug Blocks: 438943, 457945    
Attachments:
Description Flags
Anaconda ks detailing the install options taken
none
/etc/sysconfig/network-scripts/ifcfg-eth0
none
install.log none

Description Michael Cutler 2008-10-22 09:58:43 EDT
Description of problem:

  Fresh install from Fedora-10-Snap2-i386-DVD.iso in text mode, minimal install options (all packages unticked). System comes up after installation with network connectivity crippled. File /etc/sysconfig/ifcfg-eth0 contains "ONBOOT=no", "NM_CONTROLLED=yes" even though NetworkManager is not installed. To fix this one must manually change the file to read "ONBOOT=yes", "NM_CONTROLLED=no" and execute /etc/init.d/network restart. Running, system-config-network did not resolve this, manually frigging the config file was necessary.

Version-Release number of selected component (if applicable):

  Fedora-10-Snap2-i386-DVD.iso

How reproducible:

  Every time.

Steps to Reproduce:
1. Run text-mode install from Fedora-10-Snap2-i386-DVD.iso
2. Deselect all packages from the list when given the option.
3. Reboot.
4. Witness that service "network" only starts loopback, and /etc/sysconfig/ifcfg-eth0 contains "NM_CONTROLLED=yes" even though 'rpm -q NetworkManager' shows it is not installed.
  
Actual results:

  System comes up with no network connectivity. Requires manual frigging of configuration files to resolve.

Expected results:

  When NetworkManager is not installed /etc/sysconfig/ifcfg-eth0 and such should be set appropriately such that the 'network' service can start them.

Additional info:
Comment 1 Michael Cutler 2008-10-22 09:59:50 EDT
Created attachment 321149 [details]
Anaconda ks detailing the install options taken
Comment 2 Michael Cutler 2008-10-22 10:00:32 EDT
Created attachment 321150 [details]
/etc/sysconfig/network-scripts/ifcfg-eth0
Comment 3 Michael Cutler 2008-10-22 10:01:00 EDT
Created attachment 321151 [details]
install.log
Comment 4 Dan Williams 2008-10-22 10:21:11 EDT
Dave: if you like you can leave out NM_CONTROLLED=yes since NM only interprets NM_CONTROLLED=no as not being managed by NM.  Not sure about the ONBOOT thing.  But if you leave out NM_CONTROLLED=yes, then I think that would work for both NM-active and NM-inactive setups.
Comment 5 David Cantrell 2008-10-22 15:59:16 EDT
*Shrug*

I've removed the line that writes out NM_CONTROLLED=yes, but I don't see how that would affect non-NM setups.  It's just a shell variable that's ignored, right?

That said, it is unnecessary I guess, so it's gone.
Comment 6 Michael Cutler 2008-10-23 06:27:21 EDT
The other key thing is from the text-mode minimal install the default for /etc/sysconfig/ifcfg-eth0 is "ONBOOT=no". At no point during installation was there an network-config stage, and there was no 'firstboot' from the minimal install. Post-installation you have to manually set it to "ONBOOT=yes" and /etc/init.d/network restart to get any network connectivity from the fresh install.
Comment 7 Michael Cutler 2008-10-23 06:29:56 EDT
Essentially this means I cannot kickstart a room full of machines in the same way as I could in 'Fedora Core 9', where they would all come up with network connectivity without manual intervention.
Comment 8 David Cantrell 2008-10-23 15:39:42 EDT
There are no interactive screens anymore during installation for configuring network interfaces on the target system.  If you do a network install, the state of the networking interfaces are preserved on your target system, but since we are enabling NetworkManager by default now, we are trying to steer people in that direction.

For all sites that need more specific network configuration (even disabling NetworkManager and using the network service instead), kickstart provides the capability.  We've just removed the network configuration step for the target system in the interactive installer.
Comment 9 Michael Cutler 2008-10-27 08:50:38 EDT
Thanks David,

I have just done a "@core" only install from text-mode FC10 snap3, again just by running through the package list and unticking everything. 188 packages are installed (NetworkManager is not in @core) the system comes up with no network connectivity. This time I had to manually edit /etc/sysconfig/network-scripts/ifcfg-eth0 adding "ONBOOT=yes" & "BOOTPROTO=dhcp" to bring the adapter up.

I understand the push for NetworkManager - its invaluable on my laptop-class devices - but at the same time I strongly disagree that the common server-style installation where you "untick everything" should be crippled such that it requires manual editing of the configuration files.

The way I see it there are two resolutions:

1). Force NetworkManager on every install by pushing it into "@core"

2). Some very simple additional logic in anaconda during install along the lines of:
   if NetworkManager is not INSTALLED:
Comment 10 Michael Cutler 2008-10-27 08:51:47 EDT
Thanks David,

I have just done a "@core" only install from text-mode FC10 snap3, again just by running through the package list and unticking everything. 188 packages are installed (NetworkManager is not in @core) the system comes up with no network connectivity. This time I had to manually edit /etc/sysconfig/network-scripts/ifcfg-eth0 adding "ONBOOT=yes" & "BOOTPROTO=dhcp" to bring the adapter up.

I understand the push for NetworkManager - its invaluable on my laptop-class devices - but at the same time I strongly disagree that the common server-style installation where you "untick everything" should be crippled such that it requires manual editing of the configuration files.

The way I see it there are two resolutions:

1). Force NetworkManager on every install by pushing it into "@core"

2). Some very simple additional logic in anaconda during install along the lines of:
   if NetworkManager is not INSTALLED:
      write out "ONBOOT=yes", "BOOTPROTO=dhcp" to /etc/sysconfig/network-scripts/ifcfg-eth0

Thoughts?
Comment 11 David Cantrell 2008-10-27 16:03:06 EDT
(In reply to comment #10)
> Thanks David,
> 
> I have just done a "@core" only install from text-mode FC10 snap3, again just
> by running through the package list and unticking everything. 188 packages are
> installed (NetworkManager is not in @core) the system comes up with no network
> connectivity. This time I had to manually edit
> /etc/sysconfig/network-scripts/ifcfg-eth0 adding "ONBOOT=yes" &
> "BOOTPROTO=dhcp" to bring the adapter up.
> 
> I understand the push for NetworkManager - its invaluable on my laptop-class
> devices - but at the same time I strongly disagree that the common server-style
> installation where you "untick everything" should be crippled such that it
> requires manual editing of the configuration files.
> 
> The way I see it there are two resolutions:
> 
> 1). Force NetworkManager on every install by pushing it into "@core"

That's a comps policy thing.  Should bring this up on the fedora-devel mailing list or open a bug against the comps component.

> 2). Some very simple additional logic in anaconda during install along the
> lines of:
>    if NetworkManager is not INSTALLED:
>       write out "ONBOOT=yes", "BOOTPROTO=dhcp" to
> /etc/sysconfig/network-scripts/ifcfg-eth0
> 
> Thoughts?

The settings that are written out to the ifcfg files mirror what was configured during installation.  If you didn't use the interface during installation, the interface will be disabled on initial boot.  By default, all interfaces are set to disabled during installation and only the one you configure gets any settings.

If you want to customize the network settings before reboot, you have to use kickstart now.  We have removed the network configuration.  The reason for this is to simplify the interactive installation and handle the most common use cases.
Comment 12 Michael Cutler 2008-10-28 06:25:39 EDT
Thanks David, I'll bring it up on the fedora-devel mailing list.