# netmount won't start

## Kellen

I can not for the life of me get the internet to work. (I skimmed through about 60 pages in here, plus googled problem and tried a bunch of stuff and resulted in still not being able to get on internet, so I posted this)

General laptop info:

i used the genkernel, I have a dell inspiron 8600. 

my nics are: Intel Pro Wireless 2200BG and broadcom BCM4401 (added b44 to module)

beginning error on boot:

bringing up eth0 up via DHCP  [!!]

ERROR: Problem starting needed services. "netmount" was not started.

tailed dhcpcd -d eth0  result:

laptop dhcpcd[9331]: dhcpStart: interface eth0 is not Ethernet or 802.2 Token Ring

```
/etc/init.d/net.eth0 start
```

 gives error bringing up eth0 up via DHCP  [!!]

```
ifconfig -a
```

etho 	Link encap:UNSPEC HWaddr 37-4f-c0-00-25-14-c8-a1-00-00-00-00-00-00-00-00

	BROADCAST MULTICAST MTU:1500 Metric:1

	rx packets:0 errors:0 dropped:0 overruns:0 frame:0

	tx packets:0 errors:0 dropped:0 overruns:0 carrier:0

	collisions: txqueuelen:1000

	RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

eth1 	Link encap:Ethernet HWaddr 00:0F:1F:21:F8:B0

	BROADCAST MULTICAST MTU:1500 Metric:1

	rx packets:0 errors:0 dropped:0 overruns:0 frame:0

	tx packets:0 errors:0 dropped:0 overruns:0 carrier:0

	collisions: txqueuelen:1000

	RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

	Interrupt:11

lo 	Link encap:Local Loopback

	inet addr:127.0.0.1 Mask:255.0.0.0

	UP LOOPBACK RUNNING MTU:16436 Metric:1

	RX packets:0 errors:0 dropped:0 overruns:0 frame:0

	TX packets:0 errors:0 dropped:0 overruns:0 carrier:0

	collisions: txqueuelen:1000

	RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

```
ls /etc/init.d/net*
```

/etc/init.d/net.eth0  /etc/init.d/net.lo  /etc/init.d/netmount

