GNU/Linux >> Znalost Linux >  >> Linux

Jak na to:10 kroků ke konfiguraci serveru tftpboot v systému UNIX / Linux (pro instalaci Linuxu ze sítě pomocí PXE)

V tomto článku probereme, jak nastavit tftpboot, včetně instalace potřebných balíčků a konfigurací tftpboot.

Spouštěcí služba TFTP se primárně používá k instalaci OS na vzdáleném počítači, ke kterému nemáte fyzický přístup. Aby byla instalace operačního systému úspěšná, měl by existovat způsob, jak restartovat vzdálený server – buď pomocí wakeonlanu, nebo ho někdo restartuje ručně nebo nějakým jiným způsobem.

V těchto scénářích můžete odpovídajícím způsobem nastavit služby tftpboot a instalaci operačního systému lze provést vzdáleně (k automatizaci kroků instalace operačního systému potřebujete konfigurační soubor autoyast).

Je uveden postup krok za krokem v tomto článku pro SLES10-SP3 v 64bitové architektuře. Tyto kroky jsou však do značné míry podobné jakýmkoli jiným distribucím Linuxu.

Požadované balíčky

Pro nastavení tftpboot je třeba nainstalovat následující balíčky.

  • Balíčky služeb dhcp:dhcp-3.0.7-7.5.20.x86_64.rpm a dhcp-server-3.0.7-7.5.20.x86_64.rpm
  • Balík tftpboot:tftp-0.48-1.6.x86_64.rpm
  • Balík pxeboot:syslinux-3.11-20.14.26.x86_64.rpm

Instalace balíčku

Nainstalujte balíčky pro služby serveru dhcp:

$ rpm -ivh dhcp-3.0.7-7.5.20.x86_64.rpm
Preparing...                ########################################### [100%]
   1:dhcp                   ########################################### [100%]

$ rpm -ivh dhcp-server-3.0.7-7.5.20.x86_64.rpm
Preparing...                ########################################### [100%]
   1:dhcp                   ########################################### [100%]

$ rpm -ivh tftp-0.48-1.6.x86_64.rpm

$ rpm -ivh syslinux-3.11-20.14.26.x86_64.rpm

Po instalaci balíčku syslinux se v adresáři /usr/share/pxelinux/ vytvoří soubor pxelinux.0. To je vyžadováno pro načtení instalačních obrazů jádra a initrd na klientský počítač.

Ověřte, že jsou balíčky úspěšně nainstalovány.

$ rpm -qa | grep dhcp
$ rpm -qa | grep tftp

Stáhněte si příslušný tftpserver z úložiště vaší příslušné distribuce Linuxu.

Kroky pro nastavení tftpboot

Krok 1:Vytvořte adresář /tftpboot

Vytvořte adresář tftpboot v kořenovém adresáři ( / ), jak je znázorněno níže.

# mkdir /tftpboot/

Krok 2:Zkopírujte obrázek pxelinux

Obraz PXE Linuxu bude k dispozici, jakmile nainstalujete balíček syslinux. Zkopírujte to do /tftpboot cesty, jak je uvedeno níže.

# cp /usr/share/syslinux/pxelinux.0 /tftpboot

Krok 3:Vytvořte bod připojení pro ISO a připojte obraz ISO

Předpokládejme, že budeme instalovat distribuci SLES10 SP3 Linux na vzdálený server. Pokud máte DVD SUSE10-SP3, vložte jej do jednotky nebo připojte obraz ISO, který máte. Zde byl obraz iso připojen následovně:

# mkdir /tftpboot/sles10_sp3

# mount -o loop SLES-10-SP3-DVD-x86_64.iso /tftpboot/sles10_sp3

Viz náš dřívější článek Jak připojit a zobrazit soubory ISO.

Krok 4:Zkopírujte obrázky vmlinuz a initrd do /tftpboot

Zkopírujte initrd do adresáře tftpboot, jak je ukázáno níže.

# cd /tftpboot/sles10_sp3/boot/x86_64/loader

# cp initrd linux /tftpboot/

Krok 5:Vytvořte adresář pxelinux.cfg

Vytvořte adresář pxelinux.cfg pod /tftpboot a definujte definice zavádění pxe pro klienta.

# mkdir /tftpboot/pxelinux.cfg

# cat >/tftpboot/pxelinux.cfg/default
default linux
label linux
kernel linux
append initrd=initrd showopts instmode=nfs install=nfs://192.168.1.101/tftpboot/sles10_sp3/

Následující možnosti se používají pro,

  • kernel – určuje, kde na TFTP serveru najít instalační jádro Linuxu.
  • install – určuje zaváděcí argumenty, které se mají předat instalačnímu jádru.

