Ağ üzerinden önyükleme yapmak için bir Linux görüntüsü oluşturma. Ubuntu'yu PXE aracılığıyla ağ üzerinden kurma

Uzun zaman önce, Ubuntu'nun yerel bir ağ üzerinden, çeşitli ortamlar kullanmadan, yalnızca PXE önyüklemesi kullanarak ağ kurulumu hakkında bir makale yazdım ve hepsi bu. Bu sefer makaleyi güncelleyip modern gerçeklere yaklaştırmaya ve en önemlisi işlevselliği genişletmeye karar verdim. Her şey örnek olarak Ubuntu 14.04 kullanılarak yapılacaktır!

Farklı gereksinimler için farklı çözümler olmalıdır; asıl mesele, çoğu zaman tek bir işletim sistemine değil birden fazla işletim sistemine ihtiyaç duymamızdır. Bu yüzden bu konu hakkında bir makale yazmaya karar verdim. Önceki yazıya linkten ulaşabilirsiniz.
Ana fikir, hangi işletim sistemini kuracağımızı ve bit derinliğini seçme şansına sahip olacağımız, aslında yerel ağ üzerinden sistemi yükledikten sonra bir önyükleme menümüze sahip olacağımız.
Tüm bunları yeni çıkan Ubuntu 14.04 örneğini kullanarak uygulayacağız.

Anlamayanlar için, hangi işletim sisteminin kurulacağını ve bit kapasitesini seçebilmeniz için her şey başlatılıyor. Ağ üzerinden kuruluma uygun tüm işletim sistemlerinin sunulacağı bir menü görünmelidir; bu, şu şekilde görünecektir:

Ubuntu_14.04x86
Ubuntu_14.04amd64
İş için ihtiyacımız olacak:
Mutlaka!
1) Yapılandırılmış ağ geçidi, örneğin şu makaleyi kullanın:
2) DHCP sunucusu, örneğin şu makaleyi kullanabilirsiniz:
3) PXE önyükleyiciyi yükleyen yapılandırılmış TFTP sunucusu, şu makaleyi kullanın:

İsteğe bağlı!
3) Ek, ancak zorunlu olmayan bir nokta, yapılandırılmış bir DNS sunucusu olabilir, makalede bir örnek yer almaktadır.

Bir ağ geçidi, DHCP, TFTP sunucusu yapılandırdığınız ve ayrıca bir PXE önyükleme menüsü eklediğiniz varsayılır çünkü Bu nokta üzerinde durmayacağım.

Kurulacak sistemin kurulumuna geçelim.
Öncelikle Ubuntu 14.04x86 için uygun kapasitede bir kurulum diskine ihtiyacımız olacak bir kurulum noktası oluşturacağız. Önyükleyici ve sistem yükleyici dosyalarını çıkarmak için indirip bağlamamız gerekiyor.
Çünkü Ağ önyükleyici dosyası dizin dizininde bulunur /var/lib/tftpboot/ TFTP sunucusu tarafından çekildikleri yerden, kurulum disklerindeki dosyaları içine koymak için içinde bir Ubuntu dizini oluşturmamız gerekiyor, hadi şunu yapalım:
mkdir /var/lib/tftpboot/ubuntu
Uubntu dizininde sırasıyla x86 bit sistemler ve ADM64 için işletim sistemi yükleyici yükleyici dosyaları için ek dizinler oluşturuyoruz.
mkdir /var/lib/tftpboot/ubuntu/x86 mkdir /var/lib/tftpboot/ubuntu/amd64

Şimdi kurulum diskini indirmemiz gerekiyor, buradan görüntüleyebilirsiniz.mirror.yandex.ru/ubuntu-releases/14.04/
Sunucu için x86 sürümünü indireceğiz çünkü... o daha az ağırlığa sahip
wget http://mirror.yandex.ru/ubuntu-releases/14.04/ubuntu-14.04-server-i386.iso
ISO görüntüsünün indirilmesi tamamlandıktan sonra, ihtiyacımız olan dosyaları çıkarmak için ve bunun için dizine yerleştirmemiz gerekiyor. /medya bir dizin oluşturacağız izo, Hadi bunu yapalım:

Mkdir/medya/iso
Disk görüntüsünü bu dizine bağlayın:
sudo su
ubuntu-14.04-server-i386.iso /media/iso/'yu bağlayın
Sistem diskin okuma modunda takıldığını gösterecektir:

