zoukankan      html  css  js  c++  java
  • 打造自己的centos/linux发行版 订制精简ISO压缩包文件[初级版](转)

    1、安装好RHEL/CentOS 5.3系统 ,只选自己需要的包!我只选了基础包,而且在基础包中去掉了一些包,安装后大概有410个包!请你根据自己的情况来做!

    2、在root根目录中有个install.log 文件,这个文件中记录了你安装系统时安装了哪些rpm包,文件内容应该像是这样的:

    Installing libgcc-4.1.2-44.el5.x86_64
    warning: libgcc-4.1.2-44.el5: Header V3 DSA signature: NOKEY, key ID 37017186
    Installing setup-2.5.58-4.el5.noarch
    Installing filesystem-2.4.0-2.x86_64
    Installing basesystem-8.0-5.1.1.noarch
    Installing cracklib-dicts-2.8.9-3.3.x86_64
    Installing nash-5.1.19.6-44.x86_64
    ……………….

    想办法把这个文件弄到win下,然后批量替换修改其中的内容,目的就是把你刚才安装的rpm包复制出来,修改后的内容应该像是这样的:

    cp -a /media/Server/libgcc-4.1.2-44.el5.x86_64.rpm /home/rhel5u3/Server
    cp -a /media/Server/setup-2.5.58-4.el5.noarch.rpm /home/rhel5u3/Server
    cp -a /media/Server/filesystem-2.4.0-2.x86_64.rpm /home/rhel5u3/Server
    cp -a /media/Server/basesystem-8.0-5.1.1.noarch.rpm /home/rhel5u3/Server
    cp -a /media/Server/cracklib-dicts-2.8.9-3.3.x86_64.rpm /home/rhel5u3/Server

    注 意要先新建目录rhel5u3和Server 还有挂载安装光盘到/media!如果你装的是CentOS那么应该把Server改成CentOS,然后vi copy.sh 将修改的install.log的内容粘贴进去保存,执行chmod +x copy.sh 给这个脚本执行权限,然后sh copy.sh执行它!现在继续复制一些需要的文件到rhel5u3目录中,

    cp -a /media/.discinfo /home/rhel5u3
    cp -a /media/.treeinfo /home/rhel5u3
    cp -aR /media/isolinux /home/rhel5u3
    cp -aR /media/images /home/rhel5u3
    cp -aR /media/Server/repodata /home/rhel5u3/Server

    如果你安装的是CentOS,应该把cp -aR /media/Server/repodata /home/rhel5u3/Server 改为 cp -aR /media/repodata /home/rhel5u3

    3、准备自动安装文件,在root根目录下有个anaconda-ks.cfg 将它复制过来

    cp ~/anaconda-ks.cfg /home/rhel5u3/isolinux
    cd  /home/rhel5u3/isolinux
    mv anaconda-ks.cfg ks.cfg

    然后修改isolinux下的isolinux.cfg 将default linux 改成default linux ks=cdrom:/isolinux/ks.cfg

    到此,所有需要的文件准备完毕,接着执行以下命令

    cd /home/rhel5u3/Server

    createrepo -g repodata/comps-rhel5-server-core.xml .           执行createrepo命令前应该先安装anaconda和anaconda-runtime 建议使用yum安装!

    如果你安装的是CentOS应该把comps-rhel5-server-core.xml改为comps.xml 最后到rhel5u3上层目录执行:

    mkisofs -o RHEL5U3.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T rhel5u3/

    生成光盘iso文件!

    关于ks.cfg自动安装文件的更多参数请参考anaconda



    默认的内容是这样的:

    # Kickstart file automatically generated by anaconda.

    install
    cdrom   //从光盘安装
    key –skip //跳过SN
    lang en_US.UTF-8 //语言
    keyboard us //键盘
    network –device eth0 –bootproto dhcp //网络参数
    rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. //root password
    firewall –enabled –port=22:tcp //可以改为disabled 禁用fw
    authconfig –enableshadow –enablemd5 //密码加密方式
    selinux –enforcing //可以改成disabled禁用selinux
    timezone Asia/Hong_Kong //时间
    bootloader –location=mbr –driveorder=sda
    # The following is the partition information you requested
    # Note that any partitions you deleted are not expressed
    # here so unless you clear all partitions first, this is
    # not guaranteed to work
    #clearpart –linux –drives=sda
    #part /boot –fstype ext3 –size=100 –ondisk=sda
    #part pv.2 –size=0 –grow –ondisk=sda
    #volgroup VolGroup00 –pesize=32768 pv.2
    #logvol /home –fstype ext3 –name=LogVol02 –vgname=VolGroup00 –size=4992
    #logvol swap –fstype swap –name=LogVol01 –vgname=VolGroup00 –size=512 –grow –maxsize=1024
    #logvol /tmp –fstype ext3 –name=LogVol03 –vgname=VolGroup00 –size=512
    #logvol /var –fstype ext3 –name=LogVol05 –vgname=VolGroup00 –size=2848
    #logvol /usr –fstype ext3 –name=LogVol04 –vgname=VolGroup00 –size=8000
    #logvol / –fstype ext3 –name=LogVol00 –vgname=VolGroup00 –size=2976

    %packages //这里开始由你所选rpm包会有所不同
    @editors
    @core
    @base
    @java
    fipscheck
    device-mapper-multipath
    -emacs-leim
    -psgml
    -emacspeak
    -rhn-check
    -dhclient
    -nano
    -sendmail
    -pcmciautils
    -yum
    -yum-updatesd
    -dhcpv6-client
    -firstboot-tui
    -NetworkManager
    -yum-rhn-plugin
    -irda-utils
    -ypbind
    -rhn-setup
    -yum-security
    -bluez-utils


    rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. 这个肯定要去掉,这样可以自己在安装时设定密码

    尝试把network –device eth0 –bootproto dhcp去掉可在安装时还是不能设定网络参数,后来怀疑firewall –enabled –port=22:tcp和selinux –enforcing 也去掉了还是不行,最后把:

    lang en_US.UTF-8 //语言
    keyboard us //键盘
    network –device eth0 –bootproto dhcp //网络参数
    rootpw –iscrypted $1$bljn2gyE$iSEU9p3M1ZMrVBLX7BhRt. //root password
    firewall –enabled –port=22:tcp //可以改为disabled 禁用fw
    authconfig –enableshadow –enablemd5 //密码加密方式
    selinux –enforcing //可以改成disabled禁用selinux
    timezone Asia/Hong_Kong //时间

    都去掉了,可还是不能设定网络,直接跳过了,不过选键盘和语言等参数时变成了文本模式,折腾了,有空参考一下anaconda吧,想在安装完系统过 安装yum和禁用一些服务!
  • 相关阅读:
    redis特性,使用场景
    docker 界面话管理工具Portainer
    解决streamsets jdbc全量模式数据重复问题
    clickhouse 行列转换
    clickHouse 常用命令
    mysqldump导出数据
    oracle 迁移到clickhouse 45亿条数据
    clickHouse 导入/删除/更新数据
    clickhouse Mysql 数据类型对比
    maven 的使用
  • 原文地址:https://www.cnblogs.com/vicowong/p/1981187.html
Copyright © 2011-2022 走看看