Vytvoření bitové kopie Linuxu pro spouštění ze sítě. Instalace Ubuntu přes síť přes PXE

Už docela dávno jsem napsal článek o síťové instalaci Ubuntu, přes lokální síť, bez použití různých médií, pouze PXE bootování a je to. Tentokrát jsem se rozhodl článek aktualizovat a přiblížit moderní realitě a hlavně rozšířit funkcionalitu. Vše bude provedeno pomocí příkladu Ubuntu 14.04!

Pro různé požadavky musí existovat různá řešení, hlavní háček je v tom, že často nepotřebujeme jeden operační systém, ale několik. Rozhodl jsem se tedy napsat článek na toto téma. Předchozí článek najdete v odkazu.
Hlavní myšlenkou je, že budeme mít možnost vybrat si, jaký operační systém nainstalujeme, stejně jako jeho bitovou hloubku ve skutečnosti budeme mít po nahrání systému přes lokální síť bootovací menu;
To vše implementujeme na příkladu právě vydaného Ubuntu 14.04

Pro nechápavé se vše spouští, aby bylo možné si vybrat, jaký operační systém nainstalovat, a také jeho bitovou kapacitu, tzn. Měla by se objevit nabídka, kde budou prezentovány všechny operační systémy dostupné pro instalaci přes síť, která bude vypadat takto:

Ubuntu_14.04x86
Ubuntu_14.04amd64
Pro práci budeme potřebovat:
Nezbytně!
1) Nakonfigurovaná brána, použijte například článek:
2) DHCP server, můžete například použít článek:
3) Nakonfigurovaný zavaděč PXE načítání serveru TFTP, použijte článek:

Volitelný!
3) Dalším, nikoli však povinným bodem, může být nakonfigurovaný DNS server, příklad je v článku

Předpokládá se, že jste nakonfigurovali bránu, DHCP, TFTP server a také přidali zaváděcí nabídku PXE, protože Nebudu se tímto bodem zabývat.

Pojďme k nastavení systému, který se má nainstalovat.
Nejprve si vytvoříme instalační bod pro Ubuntu 14.04x86, ke kterému budeme potřebovat instalační disk odpovídající kapacity. Musíme si jej stáhnout a připojit, abychom mohli extrahovat soubory zavaděče a instalačního systému systému.
Protože Soubor síťového zavaděče se nachází v adresáři adresáře /var/lib/tftpboot/ odkud jsou staženy serverem TFTP, pak v něm musíme vytvořit adresář Ubuntu, abychom do něj vložili soubory z instalačních disků, udělejme toto:
mkdir /var/lib/tftpboot/ubuntu
V adresáři Uubntu vytváříme další adresáře pro soubory zavaděče instalátoru OS pro x86bitové systémy a ADM64, resp.
mkdir /var/lib/tftpboot/ubuntu/x86 mkdir /var/lib/tftpboot/ubuntu/amd64

Nyní si musíme stáhnout instalační disk, můžete si jej prohlédnout zde mirror.yandex.ru/ubuntu-releases/14.04/
Stáhneme x86 verzi pro server, protože... váží méně
wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-i386.iso
Po dokončení stahování obrazu ISO jej musíme připojit, abychom mohli extrahovat soubory, které potřebujeme, a to do adresáře /media vytvoříme adresář iso, Pojďme to udělat:

Mkdir/media/iso
Připojte obraz disku do tohoto adresáře:
sudo su
připojit ubuntu-14.04-server-i386.iso /media/iso/
Systém zobrazí, že disk je připojen v režimu čtení:

mount: warning: /media/iso/ se zdá být připojeno pouze pro čtení.
Pojďme si vyzvednout bootloader a instalační jádro:
cd /media/iso/install/netboot/ubuntu-installer/i386/

Máme zájem o 2 soubory linux A initrd.gz, který musíme vyzvednout a přesunout do adresáře /var/lib/tftpboot/ubuntu/x86
zkopírujeme je:
cp linux /var/lib/tftpboot/ubuntu/x86 cp initrd.gz /var/lib/tftpboot/ubuntu/x86

To je vše, již nepotřebujeme instalační obraz, nejprve jej odpojíme z adresáře iso:
umount /media/iso/

Poté lze obraz ISO smazat.
Podobné kroky provádíme pro obraz instalačního disku s x64 bitovou hloubkou, nebudu popisovat co a kde, jen uvedu výpis příkazů, kroky jsou stejné, jen cesty se mírně liší, je to napsané tam amd64

Wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-amd64.iso

Připojte ubuntu-14.04-server-amd64.iso /media/iso/

CD /media/iso/install/netboot/ubuntu-installer/amd64/

Cp linux /var/lib/tftpboot/ubuntu/amd64 cp initrd.gz /var/lib/tftpboot/ubuntu/amd64

Umount /media/iso/

S instalačními soubory jsme hotovi, nyní nakonfigurujeme zaváděcí nabídku PXE.

Konfigurace spouštěcí nabídky PXE
Nejprve přidáme položku nabídky s názvem Instalace Linuxu, k tomu musíme upravit soubor:
nano /var/lib/tftpboot/pxelinux.cfg/default

Přidejte záznam na konec souboru:
LABEL Linux Install MENU LABEL ^Linux Install KERNEL vesamenu.c32 APPEND pxelinux.cfg/linux.menu

Jak můžete vidět ze záznamu, budeme mít další stránku s výběrem distribucí pro instalaci, pojďme ji vytvořit:

Nano /var/lib/tftpboot/pxelinux.cfg/linux.menu

Přidejme k tomu názvy bodů stahování s možností vybrat operační systém k instalaci, přičemž toto bude Ubuntu 14.04 x86 A amd64 architektura:
LABEL Instalovat Ubuntu 14.04x86 štítek MENU ^Ubuntu 14.04x86 KERNEL ubuntu/x86/linux APPEND initrd=ubuntu/x86/initrd.gz LABEL Instalovat Ubuntu 14.04amd64 MENURN16d6Ubuntam/u x PŘIPOJIT initrd=ubuntu/ amd64 /initrd.gz

V tomto okamžiku je nastavení dokončeno, můžete připojit klientský počítač a pokusit se nabootovat přes PXE, v důsledku toho po nabootování systému přes síť budeme mít nabídku takto:

Vybereme, co chceme nainstalovat, instalace se spustí automaticky a pak už jen následujeme pokyny instalátoru systému.
Ostatní operační systémy se přidávají podobným způsobem.
Tady asi pro dnešek skončím.
No, jako vždy, pokud máte nějaké dotazy, zanechte prosím komentář, pokud najdete chybu, napište mi osobní zprávu nebo e-mail.

V serverovnách se stále častěji vyskytují servery bez CD/DVD mechanik. Čas od času potřebují nainstalovat operační systém a instalace přes síť s tím může výrazně pomoci. Jednoduše zapnete server a zahájíte instalaci. Síťová karta musí podporovat technologii PXE. PXE – Pre-Boot Execution Environment – ​​umožňuje spouštění ze sítě.

Ale PXE k úplné spokojenosti nestačí. Technologie, která instalaci zcela zautomatizuje, je kickstart (vyvinutý společností Red Hat). Jeho podstata je jednoduchá - předem sestavíme soubor obsahující hodnoty všech možností, které mohou být během instalace potřeba. Navíc můžeme spouštět naše skripty před a po instalaci, čímž nastavíme nastavení pro budoucí OS.

Instalace typické Linuxové sady pomocí kickstartu trvá 5-7 minut.

Instalační server vyžaduje 3 služby a 1 balíček.


  • DHCP poskytuje klientům síťová pověření

  • TFTP je snadný způsob sdílení souborů po síti

  • Syslinux obsahuje zavaděč pxelinux.0 a některé další soubory

  • NFS umožňuje přístup k systému souborů přes síť
Proces instalace lze rozdělit do fází:

  1. pxe - firmware pxe začne fungovat, když v BIOSu nastavíme instalaci přes síť, nebo když se na HDD nenajde MBR.

  2. DHCP fáze 1 - klient obdrží podrobnosti o síti a adresu tftp serveru a také název zaváděcího souboru (pxelinux.0). Ve výchozím nastavení je server TFTP serverem DHCP.

  3. TFTP - zavaděč pxelinux.0 kontaktuje TFTP server a požaduje od něj initrd.img (počáteční RAM disk, dočasný souborový systém), linuxové jádro.

  4. Kernel - přenos řízení na jádro Linuxu.

  5. DHCP fáze 2 - linuxové jádro požádá server DHCP o získání podrobností o síti a následně adresy serveru NFS.

  6. NFS – fáze, kdy je připojen oddíl NFS

  7. init - /sbin/init je spuštěn a je na něj přeneseno řízení. Init je hlavní proces v systému, ostatní procesy jsou podřízené procesy init.
