Hi,
Currently I have a working pxe environment where I can boot Debian 9.5.0 with iPXE. Now I'm experimenting booting without a NIC using a Pi Zero W as cdc_ether device. The kernel and initramfs loads and starts booting but it can't find the cdc_ether device. I tried create a new initramfs within the Live CD adding usbnet and cdc_ether to /etc/modules and running /usr/sbin/update-initramfs.orig.initramfs-tools -u but it is not working. How can I add usbnet and cdc_ether to initramfs? Should I do anything else to make cdc_ether work at boot time?
Scheduled Maintenance: We are aware of an issue with Google, AOL, and Yahoo services as email providers which are blocking new registrations. We are trying to fix the issue and we have several internal and external support tickets in process to resolve the issue. Please see: viewtopic.php?t=158230
Live CD netboot cdc_ether not loaded
-
- Posts: 7
- Joined: 2018-07-15 11:56
Re: Live CD netboot cdc_ether not loaded
Finally I did it… So the steps:
Boot a live cd and connect the usb ethernet device (in my case a Pi0 in gadget mode).
Get all modules with lsmod and copy them to /etc/update-initramfs/modules (not to the /etc/modules, this was the part I always did wrong) (you need only the first column of lsmod output!!)
After that you just have to /usr/sbin/update-initramfs.orig.initramfs-tools -u and you will get the new initramfs
Tips for beginners like me:
I don't know bash, I usually use PowerShell for scripting so here is a script to get the first column of lsmod:
Put the output of lsmod to 1.txt (on live debian as root: lsmod > 1.txt) copy the file to somewhere and cd there with PowerShell
$a = get-content .\1.txt | % {$_.Split(' ')[0]}
Set-Content 2.txt $a
Copy the content of 2.txt to /etc/update-initramfs/modules as stated above.
If you copied 1.txt to windows and 2.txt back to linux then you may have a lot of empty line. Before copying 2.txt back open it in notepad++ and convert it to UNIX encoding (in the statusbar).
If someone make this in bash, pls post here
Boot a live cd and connect the usb ethernet device (in my case a Pi0 in gadget mode).
Get all modules with lsmod and copy them to /etc/update-initramfs/modules (not to the /etc/modules, this was the part I always did wrong) (you need only the first column of lsmod output!!)
After that you just have to /usr/sbin/update-initramfs.orig.initramfs-tools -u and you will get the new initramfs
Tips for beginners like me:
I don't know bash, I usually use PowerShell for scripting so here is a script to get the first column of lsmod:
Put the output of lsmod to 1.txt (on live debian as root: lsmod > 1.txt) copy the file to somewhere and cd there with PowerShell
$a = get-content .\1.txt | % {$_.Split(' ')[0]}
Set-Content 2.txt $a
Copy the content of 2.txt to /etc/update-initramfs/modules as stated above.
If you copied 1.txt to windows and 2.txt back to linux then you may have a lot of empty line. Before copying 2.txt back open it in notepad++ and convert it to UNIX encoding (in the statusbar).
If someone make this in bash, pls post here