LiveCD镜像文件的定制化

  最近想要定制化一款属于自己的LiveCD镜像文件,并且里边封装好所需要的软件程序,本文将会记录具体的操作步骤,供有需要的人参考借鉴。

环境说明:

环境配置说明配置参数
编码环境Centos7.9
LiveCD文件CentOS-7-livecd-x86_64.iso

附LiveCD下载链接:

Centos7:https://buildlogs.centos.org/centos/7/isos/x86_64/
Centos6:https://mirrors.bfsu.edu.cn/centos-vault/6.10/isos/x86_64/

操作步骤:

1、制作ks应答文件,可拷贝已安装系统生成的文件。

  默认情况下,已经安装好的系统在root用户的家目录下会默认有ks文件(centos7.9默认为anaconda-ks.cfg),直接拷贝就可以使用。也可以使用其它工具来自动生成。
  这里不做重点阐述,感兴趣的小伙伴可以查阅资料。

#version=DEVEL
# System authorization information
auth --enableshadow --passalgo=sha512
# Use CDROM installation media
cdrom
# Use graphical install
graphical
# Run the Setup Agent on first boot
firstboot --enable
ignoredisk --only-use=sda
# Keyboard layouts
keyboard --vckeymap=cn --xlayouts='cn'
# System language
lang zh_CN.UTF-8# Network information
network  --bootproto=dhcp --device=enp4s0f0 --onboot=off --ipv6=auto --no-activate
network  --bootproto=dhcp --device=enp4s0f1 --onboot=off --ipv6=auto
network  --bootproto=dhcp --device=enp4s0f2 --onboot=off --ipv6=auto
network  --bootproto=dhcp --device=enp4s0f3 --onboot=off --ipv6=auto
network  --hostname=localhost.localdomain# Root password
rootpw --iscrypted $6$gaK5808gYkpuiQPa$7Dd6l95oDjOvy.NlSPtwZVVGddwePE0e/N5ou8g8Rqassl4JJvMe5kVLcBKSrFCr7Zqf6mTEayiX62wQzOaot1
# System services
services --disabled="chronyd"
# System timezone
timezone Asia/Shanghai --isUtc --nontp
# X Window System configuration information
xconfig  --startxonboot
# System bootloader configuration
bootloader --append=" crashkernel=auto" --location=mbr --boot-drive=sda
autopart --type=lvm
# Partition clearing information
clearpart --all --initlabel --drives=sda%packages
@^graphical-server-environment
@backup-server
@base
@compat-libraries
@core
@desktop-debugging
@development
@dial-up
@dns-server
@file-server
@gnome-desktop
@guest-agents
@guest-desktop-agents
@ha
@hardware-monitoring
@identity-management-server
@infiniband
@input-methods
@internet-browser
@java-platform
@kde-desktop
@large-systems
@load-balancer
@mail-server
@mainframe-access
@mariadb
@multimedia
@network-file-system-client
@performance
@postgresql
@print-client
@print-server
@remote-system-management
@resilient-storage
@security-tools
@smart-card
@system-admin-tools
@virtualization-client
@virtualization-hypervisor
@virtualization-tools
@x11
kexec-tools%end%addon com_redhat_kdump --enable --reserve-mb='auto'%end%anaconda
pwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notempty
pwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyok
pwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty
%end

2、从镜像网站下载对应的LiveCD版本的iso文件,然后上传到服务器上。

在这里插入图片描述这里推荐下载 CentOS-7-livecd-x86_64.iso ,该iso镜像文件相对较小,且桌面版本为通用的,比较好用。

3、挂载iso镜像文件,拷贝系统文件。

myFile: 存放镜像所有文件内容。
mySquashfs:存放 squashfs 临时系统打包文件内容。

