Przystępując do lektury tej części cyklu artykułów o bootowaniu z sieci lokalnej zakładam, że skonfigurowałeś swój router z alternatywnym firmware OpenWrt, a w BIOS-ie bootowanego klienta ustawiłeś opcję Boot from LAN. Jeśli nie zapraszam do lektury pierwszej części cyklu – Bootowanie z sieci – konfiguracja routera.
Serwer TFTP
Użyjemy serwera Tftpd32 w wersji 64-bitowej zwanej Tftpd64, ściągniemy go z tej strony. Aktualna wersja to V4, wybieramy service edition, adekwatną do architektury systemu operacyjnego. Po zainstalowaniu i uruchomieniu serwera jako usługi Windows, przechodzimy do panelu administracyjnego. Na zakładce Global pozostawiamy uruchomiony jedynie serwer TFTP, reszta nie jest nam potrzebna.
Tworzymy gdzieś na dysku główny katalog naszego serwera TFTP, przykładowo C:\ProgramData\tftpboot
. Jego lokalizację podajemy na zakładce TFTP, pozostałych opcji nie zmieniamy.
Ostatnią rzeczą jaką musimy zrobić to odblokować serwer TFTP na firewall-u. W zasadzie stosowny monit powinien pojawić się automatycznie, ale skoro tak się nie stało wywołujemy komendę:
lub dla systemów 32-bitowych:
i potwierdzamy chęć odblokowania aplikacji na firewall-u.
Teraz możesz zamknąć panel administracyjny i zapomnieć o nim – serwer TFTP masz już bowiem skonfigurowany.
Syslinux
Ze strony domowej projektu Syslinux ściągamy wersję 4.06. Co prawda w chwili pisania tego artykułu najnowsza dostępna wersja to 5.01, ale zarówno 5.01 jak i 5.00 sprawiały u mnie problemy, np. nie były w stanie wczytać antywirusa Windows Defender Offline. Rozpakowujemy archiwum i do głównego katalogu naszego serwera TFTP, którym jak wcześniej ustaliliśmy będzie C:\ProgramData\tftpboot
kopiujemy 4 pliki, dla ułatwienia podaję poniżej ich lokalizację w archiwum:
gpxe\gpxelinux.0
com32\menu\vesamenu.c32
memdisk\memdisk
com32\chain\chain.c32
Ostatnim krokiem konfiguracji Syslinuksa jest utworzenie głównego pliku konfiguracyjnego PXE / gPXE – C:\ProgramData\tftpboot\pxelinux.cfg\default
. Zawartością tego pliku zajmiemy się w ostatniej, najważniejszej części cyklu – Bootowanie z sieci – konfiguracja PXE
Serwer NFS
Serwer NFS, zwany FreeNFS ściągamy natomiast z tej strony. Konfiguracja FreeNFS jest jeszcze bardziej trywialna niż Tftpd32. W głównym katalogu naszego serwera TFTP tworzymy podkatalog images
, w którym będziemy trzymać obrazy bootowalnych płyt CD/DVD. Na zakładce Server podajemy lokalizację tego podkatalogu,
a na zakładce Filenames, wybieramy standard kodowania znaków UTF-8.
FreeNFS to niestety samodzielna aplikacja a nie usługa. Aby uruchomić FreeNFS jako usługę Windows użyjemy jeszcze jednego malutkiego programu NSSM – the Non-Sucking Service Manager. Wypakowujemy plik wykonywalny adekwatny do architektury. Ja zarówno FreeNFS.exe
jak i nssm.exe
wypakowałem do istniejącego już katalogu C:\Program Files\Tftpd64_SE
. Teraz jako administrator wykonujemy następującą komendę:
Jako że, konfiguracja programu FreeNFS znajduje się w HKEY_CURRENT_USER\Software\FreeNFS
usługę FreeNFS musimy uruchomić z prawami użytkownika na którym dokonaliśmy konfiguracji, w tym celu przechodzimy do Właściwości usługi FreeNFS i na zakładce Logowanie wskazujemy użytkownika i podajemy hasło.
Usługa została zainstalowana, teraz wystarczy uruchomić Usługi i wystartować usługę.
Na firewallu-u musimy jeszcze odblokować samą aplikację nssm.exe
, w tym celu przechodzimy na Zaporę systemu Windows -> Dozwolone aplikacje i tam jawnie wskazujemy ścieżkę dostępu do nssm.exe
.
Wszystkie niezbędne do działania środowiska PXE / gPXE serwery zostały skonfigurowane i uruchomione.
Spis treści artykułów o PXE / gPXE
Tematykę bootowania z sieci lokalnej opisuję w serii 5 artykułów, zapraszam do zapoznania się z pozostałymi częściami: