# net.eth0 starting even with !net.eth0 in rc. [solved]

## TechwoIf

First off, I did a search on forums and got nothing in return for networking. Tried the site: google and it returned nothing.

The problem is net.eth0 is starting and hanging at boot due to NO cable plugged in eth0. I do NOT have it set to start up via !net.eth0 in rc and it still tries to start.

edit: The problem was solved, but I can't remember how I did it. Too many years ago.

I think with the upgrade to openrc and overall bugfixes to networking, this bug is fixed.Last edited by TechwoIf on Mon Jul 09, 2012 2:46 am; edited 1 time in total

----------

## cyrillic

If you emerge sys-apps/netplug or sys-apps/ifplugd your problem will be solved, and net.eth0 will wait in the background for a cable to be plugged in.

----------

## d2_racing

Hi, can you post this :

```

# emerge --info

# cat /etc/conf.d/rc

# rc-update show

```

----------

## curlinator

ifplugd or netplug... like ^he^ said

Or just 

```
rc-update del net.eth0
```

 , maybe.

----------

## TechwoIf

emerge --info

Portage 2.1.6.13 (default/linux/amd64/2008.0, gcc-4.3.3, glibc-2.9_p20081201-r2, 2.6.28-gentoo-r2 x86_64)

=================================================================

System uname: Linux-2.6.28-gentoo-r2-x86_64-AMD_Phenom-tm-_9950_Quad-Core_Processor-with-gentoo-2.0.0

Timestamp of tree: Mon, 04 May 2009 07:45:02 +0000

app-shells/bash:     4.0_p17-r1

dev-java/java-config: 1.3.7-r1, 2.1.7

dev-lang/python:     2.5.4-r2, 2.6.2

dev-python/pycrypto: 2.0.1-r8

dev-util/cmake:      2.6.4

sys-apps/baselayout: 2.0.0

sys-apps/openrc:     0.4.3-r2

sys-apps/sandbox:    1.9

sys-devel/autoconf:  2.13, 2.63-r1

sys-devel/automake:  1.4_p6, 1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.2

sys-devel/binutils:  2.19.1-r1

sys-devel/gcc-config: 1.4.1

sys-devel/libtool:   2.2.6a

virtual/os-headers:  2.6.28-r1

ACCEPT_KEYWORDS="amd64 ~amd64"

CBUILD="x86_64-pc-linux-gnu"

CFLAGS="-march=athlon64 -O2 -pipe -msse3 -ggdb"

CHOST="x86_64-pc-linux-gnu"

CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/bind"

CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/udev/rules.d"

CXXFLAGS="-march=athlon64 -O2 -pipe -msse3 -ggdb"

DISTDIR="/usr/portage/distfiles"

FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms splitdebug strict unmerge-orphans userfetch"

GENTOO_MIRRORS="http://gentoo.osuosl.org/ ftp://distro.ibiblio.org/pub/linux/distributions/gentoo/ ftp://ftp.ussg.iu.edu/pub/linux/gentoo "

LDFLAGS="-Wl,-O1"

LINGUAS="en"

MAKEOPTS="-j4"

PKGDIR="/usr/portage/packages"

PORTAGE_CONFIGROOT="/"

PORTAGE_RSYNC_EXTRA_OPTS="--progress"

PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"

PORTAGE_TMPDIR="/var/tmp"

PORTDIR="/usr/portage"

PORTDIR_OVERLAY="/usr/portage/local/layman/glc /usr/portage/local/layman/sunrise /usr/portage/local /usr/portage/local/techwolf"

SYNC="rsync://rsync21.us.gentoo.org/gentoo-portage"

