You are not logged in.
Pages: 1
Tried the xorriso command from https://wiki.archlinux.org/index.php/Un … B_from_ISO and the new iso image fails during boot at finding/identifying the image possibly looking for the squashfs file on a 32-bit efi mac mini. Is that command still correct?
Offline
Hi,
it is possible that the Archlinux boot code depends on the
Volume Id of the ISO fileystem in order to find it in
/dev/disk/by-label after the kernel was loaded and (cough)
udev was started up.
Try what happens if you replace the parameter text of
-volid "archisolabel"
by the original Volume Id of the input image, as reported by
xorriso -indev input.iso
For example, if this reports
Volume id : 'ARCH_201311'
then use
-volid "ARCH_201311"
This might be what is meant by the prescription in the wiki:
"Mount the official installation media and obtain the archisolabel as shown in the previous section."
Well, there is no previous section which would show it.
Have a nice day
Thomas
Last edited by scdbackup (2014-01-31 07:08:33)
Offline
Thanks that might be it and I tried that but for some reason the new iso always has
Volume id: archisolabel
and I don't know why. Made sure that the right Volume id was used by extracting it with isoinfo
isoinfo -d -i archlinux-2014.01.05-dual.iso | grep 'Volume id'
and the xorriso command looked fine.
Offline
Hi,
> for some reason the new iso always has
> Volume id: archisolabel
This must have sneaked in somehow with your xorriso command.
Its default Volume Id is 'ISOIMAGE'.
The default might get altered by one of the startup files
of xorriso. Check by
xorriso -status -volid
which should say as last output line
-volid 'ISOIMAGE'
If it does not, then show me the output of
xorriso -report_about ALL -status -volid
> the xorriso command looked fine.
So let's repeat the production steps:
- Mount archlinux-2014.01.05-dual.iso
- Use the same xorriso -as mkisofs command as before, but
add a redirection to a log file:
xorriso -as mkisofs -iso-level 3 \
...
-output output.iso /mnt/iso/ \
2>&1 | tee -i /tmp/xorriso.log
- Check whether this time "ARCH_201401" is reported as Volume Id
of the resulting "output.iso".
If not, then show the exact xorriso command and the content of
file /tmp/xorriso.log . If the file is too large or too private,
then mail it to me: scdbackup@gmx.net (developer of xorriso).
- If it shows the desired Volume Id then try whether it boots.
(If not, then we would have to dig for the origin of the last
visible messages. Do i get it right that
/arch/i686/root-image.fs.sfs
is what others have as initrd ?)
Have a nice day
Thomas
Offline
Sorry for the noise the new iso works but I tested the wrong one when I wrote the comment. Thanks for your help.
Last edited by cm (2014-01-31 22:12:34)
Offline
What's the correct xorriso way to get the volid? Is it possible to get it without mounting the iso first?
Offline
Do you know the right xorriso steps to also make sysresccd isos bootable on 32-bit efi macs. Their isos have the same efi problem.
Offline
Hi,
> What's the correct xorriso way to get the volid?
For example:
id=$(xorriso -indev archlinux-2013.11.01-dual.iso -pvd_info \
| grep '^Volume Id' | sed -e 's/Volume Id : //')
echo $id
"grep" picks the line "Volume Id : ARCH_201311" out of the result
text of xorriso command -pvd_info.
xorriso command -indev "archlinux-2013.11.01-dual.iso" loads the
directory tree and image attributes, so that command -pvd_info
can list the Volume Id and some of its neighbors. "sed" removes
the title text from "Volume Id : ARCH_201311".
You may suppress the info messages of xorriso by "2>/dev/null" before
the pipe symbol.
Note that the sequence of -indev and -pvd_info matters. First load,
then inquire info.
The Archlinux wiki example actually uses only one xorriso command:
-as which by its first parameter "mkisofs" interprets the other
parameters as mkisofs options. Among them, the sequence does
fewly matter.
> Is it possible to get it without mounting the iso first?
Yes. xorriso has its own interpretation of ISO 9660 filesystems.
E.g. to see a complete list of all files in the ISO filesystem
xorriso -indev archlinux-2014.01.05-dual.iso \
-find / -exec lsdl -- 2>&1 | less
This capability is mainly because it has to load the tree before
it can be manipulated and brought into effect by an add-on session.
(The ISO image is prone to such change only if -dev is used rather
than -indev.)
> Do you know the right xorriso steps to also make sysresccd
> isos bootable on 32-bit efi macs.
One would need to find out how they are made.
Do you have an URL to download an example for inspection ?
Have a nice day
Thomas
Offline
I found the stdout/stderr behavior of xorriso irritating and hard to grep the volid from but I'll try again to replace isoinfo with xorriso in my script.
> Do you have an URL to download an example for inspection ?
Offline
Hi,
> http://www.sysresccd.org/Download
Inspection by
xorriso -indev systemrescuecd-x86-4.0.0.iso -toc -pvd_info
yields (among others):
Boot record : El Torito , ISOLINUX boot image capable of isohybrid
Boot image : '/isolinux/isolinux.bin' , boot_info_table=on
Boot image : '/boot/grub/efi.img' , platform_id=0xEF
PVD address : 16s
Volume Id : sysrcd-4.0.0
Preparer Id : XORRISO-1.2.8 2013.03.18.093001, LIBISOBURN-1.2.8, LIBISOFS-1.2.8, LIBBURN-1.2.8
So it is suitable for booting CD/DVD via El Torito on BIOS or EFI,
but not from USB stick (no MBR for BIOS, no GPT for EFI).
Adapted archlinux wiki example for repacking without
EFI El Torito:
mount -o loop systemrescuecd-x86-4.0.0.iso /mnt/iso
xorriso -as mkisofs -iso-level 3 \
-full-iso9660-filenames \
-volid "sysrcd-4.0.0" \
-eltorito-boot isolinux/isolinux.bin \
-eltorito-catalog isolinux/boot.cat \
-no-emul-boot -boot-load-size 4 -boot-info-table \
-output output.iso /mnt/iso/
I am not sure whether -iso-level 3 -full-iso9660-filenames is
actually needed. Normally only the ISOLINUX stage of booting
uses the dull ISO 9660 names. Further stages use the Rock Ridge
names (which are e.g. shown after "mount").
xorriso could make the result bootable from USB stick, if you
extract the SYSLINUX hybrid MBR from an Archlinux image:
dd if=archlinux-2013.11.01-dual.iso bs=512 count=1 of=syslinux.mbr
and add this option to the xorriso -as mkisofs run:
-isohybrid-mbr syslinux.mbr \
Background info about the "-as mkisofs" options is given in
man xorrisofs
online:
http://www.gnu.org/software/xorriso/man … isofs.html
It shall be noted that without -isohybrid-mbr, the above options
would also work with programs mkisofs and genisoimage.
I tested the result by putting it on a CD-RW:
xorriso -as cdrecord -v dev=/dev/sr0 blank=as_needed -eject output.iso
and booting it on an amd64 system with PC-BIOS.
(For -as cdrecord options see man xorrecord .)
> I found the stdout/stderr behavior of xorriso irritating
> and hard to grep the volid from
If in doubt, use the shell gesture "2>&1" to unite both streams.
As a rule of thumb, user requested text is sent to stdout,
unrequested information is sent to stderr.
Whatever, i don't urge to give up tools which do their job.
If isoinfo suits you, then just stay with it.
Have a nice day
Thomas
Offline
Thanks again I got it all working now with or without isoinfo. I haven't test booted the sysresccd iso yet but expect it to work.
xorriso complains about "sysrcd-4.0.0" but compared to ARCH_201401 maybe it's the hyphen and dots.
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
Thanks a lot Thomas!!!
Last edited by cm (2014-02-01 10:48:19)
Offline
> xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
> maybe it's the hyphen and dots.
Yes. Officially, only characters A-Z, 0-9, and _ are allowed. Archlinux ISO producers are among the few who obey. The others do not get punished unless they are perky enough to use characters which cause shell problems when dealing with e.g. /dev/disk/by-label.
Offline
Booted syssreccd iso and it works but it seems to require EFI calls to set up the text console. I can live with that by booting into VGA or as tried booting directly into Xorg. This EFI stuff is a pain in the ass and going to cost the world much more in resources than it saves.
Offline
Pages: 1