Volně řečeno:

Server DHCP naslouchá požadavkům na bootp ve své síti; po obdržení požadavku se podívá na zdrojovou MAC adresu, a pokud má pro tuto MAC adresu odpovídající záznam, začne s ní pracovat. DHCP server poskytne klientovi síťové údaje (IP adresu, bránu, DNS server,...) a odešle zaváděcí obraz pxelinux.0 pomocí protokolu TFTP. Tento obrázek stačí k zobrazení nabídky výběru OS.

Po výběru OS začneme načítat jádro a zahájíme instalaci, přičemž vybíráme zdroj instalace - NFS server. Připravený obsah budoucího operačního systému musíte nahrát na server NFS a ujistit se, že jsou exportovány odpovídající adresáře.

DHCP

Nainstalujte DHCPD a přidejte jej do spuštění:
# yum -y nainstalujte dhcp
# chkconfig dhcpd zapnuto

Udělejte soubor /etc/dhcpd.conf takto:

Ddns-update-style prozatímní;
ignorovat klientské aktualizace;
podsíť 192.168.146.0 maska ​​sítě 255.255.255.0 (
opční routery 192.168.146.1;
volba maska ​​podsítě 255.255.255.0;
volba název-domény "domena.místní";
volba servery doménových jmen 192.168.146.1;
default-lease-time 21600;
max. doba pronájmu 43200;
Povolit spouštění;
Povolit bootování;
hostitelský unixbox (
hardwarový ethernet 00:0c:29:77:9c:9c;
pevná adresa 192.168.146.128;
název souboru "pxelinux.0";
volba název-hostitele "unixbox";
další server 192.168.146.1;
}
}

Spusťte DHCPD nebo restartujte, pokud byl spuštěn:
# služba restart dhcpd

Vypněte bránu firewall, která je ve výchozím nastavení povolena (jinak se cílovému počítači při spuštění zobrazí chyba „Cíl ICMP nedostupný (hostitel je administrativně zakázán)):
# service iptables se zastaví
# chkconfig iptables vypnuto

TFTP

Nainstalujte balíček tftp-server z úložiště:
# yum -y nainstalujte tftp-server

Nyní musíte povolit tftp v konfiguraci xinetd, abyste to udělali, v souboru /etc/xinetd.d/tftp změňte „disable = yes“ na „disable = no“ a povolte xinetd:
# služba xinetd start

Zkontrolujeme, že port serveru tftp naslouchá (tftp běží na portu 69):
# netstat -nlp | grep:69
udp 0 0 0.0.0.0:69 0.0.0.0:* 3105/xinetd

Syslinux

Balíček obsahuje sadu souborů ke stažení přes síť. Potřebujeme pxelinux.0, který nasloužíme jako boot image přes DHCP a menu.c32, se kterým se vykreslí atraktivnější uživatelské menu. (Pro CentOS 4 je třeba stáhnout aktualizovaný syslinux se závislostmi z rpmfind.net.)

# cp $(rpm -ql syslinux | grep menu.c32) /tftpboot/
# cp $(rpm -ql syslinux | grep pxelinux.0) /tftpboot/

NFS

Ve výchozím nastavení má systém s největší pravděpodobností NFS, pokud ne, nainstalujte jej pomocí yum.
# chkconfig nfs zapnuto

Přidejte položku do souboru /etc/exports:
echo “/var/install-server/ *(ro,no_root_squash)” >> /etc/exports

Spusťte nfs server:
# spuštění služby nfs

Zkontrolujeme, zda byl adresář exportován:
#exportfs
/var/install-server

Vytvoříme strukturu tftp serveru, přidáme obsah na server:
# mkdir -p /tftpboot/(pxelinux.cfg,centos5_x86)
# mkdir -p /var/install-server/centos5_x86

Připojíme naše DVD s CentOS 5 a nahrajeme obsah do /var/install-server/centos5_x86:
# mount /dev/cdrom /mnt/
# cp -r /mnt/* /var/install-server/centos5_x86/
# cp /var/install-server/centos5_x86/images/p xeboot/* /tftpboot/centos5_x86/

V adresáři /tftpboot/pxelinux.cfg vytvořte výchozí soubor a vyplňte jej, jak je uvedeno níže:
výchozí nabídka.c32

