• 制作自动化系统安装U盘


    1.挂载CentOS6.6镜像

    [root@test88 ~]# mkdir /application/tools -p
    [root@test88 ~]# cd /application/tools/
    [root@test88 tools]# ls CentOS-6.6-x86_64-bin-DVD1.iso
    [root@test88 tools]# mount -o loop CentOS-6.6-x86_64-bin-DVD1.iso /mnt/
    

     2.复制镜像内容到目录

    [root@test88 ~]# mkdir -p /application/centos6
    [root@test88 centos6]# rsync -avz --exclude=Packages/* --exclude=repodata/* /mnt/ /application/centos6/
    #补充:rsync后面如果是/application/centos6,则会自动创建目录
    #Packages和repodata里的内容后面要自定义添加
    

     3.收集需要的软件包

    #root目录下默认有一个install.log文件,记录着系统安装安装的软件包
    cd
    awk '/Installing/{print "rsync -az /mnt/Packages/"$2".rpm /application/centos6/Packages/"}' install.log | bash
    cd /mnt/Packages/
    cp tree-1.5.3-2.el6.x86_64.rpm nmap-5.51-4.el6.x86_64.rpm lrzsz-0.12.20-27.1.el6.x86_64.rpm dos2unix-3.1-37.el6.x86_64.rpm telnet-0.17-48.el6.x86_64.rpm /application/centos6/Packages/
    

     4.初始化repodata信息,创建yum源

    cd /application/centos6/
    yum install -y createrepo
    cp /mnt/repodata/9e2ddcc42b44eb150ebc61dde29c997318d8330b92205b3dbb3a87bcc06d10be-c6-x86_64-comps.xml comps.xml
    createrepo -g comps.xml .
    #comps.xml 记录了包组内rpm包信息和依赖关系
    

     5.添加ks.cfg文件

    vim /application/centos6/isolinux/ks.cfg
    
    #platform=x86, AMD64, or Intel EM64T
    #version=DEVEL
    # Firewall configuration
    firewall --disabled
    # Install OS instead of upgrade
    install
    # Use harddrive installation
    harddrive --partition=/dev/sda4 --dir=.
    # Root password
    rootpw --iscrypted $1$j2xUB1S7$9MW5sEYgcn3P/dqgF0/8L.
    # System authorization information
    auth  --useshadow  --passalgo=sha512
    # Use graphical install
    text
    # System keyboard
    keyboard us
    # System language
    lang en_US.UTF-8
    # SELinux configuration
    selinux --disabled
    # Do not configure the X Window System
    skipx
    # Installation logging level
    logging --level=info
    # Reboot after installation
    reboot
    # System timezone
    timezone  Asia/Shanghai
    # System bootloader configuration
    bootloader --location=mbr
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all --initlabel
    # Disk partitioning information
    part /boot --ondisk=/dev/sdb --asprimary --fstype="ext4" --size=200
    part swap --ondisk=/dev/sdb --asprimary --fstype="swap" --size=1024
    part / --ondisk=/dev/sdb --asprimary --fstype="ext4" --grow --size=1
    
    %packages
    @base
    @compat-libraries
    @debugging
    @development
    tree
    nmap
    lrzsz
    dos2unix
    telnet
    %post
    echo "Welcome to the peter linux system" > /etc/motd
    %end
    

     6.修改isolinux.cfg引导配置文件

    vim /application/centos6/isolinux/isolinux.cfg
    
    label linux
      menu label ^Install or upgrade an existing system
      menu default
      kernel vmlinuz
      append ks=hd:sda4:/isolinux/ks.cfg initrd=initrd.img
    

     7.生成镜像

    yum install -y mkisofs
    mkisofs -R -J -T -v -no-emul-boot -boot-load-size 4 -boot-info-table -V CS66ISO -b isolinux/isolinux.bin -c isolinux/boot.cat -o /application/CentOS-6.6-x86_64-peter.iso /application/centos6/
    

     8.生成ISO文件MD5值

    yum install -y isomd5sum
    implantisomd5 CentOS-6.6-x86_64-peter.iso  
    checkisomd5 CentOS-6.6-x86_64-peter.iso
    #implantisomd5是向iso文件里植入md5值,checkisomd5是检查iso文件里的md5值
    

     9.使用UltraISO制作启动U盘

    #这里还可以使用linux下的isohybrid生成混合iso,然后dd写入的办法制作启动U盘。

    10.使用虚拟机进行测试

     设置虚拟机--》添加磁盘--》添加物理磁盘

    打开高级--》设置U盘为第一启动盘

     

    启动虚拟机,即可自动安装

    注意事项

    1.U盘设为第一启动项后默认识别为/dev/sda4
       如果U盘做成引导盘后又手动进行了分区,那么识别就会以分区为准,比如/dev/sda1
       将可引导ISO转化为混合ISO写入U盘才可以引导,混合ISO不是ISO,所以在isolinux.cfg中
       append ks=hd:sda4:/isolinux/ks.cfg initrd=initrd.img  要写hd:sda4而不是cdrom
    2.当有多块磁盘时需要在ks.cfg中加入--ondisk
       另外,如果U盘分成了引导分区和其他分区,那么也要指定--ondisk,不然U盘上除了引导分区外的其他分区默认也会纳入Linux磁盘分区的范围。
     # Disk partitioning information
       part /boot --ondisk=/dev/sdb --asprimary --fstype="ext4" --size=200
       part swap --ondisk=/dev/sdb --asprimary --fstype="swap" --size=1024
       part / --ondisk=/dev/sdb --asprimary --fstype="ext4" --grow --size=1
    3.ks文件中安装方式要设置为硬盘安装,--partition表示从分区安装  --dir表示从哪个安装树安装,安装树就是包含所有引导安装文件的那个目录
       harddrive --partition=/dev/sda4 --dir=.
       由于直接从centos6这个目录创建了镜像,所以当前目录即为安装树
      
  • 相关阅读:
    《这个杀手不太冷》
    vim 程序编辑器
    wireshark 过滤规则
    使用c函数库的两个函数strtok, strncpy遇到的问题记录
    memset 导致的段错误(segmentation fault)
    LNMP 环境搭建
    cgic 中文文档
    virtualBox 不能开启一个新任务的错误
    PPTP&L2TP&PPPOE client and server configure
    netperf安装及使用
  • 原文地址:https://www.cnblogs.com/Peter2014/p/7609107.html
Copyright © 2020-2023  润新知