运维自动化之系统安装

自动化安装系统,cobbler的安装使用

运维自动化之系统安装

Centos启动流程

加电自检—mbr—grub—kernel—rc.sysinit—-rootfs—-/sbin/init

Anaconda:系统安装程序

Gui:图形窗口

Tui:=基于图形库curses的文本窗口

安装程序启动过程

MBR:在光盘中isolinux/boot.cat(二进制文件)

Stage2第二阶段    Isolinux/isolinux.bin(二进制文件)

配置文件:isolinux/isolinux.cfg(启动页面菜单)(^表示快捷键,光标跳转的位置)(timeout=600定义了超时时长)

加载内核:isolinuz/vmlinuz

向内核传递参数:append initrd=initrd.img …

进入启动界面

按tab键,敲rescue  可以直接进入救援模式

按ese键,1、敲rescue,也可进入救援模式

  • 敲linux  askmethod可以选择安装方式:光盘,网络(http或者ftp)
  • Linux  askmethod  ip=192.168.24.111 netmask=255.255.255.0(指定IP地址,临时使用)
  • Linux  text(字符界面安装)

 

装载根文件系统,并启动anaconda

默认启动GUI接口

若是显式指定使用TUI接口:向内核传递text参数即可

(1)按tab键,在后面增加text

(2)按ESC键:boot: linux text

Anaconda安装系统分成三个阶段: (安装向导)

安装前配置阶段

安装过程使用的语言

键盘类型

安装目标存储设备

Basic Storage:本地磁盘

特殊设备:iSCSI

设定主机名

配置网络接口

时区

管理员密码

设定分区方式及MBR的安装位置

创建一个普通用户

选定要安装的程序包

安装阶段

在目标磁盘创建分区,执行格式化操作等

将选定的程序包安装至目标位置

安装bootloader和initramfs

图形模式首次启动

iptables

selinux

core dump

系统安装

启动安装过程一般应位于引导设备,后续的anaconda及其安装用到的程序包等可来自下面几种方式:

本地光盘

本地硬盘

NFS

URL:

http://yum repostory

ftp://yum repostory

手动指定安装源:boot>  linux  askmethod

Anaconda的配置方式:

  • 交互式配置方式
  • 通过读取事先给定的配置文件自动完成配置

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

Kickstart文件

安装boot引导选项:boot:

vtext: 文本安装方式

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

v与网络相关的引导选项:

ip=IPADDR

netmask=MASK

gateway=GW

dns=DNS_SERVER_IP

ifname=NAME:MAC_ADDR

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

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

官方文档:《Installation Guide》

kickstart文件的格式

在centos7中system-config-kickstart打开没有rpm组,需要将/etc/yum.repos.d/base.repo中的【base】改名为【development】

命令段:指明各种安装前配置,如键盘类型等

程序包段:指明要安装的程序包组或程序包,不安装的程序包等

%packages

@group_name

package

-package

%end

脚本段:

%pre: 安装前脚本

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

%post: 安装后脚本

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

命令段中的命令:

必备命令

authconfig: 认证方式配置

authconfig –useshadow –passalgo=sha512

bootloader:bootloader的安装位置及相关配置

bootloader –location=mbr –driveorder=sda –

append=”crashkernel=auto rhgb quiet”

keyboard: 设定键盘类型

lang: 语言类型

part: 创建分区

rootpw: 指明root的密码

timezone: 时区

可选命令

install OR upgrade

text: 文本安装界面

network

firewall

selinux

halt

poweroff

reboot

repo

user:安装完成后为系统创建新用户

url: 指明安装源

key –skip 跳过安装号码,适用于rhel版本

kickstart文件创建

创建kickstart文件的方式

Ü直接手动编辑

依据某模板修改

Ü可使用创建工具:system-config-kickstart

依据某模板修改并生成新配置

/root/anaconda-ks.cfg

检查ks文件的语法错误:ksvalidator

ksvalidator /PATH/TO/KICKSTART_FILE

系统光盘中isolinux目录列表

vsolinux.bin:光盘引导程序,在mkisofs的选项中需要明确给出文件路径,这个文件属于SYSLINUX项目