Jak je uvedeno výše, instalační režim nfs se používá pro obsluhu instalačních RPM a konfiguračních souborů. Nechte tedy na tomto počítači nastavit nfs s adresářem /tftpboot v exportovaném seznamu. Do konfiguračního souboru autoyast můžete přidat možnost „autoyast“, abyste zautomatizovali kroky instalace operačního systému, jinak je budete muset provést ručně.

Krok 6:Změňte vlastníka a oprávnění pro adresář /tftpboot

Přiřaďte none:nobody adresáři /tftpboot.

# chown nobody:nobody /tftpboot

# chmod 777 /tftpboot

Krok 7:Upravte /etc/dhcpd.conf

Upravte soubor /etc/dhcpd.conf, jak je uvedeno níže.

# cat /etc/dhcpd.conf

ddns-update-style none;
default-lease-time 14400;
filename "pxelinux.0"; 

# IP address of the dhcp server nothing but this machine.
next-server 192.168.1.101;
subnet 192.168.1.0 netmask 255.255.255.0 {
  # ip distribution range between 192.168.1.1 to 192.168.1.100
  range 192.168.1.1 192.168.1.100;
  default-lease-time 10;
  max-lease-time 10;
}

Specifikujte rozhraní v /etc/syslinux/dhcpd, aby naslouchalo požadavkům dhcp přicházejícím od klientů.

# cat /etc/syslinux/dhcpd | grep DHCPD_INTERFACE
DHCPD_INTERFACE=”eth1”;

Zde má tento stroj IP adresu 192.168.1.101 na zařízení eth1. Zadejte tedy eth1 pro DHCPD_INTERFACE, jak je uvedeno výše.

Související informace naleznete v našem dřívějším článku o 7 příkladech konfigurace síťového rozhraní pomocí ifconfig.

Krok 8:Upravte /etc/xinetd.d/tftp

Upravte soubor /etc/xinetd.d/tftp tak, aby odrážel následující. Ve výchozím nastavení je hodnota parametru disable „yes“, ujistěte se, že jste ji upravili na „no“ a musíte změnit položku server_args na -s /tftpboot.

# cat /etc/xinetd.d/tftp
	service tftp {
                       socket_type     = dgram
                       protocol          = udp
                       wait               = yes
                       user               = root
                       server            = /usr/sbin/in.tftpd
                       server_args     = -s /tftpboot
                       disable           = no
            }

Krok 9:Žádné změny v /etc/xinetd.conf

Soubor etc/xinetd.conf není třeba upravovat. Použijte výchozí hodnoty uvedené v souboru xinetd.conf.

Krok 10:Restartujte služby xinetd, dhcpd a nfs

Restartujte tyto služby, jak je uvedeno níže.

# /etc/init.d/xinetd restart

# /etc/init.d/dhcpd restart

# /etc/init.d/nfsserver restart

Po restartování služeb nfs můžete zobrazit exportovaný seznam adresářů (/tftpboot) pomocí následujícího příkazu,

# showmount -e

Nakonec je nastavení tftpboot připraveno a nyní lze klientský počítač zavést po změně prvního zaváděcího zařízení jako „síť“ v nastavení BIOSu.

Pokud narazíte na jakoukoli chybu tftp, můžete problém vyřešit načtením některých souborů prostřednictvím služby tftpd.

Načtěte nějaký soubor z tftpserveru, abyste se ujistili, že služba tftp funguje správně pomocí tftp klienta. Předpokládejme, že soubor sample.txt je přítomen v adresáři /tftpboot.

 $ tftp -v 192.168.1.101 -c get sample.txt

Linux
  1. Vyvíjejte síťové aplikace pro ESP8266 pomocí Mongoose v Linuxu

  2. 15 Linux Hardening Steps for CentOS 7 Server

  3. Použití Checkmk pro monitorování vaší serverové infrastruktury Linux

  1. UNIX / Linux:Jak nainstalovat a nakonfigurovat mod_perl pro Apache 2

  2. Jak nakonfigurovat skupiny prostředků pro MySQL Server běžící na Linuxu

  3. Jak nakonfiguruji Qt pro křížovou kompilaci z Linuxu do cíle Windows?

  1. Používáte Tcpdump pro protokolování veškeré síťové aktivity procházející serverem routeru?

  2. 12 kroků k instalaci a konfiguraci Alfresco na UNIX / Linux

  3. Jak získat přístup k webovému serveru, který běží na WSL (Windows Subsystem for Linux) z místní sítě