Stvaranje slike Linuxa za pokretanje preko mreže. Instaliranje Ubuntua preko mreže putem PXE

Dugo sam pisao članak o instaliranju Ubuntua na mrežu, preko lokalne mreže, bez korištenja raznih medija, samo dizanje preko PXE i to je to. Ovaj put sam odlučio ažurirati članak i približiti ga suvremenoj stvarnosti, i što je najvažnije, proširiti funkcionalnost. Sve će biti učinjeno koristeći Ubuntu 14.04 kao primjer!

Pod različitim zahtjevima, moraju postojati različita rješenja, glavni problem je što često ne trebamo jedan operativni sustav, već nekoliko. Stoga sam odlučio napisati članak o ovoj temi. Prethodni članak nalazi se na poveznici,.
Glavna ideja je da ćemo imati mogućnost birati koji operativni sustav ćemo instalirati, kao i njegovu bitnu dubinu, zapravo, imat ćemo boot meni nakon dizanja sustava preko lokalne mreže.
Sve ćemo to implementirati na primjeru upravo objavljenog Ubuntua 14.04

Za one koji ne razumiju, sve je pokrenuto kako bi imali mogućnost izbora koji će operativni sustav instalirati, kao i njegovu bitnu dubinu, tj. trebao bi se pojaviti izbornik u kojem će biti prikazani svi operativni sustavi dostupni za instalaciju preko mreže, a koji će izgledati ovako:

Ubuntu_14.04x86
Ubuntu_14.04amd64
Za rad nam je potrebno:
Obavezno!
1) Konfigurirani pristupnik, na primjer, koristite članak:
2) DHCP poslužitelj, na primjer, možete koristiti članak:
3) Konfigurirani TFTP poslužitelj koji učitava PXE bootloader, upotrijebite članak:

Neobavezno!
3) Dodatna, ali ne i obavezna točka, može biti konfigurirani DNS poslužitelj, primjer je u članku

Pretpostavlja se da ste konfigurirali gateway, DHCP, TFTP poslužitelj i također dodali PXE izbornik za pokretanje. Neću stati na ovom mjestu.

Prijeđimo na postavljanje instaliranog sustava.
Za početak ćemo napraviti instalacijsku točku za Ubuntu 14.04x86, za što će nam trebati instalacijski disk odgovarajuće bitnosti. Moramo ga preuzeti i montirati kako bismo izdvojili datoteke pokretačkog programa za instalaciju sustava.
Jer imamo datoteku mrežnog punjača u imeniku direktorija /var/lib/tftpboot/ odakle ih povlači TFTP poslužitelj, tada moramo stvoriti Ubuntu direktorij u njemu kako bismo u njega stavljali datoteke s instalacijskih diskova, učinimo ovo:
mkdir /var/lib/tftpboot/ubuntu
U direktoriju Uubntu stvaramo dodatne direktorije za datoteke pokretačkog programa za instalaciju OS-a za x86 bitne sustave i ADM64.
mkdir /var/lib/tftpboot/ubuntu/x86 mkdir /var/lib/tftpboot/ubuntu/amd64

Sada moramo preuzeti instalacijski disk, možete vidjeti ovdje mirror.yandex.ru/ubuntu-releases/14.04/
Preuzet ćemo x86 verziju za poslužitelj. ona teži manje
wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-i386.iso
Nakon što je preuzimanje ISO slike završeno, moramo je montirati kako bismo izdvojili datoteke koje su nam potrebne, a za to u direktoriju /mediji napravit ćemo imenik iso, Učinimo to:

Mkdir /mediji/iso
Montirajte sliku diska u ovaj direktorij:
sudo su
montiraj ubuntu-14.04-server-i386.iso /media/iso/
Sustav će prikazati da je disk montiran u načinu čitanja:

mount: upozorenje: /media/iso/ izgleda da je montiran samo za čitanje.
Idemo pokupiti bootloader i instalacijsku jezgru:
cd /media/iso/install/netboot/ubuntu-installer/i386/

