Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
sanboot:debian_and_ubuntu [2007/08/24 17:06] bengen Mention /etc/fstab and /boot/grub/menu.lst |
sanboot:debian_and_ubuntu [2007/12/12 06:11] bengen typo |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Debian or Ubuntu ====== | ||
- | |||
- | ===== Preparing an existing installation for AoE ===== | ||
- | |||
- | You can either work witha an installation on | ||
- | - a physical disk on a client machine or | ||
- | - a loopback-mounted disk image running as a ''chroot(8)'' environment | ||
- | |||
- | Install the ''aoetools'' package and a kernel image that includes the | ||
- | ''aoe'' driver, i.e. one of the ''linux-image-2.6.18-*'' drivers | ||
- | that ship with Debian 4.0. | ||
- | |||
- | FIXME test this with Ubuntu. | ||
- | |||
- | Create two scripts as shown below | ||
- | * ''/etc/initramfs-tools/hooks/aoetools'' will copy the ''aoe'' kernel module and ''/sbin/aoe-discover'' to the initial ramdisk. | ||
- | * ''/etc/initramfs-tools/scripts/local-top/aoetools'' is copied to the ram disk and run at boot-time, just before the root filesystem is mounted. If the root device string looks like an AoE target, it brings up all recognized Ethernet interfaces and activates the AoE driver. | ||
- | |||
- | After you have made sure that ''/etc/initramfs-tools/initramfs.conf'' | ||
- | contains the line | ||
- | BUSYBOX=y | ||
- | you can update the initial ramdisk: | ||
- | # update-initramfs -u -k all | ||
- | |||
- | Update your ''/etc/fstab'' (or create a new one) as shown in the | ||
- | example below | ||
- | <code> | ||
- | # file system mount point type options dump pass | ||
- | /dev/etherd/e0.0p1 / ext3 defaults 0 1 | ||
- | |||
- | /dev/etherd/e0.0p1 none swap sw 0 0 | ||
- | proc /proc proc defaults 0 0 | ||
- | </code> | ||
- | |||
- | Update ''/boot/grub/menu.lst'' (or create a new one) so that the right | ||
- | root device is passed to the kernel (for example ''root=/dev/etherd/e0.0p1'') | ||
- | |||
- | If the modifications were applied to a physical disk on the client | ||
- | machine, you can now [[sanboot:transfer|transfer the contents of your | ||
- | physical disk to the SAN target]]. | ||
- | |||
- | If the image you wish to export to client systems was modified directly,, | ||
- | you can now [[sanboot:aoe|make the contents of that image available | ||
- | via AoE]]. | ||
- | |||
- | ==== Hints ==== | ||
- | * If the system hangs before the root device has been mounted, passing ''break=mount'' on the command line will spawn a shell before `scripts/local-top/aoetools' is run. This should allow for further debugging. | ||
- | |||
- | ==== Configuration files ==== | ||
- | === /etc/initramfs-tools/hooks/aoetools === | ||
- | <code bash> | ||
- | #!/bin/sh | ||
- | |||
- | set -e | ||
- | |||
- | PREREQ="" | ||
- | |||
- | prereqs() | ||
- | { | ||
- | echo "$PREREQ" | ||
- | } | ||
- | |||
- | case $1 in | ||
- | prereqs) | ||
- | prereqs | ||
- | exit 0 | ||
- | ;; | ||
- | esac | ||
- | |||
- | . /usr/share/initramfs-tools/hook-functions | ||
- | |||
- | [ -x /sbin/aoe-discover ] && copy_exec /sbin/aoe-discover /sbin | ||
- | manual_add_modules aoe | ||
- | </code> | ||
- | |||
- | ==== /etc/initramfs-tools/scripts/local-top/aoetools ==== | ||
- | <code bash> | ||
- | #!/bin/sh | ||
- | |||
- | set -e | ||
- | |||
- | PREREQ="" | ||
- | |||
- | prereqs() | ||
- | { | ||
- | echo "$PREREQ" | ||
- | } | ||
- | |||
- | case $1 in | ||
- | prereqs) | ||
- | prereqs | ||
- | exit 0 | ||
- | ;; | ||
- | esac | ||
- | |||
- | case $ROOT in | ||
- | /dev/etherd/e*) | ||
- | INTERFACES=`awk -F: '/eth[0-9]*:/ { print $1 }' < /proc/net/dev` | ||
- | for i in $INTERFACES; do | ||
- | echo Bringing up interface $i for AoE | ||
- | ifconfig $i up | ||
- | done | ||
- | sleep 5 | ||
- | modprobe aoe | ||
- | aoe-discover | ||
- | ;; | ||
- | esac | ||
- | </code> | ||
- | |||
- | ===== Preparing an existing installation for iSCSI ===== | ||
- | TBD | ||