# eth0 not found after emerge

## Kazuo

I did my first emerge --world since the install of my Gentoo tonight, and I found out that PHP was not working as intended on Apache 2 (in fact, it did not work at all).

So I thought like a Windows-user, and rebooted the box in hope that this would help - I know get the following series of events when I boot the box:

* Bringing up eth0

* 192.168.10.3

* eth0 does not exist [!!]

* ERROR: Problem starting needed services.

* "netmount" was not started.

* ERROR: Problem starting needed services.

* "apache2" was not started.

* ERROR: Problem starting needed services.

* "proftpd" was not started.

I have very little experience with Linux, so any help would be welcome here  :Smile: 

----------

## jpl888

Ok, the services failed to start because the network card didn't start.

I need to know a couple of things.

1. What kind of network card are you using?

2. Are you using genkernel as opposed to your own custome kernel?

----------

## Kazuo

I'm using Genkernel, and the NIC is a 3Com Etherlink XL, which is running on the Tulip driver as far as I know.

The card was working fine untill I rebooted the box.

----------

## jpl888

So if you type "lsmod" you can see the tulip module can you?

----------

## Kazuo

Right now nothing shows up when I type lsmod.

----------

## jpl888

As far as I know all the 3com drivers are under "3com".

Who told you the tulip driver was the one to use?

----------

## Kazuo

My friend who helped me with the entire install. I tried compiling with 3Com drivers first, but then nothing happened - Tulip was used during the install, and worked better than the other I tried to install.

Could be that I did something horribly wrong though :p

----------

## jpl888

Horribly wrong would suggest maybe death or serious injury which is a bit strong for this situation  :Wink: 

Ok if you are using one of the tulip drivers I will take your word for it.

Do you know which tulip driver you used during the install?

If so did you add the "module" to modules.autoload.d so that Gentoo would load it after you rebooted?

----------

## Kazuo

 *jpl888 wrote:*   

> Horribly wrong would suggest maybe death or serious injury which is a bit strong for this situation 
> 
> Do you know which tulip driver you used during the install?
> 
> If so did you add the "module" to modules.autoload.d so that Gentoo would load it after you rebooted?

 Horribly wrong would suggest formatting or reinstall  :Wink: 

I think I'm using the generic Tulip driver, as said before I know close to nothing about this stuff.

The files in the modules.autoload.d are actually empty (that is, they contain no lines that will do anything).

----------

## jpl888

The generic Tulip driver is called "de4x5"

If you type "modprobe de4x5" what happens?

----------

## Kazuo

 *jpl888 wrote:*   

> The generic Tulip driver is called "de4x5"
> 
> If you type "modprobe de4x5" what happens?

 Nothing happens.

----------

## jpl888

Ok, If you type "lsmod" now can you see "de4x5" in there?

----------

## Kazuo

 *jpl888 wrote:*   

> Ok, If you type "lsmod" now can you see "de4x5" in there?

 Yup, it shows up.

----------

## jpl888

Ok cool,

type "/etc/init.d/net.eth0 start"

Assuming it starts ok add

"de4x5" to "/etc/modules.autoload.d/kernel-2.6" and restart you machine

Hopefully Bob will be your mother's brother.

----------

## Kazuo

/etc/init.d/net.eth0 start

[*] Starting eth0

[*] Bringing up eth0

[*] 192.168.10.3

[*] eth0 does not exist. [!!]

----------

## jpl888

Ok from the top.

What is the exact part code of your 3com card e.g. 3c905b, etc?

----------

## Kazuo

3C905CX-TX-M

----------

## jpl888

Ok according to the kernel help the module for that card is "3c59x" so:-

1. "modprobe 3c59x"

2. "/etc/init.d/net.eth0 start"

Assuming that starts

3. add "3c59x" to "/etc/modules.autoload.d/kernel-2.6"

4. "reboot"

Bob should definitely then be your mother's brother and if he isn't I will start getting worried (I am a bit of a worrier)

----------

## Kazuo

 *jpl888 wrote:*   

