Nowe posty

Autor Wątek: Bootowalny lan  (Przeczytany 2642 razy)

arti86pl

  • Gość
Bootowalny lan
« dnia: 2009-08-08, 11:29:31 »
Witam, szukam wszedzie, pisze po forach linuxowych i nikt nie odpowiada, wiec sprobuje tutaj.
Najpierw przedstawie sytuacje. W firmie prowadze siec do testowania laptopow, odpalony jest server HTTP i DHCP. Serwer dziala na SUSE 11.1.
A teraz problem, szukam rozwiazania na bootowalny lan, dlatego iz nie wszystkie laptopy maja napedy albo bootuja z USB. Narazie mam odpalony Kiwi-LTSP ale on tylko klonuje moj system, a ja chce zrobic menu w ktorym uzytkownik mogl by wybrac ktora usluge chce odpalic, np: Hiren tools albo inne narzedzia diagnostyczne lub tez ktoras z dystrybucji linuxa.
Niech mi ktos odpowie czy wogole jest takie cos mozliwe, czy to fantazja mnie za bardzo ponosi ;]
Dodam tez ze z linuxem to narazie "raczkuje" bo dopiero bawie sie tym od 3miesiecy.
z gory dzieki za wszelkie rady
pozdro

Offline Paweł Kraszewski

  • Administrator
  • Guru
  • *****
  • Wiadomości: 3071
  • Lenistwo jest matką potrzeby = babcią wynalazku
    • Zobacz profil
Bootowalny lan
« Odpowiedź #1 dnia: 2009-08-08, 14:01:07 »
1. Dystrybucja Linuksa bootowana przez sieć wymaga trochę zachodu - patrz projekty typu LTSP
2. Jeżeli uda ci się zapakować narzędzia na dyskietkę, np ED (2.88MB), to można zabootować taki obraz przez sieć via trio SYSLINUX+DHCPD+TFTP. DHCP+TFTP ładnie dostarcza pakiet DNSMASQ. Konfiguracja SYSLINUX masz tu http://syslinux.zytor.com/wiki/index.php/MEMDISK

Pozdrawiam!
Paweł Kraszewski
~Arch/Void/Gentoo/FreeBSD/OpenBSD/Specjalizowane customy

arctgx

  • Gość
Bootowalny lan
« Odpowiedź #2 dnia: 2009-08-08, 17:53:10 »
Rok temu w ramach długo oczekiwanych zajęć (http://www.fizyka.umk.pl/~jkob/labul-wyklad.pdf - prezentacja rozwija się, str. mniej więcej od 47 przy aktualnym wydaniu, może jakiś przykład zerżniesz jako punkt wyjścia do doświadczeń) miałem okazję bawić się rozruchem przez sieć i męczyć prowadzącego pytaniami. Wyleciało mi tego sporo z czaszki, ale chętnie ją odświeżę, jeśli odwzajemnisz się kawałkiem samodzielności ;)

Wygląda to mniej więcej tak, że po wyborze rozruchu z sieci karta klienta nawiązuje transakcję z serwerem DHCP skonfigurowanym tak, że w odpowiedzi, prócz adresu IP, wysyła on plik programu rozruchowego (np. pxelinux.0) lub bezpośrednio jądro. Zarówno ten plik, jak i "materiały rozruchowe" siedzą na serwerze TFTP, do którego klient musi mieć dostęp.

Załadowany PXELinux pozwoli Ci wybrać jądro z parametrami i initrd. Wtedy możesz sprawdzić czy wykonywany jest kod jądra (pierwsze komunikaty) oraz kod z initrd.

Ostatnim chyba krokiem tej zabawy będzie zapewnienie jądru dostępowi do głównego systemu plików. Można to zrobić np. przez zamontowanie go (przez dodanie parametrów na starcie) jako system plików NFS (np. z tej samej maszyny, która udostępniała jądro). Trzeba jednak do tego przygotować jądro: albo wkompilować na stałe obsługę rozruchu z NFS, albo przygotować initrd w celu dodania sterowników od tej obsługi - z initrd nie bawiłem się).

Wrócę jeszcze do pierwszego kroku: nie pamiętam, w jaki sposób ładowałem ROM z obsługą rozruchu przez LAN, kiedy karta sama z siebie nie dawała takiej możliwości. Odpowiedź siedzi, zdaje się, tu: http://rom-o-matic.net/gpxe/gpxe-git/gpxe.git/contrib/rom-o-matic/ (generator obrazów dyskietek dla poszczególnych kart).

Tak wygląda ogólna idea, w razie potrzeby i przy odrobinie czasu mogę odkopac konfiguracje i spróbować postawić to na nogi (z QEMU jako klientem i DSL jako minidystrybucją odpalaną przez sieć).