CentOS 6.5 iso系统定制
前言
- 更改CentOS6.5背景图片、CentOS标题为DntOS,总之就是用ISO安装或者安装后的系统启动时不能有CentOS标志。
ISO光盘目录介绍:
(1)isolinux 目录存放光盘启动时的安装界面信息。
(2)images 目录包括了必要的启动映像文件
(3)Packages 目录存放安装软件包及信息
(4).discinfo 文件是安装价质的识别信息
(5)Repodata 目录存放rpm包依赖信息
- 找台centos 6.5 客户机,安装以下工具包。
yum install createrepo mkisofs rpm-build
2.步骤
步骤1:替换初始CentOS背景图片
- 上传"CentOS-6.5-x86_64-bin-DVD1.iso"镜像至/root/目录,挂载ISO文件到/mnt目录,默认权限为只读。

- 在/root/下新建1个iso目录,选用cp或者rsync拷贝/mnt里面所有内容到/root/iso目录,后面要编辑里面的内容。
注意:拷贝包含隐藏的文件。
- 进入/root/iso/isolinux目录,拷贝splash.jpg到windows桌面,参照原始图片比例改成自己的,最后覆盖splash.jpg图片。
注意:jpg图片名字不要变。

步骤2:替换初始安装时的CentOS标题
- 编辑/root/iso/isolinux/isolinux.cfg文件中的CentOS 6.5为DntOS 6.5。

步骤3:替换安装界面CentOS文本标题
- 在/root/iso/isolinux下新建一个initrd目录,cd进入这个目录。

- 解压isolinux目录下的initrd.img镜像文件至当前目录。

- 修改隐藏文件.buildstamp文件CentOs为DntOS


- 在当前目录下重新压缩生成initrd.img文件

- cp拷贝覆盖掉原来isolinux目录下的initrd.img文件,删除新建的initrd目录。
步骤4:替换安装界面CentOS文字标题
- 在image目录下新建一个install目录,mount挂载images目录下的install.img镜像文件至install目录。

- 修改隐藏文件.buildstamp文件中的CentOs为DntOS。


步骤5:替换安装界面CentOS背景图片
- 进入install/usr/share/anaconda/pixmaps目录,拷贝以下png图片文件到桌面上,按照原始比例修改为自己的图片后,然后上传覆盖。
注意:名字不要变。
splash.png
syslinux-splash.png
progress_first-lowres.png
progress_first.png"

- 重新生成install.img镜像文件。

- cp拷贝install.img镜像文件至imges目录覆盖原来的install.img镜像文件。umount卸载install目录挂载,删除install目录。

步骤6:替换开机启动CentOS文字标题.
1. 系统启动时默认显示的CentOS标题,依靠centos-release rpm包中配置文件定义的参数显示,所以需要重新编译。
2. 下载二进制源码包。


3. 上传二进制源码包至至/root目录下,解压后找到源码包.



- 修改root用户的rpm包制作路径。
编辑.rpmmacros文件
vim ~/.rpmmacros
添加:
%_topdir /root/rpmbuild

确认topdir目录为/root/rpmbuild
rpmbuild --showrc | grep _topdir

- 在/root/目录下创建编译rpm包需要的目录。
mkdir -pv ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
注意:rpmbuild下面的5个子目录用大写。

- 拷贝源码包"centos-release-6-5.tar.gz"至rpmbuild目录中的SOURCES子目录中

- 拷贝"centos-release.spec"至rpmbuild目录中的SPECS子目录中

- 编辑spec文件更改CentOS为DntOS

- 分别按顺序指定SPEC文件生成二进制包和源码包。
rpmbuild -bp centos-release.spec
rpmbuild -bc centos-release.spec
rpmbuild -bi centos-release.spec
rpmbuild -bb centos-release.spec
rpmbuild -ba centos-release.spec

- 拷贝编译生成的二进制包到/root/iso/Packages目录覆盖原有的包。