Zanimaju nas 2 datoteke linux I initrd.gz, koje trebamo pokupiti i premjestiti u imenik /var/lib/tftpboot/ubuntu/x86
kopirajmo ih:
cp linux /var/lib/tftpboot/ubuntu/x86 cp initrd.gz /var/lib/tftpboot/ubuntu/x86

To je to, više nam ne treba instalacijska slika, prvo je demontiramo iz iso direktorija:
umount /mediji/iso/

Nakon toga, ISO slika se može izbrisati.
Slične radnje provodimo za sliku instalacijskog diska s dubinom bita x64, neću opisivati ​​što i gdje, samo ću dati popis naredbi, radnje su iste, samo se staze malo razlikuju, napisano je tamo amd64

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

Montirajte 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

Umontiraj /medij/iso/

Završili smo s instalacijskim datotekama, sada idemo konfigurirati PXE boot izbornik.

Prilagođavanje izbornika za pokretanje PXE
Prvo, dodajmo stavku izbornika s imenom Instalacija Linuxa, za ovo moramo urediti datoteku:
nano /var/lib/tftpboot/pxelinux.cfg/default

Dodajte unos na kraj datoteke:
LABEL Linux Install MENU LABEL ^Linux Install KERNEL vesamenu.c32 APPEND pxelinux.cfg/linux.menu

Kao što možete vidjeti iz objave, imat ćemo još jednu stranicu s izborom distribucija za instalaciju, kreirajmo je:

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

Dodajmo mu nazive stavki za preuzimanje uz mogućnost odabira operativnog sustava za instalaciju, dok će Ubuntu 14.04 x86 I amd64 arhitekture:
LABEL Instalirajte Ubuntu 14.04x86 MENU label ^Ubuntu 14.04x86 KERNEL ubuntu/x86/linux APPEND initrd=ubuntu/x86/initrd.gz =ubuntu/amd64 /initrd.gz

Ovo dovršava postavljanje, možete spojiti klijentsko računalo i pokušati se pokrenuti putem PXE-a, kao rezultat, nakon pokretanja sustava preko mreže, imat ćemo izbornik poput ovog:

Odaberemo što želimo instalirati, instalacija će krenuti automatski, a zatim samo slijedite upute instalatera sustava.
Ostali operativni sustavi dodaju se na sličan način.
S tim ću završiti za danas.
Pa, kao i uvijek, ako imate bilo kakvih pitanja, molimo u komentarima, ako pronađete pogrešku, pišite osobno ili e-poštom.

U poslužiteljskim sobama sve se češće susreću poslužitelji bez CD / DVD pogona. S vremena na vrijeme potrebno je na njih instalirati operativni sustav, a mrežna instalacija u tome može uvelike pomoći. Jednostavno uključite poslužitelj i pokrenete instalaciju. Mrežna kartica mora podržavati PXE tehnologiju. PXE - Pre-Boot Execution Environment - omogućuje vam pokretanje preko mreže.

Ali PXE nije dovoljan za potpunu sreću, tehnologija koja će vam omogućiti potpunu automatizaciju instalacije je kickstart (razvio Red Hat). Njegova je bit jednostavna - unaprijed kompajliramo datoteku koja sadrži vrijednosti svih opcija koje bi mogle biti potrebne tijekom instalacije. Štoviše, možemo izvršiti naše skripte prije i nakon instalacije, postavljajući tako postavke za budući OS.

Instalacija tipičnog Linux kompleta pomoću kickstarta traje 5-7 minuta.

Instalacijski poslužitelj zahtijeva 3 usluge i 1 paket.


  • DHCP pruža mrežne vjerodajnice klijentima

  • TFTP je jednostavan način dijeljenja datoteka preko mreže

  • Syslinux sadrži pxelinux.0 loader i neke druge datoteke

  • NFS omogućuje pristup datotečnom sustavu preko mreže
