Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
debian_aoe_migrate [2007/08/24 14:57] bengen point out choice of real disk or chrooted image |
debian_aoe_migrate [2007/09/30 09:02] (current) bengen |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| - | ====== Migrating Debian GNU/Linux 4.0 (etch) or later to an AoE target ====== | + | This page has been moved to [[sanboot:debian_and_ubuntu]] |
| - | You can either work witha an installation | + | |
| - | - that is running off 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/etch. | + | |
| - | + | ||
| - | 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 | + | |
| - | + | ||
| - | FIXME Create/update ''/etc/fstab'' | + | |
| - | + | ||
| - | FIXME Create/update ''/boot/grub/menu.lst'' | + | |
| - | + | ||
| - | If the modifications were applied to a physical disk on the client | + | |
| - | machine, you can now [[santransfer|transfer]] the contents of your | + | |
| - | physical disk to the SAN target. | + | |
| - | + | ||
| - | If the image you wish to export to client systems was modified directly,, | + | |
| - | just make the contents of that image [[sanexport|available]]. | + | |
| - | + | ||
| - | ==== 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> | + | |