Anyone have any ideas? (I eventually want to setup the wireless, but at this point, I just want the lan to work as I was thinking it would be easier.

Thanks.

Kellen

----------

## NeddySeagoon

Kellen,

If you have firewire check that the module eth1394 is not loading. Thats Ethernet over firewire. It often pushes your real ethernet up to eth1. Your eth0 entry looks a bit strange.

For a test, you can 

```
modprobe -r b44

modprobe -r eth1394
```

to remove the modules

ifconfig should show that eth0 and eth1 are gone. Now 

```
modprobe b44

/etc/init.d/net.eth0
```

should get the network up.  If thats OK, run

```
modprobe -l -t net
```

to find where eth1394.ko is located and delete/rename it.

You need to fix your kernel config, so this module is not built.

----------

## Kellen

Thanks for the reply, I'm a 2 day old n00b with linux.

EDITED by KELLEN: UMM.. Ping Worked, Please reread the bottom!

I did this:

 *Quote:*   

> 
> 
> For a test, you can 
> 
> ```
> ...

 

I did the 

```
/etc/init.d/net.eth0
```

and it returned a lot of text, but I can only see some of it. Basically looks like some instructions then a subtitle named: 

Configuration files:

There are three files which will be sourced for possible configuration by the rc-scripts. They are (sourced from top to bottom):

/etc/conf.d/basic

/etc/conf.d//net.eth0

/etc/rc.conf

Management:

Services are added and removed via the 'rc-update' tool. TUnning it without arguments should give sufficient help.

laptop root#

Did try this,

 *Quote:*   

> If thats OK, run
> 
> ```
> modprobe -l -t net
> ```
> ...

 

I got a lot of /lib/modules/2.6.11-gentoo-r3/kernel/drivers/net/*.ko

If you don't mind, what should I do now? how do I fix my kernel config?

Thanks,

----------

## Kellen

I guess I should have asked, lol, how do I save the changes to I can continue to get on the internet on next reboot? Kind of afraid to do anything fearing I'll screw something up.

Thanks.

n00b aka Kellen  :Laughing: 

----------

## NeddySeagoon

Kellen,

You have confirmed that eth1394 is the source of the problem.

If you need to scroll your console up to see what went off the top you have two options

1. Press shift and page up

2. Use a pager like less

3. Cheat - learn to use pipes and grep

For example

```
modprob -l | less
```

will list all your modules using the pager less. You can scroll up and down

```
modprobe -l | grep 1394
```

shows you all the lines from modprobe -l that contain the string 1394. You can pile these things up too.

Fixing your kerenl configuration is a longer term thing, so that when you update your kernel, yo udont get the dame problem. Do

```
cd /usr/src/linux

make menuconfig
```

You are in the hard made kernel config tool. Find the Firewire 1394 section and turn off Ethernet over firewire. You will need to do this when you run genkernel probably. This won't change your kernel until you recomppile and reinstall it, hence the need to rename/delete the module you already have.

The text is just help, I think.  Do a 

```
rc-update -s
```

and check you have net.eth0 in the defualt runlevel.

It should be because your system complaued about not starting netstat.

When you have stopped eth1394 from loading, it should work on boot.

----------

## Kellen

 *NeddySeagoon wrote:*   

> Kellen,
> 
> For example
> 
> ```
> ...

  Like the DOS dir /p command Thanks a million!

 *NeddySeagoon wrote:*   

> 
> 
> ```
> ....make menuconfig
> ```
> ...

 

I did the steps you listed in the code, however, being a newb, if you have time to point me in the right direction for:

"You will need to do this when you run genkernel probably. This won't change your kernel until you recomppile and reinstall it, hence the need to rename/delete the module you already have."  Sorry, I don't know how to do this. 

or this: "...check you have net.eth0 in the defualt runlevel."

(I tried the code steps, rebooted, no internet, repeated steps listed in your code.. confirmed that 1394 is not included in menu config and I have internet right now but did not do the steps listed above)

Thank you for your continued help!

----------

## Eckzow

Kellen,

First off, I would like to mention that the "| less" trick works everywhere.  Sounds like you've not had much time to play around with linux and I don't know what your familiarity is with pipes/console stuff, so I'll explain a bit--when you run a program it sends its output to the console (duh).  Placing a vertical bar after after a command will cause the program to write its output to whatever program name you place after the bar.  Common programs you will see this happen with are "less" which works (pun intended) "more or less" like the "more" or "/p" stuff from DOS (up/down arrow will let you scroll up and down through the output, pgup/pgdown to do so a page at a time), as well as "grep" which is a sort of find program that does some really cool expression matching.  So something like

```
ls | less
```

can be used to list all of the files in a directory where normally it would scroll off the top of the screen.  Also, say you take the same huge directory but you just want to know if a file named "foo" is present in the directory, you can do

```
ls | grep "foo"
```

and that will print every line of output generated by ls that contains the string "foo"

So, with that out of the way, let's talk about recompiling your kernel.  Genkernel is really a great tool, but for some reason lots of so-called "gurus" frown upon it because it "hides complexity."  Let's just say that it *really* just makes your life easier, because you can expose most of that complexity when you want it back anyway.  My bet is that you used genkernel to build your first kernel (that's how Gentoo's manual does it) so I'd recommend you stick to that when trying to make new kernels.  If you exectue genkernel with

```
genkernel --menuconfig all
```

it will run the genkernel script just like you did in setup, only it will show you the menuconfig utility that was mentioned and you apparently figured out earlier so that you can review your choices.  Eventually you can use this to make genkernel build a kernel that only supports the hardware that you want, but for now its a great way to let genkernel do all the dirty work and still edit small things like going and taking out the ethernet over firewire stuff.  After you finish in menuconfig just exit and save and genkernel will take charge again and rebuild your kernel, copy the files to the appropriate place in /boot when it's mounted, and things should be all hunky-dory, just like your first kernel build.

Hope that helps clear some stuff up...

----------

## Kellen

**HELP.. LOL***

Thanks for the quick replies and explainations. Very Helpful! (well except this last problem! LOL)

Just wanted to put a quick note saying I've done the 

```
genkernel --menuconfig all
```

 and it.. just finished the bzimage... and working on the modules. I'll wait for it to be done (duh!) and post back if all worked. 

Well, it finished, I'm rebooting and it .... 

>> Block device /dev/hda7 is not a valid root device...

>> The root blockdevice is unspecified or not detected.

Please specify a device to boot, or "shell" for a shell boot () :: 

I tried /dev/hda5 (boot), /dev/hda7 (root).. 

None worked. Really lost here!

LOL. 

Thanks for continued help

----------

## Eckzow

OK, first step is don't panic.  Let's get your system back to useable first of all.  Got your LiveCD handy?  Good.  Throw that baby in there, and once you're booted up do this.  (/mnt/gentoo might already exist, by the way, I'm just having you make it here to be safe)

