SVN: PLD-doc/queue/diskless.sec

wolvverine wolvverine w pld-linux.org
Pi±, 7 Gru 2007, 21:35:04 CET


Author: wolvverine
Date: Fri Dec  7 21:35:02 2007
New Revision: 9129

Modified:
   PLD-doc/queue/diskless.sec
Log:
- dodanie tagów, wstêpne wygladzenie tekstu

Modified: PLD-doc/queue/diskless.sec
==============================================================================
--- PLD-doc/queue/diskless.sec	(original)
+++ PLD-doc/queue/diskless.sec	Fri Dec  7 21:35:02 2007
@@ -1,113 +1,116 @@
+<?xml version="1.0" encoding="utf-8"?>
+<section id="diskless-boot">
+	<title>Bootowanie z sieci</title> 
+	(TODO: root over NFS, swap over NFS)
+	<para>
+		Obecnie najczęściej stosuje się pobieranie parametrów z serwera DHCP przez klienta z PXE (ang. Preboot Execution Environment).
+		Co potrzebne:
+		1. karta sieciowa z opcja bootowania przez sieć (PXE),lub (dla starych kart i komputerów które nie mają opcji PXE)  odpowiednio przygotowana dyskietka z klientem PXE.
+		2. serwer przekazujÄ…cy parametry startowe:
+		Parametry startowe dla stacji bezdyskowych możemy przekazywać na kilka sposobów:
+			a. za pomocą serwera <produktname>DHCP</produktname> - pakiet dhcpd (najczęściej stosowane i zalecane).
+			b. za pomocÄ… serwera <produktname>PXE</produktname> - pakie pxe.
+			c. za pomocÄ… bootparamd - pakiet bootparamd.
+			d. za pomoca serwera <produktname>BOOTP</produktname> (zalecane jest korzystanie z DHCP które jest następcą BOOTP) - pakiet bootp.
+		3. serwer <produktname>TFTP</produktname> - pakiet tftpd-hpa (obecnie zalecany do współpracy z pxelinux).
+		4. serwer <produktname>NFS</produktname> udostępniający zasoby dyskowe (np: root over NFS) o ile planujemy z nich korzystać a nie tylko z ramdysku - pakiet nfsd.
+	</para>
+
+	<title>Konfiguracja serwera DHCP dla stacji bootowanych przez sieć dzięki PXE</title>
+		<para>
+			W pliku <filename>/etc/dhcpd.conf</filename> wpisujemy odpowiednie opcje, poniżej podane są one globalnie dla wszystkich stacji, niektóre z nich można podać dla wybranej grupy stacji lub dla pojedyńczego terminala, zakładamy że serwer DHCP jest już wstępnie skonfigurowany:
+		</para>
+<screen>
+	allow bootp;					# 
+	allow booting;					# 
+	filename "/pxe/pxelinux.0";			# pełna scieżka do pliku bootloadera dla PXE z pakietu syslinux, jeśli serwer tftp działa w chroot podajemy względną
+	option root-path "/exports/diskless";		# pełna scieżka do root-path dla terminala (z /etc/exports)
+	next-server 192.168.0.1;                        # IP serwera TFTP skÄ…d PXE pobiera pliki
+	#range dynamic-bootp 192.168.0.10 192.168.0.20;	# zakres IP przyznawanych dla stacji ktore bedą bootowały się z sieci
+	# opcje specjalne dla pxelinux zobacz opis tutaj http://syslinux.zytor.com/pxe.php
+	#	definicje opcji:
+	option space pxelinux;
+	option pxelinux.magic           code 208 = string;
+	option pxelinux.configfile      code 209 = text;
+	option pxelinux.pathprefix      code 210 = text;
+	option pxelinux.reboottime      code 211 = unsigned integer 32;
+	#	deklaracja wartości jakie mają mieć opcje:
+	#option pxelinux.magic          f1:00:74:7e;		# 
+	#option pxelinux.configfile "pxelinux.cfg/default";	# scieżka do pliku konfiguracyjnego (nie ustawiaj chyba że wiesz co robisz wiecej tutaj: http://syslinux.zytor.com/pxe.php)
+	#option pxelinux.pathprefix "/pxe";			# prefix
+	option pxelinux.reboottime      30;			# czas po ktorym stacja zrobi reboot jesli nie da rady się zabootować
+</screen>
+		<para>
+			przykład konfiguracji dla pojedynczej stacji:
+		</para>
+<screen>
+	host terminal1{
+		hardware ethernet 00:d0:dd:d6:df:d7;
+		fixed-address 192.168.0.2;
+		next-server 192.168.0.1;			# IP serwera TFTP
+		filename "/pxe/memdisk.0";			# pełna scieżka do pliku bootloadera dla PXE z pakietu syslinux (jeżeli tftp  działa w chroot podajemy względną)
+		option root-path "/exports/specialstation";	# pełna scieżka do root-path dla terminala (z /etc/exports)
+		}
+</screen>
+
+<title>Instalacja i konfiguracja serwera <productname>TFTP</productname>
+       	(uwaga: jest to usługa o bardzo małym stopniu bezpieczeństwa)
+<screen>
+
+</screen>
+	<para>
+		w PLD aktualnie serwery tftp sÄ… uruchamiane przez inetd:
+		/etc/sysconfig/rc-inetd/tftpd - konfiguracja uruchamiania serwera tftp
+	</para>
+	<para>
+		TODO opis instalacji i konfiguracji serwera i zabezpieczeń
+	</para>
+
+	<para>
+	Następnie tworzymy katalog <filename>/var/lib/tftp/pxe</filename> i umieszczamy następujące pliki:
+	</para>
+
+	initrd - plik z odpowiednio przygotowanym obrazem initrd
+	pxelinux.0 - bootloader z pakietu syslinux
+	vmlinuz - plik z kernelem 
+	pxelinux.cfg - katalog z plikami konfiguracyjnymi bootloadera
+
+	<para>
+	jak widać zawartość jest dość podobna do /boot (i spełnia to samo zadanie)
+	</para>	
+	<para>
+		Kolejność poszukiwania poszczególnych plików konfiguracyjnych w <filename>pxelinux.cfg<filename> jest nastepująca:
+		wpierw szukany jest plik o nazwie takiej samej jak MAC karty terminala czyli np: 00-02-44-90-1F-7B
+		# ...TODO...
+		na końcu szukany jest plik <filename>default<filename>
+
+	</para>
+	<para>
+		przykładowa zawartośc pliku konfiguracyjnego bootloadera (tutaj dla konkretnej stacji o adresie MAC 00-02-44-90-1F-7B), jesli nie chcesz definiować dla kazdej stacji/ grupy stacji utwórz plik o nazwie <filename>default<filename>:
+	<para>
+<screen>
+	# vim /var/lib/tftp/pxe/pxelinux.cfg/00-02-44-90-1F-7B
+	LABEL serwerinit
+		KERNEL vmlinuz-2.6.11.10-3
+		APPEND nfsaddrs=192.168.0.2:192.168.0.1:255.255.255.0:serwer2 ip=192.168.0.2:192.168.0.1:192.168.0.1:255.255.255.0:serwer2:eth0:bootp iniitrd=initrd-2.6.11.10-3.gz root=/dev/nfs nfsroot=192.168.0.1:/mnt/hdb2/root/serwer2
+		IPAPPEND 1
+	<para>
+		APPEND przekazuje do Å‚adowanego kernela opcje dodatkowe:
+	</para>
+<screen>
+	nfsaddrs=<adres IP terminala>:<adres IP serwera>:<maska podsieci>:<nazwa terminala>
+	ip=<adres IP terminala>:<adres IP serweray>:<adres IP serwera x>:<maska podsieci>:<nazwa terminala>:<nazwa interfejsu przez który łaczy sie z root-path>:bootp
+	iniitrd=<nazwa pliku initrd>
+	root=/dev/nfs - wirtualne wpis urzÄ…dzenia wskazujÄ…cy ze root-path bedzie po NFS
+	nfsroot=<IP serwera NFS>:<scieżka do root-path>:<opcje dla NFS>
+</screen>
 
-Bootowanie z sieci i system z root-NFS
-
-Co potrzebne:
-1. karta sieciowa z opcja bootowania przez sieć (PXE).
-2. serwer przekazujÄ…cy parametry startowe:
-	Parametry startowe dla stacji bezdyskowych możemy przekazywać na kilka sposobów:
-	a. za pomocą dhcp - pakiet dhcpd (najczęściej stosowane i zalecane)
-	b. za pomocÄ… serwera PXE - pakie pxe
-	c. za pomocÄ… bootparamd - pakiet bootparamd
-	d. za pomoca serwera bootp (zalecane jest korzystanie z dhcp jednak) - pakiet bootp
-3. serwer tftp - pakiet tftpd-hpa (obecnie zalecany do współpracy z pxelinux)
-4. serwer NFS udostępniający system (root-NFS) - pakiet nfsd
-
-Konfiguracja serwera DHCP dla stacji bootowanych przez sieć (wybrane opcje):
-
-opcje poniżej mozemy podac dla wszystkich stacji, wybranej grupy lub dla pojedyńczych terminali:
-
-next-server 192.168.0.1;			# IP serwera TFTP
-filename "/var/lib/tftp/pxe/pxelinux.0";	# pełna scieżka do pliku bootloadera dla PXE z pakietu syslinux, jeśli serwer tftp działa w chroot podajemy względną
-option root-path "/mnt/hdb2/root/serwer2";	# pełna scieżka do root-path dla terminala (z /etc/exports)
-
-
-w konfiguracji dla pojedynczej stacji:
-
-host terminal1{
-	hardware ethernet 00:d0:dd:d6:df:d7;
-	fixed-address 192.168.0.2;
-	next-server 192.168.0.1;			# IP serwera TFTP
-	filename "/var/lib/tftp/pxe/pxelinux.0";	# pełna scieżka do pliku bootloadera dla PXE z pakietu syslinux (jeżeli tftp  działa w chroot podajemy względną)
-	option root-path "/mnt/hdb2/root/serwer2";	# pełna scieżka do root-path dla terminala (z /etc/exports)
-	}
-
-
-konfiguracja serwera PXE:
- 
-[root w serwer root]# vim /etc/pxe.conf
-interface=eth1				# interface na którym serwer PXE ma działać
-default_address=192.168.0.1		# adress IP na którym ma nasłuchiwać serwer
-listen_port=4011			# port na którym serwer PXE ma nasłuchiwać
-use_multicast=0				#
-use_broadcast=0				#
-prompt=Press F8 to view menu ...	# komunikat
-prompt_timeout=10			#
-service=X86PC,0,0,local,Local boot	#	
-service=X86PC,0,0,pxelinux,PXELinux	#
-tftpdbase=/var/lib/tftp/pxe		# pełna sciezka do katalogu tftp z plikami startowymi
-
-Konfiguracja serwera bootp:
-
-[root w serwer root]# vim /etc/bootptab
-global.prof:\
-           :sm=255.255.255.0:\
-           :ds=192.168.0.1:\
-           :gw=192.168.0.1:\
-           :ht=ethernet:\
-           :bf=linux:
-serwer2:hd=/var/lib/tftp/pxe:tc=global.prof:ha=00508d665f67:ip=192.168.0.2
-
-Konfiguracja usługi bootparams:
-
-[root w serwer root]# vim /etc/bootparams
-serwer2 serwer:/var/lib/tftp/pxe
-
-Instalacja i konfiguracja serwera tftp (uwaga: jest to usługa o bardzo małym stopniu bezpieczeństwa) :
-
-w PLD aktualnie serwery tftp sÄ… uruchamiane przez inetd:
-/etc/sysconfig/rc-inetd/tftpd - konfiguracja uruchamiania serwera tftp
-
-TODO opis instalacji i konfiguracji serwera i zabezpieczeń
-
-
-przykładowa zawartośc pliku konfiguracyjnego bootloadera:
-
-[root w serwer root]# cat /var/lib/tftp/pxe/pxelinux.cfg/00-02-44-90-1F-7B
-LABEL serwerinit
-	KERNEL vmlinuz-2.6.11.10-3
-	APPEND nfsaddrs=192.168.0.2:192.168.0.1:255.255.255.0:serwer2
-ip=192.168.0.2:192.168.0.1:192.168.0.1:255.255.255.0:serwer2:eth0:bootp
-iniitrd=initrd-2.6.11.10-3.gz root=/dev/nfs nfsroot=192.168.0.1:/mnt/hdb2/root/serwer2
-	IPAPPEND 1
-
-APPEND przekazuje do załadowanego kernela opcje dodatkowe:
-
-nfsaddrs=<adres IP terminala>:192.168.0.1:<maska podsieci>:<nazwa terminala>
-
-ip=<adres IP terminala>:192.168.0.1:192.168.0.1:<maska podsieci>:<nazwa terminala>:<nazwa interfejsu przez który łaczy sie z root-path>:bootp
-iniitrd=<nazwa pliku initrd>
-root=/dev/nfs - wirtualne wpis urzÄ…dzenia wskazujÄ…cy ze root-path bedzie po NFS
-nfsroot=<IP serwera NFS>:<scieżka do root-path>:<opcje dla NFS>
-
-
-w /var/lib/tftp/pxe umieszczamy następujące pliki:
-
-initrd - plik z odpowiednio przygotowanym obrazem initrd
-pxelinux.0 - bootloader z pakietu syslinux
-vmlinuz - plik z kernelem 
-
-jak widać zawartość jest dość podobna do /boot (i spełnia to samo zadanie)
-
-przykład dla bootowania przez PXE za pomocą dhcp przy wykorzystaniu RescueCD (krok po kroku):
+<title>Przykład dla bootowania przez PXE za pomocą dhcp przy wykorzystaniu RescueCD, prosta konfiguracja (krok po kroku).</title>
 
 #instalujemy potrzebne pakiety (zakładam że dhcpd jest już wstępnie skonfigurowane i działające w sieci)
 sudo poldek -i syslinux dhcpd tftpd-hpa
 # W /var/lib/tftp przygotowujemy konfiguracje startowÄ… dla terminali
 # w tym katalogu umieszczamy pliki configuracyjne bootloadera.
