【问题标题】:Modify .iso file with Python用 Python 修改 .iso 文件
【发布时间】:2012-10-08 05:29:32
【问题描述】:

我有一个想要分发的 ISO 映像。但是,为了让用户更容易设置,我想为每个 .iso 文件添加一个唯一的 .config 文件。

有没有办法用python修改iso文件?

【问题讨论】:

    标签: python cd dvd-burning


    【解决方案1】:

    存在使用 Python 库浏览或解析 ISO 文件的已知方法(请参阅 this question),但将文件添加到 ISO 将需要修改文件系统 - 这绝对不是微不足道的。

    您可以尝试在文件系统上挂载 ISO,从 Python 修改它,然后再次卸载它。一个可以在 Ubuntu 下运行的非常简单的示例:

    ISO_PATH = "your_iso_path_here"
    
    # Mount the ISO in your OS
    os.system("mkdir /media/tmp_iso")
    os.system("mount -o rw,loop %s /media/tmp_iso" % ISO_PATH)
    
    # Do your Pythonic manipulation here:
    new_file = open("/media/tmp_iso/.config", 'w')
    new_file.write(data)
    new_file.close() 
    
    # Unmount
    os.system("umount /media/tmp_iso")
    os.system("rmdir /media/tmp_iso")
    

    除其他外,您将希望使用subprocess 而不是os.system,但这是一个开始。

    【讨论】:

    • 谢谢。有趣的。因此,如果我修改 .iso 文件,它会在某处更改校验和吗?
    • 不确定 ISO 本身内部校验和的范围,但您最终会更改其文件系统,这是一项最好留给维护良好的库的工作。您将肯定更改整个 ISO 的校验和。
    • 是 .iso 和 .img 一样吗?
    • @AlexisK - Wikipedia 表明这是真的,但我之前肯定发现过不符合 ISO 9660 的 .img 文件。
    猜你喜欢
    • 1970-01-01
    • 2013-05-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多