výzva 0
časový limit 100

jádro /centos5_x86/vmlinuz
připojit initrd=/centos52_x86/initrd.img
štítek Konec
localboot 0

Instalace OS přes síť

Po všech výše popsaných manipulacích můžeme začít s instalací OS. Spustíme náš počítač s MAC adresou 00:0c:29:77:9c:9c, což umožňuje spouštění sítě v systému BIOS. Když začne instalace, děláme vše standardním způsobem, kromě toho, že v seznamu, kam nainstalovat operační systém, musíte vybrat NFS a poté na dotaz uveďte:
Název serveru NFS: 192.168.146.1
Adresář CentOS: /var/install-server/centos5_x86

Automatizujte instalaci pomocí Kickstart

Pro automatizaci musíte vytvořit soubor obsahující všechny potřebné informace, které mohou být vyžadovány během procesu instalace. Takový soubor je vytvořen programem system-config-kickstart (nástroj GUI) v jakémkoli CentOS s X Window:
# yum -y install system-config-kickstart
# system-config-kickstart

Poté, co jsme soubor vytvořili pomocí system-config-kickstart, je třeba jej přenést na instalační server a zpřístupnit prostřednictvím jednoho z protokolů HTTP, NFS nebo FTP. Protože instalační server aktivně používá NFS, budeme jej používat.

V mém případě je soubor kickstart umístěn v /var/install-server/centos5_x86/centos5_ x86_ks.cfg .

Do souboru /tftpboot/pxelinux.cfg/default stačí přidat direktivu ks označující umístění souboru kickstart. Příklad se souborem kickstart:
výchozí nabídka.c32
název nabídky Linux Install Server. Vyberte prosím OS, který chcete nainstalovat.
výzva 0
časový limit 100
štítek CentOS 5 x86 Vlastní instalace
jádro /centos5_x86/vmlinuz
připojit initrd=/centos5_x86/initrd.img
štítek CentOS 5 x86 Kickstart Install
jádro /centos52_x86/vmlinuz
připojit initrd=/centos5_x86/initrd.img ks=nfs:192.168.146.1:/var/install-server/c entos5_x86/centos5_x86_ks.cfg
štítek Konec
localboot 0

Nyní, když jsme v nabídce výběru OS vybrali „CentOS 5 x86 Kickstart Install“, budeme muset počkat na server s nainstalovaným OS.

Níže je uveden příklad mého souboru Kickstart. Chtěl jsem, aby nainstalovaný OS měl v nastavení sshd možnost „PermitRootLogin yes“. Soubor Kickstart umožňuje nejen nastavit parametry instalace OS, ale také spouštět skripty před instalací (%pre) a po (%post). Tímto způsobem můžete napsat spoustu ladicích skriptů a získat kompletně hotový OS za 5-10 minut instalace.

#platforma =x86, AMD64 nebo Intel EM64T
# Informace o autorizaci systému
auth --useshadow --enablemd5
# Konfigurace zavaděče systému
bootloader --location=mbr
# Vymažte hlavní spouštěcí záznam
zerombr
#Informace o vymazání oddílu
clearpart --all --initlabel
# Použijte instalaci v textovém režimu
text
# Konfigurace brány firewall
firewall -- zakázán
# Spusťte Setup Agent při prvním spuštění
firstboot --zakázat
#Systémová klávesnice
klávesnice nám
# Jazyk systému
lang en_US
# Úroveň protokolování instalace
protokolování --level=info
# Použijte instalační médium NFS
nfs --server=192.168.146.1 --dir=/var/install-server/centos5_x86
# Informace o síti
síť --bootproto=dhcp --device=eth0 --onboot=on
#Heslo roota
rootpw --iscrypted $1$Bz09jb2I$hfzh2vApqMjG0sEPsAwNr/
# Konfigurace SELinux
selinux --zakázáno
# Nekonfigurujte X Window System
přeskočit
# Systémové časové pásmo
časové pásmo Evropa/Moskva
# Nainstalujte OS místo upgradu
Nainstalujte
# Informace o rozdělení disku
část swap --bytes-per-inode=4096 --fstype=”swap” --size=512
část / --bytes-per-inode=4096 --fstype=”ext3” --grow --size=1