> Ok according to the kernel help the module for that card is "3c59x" so:-
> 
> 1. "modprobe 3c59x"
> 
> 2. "/etc/init.d/net.eth0 start"

 FATAL: Module 3c59x not found.

I dont think I included the 3Com driver when I compiled the OS last time.

----------

## jpl888

Recompile the kernel with that driver.

I don't know why you were trying to use the Tulip (DEC) driver the only cards I have come across that use a DEC chipset are old SMC (I'm sure there are more aswell).

I have used 3c905B-TX with Gentoo and the 3com driver works fine.

Trust me I know what I'm doing and if I don't I at least feel like I do.

----------

## limn

Try

```
modprobe tulip
```

before you recompile the kernel.

How could the card have been working if the appropriate driver was not already compiled?

----------

## Kazuo

 *jpl888 wrote:*   

> Recompile the kernel with that driver.

 Kazuo the newbish strikes again, but - ...how?  :Embarassed: 

Thanks a lot for taking the time to help me  :Very Happy: 

----------

## jpl888

 *Quote:*   

> 
> 
> Try
> 
> Code:
> ...

 

Because if he was booted from a Livecd the module could have been autoloaded, and although he thought he was using the tulip driver he wasn't actually.

Why use the Tulip driver for a 3com card? A more fundemental question.

Maybe I am just blowing gas from my nether regions.

----------

## limn

Kazuo: Actually, you could try booting from the livecd and if it brings up the network, see which driver it loaded.

jpl888: Kazuo thought it was tulip, no harm in trying to load that one.

----------

## jpl888

Actually Limn Kazuo said it was "generic tulip" which if you look at the kernel is "de4x5" and not "tulip". I already got him to load that module near the start of the post and it didn't work.

I have never seen a 3com card with a DEC chipset (in nearly 10 years), so I think it is highly unlikely that any Tulip driver will work.

I am obviously mental not wanting Kazuo to try something that I think is pointless and if it did work it would probably work badly and cause Kazuo more hassle down the line.

----------

## Spiffster

I have used several 3com-cards and they all use the different 3com-drivers. In particular the 3c905 uses (as someone else suggested) the 3c59x-driver (also known as Vortex/Boomerang in the kernel configuration).

Assuming you use a 2.6.x-kernel, start the kernel configuration and go to

Device Drivers -> Networking support -> Ethernet (10 or 100Mbit)

Now select 3COM cards and select 3c590/3c900 series (592/595/597) "Vortex/Boomerang" support as a module. After recompiling your modules, remember to add it to /etc/modules.autoload.d/kernel-2.6 (remember the name of the driver is 3c59x). That should do the trick  :Smile: 

----------

## jpl888

See if you can rearrange this jumble of words into a well known sentence or phrase:-

"many too cooks broth spoil the"

Before anyone else got involved I suggested compiling the "3c59x" driver into the kernel to Kazuo, I would appreciate it if nobody else posted until he has tried this and come back to the list, if not because you are probably wasting your time but for Kazuo's sake and for my sanity.

----------

## Kazuo

 *jpl888 wrote:*   

> Ok according to the kernel help the module for that card is "3c59x" so:-
> 
> 1. "modprobe 3c59x"
> 
> 2. "/etc/init.d/net.eth0 start"
> ...

 I've recompiled the kernel, and modprobe works, but I still get "eth0 does not exist" whe I try to start eth0.

----------

## jpl888

What is the output of "lsmod"?

----------

## jpl888

I just recompiled my kernel with module support just to check the order of what I was saying and it works.

From this I can deduce 2 possibilities:-

1. You didn't reboot your PC after you recompiled the kernel and the de4x5 driver is still in memory, somehow interfering with the 3com driver.

2. The NIC is farked (unlikely but entirely possible that it just decided to give up the ghost between reboots)

The output of "lspci" might shed more light in addition to "lsmod"

----------

## Kazuo

EEeeeeep, I'm an idiot as it seems I've got NIC's I dont even know about.

