这一节主要介绍iso镜像制作过程,主要包含两部分
- mkisofs:创建镜像文件 光盘烧录工具
如果终端没有mkisofs指令,需要下载一下,例如ubuntu14.04
apt-get install genisoimage
其他linux系统网上搜一下,教程很多
创建镜像文件指令:mkisofsmkisofs(make iso file system):指令有两种用法,如果你不是用来安装系统那么可以随意一些,类似于文件打包一样,只不过是用的mkisofs指令,生成的是iso文件.还有一种比较重要的用法相信大家或多或少都接触过,那就是重装系统,系统iso制作相对严格一些,下面就这两种用法介绍一下
制作一般的镜像文件
root@ubuntu:~# mkisofs [-o 镜像文件] [-Jrv] [-V vol] [-m file] 待制作文件 -graft-point isodir=systemdir
mkisofs选项与参数:
-o :自定义的镜像文件名
-J :产生较相容于 windows 机器的文件名结构,可增加文件名长度到 64 个 unicode 字符
-r :通过 Rock Ridge 产生支持 Unix/Linux 的文件数据,可记录较多的信息(如 UID/GID等) ;
-v :显示创建 ISO文件的过程
-V vol :类似于标记信息
-m file :-m 为排除文件 (exclude) 的意思,后面的文件不备份到镜像文件中,支持万用字符
-graft-point:待制作文件于生成后的iso镜像文件目录映射关系
mkisofs指令中还有很多其他的选项,这里小编只列出一部分常用的部分,需要了解其他参数的朋友们可以man或者help一下
-r参数可以比较完整的记录需要备份的文件信息(包括UID/GID与权限),所以尽量带上,除此之外,mkisofs指令默认是把所有的待制作文件到放到同一个目录下面,例如,我要把/etc,/home目录下的文件制作iso文件,默认情况下,制作好的iso文件是没有/etc /home目录的,而是把/etc,/home目录下的文件统统放到根目录下
root@ubuntu:~# mkisofs -r -v -o /tmp/test.iso -V “test iso” /etc /home
mkisofs制作一般镜像文件
图很长只截取一部分,下面我们看一下这个iso文件是怎么样的
root@ubuntu:~# mount -o loop /tmp/test.iso /mnt (这个命令忘记了可以参考我的另一篇文章)
挂载ISO镜像文件
看一下这个文件,是不是强迫症犯了,反正小编是受不了,文件太乱了
先解挂 umount /mnt
如果想指定目录存放文件,可以使用-graft-point选项,做待备份文件与镜像文件的映射,-graft-point用法
镜像目录=实际需要备份的目录 /iso/etc=/etc /iso/home=/home上一个例子再次制作一遍
root@ubuntu:~# mkisofs -r -v -o /tmp/test1.iso -V “test iso once” -graft-point /iso/etc=/etc /iso/home=/home
目录映射后的ISO镜像文件
iso是自定义的文件名,这样一看是不是舒服多了,瞬间治愈了多年的强迫症!
以上是制作一般的镜像文件,如果要制作装系统用的iso又该如何做呢
制作装系统用的iso
首先你得有一个纯净版的iso镜像,我准备的是
ubuntu-14.04.1-server-amd64.iso
首先对次iso进行挂载
root@ubuntu:~# mount ubuntu-14.04.1-server-amd64.iso /mnt
mount: block device /root/ubuntu-14.04.1-server-amd64.iso is write-protected, mounting read-only
iso镜像文件挂载出来的文件都是只读模式,无法修改,怎么办呢
root@ubuntu:~# mkdir /tmp/my_iso
root@ubuntu:~# rsync -a /mnt/* /tmp/my_iso/
拷贝镜像文件
root@ubuntu:/tmp/my_iso# mkisofs -J -l -b isolinux/isolinux.bin -no-emul-boot -boot-load-size 4 -boot-info-table -z -iso-level 4 -c isolinux/boot.cat -o /media/my_iso.iso -joliet-long ./
制作安装系统的ISO镜像文件
至此,可以开机启动的iso制作好了,在这个过程中,小编没有对此镜像文件进行更改,有需要的朋友们,可以自定义镜像,添加自己的文件(这就解释了为什么刚装好的镜像会自带一些流氓软件了)
光盘烧录工具至于光盘烧录工具命令行可以实现,客户端也可以实现,目前大多使用客户端,简单方便不易出错,这里介绍几个客户端
- ubuntu:usb-creator-gtk windows:UltraIso软件 终端命令行工具(支持ubuntu,centos):wodim指令
烧录这一步是最简单的,相信稍微有点基础的都可以实现,比较有技术含量的是制作镜像文件,小编已经亲自把流程走了一遍,并且使用virtualbox安装了iso镜像文件,可以正常使用。