我在制作 .img 文件时遇到问题,我可以让它在 USB 中启动。
我的文件夹包含许多 RPM 文件,包括 linux distrobution 和一些 bash 脚本文件等。bash 脚本安装 Linux 服务器和除了设置 MySQL 和 PHP 之外的另外两个软件。我想从此文件夹制作 .img 文件,所以当我只是让 .img 文件可启动以从 USB 启动时,它应该会自动在计算机中安装所有内容。
我的问题是我不知道如何制作这样的 .img 文件。我应该使用任何特定的 bash 命令吗?你能帮我做这个吗?阅读和理解流程或使用任何软件的一些线索和文档非常完美。非常感谢你的帮助。
谢谢。
答案是:
不要这样做。
至少不是您提议的那样。
您在没有真正定义您的需求 的情况下指定了问题的解决方案。有多少个标准包?您添加了多少/多大? 门控 项目是什么(例如,需要网络服务器,需要 sshd)?您只需要几个标准包还是数百个?
Linux 发行版,例如 Redhat、CentOS、Fedora、Canonical/Ubuntu、Debian,花费相当多的工时来完成这项工作。
因此,您需要知道您使用的是什么发行版。通过提及 rpms,您可能正在使用 Redhat、CentOS 或 Fedora。他们有创建“实时”CD(和/或 USB 内存棒)和“完整安装”DVD 的程序。但是,这可能是一项大工作,尤其是当您试图移植他们不知道的额外文件时。
我强烈建议您为您的发行版使用标准安装程序 [已经过大量 QA'ed]。然后,在安装并重新启动后,从单独的媒体中提取您的 附加包或从您控制的服务器下载。您的东西的安装媒体可能只包含一个 bash 脚本,该脚本创建 /etc/yum.repos.d/mystuff.repo
并启动 yum install mystuff
此外,如果您要执行即插即用安装程序,您是否希望它在不询问的情况下直接删除/重新分区主硬盘驱动器(例如全自动)?或者,您是否希望它像标准安装程序那样显示现有分区等?
回到要求,为什么您需要有一个一次性安装程序?
您打算在多少个系统上安装它? 5、10、100、1000?他们都在服务器场吗?使用 PXE 引导和从中央服务器引导/安装可能会更好。
例如,Google 拥有数十万台 [或更多] 服务器。 他们对此有需求。但是,他们也有整个开发团队致力于他们使用的内部方法。
对于给定的服务器,您需要多久执行一次此操作?初始安装后,您的更新计划/方法是什么(例如 yum 等)?
通过使用标准安装,您不负责整个系统的 QA [标准系统 + 您的自定义内容],只负责您的自定义内容。 p>
例如,Fedora 不鼓励任何“完全安装”。他们现在更喜欢“实时启动”并从 Internet 安装方法。
其中一个原因是创建了完整的安装盘 [有很多 QA]。但是,它是静态的。如果软件包有更新,完整安装将安装未打补丁的旧版本。
我有使用它的情况,然后在重启后执行 yum update。完整安装盘安装了一些在发布后一两周内变得过时/不兼容的东西。他们与更新发生冲突,事情就坏了。我不得不手动干预。这不太可能发生在实时启动安装中,它会下载最新的 [并且可能是大多数已修复的错误] 包。
在 fedoraproject.org 站点上,您可以找到有关创建 live CD 和/或 USB 的文档。他们甚至可以向您展示如何添加一些自定义文件。其他发行版站点将有类似的文档。
顺便说一句,我从 1981 年就开始做操作系统安装工具包,所以以上所有内容都来自经验。我从头开始创建它们,并从发行版中破解了它们。
可以吗?当然。你真的想做还是应该你想做?也许。请注意您在维护方面所做的工作。