Proces instalacije može se podijeliti u korake:

  1. pxe - pxe firmware počinje raditi kada postavimo mrežnu instalaciju u BIOS-u ili kada MBR nije pronađen na HDD-u.

  2. DHCP faza 1 - klijent prima podatke o mreži i adresu tftp poslužitelja, kao i naziv datoteke za učitavanje (pxelinux.0). Prema zadanim postavkama, TFTP poslužitelj je DHCP poslužitelj.

  3. TFTP - pxelinux.0 bootloader pristupa TFTP poslužitelju i traži od njega initrd.img (početni RAM disk, privremeni datotečni sustav), Linux kernel.

  4. Kernel - Prijenos kontrole na Linux kernel.

  5. DHCP faza 2 - Linux kernel upućuje zahtjev DHCP poslužitelju za dobivanje mrežnih vjerodajnica, a potom i adresu NFS poslužitelja.

  6. NFS - faza kada je NFS particija montirana

  7. init - /sbin/init se pokreće i kontrola se prenosi na njega. Init je glavni proces u sustavu, ostali procesi su podređeni procesi init-a.
U besplatnoj prezentaciji:

DHCP poslužitelj osluškuje bootp zahtjeve na svojoj mreži; nakon što primi zahtjev, gleda izvornu MAC adresu, i ako ima odgovarajući unos za takvu MAC adresu, počinje raditi s njom. DHCP poslužitelj klijentu daje pojedinosti o mreži (IP adresa, pristupnik, DNS poslužitelji, ...) i šalje sliku za pokretanje pxelinux.0 pomoću TFTP protokola pomoću TFTP poslužitelja. Ova slika je dovoljna za prikaz izbornika za odabir OS-a.

Nakon odabira OS-a krećemo s učitavanjem kernela i instalacijom, pri čemu biramo izvor instalacije - NFS poslužitelj. Pripremljeni sadržaj budućeg operativnog sustava potrebno je uploadati na NFS poslužitelj i pobrinuti se da su odgovarajući direktoriji eksportirani.

DHCP

Instalirajte DHCPD i dodajte ga u pokretanje:
# yum -y instalirajte dhcp
# chkconfig dhcpd uključen

Datoteku /etc/dhcpd.conf napravimo ovako:

ddns-privremeni stil ažuriranja;
ignorirajte klijentska ažuriranja;
podmreža 192.168.146.0 mrežna maska ​​255.255.255.0 (
opcija usmjerivači 192.168.146.1;
opcija subnet-mask 255.255.255.0;
opcija naziv domene "domain.local";
opcija poslužitelja imena domene 192.168.146.1;
default-lease-time 21600;
maksimalno vrijeme najma 43200;
Dopusti bootp;
dopustiti dizanje;
host unixbox(
hardverski ethernet 00:0c:29:77:9c:9c;
fiksna adresa 192.168.146.128;
naziv datoteke "pxelinux.0";
opcija host-name "unixbox";
sljedeći poslužitelj 192.168.146.1;
}
}

Pokrenite DHCPD ili ponovno pokrenite ako je pokrenut:
# usluga dhcpd ponovno pokretanje

Onemogućite vatrozid, koji je omogućen prema zadanim postavkama (inače će ciljno računalo primiti pogrešku "ICMP odredište nedostupno (Host administrativno zabranjeno)") prilikom podizanja sustava:
# servis iptables stop
# chkconfig iptables isključen

TFTP

Instalirajte tftp-server paket iz repozitorija:
# yum -y instaliraj tftp-poslužitelj

Sada trebate omogućiti tftp u konfiguraciji xinetd, za to, u datoteci /etc/xinetd.d/tftp, promijenite "disable = yes" u "disable = no" i omogućite xinetd:
# početak usluge xinetd

Provjerite sluša li port tftp poslužitelja (tftp radi na portu 69):
# netstat -nlp | grep:69
udp 0 0 0.0.0.0:69 0.0.0.0:* 3105/xinetd

