[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: