笔记:我目前拥有的 UDisks 版本:gnome-disk-utility 3.36.3 UDisks 2.8.4(基于 2.8.4 构建)
我有几个空的 DVD+RW 光盘。当我将它们插入光盘播放器并使用移动U盘(gnome-disk-utility)它仅指示“ISO 9660”。
我知道 ISO 9660 文件系统有不同的版本/级别/扩展(Rock Ridge、Joliet 等——请参阅ISO 9660在 Wikipedia 上)。有没有办法检查磁盘上使用的文件系统是原始 ISO 9660 还是其他扩展之一?
或者,移动U盘指示它是否是 ISO 9660 文件系统的不同扩展/级别,或者是否将所有版本都标记为相同的“ISO 9660”指示?
答案1
原始答案
您可以xorriso
从存储库中使用universe
。
sudo apt update
sudo apt install xorriso
xorriso -indev file.iso # iso file
xorriso -indev /dev/sr0 # optical disk (CD or DVD)
查看 iso 系统的一些详细信息,例如 Ubuntu iso 文件:
$ xorriso -indev ubuntu-22.04.1-desktop-amd64.iso
GNU xorriso 1.5.3 : RockRidge filesystem manipulator, libburnia project.
xorriso : NOTE : Loading ISO image tree from LBA 0
xorriso : UPDATE : 963 nodes read in 1 seconds
libisofs: NOTE : Found hidden El-Torito image for EFI.
libisofs: NOTE : EFI image start and size: 1866280 * 2048 , 8496 * 512
xorriso : NOTE : Detected El-Torito boot information which currently is set to be discarded
Drive current: -indev 'ubuntu-22.04.1-desktop-amd64.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
Media summary: 1 session, 1868570 data blocks, 3650m data, 2321g free
Volume id : 'Ubuntu 22.04.1 LTS amd64'
以现在旧的东芝笔记本电脑附带的两张 Windows 8 光盘中的第一张为例:
sudo umount /dev/sr0 # unmount the automounted disk
$ xorriso -indev /dev/sr0
GNU xorriso 1.5.3 : RockRidge filesystem manipulator, libburnia project.
xorriso : NOTE : Loading ISO image tree from LBA 0
xorriso : UPDATE : 1 nodes read in 1 seconds
libisofs: WARNING : Found hidden El-Torito image. Its size could not be figured out, so image modify or boot image patching may lead to bad results.
xorriso : NOTE : Detected El-Torito boot information which currently is set to be discarded
Drive current: -indev '/dev/sr0'
Media current: DVD-ROM
Media status : is written , is closed
Boot record : El Torito
Media summary: 1 session, 3950832 data blocks, 7716m data, 0 free
Volume id : 'TI30990500A_1'
更多详细信息man xorriso
编辑:转发 xorriso 作者的答案
我询问了的作者xorriso
托马斯·施密特(Thomas Schmitt),并通过电子邮件得到了以下答复:
你好,
今天我无法通过 askubuntu 的验证码。
因此,请引导问题 1441688 的读者进行[email protected]
讨论,或者发布我的以下回答:
当前稳定版本 xorriso-1.5.4 可以报告 Rock Ridge(ISO 9660 目录树的附加组件)、Joliet(用于 MS-Windows 的替代 ISO 9660 目录树,文件名为 16 位字符)或 ISO 9660-1999(另一种替代目录树,但好处不多)的存在。
$ xorriso -indev debian-11.5.0-amd64-netinst.iso -toc
...
ISO offers : Rock_Ridge Joliet
ISO loaded : Rock_Ridge
...
如果它有 ISO 9660-1999 树,那么“ISO 提供”行也会显示单词“ISO_9660_1999”。如果没有 Rock Ridge、Joliet 或 ISO 9660-1999,则显示单词“Only_ECMA_119”。“ISO 加载”行显示哪个树被读取并随后由 xorriso 操作使用。(这可以通过 xorriso 命令 -read_fs 来选择。)
开发版本 xorriso-1.5.5 有一个新的命令
-assess_indev_features
它会更详细地检查已加载的 ISO,并报告“交换级别”(1= 所有 ECMA-119 名称均符合 DOS 8.3 样式,2= 所有数据文件均小于 4 GiB,3= 存在 4 GiB 或更大的数据文件)。
$ xorriso -indev debian-11.5.0-amd64-netinst.iso -assess_indev_features plain
...
Indev feature: size=195584
Indev feature: iso_level=1
Indev feature: rockridge=1
Indev feature: joliet=1
Indev feature: iso1999=0
Indev feature: eltorito=1
Indev feature: tree_loaded=0
Indev feature: tree_loaded_text=ISO9660
Indev feature: rr_loaded=1
Indev feature: aaip=0
Indev feature: untranslated_name_len=0
Indev feature: allow_dir_id_ext=1
Indev feature: omit_version_numbers=0
Indev feature: allow_deep_paths=0
Indev feature: allow_longer_paths=0
Indev feature: max_37_char_filenames=0
Indev feature: no_force_dots=2
Indev feature: allow_lowercase=0
Indev feature: allow_full_ascii=1
Indev feature: relaxed_vol_atts=1
Indev feature: joliet_longer_paths=0
Indev feature: joliet_long_names=1
Indev feature: joliet_utf16=0
Indev feature: rrip_version_1_10=1
Indev feature: rrip_1_10_px_ino=0
Indev feature: aaip_susp_1_10=0
Indev feature: record_md5_session=0
Indev feature: record_md5_files=0
它可以告诉本机 xorriso 命令在写入新 ISO 时实现所见的属性:
$ xorriso -indev debian-11.5.0-amd64-netinst.iso -assess_indev_features cmd
...
-compliance iso_9660_level=1
-rockridge on
-joliet on
-compliance iso_9660_1999_off
-compliance untranslated_name_len=0
-compliance allow_dir_id_ext
-compliance omit_version_off:only_iso_version_off
-compliance deep_paths_off
-compliance long_paths_off
-compliance long_names_off
-compliance no_force_dots_off:no_j_force_dots
-compliance lowercase_off
-compliance full_ascii
-compliance joliet_long_paths_off
-compliance joliet_long_names
-compliance joliet_utf16_off
-compliance old_rr
-compliance aaip_susp_1_10_off
它可以告诉 mkisofs 选项来实现所见的属性:
$ xorriso -indev debian-11.5.0-amd64-netinst.iso -assess_indev_features as_mkisofs
-iso-level 1
-R
-J
-d
-U
-joliet-long
开发快照下载优惠 https://www.gnu.org/software/xorriso/xorriso-1.5.5.tar.gz 编译说明位于 https://www.gnu.org/software/xorriso/README_xorriso_devel “汇编、初见、安装”
我以德语发音“xorriso”,就像英语使用者读“ksorr-ee-zo”一样。但实际上自然的英语发音“ksorr-i-so”是正确的。它代表 X/Open、Rock Ridge、ISO 9660。
祝你今天过得愉快