%post --interp /bin/bash
PATH=/nějaká práce
/bin/mkdir$PATH
/bin/sed -e ‘s/#PermitRootLogin yes/PermitRootLogin yes/g’ /etc/ssh/sshd_config > $PATH/sshd_config_edited
/bin/cp $PATH/sshd_config_edited /etc/ssh/sshd_config
/bin/rm -rf $PATH

Tento článek se bude zabývat instalací Ubuntu Linux ze síťového spouštěcího úložiště.

Nainstalujeme tedy Ubuntu 10.04 na klientské počítače ze serveru 192.168.0.3, který je hostitelem síťového zaváděcího serveru a dhcpd. Pro instalaci musí mít úložiště adresář dists/lucid/main/debian-installer. Pokud přidáte podobné adresáře pro jiná úložiště (multiverse, Universe, Restricted), pak ve fázi „Výběr a instalace softwaru“ bude seznam softwaru větší. V této příručce se budu touto možností zabývat. Pokud jste vytvořili zrcadlo debmirror, pak tyto adresáře s největší pravděpodobností vůbec nemáte. Stáhnout si je můžete například z ftp://mirror.yandex.ru. Během instalace také instalační program, bez ohledu na vybrané úložiště, často přistupuje na security.ubuntu.com.

Krok 1: Instalace serveru

Instalace potřebných aplikací:

apt-get install tftpd-hpa openbsd-inetd

Stáhněte a rozbalte obraz pro síťovou instalaci:

tar -xvzf netboot.tar.gz -C /var/lib/tftpboot/

chown -R none:nogroup /var/lib/tftpboot

Pro spouštění ze sítě musíte klientovi předat 2 parametry: název spouštěcího souboru a zaváděcí souborový server (v dhcpd jsou to název souboru a parametry dalšího serveru):

další server 192.168.0.3;
název souboru "pxelinux.0";

Server je nainstalován, můžete nainstalovat systém.

Krok 2: Instalace systému

Chcete-li nainstalovat systém ze serveru v síti, musíte v systému BIOS povolit spouštění ze sítě (PXE). Pokud váš bios podporuje spouštěcí nabídku, je lepší ji použít k výběru spouštěcího zařízení - aby nedošlo k problémům, pokud zapomenete změnit pořadí spouštění.

Pokud je vše v pořádku, zobrazí se uvítací obrazovka instalačního programu:

  • Základní Ubuntu Server
  • jmenný server (DNS)
  • Server Edubuntu
  • LAMP server
  • poštovní server
  • OpenSSH server
  • PostgreSQL databáze
  • Tiskový server
  • Souborový server Samba
  • Ubuntu Enterprise Cloud
  • Hostitel virtuálního počítače
  • Sada pro tvorbu a úpravu 2D/3D
  • Sada pro tvorbu a úpravu zvuku
  • Desktop Edubuntu KDE
  • Plocha Edubuntu
  • Plocha Kubuntu
  • Netbook Kubuntu
  • Audio pluginy LADSPA a DSSI
  • Velký výběr balíčků písem
  • Další role Mythbuntu
  • Frontend Mythbuntu
  • Hlavní backend Mythbuntu
  • Backend Mythbuntu slave
  • Netbook Ubuntu
  • Desktop Ubuntu
  • Sada pro tvorbu a úpravu videa
  • Plocha Xubuntu
  • Manuální výběr balíčku

V dnešní době je stále více úloh automatizováno a virtualizace se stále více používá k maximalizaci efektivity serverů. Stále však musíte nainstalovat operační systémy. Každý to dělá po svém: někteří mají kapsy plné různých obrázků pro všechny příležitosti, jiní nosí „kabelku“ s disky, nebo dokonce dva, staromódním způsobem. Správci tuto práci zpravidla dělají s malým potěšením. Podívejme se, jak zkrátit čas na triviální úkoly, jak naučit počítače instalovat systémy samy, zcela bez účasti správce, pouze pomocí lokální sítě.

Dnes se tedy naučíme: instalovat Windows a Linux po síti, načítat malé ISO obrazy, užitečný software (všemožné Kaspersky, Acronis, WinPE, memtesty), nasazovat tenké klienty a spravovat je. Aby vás například účetní pracující s 1C přes RDP nezmlátila, protože se jí zhroutil Windows, a zprávu bylo potřeba připravit včera... Nebo lakomý šéf, který si nechce aktualizovat počítač, obdivoval vaše profesionalita, kdy uvidíme, jak Windows 8 letí na starých počítačích... Server, který poskytuje bootování po síti (PXE), nám pomůže dosáhnout našich záludných cílů.

Každý správce systému má ve své schránce univerzální USB disk pro nouzovou počítačovou resuscitaci. Souhlasím, bylo by mnohem lepší mít stejnou funkcionalitu pouze s jednou síťovou kartou. Je třeba také poznamenat, že je možné současně pracovat s několika uzly najednou. Na základě našich potřeb tedy máme dvě řešení: použít PXE nebo LTSP.

LTSP pro nás není příliš vhodný: je navržen tak, aby nahrál OS nainstalovaný na samotném serveru přes síť, což umožňuje použití serverových aplikací LTSP. To není přesně to, co potřebujeme. PXE je nástroj pro bootování počítače přes síť bez použití lokálního paměťového média, stejně jako LTSP. PXE umožňuje organizovat spouštěcí nabídku s více spouštěním, podobně jako univerzální „USB resuscitátor“.


Co budeme implementovat?

Všechno to začalo potřebou mít po ruce nástroj pro vzdálenou instalaci Ubuntu/Debian Serveru přes síť s možností zavést Live CD malého systému, jako je SliTaz nebo Kolibri OS.
Jak se říká, chuť k jídlu přichází s jídlem: neměli jsme čas realizovat to, co jsme si naplánovali, a do plánu se přidala řada „přání“. V důsledku toho se seznam ukázal jako docela působivý.

  1. Tencí klienti Thinstation na bázi Linuxu.
  2. Sekce Linux.
    1. Instalace Ubuntu 14.04 x86.
    2. Instalace Ubuntu 14.04 x64.
    3. Instalace Ubuntu 12.04 x86.
    4. Instalace Ubuntu 12.04 x64.
  3. oddíl Windows.
    1. Instalace systému Windows 2012.
    2. Instalace systému Windows 7.
  4. Acronis.
    1. Windows PE s balíčkem užitečného softwaru.
    2. Acronis True Image.
      1. Starší BIOS.
      2. UEFI.
    3. Acronis Disk Director.
      1. Starší BIOS.
      2. UEFI.
  5. Kaspersky Rescue v 10.
  6. ERD Commander od 5 do 8 prostřednictvím obrazu ISO.
  7. Memtest.

Vše dáme dohromady a vzlétáme

Jako distribuce pro server padla volba na Ubuntu Server 14.04.2 LTS. Můžete si vybrat jakýkoli jiný OS, rozdíl bude pouze v syntaxi. Pojďme tedy začít. Budeme potřebovat TFTP, DHCP (nemusí být nutně nainstalován na stejném serveru; router může fungovat jako DHCP server), službu pro organizaci síťového souborového systému NFS. Budeme uvažovat pouze ta nastavení, která nás v rámci tématu zajímají. Nejprve si po provedení všech aktualizací nainstalujme vše, co potřebujete:

Pokračování je dostupné pouze pro členy

Možnost 1. Připojte se ke komunitě „stránky“ a přečtěte si všechny materiály na stránce

Členství v komunitě ve stanoveném období vám umožní přístup ke VŠEM hackerským materiálům, zvýší vaši osobní kumulativní slevu a umožní vám získat profesionální hodnocení Xakep Score!

Každý, kdo se i jen občas zabývá administrací, si alespoň jednou potřeboval do svého počítače nainstalovat operační systém. A často se vše děje takto: obrázek se stáhne, zapíše na disk nebo flash disk, načte a nainstaluje. Může se však ukázat, že nemáte po ruce flash disk nebo disk a instalaci je třeba dokončit včera... Pak můžete zavést systém přes síť a s Linuxem v tomto ohledu nejsou žádné zvláštní problémy. Typická konfigurace je hromada DHCP, TFTP A NFS. Ale neměl jsem to po ruce NFS, ale bylo Samba. Musel jsem tedy vymyslet, jak jej použít Samba namísto NFS.

Vypadalo to jako nic špatného, ​​změnil jsem nastavení a je to, ale něco zpočátku nefungovalo, musel jsem šťourat...