visolinux.cfg:isolinux.bin的配置文件,当光盘启动后(即运行isolinux.bin),会自动去找isolinux.cfg文件

vvesamenu.c32:是光盘启动后的安装图形界面,也属于SYSLINUX项目,menu.c32版本是纯文本的菜单

vMemtest:内存检测,这是一个独立的程序

vsplash.jgp:光盘启动界面的背景图

vvmlinuz是内核映像

vinitrd.img是ramfs (先cpio,再gzip压缩)

制作引导光盘和U盘

创建引导光盘:

Ümkdir –pv /app/myiso

Ücp -r /misc/cd/isolinux/ /app/myiso/

Üvim /app/myiso/isolinux/isolinux.cfg

initrd=initrd.img text ks=cdrom:/myks.cfg

Ücp /root/myks.cfg /app/myiso/

Ü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 isolinux/boot.cat -o /root/boot.iso /app/myiso/

注意:以上相对路径都是相对于光盘的根,和工作目录无关

v创建U盘启动盘

Üdd if=/dev/sr0 of=/dev/sdb

注意:制作U盘启动时,可能MBR的512个字节没有,需要用Isohybrid  boot.iso  做格式装换,写入U盘

 

mkisofs选项

v-o 指定映像文件的名称。

v-b 指定在制作可开机光盘时所需的开机映像文件。

v-c 制作可开机光盘时,会将开机映像文件中的 no-eltorito-catalog 全部内容作成一个文件。

v-no-emul-boot 非模拟模式启动。

v-boot-load-size 4 设置载入部分的数量

v-boot-info-table 在启动的图像中现实信息

v-R 或 -rock 使用 Rock RidgeExtensions

v-J 或 -joliet 使用 Joliet 格式的目录与文件名称

v-v 或 -verbose 执行时显示详细的信息

v-T 或 -translation-table 建立文件名的转换表,适用于不支持 Rock Ridge Extensions 的系统上

实验:制作完整版的iso启动

  • 复制光盘内容

cp -rv /misc/cd /app/centos6

  • 将不需要文件删除

find /app/centos6/ -name TRANS.TBL -exec rm {} \;