syslinux

Paket sadrži skup datoteka za preuzimanje preko mreže. Trebaju nam pxelinux.0 , koji ćemo dati kao boot image preko DHCP-a i menu.c32 , s kojim će se iscrtati atraktivniji korisnički izbornik. (Za CentOS 4, ažurirani syslinux s ovisnostima može se preuzeti s rpmfind.net.)

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

NFS

Prema zadanim postavkama, sustav najvjerojatnije ima NFS, ako nema, instalirajte ga koristeći yum.
# chkconfig nfs uključen

Dodajte unos u datoteku /etc/exports:
echo "/var/install-server/ *(ro,no_root_squash)" >> /etc/exports

Pokrenite nfs poslužitelj:
# početak usluge nfs

Provjerite je li imenik izvezen:
# exportfs
/var/install-server

Kreiramo strukturu tftp poslužitelja, dodamo sadržaj na poslužitelj:
# mkdir -p /tftpboot/(pxelinux.cfg,centos5_x86)
# mkdir -p /var/install-server/centos5_x86

Naš DVD montiramo s CentOS 5 i prenosimo sadržaj na /var/install-server/centos5_x86:
# montiranje /dev/cdrom /mnt/
# cp -r /mnt/* /var/install-server/centos5_x86/
# cp /var/install-server/centos5_x86/images/p xeboot/* /tftpboot/centos5_x86/

U direktoriju /tftpboot/pxelinux.cfg stvorite zadanu datoteku i ispunite je kako je prikazano u nastavku:
zadani izbornik.c32

brz 0
vrijeme čekanja 100

kernel /centos5_x86/vmlinuz
dodati initrd=/centos52_x86/initrd.img
oznaka Odustani
lokalno pokretanje 0

Instalirajte OS preko mreže

Nakon svih gore opisanih manipulacija, možemo nastaviti s instalacijom OS-a. Naš stroj pokrećemo s MAC adresom 00:0c:29:77:9c:9c omogućavanjem pokretanja mreže u BIOS-u. Kada instalacija krene, sve radimo na standardni način, osim što na popisu gdje instalirati OS trebate odabrati NFS, a zatim, kada se to od vas zatraži, označiti:
Naziv NFS poslužitelja: 192.168.146.1
CentOS direktorij: /var/install-server/centos5_x86

Automatiziranje instalacije s Kickstartom

Za automatizaciju morate stvoriti datoteku koja sadrži sve potrebne informacije koje mogu biti potrebne tijekom postupka instalacije. Takvu datoteku stvara program system-config-kickstart (GUI alat) u bilo kojem CentOS-u s X Windowom:
# yum -y instalirajte system-config-kickstart
# system-config-kickstart

Nakon što smo kreirali datoteku koristeći system-config-kickstart, trebamo je prenijeti na instalacijski poslužitelj i učiniti dostupnom putem jednog od HTTP, NFS ili FTP protokola. Budući da se NFS aktivno koristi u radu instalacijskog poslužitelja, koristit ćemo ga.

U mom slučaju, kickstart datoteka je u /var/install-server/centos5_x86/centos5_ x86_ks.cfg.

Sve što trebate učiniti u /tftpboot/pxelinux.cfg/default je dodati ks direktivu s lokacijom kickstart datoteke. Primjer s kickstart datotekom:
zadani izbornik.c32
naslov izbornika Linux Install Server. Odaberite OS za instalaciju.
brz 0
vrijeme čekanja 100
oznaka CentOS 5 x86 Prilagođena instalacija
kernel /centos5_x86/vmlinuz
dodati initrd=/centos5_x86/initrd.img
oznaka CentOS 5 x86 Kickstart Install
kernel /centos52_x86/vmlinuz
dodaj initrd=/centos5_x86/initrd.img ks=nfs:192.168.146.1:/var/install-server/c entos5_x86/centos5_x86_ks.cfg
oznaka Odustani
lokalno pokretanje 0

