grub-devel
[Top][All Lists]
Advanced

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

Re: grub-mkrescue fails with HFS+ error possibly due to directory size


From: Thomas Schmitt
Subject: Re: grub-mkrescue fails with HFS+ error possibly due to directory size
Date: Sat, 25 Jul 2020 10:38:34 +0200

Hi,

what shall be done about the failure of grub-mkrescue for I386_EFI,
X86_64_EFI, and POWERPC_IEEE1275 with very large input file trees ?
  https://lists.gnu.org/archive/html/grub-devel/2020-06/msg00062.html

libisofs now emits a better error message
  Too many files in HFS+ directory tree
instead of
  Too much files to mangle, cannot guarantee unique file names
man xorrisofs now says:
  WARNING:
  The  HFS+  implementation in libisofs has a limit of 125,829,120
  bytes for the size of the overall directory tree. This  suffices
  for about 300,000 files of normal name length. If the limit gets
  exceeded, a FAILURE event will be issued and the ISO  production
  will not happen.


But a solution of the problem itself is out of my reach.

Possible ways to go:

- Enhance libisofs to create "HFS+ map nodes" for more tree storage.
  (Would need help from Vladimir Serbinenko and substantial testing.)

- Disable -hfsplus in grub-mkrescue by default and have a new option to
  enable it for the antique Macs which need it.
  (It would be not enough for the user to just add xorrisofs option
   -hfsplus. Needed are the options pushed at
     http://git.savannah.gnu.org/cgit/grub.git/tree/util/grub-mkrescue.c#n718
   up to line 731.)

- Document the problem for grub-mkrescue and add a new option of
  grub-mkrescue which suppresses xorrisofs option -hfsplus.

- Document for grub-mkrescue the existing workaround of adding as last
  arguments these three:
    -- -hfsplus off
  (Problem is that xorriso -as mkisofs cannot disable -hfsplus once it
   was given. But xorriso as itself can. "--" ends mkisofs emulation.)


Have a nice day :)

Thomas




reply via email to

[Prev in Thread] Current Thread [Next in Thread]