handle new grub brokenness
[mirror/dsa-wiki.git] / input / howto / install-kvm.creole
index 1d87b2a..d97343d 100644 (file)
@@ -68,7 +68,7 @@ trivial.
 #######
 # install base
 
- apt-get install debootstrap kpartx &&
+ apt-get install debootstrap debian-archive-keyring kpartx &&
  if [ "$use_lvm" = "y" ]; then
    if [ "$use_boot" != "n" ] ; then
      lvcreate -L 128m -n "$guest"-boot /dev/"$vg"
@@ -93,7 +93,7 @@ trivial.
  fi &&
 
  cd "$target" &&
- debootstrap --variant=minbase lenny . "$mirror"
+ debootstrap --variant=minbase --keyring=/usr/share/keyrings/debian-archive-keyring.gpg lenny . "$mirror"
 }}}
 
 And finalize the setup:
@@ -121,9 +121,13 @@ EOF
  chroot . apt-get update &&
  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
-   chroot . apt-get install grub &&
-   cp -av usr/lib/grub/x86_64-pc boot/grub &&
+   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)
@@ -141,6 +145,7 @@ 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 &&
 do_symlinks = no
@@ -151,15 +156,15 @@ EOF
 postinst_hook = update-grub
 postrm_hook   = update-grub
 EOF
-    chroot . apt-get install grub2 &&
-    cp -av $dev_root dev/ &&
+    DEBIAN_FRONTEND=noninteractive chroot . apt-get install grub2 &&
     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 &&
-    rm -v dev/"`basename $dev_root`" boot/grub/device.map &&
     sed -i -e "s#dev/`basename $dev_root`#dev/vda#g" boot/grub/grub.cfg
-  fi
+    rm -v boot/grub/device.map
+  fi &&
+  rm -v dev/"`basename $dev_root`"
 }}}
 
 And a fstab and a boot loader config