USE="3dnow 3dnowext X a52 aac aalib accessibility acl acpi alsa amd64 amr amrnb amrwb ares arts asf berkdb bzip2 caps cdparanoia cdr cli cracklib crypt css cups curl cxx dbus dga directfb divx dri dts dv dvb dvd dvdr dvdread elfio emovix encode exif fam fbcon firefox3 flac foomaticdb fortran ftp gdbm geoip gif glitz glut gmedia gmp gnutls gpm gps grammar gstreamer gtk gtk2 hal htmlhandbook iconv id3 idn ieee1394 imagemagick ipv6 isdnlog java joystick jpeg jpeg2k kde kdeenablefinal kdexdeltas kipi ladspa lame laptop lcms libcaca live lm_sensors lzo mad mailwrapper matroska mbox midi mmap mmx mmxext mng mp2 mp3 mp4 mp4live mpeg mpeg2 mplayer msn mudflap multilib musepack musicbrainz mysql ncurses nemesi network nls nptl nptlonly nsplugin ntp nvidia ogg openal opengl openmp ots pam pcre pdf perl player png pppd python qt3 qt3support qt4 quicktime radio rar readline realmedia reflection rss rt2500usb rtc samba session slang smp speex spell spl sqlite srt sse sse2 sse3 ssl ssse3 svg sysfs tcpd teletext theora thesaurus threads tiff truetype unicode upnp usb v4l v4l2 vamp vcd vdpau voice vorbis webkit wifi wmp wordperfect x264 xanim xcb xine xinerama xml xorg xulrunner xv xvid xvmc zlib" ALSA_CARDS="hda-intel" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lockdeflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon" ELIBC="glibc" FOO2ZJS_DEVICES="km2300" INPUT_DEVICES="keyboard mouse synaptics evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="nvidia nv vesa vmware"

Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LANG, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS

cat /etc/conf.d/rc                                                                                                                                                                                                                                         

# /etc/conf.d/rc: Global config file for the Gentoo RC System                                                                                                                                                                                                                  

# This is the number of tty's used in most of the rc-scripts (like                                                                                                                                                                                                             

# consolefont, numlock, etc ...)                                                                                                                                                                                                                                               

RC_TTY_NUMBER=11                                                                                                                                                                                                                                                               

# Set to "yes" if you want the rc system to try and start services                                                                                                                                                                                                             

# in parallel for a slight speed improvement. NOTE: When RC_PARALLEL_STARTUP                                                                                                                                                                                                   

# is enabled, init script output is replaced with simple "service foo                                                                                                                                                                                                          

# starting/stopping" messages so that output is not mixed up.                                                                                                                                                                                                                  

# You can stop this from happening on the command line by passing --verbose                                                                                                                                                                                                    

# to the init script or by setting RC_VERBOSE="yes" below.                                                                                                                                                                                                                     

RC_PARALLEL_STARTUP="no"                                                                                                                                                                                                                                                       

# Set RC_INTERACTIVE to "yes" and you'll be able to press the I key during                                                                                                                                                                                                     

# boot so you can choose to start specific services. Set to "no" to disable                                                                                                                                                                                                    

# this feature.                                                                                                                                                                                                                                                                

RC_INTERACTIVE="yes"                                                                                                                                                                                                                                                           

# Do we allow services to be hotplugged? If not, set to RC_HOTPLUG="no"                                                                                                                                                                                                        

# NOTE: This does not affect anything hotplug/udev related, just the                                                                                                                                                                                                           

# starting/stopping of the init.d service triggered by hotplug.                                                                                                                                                                                                                

RC_HOTPLUG="yes"                                                                                                                                                                                                                                                               

# Dynamic /dev managers can trigger coldplug events which cause services to

# start before we are ready for them. If this happens, we can defer these  

# services to start in the boot runlevel. Set RC_COLDPLUG="no" if you don't

# want this.                                                               

# NOTE: This also affects module coldplugging in udev-096 and higher       

# If you want module coldplugging but not coldplugging of services then you

# can set RC_COLDPLUG="yes" and RC_PLUG_SERVICES="!*"                      

RC_COLDPLUG="yes"

# Some people want a finer grain over hotplug/coldplug. RC_PLUG_SERVICES is a

# list of services that are matched in order, either allowing or not. By     

# default we allow services through as RC_COLDPLUG/RC_HOTPLUG has to be yes  

# anyway.                                                                    

# Example - RC_PLUG_SERVICES="net.wlan !net.*"                               

# This allows net.wlan and any service not matching net.* to be plugged.     

RC_PLUG_SERVICES="!net.eth0 !net.*"

# RC_NET_STRICT_CHECKING allows some flexibility with the 'net' service.