mount -o loop CentOS-7-livecd-x86_64.iso /mnt/mkdir /myFile
cp -rf /mnt/* /myFile/mkdir /mySquashfs
cp -rf  /myFile/LiveOS/squashfs.img /mySquashfs/

4、解压squashfs.img文件。

#安装squashfs-tools工具
yum install -y squashfs-tools
cd /mySquashfs/
unsquashfs squashfs.img

解压成功后会在当前目录下产生一个squashfs-root目录。

5、挂载squashfs-root里的文件系统,根据需求修改系统文件。

mount -o loop squash-root/LiveOS/ext3fs.img /media/
#修改系统文件,可chroot切入系统中,也可在外边直接修改文件。
chroot /media/

6、修改完毕后重新打包squashfs.img文件。

cd /mySquashfs/
mksquashfs squashfs-root/ squashfs.img -comp xz

7、拷贝新的squashfs.img文件到LiveCD镜像文件目录下。

rm -rf /myFile/LiveOS/squashfs.img
cp /mySquashfs/squashfs.img /myFile/LiveOS/squashfs.img

8、重新打包LiveCD镜像文件。

mkisofs -R -b isolinux/isolinux.bin -c isolinux/boot.cat -o /home/MyLiveCDv7.0.iso -V "CentOS-7-livecd-x86_64" -no-emul-boot -boot-load-size 4 -boot-info-table -eltorito-alt-boot -bisolinux/efiboot.img -no-emul-boot -allow-limited-size .

注意: 这里的 -V 后的名字要与与 EFI/BOOT/grub.cfg 文件里的label一致,否则系统启动时找不到硬盘

9、如果想要手动创建LiveCD镜像文件的话,可以执行下列命令:

#安装livecd-tools
yum -y install livecd-tools
#制作livecd ISO镜像文件
livecd-creator --verbose -c centos7-livecd.ks --cache=cache -f centos7-livecd

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/5243.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

西门子PCU50.3数控面板维修6FC5220-0AA31-2AA0

西门子数控面板维修,西门子工控机触摸屏维修6FC5247-0AA00-0AA3 西门子数控机床维修包括:840C/CE、840Di/DSL、840Di SL、802C S、802D SL、810D/DE、820D SL、S120数控电路板、数控伺服驱动模块、控制模块修、电源模块,西门子数控机床控制面…

Redis缓存介绍以及常见缓存问题:穿透、雪崩和击穿

概念 缓存就是数据交换的缓冲区(Cache),是存贮数据的临时地方,一般读写性能较高。 作用: 降低后端负载 提高读写效率,降低相应时间 成本: 数据一致性成本 代码维护成本 运维成本 缓存更…

ICSE 2024 PaperList1

1. 勒索软件攻击造成的数据破坏的实证研究 An Empirical Study of Data Disruption by Ransomware Attacks 近年来,勒索软件对软件生态系统的威胁日益令人担忧,这就提出了对大规模、全面的勒索软件分析的需求,以帮助针对未知攻击制定更有效…

如何使用dlib库进行目标跟踪

dlib 库本身并不直接提供目标跟踪的功能。目标跟踪是计算机视觉领域的一个独立任务,通常涉及对视频序列中的特定目标(如人脸、车辆、行人等)进行持续的识别和定位。然而,dlib 库中的某些组件(如人脸检测器、HOG特征提取器等)可以被用作构建目标跟踪系统的基础。 要在dli…

QT爱发函,介绍一下平替QT的八大桌面开发框架。

Qt是一款跨平台的C应用程序开发框架,它提供了丰富的库和工具,可以用于开发图形用户界面、嵌入式系统、移动应用等。Qt拥有商业版和开源版两种许可证,商业版需要支付授权费用,而开源版则可以免费使用。 对于替代Qt的框架&#xff0…

前端如何将接口传来的列表数据(数组)直接下载成csv文件

前言:最近遇到一个需求,需要实现一个下载表格数据的操作,一般来说是前端请求后端的下载接口,将文件流下载下来,但是因为这个项目任务时间比较紧,后端没时间做下载接口,所以暂时由前端直接调列表…

新手开通抖音小店的时候,必须要注意的6点!建议收藏!

大家好,我是电商小V 今天咱们就来详细的说一下开通抖音小店的时候需要注意的事项,避免咱们在开店的时候踩坑导致店铺后期的正常运营, 第一点:是关于营业执照的问题 营业执照咱们都知道,分为个体和企业的,咱…

区块链详解

1. 概述 1.1 什么是区块链? 区块链是一种分布式数据库技术,它以链式数据结构的形式存储数据,每个数据块与前一个数据块相关联,形成了一个不断增长的数据链。每个数据块中包含了一定数量的交易信息或其他数据,这些数据…

Servlet、Tomcat、Control区别

1. Servlet Servlet 是一种动态网站开发技术,专门用来处理客户端的请求并生成响应。Servlet直接与Tomcat交互,处理从Tomcat传来的请求。然后生成网页或其他类型的响应发送回Tomcat,Tomcat再将这些响应返回给用户的浏览器。 2. TomCat tomc…

【数据结构】三、栈和队列:2.顺序栈共享栈(顺序栈的初始化,判空,进栈,出栈,读取栈顶,顺序栈实例)

文章目录 1.顺序栈1.1初始化1.2判空1.3进栈1.4出栈1.5读取栈顶1.6销毁栈❗1.7顺序栈c实例 2.共享栈2.1初始化2.2判满 1.顺序栈 用顺序存储实现的栈 顺序栈的缺点:栈的大小不可变。 #define MaxSize 10 //定义栈中元素的最大个数 typedef struct{ElemType data[…

28377d升级

dsp 28377在线升级 实例总结_f021_cpu0_w1_register_address-CSDN博客

leetcode1143. 最长公共子序列(ACM模式解法)

题目描述 给你一个序列X和另一个序列Z&#xff0c;当Z中的所有元素都在X中存在&#xff0c;并且在X中的下标顺序是严格递增的&#xff0c;那么就把Z叫做X的子序列。 例如&#xff1a;Z是序列X的一个子序列&#xff0c;Z中的元素在X中的下标序列为<1,2,4,6>。 现给你两个…

指纹浏览器:网络安全与隐私的新工具

在互联网时代&#xff0c;隐私和网络安全成为人们越来越关注的话题。随着数字化的发展&#xff0c;个人信息的泄露和在线追踪的问题愈发严峻。在这个背景下&#xff0c;"指纹浏览器"作为一种新型工具&#xff0c;开始受到关注。撸空投需要了解指纹浏览器。本文将深入…

动态规划与搜索算法

动态规划&#xff08;Dynamic Programming, DP&#xff09; 动态规划是一种解决优化问题的算法设计技术&#xff0c;主要用于求解具有重叠子问题和最优子结构特性的最优化问题。在动态规划中&#xff0c;我们会将复杂问题分解为多个子问题&#xff0c;并计算子问题的解&#x…

软考-信息系统项目管理师-论文技术架构模板(60天备考第26天)

分享一段信息系统项目管理师论文项目技术架构描述的万能模板&#xff0c;供大家参考。距离考试还有二十八天&#xff0c;如果论文写不好的可以加微进论文指导群学习论文写作。 该系统前端基于Vue开发&#xff0c;后端基于java开发&#xff0c;前后端分离部署。整体采用B/S架构&…

你缺的是一个机会吗?

大家好&#xff0c;我是记得诚。 前两天面试了一个&#xff0c;差不多有5-6年的硬件开发经验&#xff0c;没有达到我的要求&#xff0c;给否掉了。 大公司里面&#xff0c;分工很细&#xff0c;原理图一个人&#xff0c;甚至系统大的产品&#xff0c;原理图由几个人共同完成&…

【收藏全开源】JAVA共享自习室共享学习室无人系统支持微信小程序+微信公众号+H5_博纳软云

JAVA打造无人自习室新纪元&#xff1a;微信小程序、公众号与H5三合一共享学习空间 在信息化时代的浪潮下&#xff0c;学习方式正经历着前所未有的变革。JAVA技术以其强大的跨平台性和稳定性&#xff0c;引领着共享自习室领域迈向新的高度。我们推出的无人自习室共享学习室系统…

Spring Boot 统一数据返回格式:优化前后端开发协作的利器

在开发基于Spring Boot的Web应用程序时&#xff0c;统一的数据返回格式是非常重要的。 它可以使得前后端的交互更加规范和统一&#xff0c;降低前后端开发人员的沟通成本&#xff0c;提高开发效率。 本文将分析Spring Boot中统一数据返回格式的必要性&#xff0c;以及如何实现…

Java基础(6)序列化和反序列化

序列化&#xff08;Serialization&#xff09;是将对象的状态信息转换为可以存储或传输的形式的过程。在Java中&#xff0c;这通常意味着将对象转换为字节流&#xff0c;以便可以将其保存到磁盘上或通过网络传输到另一个网络节点。相反&#xff0c;反序列化&#xff08;Deseria…

EVRPD-440NZ5M智能型电压保护器 施耐德韩国三和

EVRPD-440NZ5M智能型电压保护器 施耐德韩国三和 EVR-PD是施耐德EOCR的一款电压保护器产品&#xff0c;具有过电压、欠电压、缺相、逆相、电压不平衡等保护功能 EOCR简介&#xff1a; EOCR即Electronic Over Current Relays电子式电动机保护继电器英文缩写&#xff0c;韩国三…