Package: lessdisks Version: using initrd-nfsroot-tools on hppa, mipsel, ia64, sparc Severity: wishlist Tags: patch
I've successfuly, though occasionally with difficulty, used initrd-nfsroot-tools on i386, alpha, hppa, mipsel, ia64, and sparc. Always just to set up a regular debian system as a nfs root system, not using the rest of lessdisks. I think it would be good if it was documented how to use those architectures and if the dependencies were set up for the additional arches beyond i386 and alpha. This patch attempts to do that; it depends on my other patch that makes kernel-image-netbootable an arch dependent package. One warning -- I've only set up each arch once, and it's been over the past couple of months, so some info may be missing steps for some like hppa. -- see shy jo
diff -ur --new-file old/lessdisks-0.5.3cvs.20040906/debian/changelog lessdisks-0.5.3cvs.20040906/debian/changelog --- old/lessdisks-0.5.3cvs.20040906/debian/changelog 2005-04-01 16:43:41.000000000 -1000 +++ lessdisks-0.5.3cvs.20040906/debian/changelog 2005-04-01 16:44:19.000000000 -1000 @@ -3,6 +3,9 @@ * Make kernel-image-netbootable arch all so it can have different deps per architectire. The deps for each architecture are listed in a new file, debian/depends.netbootable. + * Added depedencies to kernel-image-netbootable for hppa, mipsel, ia64, and + sparc. Added some docs on how to set up netbooting on those arches, as + well as on alpha. -- Joey Hess <[EMAIL PROTECTED]> Fri, 1 Apr 2005 16:01:10 -1000 diff -ur --new-file old/lessdisks-0.5.3cvs.20040906/debian/control lessdisks-0.5.3cvs.20040906/debian/control --- old/lessdisks-0.5.3cvs.20040906/debian/control 2005-04-01 16:43:41.000000000 -1000 +++ lessdisks-0.5.3cvs.20040906/debian/control 2005-04-01 16:38:13.000000000 -1000 @@ -152,7 +152,7 @@ Architecture: any Pre-Depends: initrd-netboot-tools Depends: ${Depends:netbootable} -Suggests: mknbi, aboot, mkvmlinuz +Suggests: mknbi, aboot, mkvmlinuz, palo, elilo, sparc-utils Description: net-bootable kernel for use with diskless systems This package attempts to ensure that the system is installable off of the network. diff -ur --new-file old/lessdisks-0.5.3cvs.20040906/debian/depends.netbootable lessdisks-0.5.3cvs.20040906/debian/depends.netbootable --- old/lessdisks-0.5.3cvs.20040906/debian/depends.netbootable 2005-04-01 16:43:41.000000000 -1000 +++ lessdisks-0.5.3cvs.20040906/debian/depends.netbootable 2005-04-01 16:43:20.000000000 -1000 @@ -1,2 +1,6 @@ i386: kernel-image-2.4-386 | kernel-image-2.6-386 | kernel-image-netboot alpha: kernel-image-2.4-generic | kernel-image-2.6-generic | kernel-image-netbootable +mipsel: genext2fs, kernel-image-2.4 | kernel-image-2.6 | kernel-image-netboot +hppa: kernel-image-2.6 | kernel-image-2.6smp | kernel-image | kernel-image-netboot +ia64: kernel-image-2.6 | kernel-image | kernel-image-netboot +sparc: kernel-image-2.6 | kernel-image | kernel-image-netboot diff -ur --new-file old/lessdisks-0.5.3cvs.20040906/doc/installation lessdisks-0.5.3cvs.20040906/doc/installation --- old/lessdisks-0.5.3cvs.20040906/doc/installation 2004-08-20 22:45:07.000000000 -1000 +++ lessdisks-0.5.3cvs.20040906/doc/installation 2005-04-01 16:42:57.000000000 -1000 @@ -152,13 +152,101 @@ /etc/init.d/dhcp restart -PXE Support +PXE Support (for i386 netbooting) lessdisks can work with pxe. it requires dhcp3-server and a tftp daemon. see pxe.txt from the lessdisks-doc package for more information. +netbooting an alpha + +To create a netbootable image, use netabootwrap to combine your kernel and +initrd, as follows: + +netabootwrap -k vmlinuz-2.4.27-2-generic -i initrd.img-2.4.27-2-generic \ + -a "root=/dev/nfs nfsroot=/srv/nfs/alpha ip=dhcp nfs_opts=rw,async,nolock" \ + -r boot.img + +Serve the boot.img via tftp. + + +netbooting an hppa + +The debian hppa kernel is actually built with nfs root support, so you may +not need to install initrd-netboot-tools, unless the driver for your network +card is not built into the kernel. + +To create a netbootable image, use palo to combine your kernel and +initrd, as follows: + +palo -f /dev/null -k vmlinux -b /usr/share/palo/iplboot \ + -c "0/linux root=/dev/nfs nfsroot=/srv/nfs/hppa ip=dhcp nfs_opts=rw,async,nolock" \ + -s boot.img + +Serve the boot.img via tftp. + + +netbooting an ia64 + +Copy /usr/lib/elilo/elilo.efi from the ia64's chroot into your tftp boot +directory and configure your dhcp server to use it as the filename for the ia64 +machine(s). In the same directory as the elilo.efi in your tftp server, copy in +a vmlimuz and initrd.gz from the ia64 and create an elilo.conf as follows: + +default=Linux + +image=vmlinuz + label=Linux + root=/dev/nfs + initrd=initrd.img + append="console=tty0 console=ttyS0,9600 root=/dev/nfs nfsroot=/srv/nfs/ia64 ip=dhcp" + + +netbooting a cobalt raq (mipsel) + +To netboot a coalt raq, you will need to set up an /nfsroot directory +on your nfs server that holds the chroot. The raq firmware has this +directory hardcoded into it, and uses nfs to retreive the colo boot loader. +Create a /nfsroot/default.colo file like this: + +#:CoLo:# +-serial on +nfs {dhcp-next-server} {dhcp-root-path} boot/vmlinux boot/initrd.gz +execute rd_start=0x{initrd-start} rd_size=0x{initrd-size} console=ttyS0,{console-speed} net:bootp root=/dev/nfs nfsroot=/nfsroot ip=dhcp nfs_opts=rw,async,nolock + +Make sure that colo is installed in the chroot. Debian's mipsel kernels +do not support nfs root on their own, so you must use initrd-netboot-tools. +The mipsel kernels also do not support the cramfs filesystem that mkinitrd +uses by default. This setting in mkinitrd.conf will make it create an ext2 +initrd instead: + +MKIMAGE='genext2fs -b 7192 -d %s %s' + +The maxiumum initrd size is 8 mb currently. If your initrd comes out larger +see the tips file. You will also need to set do_initrd = ys in +kernel-img.conf since mipsel does not use an initrd by default. + + +netbooting a sparc + +You will probably need to edit initrd-netboot.conf to add the appropriate +kernel module for your sun's network card. For example: + +nic_modules="sunhme" + +Use eltoaout and piggyback64 from the sparc-utils package to generate a boot +image, as follows: + +gzip -cd vmlinuz-2.4.27-2-sparc64 > boot.img.tmp +elftoaout -o boot.img boot.img.tmp +piggyback64 boot.img System.map-2.4.27-2-sparc64 initrd.img-2.4.27-2-sparc64 + +(Use piggyback on 32 bit sparcs.) + +Serve the boot.img via tftp. + + More Defaults look in /usr/share/doc/lessdisks/examples for example files for /etc/dhcpd.conf diff -ur --new-file old/lessdisks-0.5.3cvs.20040906/doc/tips lessdisks-0.5.3cvs.20040906/doc/tips --- old/lessdisks-0.5.3cvs.20040906/doc/tips 2004-07-19 13:13:43.000000000 -1000 +++ lessdisks-0.5.3cvs.20040906/doc/tips 2005-04-01 16:09:15.000000000 -1000 @@ -19,6 +19,10 @@ be sure to only remove ones you know you don't need, though! +you can also try changing MODULES=all to MODULES=dep in +/etc/mkinitrd/mkinitd.conf, this will remove all the disk drivers from the +initrd. + and then: lessdisks-chroot dpkg-reconfigure kernel-image-X.X.X-XXX
signature.asc
Description: Digital signature