Pxebootinstall

서문

네트워크 부팅을 사용한 설치는 DebianNetworkInstall 과 혼동되어서는 안됩니다. 네트워크 설치,당신은 시작과 함께 CD(또는 USB 플래시 메모리 또는 이와 유사한)를 설치하는 최소한의 리눅스 시스템을 계속 진행하기 전에 추가로 다운로드 패키지 네트워크를 통해.

설치 네트워크를 사용하여 부팅은 또 다른 네트워크를 사용하여 부팅 이미 설치된 시스템에서는 클라이언트 컴퓨터에 종속됩 서버 및 실행에서는 모든 미래의 부팅합니다. 예를 들어 Ltsp(Linux Terminal Server Project)는 그렇게 작동합니다.

이 페이지에서는 CD,DVD,USB 가 전혀없는 새로운 데비안 시스템 설치에 대해 설명합니다. 설치 과정이 끝날 무렵,새로운 머신은 서버의 지원없이 실행이 가능합니다. 설치하는 동안 네트워크 부팅 서버가 필요합니다.

야생에서 밖으로 신탁 부팅 서버가 없기 때문에,당신은 당신의 자신을 설정해야합니다. 이것은 CD 에서 데비안을 설치하는 것보다 상당히 복잡합니다(CD 또는 USB 또는 속기…). 일반적으로 네트워크 부팅은 실제로 CD 에서 부팅 할 방법이없는 경우에만 사용됩니다. 면에서 부팅하는 CD 를 실패하면,이로 인해 수 있습니다 BIOS 문제는 것입니다 똑같이 네트워크 부팅(전형적인 문제 해결이 시도 포함 전환 떨어져 보안이 부팅에서 전환 UEFI 하는 기존의 부트 모드와 비슷).

웹에서는 네트워크 부팅 서버를 설정하는 방법을 다소 자세하게 설명하는 몇 가지 기사를 찾을 수 있습니다. 그들은 모두 같은 약점을 가지고 있습니다: 부팅하려고 할 때 절차가 끝나기 전에 피드백을받지 않고 긴 지침 목록을 실행해야합니다. 작동하면 괜찮습니다. 그렇지 않다면 디버깅이 매우 어려워 질 것입니다. 따라서 다음에서는 절차를 별도로 디버깅 할 수있는 단계로 분해합니다.

http://www.debian.org/releases/stable/amd64/ch04s05-데비안 설치 가이드-4.5. TFTP 넷 부팅을위한 파일 준비

참고:시스템이 iPXE 를 지원하는 경우 netboot 를 사용하십시오.xyz 는 훨씬 간단 할 가능성이 높습니다.

전제 조건

설치하려는 컴퓨터를 클라이언트라고 부릅니다.

에서 설치 한 컴퓨터를 서버라고합니다. 우리는 서버가 데비안을 실행하고 있다고 가정합니다.

구체적,우리가 추측하는 클라이언트와 서버의 일부 LAN 다음과 같은 IP 주소:

당신의 값 x 니다. 주어진 LAN 에서 하나의 DHCP 서버 만 실행할 수 있으므로 많은 라우터도 DHCP 서버를 제공한다는 점에 유의하십시오. 아래 ISC DHCP 서버 구성을 준수하도록 라우터의 DHCP 서버를 구성 할 수 있지만이 문서의 범위를 벗어납니다. 데비안 서버가 이 LAN 의 기본 게이트웨이인 즉,라우터와 서버가 동일한 머신일 수도 있습니다. 이것은 잘 작동 할 것입니다.

다음 지침은 2015 년 9 월에 데비안 8.2(Jessie)로 테스트되었습니다.

활성화 PXE 부팅

네트워크에서 부팅 할 클라이언트의 BIOS 부팅 메뉴를 설정하십시오.

재부팅. 대부분의 시스템에서 이것은 클라이언트의 MAC 주소를 포함하는 출력을 생성합니다. 그런 다음

 PXE-E53: no boot filename received.

MAC 주소를 참고하여 실패합니다.

많은 서버에서 BIOS 설정을 영구적으로 변경하지 않고 pxe 부팅으로 임시 전환 할 수도 있습니다. 바이오스 포스트 중에 칠 수있는 일종의 키 입력이있을 것입니다. Dell 서버에서 f12 는 트릭을 수행합니다(또는 직렬 또는 IPMI 콘솔에서@Esc).

DHCP 서버 설정

서버에서 DHCP 서버를 설정해야합니다.

현재 모범 사례는 데몬 dhcpd 를 제공하는 패키지 isc-dhcp-server 를 사용하는 것 같습니다.

구성 파일은/etc/dhcp/dhcpd 입니다.콘프. 이 파일을 수정이 포함되도록에 대해 다음과 같습니다.에 적응 IP 및 MAC 주소를 현지 요구:

후 각 변의 DHCP 서버를 다시 시작으로

 # /etc/init.d/isc-dhcp-server restart

또는 systemd 에 해당

 # systemctl restart isc-dhcp-server

는지 확인 그것은 실제로 실행되:

 # pgrep -lf dhcpd 32277 /usr/sbin/dhcpd -q

또는

 # systemctl status isc-dhcp-server

을 제공하는 약간습니다.

다시 시작하기 전에 클라이언트를 실행

 # journalctl -fu isc-dhcp-server

보여주는 마지막 몇 줄의 DHCP 서버 로그,그 후 업데이트 화면 각각의 새로운 로그 항목입니다. (당신이 원하지 않는 경우”다음”을 로그에 그냥 두고”f”)

 PXE-E32: TFTP open timeout

과 동시에,당신은 당신이 볼 로그는 서버에 메시지를 화면을 보여주는 DHCP 요청 및 제공하는 유사한 출력 아래에 대 명령은 아래

선호하는 경우 이용하지 않는 systemd,또는 비교하고 싶은 전통적인 로그 출력에 대한 진단용으로, 당신이 볼 수 있/var/log/syslog,예를 들어 이 명령으로.

 # grep DHCP /var/log/syslog

  • 는 다음과 같은 내용이 있어야 합니다:

(이전 데비안 릴리스는/var/log/데몬을 사용했습니다.syslog 대신 log)

