免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2444 | 回复: 5
打印 上一主题 下一主题

linux 批量自动化安装实验 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-05-05 13:51 |只看该作者 |倒序浏览
本帖最后由 liutaostdio2 于 2011-05-06 15:56 编辑

网络无人职守安装linux ( 欢迎大家对我做的 http://www.sucha001.com IP查询 )


1 配置启动安装服务器

1)install and configure dhcp service
yum install dchp*
vi /etc/dhcpd.conf
option domain-name "pxe.domain";
ddns-update-style none;

max-lease-time 7200;
server-name "pxe_test_server";
default-lease-time 600;

allow booting;
allow bootp;

subnet 192.168.3.0 netmask 255.255.255.0 {
    range 192.168.3.2 192.168.3.254;
    deny unknown-clients;

}

group pxe {
    filename "pxelinux.0";
    host test_pxe_client1
     {
       hardware ethernet 00:0e:7b:88:15:06; fixed-address 192.168.3.21;
       next-server 192.168.3.1;
       # next-server 一定要加上,否则找不到网卡的适应性文件。
     }
}


#文件 pxelinux.0(在 TFTP 服务器的根目录中)将作为启动映像被网卡ROM里的PXE客户端载入内存并运行。
cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

每增加一台需安装的机器,我们需在dhcpd.conf中增加一条host条目,将客户机的MAC地址输入进去,同时分配一个IP地址,如果
不输入MAC地址,客户机将无法通过DHCP取的IP地址。

2) 安装tftp 服务:
yum install xinetd
yum install tftp-server
yum install tftp



3)install and configure tftp service

/etc/xinetd.d/tftp

service tftp
{
    socket_type     = dgram
    protocol        = udp
    wait            = yes
    user            = root
    server          = /usr/sbin/in.tftpd
    server_args     = -s /tftpboot
    disable         = no
}


#将disable = yes 改成disable = no
重启xinetd服务,以使tftp服务生效;

#service xinetd restart

netstat -an|grep :69  (tftp udp 端口)
netstat -nlp

tftp 语法: tftp 192.168.10.201 get pxelinux.0 (可以做一些简单的文件共享)


2 将启动镜像文件pxelinux.0复制到TFTP服务器根目录,这是客户端机器刚开始启动的时候,pxe协议的引导文件。
启动镜像pxelinux.0可以在syslinux安装包里获得。安装好syslinux安装包后,将pxelinux.0复制到TFTP服务器根目录。
[root@bsvr]#cp /usr/lib/syslinux/pxelinux.0 /tftpboot/

3   将Linux安装程序的内核/根文件系统文件复制到 TFTP 服务器的根目录
[root@bsvr]#cp /mnt/iso/isolinux/initrd.img /tftpboot
[root@bsvr]#cp /mnt/iso/isolinux/vmlinuz /tftpboot

4  nfs install
cp CentOS_5.4_Final.iso /tftpboot/iso/centos5.4_32/


vi /etc/exports
/tftpboot/iso/centos5.4_32    *(rw,no_root_squash)

#service nfs restart

#service nfs reload
#检查共享时候已经正确输出
#showmount –e

5 编辑启动菜单,或安装多个版本的linux
客户端通过pxe协议引导起来之后,会在服务器的/tftpboot/pxelinux.cfg/目录(该目录需要手工建立)下寻找启动配置文件,启动配置文件中定义了应该引导哪个版本的Linux,文件名默认为default,可以将第一张安装光盘中的 /isolinux/isolinux.cfg文件复制到/tftpboot/pxelinux.cfg/,并改名为default,格式写法请参考里面已有的格式。

新建01-00-0e-7b-88-15-06 文件 ,注意以01 打头,后面是客户机的mac地址,用小写。

default linux
label linux
kernel vmlinuz
append ks=nfs:192.168.3.1:/tftpboot/iso/centos5.4_32/ks.cfg initrd=initrd.img devfs=nomount ramdisk_size=9216