```
mkdir /mnt/gentoo

mount /dev/hda7 /mnt/gentoo

chroot /mnt/gentoo

mount /dev/hda5 /boot

genkernel all
```

Running "genkernel all" should be just like the setup and should make sure all the autodetection stuff is in there.  Report back on status, I don't wanna leave you with a borked machine...

EDIT: Oh, and if its not too late, make sure your /boot/grub/grub.conf entries follow the rules listed at the bottom of genkernel's output.  Especially the stuff that has to do with initrd.

----------

## Kellen

LOL.

Well, not panicing.. realize there's a lot of ppl who will help, like yourself. Started with linux 2 days ago. Had to do 2 installs (well, 2nd was from the chrooting part in the handbook).

```
/mnt/gentoo: 
```

 is a directory as assumed..

```
mount /dev/hda7 /mnt/gentoo:
```

  EXT2-fs warning (device hda7): ext2_fill_super: mounting ext3 filesystem as ext2 (I really don't want ext2 for my root file system.. ext3 is where it's at for what I"m told LOL)

```
chroot /mnt/gentoo
```

 : took me to the livecd / # from the livecd root #

```
mount /dev/hda5 /boot
```

 :new line

```
genkernel all
```

 : stated that /dev/hda5 is already mounted on /boot

     *Warning Failed to mount /boot! 

      Error, do this: mount -t proc proc /proc  

Kernel:>> Running Mrproper... (doing the bzimage, then I assume the modules... ) 

I'll post back after it's done working... Should I reboot when it's done to see if all works and the internet? 

Thanks, 

 :Smile: 

----------

## Eckzow

OK, here's the deal.  Somewhere along the way your default kernel config got kind of pooched.  Usually when you get the "not a valid root device" error its because either A) a driver for your mobo didn't get compiled into the kernel properly, or B) a driver for your filesystem didnt' get compiled into the kernel properly.  So, we need to fix your config file...  uhm, what you should do depends on a couple things.

1.) Is it working now?  Not sure what genkernel's going to come up with since I left out a step in my directions above (sorry about that, that's what the proc thing was yelling about) but its worth giving it a reboot and seeing if it starts up as it is.  If not,

2.) What kind of kernel are you compiling, 2.4 or 2.6?  Personally 2.6 I find 2.6 to be stable now and I use it for all my personal kernels, but we'll stick with whatever you have.  So, if it doesn't work I basically need to know what kind of kernel you're doing (i.e. when you were setting up gentoo what steps did you do for the kernel config part of the setup.

Worst comes to worst I figure we can just make sure we get you a clean kernel and get you all set.

----------

## Kellen

 *Eckzow wrote:*   