Sada, nakon što smo odabrali "CentOS 5 x86 Kickstart Install" u izborniku za odabir OS-a, samo ćemo morati pričekati poslužitelj s OS-om instaliranim na njemu.

Ispod je primjer moje Kickstart datoteke. Htio sam da instalirani OS ima opciju "PermitRootLogin yes" u sshd postavkama. Kickstart-datoteka omogućuje ne samo postavljanje parametara instalacije OS-a, već i izvršavanje skripti prije instalacije (%pre) i nakon (%post). Dakle, možete napisati mnogo skripti za podešavanje i dobiti potpuno gotov OS za 5-10 minuta od instalacije.

#platforma=x86, AMD64 ili Intel EM64T
# Informacije o autorizaciji sustava
auth --useshadow --enablemd5
# Konfiguracija programa za pokretanje sustava
bootloader --location=mbr
# Obrišite glavni zapis o pokretanju sustava
zerombr
# Informacije o čišćenju particije
clearpart --sve --initlabel
# Koristite textmode instalaciju
tekst
# Konfiguracija vatrozida
vatrozid --onemogućen
# Pokrenite Setup Agent pri prvom pokretanju
prvo pokretanje --onemogući
# Tipkovnica sustava
tipkovnica nas
# Jezik sustava
lang en_US
# Razina evidentiranja instalacije
bilježenje --razina=info
# Koristite NFS instalacijski medij
nfs --server=192.168.146.1 --dir=/var/install-server/centos5_x86
# informacije o mreži
mreža --bootproto=dhcp --device=eth0 --onboot=on
#root lozinka
rootpw --iskriptiran $1$Bz09jb2I$hfzh2vApqMjG0sEPsAwNr/
# SELinux konfiguracija
selinux --onemogućeno
# Nemojte konfigurirati X Window System
preskočiti
# Vremenska zona sustava
vremenska zona Europa/Moskva
# Instalirajte OS umjesto nadogradnje
instalirati
# Informacije o particioniranju diska
dio swap --bytes-per-inode=4096 --fstype=”swap” --size=512
dio / --bytes-per-inode=4096 --fstype="ext3" --grow --size=1

%post --interp /bin/bash
PATH=/neki posao
/bin/mkdir $STAZA
/bin/sed -e ‘s/#PermitRootLogin da/PermitRootLogin da/g’ /etc/ssh/sshd_config > $PATH/sshd_config_edited
/bin/cp $PATH/sshd_config_edited /etc/ssh/sshd_config
/bin/rm -rf $STAZA

Ovaj članak će pokriti instalaciju Ubuntu Linuxa iz mrežnog repozitorija za pokretanje sustava.

Dakle, instalirat ćemo Ubuntu 10.04 na klijentska računala s poslužitelja 192.168.0.3, koji ugošćuje mrežni poslužitelj za pokretanje i dhcpd. Za instalaciju, repozitorij mora sadržavati direktorij dists/lucid/main/debian-installer. Ako dodate slične direktorije za druga spremišta (multiverse, universe, restricted), tada će u fazi "Odabir i instaliranje softvera" popis softvera biti veći. U ovom vodiču razmotrit ću ovu opciju. Ako ste napravili debmirror mirror, onda najvjerojatnije uopće nemate ove direktorije. Možete ih preuzeti, na primjer, s ftp://mirror.yandex.ru. Također, tijekom instalacije instalater, neovisno o odabranom repozitoriju, često pristupa security.ubuntu.com.

Korak 1: Instalacija poslužitelja

Instaliranje potrebnih aplikacija:

apt-get instaliraj tftpd-hpa openbsd-inetd

Preuzmite i raspakirajte sliku za mrežnu instalaciju:

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

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

