CentOS6.5制作一个自动安装的U盘镜像
我的ks文件;装完linux都会生成一个ks文件,就是/root/anaconda-ks.cfg
#version=DEVEL
install
harddrive --partition=/dev/sdb4 --dir=/ #自己的U盘在系统识别的路径,这里需要把U盘当成硬盘模式来使用,不能写cdrom模式
lang zh_CN.UTF-8
keyboard us
#network --onboot no --device em1 --bootproto dhcp --noipv6
#network --onboot no --device em2 --bootproto dhcp --noipv6
#Root password 123456
rootpw --iscrypted $6$63LEOHqaSiJFvaIn$4keLkPUJuUQEoQgpU.Lgqn0CuBujAaM4fsQRBG4C3wAT9c3Vfk0TCgDRTgcu2Xmnd6DSIysUE7KJh8wZGG0uR/
firewall --service=ssh
authconfig --enableshadow --passalgo=sha256
selinux --enforcing
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda,sdb --append=“crashkernel=auto rhgb quiet”
#clearpart --none
#repo --name=“CentOS” --baseurl=hd:/dev/sdb4:/ --cost=100
clearpart --all --initlabel #分区表,根据自己的需求自行修改
part /boot --fstype=“ext4” --size=500
part / --fstype=“ext4” --size=102400
part swap --fstype=“swap” --size=16000
part /logs --fstype=“ext4” --size=200000
part /app --fstype=“ext4” --grow --maxsize=10240000 --size=1
1.以虚拟机为例:先挂载centOS6.5镜像
mount -o loop /dev/cdrom /mnt/
2.复制所有镜像文件
这里缺少2个隐藏文件,在复制下隐藏文件:
3.配置 mbr 引导方式 :
mv /root/ks.cfg /root/centos6.5_ios/isolinux/
chmod 777 ks.cfg
vim /root/centos6.5_ios/isolinux
添加自己的内容,在 isolinux.cfg 文件中 label linux 下面添加自己的 label:指定ks文件的位置
label linux
menu label ^Install AUTO_CentOS6.5
kernel vmlinuz
append initrd=initrd.img inst.ks=hd:sdb4:/isolinux/ks.cfg
4 生成 iso 镜像
yum install genisoimage -y
genisoimage -v -cache-inodes -joliet-long -R -J -T -V CENTOS6.5 -o /root/centos6.5.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 .
注意生成ios镜像:执行genisoimage命令要在/root/centos6.5_ios路径行进行;
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 的系统上。