CentOS 6.9下U盘引导启动+Kickstart无人值守安装操作系统

一、实验目的

利用u盘引导实现无人值守安装CentOS系统,解决系统管理员因服务器无自带光驱的情况下实现u盘引导安装,同时安装系统过程利用网络HTTP网络服务提供安装文件,以达到全程无人值守安装。

二、实验准备

首先需参考光盘里的启动文件,利用启动文件构建一个启动u盘

[root@CentOS6 /mnt/cdrom/isolinux]#ls
boot.cat   initrd.img    memtest     vesamenu.c32
boot.msg   isolinux.bin  splash.jpg  vmlinuz
grub.conf  isolinux.cfg  TRANS.TBL

参考此目录文件制作u盘启动

[root@CentOS6 /mnt/cdrom/isolinux]#mkdir /app/myiso #创建存放光盘启动目录文件夹
[root@CentOS6 /mnt/cdrom/isolinux]#cp * /app/myiso/   #将当前目录下文件复制到myiso文件内
[root@CentOS6 /mnt/cdrom/isolinux]#cd /app/myiso/
[root@CentOS6 /app/myiso]#ls
boot.cat   initrd.img    memtest     vesamenu.c32
boot.msg   isolinux.bin  splash.jpg  vmlinuz
grub.conf  isolinux.cfg  TRANS.TBL

生成 .cfg文件,安装kickstart
# yum install system-config-kickstart

在桌面环境下配置Kickstart

system-config-kickstart

A. 设置语言,键盘,时区,Root密码,安装完毕后重启等。

1.png

B. 设置安装方式,这篇文章介绍的是HTTP方式的安装,故选择HTTP

1.png

C. 安装MBR

1.png

D.设置分区


1.png

E.配置网络

1.png

F. 认证配置


认证服务.png

G. SELinux 和防火墙配置


禁用防火墙.png

H. 图形环境配置


图形环境配置.png

I. 软件包安装选择


安装包.png

J.设置安装后运行脚本


设置安装后运行脚本.png

K.存盘退出


存盘退出.png

打开/var/www/html/ ks6-mini.cfg 文件进行查看并做修改

[root@CentOS7 /var/www/html/centos]#cat ks6-mini.cfg 
#platform=x86, AMD64, or Intel EM64T
#version=DEVEL
# Firewall configuration
firewall --disabled
# Install OS instead of upgrade
install
# Use network installation
url --url="http://172.18.254.65/centos/6" ##这个选项告诉安装程序:到服务器172.18.254.65 的HTTP根目录下的cdrom 文件夹下寻找安装介质
# System authorization information
auth  --useshadow  --passalgo=sha512
# Use graphical install
graphical
firstboot --disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux --disabled
# Installation logging level
logging --level=info

# System timezone
timezone  Asia/Shanghai
# Network information
network  --bootproto=dhcp --device=eth0 --onboot=on
# System bootloader configuration
bootloader --location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart --all  --initlabel #此条命令必须添加,不然系统会让用户手动选择是否清除所有数据,这就需要人为干预了,从而导致自动化过程失败;
# Disk partitioning information
part /boot --fstype="ext4" --size=5000
part / --fstype="ext4" --size=20000
part swap --fstype="swap" --size=2048