Ale tady začnu úplně od začátku. Nejprve si tedy musíte pořídit distribuční sadu. Od té doby, co jsme dali Linux Mint Hledáme nový obrázek. Stáhněte si distribuci, která nám vyhovuje (nainstaloval jsem tu s MATE, ale na tom samozřejmě nezáleží). Po stažení obrázku musíte získat přístup k souborům obrázků. Některé návody doporučují rozbalit obraz, ale já v tom nevidím smysl, takže podporuji názor, že obraz připojit jako smyčka. Abychom nenarušili stávající pořadí, jednoduše vytvoříme nový adresář, kam obraz připojíme:

# mkdir /mnt/mint
# mount -o loop /home/user/download/linuxmint-17-mate-64bit-v2.iso /mnt/mint

Dále musíte soubory zpřístupnit v síti, aby je mohl instalátor přečíst. Jak jsem řekl výše, pro tento účel používám Samba. Otevřete proto konfigurační soubor a přidejte novou sdílenou složku přidáním následující části:


cesta = /mnt/mint
k dispozici = ano
prohlížet = ano
veřejnost = ano
zapisovatelný = ne

Mělo by fungovat přes výchozí nastavení Samba. Pokud to nefunguje, pravděpodobně jste něco změnili sami, což znamená, že najdete způsob, jak problém vyřešit. Tak jsme přidali míč máta, jehož prostřednictvím můžete získat soubory pro instalaci ze sítě. Nezapomeňte restartovat Samba pro přijetí nových nastavení.

Pro Archlinux:

# systemctl restart smbd
# systemctl restart nmbd

Pro Gentoo:

# /etc/init.d/samba restart

Dále je třeba připravit síťový bootloader. Program nám s tím pomůže tftp-hpa. V Archlinux a dovnitř Gentoo Tak se ten balíček jmenuje. Musíte umístit zaváděcí soubory do pracovního adresáře ftp serveru (v arch /srv/tftp). Zkopírujte jádro a initrd z připojeného obrazu:

# cp /mnt/mint/casper/(vmlinux,initrd.lz) /srv/http

# cp /usr/lib/syslinux/bios/(pxelinux.0,menu.c32,ldlinux.c32,libutil.c32) /srv/http

VÝCHOZÍ nabídka.c32
LABEL LinuxMint
KERNEL vmlinuz
PŘIPOJIT showmounts toram root=/dev/cifs boot=casper netboot=cifs nfsroot=//192.168.0.1/mint NFSOPTS=-oguest,ro initrd=initrd.lz nosplash

Kde 192.168.0.1 - naši IP adresu vzhledem k počítači, na který budeme instalovat. Ach ano, a asi nfs tam - to není překlep, v režimu práce s CIF, musíte předat možnosti typu jako pro nfs, Nedokážu říct proč. Zvláštní pozornost by měla být věnována volbě toram, protože bez ní vše spadne napůl a nemůžeme nabootovat (možná jsou to vlastnosti samby). Ale s touto volbou si musíte pamatovat, že cílový počítač musí mít dostatek paměti RAM, aby tam zkopíroval instalační program. Je třeba spustit TFTP server. Pro Archlinux:

# systemctl tftpd.socket start

Pro Gentoo:

# /etc/init.d/in.tftpd start

Nyní musí BIOS cílového počítače nějak zjistit, odkud se načítá. To nám pomůže dnsmasq(i když to není nutné, můžete použít jiný DHCP server; zde popisuji, co bylo po ruce). Nastavení distribuce IP (volitelné rozsah dhcp) dle vlastního uvážení, pro vaši vlastní „síť“ mezi stroji. Pro instalaci jsou pro nás důležité pouze tři možnosti:

Dhcp-boot=/pxelinux.0
dhcp-option=vendor:PXEClient,6,2b
pxe-service=x86PC, "Instalovat Linux", pxelinux

Je třeba je přidat do konfigurace dnsmasq, a samozřejmě jej spustit (nebo restartovat).

Pro Archlinux:

# systemctl spusťte dnsmasq

Pro Gentoo:

# /etc/init.d/dnsmasq start

Pamatujte, že aby vše fungovalo, musí být porty zapnuté DHCP(UDP 67,68), TFTP(UDP 69), Samba(UDP 137.138, TCP 139.445) musí být otevřený; Pokud není firewall nebo je rozhraní zcela otevřené - dobře, mělo by to fungovat.

Poznámka: Vzhledem k tomu, že systémy jsou neustále aktualizovány, mohou být uvedené cesty k souborům neplatné, tedy odlišné od cest ve vašem systému. Proto se pečlivě podívejte na strukturu balíčků vašeho systému.