CentOS7全自动安装光盘制作详解

  • CentOS7全自动安装光盘制作详解

    1 复制光盘文件

    1 )挂载 iso 镜像

    创建目录用于挂载光盘:

    perl">
    mkdir /root/centos7

    挂载 iso 镜像

    mount -o loop CentOS-7.0-1406-x86_64-DVD.iso/root/centos7

    2 )复制光盘文件到编辑目录进行编辑

    因为挂载上 iso 镜像是只读的,如果要编辑,需要将文件复制出来,再编辑。

    首先创建编辑目录:

    mkdir /root/centos7_iso

    复制光盘文件:

    cp -rf /root/centos7/* /root/centos7_iso/

    diskinfo 文件需求单独拷贝下:

    cp /root/centos7/.discinfo /root/iso

    2 编辑 ks.cfg 文件

    系统安装的时候,按照 ks.cfg 文件的内容进行安装,我们把 ks.cfg 文件放到 isolinux 目录下:

    cd /root/centos7_iso/isolinux
    vim ks.cfg

    我的 ks.cfg 文件内容如下:

    #version=RHEL/CentOS7 by xiaoli110
    install
    # Keyboard layouts
    keyboard ‘us‘
    # Reboot after installation
    reboot
    # Run the Setup Agent on first boot
    firstboot --enable
    ignoredisk --only-use=sda
    # Keyboard layouts
    keyboard --vckeymap=us --xlayouts=‘cn‘
    # System language
    lang zh_CN.UTF-8
    # Network information
    #network --bootproto=dhcp --device=enp2s0 --onboot=off --ipv6=auto
    #network --bootproto=dhcp --device=enp3s0 --onboot=off --ipv6=auto
    #network --hostname=localhost.localdomain
    # Root password
    rootpw --iscrypted 111111111111111111111111111
    # System timezone
    timezone Asia/Shanghai
    # System language
    lang zh_CN
    # Firewall configuration
    firewall --enabled --ssh
    
    # System authorization information
    auth --useshadow  --passalgo=sha512
    # Use CDROM installation media
    cdrom
    # Use graphical install
    graphical
    # SELinux configuration
    selinux --disabled
    # Do not configure the X Window System
    skipx
    # System bootloader configuration
    bootloader --location=mbr
    # Clear the Master Boot Record
    zerombr
    # Partition clearing information
    clearpart --all
    # Disk partitioning information
    part /boot --fstype="xfs"--size=500
    part /boot/efi --fstype="xfs"--size=500
    part swap --fstype="swap"--size=16000
    part / --fstype="xfs" --grow--size=1
    
    %packages
    @base
    @core
    @development
    @hardware-monitoring
    @performance
    @remote-system-management
    %end

    注意:

    1 )因为 CentOS7 系统网卡规则更复杂,为了 ks.cfg 更通用,最好 ks.cfg 不用制定网卡配置。

    2 )为了兼容 mbr 方式和 EFI 方式,同时创建了 /boot 和 /boot/efi 分区。

    3 配置 mbr 引导方式

    编辑 isoliuux 目录下的 isolinux.cfg 文件,添加自己的内容,在 isolinux.cfg 文件中 label linux 下面添加自己的label :

    javascript">
    label linux
     menu label ^Install CentOS 7
     kernel vmlinuz
     append initrd=initrd.img inst.stage2=hd:LABEL=CENTOS7 quiet
    
    label custom
     menu label ^Custom CentOS 7 by xiaoli110
     kernel vmlinuz
     append initrd=initrd.img inst.stage2=hd:LABEL=CENTOS7 inst.ks=cdrom:/isolinux/ks.cfg

    注意点:

    1 ) memu label 后面的内容是在光盘引导起来菜单的内容, ^ 后面的字母是菜单的快捷键;

    2 )通过 inst.ks 关键字指明 ks.cfg 文件位置;

    3 ) inst.stages2 标识的是系统按照介质位置,这里使用 hd:LABEL 表明寻找的是 label 为 CENTOS7 的安装介质,使用 LABEL 关键字的好处是可以精确指定安装介质,为什么 label 是 CENTOS7 ,是因为我在制作光盘镜像的时候指定的,方法在后面有介绍。

    4 配置 EFI 引导方式

    1 ) EFI 简介

    EFI 可扩展固件接口( ExtensibleFirmware Interface 的缩写),是英特尔主导推出的一种替代 BIOS 的升级方案。最早由英特尔开发,于 2005 年将此规范格式交由 UEFI 论坛来推广与发展,后来并更改名称为 Unified EFI(UEFI) 。 UEFI 论坛于 2007 年 1 月 7 日释出并发放 2.1 版本的规格,其中增加与改进了加密编码(cryptography )、网络认证( network authentication )与用户接口架构( User Interface Architecture )。

    EFI 是用模块化, C 语言风格的参数堆栈传递方式,动态链接的形式构建的系统,较 BIOS 而言更易于实现,容错和纠错特性更强,缩短了系统研发的时间。

    EFI 在概念上非常类似于一个低阶的操作系统,并且具有操控所有硬件资源的能力。

    2 )配置 EFI 引导

    进入光盘目录 EFI/BOOT/ ,编辑 grub.cfg 文件,添加自己的菜单:

    menuentry ‘Install CentOS 7‘ --class fedora--class gnu-linux --class gnu --class os {
      linuxefi /images/pxeboot/vmlinuz inst.stage2=hd:LABEL=CENTOS7 quiet
      initrdefi /images/pxeboot/initrd.img
    }
    menuentry ‘Install CentOS 7 custom byxiaoli110‘ --class fedora --class gnu-linux --class gnu --class os {
      linuxefi /images/pxeboot/vmlinuz inst.ks=cdrom:/isolinux/ks.cfginst.stage2=hd:LABEL=CENTOS7 quiet
      initrdefi /images/pxeboot/initrd.img
    }
    

    和 mbr 方式类似,指明 ks.cfg 文件位置和安装源位置。

    5 生成 iso 镜像

    经过我踩过多个坑,成功的生成镜像,并且能在 EFI 和 mbr 环境安装的镜像生成命令如下:

    genisoimage -v -cache-inodes -joliet-long -R -J -T -V CENTOS7 -o /root/centos7.iso    -c isolinux/boot.cat    -bisolinux/isolinux.bin      -no-emul-boot -boot-load-size 4-boot-info-table    -eltorito-alt-boot     -b images/efiboot.img       -no-emul-boot .

    ( 1 )中间踩过的几个坑:

    1 )制作镜像要使用 CentOS7 的系统,不要使用 CentOS6 的系统,因为两者系统的 genisoimage 命令的版本不一样, 6 的系统制作出来的 iso 不能在 efi 环境启动;

    2 )如果要在 efi 启动,需要添加如下参数:

     -eltorito-alt-boot     -bimages/efiboot.img       -no-emul-boot

    3 )通过 -V 参数指定光盘 label

    ( 2 ) genisoimage 命令参数简介

    -o 指定映像文件的名称。

    -b 指定在制作可开机光盘时所需的开机映像文件。

    -c 制作可开机光盘时,会将开机映像文件中的 no-eltorito-catalog 全部内容作成一个文件。

    -no-emul-boot 非模拟模式启动。

    -boot-load-size 4 设置载入部分的数量。

    -boot-info-table 在启动的图像中现实信息。

    -joliet-long 使用 joliet 格式的目录与文件名称,长文件名支持。

    -R 或 -rock    使用 Rock RidgeExtensions 。

    -J 或 -joliet    使用 Joliet 格式的目录与文件名称。

    -v 或 -verbose    执行时显示详细的信息。

    -T 或 -translation-table    建立文件名的转换表,适用于不支持 Rock Ridge Extensions 的系统上。

    ( 3 ) genisoimage 、 mkisofs 、 xorrios 几个命令的区别

    说起 genisoimage 和 mkisofs ,其实里面是有点故事的。

    最早的时候, Linux 系统使用 cdrtools 工具来管理 iso 及光盘, mkisofs 是 cdrtools 里面的一个工具,后来cdrtools 更好了了授权许可,从 GPL 修改为 CDDL 许可,开源社区又推出了一套基于 GPL 的工具, cdrkit ,mkisofs 也被 genisoimage 去掉,现在系统中的 mkisofs 实际是 genisoimage 的软连接:

    ls -l /usr/bin/mkisofs
    /usr/bin/mkisofs ->/etc/alternatives/mkisofs
    ls -l /etc/alternatives/mkisofs
    /etc/alternatives/mkisofs ->/usr/bin/genisoimage

    xorrios 是另外一个比较流行的制作 iso 镜像的工具,并且有一个参数 -asmkisofs 可以和 mkiso 命令兼容。

时间: 2024-10-13 09:31:31

CentOS7全自动安装光盘制作详解的相关文章

CentOS 7.1全自动安装光盘制作详解

安装系统的话,常用方式就是通过U盘,光盘,kickstart网络自动化安装,网络自动化安装固然好,但是有时候在现场做项目的话根本就没有kickstart环境,甚至连基本的网络建设都没有弄好,此时该如何安装系统呢,通过u盘或者光盘,手动安装的话需要很多选项要自己填写,那么我们能不能把自动化的ks环境做到系统镜像里面去呢,答案是很定的,接下来我们就来介绍CentOS 7.1全自动安装光盘制作 第一步我们挂载原始光盘镜像,假如挂载点是/mnt/cdrom,然后做如下操作 cp -ar /mnt/cdr

CentOS7/RHEL7安装Redis步骤详解

CentOS7/RHEL7安装Redis步骤详解 CentOS7/RHEL7安装Redis还是头一次测试安装了,因为centos7升级之后与centos6有比较大的区别了,下面我们就一起来看看CentOS7/RHEL7安装Redis步骤详解 方法一:使用命令安装(前提是已经安装了EPEL). 安装redis: yum -y install redis 启动/停止/重启 Redis启动服务:1systemctl start redis.service停止服务: systemctl stop red

centos7.0 安装日志--图文详解-python开发环境配置

centos7.0发布之后,就下载了everthing的DVD镜像,今天有时间,所以决定在vbox底下体验一番--- 上图: 默认是体验安装,作为一个忠实粉丝,我决定选择直接安装! 这个界面是这次新版本更新后改的,它把以前要下一步.上一步可以修改的操作全部集中到一个页面来,默认选择是下图这样,比如你想修改软件安装选项只要点击相应选项就可以了. 每次你更改安装选项之后,它都会自动从新计算安装源,如果你的选择的资源本地没有,还可以通过网络来安装,默认网络是不启用的,所以我们需要自己手工设置一下网络.

Centos7下安装tomcat(详解带图)。

Linux下安装Tomcat.1.首先需要安装他的依赖包jdk并配置Java.我们去浏览器搜索Java,并找到下载页面.然后运用wget进行下载如下图:注:需要把红色箭头标注的地方选中才可以进行复制链接.2.接下来把下载好的安装包解压.我是解压到了/data/server.3.接下来我们修改/etc下的配置文件(配置环境变量)vi /etc/profile然后 :wq退出并保存.保存之后通过source /etc/profile命令使修改的配置生效.然后java -version,检测版本,看是

centos7.2 安装zabbix3.0详解

关闭防火墙: systemctl stop firewalld.service systemctl disable firewalld.service 关闭selinux: [[email protected] ~]# setenforce 0 [[email protected] ~]# sed -i'/SELINUX/s/enforcing/disabled/' /etc/selinux/config 配置yun源 rpm -ivh http://repo.zabbix.com/zabbix

红帽7制作全自动安装光盘

环境: VMware 12操作系统: redhat enterprise 7.3 全自动安装光盘 也就是把光盘放进去,开机,等..................,然后就安装(操作系统)完毕了! 好,那么怎么做呢?先来看下光盘的结构:images 文件系统镜像,可用它来生成用来启动红帽7 Linux 安装的引导介质Packages 一大堆RPM包repodata 解决依赖的LiveOS 里面是个很关键的img(images里面也是这种文件)isolinux 这是核心,里面有initrd.img

在虚拟机里安装VMwareTools工具(详解)

首先要确保 你当前 虚拟机这款软件 是否是正常版本, 因为有些虚拟机软件 简体版,导致无法安装VMwareTools工具. 如果没有问题,就可以进入正题了: 1. 在菜单栏里,选择虚拟机菜单的子菜单安装VMwareTools, 此时你会发现 Linux系统里多了一个VMwareTools光盘, 打开之后,就会发现 有一个压缩包:VMwareTools-5.5.3-34685.tar.gz, 将这个压缩包 复制到 /tmp 目录下,在地址栏里输入/tmp 按回车键,即可转入到/tmp 目录了, 然

虚拟机VMware下CentOS6.6安装教程图文详解

分享下,虚拟机VMware下CentOS6.6安装教程图文详解. CentOS 6.6 发布下载 地址: http://www.linuxidc.com/Linux/2014-10/108554.htm 1.首先要下载一个centos的iso镜像,我是用虚拟机VMware来安装的,用VMware最好创建一个空白硬盘. 2.创建完毕再设置里面挂载iso的centos系统文件. 3.进入到这个页面: 说明: 1.install or upgrade an existing system安装或升级现有

varnish安装及配置详解

varnish系统架构: varnish主要运行两个进程:Management进程和Child进程(也叫Cache进程). Management进程主要实现应用新的配置.编译VCL.监控varnish.初始化varnish以及提供一个命令行接口等.Management进程会每隔几秒钟探测一下Child进程以判断其是否正常运行,如果在指定的时长内未得到Child进程的回应,Management将会重启此Child进程. Child进程包含多种类型的线程,常见的如:Acceptor线程:接收新的连接