mount: warning: /media/iso/ salt okunur olarak monte edilmiş gibi görünüyor.
Hadi önyükleyiciyi ve yükleyici çekirdeğini alalım:
cd /media/iso/install/netboot/ubuntu-installer/i386/

2 dosyayla ilgileniyoruz Linux Ve initrd.gz almamız ve dizine taşımamız gereken /var/lib/tftpboot/ubuntu/x86
hadi bunları kopyalayalım:
cp linux /var/lib/tftpboot/ubuntu/x86 cp initrd.gz /var/lib/tftpboot/ubuntu/x86

İşte bu, artık kurulum imajına ihtiyacımız yok, önce iso dizininden bağlantısını keselim:
umount /medya/iso/

Bundan sonra ISO görüntüsü silinebilir.
X64 bit derinliğinde kurulum diski imajı için de benzer adımları gerçekleştiriyoruz, ne ve nerede olduğunu anlatmayacağım, sadece komutların bir listesini vereceğim, adımlar aynı, sadece yollar biraz farklı, yazıyor Orası amd64

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

Ubuntu-14.04-server-amd64.iso /media/iso/ dosyasını bağlayın

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

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

Umount /medya/iso/

Kurulum dosyalarıyla işimiz bitti, şimdi PXE önyükleme menüsünü yapılandıralım.

PXE Önyükleme Menüsünü Yapılandırma
Öncelikle isimli bir menü öğesi ekleyelim. Linux Kurulumu, bunun için dosyayı düzenlememiz gerekiyor:
nano /var/lib/tftpboot/pxelinux.cfg/default

Dosyanın sonuna bir giriş ekleyin:
LABEL Linux Kurulumu MENÜ LABEL ^Linux Kurulumu KERNEL vesamenu.c32 EKLE pxelinux.cfg/linux.menu

Girişten de görebileceğiniz gibi, kurulum için dağıtım seçiminin olduğu başka bir sayfamız olacak, hadi oluşturalım:

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

Yüklenecek işletim sistemini seçebilme özelliğine sahip indirme noktalarının adlarını ekleyelim. Ubuntu14.04x86 Ve amd64 mimari:
ETİKET Ubuntu'yu Yükle 14.04x86 MENÜ etiketi ^Ubuntu 14.04x86 KERNEL ubuntu/x86/linux EKLE initrd=ubuntu/x86/initrd.gz ETİKET Ubuntu'yu Yükle 14.04amd64 MENÜ etiketi ^Ubuntu 14.04amd64 KERNEL ubuntu/amd64/linux EKLE initrd=ubuntu/amd6 4 /initrd.gz

Bu noktada kurulum tamamlanmıştır, istemci makineyi bağlayıp PXE üzerinden önyükleme yapmayı deneyebilirsiniz, sonuç olarak sistemi ağ üzerinden başlattıktan sonra aşağıdaki gibi bir menüye sahip olacağız:

Ne yüklemek istediğimizi seçiyoruz, kurulum otomatik olarak başlayacak ve ardından sistem kurucusunun talimatlarını takip etmeniz yeterli.
Diğer işletim sistemleri de benzer şekilde eklenir.
Bugünlük muhtemelen bitireceğim yer burası.
Her zaman olduğu gibi, herhangi bir sorunuz varsa lütfen yorum bırakın, bir hata bulursanız bana kişisel bir mesaj veya e-posta yazın.

Sunucu odalarında CD/DVD sürücüsü olmayan sunuculara giderek daha fazla rastlanıyor. Zaman zaman bir işletim sistemi kurmaları gerekir ve ağ üzerinden kurulum bu konuda çok yardımcı olabilir. Sunucuyu açmanız ve kuruluma başlamanız yeterlidir. Ağ kartının PXE teknolojisini desteklemesi gerekir. PXE - Önyükleme Öncesi Yürütme Ortamı - ağ üzerinden önyükleme yapmanızı sağlar.

Ancak PXE tam mutluluk için yeterli değil; kurulumu tamamen otomatikleştirecek bir teknoloji kickstart'tır (Red Hat tarafından geliştirilmiştir). Özü basit - kurulum sırasında ihtiyaç duyulabilecek tüm seçeneklerin değerlerini içeren bir dosyayı önceden derliyoruz. Üstelik komut dosyalarımızı kurulumdan önce ve sonra çalıştırabilir, böylece gelecekteki işletim sistemi için ayarları yapabiliriz.

Kickstart kullanarak tipik bir Linux kitinin kurulması 5-7 dakika sürer.

