![设置 CD-ROM 上的 +x 可执行权限](https://linux22.com/image/212472/%E8%AE%BE%E7%BD%AE%20CD-ROM%20%E4%B8%8A%E7%9A%84%20%2Bx%20%E5%8F%AF%E6%89%A7%E8%A1%8C%E6%9D%83%E9%99%90.png)
我想在我的 ISO 上添加 +x 权限可执行文件。这样我就可以直接在Linux主机上点击我的CD-ROM来运行它。
我尝试sudo chmod 555 tester
然后将其刻录到ISO上,但测试人员只有ISO的读取权限
答案1
正如 Vlastimil 所回答的,ISO 9660 文件系统相当有限,并且开发了多个扩展来克服其缺点。例如乔利埃特添加对 Unicode 文件名的支持,埃尔托里托允许启动 CD-ROM 和岩岭使您能够对文件使用 Unix 文件权限。
为了能够在 CD-ROM 文件上使用 Unix 权限,您需要在以下情况下添加 Rock Ridge 扩展:创造磁盘的映像。您需要检查用于构建磁盘文件系统的软件的设置,以表明您想要添加此扩展名(顺便说一句,您可能还会找到用于添加 Unicode 文件名的 Joliet 扩展名或创建可引导文件的选项)磁盘与 El Torito)。
我不是 Linux 用户,但快速搜索一下mkisofs
的man
页面显示这可以通过使用-R
or-r
开关来完成(它们不等效,请检查页面man
)。当然,该命令也必须支持扩展mount
,但这对于任何现代操作系统都应该如此。
您具体询问了有关 CD-ROM 的问题,但为了完整起见,我将补充一点,DVD 通常是使用 UDF 文件系统制作的,该系统对 Unix 权限具有本机支持。
答案2
34年前的ISO 9660被引入作为 CD-ROM 的文件系统。
它在各个方面都得到了改进,就像 Unicode 从那时起被称为 Joliet。
但我相信它仍然无法保留 Linux 文件权限位,没有快速找到它的证明,但我们可以放心地假设它。
作为解决方法bash tester
,如果它是 shell 脚本,您可以运行eg。目前不知道如何运行编译的文件。tar
例如,您可以将其解压缩并运行。