> OK, first step is don't panic.  Let's get your system back to useable first of all.  Got your LiveCD handy?  Good.  Throw that baby in there, and once you're booted up do this.  (/mnt/gentoo might already exist, by the way, I'm just having you make it here to be safe)
> 
> ```
> mkdir /mnt/gentoo
> 
> ...

  Sorry Edit was too late.... or I didn't catch it. LOL. 

Umm, didn't work, same on boot error with /hda/7... 

I've rebooted to the livecd...  awaiting instructions.  :Very Happy: 

Thanks.

----------

## Eckzow

OK, I'm going to assume we're going to be doing a 2.6 kernel since that's what gentoo-sources defaults to these days.  Let's do a bottom-up procedure and make sure you don't have to waste any more of your time compiling kernels...

Oh, I'm assuming you're just a plain old x86 machine.  If you're a different arch (x86_64 for instance) let me know, you'll have to change on of the lines of this process...

```
mount /dev/hda7 /mnt/gentoo

mount -t proc none /mnt/gentoo/proc

chroot /mnt/gentoo /bin/bash

env-update

source /etc/profile

rm -dvfr /usr/src/linux/.config*

rm -dvfr /etc/kernels/*

rm -dvfr /usr/share/genkernel/x86/kernel-config-2.6

zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6

genkernel --menuconfig all
```

At this point you will be in the menu configuration thing again.  Go through and find the ethernet over firewire thing and get rid of it again (probably just hitting 'N' with the stupid option highlighted)...  then exit and save.  It should do its thing.  Then reboot...  and pray!  =)

----------

## Kellen

yes, x86, and the genkernal  and kernel-2.6.11-gentoo-r3..

(not 64 ... yet! LOL)

will do your list, then report back. 

Thanks.

EDITED: 

Code:

mount /dev/hda7 /mnt/gentoo:

EXT2-fs warning (device hda7): ext2_fill_super: mounting ext3 filesystem as ext2

Is the only thing that was abnormal through-out the process.. Waiting for the compiling to be done, I'll restart after it's finished..

----------

## Kellen

Ummm.. on reboot... 

Still: 

>> Determining root device....

>> Block device /dev/hda7 is not a valid root device...

>> The root blockdevice is unspecified or not detected.

Please specify a device to boot, or "shell" for a shell boot () ::

----------

## Eckzow

Ok, uh...  I guess you're going to have to do a bit more kernel config then we usually throw newbies into right away...

The thing about linux is that unlike Windows, we don't have a massive repetoire of drivers that we keep handy all the time.  Well, the livecd does, but typically you compile a kernel that only includes support for the hardware that you need support for.  The problem that this creates is when you've got some funky piece of hardware that isn't supported by default that you have to make sure you add support for in your kernel.  So, what you should probably do is run "lspci" while booted from the livecd...  you're going to be looking for entries like

```
0000:00:0f.0 RAID bus controller: VIA Technologies, Inc. VIA VT6420 SATA RAID Controller (rev 80)

0000:00:0f.1 IDE interface: VIA Technologies, Inc. VT82C586A/B/VT82C686/A/B/VT823x/A/C PIPC Bus Master IDE (rev 06)
```

This tells me that I've got a VIA VT6420 SATA RAID controller, so I make sure that the VIA SATA driver is enabled when I build my kernel.

Then what you'll want to do is run through the kernel procedure that I gave you before.  Look for all the things that pertain to the hardware in your machine (and especially things that look like they'll control your hard drives) in device drivers and make sure all the options that look like they pertain to your machine are enabled.  If you don't know, its probably safest to just say yes or module...  you also can resort to the '?' key which will usually give you some extra info about each option.  When you're done making sure you have the device drivers for your hardware, I'd take a waltz through the other config options and make sure other stuff that looks important is enabled--there's stuff about filesystems that the kernel will support, make sure you have ext2/ext3 enabled, etc.

Finally, something which might have been my fault from the begninning is not using the --udev option when compiling the kernel.  I've been prolonging the life of devfs on my box so its my fault that I just flat out forgot that.  So when you're running genkernel run "genkernel --udev --menuconfig all" (bolded for emphasis, 'cause I put it so low down in the post here) -- you might also want to make sure your kernel and initrd lines are the same as at the end of the output of genkernel.

Once all your hardware is enabled (I would tend to think that it is already because of how we got your config from the livecd, I have a lurking feeling here your problems have been stemming from me not telling you to use --udev, but I'd check by hand anyway) save the config off and reboot again.  Sorry this is taking so many tries, and like I said I think its been all my fault, for which I'm eternally sorry...

----------

## Kellen

I just had a few choice words for ohh for about 5 miins... 

Ok.. first I started writing everything that lspci put out on paper.. 3/4 through it, I realized/remembered alt-F2... sweet I though, wished I thought of that first.... 

so, I didn't read your full post. I got to the part, follow the instructions above for genkernel... so, I started following

```
mount /dev/hda7 /mnt/gentoo

mount -t proc none /mnt/gentoo/proc

chroot /mnt/gentoo /bin/bash

env-update

source /etc/profile

rm -dvfr /usr/src/linux/.config*

rm -dvfr /etc/kernels/*

rm -dvfr /usr/share/genkernel/x86/kernel-config-2.6

zcat /proc/config.gz > /usr/share/genkernel/x86/kernel-config-2.6

genkernel --menuconfig all
```

Well, got into the kernel started going through it all.. then for some reason, started reading your post to verify I was doing everything right.. saw that I didn't put --udev as my fault that I didn't read all of your post.. So, I figured that I would just exit the genkernel without saving and all would be fine. I would just retype the genkernel line with --udev.. NOPE.. it started compiling.. So... I'm waiting for it to finish compiling.. 

I assume when it's done, I DO NOT need to reboot. I can just retype that above code with --udev and all will be fine? 

Oh hey, we all make mistakes (I do all the time! LOL), no problems here.. You're kind enough to help, so, no problems.

Sorry.

----------

## Eckzow

If you ctrl+c'd genkernel you should be fine rerunning it with --udev without having to reboot in between.  And even if you let it finish, you can still rerun genkernel without having to reboot.  No biggie.  Don't worry about starting from the beginning of it, just redoing the genkernel part is fine.

----------

## Kellen

Wow.. 

Just went through every option in genkernel and crossed referenced them to my lspci. a lot of options.. 

Well, it's compiling.. I'll edit back when done.   :Shocked: 

----------

## Kellen

HAHAHAHaAaaaa

rebooted! Well. Good News.. loaded! logged on.. pinged google!  :Very Happy: 

Minor problem. I think when I added ati radeon support (ati vid card) it messed my video up.. 

Everything is really small in the middle of my lcd and at the bottom of the lcd, a whole lot of coloured blocks with ascii characters.. I assume this is a minor fix? 

Thanks, LOL. Prayed to the beer gods and all went well soo far! LOL, LOL

----------

## Eckzow

Yay!  Uhm, what I'd do (I know you don't want to hear this after so many tries =P) is recompile the kernel again, removing anything related to the radeon.  You want to keep the generic VESA drivers/framebuffer stuff, but for the real good drivers for your video card you can eventually get around to emerging ati-drivers.

So basically this *is* and easy one.  Just become root if you aren't already and...

```
genkernel --udev --menuconfig all
```

That puts you in the by-now far too familiar menuconfig tool.  So you're probably looking at Device Drivers --> Graphics Support, enable VESA graphics support and turn off all the ATI Radeon stuff.  VESA, in case you're wondering, is like the ancient and generic kind of graphics card driver.  Like I said, there's special ati-drivers for your radeon, to set that stuff up later you can do a forums search for ati-drivers or radeon, or whatever.

Glad to hear it finally works (at least, mostly).

----------

## Kellen

Thanks for your help. 

I kind of like the small fonts.. I've messed with the screen by ls'ing a bunch of stuff and the coloured blocks disappeared.. 

I'm happy as it is, but at least I know, if it really bothers my eyes, I know how to change it!

Thanks for staying up and helping me through.. 

now, time to research how to use this gentoo package cd i burned.. LOL.. 

Thanks!

----------

