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

Attachment: signature.asc
Description: Digital signature

Reply via email to