Network interfaces are not loaded by init if NetworkManager is not installed before dist-upgrade
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
update-manager (Ubuntu) |
Invalid
|
Undecided
|
Unassigned |
Bug Description
Binary package hint: update-manager
I performed a dist-upgrade from 8.10 to 9.04, then immediately to 9.10. Logs are attached.
In my configuration with 8.10, I did not use Network Manager. I had a manually configured static IP address in /etc/network/
After the upgrade to 9.10, the init symlinks to /etc/init.
The /etc/networking
I did not want to install NetworkManager, and it should not be required. Others have suggested removing NetworkManager to use a static IP, as in this forum post: http://
Strangely, there was a symlink to /etc/init.
Here is my current directory listing for these files:
$ sudo find /etc/|grep networking
/etc/rc0.
/etc/rc1.
/etc/rc2.
/etc/rc3.
/etc/rc4.
/etc/rc5.
/etc/rc6.
/etc/init.
/etc/init/
ProblemType: Bug
Architecture: i386
Date: Sat Dec 12 11:07:17 2009
DistroRelease: Ubuntu 9.10
NonfreeKernelMo
Package: update-manager 1:0.126.9
PackageArchitec
ProcEnviron:
LANG=en_US.UTF-8
SHELL=/bin/bash
ProcVersionSign
SourcePackage: update-manager
Uname: Linux 2.6.31-16-generic i686
XsessionErrors:
(gnome-
(gnome-
(polkit-
(nautilus:2820): Eel-CRITICAL **: eel_preferences
Update and edits:
Adding the symlinks as described above did *not* fix the problem. The interface was brought up, and was visible with "ifconfig -a" with the assigned static IP address. However, internet sites were not accessible.
Despite having an entry in /etc/network/ interfaces to set my router as the nameserver ("dns-nameservers 192.168.2.1"), resolv.conf does not get updated with the nameserver's IP address:
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
Running "/etc/init. d/networking restart" or "ifdown eth0;ifup eth0" fixed the problem:
$ cat /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.2.1
...........I was forced to edit /etc/init. d/networking manually to change the "start" command to behave like the "restart" command:
#!/bin/sh -e
### BEGIN INIT INFO
# Provides: networking
# Required-Start:
# Required-Stop: $local_fs
# Default-Start:
# Default-Stop: 0 6
# Short-Description: Raise network interfaces.
### END INIT INFO
PATH="/ usr/local/ sbin:/usr/ local/bin: /sbin:/ bin:/usr/ sbin:/usr/ bin"
[ -x /sbin/ifup ] || exit 0
. /lib/lsb/ init-functions
# helper function to set the usplash timeout. https:/ /launchpad. net/bugs/ 21617 usplash_ write "TIMEOUT $TIMEOUT" || true
usplash_timeout () {
TIMEOUT=$1
if [ -x /sbin/usplash_write ]; then
/sbin/
fi
}
process_options() { options ] || return 0 options still exists and it will be IGNORED! Read README.Debian of netbase."
[ -e /etc/network/
log_warning_msg "/etc/network/
}
check_network_ file_systems( ) {
[ -e /proc/mounts ] || return 0
exec 9<&0 < /proc/mounts |/dev/nd[ a-z]*|/ dev/etherd/ e*) warning_ msg "not deconfiguring network interfaces: network devices still mounted." smbfs|ncp| ncpfs|cifs| coda|ocfs2| gfs|pvfs| pvfs2|fuse. httpfs| fuse.curlftpfs) warning_ msg "not deconfiguring network interfaces: network file systems still mounted."
while read DEV MTPT FSTYPE REST; do
case $DEV in
/dev/nbd*
log_
exit 0
;;
esac
case $FSTYPE in
nfs|nfs4|
log_
exit 0
;;
esac
done
exec 0<&9 9<&-
}
case "$1" in upstart- job networking start #This line and the one following it were the only commands under the "start" case
start)
# /lib/init/
# ;; #This line and the one following it were the only commands under the "start" case
## Lines below were added manually (copied from the "restart" case)
process_options
log_action_ begin_msg "Reconfiguring network interfaces" action_ end_msg $? action_ end_msg $?
ifdown -a --exclude=lo || true
if ifup -a --exclude=lo; then
log_
else
log_
fi
;;
## All lines below this point were not changed manually
stop) network_ file_systems
check_
log_action_ begin_msg "Deconfiguring network interfaces" end_msg $? end_msg $?
if [ "$VERBOSE" != no ]; then
if ifdown -a --exclude=lo; then
log_action_
else
log_action_
fi
else
if ifdown -a --e...