定製本身的CentOS系統


將CentOS從新打包成一個新ISO,能夠自動分區、選擇原件包,快速安裝系統。

1.掛載光驅,建立臨時目錄
    mount /dev/cdrom /mnt/cdrom
    mkdir -p /root/iso/CentOS

2.使用cp.sh腳本提取須要的RPM包,正常安裝好操做系統在/root目錄下會有install.log文件,這個就是操做系統安裝RPM包的記錄,咱們從這些記錄中,將所需的RPM包從/mnt/cdrom/Packages中複製到/root/iso/CentOS裏面去

    #!/bin/bash
    cd /root
    awk '/Installing/{print $2}' install.log | sed 's/^[0-9]*://g' >package.txt
    DVD='/mnt/cdrom/Packages'
    PACKDIR='/root/package.txt'
    NEW_DVD='/root/iso/CentOS/'
    while read LINE
    do
    cp ${DVD}/${LINE}*.rpm /${NEW_DVD} || echo "$LINE don't cp......."
    done < package.txt

3.把原鏡像除了Packages目錄外的文件所有複製至/root/iso目錄下

    rsync -a --exclude=Packages /mnt/cdrom/  /root/iso


4.把/root目錄下的anaconda-ks.cfg複製至/root/iso目錄下,並根據本身實際須要修改安裝要求
linux

    #version=DEVEL
    install
    text
    cdrom
    lang en_US.UTF-8
    keyboard us
    network --onboot no --device em1 --bootproto dhcp --noipv6
    network --onboot no --device em2 --bootproto dhcp --noipv6
    rootpw 123456    ----默認密碼
    firewall --disabled  ----關閉防火牆
    authconfig --enableshadow --passalgo=sha512
    selinux --disabled   ----禁用selinux
    timezone --utc Asia/Shanghai
    bootloader --location=mbr --driveorder=sda --append="crashkernel=auto rhgb quiet"
    # 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 --none
    clearpart --all --initlabel
    zerombr
    part /boot --fstype=ext4 --size=200
    part swap --size=32000
    part pv.008003 --grow --size=200
    ignoredisk --only-use=sda
    volgroup volGroup00 --pesize=4096 pv.008003
    logvol / --fstype=ext4 --name=LogVol00 --vgname=volGroup00 --size=200000
    logvol /data --fstype=ext4 --name=LogVol01 --vgname=volGroup00 --size=1655232
    reboot
    #repo --name="CentOS"  --baseurl=cdrom:sr0 --cost=100
    %packages
    @chinese-support
    @core
    @server-policy
    %end

5.讓ISO按照anaconda-ks.cfg文件來執行安裝

    vi /root/iso/isolinux/isolinux.cfg
    Default vesamenu.c32 修改爲 default linux ks=cdrom:/anaconda-ks.cfg

6.使用repo.sh腳本從新生成repo文件

    #!/bin/bash
    ISO_DIR=/root/iso
    cd  ${ISO_DIR}
    declare -x discinfo=$(head -1 .discinfo)
    mv   ${ISO_DIR}/repodata/*x86_64-comps.xml     ${ISO_DIR}/repodata/c6-x86_64-comps.xml
    createrepo   -g   ${ISO_DIR}/repodata/c6-x86_64-comps.xml  ${ISO_DIR}
    #createrepo -u "media://$discinfo" -g  ${ISO_DIR}/repodata/c6-x86_64-comps.xml   ${ISO_DIR}
    mv   ${ISO_DIR}/repodata/*x86_64-comps.xml     ${ISO_DIR}/repodata/c6-x86_64-comps.xml
    createrepo -u "media://$discinfo" -g  ${ISO_DIR}/repodata/*c6-x86_64-comps.xml   ${ISO_DIR}

7.製做ISO
    yum -y install mkisofs
    mkisofs -o MyCentOS.iso -b isolinux/isolinux.bin -c isolinux/boot.cat -no-emul-boot -boot-load-size 4 -boot-info-table -R -J -v -T /root/iso/

執行命令後會在當前目錄生成一MyCentOS.iso文件,這樣一個定製版的CentOS就出來了。


 **參考界面**
http://kling.blog.51cto.com/3320545/1249962
http://lihuipeng.blog.51cto.com/3064864/759122redis

相關文章
相關標籤/搜索