1. 前言

  2. 更改CentOS6.5背景图片、CentOS标题为DntOS,总之就是用ISO安装或者安装后的系统启动时不能有CentOS标志。

ISO光盘目录介绍:

(1)isolinux 目录存放光盘启动时的安装界面信息。

(2)images 目录包括了必要的启动映像文件

(3)Packages 目录存放安装软件包及信息

(4).discinfo 文件是安装价质的识别信息

(5)Repodata 目录存放rpm包依赖信息

  1. 找台centos 6.5 客户机,安装以下工具包。

yum install createrepo mkisofs rpm-build

2.步骤

步骤1:替换初始CentOS背景图片

  1. 上传"CentOS-6.5-x86_64-bin-DVD1.iso"镜像至/root/目录,挂载ISO文件到/mnt目录,默认权限为只读。

  2. 在/root/下新建1个iso目录,选用cp或者rsync拷贝/mnt里面所有内容到/root/iso目录,后面要编辑里面的内容。

    注意:拷贝包含隐藏的文件。

  3. 进入/root/iso/isolinux目录,拷贝splash.jpg到windows桌面,参照原始图片比例改成自己的,最后覆盖splash.jpg图片。

注意:jpg图片名字不要变。

步骤2:替换初始安装时的CentOS标题

  1. 编辑/root/iso/isolinux/isolinux.cfg文件中的CentOS 6.5为DntOS 6.5。

步骤3:替换安装界面CentOS文本标题

  1. 在/root/iso/isolinux下新建一个initrd目录,cd进入这个目录。

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

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

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

  1. cp拷贝覆盖掉原来isolinux目录下的initrd.img文件,删除新建的initrd目录。

步骤4:替换安装界面CentOS文字标题

  1. 在image目录下新建一个install目录,mount挂载images目录下的install.img镜像文件至install目录。

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

步骤5:替换安装界面CentOS背景图片

  1. 进入install/usr/share/anaconda/pixmaps目录,拷贝以下png图片文件到桌面上,按照原始比例修改为自己的图片后,然后上传覆盖。

注意:名字不要变。

splash.png

syslinux-splash.png

progress_first-lowres.png

progress_first.png"

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

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

步骤6:替换开机启动CentOS文字标题.

1.    系统启动时默认显示的CentOS标题,依靠centos-release rpm包中配置文件定义的参数显示,所以需要重新编译。

2.    下载二进制源码包。

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

  1. 修改root用户的rpm包制作路径。

    编辑.rpmmacros文件

    vim ~/.rpmmacros

    添加:

    %_topdir /root/rpmbuild

    确认topdir目录为/root/rpmbuild

    rpmbuild --showrc | grep _topdir

  2. 在/root/目录下创建编译rpm包需要的目录。

    mkdir -pv ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}

    注意:rpmbuild下面的5个子目录用大写。

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

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

  5. 编辑spec文件更改CentOS为DntOS

  6. 分别按顺序指定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

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

  8. 更新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

  1. 以上步骤完成后,在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 : 验证

  1. CentOS初始背景图片和标题

  1. 安装界面文本标题

  1. CentOS安装界面背景图片。

  1. CentOS安装界面背景图片。

  1. 开机启动CentOS文字标题

3.扩展参考

1. CentOS系统定制参考:

http://www.centoscn.com/CentOS/Intermediate/2015/0114/4499.html

  1. 二进制源码包中获取源码包参考:http://www.360doc.com/content/14/0301/12/15064667_356694900.shtml
  2. 二进制包编译参考:

http://www.centoscn.com/image-text/config/2014/1201/4215.html

