Post Reply 
 
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Starting undionly.efi or snponly.efi from the linux command
2018-10-16, 00:51
Post: #1
Starting undionly.efi or snponly.efi from the linux command
Is it possible to initiate a reboot to undionly.efi or snponly.efi, from the linux command line?

The system does not have on-board NICS that support pxe. This cannot be changed.
Using grub or syslinux would be acceptable.

Is it possible to use ipxe.lkrn with a custom embedded ipxe script that would chain load from disk to undionly.efi or snponly.efi?

Thanks in advance.
Find all posts by this user
Quote this message in a reply
2018-10-16, 07:13
Post: #2
RE: Starting undionly.efi or snponly.efi from the linux command
You can use ipxe.lkrn and start that from syslinux or grub in legacy mode yes.
Booting efi binaries from grub seems flaky,
you could put ipxe.efi on the efi partition and add a boot entry to it into the firmware, meaning that it can be selected before grub or any other bootloader.
(You have to remember that Legacy BIOS and EFI boots are different.)
You can not enter efi mode from legacy mode, and you can not enter legacy mode from efi userspace - don't mix this up!

undionly is only usable if there is an existing nic driver that can be used - which in most cases are in the NIC ROM
Same for snp devices.

Use GitHub Discussions
VRAM bin
Visit this user's website Find all posts by this user
Quote this message in a reply
2018-10-17, 18:13
Post: #3
RE: Starting undionly.efi or snponly.efi from the linux command
(2018-10-16 07:13)NiKiZe Wrote:  You can use ipxe.lkrn and start that from syslinux or grub in legacy mode yes.
Booting efi binaries from grub seems flaky,
you could put ipxe.efi on the efi partition and add a boot entry to it into the firmware, meaning that it can be selected before grub or any other bootloader.
(You have to remember that Legacy BIOS and EFI boots are different.)
You can not enter efi mode from legacy mode, and you can not enter legacy mode from efi userspace - don't mix this up!

undionly is only usable if there is an existing nic driver that can be used - which in most cases are in the NIC ROM
Same for snp devices.

I was able to build bin-x86_64-efi/ipxe.efi with a custom script and install it on the EFI partition. I made it the first boot option with the command:
sudo efibootmgr -c -w -I \\EFI\\ipxe\ipxe.efi -L "MyTest" -d /dev/sda

BootOrder: 0002,0000,0001
Boot0000* ubuntu
Boot0001* Syslinux
Boot0002* MyTest

The custom ipxe script is as follows:

#!ipxe
set user-class ipxetest
echo ipxe started with user-class ${user-class}
clear ip4
dhcp
echo Chaining to tftp://${next-server}/${filename}
sleep 15
chain tftp://${next-server}/${filename}


I see the echo message. So I know that my ipxe.efi is being invoked, The dhcp command does not see that link is up on net0, tries the other interfaces but is not able bring up the network. The message on the console is:
Waiting for link-up on net0 see http://ipxe.org/38086193
(same message for other interfaces).

Just for testing I added a retry loop on the dhcp 5 times with a 5 second delay.

Same problem from either warm start or a cold boot from a powered down state.

My end goal is to contact a web server on the local network that will generate the final chain command.
Find all posts by this user
Quote this message in a reply
2018-10-17, 19:47
Post: #4
RE: Starting undionly.efi or snponly.efi from the linux command
make sure you start an ipxe shell
run dhcp, let it fail.
then run ifstat and post its output.

also what is the pciid of your nic?

Use GitHub Discussions
VRAM bin
Visit this user's website Find all posts by this user
Quote this message in a reply
2018-10-17, 22:46
Post: #5
RE: Starting undionly.efi or snponly.efi from the linux command
shell results

dhcp
Waiting for link-up on net0 .................. Down (http://ipxe.org/38086193)
Waiting for link-up on net1 .................. Down (http://ipxe.org/38086193)
Configuring (net2 00:30:93:0c:22:06) .................. No configuration methods succeeded (http://ipxe.org/040ee186)
Waiting for link-up on net3 .................. Down (http://ipxe.org/38086193)
Waiting for link-up on net4 .................. Down (http://ipxe.org/38086193)
Could not open net5: Input/output error (http://ipxe.org/1d6a4695)

ifstat info.

net0: 00:3e:01:ca:0d:0a . using 14e4-1682 on 0000:0b:00.0 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193]

net1: 00:3e:01:ca:0d:09 . using 14e4-1682 on 0000:0c:00.0 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193]

net2: 00:30:93:0c:22:06 . using x540t on 000:19:00.0 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193]

net3: 00:30:93:0c:22:07 . using x540t on 0000:19:00.1 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193]

net4: a8:20:66:03:a2:fs . using 14e4-16b0 on 0000:aa:00 (closed)
[Link:down, TX:0 TXE:0 RX:0 RXE:0]
[Link status: Down (http://ipxe.org/38086193]

net5: 74:1b:b2:f2:44:2b . using NII on NII-0000:aa:00 (closed)
[Link:up, TX:0 TXE:0 RX:0 RXE:0]

from lspci on Ubuntu 18.04

0b:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57762 Gigabit Ethernet PCIe
0c:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57762 Gigabit Ethernet PCIe
aa:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57761 Gigabit Ethernet PCIe (rev 10)
19:00.0 Intel Ethernet controller Intel Corporation Ethernet Controller 10-Gigabit X540-ATZ (rev 01)
19:00.1 Intel Ethernet controller Intel Corporation Ethernet Controller 10-Gigabit X540-ATZ (rev 01)


Note: built with a checkout of ipxe on 16 Oct 2018.
Find all posts by this user
Quote this message in a reply
2018-10-17, 22:57
Post: #6
RE: Starting undionly.efi or snponly.efi from the linux command
to show pciid you should use lspci -nn

net0 is probably the same buggy behavior as seen in http://forum.ipxe.org/showthread.php?tid=8296 and there is also a few other mentions for 14e4-1682 if you search for it.
Do you have link on any of the other nics?
net2 seems to almost work but no dhcp reply was received. - if you expect it to work on this nic - have you made sure that STP is disabled, or at least put in fast mode (as described in the error url)

if your nics have working firmware support, then you could try snp.efi build instead.

Use GitHub Discussions
VRAM bin
Visit this user's website Find all posts by this user
Quote this message in a reply
2018-10-17, 23:16
Post: #7
RE: Starting undionly.efi or snponly.efi from the linux command
lspci -nn

0b:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57762 Gigabit Ethernet PCIe [14e4:1682]
0c:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57762 Gigabit Ethernet PCIe [14e4:1682]
aa:00.0 Ethernet controller Broadcom Limited NetXtreme BCM57761 Gigabit Ethernet PCIe [14e4:16b0]
(rev 10)

Is snp.efi bootable from disk like ipxe.efi?

Let look at the other articles and try snp.efi
Find all posts by this user
Quote this message in a reply
2018-10-18, 00:24 (This post was last modified: 2018-10-18 00:25 by ebruno.)
Post: #8
RE: Starting undionly.efi or snponly.efi from the linux command
using snp.efi the NIC's come online that have dhcp support.


I can see link on the ones that are connected but run with static ip's on operational mode (OS active)
so looks good.
Find all posts by this user
Quote this message in a reply
Post Reply 




User(s) browsing this thread: 1 Guest(s)