设为首页 收藏本站
查看: 1059|回复: 0

[经验分享] Linux无人值守自动安装详细配置流程

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2016-5-26 09:11:16 | 显示全部楼层 |阅读模式
以下配置流程均在CentOS 6.7实现


实验环境:
PXE + httpd + dhcp + tftp-server + kickstart

实现环境:
    PXE+httpd + dhcp + tftp-server + kickstart

简单介绍相关概念:
    PXE:是一种安装方式,支持通过网络引导,访问服务器的文件来安装系统,需要网卡支持

    http:文件服务器,存放系统ISO文件

    dhcp:实现客户机地址分配

    tftp:存放PXE相关的文件的服务器

    kickstart:是安装程序anaconda的安装配置文件

    注意:若没有PXE相关文件,如pxelinux.0,则需要安装syslinux


1.配置文件服务器,http文件服务器
     安装httpd并设置开机启动

1
2
3
4
5
6
7
8
9
10
11
12
[iyunv@johnson_linux ~]# yum install httpd
======================================================================================
软件包                            架构                       版本                                       仓库                         大小
=======================================================================================
正在安装:
httpd                             x86_64                     2.2.15-47.el6.centos.4                     updates                     831 k
为依赖而安装:
apr-util-ldap                     x86_64                     1.3.9-3.el6_0.1                            base                         15 k
httpd-tools                       x86_64                     2.2.15-47.el6.centos.4                     updates                      77 k

#设置开机启动
[iyunv@johnson_linux ~]# chkconfig httpd on




挂载光盘并复制光盘的所有内容至/var/www/html目录下

我这边挂载点是/madia/dvd1,挂载点可自行创建目录

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#挂载光盘
root@johnson_linux ~]# mount /dev/cdrom /media/dvd1

#看一下挂在后光盘的内容
[iyunv@johnson_linux ~]# ls /media/dvd1
CentOS_BuildTag  isolinux                RPM-GPG-KEY-CentOS-Debug-6
EFI               Packages            RPM-GPG-KEY-CentOS-Security-6
EULA             RELEASE-NOTES-en-US.html  RPM-GPG-KEY-CentOS-Testing-6
GPL               repodata            TRANS.TBL
images             RPM-GPG-KEY-CentOS-6

#cp光盘内容至/var/www/html目录
[iyunv@johnson_linux ~]# cp -r /media/dvd1 /var/www/html

#我把文件夹改名为centos6.7方便辨认
[iyunv@johnson_linux ~]# mv /var/www/html/dvd1 /var/www/html/centos6.7





2.配置tftp服务器:
安装tftp-server并设置开机启动

1
2
3
4
5
6
7
8
9
10
11
[iyunv@johnson_linux ~]# yum install tftp-server
=====================================================================================
Package              Arch            Version               
=====================================================================================
Installing:
tftp-server          x86_64          0.49-7.el6               
Installing for dependencies:
xinetd               x86_64          2:2.3.14-39.el6_4      

Transaction Summary
=====================================================================================



创建tftpboot文件夹

1
[iyunv@johnson_linux ~]# mkdir /tftpboot



将以下这些文件复制到tftpboot目录下

boot.msg  initrd.img  pxelinux.0  vmlinuz isolinux.cfg

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#复制boot.msg
[iyunv@johnson_linux ~]# cp /var/www/html/centos6.7/isolinux/boot.msg /tftpboot

#复制initrd.img
[iyunv@johnson_linux ~]# ls /var/www/html/centos6.7/images/pxeboot/initrd.img /tftpboot

#复制 vmlinuz
[iyunv@johnson_linux ~]# cp /var/www/html/centos6.7/images/pxeboot/vmlinuz /tftpboot

#复制pxelinux.0
[iyunv@johnson_linux ~]# cp /usr/share/syslinux/pxelinux.0 /tftpboot

#创建pxelinux.cfg目录
[iyunv@johnson_linux ~]# mkdir /tftpboot/pxelinux.cfg

#复制isolinux.cfg文件到/tftpboot目录并改名为default
[iyunv@johnson_linux ~]# cp /var/www/html/centos6.7/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default




配置default文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
default linux    # 修改为下面的label名字
#prompt 1
timeout 1

display boot.msg

menu background splash.jpg
menu title Welcome to CentOS 6.7!
menu color border 0 #ffffffff #00000000
menu color sel 7 #ffffffff #ff000000
menu color title 0 #ffffffff #00000000
menu color tabmsg 0 #ffffffff #00000000
menu color unsel 0 #ffffffff #00000000
menu color hotsel 0 #ff000000 #ffffffff
menu color hotkey 7 #ffffffff #ff000000
menu color scrollbar 0 #ffffffff #00000000

label linux    # 此处label名对应上面的default
  menu label ^Install or upgrade an existing system
  menu default
  kernel vmlinuz
  append initrd=initrd.img ks=172.18.0.144      # 添加ks文件的地址



配置/etc/xinetd.d/tftp

修改以下两处即可

1
2
3
4
5
6
7
8
9
10
11
12
13
service tftp
    {
        socket_type     = dgram
        protocol        = udp
        wait            = yes
        user            = root
        server          = /usr/sbin/in.tftpd
        server_args     = -s /tftpboot  ------#修改为自己创建的目录路径
        disable         = no        ------#此处的yes改为no
        per_source      = 11
        cps             = 100 2
        flags           = IPv4
    }




最后重启tftp服务

