如何从Ubuntu Live USB创建可引导的.iso文件?

我有一个 Ubuntu 14.04 的 Live USB(32 GB)。

  • 能否从 Live USB 创建一个可引导的 .iso 文件?

如何创建一个可引导的 ISO 文件?


第二点实际上是关于如何克隆一个现有的Live USB吗?你需要先将文件缓存为磁盘上的副本,还是直接将其复制到新的USB介质上也可以? - Byte Commander
@ByteCommander 克隆?你的意思是复制吧...那就不行。而且,“将文件先作为副本缓存到磁盘上”...是的 =) - Ravan
3个回答

只需要使用cat命令即可。例如,如果你的USB设备是/dev/sdb,你可以执行以下操作:
cat /dev/sdb > foo.img

将图像恢复到USB盘,操作如下:
cat foo.img > /dev/sdb

请注意,即使驱动器几乎为空,这种方法也会创建一个与驱动器本身一样大的图像文件。如果驱动器没有100%满,并且您只想要使用空间的iso,请改用genisoimage(使用apt install genisoimage进行安装)代替:
genisoimage -o foo.iso /path/to/usb/mount/point

1如果有两个USB,一个dd就足够了 :D - Rinzwind
@terdon 谢谢 =)...我的第二个?...我会编辑以便更清楚。 - Ravan
@Ravan 看到更新的回答了。虽然我不明白你为什么要这样做,但只需保存 ISO 文件即可。 - terdon
谢谢,但在第二个选项中,我根本不想创建ISO文件...直接再次制作一个可启动的USB驱动器...没有ISO的概念。 - Ravan
1如果USB闪存比所需的镜像文件要大得多,例如8GB,那么.iso文件的大小会是8GB,并且其中会有很多空白空间吗?还是它只会占用足够容纳数据的空间?我指的是catgenisoimage两种方法都适用。 - Byte Commander
1@ByteCommander 说得好。无论你有多少数据,使用cat方法确实会生成与设备一样大的文件。而使用geniso方法只会生成与设备上已使用空间一样大的文件。谢谢,回答已编辑。 - terdon
dd命令怎么样? - Raphael
@terdon 请查看我的编辑。 - Ravan
@Ravan 抱歉,我对此一无所知。你可能想提出一个新问题。不过,请先尝试这个方法,我不确定标题是否像你说的那样重要。 - terdon
@Raphael 这个怎么样?这里不需要。 - terdon
我觉得genisoimage可能已经过时了。为了大幅缩小镜像文件的大小,考虑使用类似以下命令:sudo dd if=/dev/sda bs=16M conv=sync,noerror | pv | sudo pigz -c > /media/drive/Image.dd.gz。 - Ray Woodcock
@RayWoodcock 为什么使用dd而不是cat? - terdon
我受到Hacker News(2017)的影响:“当你使用cat命令时,它会为你做出一些决策。大多数情况下,它会做出正确的选择,但在处理写入其他设备或文件系统的大文件时,可能会做出不太优化的选择。”来源:https://news.ycombinator.com/item?id=13349475。并不是说这是权威的观点,只是看起来使用一个合适的块大小的dd命令可以近似于cat的速度,并且可能具有更高的精确性。 - Ray Woodcock
@RayWoodcock 这里有一个关于这个问题的很好的问答,你可以在[unix.se]上找到:dd vs cat -- is dd still relevant these days? - terdon
@terdon 那次讨论确实影响了我对dd的倾向:(1)尽管主要答案声称dd作为系统工具“几乎没用”,但我不确定其他答案是否支持这一观点。例如,LawrenceC的答案更倾向于使用dd而不是cat来备份引导扇区,这对我的目的很有帮助。(2)问题中提供的链接并未明确证明cat在速度上有优势。(3)我可能仍然会选择cat,但是我没有找到关于语法的明确指导。请参阅https://raywoodcockslatest.wordpress.com/2021/08/18/vmware-v2p/#Imaging(欢迎进一步建议)。 - Ray Woodcock

我发现了一个叫做Pinguy Builder的工具,可以在操作系统内创建.iso文件。 Pinguy Builder将创建当前系统的可安装ISO文件。
您可以将此ISO刻录到USB驱动器上或直接写入DVD。
DVD / USB是可引导的,因此可以从任何PC引导。
根据您选择的选项,您可以确定要创建哪种类型的ISO文件。
如果选择“Dist”,它将备份整个系统但不包括您的主目录。
如果选择“Backup”,它将备份系统并包括您的主目录。
参考资料:

http://sourceforge.net/projects/pinguy-os/files/ISO_Builder/

如何在Ubuntu上启动Pinguy Builder?


我在使用Pinguy时运气不太好。不确定它是否还在维护中。请参阅https://raywoodcockslatest.wordpress.com/2021/07/22/pinguy/。 - Ray Woodcock

在目前这个日期,Linux下创建可启动ISO的工具包括Systemback、Clonezilla、Distroshare,以及可能还有一些我没有尝试过的付费替代品(例如TeraByte、PowerISO)。我仍然希望能找到一种使用dd的方法来完成它。
对于Systemback和Clonezilla的ISO过程,有许多详细的教程。我发现Systemback更加用户友好。它在过去一两年内已经被分叉,即使是旧版本也可以在Ubuntu 21.04上为我工作。但是Clonezilla似乎更加持久和广为人知。您可能想尝试几种不同的工具,看看哪种最适合您,或者至少查看几个不同的教程。