rm -f /app/centos6/repodata/*

在光盘repodata目录中,有一行没有被压缩的内容,存放着rpm包的信息,不能被删除

Cp /misc/cd/repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml  /app/centos6/repodata/

  • 重新创建rpm包组信息(生成rpm包的元数据)

createrepo -g repodata/43d8fd068164b0f042845474d6a22262798b9f0d1f49ad1bf9f95b953089777d-c6-x86_64-comps.xml ./

  • 查看repodata元数据是否生成
  • 创建应答文件

修改isolinux/isolinux.cfg

启动路径修改为cdrom

  • 制作为光盘文件

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 isolinux/boot.cat -o /root/centos6ks.iso /app/centos6/

  • 用制作成的光盘启动计算机

DHCP服务(Dynamic Host Configure Protocol)

  • 动态主机配置协议
  • 局域网协议,UDP协议
  • 自动分配IP地址给用户,适用于管理严管理
  • DHCP服务必须基于本地
  • 先到先得的原则
  • DHCP服务端用的端口 UDP 67   ,客户端用UDP   68
  • 关闭dhcp client 端口  killall  -9   dhclient

DHCP实现

Linux DHCP协议的实现程序:dhcp, dnsmasq(dhcp,dns)

vDhcp Server

/usr/sbin/dhcpd

/etc/dhcp/dhcpd.conf –> /etc/rc.d/init.d/dhcpd

/etc/dhcp/dhcpd6.conf–> /etc/rc.d/init.d/dhcpd6

/usr/sbin/dhcrelay

/etc/rc.d/init.d/dhcrelay

dhcp server:67/udp

dhcp client: 68/udp

dhcpv6 client:546/udp

Dhcp client

dhclient

自动获取的IP信息: /var/lib/dhclient

DHCP配置文件

全局配置   subnet 192.168.24.0  netmask 255.255.255.0 {

Range 192.168.24.100  192.168.24.200

Option routers 192.168.24.1(网关)

}

host passacaglia {(将IP地址绑定到MAC)

hardware ethernet 0:0:c0:5d:bd:95;

filename “vmunix.passacaglia”;

server-name “toccata.fugue.com”;

}

地址分配记录  /var/lib/dhcpd/dhcpd.leases

dhcpd.conf示例 option domain-name “magedu.com”;

option domain-name-servers 192.168.0.1,8.8.8.8;

default-lease-time 86400;

max-lease-time 86400;

subnet 192.168.100.0 netmask 255.255.255.0 {

range 192.168.100.1 192.168.100.200;

option routers 192.168.100.1;

}

其它配置选项:

filename: 指明引导文件名称

next-server:提供引导文件的服务器IP地址

v示例: TFTP

filename “pxelinux.0”;

next-server 192.168.100.100;

检查语法

service dhcpd configtest

Pxe:(Preboot Excution Environment) 

TFTP用端口  UDP:69

工作原理

基于C/S架构的网络模式,支持远程主机通过网络从远端服务器下载映像,并由此支持通过网络启动操作

DHCP—TFTP—–HTTP服务

1、Client向PXE Server上的DHCP发送IP地址请求消息,DHCP检测Client是否合法(主要是检测Client的网卡MAC地址),如果合法则返回Client的IP地址,同时将启动文件pxelinux.0的位置信息一并传送给Client

2、Client向PXE Server上的TFTP发送获取pxelinux.0请求消息,TFTP接收到消息之后再向Client发送pxelinux.0大小信息,试探Client是否满意,当TFTP收到Client发回的同意大小信息之后,正式向Client发送pxelinux.0

3、Client执行接收到的pxelinux.0文件

4、Client向TFTP Server发送针对本机的配置信息文件(在TFTP 服务的pxelinux.cfg目录下),TFTP将配置文件发回Client,继而Client根据配置文件执行后续操作。

5、Client向TFTP发送Linux内核请求信息,TFTP接收到消息之后将内核文件发送给Client

6、Client向TFTP发送根文件请求信息,TFTP接收到消息之后返回Linux根文件系统

7、Client启动Linux内核

8、Client下载安装源文件,读取自动化安装脚本

Pxe自动化安装centos7

安装前准备:关闭防火墙和SELINUX,DHCP服务器静态IP

v安装软件包

httpd tftp-server dhcp syslinux system-config-kickstart

v配置文件共享服务:

systemctl enable httpd

systemctl start httpd

mkdir /var/www/html/centos/7

mount /dev/sr0 /var/www/html/centos/7

v准备kickstart文件

/var/www/html/ks/centos7.cfg 注意:权限

v配置tftp服务

systemctl enable tftp.socket

systemctl start tftp.socket

实验:PXE安装centos7

  • 安装并启动服务,dhcp   tftp    http
  • 将启动脚本放置到http服务目录下,并进行修改

cp anaconda-ks.cfg  /var/www/html/ksdir/ks7-desktop.cfg

启动方式:url –url=http://192.168.24.130/centos/7

清空磁盘# Partition clearing information

clearpart –all –initlabel

Zerombr

修改完成检查语法

ksvalidator ks7-desktop.cfg

修改权限

Chmod   644   desktop.cfg

在http服务目录下,新建文件夹,将centos系统光盘,挂载到http服务新建文件夹下

Ks7-desktop.cfg文件

#version=DEVEL

# System authorization information

auth –enableshadow –passalgo=sha512

# Use CDROM installation media

url –url=http://192.168.27.7/centos/7

# Use graphical install

firewall –disabled

selinux –disabled

text

reboot

# Run the Setup Agent on first boot

firstboot –disable

ignoredisk –only-use=sda

# Keyboard layouts

keyboard –vckeymap=us –xlayouts=’us’

# System language

lang en_US.UTF-8

# Network information

network  –bootproto=dhcp –device=ens33 –onboot=on –ipv6=auto –activate

network  –hostname=centos7.magedu.com

 

# Root password

rootpw –iscrypted $1$r9hxtxq.$ZPeZrROP984jGsem5pApC/

# System services

services –disabled=”chronyd”

# System timezone

timezone Asia/Shanghai –isUtc –nontp

# X Window System configuration information

xconfig  –startxonboot

# System bootloader configuration

bootloader –location=mbr –boot-drive=sda

# Partition clearing information

zerombr

clearpart –all –initlabel

# Disk partitioning information

part swap –fstype=”swap” –ondisk=sda –size=2048

part /boot –fstype=”xfs” –ondisk=sda –size=1024

part / –fstype=”xfs” –ondisk=sda –size=51200

part /app –fstype=”xfs” –ondisk=sda –size=20480

eula –agreed

%packages

@base

@core

@dial-up

@fonts

@gnome-desktop

@guest-agents

@guest-desktop-agents

@internet-browser

@multimedia

@network-file-system-client

@networkmanager-submodules

@x11

%end

%addon com_redhat_kdump –disable –reserve-mb=’auto’

%end

%anaconda

pwpolicy root –minlen=6 –minquality=1 –notstrict –nochanges –notempty

pwpolicy user –minlen=6 –minquality=1 –notstrict –nochanges –emptyok

pwpolicy luks –minlen=6 –minquality=1 –notstrict –nochanges –notempty

%end

 

%post(脚本文件)

rm -f /etc/yum.repos.d/*

cat > /etc/yum.repos.d/base.repo <<EOF

[base]

name=base

baseurl=http://172.18.0.7/centos/7

gpgcheck=0

EOF

useradd wang

echo magedu | passwd –stdin wang &> /dev/null

systemctl  set-default  multi-user.target(默认以字符界面安装)必须写

systemctl  disable  initial-setup-graphical.service(关闭自动初始化)

必须写

%end

 

 

  • 配置DHCP

vim /etc/dhcp/dhcpd.conf

option domain-name “example.com”;

default-lease-time 600;

max-lease-time 7200;

subnet 192.168.100.0 netmask 255.255.255.0 {

range 192.168.100.1 192.168.100.200;

filename “pxelinux.0”;

next-server 192.168.100.100;

}

  • 在tftp服务目录/var/lib/tftpboot目录下准备文件

安装软件包:syslinux

Cp /usr/share/syslinux/{menu.c32,pxelinux.0} /var/lib/tftpboot

cp /misc/cd/isolinux/{vmlinuz,initrd.img} /var/lib/tftpboot复制光盘文件

cp /misc/cd/isolinux/isolinux.cfg  /var/lib/tftpboot/pxelinux.cfg/default

修改default文件

 

pxelinux.cfg/default

 

 

 

自动化安装centos6

1、安装服务 http  dhcp   tftp-server

2、启动服务Chkconfig   httpd|dhcpd|tftp|xinted   start

添加为开机启动 chkconfig  httpd|dhcpd|tftp   on

Tftp依赖于xinted服务,所以需要启动xinted 服务

  • 准备dhcp

准备dhcp配置文件cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

修改/etc/dhcp/dhcpd.conf

subnet 192.168.24.0 netmask 255.255.255.0 {

range 192.168.24.201 192.168.24.240;

option routers 192.168.24.1;

filename “pxelinux.0”

nameserver 192.168.24.129

}

  • 在http服务/var/www/html目录下创建文件夹,挂载光盘,当做系统的安装路径

Mkdir  -pv   /var/www/html/centos/6

mount /dev/sr0 centos/6/

  • 准备应答文件,放在/var/www/html/ksdir/ks6-mini.cfg

[root@centos6 ksdir]#cat ks6-mini.cfg

# Kickstart file automatically generated by anaconda.

#version=DEVEL

install

text

reboot

url –url=http://192.168.24.129/centos/6

lang en_US.UTF-8

keyboard us

network –onboot yes –device eth0 –bootproto dhcp –noipv6

rootpw –iscrypted $1$j8OHDz.p$.EbKkVrfBkNP6gxC5.aYC1

firewall –disabled

authconfig –enableshadow –passalgo=sha512

selinux –disabled

timezone Asia/Shanghai

bootloader –location=mbr –driveorder=sda –append=”crashkernel=auto 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 –all

zerombr

part /boot –fstype=ext4 –size=1024

part / –fstype=ext4 –size=50000

part /app –fstype=ext4 –size=20000

part swap –size=2048

%packages

@core

@server-policy

@workstation-policy

%end

  • 修改应答文件权限

Chmod   644  ks6-mini.cfg

  • 准备/var/lib/tftpboot/文件夹下的内容

Cp  /usr/share/syslinux/{pxelinux.0,menu.c32}  /var/lib/tftpboot/

Cp  /misc/cd/isolinux/{initrd.img,vmlinuz}  /var/lib/tftpboot/ 内核文件

cp /misc/cd/isolinux/isolinux.cfg pxelinux.cfg/default  菜单目录

cp /misc/cd/isolinux/{}vesamenu.c32,boot.msg,splash.jpg}  /var/lib/tftpboot 菜单图片

 

  • 编辑cfg/default 文件

default vesamenu.c32

#prompt 1

timeout 600

display boot.msg

menu background splash.jpg

menu title PXE Install Centos 6

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

menu label ^Install Desktop system 6

kernel vmlinuz

append initrd=initrd.img

label vesa

menu label Install ^Mini System 6

menu default

kernel vmlinuz

append initrd=initrd.img ks=http://192.168.24.129/ksdir/ks6-mini.cfg

label local

menu label Boot from ^local drive

localboot 0xffff

  • 启动虚拟机,自动安装

自动安装centos6 和 7

自动安装6和7 和单独安装6 ,7步骤一样,只是在/pxelinux.cfg/default文件需要进行修改,例如:

default menu.c32

timeout 600

menu background splash.jpg

label Desktop

menu label ^Install Desktop centos  7

kernel 7/vmlinuz

append initrd=7/initrd.img ks=http://192.168.24.130/ksdir/ks7-desktop.cfg

label vesa

menu label Install Mini system 6

kernel 6/vmlinuz

append initrd=6/initrd.img ks=http://192.168.24.130/ksdir/ks6-mini.cfg

label local

menu default(不选择,默认启动)

menu label Boot from ^local drive

localboot 0xffff

menu end

Cobbler

快速网络安装linux操作系统的服务,支持众多的Linux发行版:Red Hat、Fedora、CentOS、Debian、Ubuntu和SuSE,也可以支持网络安装windows

工作流程

client裸机配置了从网络启动后,开机后会广播包请求DHCP服务器(cobbler server)发送其分配好的一个IP

vDHCP服务器(cobbler server)收到请求后发送responese,包括其ip地址

vclient裸机拿到ip后再向cobbler server发送请求OS引导文件的请求

vcobbler server告诉裸机OS引导文件的名字和TFTP server的ip和port

vclient裸机通过上面告知的TFTP server地址通信,下载引导文件

vclient裸机执行执行该引导文件,确定加载信息,选择要安装的os,期间会再向cobbler server请求kickstart文件和os image

vcobbler server发送请求的kickstart和os iamge

vclient裸机加载kickstart文件

vclient裸机接收os image,安装该os image

配置文件和目录说明

配置文件:/etc/cobbler

启动服务: systemctl  start   cobblerd

/etc/cobbler/settings : cobbler 主配置文件

384行:修改为server: 192.168.24.130(IP指向自己)

274行:修改为next_server:192.168.24.130(指向自己)

/etc/cobbler/iso/: iso模板配置文件

/etc/cobbler/pxe: pxe模板文件

/etc/cobbler/power: 电源配置文件

/etc/cobbler/user.conf: web服务授权配置文件

/etc/cobbler/users.digest: web访问的用户名密码配置文件

/etc/cobbler/dhcp.template : dhcp服务器的的配置末班

/etc/cobbler/dnsmasq.template : dns服务器的配置模板

/etc/cobbler/tftpd.template : tftp服务的配置模板

/etc/cobbler/modules.conf : 模块的配置文件

数据目录

/var/lib/cobbler/config/: 用于存放distros,system,profiles 等信息配置文件

/var/lib/cobbler/triggers/: 用于存放用户定义的cobbler命令

/var/lib/cobbler/kickstart/: 默认存放kickstart文件

/var/lib/cobbler/loaders/: 存放各种引导程序

镜像目录

/var/www/cobbler/ks_mirror/: 导入的发行版系统的所有数据

/var/www/cobbler/images/ : 导入发行版的kernel和initrd镜像用于远程网络启动

/var/www/cobbler/repo_mirror/: yum 仓库存储目录

日志目录

/var/log/cobbler/installing: 客户端安装日志

/var/log/cobbler/cobbler.log : cobbler日志

Cobbler命令介绍

Cobbler check  检查当前设置是否有问题

Cobbler  list   列出所有的cobbler元素

Cobbler  report  列出元素的详细信息

Cobbler  sync  同步配置到数据目录,更改配置最好都要执行下

Cobbler   reposync  同步yum 仓库

Cobbler  distro   查看导入的发行版系统信息

Cobbler  distro  remove –name=      可用于删除菜单选项

Cobbler  system  查看添加的系统信息

Cobbler  profile  查看配置信息

Cobbler   profile   add   可用于添加菜单选项

Remove   删除菜单选项,删除关联文件

Rename   改名字

排错步骤

1、/etc/cobbler/settings : cobbler 主配置文件

384行:修改为server: 192.168.24.130(IP指向自己)

274行:修改为next_server:192.168.24.130(指向自己)

  • cobbler get-loaders 执行命令(需要联网下载,不联网需要拷贝pxelinux.0 和menu.c32文件)
  • 生成加密口令

openssl passwd -1

将生成的加密口令复制到/etc/cobbler/settings文件中,如下

default_password_crypted

$1$7ijO6LEu$zFB/mUJq7XIYjxK3wLb6m/“将引号中口令替换(centos)

Manage_dhcp : 1

Manage_tftpd :1

Pxe_just_once :1 下次重启不在重装系统,不会覆盖系统

用Cobbler管理dhcp

1、修改/etc/cobbler/settings文件中manage_dhcp: 1(将0改为1)

2、按照cobbler提供的模板修改dhcp文件

Vim  /etc/cobbler/dhcp.template

  • 重启cobblerd 服务
  • 同步  cobbler  sync
  • 可以看到已生成conf文件

生成yum源

  • 导入光盘做成yum源

挂载光盘 mount  /dev/sr0  /mnt/centos7

  • cobbler import –path=/mnt/centos7/ –name=centos-7.4 –arch=x86_64

Import  :导入

–path:导入的路径

–name:导入之后的名字

–arch:cpu架构

放置目录: /var/www/cobbler/ks_mirror目录中,文件名两位 –name+–arch

应答文件关联

将自己的应答文件关联到cobbler,当cobbler安装系统的时候用我们自己的应答文件:设置如下

  • /var/lib/tftpboot/pxelinux.cfg/default 改目录下放置启动时菜单文件

用命令 : cobbler  profile  list  可以查看菜单选项

  • 将自己的应答文件拷贝到  /var/lib/cobbler/kickstarts/ 目录下

修改自己的应答文件:

修改安装路径:url –url=$tree

增加菜单名称:cobbler profile add –name=centos7-desktop –distro=centos-7.4-x86_64 –kickstart=/var/lib/cobbler/kickstarts/ks7-desktop.cfg

Cobbler  profile  add :命令加入

–name : 增加入菜单的名字

–distro : 菜单对应的yum安装源

–kickstart :应答文件的放置路径

  • Cobbler  profile  list  可以看到已经加入启动菜单

 

在centos6.9上安装cobbler

  • 安装 httpd ,tftp-server  ,dhcp  ,syslinux
  • 启动服务

Service  httpd|dhcpd |tftpd(xinetd)  start

Tftp依赖于 xinetd 服务,

Chkconfig   tftp  on

Service  xinetd  restart

  • 关闭SELINUX  和防火墙
  • Yum install cobbler cobbler-server
  • Service  cobblerd  start
  • Cobbler check
  • vim /etc/cobbler/settings

server: 192.168.24.129

next_server: 192.168.24.129

  • openssl  passwd  -1 (centos)

将生成口令添加到 /etc/cobbler/settings

default_password_crypted: “$1$GMAJjvpy$E2L30JJH.0BbPyPWKgdjc1”

  • cobbler get-loaders(执行命令下载文件)
  • Cobbler  sync (同步)
  • 配置DHCP

subnet 192.168.24.0 netmask 255.255.255.0 {

range 192.168.24.50 192.168.24.99;

option routers 192.168.24.1;

filename “pxelinux.0”;

next-server 192.168.24.129;

}

  • 重启DHCP服务
  • 将光盘内容导入
  • 将应答文件导入/var/lib/cobbler/kickstarts/目录下,并且修改启动方式  url   –url=$tree
  • 将启动菜单和应答文件和yum源做关联

Cobbler profile add  –name=Centos-6.9-Desktop(启动菜单名字)  –distro=Centos-6.9-x86_6(关联yum源)  –kickstart=/var/lib/cobbler/kickstarts/ks-6-desktop.cfg(应答文件绝对路径)

安装cobbler的WEB界面

  • 给cobbler加管理员:

htdigest -c /etc/cobbler/users.digest Cobbler cobbleradmin

Cobbleradmin管理员登录名字

Cat  /etc/cobbler/users.digest 看到账户已经覆盖原有内容

  • 修改cobbler的验证方式

module = authn_pam

创建cobbler账号

Useradd  -s  /sbin/nologin  cobbleradm

vim /etc/cobbler/users.conf(pam模块的配置文件,验证方法设置)

[admins]

 admin = “cobbleradm”  将创建的用户添加

cobbler = “”

 

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/91139

(0)
燕李鹏燕李鹏
上一篇 2018-01-15
下一篇 2018-01-15

相关推荐

  • Linux网络简单设置

     修改IP地址:临时修改IP地址(centenos 7以前版本)ifconfig eth0 x.x.x.x netmask x.x.x.x                   修改…

    Linux干货 2017-08-19
  • Linux运维初步—-Linux的基础(第一周)

    Linux运维入门初步—第一周 Linux 运维 Linux入门 写作:N27_李伟 2017-7-4 Linux入门之计算机硬件系统组成 Linux是一种计算机操作系统,操作系统简单讲是控制计算机硬件系统和人类进行交互、反馈的重要界面层。通过操作系统的处理,将人的信息通过操作系统界面转换为机器可以理解和执行的机器语言代码,然…

    Linux干货 2017-07-06
  • 笔记

    命令 命令列表 alias 别名 bc 计算器 basename文件基本名 cp 复制 cd 进入文件夹 cat /proc/partition 查看硬盘的使用情况 cat /proc/meminfo 查看内存的使用情况 chvt 切换终端 chown改变文件的所属组 edj:chown -R www /etc/host clock 查询或设置硬件时间 ch…

    Linux干货 2017-05-25
  • linux计划任务

    linux计划任务、周期性任务执行 未来的某时间点执行一次某任务:at,batch 周期性运行某任务:crontab 执行结果: 会通过邮件发送给用户, 存放在/var/spool/mail/UserName ~]# ss -tnl 或者 ~]# netstat -tnlp  查看是否有25号端口打开,来判断本机的邮件服务是否正常打开 本地电子邮件…

    Linux干货 2016-09-19
  • 正则表达式

    正则表达式是一种以一些字符赋予特殊意义之后,用来表达字符串,用以筛选各种形式的字符串用来进行查找、替换、删除等各种文本编辑作用的一种表示方式。 正则表达式的特殊字符 字符表示 .   可以表示任意可打印字符 [] 中括号范围内任意单个字符 [^] 中括号范围外任意单个字符 (相对所有可打印字符) [:space:] 表示任意单个空白字符 [:dig…

    2017-08-03
  • N25-第6周博客作业

    N25-第6周博客作业 vim:     模式化的编辑器         基本模式:             编辑模式,…

    Linux干货 2017-01-09