1. dhcp 설정
yum -y install dhcp
ddns-update-style interim; :
subnet 192.168.0.0 netmask 255.255.255.0 { : 아이피와 서브넷 지정 옵션
option routers 192.168.0.1; : 게이트웨이 설정 옵션
option subnet-mask 255.255.255.0; 넷마스크 설정 옵션
range dynamic-bootp 192.168.0.10 192.168.0.100; : 시작 IP와 끝 IP 설정
option domain-name-servers 164.124.101.2; 네임서버 설정
default-lease-time 10000; : 임대시간(s)
max-lease-time 50000; 최대 임대시간(s)
#pxe setting
allow booting; : DHCP로 부팅을 허용
allow bootp; : 부팅 프로토콜 허용
next-server 192.168.0.1; : 부팅 파일이 있는 서버의 주소
filename "pxelinux.0"; : 부팅 파일 이름(syslinux)
설정
vi /etc/dhcp/dhcpd.conf
ddns-update-style interim;
subnet 192.168.0.0 netmask 255.255.255.0 {
option routers 192.168.0.1;
option subnet-mask 255.255.255.0;
range dynamic-bootp 192.168.0.10 192.168.0.100;
option domain-name-servers 164.124.101.2;
default-lease-time 10000;
max-lease-time 50000;
#pxe setting
allow booting;
allow bootp;
next-server 192.168.0.1;
filename "pxelinux.0";
}
2. tftp 설정
yum -y install syslinux tftp-server
yum -y install xinetd : tftp경로 변경 xinetd 설치.
vi /etc/xinetd.d/tftp
파일의 옵션 변경
disable = no,
server_args= -s /var/lib/tftpboot (원하는 디렉터리 지정)
3. ISO 마운트, syslinux 부팅파일 복사
mkdir -p /var/www/html/pxe/CentOS7
mkdir -p /tftpboot/CentOS7
mount /dev/cdrom /var/www/html/pxe/CentOS7
iso 파일 마운트
mount -o loop CentOS7.iso /var/www/html/pxe/CentOS7
커널 및 설치 rootfs 복사
cp -a /var/www/html/pxe/CentOS7/images/pxeboot/vmlinuz /var/lib/tftpboot/CentOS7/
cp -a /var/www/html/pxe/CentOS7/images/pxeboot/initrd.img /var/lib/tftpboot/CentOS7/
pxe 부팅 파일 및 설정 메뉴 복사
cp -a /usr/share/syslinux/pxelinux.0 /var/lib/tftpboot/
cp -a /usr/share/syslinux/menu.c32 /var/lib/tftpboot/
4. 부팅 디렉토리 생성
mkdir /var/lib/tftpboot/pxelinux.cfg
vi /var/lib/tftpboot/pxelinux.cfg/default
DEFAULT menu.c32
timeout 100
menu title ### OS Installer Boot Menu ###
LABEL CentOS7
menu label CentOS7
kernel CentOS7/vmlinuz
append initrd=CentOS7/initrd.img repo=http://192.168.0.1/pxe/CentOS7
5. 아파치 설정
yum -y install httpd
vi /etc/httpd/conf/httpd.conf
<Directory "/var/www/html/pxe">
AllowOverride None
Order deny,allow
Deny from all
Allow from 192.168.0
</Directory>
7. 서비스 적용
systemctl restart dhcpd
systemctl restart httpd
systemctl restart xinetd
systemctl enable dhcpd
systemctl enable httpd
systemctl enable xinetd
댓글 없음:
댓글 쓰기