6 制作ks.cfg文件,如操作系统安装完后/root/anaconda-ks.cfg
cp /root/anaconda-ks.cfg  /tftpboot/iso/centos5.4_32/ks.cfg
简单修改后如下:
# Kickstart file automatically generated by anaconda.

install
nfs --server=192.168.3.1 --dir=/tftpboot/iso/centos5.4_32
#cdrom
lang en_US.UTF-8
keyboard us
xconfig --startxonboot
network --device eth0 --bootproto static --ip 192.168.3.21 --netmask 255.255.255.0 --gateway 192.168.3.1
rootpw --iscrypted $1$5EemI9ES$txW4ZHxUPIzTh4ZCYS09J1
firewall --enabled --port=22:tcp
authconfig --enableshadow --enablemd5
selinux --enforcing
timezone --utc Asia/Shanghai
bootloader --location=mbr --driveorder=sda --append="rhgb quiet"
# The following is the partition information you requested
# Note that any partitions you deleted are not expressed
# here so unless you clear all partitions first, this is
# not guaranteed to work
#clearpart --linux
# 删除所有分区。
clearpart --all --initlabel
# as Kb
part / --fstype ext3 --size=20000
part swap --size=2000
#part /app --fstype ext3 --size=100 --grow

%packages
@development-libs
@editors
@system-tools
@text-internet
@core
@base
@base-x
@development-tools
audit
sysstat
device-mapper-multipath
xorg-x11-server-Xvfb
imake
gcc-objc
gcc-gnat


7 将客户机从pxe网卡启动,安装linux。

论坛徽章:
0
2 [报告]
发表于 2011-05-05 21:24 |只看该作者
这个意义一般不太大吧
比较大点的公司一般不会使用DHCP,而且撇开VLAN不说,内部防火墙就够呛了

论坛徽章:
0
3 [报告]
发表于 2011-05-06 13:17 |只看该作者
vfloppy

论坛徽章:
0
4 [报告]
发表于 2011-05-06 15:57 |只看该作者
在若干台服务器一起安装的时候,你就会觉得是否方便了。

论坛徽章:
0
5 [报告]
发表于 2011-05-07 04:14 |只看该作者
这应安的是 network --device eth0 --bootproto static --ip 192.168.3.21 --netmask 255.255.255.0 --gateway 192.168.3.1  这台机吧: 192.168.3.21.。

如果还50台机:
192.168.3.22 --- 192.168.3.72
是不是要全写入dhcpd.conf  然后创建50个ks.conf 文件呢?

谢谢

论坛徽章:
12
技术图书徽章
日期:2014-07-11 16:27:5215-16赛季CBA联赛之山西
日期:2016-01-08 16:10:11操作系统版块每日发帖之星
日期:2015-08-01 06:20:002015亚冠之武里南联
日期:2015-06-11 01:12:162015年亚洲杯之阿联酋
日期:2015-03-20 11:41:462015年亚洲杯纪念徽章
日期:2015-03-18 18:08:422015年辞旧岁徽章
日期:2015-03-03 16:54:15丑牛
日期:2015-01-10 22:23:32天秤座
日期:2014-08-20 15:53:35水瓶座
日期:2014-08-11 12:08:51午马
日期:2014-07-23 23:03:38IT运维版块每日发帖之星
日期:2016-02-18 06:20:00
6 [报告]
发表于 2011-05-09 00:28 |只看该作者
不用,只需要将dhcpd.conf 改为

subnet 192.168.3.0 netmask 255.255.255.0 {

# --- default gateway
        option routers                  192.168.3.1;
        option subnet-mask              255.255.255.0;

        option domain-name              "pxe.domain";

        option time-offset              -18000; # Eastern Standard Time

        range dynamic-bootp 192.168.3.2 192.168.3.254;
        default-lease-time 21600;
        max-lease-time 43200;

        filename "pxelinux.0";
        next-server 192.168.3.1;

}
把楼主在 /tftpboot/pxelinux.cfg/ 下面的创建的01-00-0e-7b-88-15-06 文件改名为default。

最后把kickstart文件里面改为

network --bootproto=dhcp --device=eth0 --onboot=on

就OK了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP