一、制作自己的ISO启动盘篇

在需要安装特定系统的时候,我们使用原版的linux系统盘镜像来安装,需要手动操作N多步,在机器非常多的环境下,这种方式显然不理想,这是我我们就需要制作我们特定的系统盘来简化安装,释放双手。

制作自己的ISO启动盘其实很简单,只需要了解iso光盘启动需要加载的文件,然后借助工具制作就可以。

1、创建引导光盘文件

  1. 1、创建一个目录用来存放我们的iso文件
  2. mkdir –pv /app/myiso
  3. 2、将光盘挂载到一个目录下,方便我们复制目录
  4. mount /dev/sr0 /mnt
  5. 3、将光盘启动文件拷贝到我们创建的目录内
  6. cp -r /mnt/ /app/myiso/ #整个光盘复制过去
  7. 4、创建应答文件目录并将应答文件拷贝过去
  8. mkdir /app/myiso/isolinux/ksdir
  9. cp path/ks_file /app/myiso/isolinux/ksdir/ks-mini.cfg #应答文件的创建参见http://blog.vservices.top/myblog/?p=766 第三节
  10. 5、修改linux的启动菜单文件,可以参见http://blog.vservices.top/myblog/?p=766 第二节
  11. vim /app/myiso/isolinux/isolinux.cfg
  12. default vesamenu.c32
  13. timeout 600
  14. display boot.msg
  15. menu clear
  16. menu background splash.png
  17. label linux
  18. menu label ^Install CentOS 7
  19. kernel vmlinuz
  20. append initrd=c7/initrd.img ks=ksdir/ks-mini.cfg
  21. label local
  22. menu default
  23. menu label Boot from ^local drive
  24. localboot 0xffff
  25. 6、删除“/app/myiso/”下的所有 "TRANS.TBL" 文件,该文件会在生成新的iso时重新生成
  26. find /app/myiso/ -name TRANS.TBL -exec rm {} \;
  27. 7、删除 /app/myiso/repodata下除了以'-comps.xml'结尾的所有文件(被排除掉的是包组数据库,这个需要保留)
  28. grep -v '-comps.xml$' /app/myiso/repodata/ | xargs rm -rf
  29. 8、创建新的rpm包数据库
  30. cd /app/myiso/
  31. createrepo -g repodata/38b60f66d52704cffb8696750b2b6552438c1ace283bc2cf22408b0ba0e4cbfa-c7-x86_64-comps.xml ./ #该命令依赖createrepo这个rpm包

2、生成镜像

  1. mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 7 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/c7.iso /app/myiso/
  2. 新的镜像保存在/root下

3、刻录镜像

我们生成的镜像虽然可以引导,但是如果将其刻录到U盘内将不能启动,原因是:刻录后,U盘的MBR是空的。所以准对这种情况我们需要对光盘镜像做一下处理。

处理方法:

  1. 我们需要借助syslinux这个软件包
  2. yum install -y syslinux
  3. 安装好这个包后我们使用一下命令,填充MBR,这样刻入硬盘或U盘是MBR已经做好了引导区
  4. isohybrid /root/c7.iso
  5. 做完这一步,我们就可以查看这个镜像的前512个字节了
  6. hexdump -C -n 512 /root/c7.iso