Za mrežno podizanje morate proslijediti 2 parametra klijentu: naziv datoteke za pokretanje i poslužitelj datoteke za pokretanje (u dhcpd-u to su naziv datoteke i parametri sljedećeg poslužitelja):

sljedeći poslužitelj 192.168.0.3;
naziv datoteke "pxelinux.0";

Poslužitelj je instaliran, možete instalirati sustav.

Korak 2: Instalacija sustava

Da biste instalirali sustav s poslužitelja na mreži, morate omogućiti mrežno pokretanje (PXE) u BIOS-u. Ako vaš bios podržava boot menu, onda je bolje koristiti ga za odabir uređaja za pokretanje - kako ne bi bilo problema ako zaboravite promijeniti redoslijed pokretanja.

Ako je sve u redu, vidjet ćete ekran dobrodošlice instalatera:

  • Osnovni Ubuntu poslužitelj
  • Poslužitelj naziva (DNS)
  • edubuntu poslužitelj
  • LAMP poslužitelj
  • Mail poslužitelj
  • openSSH poslužitelj
  • PostgreSQL baza podataka
  • Ispisni poslužitelj
  • Samba datotečni poslužitelj
  • Ubuntu Enterprise Cloud
  • Host virtualnog stroja
  • Paket za izradu i uređivanje 2D/3D
  • Paket za izradu i uređivanje zvuka
  • edubuntu KDE radna površina
  • edubuntu desktop
  • Kubuntu desktop
  • Kubuntu netbook
  • LADSPA i DSSI audio dodaci
  • Veliki izbor paketa fontova
  • Mythbuntu dodatne uloge
  • Sučelje Mythbuntu
  • Mythbuntu glavna pozadina
  • Mythbuntu slave backend
  • Ubuntu Netbook
  • Ubuntu radna površina
  • Paket za izradu i uređivanje videozapisa
  • ubuntu desktop
  • Ručni odabir paketa

Danas se sve više zadataka automatizira, a virtualizacija se sve više koristi za maksimiziranje performansi poslužitelja. Ali svejedno morate instalirati OS. Svatko to radi na svoj način: netko ima pune džepove raznih slika za sve prilike, netko na starinski način nosi sa sobom “torbu” s diskovima, ili čak dva. U pravilu, administratori rade ovaj posao s malo zadovoljstva. Pogledajmo kako smanjiti vrijeme za trivijalne zadatke, kako naučiti računala da sami instaliraju sustave, bez sudjelovanja administratora, koristeći samo lokalnu mrežu.

Dakle, danas ćemo naučiti kako: instalirati Windows i Linux preko mreže, učitati male ISO slike, koristan softver (sve vrste Kaspersky, Acronis, WinPE, memtestovi), postaviti tanke klijente i upravljati njima. Tako da vas, na primjer, računovođa koji radi s 1C putem RDP-a ne pretuče jer joj se srušio Windows, a izvješće je trebalo pripremiti jučer ... Ili se škrti šef koji ne želi ažurirati svoje računalo divio vašem profesionalizma kada će vidjeti kako Windows 8 leti na starim računalima... U ostvarenju naših podmuklih ciljeva pomoći će nam server koji omogućuje dizanje preko mreže (PXE).

Svaki administrator sustava ima univerzalni USB pogon u svojoj zalihi za hitnu reanimaciju računala. Slažem se, bilo bi puno bolje imati istu funkcionalnost koristeći samo jednu mrežnu karticu. Istodobno, nemoguće je ne primijetiti mogućnost istovremenog rada s nekoliko čvorova odjednom. Dakle, na temelju naših potreba, imamo dva rješenja: koristiti PXE ili LTSP.

LTSP nam nije baš prikladan: dizajniran je za učitavanje OS-a instaliranog na samom poslužitelju preko mreže, što omogućuje korištenje LTSP poslužiteljskih aplikacija. Ovo nije baš ono što nam treba. PXE je alat za pokretanje računala preko mreže bez korištenja lokalnog medija za pohranu, baš kao LTSP. PXE vam omogućuje organiziranje izbornika za pokretanje s višestrukim pokretanjem, slično univerzalnom "USB resuscitatoru".


