[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

flash-knoppix of 9.1 and 9.2: Use case "c" is broken



Hi,

a month ago i wrote a mail to you in private (and in german language)
because of a show-stopping bug in the "flash-knoppix" script and some
other problems with Knoppix which turned up during discussion of

  http://www.knoppixforum.de/knoppix-forum-deutsch/remastern/thread6663/fehlermeldung-burning-failed-beim-brennen-einer-dvd.html

The bug is about two missing quotation marks in Knoppix 9.1 and 9.2
and the use case "c" of flash-knoppix.
Currently lines 407 and 408 of the script are:

  mv -f "$SRC"/boot/isolinux/syslinux.cfg $SRC"/boot/isolinux/isolinux.cfg
  [ -e "$SRC"/boot/isolinux/isolinux.bin ] || cp /usr/local/lib/isolinux.bin $SRC"/boot/isolinux/ || true

(Hint: Look at the second $SRC and the forth $SRC.)

This causes the two lines to be understood as a single shell input line
and thus giving "mv" the following very long string with newline:

  /mnt-system/boot/isolinux/isolinux.cfg
  [ -e /mnt-system/boot/isolinux/isolinux.bin ] || cp /usr/local/lib/isolinux.bin /mnt-system/boot/isolinux/

Unfortunately this is syntactically ok for the shell, but mv fails with:

  mv: das Verschieben von '/mnt-system/boot/isolinux/syslinux.cfg' nach '/mnt-system/boot/isolinux/isolinux.cfg'$'\n'' [ -e /mnt-system/boot/isolinux/isolinux.bin ] || cp /usr/local/lib/isolinux.bin /mnt-system/boot/isolinux/' ist nicht möglich: Datei oder Verzeichnis nicht gefunden

(In english:
  mv: cannot move ‘...’ to ‘...’: No such file or directory
)

Therefore no file /mnt-system/boot/isolinux/isolinux.bin exists, when
xorriso shall do its work. This causes the script to fail with:

  xorriso : FAILURE : Cannot find in ISO image: -boot_image ... bin_path='/boot/isolinux/isolinux.bin'

This detailed message is only visible if flash-knoppix is started from
the shell command line.
Users of the GUI for flash-knoopix only get to see: "Burning failed."

The tested fix is to add the two missing quotation marks:

  mv -f "$SRC"/boot/isolinux/syslinux.cfg "$SRC"/boot/isolinux/isolinux.cfg
  [ -e "$SRC"/boot/isolinux/isolinux.bin ] || cp /usr/local/lib/isolinux.bin "$SRC"/boot/isolinux/ || true


--------------------------------------------------------------------------

My germal mail to you contained more issues.
Shall i translate their detailed reports and post them here or would
you accept them in german and in private ? If the latter: Please send
me a private mail so that i know where to send my report.

- 9.2 tries to use wodim for burning which fails due to bitrot of wodim
  option --devices and to due to a lack of option -tao while the burn
  data get piped in from xorriso's output.
  (xorriso -as cdrecord is the better choice for DVD and BD burning,
   anyways.)

- I wonder whether the use of an extra overlay filesystem inside the
  scripti is still needed. The following comment seems to indicate that
  you attribute a design flaw of mkisofs to xorriso, which modifies
  isolinux.bin in program memory and not on hard disk:
    # xorriso/mkisofs need to modify isolinux/isolinux.bin, so we have to
    # add a ramdisk overlay in order to avoid modification of the original

- I have more than one burner attached to the test machine but the script
  offers no way to choose the one which i want to use.

- The resulting ISO only has El Torito boot equipment for legacy BIOS.
  I.e. the result will not boot on native EFI and it will not boot by
  any firmware from a USB stick.

- Booting of the Linux Magazin 04/21 DVD-ROM via EFI fails.
  The screen stays black (with strong backlighting) and the DVD drive
  audibly goes asleep after about two minutes of no activity.
  When copied to a USB stick, it boots at least on real EFI.
    Mainboard: ASUS PRO WS C246-ACE S-1151
    CPU:       Intel Xeon E-2274G  4K/8T 4,0/4,9 GHz S-1151


Have a nice day :)

Thomas


Reply to: