kickstart 打包iso步骤.记录

2024-02-09 13:08

本文主要是介绍kickstart 打包iso步骤.记录,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

打包iso步骤

1、安装制作工具

安装anaconda、repodata、createrepo、mkisofs等工具,执行createrepo程序生成repodata下的comps.xml文件

yum -y install anaconda repodata createrepo mkisofs rsync

2、拷贝packages.log 为 install.log

cp /var/log/anaconda/packaging.log /root/install.log

    #如果没有该文件,可以手动生成(新安装的干净系统):

rpm -qa >> /root/install.logawk '{print $2}'  /root/install.log |xargs -i cp /media/Packages/{}.rpm /root/iso/Packages/

    注:如果是手动生成的install.log,将'{print $2}' 改为'{print $0}' 。

2、挂载磁盘

mount /dev/cdrom /mnt/

如果是虚拟机,要勾选“已连接”,否则挂载失败

创建目录

mkdir -p /root/iso/{Packages,repodata}

3、查询install 中的rpm,并拷贝到Packages中

awk '/packaging/{print $4}' install.log | awk '/-/{print $1}' | sed 's/^.*://g'|xargs -i cp /mnt/Packages/{}.rpm /root/iso/Packages/awk '/Installing/{print $3}' vim_install.log | awk '/-/{print $1}' | sed 's/^.*://g'|xargs -i cp /var/cache/yum/x86_64/7/{updates,base}/packages/{}.rpm /root/iso/Packages/

4、拷贝comps.xml

cp /mnt/repodata/*-comps.xml /root/iso/repodata/comps.xml

5、拷贝/mnt/cdrom中,除了Packages和repodata

/usr/bin/rsync -a --exclude=Packages/ --exclude=repodata/ /mnt/  /root/iso

6、将/root/anaconda-ks.cfg拷贝到/root/iso/isolinux/ks.cfg

cp /root/anaconda-ks.cfg /root/iso/isolinux/ks.cfg

并根据自己需要修改ks.cfg中内容

7、生成新的repodata

createrepo -g /root/iso/repodata/comps.xml  /root/iso

# 2020-12-17

# 生成iso命令

mkisofs -o CentOS-7.5_64-test.iso -input-charset utf-8 -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T -joliet-long  /root/iso

F.A.Q

 问题一:kickstart repoerror insufficient space in download directory  /run/install/repo/Packages

原因:

重新生成repo

在CentOS下需要根据'.discinfo'来设置'baseurl'(declare -x discinfo=head -1 .discinfo; createrepo -u "media://$discinfo"...); 在CentOS7中不再需要如此做,实际上如果在CentOS7中执行了这个命令,在安装的过程中,可能会报错"RepoError after 10 retries: Insufficient space in download directory /run/install/repo/Packages"

在其他版本中可执行如下指令:

# declare -x discinfo=$(head -1 /root/iso/.discinfo)# createrepo -u "media://$discinfo" -g /root/minimal-x86_64.xml /root/iso/

这篇关于kickstart 打包iso步骤.记录的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/694310

相关文章

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

Python pyinstaller实现图形化打包工具

《Pythonpyinstaller实现图形化打包工具》:本文主要介绍一个使用PythonPYQT5制作的关于pyinstaller打包工具,代替传统的cmd黑窗口模式打包页面,实现更快捷方便的... 目录1.简介2.运行效果3.相关源码1.简介一个使用python PYQT5制作的关于pyinstall

javafx 如何将项目打包为 Windows 的可执行文件exe

《javafx如何将项目打包为Windows的可执行文件exe》文章介绍了三种将JavaFX项目打包为.exe文件的方法:方法1使用jpackage(适用于JDK14及以上版本),方法2使用La... 目录方法 1:使用 jpackage(适用于 JDK 14 及更高版本)方法 2:使用 Launch4j(

更改docker默认数据目录的方法步骤

《更改docker默认数据目录的方法步骤》本文主要介绍了更改docker默认数据目录的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 目录1.查看docker是否存在并停止该服务2.挂载镜像并安装rsync便于备份3.取消挂载备份和迁

SpringBoot使用minio进行文件管理的流程步骤

《SpringBoot使用minio进行文件管理的流程步骤》MinIO是一个高性能的对象存储系统,兼容AmazonS3API,该软件设计用于处理非结构化数据,如图片、视频、日志文件以及备份数据等,本文... 目录一、拉取minio镜像二、创建配置文件和上传文件的目录三、启动容器四、浏览器登录 minio五、

mysql重置root密码的完整步骤(适用于5.7和8.0)

《mysql重置root密码的完整步骤(适用于5.7和8.0)》:本文主要介绍mysql重置root密码的完整步骤,文中描述了如何停止MySQL服务、以管理员身份打开命令行、替换配置文件路径、修改... 目录第一步:先停止mysql服务,一定要停止!方式一:通过命令行关闭mysql服务方式二:通过服务项关闭

Servlet中配置和使用过滤器的步骤记录

《Servlet中配置和使用过滤器的步骤记录》:本文主要介绍在Servlet中配置和使用过滤器的方法,包括创建过滤器类、配置过滤器以及在Web应用中使用过滤器等步骤,文中通过代码介绍的非常详细,需... 目录创建过滤器类配置过滤器使用过滤器总结在Servlet中配置和使用过滤器主要包括创建过滤器类、配置过滤

Spring Boot 中整合 MyBatis-Plus详细步骤(最新推荐)

《SpringBoot中整合MyBatis-Plus详细步骤(最新推荐)》本文详细介绍了如何在SpringBoot项目中整合MyBatis-Plus,包括整合步骤、基本CRUD操作、分页查询、批... 目录一、整合步骤1. 创建 Spring Boot 项目2. 配置项目依赖3. 配置数据源4. 创建实体类

正则表达式高级应用与性能优化记录

《正则表达式高级应用与性能优化记录》本文介绍了正则表达式的高级应用和性能优化技巧,包括文本拆分、合并、XML/HTML解析、数据分析、以及性能优化方法,通过这些技巧,可以更高效地利用正则表达式进行复杂... 目录第6章:正则表达式的高级应用6.1 模式匹配与文本处理6.1.1 文本拆分6.1.2 文本合并6