Što ćemo implementirati?

Sve je počelo s potrebom za alatom za udaljenu instalaciju Ubuntu / Debian Servera preko mreže, s mogućnošću dizanja Live CD-a malog sustava, poput SliTaza ili Kolibri OS-a.
Kako kažu, apetit dolazi s jelom: nisu uspjeli realizirati ono što je planirano, au plan su dodane brojne "Liste želja". Kao rezultat toga, popis se pokazao prilično impresivnim.

  1. Tanki klijenti temeljeni na Thinstation Linuxu.
  2. odjeljak Linux.
    1. Instalacija Ubuntu 14.04 x86.
    2. Instalacija Ubuntu 14.04 x64.
    3. Instalacija Ubuntu 12.04 x86.
    4. Instalacija Ubuntu 12.04 x64.
  3. odjeljak Windows.
    1. Instalacija Windows 2012.
    2. Instalacija Windows 7.
  4. Acronis.
    1. Windows PE s paketom korisnog softvera.
    2. Acronis True Image.
      1. naslijeđeni BIOS.
      2. UEFI.
    3. Acronis Disk Manager.
      1. naslijeđeni BIOS.
      2. UEFI.
  5. Kaspersky Rescue v10.
  6. ERD Commander 5 do 8 putem ISO slike.
  7. memtest.

Skupljamo sve na hrpu i polijećemo

Kao distribucijski komplet za poslužitelj, izbor je pao na Ubuntu Server 14.04.2 LTS. Možete se zaustaviti na bilo kojem drugom OS-u, razlika će biti samo u sintaksi. Pa krenimo. Trebamo TFTP, DHCP (po želji instaliran na istom poslužitelju, ruter može djelovati kao DHCP poslužitelj), servis za organiziranje NFS mrežnog datotečnog sustava. Razmotrit ćemo samo one postavke koje nas zanimaju u okviru teme. Prije svega, instalirajte sve što vam je potrebno, nakon što ste prethodno izvršili sva ažuriranja:

Nastavak dostupan samo članovima

Opcija 1. Pridružite se zajednici "site" kako biste pročitali sve materijale na stranici

Članstvo u zajednici tijekom navedenog razdoblja omogućit će vam pristup SVIM hakerskim materijalima, povećati vaš osobni kumulativni popust i omogućiti vam da skupite profesionalnu ocjenu Xakep Score!

Svatko tko se barem povremeno bavi administracijom barem je jednom imao potrebu instalirati operativni sustav na računalo. I često se sve događa ovako: slika se preuzima, piše na disk ili flash pogon, učitava i instalira. Ali može se ispostaviti da pri ruci nema flash pogona ili diska, a instalaciju je potrebno obaviti jučer ... Tada se možete pokrenuti preko mreže i nema posebnih problema s Linuxom u tom pogledu. Tipična konfiguracija je hrpa DHCP, TFTP I NFS. Ali nisam imao set pri ruci. NFS, ali je bio Samba. Pa sam morao smisliti kako koristiti Samba umjesto NFS.

Čini se da nije ništa od toga, promijenio sam postavke i to je to, ali nešto nije išlo u početku, morao sam šaman...

Ali ovdje ću krenuti od početka. Dakle, prvo morate nabaviti komplet za distribuciju. Pošto smo stavili Linux Mint, traži svježu sliku . Preuzimamo distribucijski komplet koji nam odgovara (instalirao sam onaj s PARITI, ali očito nije bitno). Nakon preuzimanja slike morate pristupiti slikovnim datotekama. Neki vodiči preporučuju raspakiranje slike, ali ja ne vidim smisao u tome, pa podržavam mišljenje da je montirati sliku kao petlja. Kako ne bismo ometali postojeći poredak, jednostavno kreiramo novi direktorij, gdje montiramo sliku:

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

