Thanks for sticking with this, scrambled_egg!
I've looked in /var/log/boot.log and found:
Initializing network
Setting up localhost ...[70G[ [1;32mOK[0;39m ]
Setting up basic network ...[70G[ [1;32mOK[0;39m ]
Setting up route ...[70G[ [1;32mOK[0;39m ]
Setting up firewall ...[70G[ [1;32mOK[0;39m ]
Looking in /var/log/messages brings up the following:
May 18 17:14:16 vector kernel: eth0: 3Com 3c589, io 0x300, irq 5, hw_addr 00:60:08:DE:AC:B5
May 18 17:14:16 vector kernel: 8K FIFO split 5:3 Rx:Tx, auto xcvr
May 18 17:14:16 vector kernel: es1968: clocking to 48000
May 18 17:14:19 vector kernel: powernow: This module only works with AMD K7 CPUs
May 18 17:14:19 vector kernel: parport0: PC-style at 0x378 (0x778) [PCSPP,TRISTATE]
May 18 17:14:19 vector kernel: parport0: irq 7 detected
May 18 17:14:20 vector kernel: parport0: Printer, EPSON Stylus Photo 890
May 18 17:14:20 vector kernel: lp0: using parport0 (polling).
May 18 17:14:20 vector kernel: lp0: console ready
May 18 17:14:25 vector kernel: eth0: flipped to 10base2
May 18 17:14:36 vector vcpufreq-load: vcpufreq-load disabled in config...
May 18 17:14:42 vector /usr/sbin/gpm[3445]: *** info [startup.c(95)]:
May 18 17:14:42 vector /usr/sbin/gpm[3445]: Started gpm successfully. Entered daemon mode.
May 18 17:14:44 vector kernel: eth0: flipped to 10base2
May 18 17:17:37 vector sudo: martin : TTY=unknown ; PWD=/home/martin ; USER=root ; COMMAND=/usr/libexec/xfsm-shutdown-helper
May 18 17:17:53 vector ifplugd(eth0)[3610]: ifplugd 0.28 initializing.
May 18 17:17:53 vector ifplugd(eth0)[3610]: Using interface eth0/00:60:08:DE:AC:B5 with driver <3c589_cs> (version: 1.162-ac)
May 18 17:17:53 vector ifplugd(eth0)[3610]: Using detection mode: IFF_RUNNING
May 18 17:17:53 vector ifplugd(eth0)[3610]: Initialization complete, link beat detected.
May 18 17:17:53 vector ifplugd(eth0)[3610]: Executing '/etc/ifplugd/ifplugd.action eth0 up'.
May 18 17:17:53 vector ifplugd.action: ifplugd.action says: checking out rc.inet1 ...
May 18 17:17:53 vector ifplugd.action: ifplugd.action says: rc.inet1 is executable ...
May 18 17:17:53 vector ifplugd.action: ifplugd.action says: Mr. grep found eth0 in rc.inet1, bringing it up ...
May 18 17:17:55 vector kernel: eth0: flipped to 10base2
May 18 17:18:03 vector ifplugd(eth0)[3610]: Program executed successfully.
May 18 17:18:05 vector kernel: eth0: flipped to 10base2
May 18 17:18:47 vector kernel: eth0: coax cable problem
May 18 17:19:04 vector kernel: eth0: flipped to 10baseT
May 18 17:19:18 vector kernel: eth0: flipped to 10baseT
May 18 17:34:16 vector -- MARK --
And looking in /var/log/syslog, dhcpcd is referenced. I think the references to 'ifplugd' (both above and below) are because that's the first part of how I get the inet connection to work; I come out of xfce, change to su, and type ifplugd. I've learned that eventually the light on my 3Com adapter comes on (it may take a while) and I believe this is 'link beat detection'(?). Once the light comes on, I type '/etc/rc.d/rc.inet1 start', and I can talk to the world.
May 18 17:14:33 vector dhcpcd[2516]: timed out waiting for a valid DHCP server response
May 18 17:14:33 vector kernel: ip_tables: (C) 2000-2006 Netfilter Core Team
May 18 17:14:34 vector kernel: ip_conntrack version 2.4 (1535 buckets, 12280 max) - 224 bytes per conntrack
May 18 17:14:52 vector dhcpcd[3458]: timed out waiting for a valid DHCP server response
May 18 17:17:53 vector ifplugd(eth0)[3610]: client: Starting network eth0 using a DHCP server...
May 18 17:18:03 vector dhcpcd[3619]: timed out waiting for a valid DHCP server response
May 18 17:18:03 vector ifplugd(eth0)[3610]: client: dhcpcd: MAC address = 00:60:08:de:ac:b5
My modification of rc.M is very similar to yours, except that I added the line:
echo "rc.M: network section called with parameter $i" >> $BOOT_SCRIPTS_LOG
at line 95 to see what that section was doing.
I'm finding it very difficult to establish what parts of the various reports (boot.log, messages, syslog) are resulting from which actions on my part, and which scripts. It strikes me as a very ad hoc system, that's obviously been added to over a period of time, and is therefore difficult to analyse or debug. Perhaps my level of understanding of it is so low because I'm just beginning to learn.
Was your system working fine from the outset, or did you also have to experiment to get it to work properly?