2013年8月16日星期五

OSAOS 修改右下角字

    在做OSAOS 的定制时候,会遇到一些图片文字可能需要修改的问题。如果这些文字或图片在系统装完后的某个文件、
或内容在文件中可以直接修改的话,通过kickstart 之后的脚本很容易实现。如果不是单个可以修改的文件,那就必须的
重构rpm 包了。
    首先想到的是要处理这个启动过程中进度条的问题。可以通过编辑grub 的参数rhgb就可以取消掉这个登录画面,但
为了美观,还是想保留这个界面,当然,能改改颜色最好了,就像它把redhat enterprise 6 的红色换成蓝色一样。
      

    想法是简单的,实现起来,也应该不难,难的是什么,难的就是不知道在哪里修改,我刚开始试着修改关于plymouth
的文件,甚至包括删除(/usr/ 下的, /etc 下的)plymouth 相关的文件图片和目录,最终的结果是,一个星期没有结果。
这个问题丢想了一个星期,google 无果, 当时有想到向 CentOS 官方提这么一个问题的想法,后来想到CentOS 能山寨
Redhat  的,何不用Redhat 的包再替换回去试一次呢?
    我用CentOS 的plymouth-0.8.3-17.el6.rpm 安装完后,颜色变成红帽的了。 于是乎,咱就必须得修改这个源码的软
件包了。怎么修改,首先得准备一个环境吧:
       yum install rpm-build redhat-rpm-config make gcc
       useradd mockbuild
       su - mockbuild
       mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
       echo '%_topdir %(echo $HOME)/rpmbuild' > ~/.rpmmacros
 
      到网上去wget 一个src.rpm 包吧:plymouth-0.8.3-17.el6.src.rpm
      rpm --nomd5 -i plymouth-0.8.3-17.el6.src.rpm

      安装过后,可以在目录下看到相关的文件了:
      cd ~/rpmbuild/  &&       ls -l
            BUILD BUILDROOT RPMS SOURCES SPECS SRPMS
   
    接下来,关键就是要找到改哪里的问题了,后面我也把这个源码包(SOURCES) 下plymouth-0.8.3.tar.bz2 解压出
来,通过过滤的方式检查,木有发现情况,不好找啊,这部分真不知道它埋哪了。后面我又下了一个redhat 的plymouth
包,希望能看出点不同,如我所愿,在SOURCES 目录下发现 plymouth-0.8.0-everything-is-better-in-red.patch 文件。
具体的怎么修改,不多说了,这也不是关键。
    继续说rebuild 的事吧,修改完后,直接 cd 到 SPECS 目录
       cd ~/rpmbuild/SPECS
       rpmbuild -ba plymouth.spec

    后面的问题就是把生成的 RPMS 目录下的rpm 包丢到光盘镜像的Packages 目录下了。

    说第二个重建的rpm 包, 就是 centos-release-6-2.el6.centos.7.src.rpm 生成的" CentOS Linux 6.0 "几个字,
有了前面的经验,后面的事就好办了,但要找到后面那个版本号的位置,也费力不少。原因是,如果我都是定义成OSA 的
版本,yum 会出现问题。最后鱼和熊掌兼得的方法就是如下修改的方案了:(只截取修改了的部分)

%define debug_package %{nil}
%define product_family OSA Linux
%define release_name OPS
%define base_release_version 1
%define full_release_version 1.1

Name: centos-release
Version: 6
Release: 2%{?dist}.7
Summary: CentOS release file
Group: System Environment/Base
License: GPLv2
Provides:    redhat-release
Source0: centos-release-6-2.tar.gz

    最后谈一下内核,也试过把内核重新编译一次,瘦身多了的时候,发现系统直接就起不来,裁减的太少,感觉打包后,
跟原来的大小差不多,所以暂不考虑吧,等时间充足了,看看如何尽量简化出一个成功的内核吧。

没有评论:

发表评论