netbooting imac, docs not ok..
Netboot configs
Hi all,
I recently began playing with some iMacs/eMacs I have here,
and thought I should do some usefull stuff, so I decided to run
the debian netboot install. I must say I think I'm making it it
harder than it is. ;-)
Now I had two problems first of all I the instructions for woody
(and the new ones as well) gave lots of hints on how to succeed,
but it didn't seem to work very well on my iMac and eMacs, they
never downloaded things from the tftp by themselvs. I'm talking
about this section in the manual:
http://d-i.alioth.debian.org/manual/en.powerpc/ch04s05.html
Soo I did an woody install from harddrive on an iMac to make
a custom netboot server this way.
imac4:/boot# apt-get install dhcp3-server tftpd
/etc/dhcp3/dhcpd.conf:
<pre>
subnet 192.168.0.0 netmask 255.255.255.0 {
range 192.168.0.15 192.168.0.30;
}
group {
option routers 192.168.0.115;
#important the router should exist on the net,
#imacs will ARP for it.
server-name "imac4";
next-server 192.168.0.115; #TFTP server
filename "/boot/yaboot";
option vendor-class-identifier "AAPLBSDPC"; #important
host emac {
hardware ethernet 00:0A:DE:AD:FE:E7;
filename "/boot/yaboot";
fixed-address 192.168.0.12; # Client address
option vendor-encapsulated-options 01:01:02:08:04:01:00:00:01:82:
04: # length
69:6d:61:63:34 # hostname (not really important this could just be used as "keeping apple happy values"
}
}
</pre>
#/boot/yaboot.conf:
<pre>
# yaboot will download this file via tftp, and then linux.bin and initrd.gz
init-message="Welcome this should load stuff from ethernet"
timeout=1
image=enet:0,linux.bin
label=linux
initrd=enet:0,initrd.gz
initrd-size=8192
</pre>
I added this in, and don't enable bootps that will make the iMacs confused about who they should talk to.
/etc/services:
#:BOOT: Tftp service is provided primarily for booting. Most sites
# run this only on machines acting as "boot servers."
tftp dgram udp wait nobody /usr/sbin/tcpd /usr/sbin/in.tftpd /boot
#bootps dgram udp wait root /usr/sbin/bootpd bootpd -d4 -i -t 120
in /boot
yaboot
yaboot.conf
linux.bin
initrd.gz
Make sure to start/restart the servers, and check /var/log/syslog for errors.
imac4:/boot# /etc/init.d/dhcp3-server restart
imac4:/boot# /etc/init.d/inetd restart
Now all was in place to make the iMacs netboot. I only had to
reboot the iMacs and then pressing down "n" on the keyboard,
this brought up an blinking blue globe, lo and behold the iMac
was running Linux before I could recite Hamlets monolog. That's
how I got it netbooting, but running the install seems harder. I
was booting them with a small woody kernel and a custom made
[1]initrd containg the nic module "8390.o", and that worked
flawlessly.
But then I downloaded the netinstall for sarge from: ftp://ftp.du.se/debian/dists/testing/main/installer-powerpc/current/images/powerpc/netboot
Something went wrong here, I managed to get yaboot loaded as usual,
but when the kernel was being transfered it just hanged. I tried
3 times and it always hanged at the same packet. That's when I sat
down to write this mail about how I got netbooting working, and
failed to transfer the kernel sarge uses for netinstall.
[1] Easy just do
gzip -d initrd.gz
mount -oloop initrd /mnt/
cp /lib/modules/2.4.18-newpmac/kernel/drivers/net/8390.o /lib/modules/net/
umount /mnt
gzip -9 initrd
And you have your module.
Thanks to http://nic.phys.ethz.ch/readme/90 for apples magic numbers.
Reply to: