Bug#620334: fai-cd: grub-install to USB device fails

2013-11-06 Thread Jeroen Akershoek
I think he means that the grub-probe now outputs information differently.

Line 278 in /usr/sbin/fai-cd is now:
 device=$(grub-probe -tdrive $usbdir | perl -ane 'm#(/dev/\w+),#  print
$1\n')

But with -tdrive you currently get something like:
# grub-probe -tdrive
(hd2,msdos1)

With the current grub -tdevice should be used, which returns the partition
device that is mounted, like this:
# grub-probe -tdevice
/dev/sdc1

Also, in order to correctly install grub we need to use the disk-device,
not the partition. So we take off the partition number with something like
this:
 device=$(grub-probe -tdevice $usbdir | perl -ane 'm#(/dev/\D+)#  print
$1\n')

Now the 'device' variable is properly formatted for use in grub-install

Kind regards,
Jeroen


Bug#620334: fai-cd: grub-install to USB device fails

2011-04-01 Thread Andreas Heinlein
Package: fai-server
Version: 3.4.7
Severity: normal
Tags: upstream patch

fai-cd tries to install grub2 to a USB device when told to do so, but fails.
This is because the line which find out the device to use obviously got
mixed up in the transition from GRUB to GRUB2. I am attaching a patch
to fix the problem.

-- System Information:
Debian Release: 6.0.1
  APT prefers stable
  APT policy: (500, 'stable')
Architecture: i386 (i686)

Kernel: Linux 2.6.26-2-686 (SMP w/2 CPU cores)
Locale: LANG=C, LC_CTYPE=C (charmap=ANSI_X3.4-1968)
Shell: /bin/sh linked to /bin/bash

Versions of packages fai-server depends on:
ii  debootstrap  1.0.26+squeeze1 Bootstrap a basic Debian system
ii  fai-client   3.4.7   Fully Automatic Installation clien

Versions of packages fai-server recommends:
ii  dhcp3-server4.1.1-P1-15+squeeze1 ISC DHCP server (transitional pack
ii  fai-setup-storage   3.4.7automatically prepare storage devi
ii  isc-dhcp-server [dh 4.1.1-P1-15+squeeze1 ISC DHCP server for automatic IP a
ii  libproc-daemon-perl 0.03-2   Run Perl program as a daemon proce
ii  nfs-kernel-server   1:1.2.2-4support for NFS kernel server
ii  openbsd-inetd [inet 0.20080125-6 The OpenBSD Internet Superserver
ii  openssh-client  1:5.5p1-6secure shell (SSH) client, for sec
ii  openssh-server  1:5.5p1-6secure shell (SSH) server, for sec
ii  syslinux-common 2:4.02+dfsg-7collection of boot loaders (common
ii  tftpd-hpa   5.0-18   HPA's tftp server

Versions of packages fai-server suggests:
ii  apt-move 4.2.27-1+b8 Maintain Debian packages in a pack
ii  aptitude 0.6.3-3.2   terminal-based package manager (te
ii  debmirror1:2.4.5 Debian partial mirror script, with
ii  genisoimage  9:1.1.11-1  Creates ISO-9660 CD-ROM filesystem
ii  grub 0.97-64 GRand Unified Bootloader (dummy pa
pn  perl-tk  none  (no description available)

-- Configuration Files:
/etc/fai/NFSROOT changed [not included]
/etc/fai/apt/sources.list changed [not included]
/etc/fai/make-fai-nfsroot.conf changed [not included]
/etc/fai/menu.lst changed [not included]

-- no debconf information

--- fai-cd.orig	2011-04-01 09:33:29.0 +0200
+++ fai-cd	2011-04-01 09:34:15.0 +0200
@@ -275,10 +275,10 @@
 
 elif [ $grub_version -eq 2 ]; then
 # detect device of mounted usb stick, grub2
-device=$(grub-probe -tdrive $usbdir | perl -ane 'm#(/dev/\w+),#  print $1\n')
+device=$(grub-probe -tdrive $usbdir | perl -ane 'm#(\w+),#  print ($1)\n')
 echo Installing grub2 to $device.
 # this call seems to remove file and copies them again onto the stick
-grub-install --no-floppy --root-directory=$usbdir $device
+grub-install --no-floppy --root-directory=$usbdir $device
 fi
 }
 # - - - - - - - - - - - - - - - - - - - - - - - - - -