본문으로 바로가기

리눅스로 만능 PXE 서버 만들기 - 3

category IT/Linux 2017. 8. 29. 11:32

 

드디어 마지막 3편입니다.

3편에서는 pxe에서 자동설치가 가능하게 해주는 KickStart 설정 방법 및 데비안, 우분투 설치방법을 알려드리겠습니다.

우분투와 데비안 설치는 CentOS 와 거의 같지만 복사 할 파일의 경로가 조금 다르고, CentOS와 똑같이 설정하면 에러가 나는 부분이 있습니다.

PXEPXE 화면

 

우분투 설치방법

1. 디렉터리 생성 및 파일 복사

mkdir /var/www/html/pxe/Ubuntu14

mkdir /tftpboot/Ubuntu14

mount /dev/cdrom /var/www/html/pxe/Ubnuntu14cp /var/www/html/pxe/Ubuntu14/install/netboot/ubuntu-installer/amd64/linux /tftpboot/Ubuntu14/

cp /var/www/html/pxe/Ubuntu14/install/netboot/ubuntu-installer/amd64/initrd.gz /tftpboot/Ubuntu14/

다른 디렉터리에 마운트 한 뒤 파일 내용만 복사해 넣어도 됩니다.

 

2. default 파일 변경

LABEL

menu label --Ubuntu-------------------------------------------------------

LABEL Ubuntu14

menu label Ubuntu14

kernel Ubuntu14/linux

APPEND initrd=Ubuntu14/initrd.gz mirror/country=manual mirror/http/hostname=192.168.0.1 mirror/http/directory=/pxe/Ubuntu14 mirror/http/proxy="" live-installer/enable=true live-installer/net-image=http://192.168.0.1/pxe/Ubuntu14/install/filesystem.squashfs ramdisk_size=16432 root=/dev/rd/0 rw  --

vnlinuzlinux 로 바뀌고 initrd.img 파일이 initrd.gz 로 바뀝니다.

CentOS의 repo대신 live-installer 옵션이 들어갑니다. 이 옵션이 없는 경우 Installation step failed 에러가 나오네요

PXElive-installer 없을 시 에러

PXE로 우분투 설치를 진행하다 보면 CentOS와 달리 archive 를 설정하는 화면이 나오는데요. 인터넷이 된다면 넷인스톨이 가능하지만

마스커레이드 설정을 안해서 안됩니다. 설정을 해준다 해도 외부망에서 다운받다 보니 속도도 많이 떨어지고요.

mirror 옵션을 사용해 manual로 변경하고 archive 경로를 PXE 서버로 변경 했습니다.

아래는 mirror 옵션이 없을 때 설정하는 화면입니다.

PXEmirror 설정PXEmirror 설정

PXEmirror 설정

PXEmirror 설정

 

데비안 설치 방법

 

데비안도 archive를 pxe서버로 만들고 싶었는데 Ubuntu와 같은 방법으로 해도 에러가 나서 어쩔 수 없이 마스커레이딩 설정을 해서

외부 archive 를 사용하게 설정했습니다. 혹시 방법 아시는 분 계시면 댓글로 알려주시면 감사하겠습니다.

PXEDebian 실패 화면

0. 마스커레이딩 설정

echo "1" > /proc/sys/net/ipv4/ip_forward : 리눅스 서버가 게이트웨이로 작용 하므로 IP Forwarding이 필요합니다.

위의 옵션은 재부팅 시 지워지기 때문에 vi /etc/sysctl.conf 에 아래 내용을 추가 해 줍니다.

net.ipv4.ip_forward=1

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE : 유동 IP용

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to 10.0.0.10 : 고정 IP용

만약 iptables에서 nat 옵션이 안된다면 iptables를 업데이트 하시면 됩니다.

Firewalld 사용 시

firwall-cmd --permanent --add-masquerade : --permanent 옵션을 사용했으므로 reload 해주셔야 합니다.

 

1. 디렉터리 생성 및 파일 다운로드

mkdir /tftpboot/Debian8

cd /tftpboot/Debian8

wget https://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/linux

wget https://d-i.debian.org/daily-images/amd64/daily/netboot/debian-installer/amd64/initrd.gz

데비안의 경우 linux, initrd.gz 파일을 위의 경로에서 받아야 합니다.

 

2. default 파일 변경

LABEL

menu label --Debian-------------------------------------------------------

LABEL Debian8

menu label Debian8

kernel Debian8/linux

APPEND initrd=Debian8/initrd.gz mirror/country=manual mirror/http/hostname=ftp.kaist.ac.kr mirror/http/directory=/debian mirror/http/proxy=""

 

자동 설치를 가능하게 해주는 Kickstart 설정은 잘 되어있는 블로그가 있어 링크로 달아드리겠습니다.

Kickstart 설정 파일을 적당한 경로에 넣고 default 파일 내용만 약간 수정 해주시면 됩니다.

Kickstart 설정방법

'IT > Linux' 카테고리의 다른 글

Linux Process  (0) 2022.11.08
리눅스 프로그램 설치(Source, RPM, YUM)  (0) 2022.11.07
리눅스로 만능 PXE 서버 만들기 - 2  (1) 2017.08.19
리눅스로 만능 PXE 서버 만들기 - 1  (3) 2017.08.13
리눅스 본딩(Bonding) 설정  (1) 2017.08.11