# no net after installation

## Zalex

i installed gentoo yesterday and during the install i had internet working (i had to do dhcpcd eth1 to get it working).

now after the install i can't start eth1... i followed the instructions on the handbook. 

i inserted the livecd and did a lsmod. the modules found were this:

CDCEther

acm

8139too

mii

ochi1394

ieee1394

floppy

serial

isa-pnp

usb-storage

hid

usb-ohci

ehci-hcd

usbcore

my cable modem is connected thru usb (some weeks ago it worked fine but i messed the gentoo hd)

help appreciated 

thanks

----------

## Helena

 *Zalex wrote:*   

> i installed gentoo yesterday and during the install i had internet working (i had to do dhcpcd eth1 to get it working).
> 
> now after the install i can't start eth1... i followed the instructions on the handbook. 
> 
> i inserted the livecd and did a lsmod. the modules found were this:
> ...

 Please list the output of

```
ifconfig -a
```

It may well be  that your network card now is "eth0" instead of "eth1"!

----------

## Zalex

ifconfig -a just shows localhost info. no eth0 or eth1.

my /etc/conf.d/net has iface_eth0="dhcpcd" and i did rc-update add net.eth0 default

on boot i have this error:

# net.eth0 start 

* Bringing eth0 up 

* Failed to bring eth0 up

----------

## Peracles

 *Zalex wrote:*   

> ifconfig -a just shows localhost info. no eth0 or eth1.
> 
> my /etc/conf.d/net has iface_eth0="dhcpcd" and i did rc-update add net.eth0 default
> 
> on boot i have this error:
> ...

 

The ethernet driver u are using is 8139too.  Its a 8139 based ethernet chip.  Try to run "insmod 8139too" and see if you have the module already compiled.

If u used genkernel to get a kernel (or the above insmod worked), you can add 8139too to your /etc/modules.d/kernel-2.X file (2.4 if using 2.4 kernel and 2.6 if using 2.6 kernel).  Just add "8139too" by itself on a line.  You then need to run modules-update to get it automagically added to your /etc/modules.conf file.

If you hand compiled your kernel and you do not have the 8139too module, you will need to recompile it and make sure you flag the 8319 (its under drivers-network-10/100 in 2.6, and I believe under network in 2.4).  You can choose to make a module OR compile the driver directly into the kernel.

Once you get this done, your net should work if you have your /etc/conf.d/net file set up correctly.

----------

## Helena

 *Zalex wrote:*   

> ifconfig -a just shows localhost info. no eth0 or eth1.
> 
> my /etc/conf.d/net has iface_eth0="dhcpcd" and i did rc-update add net.eth0 default
> 
> on boot i have this error:
> ...

 OK so far it seems like a simple driver problem. Either you did not compile the correct network card driver or you forgot to load it (if you compiled it as a module). When you boot from the LiveCD it will automatically detect which card you have and load the correct driver. So make sure you do the same in your system. If you did compile a network card driver then examine the kernel log with

```
dmesg | more
```

as it may show further information (look at the very end).

----------

## Zalex

 *Peracles wrote:*   

> The ethernet driver u are using is 8139too.  Its a 8139 based ethernet chip.  Try to run "insmod 8139too" and see if you have the module already compiled.
> 
> 

 

insmod 8139too says that no modules were found with that name.

 *Peracles wrote:*   

> 
> 
> If you hand compiled your kernel and you do not have the 8139too module, you will need to recompile it and make sure you flag the 8319 (its under drivers-network-10/100 in 2.6, and I believe under network in 2.4).  You can choose to make a module OR compile the driver directly into the kernel.
> 
> 

 

i recompiled the kernel, selected realtek 8139 support but i still can't bring eth0 up.

----------

## Peracles

 *Zalex wrote:*   

>  *Peracles wrote:*   The ethernet driver u are using is 8139too.  Its a 8139 based ethernet chip.  Try to run "insmod 8139too" and see if you have the module already compiled.
> 
>  
> 
> insmod 8139too says that no modules were found with that name.
> ...

 

Did you compile it as a module or into the kernel?  If module, did it load (lsmod).  You can also check dmesg to see any statements that got printed out when the driver tried to load.

----------

## dsd

we have missed the point

You have a USB cable modem. CDCEther is the driver needed (as shown in the lsmod output in original post) - i recognise this because I have a similar device (but i use the ethernet capabilities).

dont worry about the 8139too - it sounds like you have a network card installed as well. if you arent plugging anything into this, then you will not need it.

boot into the system, and recompile your kernel with the following options:

```

USB Support --->

 <*>   USB Modem (CDC ACM) support

 <*>   USB Communication Class Ethernet device support (EXPERIMENTAL)

```

mount /boot, copy new kernel over, reboot, and it should work.

----------

## Zalex

yes, i have an onboard network card that i don't use.

and i recompiled the kernel with those two options but it still doesn't work.

maybe i'm doing it wrong. i'm compiling it the way it's in the handbook:

