From 4c5c3d25fd44e615ef978f5490d5ecd0f01ba42a Mon Sep 17 00:00:00 2001 From: Peter Palfrader Date: Wed, 25 Aug 2010 16:28:05 +0200 Subject: [PATCH] Move install-kvm to squeeze, overseas known as Fight against Grub --- input/howto/install-kvm.creole | 81 ++++++++++++---------------------- 1 file changed, 27 insertions(+), 54 deletions(-) diff --git a/input/howto/install-kvm.creole b/input/howto/install-kvm.creole index d97343d..5c32e5a 100644 --- a/input/howto/install-kvm.creole +++ b/input/howto/install-kvm.creole @@ -38,7 +38,7 @@ setup_env() { fs=ext3 fi && dev_swap="/dev/mapper/$vg-$guest--swap" && - echo -n "Use a /boot filesystem? [Y/n] " && + echo -n "Use a /boot filesystem (strongly recommended)? [Y/n] " && read use_boot && echo "Swap device will be $dev_swap" && echo "fs is $fs" @@ -78,7 +78,7 @@ trivial. lvcreate -L 4g -n "$guest"-swap /dev/"$vg" && : && if [ "$use_boot" != "n" ] ; then - ( echo ',,L,*' | sfdisk "$dev_boot" ) && + ( echo ',,L,*' | sfdisk -D "$dev_boot" ) && kpartx -v -a "$dev_boot" && mkfs."$fs" "$dev_boot"1 fi && @@ -93,7 +93,7 @@ trivial. fi && cd "$target" && - debootstrap --variant=minbase --keyring=/usr/share/keyrings/debian-archive-keyring.gpg lenny . "$mirror" + debootstrap --variant=minbase --keyring=/usr/share/keyrings/debian-archive-keyring.gpg squeeze . "$mirror" }}} And finalize the setup: @@ -122,48 +122,34 @@ EOF echo "Apt::Install-Recommends 0;" > etc/apt/apt.conf.d/local-recommends && chroot . apt-get install net-tools iproute ifupdown dialog vim netbase xfsprogs && cp -av $dev_root dev/ && - if [ "$use_boot" != "n" ] ; then - DEBIAN_FRONTEND=noninteractive chroot . apt-get install grub && - cp -av $dev_boot $dev_boot""1 dev/ && - echo "(hd0) /dev/`basename $dev_boot`" > boot/grub/device.map && - if [ -e usr/lib/grub/x86_64-pc ] ; then cp -av usr/lib/grub/x86_64-pc boot/grub ; - else cp -av usr/lib/grub/i386-pc boot/grub ; fi && - grub << EOF && -device (hd0) $dev_boot -root (hd0,0) -setup (hd0) -quit -EOF - # install a kernel image - cat > etc/kernel-img.conf << EOF && -do_symlinks = yes -link_in_boot = yes -do_initrd = yes -EOF - chroot . apt-get install linux-image-2.6-amd64 && - cat >> etc/kernel-img.conf << EOF -postinst_hook = /usr/sbin/update-grub -postrm_hook = /usr/sbin/update-grub -EOF - rm -v dev/"`basename $dev_boot`" dev/"`basename $dev_boot`1" boot/grub/device.map && - else - cat > etc/kernel-img.conf << EOF && + DEBIAN_FRONTEND=noninteractive chroot . apt-get install grub2 && + cat > etc/kernel-img.conf << EOF && do_symlinks = no do_initrd = yes EOF - chroot . apt-get install linux-image-2.6-amd64 && - cat >> etc/kernel-img.conf << EOF + # install a kernel image + chroot . apt-get install linux-image-2.6-amd64 && + cat >> etc/kernel-img.conf << EOF && postinst_hook = update-grub postrm_hook = update-grub EOF - DEBIAN_FRONTEND=noninteractive chroot . apt-get install grub2 && + if [ "$use_boot" != "n" ] ; then + cp -av $dev_boot $dev_boot""1 dev/ && + chroot . grub-install --modules=part_msdos /dev/`basename $dev_boot` && + sed -i -e 's/^#GRUB_TERMINAL=console/GRUB_TERMINAL=console/' etc/default/grub && + echo "(hd0) /dev/`basename $dev_boot`" > boot/grub/device.map && + chroot . update-grub && + sed -i -e "s#dev/`basename $dev_boot`1#dev/hda1#g" boot/grub/grub.cfg && + rm -v dev/"`basename $dev_boot`" dev/"`basename $dev_boot`1" + else + echo && echo && echo && echo "Hardly tested, expect this to fail." && echo && echo && echo && echo "(hd0) /dev/`basename $dev_root`" > boot/grub/device.map && chroot . grub-install /dev/"`basename $dev_root`" && sed -i -e 's/^#GRUB_TERMINAL=console/GRUB_TERMINAL=console/' etc/default/grub && - chroot . update-grub && - sed -i -e "s#dev/`basename $dev_root`#dev/vda#g" boot/grub/grub.cfg - rm -v boot/grub/device.map + chroot . update-grub fi && + sed -i -e "s#dev/`basename $dev_root`#dev/vda#g" boot/grub/grub.cfg && + rm -v boot/grub/device.map && rm -v dev/"`basename $dev_root`" }}} @@ -173,25 +159,6 @@ And a fstab and a boot loader config # doesn't work: chroot . update-grub rootuuid=`vol_id "$dev_root" "$target" | awk -F= '$1=="ID_FS_UUID" {print $2}'` && swapuuid=`vol_id "$dev_swap" "$target" | awk -F= '$1=="ID_FS_UUID" {print $2}'` && - if [ "$use_boot" != "n" ] ; then - bootuuid=`vol_id "$dev_boot"1 | awk -F= '$1=="ID_FS_UUID" {print $2}'` && - cat > boot/grub/menu.lst << EOF -default 0 -timeout 5 -color cyan/blue white/blue - -### BEGIN AUTOMAGIC KERNELS LIST -# kopt=root=UUID=$rootuuid ro - -## ## End Default Options ## -title Debian -root (hd0,0) -kernel /vmlinuz root=UUID=$rootuuid ro -initrd /initrd.img - -### END DEBIAN AUTOMAGIC KERNELS LIST -EOF - fi && if [ "$fs" = "ext3" ]; then rootopts="errors=remount-ro" else @@ -202,6 +169,7 @@ UUID=$rootuuid / $fs $rootopts 0 1 UUID=$swapuuid none swap sw 0 0 EOF if [ "$use_boot" != "n" ] ; then + bootuuid=`vol_id "$dev_boot"1 | awk -F= '$1=="ID_FS_UUID" {print $2}'` && echo "UUID=$bootuuid /boot $fs defaults 0 2" >> etc/fstab fi cat > etc/network/interfaces << EOF @@ -221,6 +189,11 @@ Maybe fix/setup networking properly: vi etc/network/interfaces }}} +And set a password: +{{{ +chroot . passwd +}}} + And unmount: {{{ -- 2.20.1