制作自定义系统iso镜像的更多相关文章

  1. 利用dd命令制作u盘iso镜像

    现在安装系统都是用u盘安装,那么制作u盘的iso镜像就是必须的了.现在此类工具倒是不少,但是,好用的不多,有的还收费.唉,还是用dd吧,老配方,老味道. 首先:要df -h一下,看看u盘的盘符,类似  ...

  2. 从零开始制作一个linux iso镜像

    一.前言     对于一个极简化的linux系统而言,只需要三个部分就能组成,它们分别是一个linux内核.一个根文件系统和引导.以下是本文制作linux iso镜像所用到的系统和软件:     OS ...

  3. Windows 8.1 系统ISO镜像下载或自Win8应用商店升级方法

    1)下载 -- 面向全体用户的Win8.1预览版ISO镜像下载(28日开放): 安装时请输入微软官方提供给大家的产品密钥:NTTX3-RV7VB-T7X7F-WQYYY-9Y92F. 64位简体中文版 ...

  4. Remastersys备份linux系统ISO镜像

    1. 安装Remastersys 利用Ubuntu Software Center安装,修改sources.list文件,在文件末尾加入下面三行,添加软件源, #Rsudo remastersys d ...

  5. xubuntu下制作自定义的ISO文件

    by han; 1.打开命令编辑器,建立文件 # sudo su # mkdir -p /opt/custom_conf/user_custom_conf/config 2.将自定义的设置复制保存到/ ...

  6. 使用debootstrap制作debian-jessie系统docker镜像

    先看一下Docker官网提示:In general, you'll want to start with a working machine that is running the distribut ...

  7. window下从硬盘安装linux系统iso镜像文件的方法

    首先,需要安装grub2win,http://sourceforge.net/projects/grub2win/ 其次,将iso文件放在grub2可识别的分区, 如c:\abc\iso.iso 最后 ...

  8. Centos各版本系统ISO镜像下载地址

    https://www.centos.org/download/mirrors/ 需要在里面一个个看,有些是没有旧版本镜像的 补充: 上面这个方法很难再找到旧版本了 更好的方法如下:以下载Centos ...

  9. 已集成 VirtIO驱动windows server 2012, 2008, 2003的ISO镜像下载

    已集成 VirtIO驱动简体中文windows server 2012, 2008, 2003系统ISO镜像下载地址. 适用于上传自定义ISO并且使用 VirtIO驱动的kvm架构vps,vultr家 ...

随机推荐

  1. PTA一般问题汇总与解答

    在进行PTA作业完成的过程中,大家很积极在完成作业,然后在不懂的地方,有许多的同学也向助教们提出了问题,我们在这里将大家的问题进行了一下汇总然后逐一解答. 1输出中常遇到的问题. 这个图片里我将同学们 ...

  2. EMR日常操作

    1/ 数据root密码修改后emr配置修改: 2/ 添加s3访问 S3:hadoop-aws-2.8.5.jarjar -tfv hadoop-aws-2.8.5.jar |grep S3FileSy ...

  3. luoguP2634聪聪可可(点分治)

    题目链接:https://www.luogu.org/problem/P2634 题意:给一颗树,求距离的模3为0的点对数量,注意(1,1)算一个点对,(1,2)和(2,1)算两个点对. 思路:和点分 ...

  4. 【转帖】NET 的一点历史往事:和 Java 的恩怨

    NET 的一点历史往事:和 Java 的恩怨 https://mp.weixin.qq.com/s?__biz=MzAwNTMxMzg1MA==&mid=2654068672&idx= ...

  5. HORSE PILL--一种新型的linux rootkit

    资料 ppt:https://www.blackhat.com/docs/us-16/materials/us-16-Leibowitz-Horse-Pill-A-New-Type-Of-Linux- ...

  6. Elastic Search的聚合搜索

    就是使用ES提供的aggs语法结果,使用DSL搜索的语法,实现聚合数据的统计,查询.ES中,如果新增document数据的时候,对应的index和type不存在,则自动创建. 1 准备源数据 PUT ...

  7. 6-Perl 标量

    1.Perl 标量标量是一个简单的数据单元.标量可以是一个整数,浮点数,字符,字符串,段落或者一个完整的网页.以下实例演示了标量的简单应用:实例#!/usr/bin/perl$age = 20; # ...

  8. js ajax return false了,仍然会往下执行

    function checkMust(){ var flag=false; $.getJSON("../Ajax/Carton/Ajax_TMSOrder_Create.ashx?r=&qu ...

  9. windows安装npm教程

    1.在使用之前,先类掌握3个东西,明白它们是用来干什么的: npm:  nodejs 下的包管理器. webpack: 它主要用途是通过CommonJS 的语法把所有浏览器端需要发布的静态资源作相应的 ...

  10. Flink概述

    计算引擎 大数据计算引擎分为离线计算和实时计算,离线计算就是我们通常说的批计算,代表是Hadoop MapReduce.Hive等大数据技术.实时计算也被称作流计算,代表是Storm.Spark St ...