Sljedeći korak je učiniti datoteke dostupnima putem mreže kako bi ih instalater mogao čitati. Kao što sam rekao gore, imam za ovu svrhu Samba. Stoga otvorite konfiguracijsku datoteku i dodajte novo dijeljenje dodavanjem sljedećeg odjeljka:


put = /mnt/mint
dostupno = da
moguće pregledavati = da
javno = da
za pisanje = ne

Trebalo bi raditi preko zadanih postavki Samba. Ako ne radi, onda ste najvjerojatnije sami nešto promijenili, što znači da ćete pronaći kako riješiti problem. Pa smo dodali loptu metvica, putem kojeg možete dobiti datoteke za instalaciju s mreže. Ne zaboravite ponovno pokrenuti Samba za prihvaćanje novih postavki.

Za archlinux:

# systemctl ponovno pokreni smbd
# systemctl ponovno pokreni nmbd

Za Gentoo:

# /etc/init.d/samba ponovno pokretanje

Zatim morate pripremiti mrežni učitavač. Ovaj program će nam pomoći tftp-hpa. U archlinux i u Gentoo paket se tako zove. Morate smjestiti datoteke pokretačkog programa u radni direktorij ftp poslužitelja (u arh /srv/tftp). Tamo kopirajte kernel i initrd iz montirane slike:

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

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

DEFAULT izbornik.c32
LABEL Linux Mint
JEZGRA vmlinuz
APPEND showmounts toram root=/dev/cifs boot=casper netboot=cifs nfsroot=//192.168.0.1/mint NFSOPTS=-oguest,ro initrd=initrd.lz nosplash

Gdje 192.168.0.1 - našu IP adresu u odnosu na stroj na kojem ćemo se kladiti. O da, i nfs tamo - ovo nije tipfeler, u načinu rada s cifs, morate proslijediti opcije tipa kao za nfs, Ne mogu reći zašto. Posebnu pozornost treba obratiti na opciju toram, jer bez nje sve otpada na pola puta i ne možemo se dignuti (možda je to karakteristika sambe). Ali s ovom opcijom morate zapamtiti da ciljno računalo mora imati dovoljno RAM-a da tamo kopira instalacijski program. Treba pokrenuti TFTP poslužitelj. Za archlinux:

# systemctl tftpd.socket početak

Za Gentoo:

# /etc/init.d/in.tftpd početak

Sada morate nekako reći biosu ciljnog stroja odakle se učitava. Ovo će nam pomoći dnsmasq(iako nije nužno, možete koristiti i drugi DHCP poslužitelj, ovdje opisujem što je bilo pri ruci). Postavite IP distribuciju (opcija dhcp raspon) prema vašem nahođenju, pod vašom "mrežom" između strojeva. Za instalaciju su nam potrebne samo tri opcije:

dhcp-boot=/pxelinux.0
dhcp-opcija=dobavljač:PXEClient,6,2b
pxe-service=x86PC, "Instaliraj Linux", pxelinux

Potrebno ih je dodati u konfiguraciju. dnsmasq, i naravno pokrenuti ga (ili ponovno pokrenuti).

Za archlinux:

# systemctl pokreni dnsmasq

Za Gentoo:

# /etc/init.d/dnsmasq početak

Zapamtite, da bi sve radilo, potrebno je da su priključci uključeni DHCP(UDP 67.68), TFTP(UDP 69) Samba(UDP 137,138, TCP 139,445) mora biti otvoren, svakako to uzmite u obzir u konfiguraciji vatrozida. Ako nema vatrozida ili je sučelje potpuno otvoreno - dobro, u redu, trebalo bi raditi.

Bilješka: zbog činjenice da se sustavi stalno ažuriraju, zadane staze datoteka možda nisu važeće, odnosno razlikuju se od onih na vašem sustavu. Stoga pažljivo pogledajte strukturu paketa vašeg sustava.