系统定制成iso文件

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了系统定制成iso文件相关的知识,希望对你有一定的参考价值。

一、系统定制的整体思路

 1)对现有的系统的各个软件包进行更新操作。

 (2)找出现有系统服务所需的软件包及其依赖包、系统定制所必须的文件保存在定制系统指定目录下。

 (3)用mkiosfs命令对源目录进行操作,制作ISO镜像文件。

二、系统定制的具体步骤

 1)首先对系统所安装的所有软件进行升级。

 (2)任意创建一个目录(本章以/build/work/cd_boot为例),用于存放制定iso所必须的一些文件。

技术分享


3)在/usr/lib/anaconda-runtime/下安装buildinstallbuildinstall工具的主要作用是将系统定制成iso镜像所必须的文件导入输出到自定义的目录下(/build/work/cd_boot

     技术分享

4)将系统信息导入到/build/work/cd_boot

技术分享

 显示生成的cd_boot目录下的内容为:

技术分享

5)由系统/root/install.log文件得到系统所安装的RPM包的清单pag_list

技术分享

  Pag_list文件格式显示(所列为系统中安装的RPM包)

    

技术分享

5)查看系统中是否存在系统定制指定目录(本系统为/build/work/cd_root)及其该目录下用于存放系统所有RPM包的目录(/build/work/cd_root/Package)如无则进行建立。

          技术分享

6)在/tmp下建立暂存目录(/tmp/cdrepo.XXXXXX)作用是暂存从光驱上下载下来的RPM包,当所有的RPM包及其依赖包下载完成后,系统会自动的将随机目录下的软件包复制到指定的destdir中。

技术分享

      安装脚本执行完成是,/tmp/cdrepo.XXXX目录下是RPM包时产生的cachelog

            

技术分享

(7)写一个小脚本,将系统已安装的所有软件包进行下载,并将RPM包和依赖包输 出到指定的目录下

    (/build/work/cd_root/Package)技术分享

 安装脚本执行完成之后,/build/work/cd_root/Package目录下出现系统所用到的所有RPM

      技术分享

8)因为/tmp下的目录也将会存在系统所用到的所有RPM包,会使得系统存储被占用,所以将临时产生的暂存目录进行删除。

     

技术分享

  生成comps.xml文件,因为系统中安装的包较多,所以不能进行comps.xml文件的手写生成,所以调用脚本完成。生成comps.xml文件的脚本示例如下:

   

技术分享

生成的comps.xml文件内容如下:

技术分享

(10)查看系统定制的源目录下是否存在repodata目录,有则进行删除,利用compos.xml文件重新

      生成repodata 

                        技术分享


由于本机根目录下的存储空间不足,所以示例中将系统定制的指定目录/build/work/cd_root修改为/opt/data/build/work/cd_root

(11)将存储在cd_boot下的系统定制的所必须的文件,复制到系统定制指定的目录下

     (/opt/data/build/work/cd_root)

技术分享

(12)将自己定制ks.cfg文件导入到定制指定的目录下/opt/data/build/work/cd_root下。ks.cfg文件里定义系统安装设置和用户安装设置,也可以不用该文件,该文件的作用是为了让系统自动安装,无需用户手动选择配置。

技术分享

(13)利用mkiosfs命令,将制定系统指定的目录生成iso文件。

     技术分享

   系统定制成功会显示生成的iso文件: 

     技术分享


本文出自 “Chan_Yeol” 博客,谢绝转载!

以上是关于系统定制成iso文件的主要内容,如果未能解决你的问题,请参考以下文章

Ubuntu定制化系统ISO制作

定制CentOS系统时我想让定制好的ISO文件安装时只有配置网络接口这一个交互界面在ks.cfg文件该怎么配置?

CentOS6.7定制化制作ISO

定制预装软件的win10系统

如何把ISO镜像转换成Docker镜像

如何制作定制的ubuntu镜像