试图找出如何使用cmdline执行以下操作:
– 在centos系统上创build一个虚拟机/映像 – 在VM中安装centos / rhel os – 在VM中安装额外的应用程序 – 在VM内添加额外的文件到特定的目录
然后,我想通过vmplayer应用程序使用VM在单独的服务器上播放/运行它。
我可能已经通过20-30篇不同的文章试图设置这个没有运气。
所以,如果你有这个问题,让我知道! 啤酒在我身上!
评论/想法/指针都赞赏。
完整的文档/脚本也非常感谢!
谢谢
那么,鉴于CentOS安装程序既是graphics化的,又是交互式的,如果不先为无人参与安装创build一个Kickstart脚本,那么你肯定无法做到这一点。 坦率地说,如果你要走这条路线,那么你最好还是创build一个虚拟机并克隆它。 一旦创build了VM,就可以使用vmware-mount命令来挂载VMDK,并将所需的任何文件复制到VMDK中,假设您正在从Linux主机系统执行此操作。
这可以做到。 这是我如何接近它:
在像easyvmx这样的站点上创build虚拟的VMWare虚拟机你可以在这里模板化VMX文件来改变名称/添加版本等。据我所知,你不能在命令行创buildvmx文件/结构,所以你会必须使用这样的网站或克隆空虚拟机的。 (这可能在支付产品的VMWare基础架构上或VMWare的VIX api上。
创build一个自定义的kickstart文件。 保持简单,只需在post部分安装1个应用程序,创build1个用户,mkdir为目录结构等等。
创build一个自定义的Centos DVD 这一个为我工作 。 将其指向您的kickstart文件或将您的kickstart文件安装到DVD上。
现在你回家了,干了。 只需指出从您创build的自定义ISO / kickstart中首先创build的空VMX(在尝试硬盘后)。 它将启动DVD执行安装,并presto你有你的ISO。
被警告。 要完成这个任务,需要做很多工作(我的产品要安装5个,build立数据库等等,我已经完成了几千个构build/引导周期)。程序的一些脚本是非常古老的,只能运行互动,我已经大量使用了美好的期望程序来驱动这些程序,就好像它们在terminal上运行一样,并且input了答案)。 另一件我build议你使用某种模板语言(我使用python的猎豹)。 这可以让你在kickstart文件中执行if / else for /types的东西,并轻松地处理诸如改变数据库大小的事情。 我们的一些开发人员需要一个非常小的虚拟机,我们砍掉组件,并用模板值调整数据库的大小。
我们用它来为我们的开发人员部署一个消息传递应用程序的新版本,当我们在大约4个小时内获得一个新版本时,我们可以部署一个经过testing的工作虚拟机。 这是我们的产品的正常版本。 如果其他软件包中的一个发生了变化,那么我们必须重新编写脚本。
如果您searchkickstart-maker,那么我在code.google.com上构build的基本版本就是这样。