CentOS 6.5 iso系统定制的更多相关文章

  1. 转自:http://blog.sina.com.cn/s/blog_86e874d30101e3d8.html(谢谢原文作者),Win7下安装CentOS 6.5双系统

    经过一下午的折腾,终于在64位的Windows 7上面成功安装了CentOS 6.5(64bit)系统,中途因为硬盘分区的问题失败了一次.下面是安装过程: 在安装过程中借助了这篇文章的内容:http: ...

  2. 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 和 ...

  3. 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 和 ...

  4. jsp页面在Android系统和ISO系统的兼容性问题

    问题:一个jsp页面在Android手机上显示正常,但到了ISO系统上jsp页面的样式不显示了. 原因:css文件中设置样式时单位不兼容. 解决方案:将rem 转换成px;

  5. Android系统定制和源码开发以及源码编译(附视频)

    Android系统定制配套视频: 为了把Android系统源码定制和编译的课程讲完,从准备到录制完所有的视频,一共花去了近半年的时间,前前后后各种下载源码,编译源码,系统不兼容,版本适配,虚拟机配置困 ...

  6. 识别CentOS和Ubuntu的系统版本

    识别CentOS和Ubuntu的系统版本1.用 lsb-release#!/bin/bashInstall_LSB(){        if [ "$PM" = "yum ...

  7. lixuxmint系统定制与配置(1)-系统初始配置

    小书匠Linux 经常安装新的系统,每次安装完都得去搜索一边如何将系统部署为之前的环境,不仅耗费时间,还不一定能弄回之前的环境,现在把从裸机->到工作环境的系统定制及配置过程记录下来,期间的配置 ...

  8. CentOS 7/8修改系统运行级别

    CentOS 7/8修改系统运行级别   CentOS 5. CentOS 6可以通过修改配置文件/etc/inittab 参数,从而修改系统运行级别,切换系统的runlevel,但是从CentOS ...

  9. CentOS 挂载 cdrom, iso文件作为源

    在生产系统环境中的机器都没有连接互联网,因此都是使用本地源. 首先,需要将cdrom, 或 iso文件挂载到本地目录. 1.挂载光驱: 将cdrom 放入光驱. $  mkdir /media/cdr ...

随机推荐

  1. 专题一:why redis ?

    一.NoSQL   现在互联网应用其中有两个特点:(1)海量用户(2)不可避免地高并发.常常因为这样,我们网站或者服务器将面临崩溃的风险.而多用户.高并发只是现象,究其根源,罪魁祸首就是关系型数据库, ...

  2. Java学习的第九天

    1.双色球联系: 对象的创建和使用 2.静态没太明白. 3.明天学习java 的方法

  3. MONGODB01 - Prematurely reached end of stream 错误定位及修复

    最近项目在运行过程,当一段时间没有操作mongo,再次访问报错,如下 org.springframework.data.mongodb.UncategorizedMongoDbException: P ...

  4. VC中句柄、指针、ID之间的转换

    win32直接操作的是句柄HANDLE,每个句柄就对应windows窗口,而vc对HANDLE进行类封装,间接操作的都是HANDLE,现在句柄只是类的一个成员变量. 从句柄到指针 CWnd* pWnd ...

  5. 关于synchronized无法锁住Integer原因

    原因 在多线程的时候,为了保证数据安全,必须在修改数据时使用线程同步,java中的synchronized用来实现线程同步.线程列队. 学完多线程基础的我,写一个多线程交替输出1,2,3,4,5... ...

  6. 【Kata Daily 190918】Spacify(插空)

    题目: Modify the spacify function so that it returns the given string with spaces insertedbetween each ...

  7. 记录一些API(持续更新)

    //对response进行编解码URLEncoder.encode(string,"UTF-8");//ts检查checkbox是否为选中状态$event.target.check ...

  8. Redis 数据结构之字符串的那些骚操作

    Redis 字符串底层用的是 sds 结构,该结构同 c 语言的字符串相比,其优点是可以节省内存分配的次数,还可以... 这样写是不是读起来很无聊?这些都是别人咀嚼过后,经过一轮两轮三轮的再次咀嚼,吐 ...

  9. 极客mysql02

    mysql 一条更新语句的执行过程: 1.首先客户端通过tcp/ip发送一条sql语句到server层的SQL interface 2.SQL interface接到该请求后,先对该条语句进行解析,验 ...

  10. 1. 线性DP 887. 鸡蛋掉落 (DP+二分)

    887. 鸡蛋掉落 (DP+二分) https://leetcode-cn.com/problems/super-egg-drop/ /*首先分析1个蛋,1个蛋的话,最坏情况需要N次,每次只能从0 1 ...