-# Kolejność poszukiwania poszczególnych plików jest nastepująca:
-# wpierw szuka pliku o nazwie takiej samej jak MAC karty terminala czyli np: 00-02-44-90-1F-7B
-# ...TODO...
-# na końcu szuka pliku "default"
 mkdir -p /var/lib/tftp/pxe/pxelinux.conf
 # kopiujemy bootloadery z pakietu syslinux
 cp /usr/lib/syslinux/pxelinux.0 /var/lib/tftp/pxe/pxelinux.0
@@ -201,6 +204,39 @@
 /etc/init.d/rc-inetd restart
 
 
+<title>konfiguracja serwera PXE</title>
+<screen>
+	# vim /etc/pxe.conf
+	interface=eth1				# interface na którym serwer PXE ma działać
+	default_address=192.168.0.1		# adress IP na którym ma nasłuchiwać serwer
+	listen_port=4011			# port na którym serwer PXE ma nasłuchiwać
+	use_multicast=0				#
+	use_broadcast=0				#
+	prompt=Press F8 to view menu ...	# komunikat
+	prompt_timeout=10			#
+	service=X86PC,0,0,local,Local boot	#	
+	service=X86PC,0,0,pxelinux,PXELinux	#
+	tftpdbase=/var/lib/tftp/pxe		# pełna sciezka do katalogu tftp z plikami startowymi
+</screen>
+
+<title>Konfiguracja serwera bootp dla bootowanie przez sieć:</title>
+<screen>
+	# vim /etc/bootptab
+	global.prof:\
+		:sm=255.255.255.0:\
+		:ds=192.168.0.1:\
+		:gw=192.168.0.1:\
+		:ht=ethernet:\
+		:bf=linux:
+	serwer2:hd=/var/lib/tftp/pxe:tc=global.prof:ha=00508d665f67:ip=192.168.0.2
+</screen>
+
+<title>Konfiguracja usługi bootparams dla bootowania przez sieć</title>
+<screen>
+	# vim /etc/bootparams
+	serwer2 serwer:/var/lib/tftp/pxe
+</screen>
+<para>
 Literatura:
 http://andrzej.dopierala.name/2007-06-02_Bootowanie_systemu_z_pxe_na_nowych_komputerach
 http://rescuecd.pld-linux.org/download/2007-06-17/PXE.txt
@@ -222,4 +258,4 @@
 http://adas.artikon.one.pl/PLD/Initrd.txt
 http://pl.docs.pld-linux.org/konfiguracja_geninitrd.html
 http://team.pld.org.pl/~klakier/doc/install/pl/
-
+</para>


Wiêcej informacji o li¶cie dyskusyjnej pld-doc