View previous topic :: View next topic |
Author |
Message |
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Sun Apr 01, 2018 9:09 pm Post subject: |
|
|
Tony0945,
Quote: | You should have a file like this:
Code:
/lib64/modules/4.4.75-gentoo/kernel/drivers/net/ethernet/intel/e1000e/e1000e.ko
Except the 4.4.75-gentoo will be different as that is the kernel name from "uname -r".
If I have my shell script correct, try
Code:
ls -l /lib/modules/`uname -r`/kernel/drivers/net/ethernet/*
Those are backticks not apostrophes. |
There is no e1000e in "lib64" or "lib". There is only Code: | i40 igb igbvf ixgb ixgbe ixgbevf |
|
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Sun Apr 01, 2018 9:13 pm Post subject: |
|
|
I am wondering if I try a newer kernel that it will have the e1000e module that I need in it?
This is strange, because I have other distros installed and it is only gentoo that can not load the Ethernet driver. |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
Posted: Sun Apr 01, 2018 9:28 pm Post subject: |
|
|
e1000e driver has been in kernel for ages. You are doing something wrong. Maybe not mounting /boot before installing a new kernel. Maybe not installing modules. It is hard to tell, too much controversial and confusing information. _________________ My Gentoo installation notes.
Please learn how to denote units correctly! |
|
Back to top |
|
|
John R. Graham Administrator
Joined: 08 Mar 2005 Posts: 10589 Location: Somewhere over Atlanta, Georgia
|
Posted: Mon Apr 02, 2018 12:17 am Post subject: |
|
|
Tefrem34 wrote: | There is no e1000e in "lib64" or "lib". There is only Code: | i40 igb igbvf ixgb ixgbe ixgbevf |
| Try Code: | mount /boot
genkernel --install kernel | and then report what's in /lib*/modules/*.
- John _________________ I can confirm that I have received between 0 and 499 National Security Letters.
Last edited by John R. Graham on Mon Apr 02, 2018 12:26 am; edited 1 time in total |
|
Back to top |
|
|
Hu Moderator
Joined: 06 Mar 2007 Posts: 21631
|
Posted: Mon Apr 02, 2018 12:18 am Post subject: |
|
|
At the risk of causing more confusion:
There are several stages to getting a working network. You need the appropriate driver to be compiled and available, you need it to load (happens automatically for =y, happens in response to module loading for =m), you need it to recognize the card, and you need the card to be configured.
If the driver is built in, it should initialize at boot and bind to the network card. If bound, ifconfig -a should show it. lspci -k should show that the driver is in use. ifconfig without arguments will not show the device if it has not been configured. When troubleshooting early problems like this, you need to be careful to use -a (or better, don't use ifconfig at all; use ip link (from sys-apps/iproute2) instead). We haven't even begun discussing whether your device has been configured. We're still focused on getting the driver to initialize and bind the device.
You said you hand-copied the output out. Don't do that. It makes mistakes more likely and it's more trouble for you. It will only become a bigger burden as we move to commands that produce more output. Instead, save the output to a file, then transport that file via sneakernet to a working system or, if your only working system is the LiveCD, reboot into the LiveCD, cat the file from the chroot, and post it that way.
At this point, I think the best option would be:- On the installed system, run lspci -k ; ifconfig -a and redirect the output to a file.
- On the installed system, run zcat /proc/config.gz and redirect the output to a file (separate from the file above).
- On the installed system, run find "/lib/modules/$(uname -r)/kernel/drivers/" -name \*.ko -ls and redirect the output to a file.
- Reboot to the LiveCD. Install app-text/wgetpaste (if not already installed).
- Pastebin the files from steps 1-3 and give us the link.
|
|
Back to top |
|
|
Tony0945 Watchman
Joined: 25 Jul 2006 Posts: 5127 Location: Illinois, USA
|
Posted: Mon Apr 02, 2018 1:01 am Post subject: |
|
|
Tefrem34 wrote: | Tony0945,
Quote: | If that is literally true, you need to change it from =y to =m, otherwise there will be no module |
If it is built in, shouldn't it just work then? |
You would think so, but my experience is that video and ethernet need to be modules.
modprobe won't show anything if it's not built as a module with "=m"
Tefrem34 wrote: |
krinn,
Quote: | if it works, then we will more need rc-update output |
Do you mean? Code: | rc-update add eno1 default |
|
If you run rc-update by itself, it will show you what will run at what runlevel. Example: Code: | ~ # rc-update
acpid | default
alsasound | default
anacron | default
apache2 | default
atd | default
binfmt | boot
bootmisc | boot
consolefont | boot
cupsd | default
devfs | sysinit
dmesg | sysinit
dnsmasq | default
fsck | boot
| Complete output is here: https://paste.pound-python.org/show/DKH2FPoK1DyTMcXbZyCt/
I'm pretty sure that's what krinn means. |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 4:08 am Post subject: |
|
|
Hu,
I booted into my gentoo installation and these are the outputs:
http://bpaste.net/show/fe5e59f40311
http://bpaste.net/show/c50f1544b9b4
Code: | zcat /proc/config.gz |
http://bpaste.net/show/6d8fb59e9708
Code: | find "/lib/modules/$(uname -r)/kernel/drivers/" -name \*.ko -ls |
Code: | find: ‘/lib/modules/4.13.0-37-generic/kernel/drivers/’: No such file or directory |
Now I am going to try "genkernel --install kernel" from the chroot first, and then will try the livecd if that doesn't work. |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 5:22 am Post subject: |
|
|
I ran "genkernel --install kernel" then Code: | ls /lib/modules/4.9.76-gentoo-r1/kernel/drivers/net/ethernet/intel/ | and am still missing the e1000/e1000e modules Code: | i40e igb igbvf ixgb ixgbe ixgbevf |
Was I supposed to run something else after "genkernel --install kernel"? |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 6:02 am Post subject: |
|
|
[/code]Alright, this looks promising.
I upgraded my genkernel to 3.5.2.5 and ran (chrooted) "genkernel --menuconfig all" in my dir.
Then ran: Code: | find /lib/modules/4.9.76-gentoo-r1/ -type f -iname '*.o' -or -iname '*.ko' | less | http://bpaste.net/show/b4e87dbeb109 and I am seeing the e1000e module in the list now.
I am going to reboot into my gentoo installation and see if it worked. |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 7:09 am Post subject: |
|
|
So, sadly it did not work.
However, I did notice that the modprobe error points to "/lib/modules/4/14/12-2", but the modules are listed in "/lib*/modules/4.9.76-gentoo-r1/...". Should it be this way? |
|
Back to top |
|
|
grumblebear Apprentice
Joined: 26 Feb 2008 Posts: 202
|
Posted: Mon Apr 02, 2018 8:45 am Post subject: |
|
|
It seems, before solving your network problem, you should learn, how to configure and use your bootloader. The kernel you are booting will only use the modules that were specifically compiled for that kernel. That means, the output of 'uname -r' is the directory in /lib/modules where the kernel will look for its modules. |
|
Back to top |
|
|
NeddySeagoon Administrator
Joined: 05 Jul 2003 Posts: 54237 Location: 56N 3W
|
Posted: Mon Apr 02, 2018 9:25 am Post subject: |
|
|
Tefrem34,
It appears you are building one kernel and running another.
Boot your gentoo
Mount /boot
Run Code: | eselect kernel list
eselect kernel sex X |
where X in the number of the newest kernel.
This chooses the kernel you will build.
will build that kernel and provided you did the , install it into boot for the bootloader to find.
That should get you a kernel with e1000e support.
Use the command Code: | genkernel --menuconfig all | if you want to check.
Trust but verify :)
That's the first step to generate your kernel.
The next step is to get the boot loader to actually load it.
Follow the steps in the [https://wiki.gentoo.org/wiki/Handbook:AMD64/Installation/Bootloader]Gentoo Handbook[/url] for your use case.
The last step is to reboot and read the boot loader menu.
Choose the option that is the same kernel version as the one you just built.
That may not be the default.
Until shows e1000e against your network card, nothing else matters. _________________ Regards,
NeddySeagoon
Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail. |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 8:03 pm Post subject: |
|
|
NeddySeagoon,
Quote: | It appears you are building one kernel and running another | Quote: | The last step is to reboot and read the boot loader menu.
Choose the option that is the same kernel version as the one you just built.
That may not be the default. |
I am glad you pointed this out. I was booting into the default option. As soon as I used the kernel version I was building "4.9.76-gentoo-r1" there was no error message after boot.
However, when I ran Code: | eselect kernel list | there is only one option. So why am I getting two different version? |
|
Back to top |
|
|
Jaglover Watchman
Joined: 29 May 2005 Posts: 8291 Location: Saint Amant, Acadiana
|
|
Back to top |
|
|
krinn Watchman
Joined: 02 May 2003 Posts: 7470
|
Posted: Mon Apr 02, 2018 11:16 pm Post subject: |
|
|
[quote="Tefrem34"] Quote: | It appears you are building one kernel and running another | Quote: | The last step is to reboot and read the boot loader menu.
So why am I getting two different version? |
Because he didn't say "two different version", but "two different kernels", which might be the exact same kernel and version, but build differently.
I think what you did was:
build a kernel with module e1000e (#1)
build a kernel without module e1000e (#2)
When you have done #1, you forget to make modules_install, and the e1000e was never install, but when we ask you to look at its running config (the zgrep E1000 /proc/config.gz) it do show e1000e is built as module.
Now if your kernel #2 is setup with e1000e build-in or none, or you didn't built it, doing make modules_install is doing nothing to get e1000e back.
That's for me the logical step you did to get there, but i must say, it's quiet blurry, because your thread is a mess without name |
|
Back to top |
|
|
Tefrem34 Guru
Joined: 14 Sep 2014 Posts: 400 Location: USA, California
|
Posted: Mon Apr 02, 2018 11:24 pm Post subject: |
|
|
I want to thank all of you for helping me getting this all sorted, I really appreciate it! |
|
Back to top |
|
|
|