```

# cd /usr/src/linux

# make menuconfig

# make dep && make bzImage modules modules_install

# cp arch/i386/boot/bzImage /boot/kernel-2.4.24

# cp System.map /boot/System.map-2.4.24

# cp .config /boot/config-2.4.24

```

is this the right way?

----------

## dsd

no, you forgot to mount /boot

you may also need to edit your lilo/grub config

----------

## Zalex

i recompiled it again, mounted /boot and copied the kernel and still a no go. 

i'm begining to desperate! :/

----------

## dsd

ok

first thing, run

```
uname -v
```

that will give you the time/date at which the kernel was compiled. that will confirm that you are running the kernel you think you are!

next thing you could do is look at the output of "dmesg". that might give you some input as to if its being detected or not. you could try rebooting the cable modem, and seeing if any new lines are added to the end of dmesg.

----------

## Zalex

uname says im using the right kernel. it's the latest i've compiled.

in dmesg i have this:

```

8139too Fast Ethernet driver 0.9.26

eth0: Realtek RTL8139 Fast Ethernet at 0xe0800000, 00:04:61:46:ed:08, IRQ 11

eth0: Identified 8139chip type'RTL-8139c'

......

......

......

......

(last line)

eth0: Setting half-duplex based on auto-negotiated partner ability 0000

```

i have also other messages about the usb drivers but they correctly loaded. i guess there are no errors about them.

----------

## dsd

right. 

how about the output of

```
cat /proc/bus/usb/devices
```

----------

## Zalex

i don't have that directory. in /proc/bus i have only pccard and pci.

btw, thanks a lot for your help  :Smile: 

----------

## dsd

ok, i think we need to check your kernel configuration

check that you have all as these as <*> (y) in the menuconfig:

```

USB support  --->

 <*> Support for USB

 [*]   Preliminary USB device filesystem

 <*>   EHCI HCD (USB 2.0) support (EXPERIMENTAL)

 <*>   UHCI Alternate Driver (JE) support

<*>   OHCI (Compaq, iMacs, OPTi, SiS, ALi, ...) support

(plus the other stuff relating to CDCEther that i advised a few posts ago)

```

----------

## Zalex

 *dsd wrote:*   

> ok, i think we need to check your kernel configuration
> 
> check that you have all as these as <*> (y) in the menuconfig:
> 
> ```
> ...

 

that did it! i'm posting this message already from gentoo!

thank you very much! 

[]

----------

## dsd

nice to hear it works  :Smile: 

----------

## rodericj

My problem I believe is similar 

I am using the  (3com 3c905) network card.

I guess that I am not quite sure if I have selected the correct option in my Kernel Config. There was a selection for 3c900 FAMILY, but not my specific card. I will assume that this is ok. I installed this into the kernel, not as a module. When I boot up, I get the old

# net.eth0 start

* Bringing eth0 up

* Failed to bring eth0 up

I am using an up to date kernel. 

I checked the dmesg and I didn't see anything that really stuck out other than ACPI disabled because my BIOS is too old.

I don't think that should effect it.

Do you have any more ideas as to what I could be looking at or for?

Thanks 

Roderic

----------

## dsd

please post the output of

```
lspci

lspci -n
```

(lspci is part of the pciutils package)

and let us know which kernel version you are running

----------

## rodericj

Sorry for the delay in the reply.

I have done the ol' lspci and the results were as follows:

00:0f.0 Ethernet controller: 3cOM Corporation 3c905B 100BaseTX  [Cyclone] (rev 30)

This seems to be the correct Card. At least, the label on the card says that.

lspci -n    says:

00:0f.0 Class 0200: 10b7:9055 (rev 30)

I am not sure what all of this means. Other than it seems to match the actual state of my machine. I suppose this means that my kernel is configured correctly for this section anyway.

dsd: What were you expecting to happen with that command?

oh and my kernel is 2.4.24

And I am not sure what this means. But 

ifconfig

gives me nothing for eth0, only lo. I thought this was weird and possibly helpful.

Roderic

----------

## dsd

the output of those commands simply gives me info about your hardware. i was able to look up the ID's (from lspci -n) in the kernel source, and determine that the following driver is able to support your hardware:

<*>     3c590/3c900 series (592/595/597) "Vortex/Boomerang" support

CONFIG_VORTEX

I'm guessing that from an earlier post you have already tried this driver?

if so, please post the "dmesg" output while this driver is compiled and loaded...

----------

## rodericj

Very Informative Post Sir.

Right. So my dmesg. I do not know how to getyou a copy of what exactly is on my dmesg output. I will give you the jist of it.

dmesg:

```

ACIP disabled because our bios is from 2000 and to old

You can enable is using acpi=force

...

...

PCI: PCI BIOS revision 2.10 entry at 0xfd7ec, last bus = 1

PCI: Using configuration type 1

PCI: Probing PCI hardware

PCI: Probing PCI hardware (bus 00)

PCI: Using IRQ router VIA [1106/0596] at 00:02.0

Activating ISA DMA hang workarounds.

isapop: Scanning for PnP cards...

isapop: No Plug & Play device found

Linux Net4.0 for LInux 2.4

Based upon Swansea University COmputer Society Net3.039

