使用anaconda实现linux系统自动化安装

系统安装

anaconda的配置方式:

(1) 交互式配置方式

(2) 通过读取事先给定的配置文件自动完成配置

按特定语法给出的配置选项

  • kickstart文件

安装boot引导选项: boot:

text: 文本安装方式

askmethod: 手动指定使用的安装方法

与网络相关的引导选项:

ip=IPADDR
netmask=MASK
gateway=GW
dns=DNS_SERVER_IP
ifname=NAME:MAC_ADDR

与远程访问功能相关的引导选项:

vnc
vncpassword='PASSWORD'

指明kickstart文件的位置: ks=

DVD drive: ks=cdrom:/PATH/TO/KICKSTART_FILE
Hard drive: ks=hd:device:/directory/KICKSTART_FILE
HTTP server: ks=http://host:port/path/to/KICKSTART_FILE
FTP server: ks=ftp://host:port/path/to/KICKSTART_FILE
HTTPS server: ks=https://host:port/path/to/KICKSTART_FILE
NFS server:ks=nfs:host:/path/to/KICKSTART_FILE

启动紧急救援模式:    rescue

kickstart文件的格式          应答文件格式

  • %packages
        @group_name
        package
        -package
    %end

     

脚本段:

%pre: 安装前脚本

           运行环境:运行于安装介质上的微型Linux环境

%post: 安装后脚本

运行环境:安装完成的系统

前言:每个Linux系统安装好后都会在root家目录中生成一个anaconda-ks.cfg的文件

文件中定义了系统安装过程中怎么安装的,做了哪些设置。我们把它叫做应答文件。

[root@localhost ~]# ls

anaconda-ks.cfg install.log install.log.syslog ###我们只看anaconda-ks.cfg

[root@localhost ~]# cat anaconda-ks.cfg

[root@localhost ~]# vi anaconda-ks.cfg

install

                       url --url=http://192.168.161.128/centos/6 (系统安装方式)

lang en_US.UTF-8 时区

keyboard us

network --onboot yes --device eth0 --bootproto static --ip 192.168.161.127 --netmask 255.255.255.0 --noipv6

network --onboot no --device eth1 --bootproto dhcp --noipv6

rootpw --iscrypted $6$7VbfxrP7woZ2w0xT$ETITuXdObm1PyAK7qa8QFza0RU5PW.rqI4EKYDIIC94E5h5KlR5pOnYTWbkXkdAz.NuXxlECLIwJQtMODNBkR1                                                                                        ##(用户加密信息等)

firewall --service=ssh                                                                   ##防火墙

authconfig --enableshadow --passalgo=sha512                      ##加密机制

selinux --enforcing                                                                         ##selinux状态

timezone --utc Asia/Shanghai

...................等信息

%packages
   @core
   @server-policy
   @workstation-policy
   autofs
   vim-enhanced
%end

解释:%packages--------%end中间的表示需要安装的软件包;可以自己添加;我们这里添加了autof、

vim-enhanced(@表示包组)

%post
    useradd wang
    echo root123	|passwd --stdin wang &> /dev/null
    mkdir /etc/yum.repos.d/bak
    mv /etc/yum.repos.d/* /etc/yum.repos.d/bak
    cat 	> /etc/yum.repos.d/base.repo <<EOF
    [base]
    name=base
    baseurl=file:///misc/cd
    gpgcheck=0
EOF



mkdir /root/.ssh
cd > /root/.ssh
cat > /root/.ssh/authorized_keys <<EOF
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAozbYNrUASKvAaW/XMfU6aAsVONulTdWwIuBjaN9y3jFK6lDM8CyG+BQcVGiuLb77ZMuUPwvXi9zkPjEMvzWi9nH452Wt6yNItVz/0U0TtSGPtA1UjApyxb0snUpuQsI5zlYJrtszoSG0fwtz1NBVDru+akIqUZwQeeEFM70O3ab1V+OPN3H2ybdatb6lD5zOHMrg7Oisf21KCDoxkZoCnUusSKvPfPUoVqJ7jClGJVJBRAH9CpxL8YHt1zJE0t7ENA3JIRyJ7fqKgbrqpJRJy86XIr2Yj1T6Bqle5DDYuhNuEZZV5v22d9h0tiGz06jtiEDQWEolpm49+IKLRp2iyw== root@centos6.9 
EOF
chmod 600  /root/.ssh/authorized_keys
chmod 700 /root/.ssh 
%end
[root@localhost html]# ls

centos index.html ks

[root@localhost html]# cd ks

[root@localhost ks]# chmod 066 ks_centos6.cfg              ## 给应答文件加权限

主机B中的应答文件编辑完成;scp ks_centos8.cfg 192.168.161.128:/var/www/html/ks

在主机A中浏览器检测一下

 

第二步:重启B主机

省略一些安装过程图片

到此使用anaconda-ks.cfg应答文件完成自动化系统安装完毕。登录后可以检查应答文件中新增加的用户wang信息,和基于key验证等定义。

第二种方式:使用图形化工具制作anaconda应答文件

需要安装:system-config-kickstart软件

yum install system-config-kickstart

system-config-kickstart                            ##图形化界面可以修改和制作应答文件

检查应答文件语法:ksvalidaror + 应答文件路径/var/www/html/ks/ks_centso6.cfg

******修改应答文件分区表zerombr、#version=DEVEL

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值