一、初始化系统
# service iptables stop && setenforce 0
# chkconfig iptables off
# vi /etc/selinux/config
SELINUX=disabled SELINUXTYPE=targeted |
# yum -y install epel-release
# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-6.repo
# yum -y install python-setuptools
# pip install Django
# yum -y install cobbler httpd rsync tftp-server xinetd dhcp pykickstartfence-agents
# vi /etc/xinetd.d/tftp
service tftp { disable = no socket_type = dgram protocol = udp wait = yes user = root server = /usr/sbin/in.tftpd server_args = -B 1380 -v -s /var/lib/tftpboot per_source = 11 cps = 100 2 flags = IPv4 } |
# vi /etc/xinetd.d/rsync
service rsync { disable = no flags = IPv6 socket_type = stream wait = no user = root server = /usr/bin/rsync server_args = --daemon log_on_failure += USERID } |
# vi /etc/httpd/conf/httpd.conf
ServerName 127.0.0.1:80 |
二、配置 Cobbler
# openssl passwd -1 -salt 'random-phrase-here' '123456'
$1$random-p$mzxQ/Sx848sXgvfwJCoZM0
# vi /etc/cobbler/settings
manage_dhcp: 1 manage_tftpd: 1 manage_rsync: 1 next_server: 192.168.1.127 server: 192.168.1.127 default_password_crypted: "$1$random-p$mzxQ/Sx848sXgvfwJCoZM0" |
# vi /etc/cobbler/dhcp.template
subnet 192.168.1.0 netmask 255.255.255.0 { option routers 192.168.1.1; option domain-name-servers 192.168.1.1; option subnet-mask 255.255.255.0; range dynamic-bootp 192.168.1.101 192.168.1.108; default-lease-time 21600; max-lease-time 43200; next-server $next_server; class "pxeclients" { match if substring (option vendor-class-identifier, 0, 9) = "PXEClient"; if option pxe-system-type = 00:02 { filename "ia64/elilo.efi"; } else if option pxe-system-type = 00:06 { filename "grub/grub-x86.efi"; } else if option pxe-system-type = 00:07 { filename "grub/grub-x86_64.efi"; } else { filename "pxelinux.0"; } }
} |
# chkconfig httpd on
# chkconfig xinetd on
# chkconfig dhcpd on
# chkconfig cobblerd on
# service httpd restart
# service xinetd restart
# service cobblerd restart
# service dhcpd restart
# cobbler check #检查配置
根据提示修复
# yum -y install debmirror
# vi a.sh
#!/bin/bash while true do cobbler get-loaders if [ $? -eq 0 ];then exit 0 fi done |
# sh -x a.sh
# cobbler check # 再次检查( 提示 dhcpd 没有运行,先不管 )
# cobbler sync # 同步操作
三、导入安装源
# mount /dev/cdrom /mnt/
# cobbler import --path=/mnt/ --arch=x86_64 --name=rhel-server-6.6
# cobbler list
# vi /var/lib/cobbler/kickstarts/rhel-server-6.6-x86_64.ks
# platform=x86 AMD64 Intel EM64T # version=DEVEL # Firewall configuration firewall --disabled # Install OS instead of upgrade install # Use network installation url --url="http://192.168.1.127/cobbler/ks_mirror/rhel-server-6.6-x86_64/" # Root password #rootpw --iscrypted $1$hk0MvN4A$Dz.sYvyDjac1.cMVTk9270 rootpw --iscrypted $1$random-p$mzxQ/Sx848sXgvfwJCoZM0 # System authorization information auth --useshadow --passalgo=sha512 # Use text mode install text # System keyboard keyboard us # System language lang zh_CN # SELinux configuration selinux --disabled # Do not configure the X Window System skipx # Installation logging level logging --level=info # Reboot after installation reboot # System timezone timezone --isUtc Asia/Shanghai # Network information network --bootproto=dhcp --device=eth0 --onboot=on # System bootloader configuration bootloader --location=mbr # Clear the Master Boot Record zerombr # Partition clearing information clearpart --all --initlabel # Disk partitioning information part /boot --fstype="ext4" --size=200 part swap --fstype="swap" --size=1024 part / --fstype="ext4" --grow --size=1 |
# cobbler distro list
# cobbler profile report --name rhel-server-6.6-x86_64
# cobbler profile add --name rhel-server-6.6--distro=rhel-server-6.6-x86_64--kickstart=/var/lib/cobbler/kickstarts/rhel-server-6.6-x86_64.ks
# cobbler profile report
# cobbler sync
## 同步一下配置,客户端开机测试
## 从网络引导进入后,会有一个选择列表,选择要安装 profile,就可以自动完成安装。
## 修改 ks.cfg 文件后,不需要 sync 就可以直接生效!
## 如果不想关闭防火墙,那么请打开 TCP (69、80、25151 ) 端口。
## 遇到问题仔细观察,ks.cfg中一定不能有中文,注释行也不可以!