%post
rm -rf /etc/yum.repos.d/*
cat > /etc/yum.repos.d/base.repo << EOF
[base]
baseurl=file:///mnt/cdrom
gpgcheck=0
EOF
useradd lai
echo magedu | passwd --stdin lai
%end

%packages
autofs
@core
@workstation-policy
@server-policy
vim
@base

%end

将要生成iso引导启动的isolinux.cfg文件进行修改,以此达到符合启动要求

1 default vesamenu.c32
  2 #prompt 1
  3 timeout 600
  4 
  5 display boot.msg
  6 
  7 menu background splash.jpg
  8 menu title Welcome to CentOS 6.9 Automatic Install!
  9 menu color border 0 #ffffffff #00000000
 10 menu color sel 7 #ffffffff #ff000000
 11 menu color title 0 #ffffffff #00000000
 12 menu color tabmsg 0 #ffffffff #00000000
 13 menu color unsel 0 #ffffffff #00000000
 14 menu color hotsel 0 #ff000000 #ffffffff
 15 menu color hotkey 7 #ffffffff #ff000000
 16 menu color scrollbar 0 #ffffffff #00000000
 17 
 18 label linux
 19   menu label Install an ^Mini system
 20   kernel vmlinuz
 21   append initrd=initrd.img ks=http://172.18.254.65/ks6-mini.cfg #应答文件
 22 label desktop
 23   menu label Install an ^desktop system
 24   kernel vmlinuz
 25   append initrd=initrd.img ks=http://172.18.254.65/ks6-desktop.cfg #应答文件
 26 label local
 27   menu default
 28   menu label Boot from ^local drive
 29   localboot 0xffff

指定/app/myiso目录与文件制作成ISO 9660格式镜像文件

[root@CentOS6 /app]#mkisofs -R -J -T -v --no-emul-boot --boot-load-size 4 --boot-info-table -V "CentOS 6.9 x86_64 boot" -b isolinux/isolinux.bin -c  4 --boot-info-table -V "CentOS 6.9 x86_64 boot" -b isolinux/isolinux.bin -c isolinux/boot.cat -o /root/centos6_boot.iso /app/myiso/
I: -input-charset not specified, using utf-8 (detected in locale settings)
genisoimage 1.1.9 (Linux)
Scanning /app/myiso/
Scanning /app/myiso/isolinux
Excluded: /app/myiso/isolinux/TRANS.TBL
Excluded by match: /app/myiso/isolinux/boot.cat
Writing:   Initial Padblock                        Start Block 0
Done with: Initial Padblock                        Block(s)    16
Writing:   Primary Volume Descriptor               Start Block 16
Done with: Primary Volume Descriptor               Block(s)    1
Writing:   Eltorito Volume Descriptor              Start Block 17
Size of boot image is 4 sectors -> No emulation
Done with: Eltorito Volume Descriptor              Block(s)    1
Writing:   Joliet Volume Descriptor                Start Block 18
Done with: Joliet Volume Descriptor                Block(s)    1
Writing:   End Volume Descriptor                   Start Block 19
Done with: End Volume Descriptor                   Block(s)    1
Writing:   Version block                           Start Block 20
Done with: Version block                           Block(s)    1
Writing:   Path table                              Start Block 21
Done with: Path table                              Block(s)    4
Writing:   Joliet path table                       Start Block 25
Done with: Joliet path table                       Block(s)    4
Writing:   Directory tree                          Start Block 29
Done with: Directory tree                          Block(s)    2
Writing:   Joliet directory tree                   Start Block 31
Done with: Joliet directory tree                   Block(s)    2
Writing:   Directory tree cleanup                  Start Block 33
Done with: Directory tree cleanup                  Block(s)    0
Writing:   Extension record                        Start Block 33
Done with: Extension record                        Block(s)    1
Writing:   The File(s)                             Start Block 34
 21.93% done, estimate finish Fri Sep 15 10:59:56 2017
 43.79% done, estimate finish Fri Sep 15 10:59:54 2017
 65.71% done, estimate finish Fri Sep 15 10:59:53 2017
 87.57% done, estimate finish Fri Sep 15 10:59:53 2017
Total translation table size: 4483
Total rockridge attributes bytes: 1360
Total directory bytes: 2048
Path table size(bytes): 26
Done with: The File(s)                             Block(s)    22658
Writing:   Ending Padblock                         Start Block 22692
Done with: Ending Padblock                         Block(s)    150
Max brk space used 0
22842 extents written (44 MB)
[root@CentOS6 ~]#file centos6_boot.iso 
centos6_boot.iso: ISO 9660 CD-ROM filesystem data 'CentOS 6.9 x86_64 boot' (bootable)

测试镜像能否正确引导

选择镜像文件.png
成功引导.png

安装成功

image.png

正确引导安装成功后,我们既可将引导镜像灌入至u盘
dd if=/dev/sr0 of=/dev/sdb
(注意:dd 后建议sync确保文件写入磁盘)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 217,657评论 6 505
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,889评论 3 394
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,057评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,509评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,562评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,443评论 1 302
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,251评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,129评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,561评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,779评论 3 335
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,902评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,621评论 5 345
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,220评论 3 328
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,838评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,971评论 1 269
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,025评论 2 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,843评论 2 354

推荐阅读更多精彩内容