Kurulum sunucusu 3 hizmet ve 1 paket gerektirir.


  • DHCP, istemcilere ağ kimlik bilgilerini sağlar

  • TFTP, dosyaları ağ üzerinden paylaşmanın kolay bir yoludur

  • Syslinux, pxelinux.0 önyükleyicisini ve diğer bazı dosyaları içerir

  • NFS, ağ üzerinden dosya sistemi erişimine izin verir
Kurulum işlemi aşamalara ayrılabilir:

  1. pxe - pxe ürün yazılımı, kurulumu BIOS'ta ağ üzerinden ayarladığımızda veya HDD'de MBR bulunmadığında çalışmaya başlar.

  2. DHCP aşama 1 - istemci, ağ ayrıntılarını ve tftp sunucusunun adresini ve ayrıca yükleyici dosyasının adını (pxelinux.0) alır. Varsayılan olarak TFTP sunucusu bir DHCP sunucusudur.

  3. TFTP - pxelinux.0 yükleyicisi TFTP sunucusuyla iletişim kurar ve ondan Linux çekirdeğini initrd.img (İlk RAM diski, geçici dosya sistemi) ister.

  4. Çekirdek - kontrolün Linux çekirdeğine aktarılması.

  5. DHCP aşaması 2 - Linux çekirdeği, ağ ayrıntılarını ve ardından NFS sunucu adresini almak için DHCP sunucusuna bir istekte bulunur.

  6. NFS - NFS bölümünün monte edildiği aşama

  7. init - /sbin/init başlatılır ve kontrol ona aktarılır. Init sistemdeki ana süreçtir, diğer süreçler init'in alt süreçleridir.
Serbestçe ifade edildi:

DHCP sunucusu, ağındaki önyükleme isteklerini dinler; istek aldıktan sonra kaynak MAC adresine bakar ve eğer o MAC adresine karşılık gelen bir giriş varsa onunla çalışmaya başlar. DHCP sunucusu istemciye ağ ayrıntılarını (IP adresi, ağ geçidi, DNS sunucusu,...) sağlar ve TFTP protokolünü kullanarak pxelinux.0 önyükleme görüntüsünü gönderir. Bu görüntü işletim sistemi seçim menüsünü görüntülemek için yeterlidir.

İşletim sistemini seçtikten sonra çekirdeği yüklemeye başlıyoruz ve kurulum kaynağını - NFS sunucusunu seçme sürecinde kuruluma başlıyoruz. Gelecekteki işletim sisteminin hazırlanan içeriğini NFS sunucusuna yüklemeniz ve ilgili dizinlerin dışa aktarıldığından emin olmanız gerekir.

DHCP

DHCPD'yi yükleyin ve başlangıca ekleyin:
# yum -y dhcp'yi yükle
#chkconfig dhcpd açık

/etc/dhcpd.conf dosyasını şu şekilde yapın:

Ddns güncelleme tarzı geçici;
istemci güncellemelerini göz ardı edin;
alt ağ 192.168.146.0 ağ maskesi 255.255.255.0 (
seçenek yönlendiricileri 192.168.146.1;
seçenek alt ağ maskesi 255.255.255.0;
seçenek alan adı "domain.local";
seçenek alan adı sunucuları 192.168.146.1;
varsayılan kiralama süresi 21600;
maksimum kiralama süresi 43200;
Önyüklemeye izin ver;
Önyüklemeye izin ver;
unixbox'ı barındırın (
donanım ethernet'i 00:0c:29:77:9c:9c;
sabit adresli 192.168.146.128;
dosya adı "pxelinux.0";
seçenek ana bilgisayar adı "unixbox";
sonraki sunucu 192.168.146.1;
}
}

DHCPD'yi başlatın veya çalışıyorsa yeniden başlatın:
# hizmet dhcpd yeniden başlat

