网络及cobbler安装linux系统
网卡启动(PXE网卡)(内置dhcp客户端 --> tftp客户端)
TFTP(UDP69端口)内置在网卡中。(TFTP、telnet协议为非独立服务,依靠xinetd、systemd来激活)(tftp客户端 tftp-server 服务端)
TFTP只有5个指令可执行:rrq wrq data ack error
PXE工作原理:
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.o大小信息,试探clent是否满意,当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下载安装源文件,读取自动化安装脚本。
TFTP的配置文件
TFTP共享目录
设置开机启动。。
(通过光盘内isolinux.cfg(启动菜单)目录列表选择启动选项,再加载内核及虚拟文件系统,内核(内核自带)再启动anaconda,读取ks.cfg文件)
配置dhcp服务指向下载pxelinux.0(bootloader446字节)的地址:tftp服务端的路径
next-server ******;
filename "pxelinux.0";(bootloader) (syslinux包提供) (locate ..... ; updatedb)
拷贝菜单风格menu.c32(syslinux包提供)
服务端安装tftp-server:文件路径/var/lib/tftpboot
必要文件:
以光盘中isolinux.cfg为基础制作菜单并重命名为default
在写入内核文件及虚拟文件系统时注意路径
^后的字母为快捷键
菜单项
两个系统均可安装:
菜单项default 文件内容:
Cobbler安装:(6或7 内存分配大小1.5G以上,否则安装错误)
(首先确保安装httpd、tftp、cobbler、dhcpd)
systemctl start httpd 、tftp、cobblerd、dhcpd
执行cobbler check 后会出现如下图:
1、修改server,引导cobber服务器的其他主机可访问的ip(本机ip)
2、修改next server,引导tftp服务器,去下载pxelinux.0(bootloader)(本机ip)
3、开启tftp服务
systemctl start tftp
4、下载启动管理(pxelinux.0(bootloader)和menu.c32(菜单格式))
联网:cobbler get-loaders
未联网:cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot
获取(pxelinux.0和menu.c32)
5、开启rsyncd服务(无关紧要,可不启动)
systemctl start rsyncd
6、debian的镜像(可忽略)
7、修改cobbler口令,默认为cobbler
使用openssl passwd -1生成口令
8、重启cobblerd服务
systemctl start cobblerd
9、在/etc/cobbler/settings中修改manage_dhcp改为1,然后修改模板(/etc/cobbler/dhcp.template),自动配置DHCP配置文件配置DHCP(与cobbler相关联的,而非本机的)
cobbler sync 通过cobbler软件同步dhcpd配置到本机dhcp设置
10、重启dhcpd服务 systemctl restart dhcpd
11、导入创建yum源
cobbler import --path=/cd7 --name=centos7.6-86_64 --arch=x86_64(cpu架构,默认为x86_64)
cobbler distro/profile list(导入安装包后自动生成一对 包和ks文件)
12、准备ks文件
cp ks.cfg /var/lib/cobbler/kickstarts/ 将ks文件放入相关目录
vim /var/lib/cobbler/kickstarts/ks.cfg 将url --url=$tree
cobbler profile add --name Centos7.6-x86_64pro --distro=Centos7.6-x86_64 --kickstart=/var/lib/cobbler/kickstarts/ks.cfg(需要写绝对路径)
13、开始为电脑安装系统。
复制安装光盘,cobbler在pex***.cfg/default文件中
自动生成对应菜单项
ks应答文件中的yum源的配置
yum源:
菜单选项:
增加自制ks文件:(绝对路径)
删除无用菜单:
基于web的cobbler:(基于httpd、dhcpd、tftp服务)
/etc/cobbler/settings:cobbler主要配置文件
default _password_crypted:加密登录口令
manage_dhcp:1
manage_tftpd:1
pxe_just_once:1
nest_server:<tftp服务器的IP地址>
server:<cobbler服务器的IP地址>
cobbler check命令:cobbler环境检查
下载启动管理(pxelinux.0(bootloader)和menu.c32(菜单格式))
联网:cobbler get-loaders
不联网:cp /usr/share/syslinux/{pxelinux.0,menu.c32} /var/lib/tftpboot
管理distro(符合cobbler格式的安装包)
cobbler import --name=centos-7.5-x86_64 --path=/media/cdrom --arch=x86_64
管理profile(菜单label)
cobbler profile add --name=centos-7.5 --disrto=centos-7.5-x86_64 --kickstart=/var/lib/cobbler/kickstarts/centos_x86_64.cfg
查看profiles
cobbler profile list
查看引导文件
cat /var/lib/tftpboot/pxelinux.cfg/default
同步cobbler配置
cobble sync
cobbler-web:
sohu源和其他源配合使用安装cobbler-web;要求python1.6.**
执行systemctl restart httpd
authn_configfile验证***user.digst
增加cobbler管理用户
authn_pam验证
***users.conf
使用linux本机账户登录