Xorriso が Debian 圧縮 ISO の作成中にシンボリックリンクについて文句を言う

Xorriso が Debian 圧縮 ISO の作成中にシンボリックリンクについて文句を言う

ここでは、Debian preseed ISO を作成する手順に従います。https://wiki.debian.org/DebianInstaller/Preseed/EditIsoxorriso.ここで説明されているように、EFI システム用の最終 ISO イメージを作成するには、を使用することをお勧めします。https://wiki.debian.org/RepackBootableISO

このページから導き出したコマンドは次のとおりです。

xorriso \
    -as mkisofs \
    -r \
    -V "Debian 10.6.0 amd64 n preseed" \
    -o "${out}" \
    -R \
    -J \
    -joliet-long \
    -cache-inodes \
    -isohybrid-mbr "isohdpfx.bin" \
    -b isolinux/isolinux.bin \
    -c isolinux/boot.cat \
    -boot-load-size 4 \
    -boot-info-table \
    -no-emul-boot \
    -eltorito-alt-boot \
    -e boot/grub/efi.img \
    -no-emul-boot \
    -isohybrid-gpt-basdat \
    -isohybrid-apm-hfsplus \
    ISO_FILES_DIRECTORY

このコマンドは、シンボリックリンク、特にファームウェア ファイルに関する警告を生成します。これにより、最終的な ISO は、preseed ファイルが含まれた ISO の忠実な複製ではないと考えられます。

GNU xorriso 1.5.2 : RockRidge filesystem manipulator, libburnia project.

Drive current: -outdev 'stdio:debian-10.6.0-amd64-netinst-preseed-20201030120440.iso'
Media current: stdio file, overwriteable
Media status : is blank
Media summary: 0 sessions, 0 data blocks, 0 data, 1267g free
xorriso : WARNING : -volid text problematic as automatic mount point name
xorriso : WARNING : -volid text does not comply to ISO 9660 / ECMA 119 rules
xorriso : NOTE : -as mkisofs: Ignored option '-cache-inodes'
Added to ISO image: directory '/'='ISO_FILES_DIRECTORY'
xorriso : UPDATE :    1561 files added in 1 seconds
xorriso : UPDATE :    1561 files added in 1 seconds
xorriso : NOTE : Copying to System Area: 432 bytes from file 'isohdpfx.bin'
libisofs: WARNING : Cannot add /debian to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /dists/stable to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/basic-defs.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/choosing.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/compatibility.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/contributing.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/customizing.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/faqinfo.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/ftparchives.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/getting-debian.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/index.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/kernel.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/nextrelease.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/pkg-basics.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/pkgtools.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/redistributing.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/software.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/support.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /doc/FAQ/html/uptodate.html to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
libisofs: WARNING : Cannot add /firmware/firmware-linux-free_3.4_all.deb to Joliet tree. Symlinks can only be added to a Rock Ridge tree.
xorriso : UPDATE :  11.40% done
xorriso : UPDATE : Thank you for being patient. Working since 1 seconds.
ISO image produced: 179712 sectors
Written to medium : 179712 sectors at LBA 0
Writing to 'stdio:debian-10.6.0-amd64-netinst-preseed-20201030120440.iso' completed successfully.

特に、ファームウェア ファイルに関する最後の警告が不安です。xorriso正しい動作をさせるために何をすればよいか、どなたかアドバイスをいただけませんか?

答え1

標準の ISO 9660 形式では、ほとんどの種類のオブジェクトに対するサポートが非常に制限されています。たとえば、ファイル名は 8.3 形式に制限されており、権限を保存することはできません。

ただし、この形式にはさまざまな拡張機能があり、最新のオペレーティング システムをより適切にサポートできます。その 1 つである Rock Ridge は、Unix ファイル名と権限のサポートを提供します。xorriso はこれをデフォルトで有効にします。もう 1 つの主要な形式である Joliet は、Microsoft によって定義され、Unicode ファイル名を含みます。3 つ目の形式は HFS-hybrid で、Apple の拡張機能に使用されました。

あなたの場合、Rock Ridge (オフにしていないため) と Joliet を書き込んでいます。この警告は、Joliet がシンボリック リンクをサポートしていないことを示しています。起動可能な Debian システムは Rock Ridge 形式を優先して使用するため、シンボリック リンクは引き続きアクセス可能な状態になります。ただし、このイメージを Windows マシンに配置すると、シンボリック リンクが失われますが、これは避けられません。

起動可能な Debian システムはおそらく問題なく動作するはずなので、これについてはあまり心配する必要はありません。

関連情報