1
2
3
4
5
6
[iyunv@localhost ~]# service xinetd restart
Stopping xinetd:                                           [  OK  ]
Starting xinetd:                                           [  OK  ]

#设置开机启动
[iyunv@localhost ~]# chkconfig xinetd on





3.配置dhcp服务器
安装dhcp并设置开机启动

1
2
3
4
5
6
7
8
9
10
[iyunv@localhost ~]# yum inatall dhcp

=====================================================================================
Package      Arch           Version                              Repository    Size
=====================================================================================
Installing:
dhcp         x86_64         12:4.1.1-49.P1.el6.centos            base         822 k

Transaction Summary
====================================================================================



编辑/etc/dhcp/dhcpd.conf

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
  # dhcpd.conf

    ddns-update-style none;

    next-server 172.18.0.144;                 #tftp地址

    filename "pxelinux.0";              # PXE文件名

    subnet 172.18.0.0 netmask 255.255.0.0 {   # 设定子网

    range  172.18.0.0 172.18.200.200;         # 设定可分配的子网范围

    option routers 172.18.0.1;                # 配置路由网关

    }





4.配置kickstart文件
安装system-config-kickstart.noarch   

1
[iyunv@johnson_linux ~]# yum install system-config-kickstart.noarch




在图形终端打开命令行窗口键入命令system-config-kickstart启动配置窗口

wKiom1b72y-CnGS0AAG6cgmSKBM187.png 基本配置

wKiom1b72zmhHZpcAAGh_fCRebE734.png


引导选项配置

wKioL1b73S_ikxRGAAFxHY9r8NQ296.png


分区配置

wKiom1b73KPD6y4zAAGdPxMO60U283.png


网络配置

wKiom1b73WqQ2XlRAAFDupJkWOc412.png


加密配置

wKioL1b73hKh3Sg5AAEi9NKIIsk799.png


防火墙配置

wKiom1b73gvh7zRbAAEW7_XLvRc801.png


显示配置

wKiom1b73g-yHxADAADi2OpDdtQ742.png

安装包选择

wKioL1b73wPhEbvQAAGh4TNQu40780.png


安装脚本配置

wKiom1b73maRPlDYAAE9TvN5sAc652.png


保存退出,文件名ks.cfg   

wKioL1b73yKB_cBwAAERhjB0fCw154.png


最后将生成的ks.cfg文件放在/var/www/html目录下即可

至此自动化安装环境配置完毕


    使用虚拟器实验一定要将网络设置为桥接,否则服务无法连接dhcp服务器

关于ks文件的配置,想尝试去自己去编写,可以查考anaconda生成的anaconda-ks.cfg文件,就在root的家目录下


贴上我的ks文件:(以下ks文件以马哥的为范本做了简要的修改)

#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.17.2/centos6.7
# Root password
rootpw –iscrypted $1$Ga8vc8m.$fmBL3Rail7oAeErVtJM/9/
# System authorization information
auth  –useshadow  –passalgo=sha512
# Use text mode install
text
firstboot –disable
# System keyboard
keyboard us
# System language
lang en_US
# SELinux configuration
selinux –disabled
# Installation logging level
logging –level=info
# Reboot after installation
reboot
# System timezone
timezone  Asia/Shanghai
# Network information
network  –bootproto=dhcp –device=eth0 –onboot=on
# System bootloader configuration
bootloader –append=”quiet” –location=mbr
# Clear the Master Boot Record
zerombr
# Partition clearing information
clearpart –all
# Disk partitioning information
part /boot –fstype=”ext4″ –size=200
part pv.008 –size=61440

volgroup vg0 –pesize=8192 pv.008
logvol / –fstype=ext4 –name=root –vgname=vg0 –size=20480
logvol swap –name=swap –vgname=vg0 –size=2048
logvol /usr –fstype=ext4 –name=usr –vgname=vg0 –size=10240
logvol /var –fstype=ext4 –name=var –vgname=vg0 –size=20480

%post
# set hostname
sed -i ‘s@HOSTNAME=.*@HOSTNAME=johnson_linux.server@’ /etc/sysconfig/network

# set hosts
echo “172.18.17.2 johnson_server” >> /etc/hosts

%end

%packages
@base

%end

    总结:ks文件配置比较重要,也是比较有技术含量的一环,网络环境配置可以按部就班,但是ks文件却需要自己去定制,能读懂ks文件是关键,用system-config-kickstart来生成的ks文件也有不足之处,比如分区,就不能使用LVM,需要用到逻辑卷需要自己手动去编写ks文件


wKioL1b73yKB_cBwAAERhjB0fCw154.jpg
wKiom1b73maRPlDYAAE9TvN5sAc652.jpg
wKioL1b73wPhEbvQAAGh4TNQu40780.jpg
wKiom1b73g-yHxADAADi2OpDdtQ742.jpg
wKiom1b73gvh7zRbAAEW7_XLvRc801.jpg
wKioL1b73hKh3Sg5AAEi9NKIIsk799.jpg
wKiom1b73WqQ2XlRAAFDupJkWOc412.jpg
wKiom1b73KPD6y4zAAGdPxMO60U283.jpg
wKioL1b73S_ikxRGAAFxHY9r8NQ296.jpg
wKiom1b72zmhHZpcAAGh_fCRebE734.jpg
wKiom1b72y-CnGS0AAG6cgmSKBM187.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-221939-1-1.html 上篇帖子: Unison+inotify实现两个主机目录之间的数据双向同步 下篇帖子: Centos中vim的配置 Linux
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表