I am looking for a way to clone a stack of laptops who do not have an ethernet-port.
I have a Clonezilla-server up and running, where i can clone to other laptops over TFTP or HTTP.
iPXE.org claims to have a wireless solution to go over HTTP. To Date i have not found a way to make this work. If i go the iPXE (wired) to HTTP route i get no problems.
Anyone has alot of experience with iPXE wireless?
To start i dont think iPXE has support for the wireless drivers in the laptops i am trying this on, but i could find no information over this on ipxe.org.
P.S. i know i probably have left alot of info out of the question that will prove necessary in the future, but i have no idea how to start this question any more decent, so forgive me for that. I will try to update the question as frequent as i can.
Since none replied i thought i share the solution i found with you guys. This is a snippit from a decent guide i found on coreboot.org
Building Identify your wireless network card:
# lspci 03:06.0 Network controller: Atheros Communications Inc. AR922X Wireless Network Adapter (rev 01)Identify its PCI IDs:
# lspci -s 03:06.0 -nnn 03:06.0 Network controller [0280]: Atheros Communications Inc. AR922X Wireless Network Adapter [168c:0029] (rev 01)Get iPXE:
git clone git://git.ipxe.org/ipxe.git cd ipxe/src/Copy the following into config/local/general.h:
#undef PXE_STACK /* PXE stack in iPXE - you want this! */#undef PXE_MENU /* PXE menu booting */#undef DOWNLOAD_PROTO_TFTP /* Trivial File Transfer Protocol */#undef SANBOOT_PROTO_ISCSI /* iSCSI protocol */#undef SANBOOT_PROTO_AOE /* AoE protocol */#undef SANBOOT_PROTO_IB_SRP /* Infiniband SCSI RDMA protocol */#undef SANBOOT_PROTO_FCP /* Fibre Channel protocol */#undef CRYPTO_80211_WEP /* WEP encryption (deprecated and insecure!) */#undef CRYPTO_80211_WPA /* WPA Personal, authenticating with passphrase */#undef CRYPTO_80211_WPA2 /* Add support for stronger WPA cryptography */#undef IMAGE_NBI /* NBI image support */#undef IMAGE_ELF /* ELF image support */#undef IMAGE_MULTIBOOT /* MultiBoot image support */#undef IMAGE_PXE /* PXE image support */#define IMAGE_SCRIPT /* iPXE script image support */#define IMAGE_BZIMAGE /* Linux bzImage image support */#undef IMAGE_COMBOOT /* SYSLINUX COMBOOT image support */#undef IMAGE_EFI /* EFI image support */#undef IMAGE_SDI /* SDI image support */#undef NVO_CMD /* Non-volatile option storage commands */#undef FCMGMT_CMD /* Fibre Channel management commands */#undef ROUTE_CMD /* Routing table management commands */#define IMAGE_CMD /* Image management commands */#undef SANBOOT_CMD /* SAN boot commands */#undef MENU_CMD /* Menu commands */#undef LOGIN_CMD /* Login command */#undef SYNC_CMD /* Sync command */#undef NSLOOKUP_CMD /* DNS resolving command */#undef TIME_CMD /* Time commands */#undef DIGEST_CMD /* Image crypto digest commands */#undef LOTEST_CMD /* Loopback testing commands */#undef VLAN_CMD /* VLAN commands */#undef PXE_CMD /* PXE commands */#undef REBOOT_CMD /* Reboot command */#undef IMAGE_TRUST_CMD /* Image trust management commands */Copy the following in the shell.ipxe file:
#!ipxe shellshell.ipxe is an ipxe script that ipxe will run when starting, here it will instruct ipxe to drop directly to a shell. The syntax is documented on ipxe website.
Use the previously gathered PCI ID to include only the ath9k driver:
make clean; make -j3 bin/168c0029.rom EMBED=./shell.ipxeGo into your coreboot directory:
cd ../../coreboot/Add the iPXE option rom:
./build/cbfstool ./build/coreboot.rom print ./build/cbfstool ./build/coreboot.rom add -f ../ipxe/src/bin/168c0029.rom -n pci168c,0029.rom -t raw ./build/cbfstool ./build/coreboot.rom printBooting
boot on ipxe, it will give you a shell: iPXE> You will then need to type some commands to make it boot over the WiFi from the Internet.
Identify your ESSID:
iwlistSet the ESSID:
configGet an IP address:
dhcpTest the official demo (requires a PS/2 keyboard)
chain http://boot.ipxe.org/demo/boot.php