# The following values are allowed:                                     

#  none  - The 'net' service is always considered up.                   

#  no    - This basically means that at least one net.* service besides net.lo

#          must be up.  This can be used by notebook users that have a wifi and

#          a static nic, and only wants one up at any given time to have the   

#          'net' service seen as up.                                           

#  lo    - This is the same as the 'no' option, but net.lo is also counted.    

#          This should be useful to people that do not care about any specific 

#          interface being up at boot.                                         

#  yes   - For this ALL network interfaces MUST be up for the 'net' service to 

#          be considered up.                                                   

RC_NET_STRICT_CHECKING="lo"

# RC_DOWN_INTERFACE allows you to specify if RC will bring the interface

# completely down when it stops. The default is yes, but there are some 

# instances where you may not want this to happen such as using Wake On LAN.

RC_DOWN_INTERFACE="yes"

# RC_VOLUME_ORDER allows you to specify, or even remove the volume setup

# for various volume managers (MD, EVMS2, LVM, DM, etc).  Note that they are

# stopped in reverse order.                                                 

RC_VOLUME_ORDER="raid evms lvm dm"

# RC_VERBOSE will make init scripts more verbose. Only networking scripts

# really use this at this time, and this is useful for trouble shooting  

# any issues you may have.                                               

# This is also used to re-enable init script output for init scripts     

# started or stopped from the command line.                              

RC_VERBOSE="no"

# RC_BOOTLOG will generate a log of the boot messages shown on the console.  

# Useful for headless machines or debugging.  You need to emerge the         

# app-admin/showconsole package for this to work.  Note that this probably   

# won't work correctly with boot splash.                                     

RC_BOOTLOG="no"

# Set to "yes" if you want to benchmark system boot with bootchart.

# You'll need to emerge the app-benchmarks/bootchart package for this to work.

RC_BOOTCHART="no"

# RC_USE_FSTAB allows you to override the default mount options for the 

# standard /proc, /sys, /dev, and /dev/pts mount points.  Note that this 

# is the new way for selecting ramfs/tmpfs/etc... for udev mounting.     

RC_USE_FSTAB="no"

# RC_USE_CONFIG_PROFILE allows you to have different /etc/conf.d files 

# based on your runlevel - if a conf.d file for your profile does not exist

# then we try and use the default one.                                     

# To enable runlevel selection at boot, append "softlevel=foobar" to your  

# kernel line to change to the foobar runlevel.  Here we would search for  

# /etc/conf.d/<service>.foobar config files before trying to use the default

# /etc/conf.d/<service>.                                                    

# Note that it is only active if 'softlevel' was specified via the kernel line,

# and it is intended to use for different grub/lilo entries to specify config  

# changes for say laptops between home and work, where you would have setup    

# 'work' and 'home' runlevels, with /etc/conf.d/*.<runlevel> as needed.        

RC_USE_CONFIG_PROFILE="yes"

# RC_FORCE_AUTO tries its best to prevent user interaction during the boot and 

# shutdown process.  For example, fsck will automatically be run or volumes    

# remounted to create proper directory trees.  This feature can be dangerous   

# and is meant ONLY for headless machines where getting a physical console     

# hooked up is a huge pita.                                                    

RC_FORCE_AUTO="no"

# Use this variable to control the /dev management behavior.

#  auto   - let the scripts figure out what's best at boot  

#  devfs  - use devfs (requires sys-fs/devfsd)              

#  udev   - use udev (requires sys-fs/udev)                 

#  static - let the user manage /dev (YOU need to create ALL device nodes)

RC_DEVICES="auto"

# UDEV OPTION:

# Set to "yes" if you want to save /dev to a tarball on shutdown

# and restore it on startup.  This is useful if you have a lot of

# custom device nodes that udev does not handle/know about.      

RC_DEVICE_TARBALL="no"

# RC_DMESG_LEVEL sets the level at which logging of messages is done to the

# console.  See dmesg( :Cool:  for more info.                                    

RC_DMESG_LEVEL="1"

#

# Controlling start-stop-daemon behavior

# Set to "yes" if start-stop-daemon should always retry killing the