두 명령으로 로그에 아무 것도 나타나지 않으면 서버와 클라이언트 간의 네트워크 링크를 확인하십시오. 일부 네트워크 스위치에 심각한 제한을 부과할 수 있습 DHCP 트래픽에 대한 시스코 사람,사 portfast’가능한 경우(보http://www.cisco.com/en/US/products/hw/switches/ps708/products_tech_note09186a00800b1500.shtml).

TFTP 서버 설정

다음으로 서버에 TFTP 서버를 설정해야합니다.

다시 말하지만,TFTP 를 제공하는 여러 패키지가 있습니다(사소한 FTP,안전하지 않은,LAN 에서만 사용). 패키지 tftpd-hpa 를 사용하는 것이 가장 좋은 방법 인 것 같습니다. 설치시 몇 가지 질문이 제기됩니다. 이러한 질문에 대한 응답은 구성 파일,/etc/default/tftpd-hpa 로 이동합니다. 이 없어야 합를 수정할 필요가 다음과 같은 기본 내용:

 TFTP_USERNAME="tftp" TFTP_DIRECTORY="/srv/tftp" TFTP_ADDRESS="0.0.0.0:69" TFTP_OPTIONS="--secure"

시 이전하는 웹 사이트에 당신을 지시를 삽입하려면 뭔가 다음과 같’RUN_DAEMON=”yes”‘.

후 각자의 수정을 위한 구성 파일을 다시 시작 TFTP server

 # /etc/init.d/tftpd-hpa restart

또는

 # systemctl restart tftpd-hpa

에 제시,디렉터리/srv/tftp 자동으로 생성됩니다. 즉,Jessie 를 사용하는 경우 다음 두 단계가 필요하지 않습니다.

처음에는 사전에 제시 버전을 다시 시작 TFTP 서버가 실패할 수 있습과 같은 메시지

 Restarting HPA's tftpd: in.tftpd/srv/tftp missing, aborting.

따라서,루트로,디렉터리를 만들/srv/tftp. TFTP 데몬을 다시 시작하십시오. 실제로 실행 중인지 확인하십시오:

 # pgrep -lf tftpd 12555 /usr/sbin/in.tftpd

또는

 # systemctl status tftpd-hpa

는게 몇 줄의 로그를 보다는 오히려 그냥 사실 이 작업은(아닌)실행합니다.

그것은 유용을 테스트하는 TFTP 서버로 TFTP client 수 있습니다;단순히 사용하여 tftp-hpa 패키지에 대한 이 목적:

 # cd /tmp # uname -a >/srv/tftp/test # tftp 192.168.0.2 tftp> get test tftp> quit # diff test /srv/tftp/test (nothing, they are identical)

그것은 또한 유용한 것을 볼 로그 항목을 때 당신이 얻을 당신은 다운로드하는 파일이 존재하고 하려고 하면 다운로드 작동하지 않을 수 있습니다. 하는 동안 사용하여 tftp 을 테스트하는 tftpd server,시 추적 실험과 오래되고 새로운 형태의 로그를 명령하는 동안 당신을 사용하여 TFTP 클라이언트 파일을 다운로드 할뿐만 아니라,파일하지 않는,존재합니다.

전통적인에서 명령을 제시

 # tail -f /var/log/syslog

(주시 이전에는 데비안 자료에 사용/var/log/데몬입니다.syslog 대신 로그.)

on systemd

 # journalctl -fu tftpd-hpa

슬프게도,이들은 2017 년 1 월 현재 다른 결과를 제공하는 것 같습니다. Systemd 명령은 존재하지 않는 파일에 대한 파일 요청을 표시하지 않습니다. 나중에 실수를하면 파일을 예상 위치로 옮기는 데 도움이되므로 클라이언트가 무엇을 요구하는지 알면 매우 유용합니다. 현재 tftpd 에 대한 전통적인 로그 추적 방법을 사용할 가치가 있습니다.

클라이언트를 재부팅하십시오. 당신이 볼 수 오류 메시지는 클라이언트에서 스크린으로 시작

 PXE-T01: File not found

는 매우 정확하기 때문에 우리는 보이지 않았을 제공하는 모든 파일이 있습니다. 서버 화면에서 클라이언트가 요청한 내용을 정확히 볼 수 있습니다.

부팅 이미지를 제공

다운로드 netboot/netboot.타르.데비안 미러의 gz(http://www.debian.org/distrib/netinst#netboot참조).

선택 사항:디지털 서명을 검증하기 위해 입력한 명령:

압축을 풀고 netboot.타르.gz to/srv/tftp,이제

 debian-installer/ pxelinux.0@ pxelinux.cfg@ version.info

이 디렉토리의 모든 파일을 TFTP 데몬에 대해 읽을 수있게하려면 chmod-R a+r*이 필요할 수 있습니다.

grub/grub 를 편집해야 할 수도 있습니다.cfg 는 직렬 콘솔을 설정하기 위해,필요한 경우(나는 그래픽 터미널에 대한 섹션을 대체):

serial --speed=115200 --unit=1 --word=8 --parity=no --stop=1terminal_input console serialterminal_output console serial

뿐만 아니라 시리얼 콘솔을 위한 debian-installer 추가하여 이를 커널 명령:

console=ttyS1,115200n8r console=tty1

다시 시작 TFTP 데몬,그리고 다시할 수 있습을 따르는 로그 항목들이 나타나는

 # tail -f /var/log/syslog

후 재부팅 클라이언트입니다. 데비안 설치 화면으로 가야합니다.

/var/log/syslog 로 조회하면 PXE 부트 로더가 TFTP 서버에서 다운로드 한 다음 SYSLINUX 에서 다운로드 한 내용이 표시됩니다. SYSLINUX 가 존재하지 않는 파일을 요청했을 때 일부”NAK”응답을 볼 수도 있습니다(일부 중요한 파일에 대해 여러 위치를 시도합니다).

PXE 로더(BIOS 의 펌웨어 또는 클라이언트의 네트워크 컨트롤러)는이 순서로로드하려고합니다.

  • pxelinux.0(또는 더 정확하게 당신이 말한 그것을 다운로드에서 filename’분야의 DHCP 응답)

그 상용 부트/PXELINUX 도 검색하는 구성에서 서로 다른 경로에서 가장 특정하여 적어도:

  • pxelinux.cfg/GUID
  • pxelinux.cfg/MAC
  • pxelinux.cfg/default

그리고 구성 메뉴가 다른 구성 항목에 의존하는 경우 다운로드됩니다. 데비안은 적어도’bootmenu 가 필요합니다.메인 메뉴 인 txt’파일.

기본적으로 그래픽 데비안 설치 시작 메뉴 화면에 도착합니다. ‘Enter’를 눌러 설치를 시작하십시오. 인내심:다음 화면(‘언어 선택’)이 나타나기까지 1 분 이상 걸릴 수 있습니다.

대안을 얻을 수 있는 방법 부팅 이미지

이 있는 경우는 데비안 시스템은 동일한 방출 당신이 원하는대로 설치하려면,설치할 수 있습니다 부팅 이미지를 사용하고 있습니다.

이제 tftp 서버를/usr/lib/debian-installer/images/$VERSION/$ARCH/$INTERFACE 로 가리 킵니다.INTERFACE=텍스트 모드 설치 프로그램의 텍스트 또는 그래픽 설치 프로그램의 인터페이스=gtk. 이를 달성하는 간단한 방법은/srv/tftp 를 심볼릭 링크로 바꾸는 것입니다.

또 다른 방법-Dnsmasq 사용

dnsmasq 는 BOOTP/TFTP/PXE 기능이있는 가볍고 구성하기 쉬운 DNS 전달자 및 DHCP 서버입니다. 즉,isc-dhcp-server 및 tftpd-hpa 를 Dnsmasq 로 대체 할 수 있습니다.

다음은/etc/dnsmasq 입니다.위에서 설명한 isc-dhcpd-server 및 tftpd-hpa 의 설치 및 구성 방법과 동일한 기능을 제공하는 conf.

netboot 를 다운로드하십시오.타르.gz 및 이전 설명으로/srv/tftp 에서 추출합니다.

잠재적인 문제

경우 커널에서 netboot 이미지와 동기화 커널 모듈 패키지는 다음 모듈을 로드되지 않고 설치하는 것이 실패하고,일반적인 현상이 있다는 메시지에 대한”누락된 기호”에 표시려면 ctrl-alt-f4console. 이 문제를 해결하려면 netboot 서버에서 커널과 initrd 를 업데이트하십시오.

아마도 이것에 대한 데비안 BTS 문제가 열려 있지만 지금은 찾을 수 없습니다.

참조

  • http://www.debian.org/releases/stable/amd64/ch04s05-데비안 설치 가이드-4.5. 파일 준비하기 위해 TFTP Net 부팅

  • di-netboot-자동화하는 조수 단계의 대부분은 위에서 설명:DebianInstaller/NetbootAssistant

  • Lenny 설치 관리자에 netboot.타르.gz 는 이제 기본적으로 직렬 콘솔을 사용하여 설치를 지원하지 않습니다. 이 문제에 대한 자세한 정보와 직렬 콘솔 액세스를 가능하게하는 패치는 309223 에서 찾을 수 있습니다. 나는 이것이 내가 할 수있는 유일한 방법이라고 생각한다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다