Initializing RT netlink socket

Starting kswapd

devsfs: v1.12c (20020818) Richard Gooch(rgooch@atnf.csiro.au)

devfs: boot_options: 0x1

..

..

FDC 0 is a post-1991 82077

[i][u]0 3c515 cards found.     [/u][/i] <<<<<<---I find this interesting

PPP generic driver version 2.4.2

...

...

Partition check:

/dev/ide/host0/bus0/target0/lun0: p1 p2 p3

SCSI subsystem drive Revision: 1.00

kmod: failed to exec /sbin/modprobe -s -k scsi_hostadapter, errno = 2

...

...

NET4: Linux TCP/IP 1.0 for NET4.0

IP Protocols: ICMP, UDP, TCP, IGMP

IP: routing cache hash table of 512 buckets , 4KBytes

TCP: Hash tables configured (established 8192 bind 8192)

NET4: Unix domain sockets 1.0/SMP for LInux NET4.0

VFS: Mounted root (ext2 filesystem) readonly.

Mounted devfs on /dev

```

That pretty much does it.

I am looking at that line that says the 3cxxx card was not found. That intrigues me and makes me think that my kernel is not correct. I originally had that 3c515 selected for my kernel. I went in and fixed it but maybe I didn't overwrite the old kernel. 

I will look into this immediately. I am recompiling the kernel as we speak.

Did you see anything else that stuck out dsd?

You rule if We just solved this.

----------

## dsd

nothing else sticks out

btw, running "uname -v" will give you the exact date and time which your kernel was compiled. this is useful for confirming that you are running the kernel that you think you are. feel free to post your kernel-updating procedure here for someone to check it.

----------

## rodericj

I was just about  to post about that.

I checked it out. And I am using the last kernel that I compiled (from wednesday [ 4 days ago]. I want the one that I compiled today. I did what I was supposed to do. I mounted hda and everything. 

Still didn't work. The problem now is that when I boot up, it does not recognize the module. The module it is looking for is 3c59x.o. It is not able to find this.

Sucks.

I also am not able to find this. Where do modules go? 

I am looking in /lib/modules/2.4.24 [/kernel] and I do not see anything that really looks like what I am looking for.

lsmod yields no results either.

doing a modules-update does not seem to change /etc/modules.conf

I am still searching for the next step for me to take.

----------

## dsd

did you compile it as a module (M) <M> or as inbuilt support (Y) <*> ?

if you chose Y then you dont need to load the module. its already loaded into the kernel.

if you compiled it as a module, then did you remember to run "make modules modules_install" ?

----------

## rodericj

I did it as a module.

And did make modules modules_install

still lsmod gives me nothing

I will do the whole thing again now with it not as a module, but installed into the kernel.

I will let you know how this works. I do not expect to have good results with this.

EDIT

EDIT

EDIT

EDIT

Holy cats. I did it. I mean you did it

I mean we did it.

I recompiled the kernel. I guess by default there is this thing that has an incorrect Card. It was far below the one I was using so I never saw it. I took that out and it seemed to fix my problem. I am emerging VIM right now and I love it.

Thank you dsd and anyone else who helped me. You guys are the greatest.

----------

## ojintoad

I am having the exact problem rodericj had.  However, I am having trouble recompiling my kernel.

What exactly are the mounts that need to be accomplished so that the latest compiled cournel runs?  I definitely am not aware of this (I thought I was already mounted and recompiling directly on my mounted hard drive).  Here is my procedure so far...

make menuconfig

make dep && make bzImage modules modules_install

cp arch/i386/boot/bzImage /boot/kernel-2.4.24

cp System.map /boot/System.map-2.4.24

cp .config /boot/config-2.4.24

And then I do my "mount"?  Or after?  And should I really be doing this all from the live CD or from my actual hard drive?

----------

## Helena

 *ojintoad wrote:*   

> I am having the exact problem rodericj had.  However, I am having trouble recompiling my kernel.
> 
> What exactly are the mounts that need to be accomplished so that the latest compiled cournel runs?  I definitely am not aware of this (I thought I was already mounted and recompiling directly on my mounted hard drive).  Here is my procedure so far...
> 
> make menuconfig
> ...

 When you recompile a kernel it is created as file "bzImage" inside your compilation directory (normal situation, of course, there are possibilities that it is different depending on options you have selected, but this is the default).

Now most people create a separate /boot-partition as recommended by the installation guide. However, this partition is not mounted automatically. This means that whenever you refer to /boot it will be stored somewhere inside your /-partition where it cannot be found by grub (again, assuming defaults!).

It is however very simple to solve. Before you copy over your newly compiled kernel, first mount /boot. The steps then are (for a 2.4-based kernel):

```

make menuconfig

make dep && make bzImage modules modules_install

mount /boot

cp arch/i386/boot/bzImage /boot/kernel-2.4.24

cp System.map /boot/System.map-2.4.24

cp .config /boot/config-2.4.24

umount /boot

```

If this happens a lot, you can save time by either making a shell script for these steps or changing /etc/fstab to have /boot mounted automatically.

----------

