#588 Issue closed: SLES12 - mkisofs called with incorrect parameters in 82_create_iso_image.sh

Labels: support / question

rbeldin opened issue at 2015-05-15 16:55:

Trying rear starting a 1.16 on a HP DL360 Gen9 with SLES12 in UEFI mode.

Tried intermediate versions until rear-1.17.0-3.git201505131802.noarch.

Doing an nfs backup fails showing a problem with options for mkisofs:

2015-05-15 10:33:48 Including output/ISO/Linux-i386/82_create_iso_image.sh
2015-05-15 10:33:48 Starting '/usr/bin/mkisofs'
2015-05-15 10:33:48 Making ISO image
2015-05-15 10:33:48 Including ISO UEFI boot (as triggered by USING_UEFI_BOOTLOADER=1)
genisoimage: option '-e' is ambiguous; possibilities: '--eltorito-boot' '--exchange' '--ethershare' '--exclude-list' '--exclude' '--eltorito-catalog' '--eltorito-alt-boot'
Usage: genisoimage [options] -o file directory ...

Use genisoimage -help
to get a list of valid options.

Report problems to debburn-devel@lists.alioth.debian.org.
2015-05-15 10:33:48 ERROR: Could not create ISO image (with /usr/bin/mkisofs)
=== Stack trace ===
Trace 0: /usr/sbin/rear:251 main
Trace 1: /usr/share/rear/lib/mkbackup-workflow.sh:24 WORKFLOW_mkbackup
Trace 2: /usr/share/rear/lib/framework-functions.sh:70 SourceStage
Trace 3: /usr/share/rear/lib/framework-functions.sh:31 Source
Trace 4: /usr/share/rear/output/ISO/Linux-i386/82_create_iso_image.sh:17 source
Trace 5: /usr/share/rear/lib/_input-output-functions.sh:132 StopIfError
Message: Could not create ISO image (with /usr/bin/mkisofs)

Looking at /usr/share/rear/output/ISO/Linux-i386/82_create_iso_image.sh:

  1 Log "Starting '$ISO_MKISOFS_BIN'"
  2 LogPrint "Making ISO image"
  3 
  4 if (( USING_UEFI_BOOTLOADER )) ; then
  5     # initialized with 1
  6     EFIBOOT="-eltorito-alt-boot -e boot/efiboot.img -no-emul-boot"
  7     Log "Including ISO UEFI boot (as triggered by USING_UEFI_BOOTLOADER=1)"
  8 else
  9    EFIBOOT=""
 10 fi

This suggests that line 6 is incorrect. I'm not sure what the -e boot/efiboot.img is trying to do but -exclude-list seems appropriate.

However, just changing that isn't enough. After changing -e to -exclude-list I get:

2015-05-15 10:50:56 Including output/ISO/Linux-i386/82_create_iso_image.sh
2015-05-15 10:50:56 Starting '/usr/bin/mkisofs'
2015-05-15 10:50:56 Making ISO image
2015-05-15 10:50:56 Including ISO UEFI boot (as triggered by USING_UEFI_BOOTLOADER=1)
genisoimage 1.1.11 (Linux)
genisoimage: Missing boot image name, use -eltorito-boot option.
2015-05-15 10:50:56 ERROR: Could not create ISO image (with /usr/bin/mkisofs)
=== Stack trace ===
Trace 0: /usr/sbin/rear:251 main
Trace 1: /usr/share/rear/lib/mkrescue-workflow.sh:35 WORKFLOW_mkrescue
Trace 2: /usr/share/rear/lib/framework-functions.sh:70 SourceStage
Trace 3: /usr/share/rear/lib/framework-functions.sh:31 Source
Trace 4: /usr/share/rear/output/ISO/Linux-i386/82_create_iso_image.sh:17 source
Trace 5: /usr/share/rear/lib/_input-output-functions.sh:132 StopIfError
Message: Could not create ISO image (with /usr/bin/mkisofs)

SLES12 delivers:

rpm -qf `which mkisofs`
cdrkit-cdrtools-compat-1.1.11-19.46.x86_64

I'm willing to test, but not sure at this point what to try.

gdha commented at 2015-05-15 19:08:

In fact this is not a bug in rear, but with genisoimage in SLES - see issues #214, #229 and #585.
I never understood why SuSe did not update genisoimage package...
An alternative for UEFI ISO booting on SLES could be using USB or PXE, but unfortunately both methods are not (yet) UEFI proof.

gdha commented at 2015-05-15 19:16:

@rbeldin You could open a bugzilla record with SuSe to ask them polite to update this package with the -e option included (it already exists, but not sure who build it?).

rbeldin commented at 2015-05-15 19:29:

Hi...

On 05/15/2015 03:16 PM, gdha wrote:

@rbeldin https://github.com/rbeldin You could open a bugzilla record with
SuSe to ask them polite to update this package with the |-e| option included
(it already exists, but not sure who build it?).

I'm happy to do that. What is the meaning of the '-e' option? That might
be helpful to nudge this in the right direction.

Rick

Rick Beldin
Linux ERT
Tel: +1 770.343.0219 Email: rick.beldin@hp.com
Physical: 5555 Windward Parkway West, Alpharetta GA 30004

gdha commented at 2015-05-15 19:32:

@rbeldin Perhaps read first issue #214 which in fact the same (you could reference to it). Too many SuSe customers are infected by this genisoimage -efi-boot option missing problem and it will become a blocker as EFI booting will become a must with newer generation HW.

rbeldin commented at 2015-05-15 19:45:

Hi...

https://bugzilla.novell.com/show_bug.cgi?id=811636

notes at the end:

"The option -eltorito-platform allows to start a new entry in a Eltorito
multi boot environment, making this entry of type "efi". The option
-eltorito-platform takes no parameter. After you specify it, you continue
with the standard Eltorito boot options.

The shell script mentioned in this bug calls "mkisofs" under this name
but expects behavior that is only available from a patched genisoimage.
To fix the problem, you need to do more than just to replace option names."

Is it possible that the problem is caused by expectation of behavior that
is no longer standard?

Rick Beldin
Linux ERT
Tel: +1 770.343.0219 Email: rick.beldin@hp.com
Physical: 5555 Windward Parkway West, Alpharetta GA 30004

gdha commented at 2015-05-16 06:53:

@rbeldin the problem is that genisoimage does not have the option eltorito-platform and is therefore, according Mr. Schilling, obsolete. Suse could make the factory mkisofs package available for SLES 11/12 sooner?

gdha commented at 2015-11-01 09:53:

@rbeldin see the page at http://www.it3.be/2015/10/27/uefi-iso-boot-with-ebiso/ for a solution


[Export of Github issue for rear/rear.]