# service with sig KILL if it fails the first time.                

RC_RETRY_KILL="yes"

# Set the amount of seconds start-stop-daemon should wait between

# retries.                                                       

RC_RETRY_TIMEOUT=1

# Set the amount of times start-stop-daemon should try to kill

# a service before giving up.                                 

RC_RETRY_COUNT=5

# Set to "yes" if start-stop-daemon should fail if the service

# is marked as started, but not actually running on stop.

RC_FAIL_ON_ZOMBIE="no"

# Set to "yes" if start-stop-daemon should attempt to kill

# any children left in the system.

# Be careful with this as it really does what it was on the tin.

# fex, if you're in an ssh process and you restart a service on which ssh

# depends then your terminal will be killed also.

RC_KILL_CHILDREN="no"

# Set the amount of seconds start-stop-daemon waits after starting

# the daemon to check it is still running. If it's not then we

# try and stop any children if possible.

RC_WAIT_ON_START="0.1"

##############################################################################

# SERVICE CONFIGURATION VARIABLES

# These variables are documented here, but should be configured in

# /etc/conf.d/foo for service foo and NOT enabled here unless you

# really want them to work on a global basis.

# Some daemons are started and stopped via start-stop-daemon.

# We can launch them through other daemons here, for example valgrind.

# This is only useful for serious debugging of the daemon

# WARNING: If the script's "stop" function does not supply a PID file then

# all processes using the same daemon will be killed.

#RC_DAEMON="/usr/bin/valgrind --tool=memcheck --log-file=/tmp/valgrind.syslog-ng"

# strace needs to be prefixed with --background as it does not detach when

# it's following

#RC_DAEMON="--background /usr/sbin/strace -f -o /tmp/strace.syslog-ng"

# Pass ulimit parameters

#RC_ULIMIT="-u 30"

##############################################################################

#

# Internal configuration variables

#

# NB:  These are for advanced users, and you should really

#      know what you are doing before changing them!

#

# rc-scripts dep-cache directory

#

# NOTE:  Do not remove the next line, as its needed by the baselayout ebuild!

#

#  svcdir="/var/lib/init.d"

svcdir="/var/lib/init.d"

# Should we mount $svcdir in a ram disk for some speed increase

# for slower machines, or for the more extreme setups ?

svcmount="no"

# FS type that should be used for $svcdir.  Note that you need

# $svcmount above set to "yes" for this to work ...  Currently

# tmpfs, ramfs, and ramdisk are supported (tmpfs is the default).

svcfstype="tmpfs"

# Size of $svcdir in KB.  Note that ramfs doesn't support this

# due to kernel limitations.

svcsize=2048

rc-update show

                 udev |                                       sysinit

                local | nonetwork                 networketh0         default

              hwclock |                                                       boot

            alsasound |                           networketh0         default

               vmware |                           networketh0         default

                cupsd |                           networketh0

                dmesg |                                       sysinit

              urandom |                                                       boot

                 ntpd |                           networketh0

             bootmisc |                                                       boot

              keymaps |                                                       boot

             net.eth0 |                           networketh0

                 root |                                                       boot

                 mtab |                                                       boot

               sysctl |                                                       boot

           vixie-cron |                           networketh0         default

                ivman |                           networketh0         default

                 hald |                           networketh0         default

             hostname |                                                       boot

             mount-ro |                  shutdown

                 swap |                                                       boot

           kerneloops |                           networketh0         default

          consolefont |                                                       boot

            savecache |                  shutdown

            syslog-ng |                           networketh0         default

               procfs |                                                       boot

                acpid |                           networketh0         default

              oidentd |                           networketh0

              modules |                                                       boot

               net.lo |                                                       boot

               smartd |                           networketh0         default

        device-mapper |                                                       boot

                devfs |                                       sysinit

                  gpm |                           networketh0         default

            killprocs |                  shutdown

           localmount |                                                       boot

         termencoding |                                                       boot

                named |                           networketh0

                 fsck |                                                       boot

And grub is set up correctelly to pass or NOT pass softlevel=networketh0

----------

## d2_racing

Can you remove net.eth0 from your rc-update and retry ?

----------

