Hi, so I've tried on updated Debian 12 to come to the same conclusion
as you - the problem does not occur there, but it does on Gentoo and Arch.
Maybe the reason is different libisoburn or xorriso version behaving differently
and adding those ".mo~" files...

Regarding the experiment (back on Gentoo):


renergy ~ # path_to_iso=./grub.iso
renergy ~ # xorriso -indev "$path_to_iso" -find / -name '[email protected]*' 
-exec report_lba --
xorriso 1.5.6 : RockRidge filesystem manipulator, libburnia project.

xorriso : NOTE : Loading ISO image tree from LBA 0
xorriso : UPDATE :     983 nodes read in 1 seconds
xorriso : NOTE : Detected El-Torito boot information which currently is set to 
be discarded
Drive current: -indev './grub.iso'
Media current: stdio file, overwriteable
Media status : is written , is appendable
Boot record  : El Torito , MBR protective-msdos-label grub2-mbr cyl-align-off 
GPT APM
Media summary: 1 session, 13984 data blocks, 27.3m data,  124g free
Volume id    : 'ISOIMAGE'
Report layout: xt , Startlba ,   Blocks , Filesize , ISO image path
File data lba:  0 ,     6147 ,       87 ,   177539 , 
'/boot/grub/locale/[email protected]'
File data lba:  0 ,     6234 ,       87 ,   177539 , 
'/boot/grub/locale/[email protected]~'
renergy ~ #


So the .mo~ files really are duplicates, wasting 5.5M in total (duplicates only)

Btw I thought ISO9660 does not have hard nor soft links, but the
same blocks could be addressed in two different ways (?) - this is not
the case here, though.

Best regards,
Adam


On 5/24/25 4:53 PM, Thomas Schmitt wrote:
Hi,

i got a little experiment for you to check whether the .mo~ files
really eat up 2.7 MB in your ISO. They would not if they were hardlinks
in the /tmp/grub.* directory.

   $ path_to_iso=./output.iso
   $ xorriso -indev "$path_to_iso" -find / -name '[email protected]*' -exec 
report_lba --
   ...
   Report layout: xt , Startlba ,   Blocks , Filesize , ISO image path
   File data lba:  0 ,     3151 ,       73 ,   147664 , 
'/boot/grub/locale/[email protected]'
   $

If you see two lines with identical numbers, like

   File data lba:  0 ,     3151 ,       73 ,   147664 , 
'/boot/grub/locale/[email protected]'
   File data lba:  0 ,     3151 ,       73 ,   147664 , 
'/boot/grub/locale/[email protected]~'

then both files share the same content storage in the ISO.
The waste would only be about a few dozen ISO 9660 directory records
with about a hundred bytes each.


Have a nice day :)

Thomas



Reply via email to