The card actually sitting in this box was an SMC1255TX, the 3Com card had been moved to one of the Windows-boxes here instead, though I dunno why. This was done a loong time ago, so it slipped my mind.

Anyone know which driver to use for this one?  :Embarassed: 

----------

## jpl888

As I said near the start of the post, the only cards I've seen that use DEC chipsets are SMC so it would then be one of the Tulip drivers.

It would help if you looked at the card itself and the big chip to tell me exactly which chipset it is.

I understand your embarassment, at this stage I feel like I am losing the plot, it is frustrating when you can't even rely on the information you are given.

----------

## Kazuo

This is what it says on the chip:

SMC

EN5251B

0133TSABR38207.1

----------

## jpl888

DECchip Tulip (dc2114x) PCI support (NEW)

AKA tulip.o

It's seems the only mistake you made apart from telling me you had a NIC that you didn't, is compiling the Generic Tulip driver instead of the above.

Hopefully this one can be put to bed now.

----------

## Kazuo

 *jpl888 wrote:*   

> DECchip Tulip (dc2114x) PCI support (NEW)
> 
> AKA tulip.o

 This have always been compiled with my kernel, tried re-compiling now and I'm getting the same error.

I think this might be the result of an etc-update gone oh-so-wrong after the emerge --world.

----------

## jpl888

Ok, well what I would say is remove the "/etc/init.d/net.eth0" and "/etc/conf.d/net" and "emerge --emptytree system" that will recreate those files and hopefully sort out any syntax/corruption problems that could be causing this.

I can't see any harm in doing this other than it will take a long time  :Smile: 

From what I have seen on forums that tulip driver is the right one for a SMC 1255TX anyway.

Best of luck Kazuo

----------

## Kazuo

 *Quote:*   

> emerge --emptytree system
> 
> Calculation system dependencies ...done!
> 
> !!! Error: the sys-apps/pam-login package conflicts with another package.
> ...

 Running emerge --pretend just says that I'm giving too little imput (emerge: please tell me what to do.)

----------

## nilecirb

 *Kazuo wrote:*   

>  *Quote:*   emerge --emptytree system
> 
> Calculation system dependencies ...done!
> 
> !!! Error: the sys-apps/pam-login package conflicts with another package.
> ...

 

What the error message is saying is to use emerge --pretend --emptrytree system.

----------

## Kazuo

sys-apps/pam-login (is blocking sys-apps/shadow-4.0.5-r3).

----------

## jpl888

Well I suppose logically "emerge unmerge pam-login" and then try it, but be careful as I would say if you logout in between doing the 2 things you probably won't be able to login again.

You could also try running another sync before doing that even.

----------

## Kazuo

 *jpl888 wrote:*   

> Well I suppose logically "emerge unmerge pam-login" and then try it, but be careful as I would say if you logout in between doing the 2 things you probably won't be able to login again.

 This is done, and as I did a new emerge it complains that it's unable to find any of the hosts to download from...

So now I got a Linux box that I'm unable to reboot and login to, and no working ethernet.

----------

## jpl888

What file is it trying to download?

You could download the file(s) yourself from one of the mirrors on another PC and transfer it into "/usr/portage/distfiles"

Let me know if you need help with that.

----------

## Kazuo

Finally (good?) things are happening, it's seems to be doing something without a bunch of errors  :Smile: 

EDIT: Seems there were a bunch of files that were needed here, are there any way of showing all the files I need so I dont have to burn a CD for each step further I get?Last edited by Kazuo on Wed Jul 13, 2005 12:46 pm; edited 3 times in total

----------

## jpl888

As the great Homer would say "wooohooooo"!

----------

## Kazuo

When I took a --pretend, a lot of files showed up, and I'm guessing I need all those in order to do an emerge.

Is there any easy way of getting all these?

----------

## jpl888

Well the other alternative is to boot into the Livecd, get the internet connection working, chroot into you Gentoo install and emerge from there.

Otherwise you will have to download the files needed, incidentally I think it will only be the stuff that has a "N" next to it from the pretend that you need to download, maybe that will make things easier.

----------