Varsayılan olarak etkin olan güvenlik duvarını devre dışı bırakın (aksi takdirde hedef bilgisayar, önyükleme sırasında "ICMP Hedefine erişilemiyor (Ana bilgisayar yönetimsel olarak yasaklandı)" hatasını alır:
# hizmet iptables durur
# chkconfig iptables kapalı

TFTP

Tftp-server paketini depodan yükleyin:
# yum -y tftp sunucusunu kurun

Şimdi xinetd yapılandırmasında tftp'yi etkinleştirmeniz gerekiyor; bunu yapmak için /etc/xinetd.d/tftp dosyasında "disable = yes" ifadesini "disable = no" olarak değiştirin ve xinetd'yi etkinleştirin:
# hizmet xinetd başlangıcı

Tftp sunucusu portunun dinlediğini kontrol ediyoruz (tftp 69 numaralı portta çalışıyor):
# netstat -nlp | gr:69
udp 0 0 0.0.0.0:69 0.0.0.0:* 3105/xinetd

Sistem Linux

Paket, ağ üzerinden indirilecek bir dizi dosya içerir. DHCP üzerinden boot imajı olarak hizmet vereceğimiz pxelinux.0 ve daha ilgi çekici bir kullanıcı menüsünün çizileceği menu.c32’ye ihtiyacımız var. (CentOS 4 için bağımlılıkları olan güncellenmiş syslinux'un rpmfind.net adresinden indirilmesi gerekir.)

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

NFS

Varsayılan olarak sistemde büyük olasılıkla NFS vardır, yoksa yum kullanarak yükleyin.
#chkconfig nfs açık

/etc/exports dosyasına bir giriş ekleyin:
echo “/var/install-server/ *(ro,no_root_squash)” >> /etc/exports

Nfs sunucusunu başlatın:
# hizmet nfs başlangıcı

Dizinin dışa aktarılıp aktarılmadığını kontrol ediyoruz:
#dışa aktarma
/var/install-sunucusu

Tftp sunucusunun yapısını oluşturuyoruz, sunucuya içerik ekliyoruz:
# mkdir -p /tftpboot/(pxelinux.cfg,centos5_x86)
# mkdir -p /var/install-server/centos5_x86

DVD'mizi CentOS 5 ile monte ediyoruz ve içeriğini /var/install-server/centos5_x86'ya yüklüyoruz:
# montaj /dev/cdrom /mnt/
# cp -r /mnt/* /var/install-server/centos5_x86/
# cp /var/install-server/centos5_x86/images/p xeboot/* /tftpboot/centos5_x86/

/tftpboot/pxelinux.cfg dizininde varsayılan bir dosya oluşturun ve onu aşağıda gösterildiği gibi doldurun:
varsayılan menü.c32

istem 0
zaman aşımı 100

çekirdek /centos5_x86/vmlinuz
initrd=/centos52_x86/initrd.img'yi ekleyin
etiket Çık
yerel önyükleme 0

İşletim sistemini ağ üzerinden yükleme

Yukarıda açıklanan tüm manipülasyonlardan sonra işletim sistemini kurmaya başlayabiliriz. Makinemizi 00:0c:29:77:9c:9c MAC adresiyle başlatıyoruz ve BIOS'ta ağ önyüklemesini etkinleştiriyoruz. Kurulum başladığında, işletim sisteminin nereye kurulacağı listesinde NFS'yi seçmeniz ve ardından sorulduğunda şunu belirtmeniz dışında her şeyi standart şekilde yaparız:
NFS sunucu adı: 192.168.146.1
CentOS dizini: /var/install-server/centos5_x86

Kickstart ile kurulumu otomatikleştirin

Otomatikleştirmek için kurulum işlemi sırasında gerekli olabilecek tüm gerekli bilgileri içeren bir dosya oluşturmanız gerekir. Böyle bir dosya, X Pencereli herhangi bir CentOS'ta system-config-kickstart programı (GUI aracı) tarafından oluşturulur:
# yum -y system-config-kickstart'ı kurun
#sistem-yapılandırma-başlangıç

System-config-kickstart kullanarak dosyayı oluşturduktan sonra, bu dosyanın Kurulum sunucusuna aktarılması ve HTTP, NFS veya FTP protokollerinden biri aracılığıyla kullanıma sunulması gerekir. Install sunucusu aktif olarak NFS kullandığı için biz onu kullanacağız.

Benim durumumda, başlangıç ​​dosyası /var/install-server/centos5_x86/centos5_ x86_ks.cfg konumunda bulunuyor.

/tftpboot/pxelinux.cfg/default dosyasına kickstart dosyasının konumunu belirten ks direktifini eklemeniz yeterlidir. Kickstart dosyasına örnek:
varsayılan menü.c32
menü başlığı Linux Kurulum Sunucusu. Lütfen kurulacak işletim sistemini seçin.
istem 0
zaman aşımı 100
etiket CentOS 5 x86 Özel kurulum
çekirdek /centos5_x86/vmlinuz
initrd=/centos5_x86/initrd.img'yi ekleyin
etiket CentOS 5 x86 Kickstart Kurulumu
çekirdek /centos52_x86/vmlinuz
initrd=/centos5_x86/initrd.img ks=nfs:192.168.146.1:/var/install-server/c entos5_x86/centos5_x86_ks.cfg ekleyin
etiket Çık
yerel önyükleme 0

Artık işletim sistemi seçim menüsünde “CentOS 5 x86 Kickstart Install” seçeneğini seçtikten sonra, yalnızca işletim sisteminin kurulu olduğu sunucuyu beklememiz gerekecek.

Aşağıda Kickstart dosyamın bir örneğini görebilirsiniz. Kurulu işletim sisteminin sshd ayarlarında “PermitRootLogin yes” seçeneğinin olmasını istedim. Kickstart dosyası yalnızca işletim sistemi kurulum parametrelerini ayarlamanıza değil, aynı zamanda kurulumdan önce (%pre) ve sonrasında (%post) komut dosyalarını çalıştırmanıza da olanak tanır. Bu şekilde çok sayıda ayarlama komut dosyası yazabilir ve kurulumun 5-10 dakikasında tamamen tamamlanmış bir işletim sistemine sahip olabilirsiniz.

#platform =x86, AMD64 veya Intel EM64T
# Sistem yetkilendirme bilgileri
kimlik doğrulama --useshadow --enablemd5
# Sistem önyükleyici yapılandırması
önyükleyici --konum=mbr
# Ana Önyükleme Kaydını temizle
sıfırmbr
#Bölüm temizleme bilgileri
clearpart --all --initlabel
# Metin modu kurulumunu kullan
metin
# Güvenlik duvarı yapılandırması
güvenlik duvarı --devre dışı
# İlk açılışta Kurulum Aracısını çalıştırın
ilk açılış -- devre dışı bırak
#Sistem klavyesi
bize klavye
# Sistem dili
lang tr_US
# Kurulum kayıt düzeyi
günlüğe kaydetme --seviye=bilgi
# NFS kurulum medyasını kullanın
nfs --server=192.168.146.1 --dir=/var/install-server/centos5_x86
# Ağ bilgisi
ağ --bootproto=dhcp --device=eth0 --onboot=açık
#Root şifresi
rootpw --iscrypted $1$Bz09jb2I$hfzh2vApqMjG0sEPsAwNr/
# SELinux yapılandırması
selinux --devre dışı
# X Pencere Sistemini yapılandırmayın
atlax
#Sistem saat dilimi
saat dilimi Avrupa/Moskova
# Yükseltme yerine işletim sistemini yükleyin
düzenlemek
# Disk bölümleme bilgileri
parça takası --bytes-per-inode=4096 --fstype=”swap” --size=512
part / --bytes-per-inode=4096 --fstype=”ext3” --grow --size=1

%post --interp /bin/bash
YOL=/bazı işler
/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 $YOL

Bu makale, Ubuntu Linux'un bir ağ önyükleme deposundan kurulmasını kapsayacaktır.

Böylece, ağ önyükleme sunucusunu ve dhcpd'yi barındıran 192.168.0.3 sunucusundan istemci bilgisayarlara Ubuntu 10.04'ü kuracağız. Kurulum için deponun dists/lucid/main/debian-installer dizinine sahip olması gerekir. Diğer depolar (çoklu evren, evren, kısıtlı) için benzer dizinler eklerseniz, "Yazılım seçme ve yükleme" aşamasında yazılım listesi daha büyük olacaktır. Bu kılavuzda bu seçeneği dikkate alacağım. Bir ayna aynası yaptıysanız, büyük olasılıkla bu dizinlere sahip değilsiniz. Bunları örneğin ftp://mirror.yandex.ru adresinden indirebilirsiniz. Ayrıca kurulum sırasında yükleyici, seçilen depodan bağımsız olarak genellikle Security.ubuntu.com adresine erişir.

Adım 1: Sunucu Kurulumu

Gerekli uygulamaların kurulumu:

apt-get tftpd-hpa openbsd-inetd'yi yükleyin

Ağ kurulumu için görüntüyü indirin ve paketinden çıkarın:

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

chown -R kimse:hiçbir grup /var/lib/tftpboot

Ağ önyüklemesi için istemciye 2 parametre iletmeniz gerekir: önyükleme dosyasının adı ve önyükleme dosya sunucusu (dhcpd'de bunlar dosya adı ve sonraki sunucu parametreleridir):

sonraki sunucu 192.168.0.3;
dosya adı "pxelinux.0";

Sunucu kuruldu, sistemi kurabilirsiniz.

Adım 2: Sistem Kurulumu

Sistemi ağdaki bir sunucudan kurmak için BIOS'ta ağ önyüklemesini (PXE) etkinleştirmeniz gerekir. Bios'unuz önyükleme menüsünü destekliyorsa, önyükleme aygıtını seçmek için bunu kullanmak daha iyidir; böylece önyükleme sırasını değiştirmeyi unutursanız herhangi bir sorun yaşanmaz.

Her şey yolundaysa yükleyici karşılama ekranını göreceksiniz:

  • Temel Ubuntu Sunucusu
  • Ad sunucusu (DNS)
  • Edubuntu sunucusu
  • LAMP sunucusu
  • Posta sunucusu
  • OpenSSH sunucusu
  • PostgreSQL veritabanı
  • Yazdırma sunucusu
  • Samba dosya sunucusu
  • Ubuntu Kurumsal Bulut
  • Sanal Makine ana bilgisayarı
  • 2D/3D oluşturma ve düzenleme paketi
  • Ses oluşturma ve düzenleme paketi
  • Edubuntu KDE masaüstü
  • Edubuntu masaüstü
  • Kubuntu masaüstü
  • Kubuntu netbook'u
  • LADSPA ve DSSI ses eklentileri
  • Geniş yazı tipi paketi seçimi
  • Mythbuntu ek rolleri
  • Mythbuntu ön ucu
  • Mythbuntu ana arka ucu
  • Mythbuntu köle arka ucu
  • Ubuntu Netbook'u
  • Ubuntu Masaüstü
  • Video oluşturma ve düzenleme paketi
  • Xubuntu masaüstü
  • Manuel paket seçimi

Günümüzde giderek daha fazla görev otomatikleştiriliyor ve sunucuların verimliliğini en üst düzeye çıkarmak için sanallaştırma giderek daha fazla kullanılıyor. Ancak yine de işletim sistemlerini yüklemeniz gerekiyor. Herkes bunu kendi yöntemiyle yapıyor: bazılarının cepleri her durum için farklı görüntülerle dolu, bazıları ise eski moda şekilde disklerin olduğu bir "çanta", hatta iki tane taşıyor. Kural olarak yöneticiler bu işi pek keyif almadan yaparlar. Önemsiz görevler için zamanın nasıl azaltılacağına, bilgisayarlara bir yöneticinin katılımı olmadan, yalnızca yerel bir ağ kullanarak sistemleri kendi başlarına kurmayı nasıl öğreteceğimize bakalım.

Bugün öğreneceğiz: Windows ve Linux'u ağ üzerinden yükleyin, küçük ISO görüntüleri yükleyin, kullanışlı yazılımlar (her türlü Kaspersky, Acronis, WinPE, memtest), ince istemcileri dağıtın ve bunları yönetin. Öyle ki, örneğin RDP üzerinden 1C ile çalışan bir muhasebeci, Windows'u çöktüğü ve raporun dün hazırlanması gerektiği için sizi dövmez... Ya da bilgisayarını güncellemek istemeyen cimri bir patron, size hayran kaldı. profesyonellik Windows 8'in eski bilgisayarlarda nasıl uçtuğunu ne zaman göreceksiniz... Ağ üzerinden önyükleme (PXE) sağlayan bir sunucu, sinsi hedeflerimize ulaşmamıza yardımcı olacaktır.

Her sistem yöneticisinin acil durum bilgisayar canlandırması için zulasında evrensel bir USB sürücüsü vardır. Katılıyorum, yalnızca bir ağ kartı kullanarak aynı işlevselliğe sahip olmak çok daha iyi olurdu. Aynı anda birden fazla düğümle aynı anda çalışmanın mümkün olduğunu da belirtmek gerekir. Dolayısıyla ihtiyaçlarımıza göre iki çözümümüz var: PXE veya LTSP kullanın.

LTSP bizim için pek uygun değil: Sunucunun kendisinde yüklü olan işletim sistemini ağ üzerinden yüklemek için tasarlanmıştır, bu da LTSP sunucu uygulamalarının kullanılmasına olanak tanır. İhtiyacımız olan şey tam olarak bu değil. PXE, tıpkı LTSP gibi, yerel depolama ortamını kullanmadan bir bilgisayarı ağ üzerinden başlatmak için kullanılan bir araçtır. PXE, evrensel bir "USB resüsitatörüne" benzer şekilde çoklu önyükleme menüsü düzenlemenize olanak tanır.


Neyi uygulayacağız?

Her şey, Ubuntu/Debian Sunucusunun ağ üzerinden uzaktan kurulumu için, SliTaz veya Kolibri işletim sistemi gibi küçük bir sistemin Canlı CD'sinden önyükleme yapma yeteneğine sahip bir araca sahip olma ihtiyacıyla başladı.
Dedikleri gibi, iştah yemekle birlikte gelir: Planladığımızı uygulamaya vaktimiz olmadı ve plana bir takım "istekler" eklendi. Sonuç olarak listenin oldukça etkileyici olduğu ortaya çıktı.

  1. Thinstation Linux tabanlı ince istemciler.
  2. Linux bölümü.
    1. Ubuntu 14.04x86'nın kurulumu.
    2. Ubuntu 14.04x64'ün kurulması.
    3. Ubuntu 12.04x86'nın kurulumu.
    4. Ubuntu 12.04x64'ün kurulması.
  3. Windows bölümü.
    1. Windows 2012'yi yükleme.
    2. Windows 7'yi yükleme.
  4. Acronis.
    1. Kullanışlı bir yazılım paketi içeren Windows PE.
    2. Acronis Gerçek Görüntü.
      1. Kalıtsal temel girdi çıktı sistematiği.
      2. UEFI.
    3. Acronis Disk Direktörü.
      1. Kalıtsal temel girdi çıktı sistematiği.
      2. UEFI.
  5. Kaspersky Kurtarma v 10.
  6. ERD Commander, ISO görüntüsü aracılığıyla 5'ten 8'e.
  7. Memtest.

Her şeyi bir araya getiriyoruz ve yola çıkıyoruz

Sunucunun dağıtımı olarak seçim Ubuntu Server 14.04.2 LTS'ye düştü. Başka herhangi bir işletim sistemini seçebilirsiniz, tek fark sözdiziminde olacaktır. Öyleyse başlayalım. NFS ağ dosya sistemini düzenlemek için bir hizmet olan TFTP, DHCP'ye (aynı sunucuya kurulması gerekmez; bir yönlendirici DHCP sunucusu görevi görebilir) ihtiyacımız olacak. Konu içerisinde yalnızca bizi ilgilendiren ayarları ele alacağız. Öncelikle tüm güncellemeleri yaptıktan sonra ihtiyacınız olan her şeyi yükleyelim:

Devam sadece üyelere açıktır

Seçenek 1. Sitedeki tüm materyalleri okumak için "site" topluluğuna katılın

Belirtilen süre içinde topluluğa üye olmak, TÜM Hacker materyallerine erişmenizi sağlayacak, kişisel kümülatif indiriminizi artıracak ve profesyonel bir Xakep Skoru puanı biriktirmenize olanak tanıyacaktır!

Ara sıra da olsa yöneticilik yapan herkesin, bilgisayarına en az bir kez işletim sistemi kurması gerekmiştir. Ve çoğu zaman her şey şu şekilde olur: görüntü indirilir, bir diske veya flash sürücüye yazılır, yüklenir ve kurulur. Ancak elinizde bir flash sürücünüz veya diskiniz olmadığı ve kurulumun dün tamamlanması gerektiği ortaya çıkabilir... Daha sonra ağ üzerinden önyükleme yapabilirsiniz ve Linux'ta bu konuda özel bir sorun yoktur. Tipik bir konfigürasyon bir gruptur DHCP, TFTP Ve NFS. Ama elimde kurmadım NFS, ama oradaydı Samba. Bu yüzden nasıl kullanılacağını bulmam gerekiyordu Samba yerine NFS.

Hiçbir şey yok gibi geldi, ayarları değiştirdim, hepsi bu, ama ilk başta bir şeyler yolunda gitmedi, tamir etmek zorunda kaldım...

Ama burada en baştan başlayacağım. Bu yüzden önce bir dağıtım kiti almanız gerekiyor. koyduğumuzdan beri Linux Nane Yeni bir imaj arıyoruz. Bize uygun olan dağıtımı indirin (Ben MAT, ama açıkçası bu gerçekten önemli değil). Görseli indirdikten sonra görsel dosyalarına erişmeniz gerekiyor. Bazı kılavuzlar görselin paketinden çıkarılmasını öneriyor ancak bunda bir amaç göremiyorum, bu yüzden görseli şu şekilde monte etme fikrini destekliyorum: döngü. Mevcut düzeni bozmamak için imajı yerleştireceğimiz yeni bir dizin oluşturmamız yeterli:

# mkdir /mnt/mint
# mount -o döngü /home/user/download/linuxmint-17-mate-64bit-v2.iso /mnt/mint

Daha sonra, yükleyicinin okuyabilmesi için dosyaları ağ üzerinden kullanılabilir hale getirmeniz gerekir. Yukarıda da söylediğim gibi bu amaçla kullanıyorum Samba. Bu nedenle yapılandırma dosyasını açın ve aşağıdaki bölümü ekleyerek yeni bir paylaşım ekleyin:


yol = /mnt/mint
mevcut = evet
göz atılabilir = evet
genel = evet
yazılabilir = hayır

Varsayılan ayarlar üzerinde çalışmalı Samba. Eğer işe yaramazsa, büyük ihtimalle bir şeyi kendiniz değiştirmişsinizdir, bu da sorunu çözmenin bir yolunu bulacağınız anlamına gelir. Böylece topu ekledik nane, bu sayede ağdan kurulum için dosyalar alabilirsiniz. Yeniden başlatmayı unutmayın Samba Yeni ayarları kabul etmek için.

İçin Archlinux:

# systemctl smbd'yi yeniden başlat
# systemctl nmbd'yi yeniden başlat

İçin Gentoo:

# /etc/init.d/samba yeniden başlat

Daha sonra bir ağ önyükleyicisi hazırlamanız gerekir. Program bize bu konuda yardımcı olacak tftp-hpa. İÇİNDE Archlinux ve Gentoo Paketin adı budur. Yükleyici dosyalarını ftp sunucusunun çalışma dizinine (arch'ta) yerleştirmeniz gerekir. /srv/tftp). Takılı görüntüden çekirdeği ve initrd'yi buraya kopyalayın:

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

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

VARSAYILAN menü.c32
ETİKET LinuxMint
KERNEL vmlinuz
EKLE showmounts toram root=/dev/cifs boot=casper netboot=cifs nfsroot=//192.168.0.1/mint NFSOPTS=-oguest,ro initrd=initrd.lz nosplash

Nerede 192.168.0.1 - kuracağımız makineye göre IP adresimiz. Ah evet ve yaklaşık nfs orada - bu, çalışma modunda bir yazım hatası değil cif'ler, için tür seçeneklerini iletmeniz gerekir nfs, Nedenini söyleyemem. Toram seçeneğine özellikle dikkat edilmelidir, çünkü onsuz her şey yarı yolda kalır ve önyükleme yapamayız (belki bunlar sambanın özellikleridir). Ancak bu seçenekle, hedef makinenin, yükleyiciyi oraya kopyalamak için yeterli RAM'e sahip olması gerektiğini hatırlamanız gerekir. TFTP sunucusunun başlatılması gerekiyor. İçin Archlinux:

# systemctl tftpd.socket başlangıcı

İçin Gentoo:

# /etc/init.d/in.tftpd başlat

Artık hedef makinenin BIOS'unun bir şekilde nereden yüklendiğini söylemesi gerekiyor. Bu bize yardımcı olacaktır dnsmasq(gerekli olmasa da başka bir DHCP sunucusu kullanabilirsiniz; burada elinizde ne olduğunu anlatacağım). IP dağıtımını ayarlama (isteğe bağlı dhcp aralığı) kendi takdirinize bağlı olarak, makineler arasındaki kendi “ağınız” için. Kurulum için bizim için yalnızca üç seçenek önemlidir:

Dhcp-boot=/pxelinux.0
dhcp-option=satıcı:PXEClient,6,2b
pxe-service=x86PC, "Linux'u Yükle", pxelinux

Yapılandırmaya eklenmeleri gerekiyor dnsmasq ve elbette başlatın (veya yeniden başlatın).

İçin Archlinux:

# systemctl dnsmasq'ı başlat

İçin Gentoo:

# /etc/init.d/dnsmasq başlat

Unutmayın, her şeyin çalışması için bağlantı noktalarının açık olması gerekir DHCP(UDP67.68), TFTP(UDP69), Samba(UDP 137.138, TCP 139.445) açık olmalıdır; güvenlik duvarı yapılandırmanızda bunu dikkate aldığınızdan emin olun. Güvenlik duvarı yoksa veya arayüz tamamen açıksa, çalışması gerekir.

Not: Sistemlerin sürekli güncellenmesi nedeniyle verilen dosya yolları geçersiz, yani sisteminizdekilerden farklı olabilir. Bu nedenle sisteminizin paket yapısına dikkatlice bakın.