- 更新repodata元数据
在iso/目录下执行更新隐藏文件.discinfo:
declare -x discinfo=`head -1 .discinfo`
cp拷贝repodata目录下的xxxcomps.cml文件至当前iso目录命名为comps.xml。
cp repodata/*comps.xml ./comps.xml
删除原有repodata中元数据
rm -rf repodata
重新生成repodata元数据。
createrepo -u "media://$discinfo" -g comps.xml ./
步骤7:重新生成ISO
- 以上步骤完成后,在iso/目录中生成iso。
mkisofs -o dntos_6.5.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T ./

步骤8 : 验证
- CentOS初始背景图片和标题

- 安装界面文本标题

- CentOS安装界面背景图片。

- CentOS安装界面背景图片。

- 开机启动CentOS文字标题


3.扩展参考
1. CentOS系统定制参考:
http://www.centoscn.com/CentOS/Intermediate/2015/0114/4499.html
- 二进制源码包中获取源码包参考:http://www.360doc.com/content/14/0301/12/15064667_356694900.shtml
- 二进制包编译参考:
http://www.centoscn.com/image-text/config/2014/1201/4215.html
CentOS 6.5 iso系统定制的更多相关文章
- 转自:http://blog.sina.com.cn/s/blog_86e874d30101e3d8.html(谢谢原文作者),Win7下安装CentOS 6.5双系统
经过一下午的折腾,终于在64位的Windows 7上面成功安装了CentOS 6.5(64bit)系统,中途因为硬盘分区的问题失败了一次.下面是安装过程: 在安装过程中借助了这篇文章的内容:http: ...
- Windows 7硬盘安装CentOS 6.4 双系统 (WIN7硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))
WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2.Ubuntu 12.04) 近期在看<鸟哥私房菜:基础学习篇>.认为非常不错,想要用U盘装个windows 7 和 ...
- Windows 7硬盘安装CentOS 6.4 双系统 (WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04))
WIN7下硬盘安装Linux(Fedora 16,CentOS 6.2,Ubuntu 12.04) 最近在看<鸟哥私房菜:基础学习篇>,觉得很不错,想要用U盘装个windows 7 和 ...
- jsp页面在Android系统和ISO系统的兼容性问题
问题:一个jsp页面在Android手机上显示正常,但到了ISO系统上jsp页面的样式不显示了. 原因:css文件中设置样式时单位不兼容. 解决方案:将rem 转换成px;
- Android系统定制和源码开发以及源码编译(附视频)
Android系统定制配套视频: 为了把Android系统源码定制和编译的课程讲完,从准备到录制完所有的视频,一共花去了近半年的时间,前前后后各种下载源码,编译源码,系统不兼容,版本适配,虚拟机配置困 ...
- 识别CentOS和Ubuntu的系统版本
识别CentOS和Ubuntu的系统版本1.用 lsb-release#!/bin/bashInstall_LSB(){ if [ "$PM" = "yum ...
- lixuxmint系统定制与配置(1)-系统初始配置
小书匠Linux 经常安装新的系统,每次安装完都得去搜索一边如何将系统部署为之前的环境,不仅耗费时间,还不一定能弄回之前的环境,现在把从裸机->到工作环境的系统定制及配置过程记录下来,期间的配置 ...
- CentOS 7/8修改系统运行级别
CentOS 7/8修改系统运行级别 CentOS 5. CentOS 6可以通过修改配置文件/etc/inittab 参数,从而修改系统运行级别,切换系统的runlevel,但是从CentOS ...
- CentOS 挂载 cdrom, iso文件作为源
在生产系统环境中的机器都没有连接互联网,因此都是使用本地源. 首先,需要将cdrom, 或 iso文件挂载到本地目录. 1.挂载光驱: 将cdrom 放入光驱. $ mkdir /media/cdr ...
随机推荐
- Redis发布订阅使用方法
Redis发布订阅 发布订阅模式中发布消息的为publisher即发布者,接收消息的为subscriber即订阅者.在Redis中,所有的消息通过channel即频道进行发布,一个发布者可以向多个ch ...
- 使用 IDEA 查看 JDK8 源码
使用 idea 查看 oracle jdk 8 源码时发现 Unsafe 没有源码. 解决方法: 到 openjdk-8 下载页面:http://jdk.java.net/java-se-ri/8-M ...
- Django之实现分页显示内容
关注公众号"轻松学编程"了解更多.- 分页 1.作用 数据加载优化 2.前端引入bootstrap样式: {# 引入bootstrap样式的cdn资源 #} <link ...
- linux-gcc简要知识点 **
目录 交叉编译 简要知识点 ** 一些概念 GCC编译器 GCC简要使用 GCC编译过程 ** 常用的编译选项 编译多个文件 制作.使用动态库 制作.使用静态库 很有用的选项 参考 交叉编译 使用不同 ...
- 04 . Vue组件注册,数据交互,调试工具及组件插槽介绍及使用
vue组件 组件(Component)是 Vue.js 最强大的功能之一. 组件可以扩展 HTML 元素,封装可重用的代码. 组件系统让我们可以用独立可复用的小组件来构建大型应用,几乎任意类型的应用的 ...
- PF_PACKET&&tcpdump
linux下抓包原理 linux下的抓包是通过注册一种虚拟的底层网络协议来完成对网络设备消息的处理权.当网卡接收到一个网络报文之后,它会遍历系统中所有已经注册的网络协议,当抓包模块把自己伪装成一个网络 ...
- sklearn.neighbors.NNeighborsClassifier 详细说明
平时会用到sklearn.neighbors.NNeighborsClassifier函数来构建K最邻近分类器,所以这里对NNeighborsClassifier中的参数进行说明,文中参考的是scik ...
- Fiddler的一系列学习瞎记(没有章法的笔记)
前言: 工作上要接触很多移动设备,进行测试,所以抓包软件不能少,但是看你习惯,你要是说我喜欢charles,也可以,毕竟我也买不起苹果电脑,就不拿charles装在windows上了,还是乖乖的Fid ...
- CSS属性(CSS盒子模型)
1.CSS盒子模型 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset=&q ...
- Linux(CentOS6.8)配置Docker
Centos6.8 1.查看自己的内核 [1].uname [root@host79 ~]# uname -r 2.6.32-642.el6.x86_64 [2].查看CentOS版本信息 CentO ...