Kurulum Sunucusu Ayarlama
Bu ek, daha önce Linux deneyimi olan kullanıcılar için hazırlanmıştır. Yeni bir kullanıcıysanız, bunun yerine asgari önyükleme ortamı veya dağıtım DVD’si kullanarak kurulum yapmak isteyebilirsiniz. |
PXE Kurulumuna Genel Bakış
Preboot Execution Environment (Önyükleme Öncesi Yürütme Ortamı) veya PXE, bilgisayarların doğrudan ağ üzerinden sağlanan kaynaklardan önyükleme yapmasını sağlayan bir teknolojidir. Fedora’yı ağ üzerinden kurmak, kurulum ortamı oluşturmanız gerekmediği ve aynı anda birden fazla bilgisayara veya sanal makineye kurabilmeniz anlamına gelir. Süreç, gerekli kaynakları sağlamak için birlikte çalışan bir dizi bileşen ve özelliği içermektedir.
Çoğu modern bilgisayar, ağ üzerinden önyükleme özelliğine sahiptir. Genel olarak, önyükleme sırasında basılan bir işlev tuşu, bir önyükleme seçim menüsü getirecektir. Etkileşimsiz yönetim için tasarlanmış ortamlarda, sistemler genellikle önce ağdan önyüklemeyi deneyecek, ardından yerel depolamadan önyükleme yapacak şekilde yapılandırılacaktır ve kurulum sunucusu yalnızca gerektiğinde kurulumu sunacak şekilde yapılandırılır. Bilgisayarınızın kılavuzu, önyükleme önceliklerini ayarlama konusunda özel talimatlar sağlayacaktır.
Bir sistem ağ üzerinden önyükleme sırasında bir adres istediğinde, DHCP sunucusu ayrıca önyükleme yapılacak dosyaların konumunu da sağlar. Bir ağda yalnızca bir DHCP sunucusu olmalıdır.
Önyükleme öncesi ortam çok basit olduğundan, dosyalar çok basit bir şekilde sağlanmalıdır. Trivial File Transfer Protocol (Basit Dosya Aktarım Protokolü) veya TFTP, sisteme kurulum işlemine devam etmek için gereken önyükleyiciyi sağlar.
Bir işletim sistemini başlatma işi, önyükleme öncesi ortam için çok karmaşık olduğundan, çekirdeği ve ilgili dosyaları yüklemek için bir önyükleyici kullanılır. Ayrıca kurucuya yapılandırma bilgileri sağlar ve farklı yapılandırmalar arasından seçim yapmak için bir menü sunabilir.
Çekirdek, herhangi bir Linux işletim sisteminin çekirdeğidir ve initramfs, çekirdeğe gerekli araçları ve kaynakları sağlar. Bu dosyalar da tftp tarafından sağlanmaktadır.
Kurulum için kullanılabilir bir Fedora deposu bulunmalıdır. Bu bölümdeki örnek, depo kaynağı olarak herkesin erişimine açık Fedora yansılarını kullanmaktadır, ancak NFS, FTP veya HTTP tarafından sağlanan yerel ağ üzerindeki bir depoyu da kullanabilirsiniz. Depolar, inst.repo= önyükleme seçeneği kullanılarak yapılandırılabilir; ayrıntılar için Kurulum Kaynağını Belirtme bölümüne bakın.
DHCP Sunucusunu Yapılandırma
-
dhcp sunucusu paketini kurun.
# dnf install dhcp-server
-
/etc/dhcp/dhcpd.conf
konumunda dhcp sunucusu için basit bir yapılandırma oluşturun.subnet 192.168.1.0 netmask 255.255.255.0 { authoritative; default-lease-time 600; max-lease-time 7200; ddns-update-style none; option domain-name-servers 192.168.1.1; option routers 192.168.1.1; }
-
Yapılandırmanızı test edin ve karşılaştığınız sorunları giderin.
systemctl start dhcpd systemctl enable dhcpd journalctl --unit dhcpd --since -2m --follow
-
İstemcileri önyükleyicilerine ve onları sağlayan sunucuya yönlendirmek için
/etc/dhcp/dhcpd.conf
içindeki alt ağ yapılandırmanıza girdiler ekleyin. DHCP istemcileri, sunucuya adres istekleriyle birlikte tanımlayıcı bilgiler sağladığından, BIOS istemcileri ve UEFI istemcilerinin her biri doğru önyükleyiciye yönlendirilebilir. IANA DHCPv6 kayıt sayfasında bulunabilecek en son işlemci mimarisi seçenek kodlarının kullanılması, birden çok mimarinin tek bir DHCP sunucusunu paylaşmasına olanak tanır.# olası mimari (arch) seçeneği değerleri için RFC4578 ve IANA DHCPv6'ya bakın option arch code 93 = unsigned integer 16; subnet 192.168.1.0 netmask 255.255.255.0 { if option arch = 00:07 { # x64 UEFI filename "uefi/shimx64.efi"; next-server 192.168.1.2; } else if option arch = 00:0b { # aarch64 UEFI filename "uefi/shimaa64.efi"; server-name "192.168.1.2"; } else { filename "pxelinux.0"; next-server 192.168.1.2; } ...
-
Yapılandırmayı denetlemek ve gereken değişiklikleri yapmak için dhcp hizmetini yeniden başlatın.
systemctl restart dhcpd journalctl --unit dhcpd --since -2m --follow
TFTP sunucusunu kurma
-
tftp sunucusu paketini kurun.
# dnf install tftp-server
-
tftp soketini
başlatın ve etkinleştirin.systemd
, gerektiğindetftpd
hizmetini otomatik olarak başlatacaktır.# systemctl start tftp.socket # systemctl enable tftp.socket
PXE istemcileri için önyükleyiciyi sağlama ve yapılandırma
-
BIOS istemcileri için syslinux önyükleyicisini edinin.
-
syslinux paketini kurun.
# dnf install syslinux
-
Önyükleyici dosyaları için bir dizin oluşturun ve bunları orada kullanılabilir hale getirin.
# mkdir -p
/var/lib/tftpboot/pxelinux.cfg
# cp/usr/share/syslinux/{pxelinux.0,menu.c32,vesamenu.c32,ldlinux.c32,libcom32.c32,libutil.c32}
/var/lib/tftpboot/
-
-
UEFI sistemleri için önyükleyici dosyalarını edinin.
-
shim-x64 ve grub2-efi-x64 paketlerini kurun. Sunucunuz bir BIOS sistemiyse, paketleri geçici bir kurulum köküne kurmalısınız. Bunları doğrudan bir BIOS makinesine kurmak, sistemi UEFI önyüklemesi için yapılandırmaya çalışacak ve sorunlara neden olacaktır.
# dnf install shim-x64 grub2-efi-x64 --installroot=/tmp/fedora --releasever 34
-
Önyükleyici dosyaları için bir dizin oluşturun ve bunları orada kullanılabilir hale getirin.
# mkdir -p
/var/lib/tftpboot/uefi
# cp/tmp/fedora/boot/efi/EFI/fedora/{shimx64.efi,grubx64.efi}
/var/lib/tftpboot/uefi/
-
-
/var/lib/tftpboot/pxelinux.cfg/default
konumunda BIOS istemcileri için bir önyükleme menüsü oluşturun.default vesamenu.c32 prompt 1 timeout 600 label local menu label Boot from ^local drive menu default localboot 0xffff label linux menu label ^Install Fedora 34 64-bit kernel f34/vmlinuz append initrd=f34/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/ ip=dhcp label server menu label ^Install Fedora 34 ( Minimal Image ) kernel f34/vmlinuz append initrd=f34/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/ ip=dhcp ks=https://example.com/fedora/kickstarts/minimal.ks
-
/var/lib/tftpboot/uefi/grub.cfg
konumunda UEFI istemcileri için bir önyükleme menüsü oluşturun.function load_video { insmod efi_gop insmod efi_uga insmod video_bochs insmod video_cirrus insmod all_video } load_video set gfxpayload=keep insmod gzio menuentry 'Exit this grub' { exit } menuentry 'Install Fedora 64-bit' --class fedora --class gnu-linux --class gnu --class os { linux $fw_path/f34/vmlinuz ip=dhcp inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/ initrd $fw_path/f34/initrd.img } menuentry 'Install Fedora 34 Server' --class fedora --class gnu-linux --class gnu --class os { kernel f34/vmlinuz append initrd=f34/initrd.img inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/ ip=dhcp ks=https://git.fedorahosted.org/cgit/spin-kickstarts.git/plain/fedora-install-server.ks?h=f21 }
Çekirdek ve initrd edinme
-
Dosyalar için bir dizin oluşturun.
# mkdir -p
/var/lib/tftpboot/f34
-
Çekirdeği indirin.
# wget https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/images/pxeboot/vmlinuz -O /var/lib/tftpboot/f34/vmlinuz
-
Initrd’yi indirin.
# wget https://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/images/pxeboot/initrd.img -O /var/lib/tftpboot/f34/initrd.img
HTTP Kurulumuna Genel Bakış
HTTP/HTTPS önyüklemesi, bilgisayarların doğrudan ağ üzerinden sağlanan kaynaklardan önyükleme yapmasını sağlayan bir teknolojidir. HTTPS ile birlikte kullanıldığında, sunucunun güvenilirliği doğrulanır ve HTTP kullanımı, PXE’nin TFTP’sinden daha güvenilir bir aktarım mekanizması sunar. Fedora’yı bu şekilde kurmak, kurulum ortamı oluşturmaktan kaçınılmasına ve aynı anda birden çok bilgisayara kurulmasına olanak tanır. Fedora’nın sanallaştırma çözümleriyle birlikte gelen EDK2 tabanlı ürün yazılımı da dahil olmak üzere günümüzdeki birçok UEFI uygulaması, doğrudan HTTP kaynaklarından önyüklenebilir. Bir HTTP kaynağını belirten bir UEFI önyükleme girdisi ürün yazılımı menüleri aracılığıyla elle eklenebilir. Alternatif olarak, bir DHCP sunucusu gerekli HTTP yolunu otomatik olarak sağlayabilir.
Birçok makine HTTP’nin yanı sıra HTTPS önyükleme yeteneğine sahip olsa da, genellikle önce bir sertifika yetkilisinin (certificate authority - CA) kayıtlı olmasını gerektirirler. CA, HTTPS sunucusu tarafından sunulan sertifikaları doğrulamak için kullanılır. Bu, herkese açık yansılar için Fedora tarafından sağlanan sertifikalardan veya yerel HTTPS önyükleme sunucusu sertifikasından uygun dosyaları kaydederek gerçekleştirilebilir.
HTTP için DHCP Sunucusunu Yapılandırma
HTTP önyüklemesi için bir DHCP sunucusunun kurulumu ve yapılandırması, HTTP istemcileri için seçenek mimari koşullarını değiştirmemiz gerekmesi dışında, PXE yapılandırmasıyla aynıdır
.... if option arch = 00:07 { # x64 UEFI filename "uefi/shim64.efi"; next-server 192.168.1.2; } else if option arch = 00:0b { # aarch64 UEFI filename "uefi/shimaa64.efi"; server-name "192.168.1.2"; } else if option arch = 00:13 { # aarch64 UEFI HTTP option vendor-class-identifier "HTTPClient"; filename "http://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/aarch64/os/images/boot.iso"; } else if option arch = 00:10 { # x64 UEFI HTTP option vendor-class-identifier "HTTPClient"; filename "http://download.fedoraproject.org/pub/fedora/linux/releases/34/Server/x86_64/os/images/boot.iso"; } else { filename "pxelinux.0"; next-server 192.168.1.2; } ...
Depoları sağlama
Bu bölümdeki örnekler, paket kaynağı olarak herkesin erişimine açık Fedora yansılarını kullanmaktadır. Daha hızlı kurulumlar, birçok sisteme kurulum veya daha fazla yalıtılmış ortamlar için yerel bir depo bulundurmak isteyebilirsiniz.
Fedora Altyapı ekibi, https://fedoraproject.org/wiki/Infrastructure/Mirroring adresinde yerel bir yansı yapılandırma talimatlarını bulundurmaktadır. Depo sağlamak için tercih edilen yöntem HTTP’dir ve httpd
yapılandırması için https://docs.fedoraproject.org/ adresinde bulunan Fedora Sistem Yöneticisi Kılavuzuna başvurabilirsiniz.
Cobbler ile gelişmiş ağ kurulumları
Fedora, daha karmaşık ortamlar için cobbler kurulum sunucusunu sunmaktadır. Kickstart yapılandırmalarını yönetmek, depoları eş güdümlemek, dns kayıtlarını, dhcp sunucularını ve hatta puppet bildirimlerini sağlamak gibi görevler cobbler tarafından etkin bir şekilde otomatikleştirilir.
Cobbler tarafından sağlanan tüm özelliklerden yararlanmak nispeten basit olsa da, bu güçlü aracın tam işlevselliği bu kılavuzda belgelenemeyecek kadar geniştir. Cobbler topluluğu, Fedora deposundaki paketlere eşlik edecek belgelendirmeyi https://cobbler.github.io/ adresinde sağlamaktadır.
Alternatif olarak, Foreman ile de ilgilenebilirsiniz. Resmi belgelendirmeyi ve indirmeleri https://www.theforeman.org/ adresindeki proje web sitesinde bulabilirsiniz.
Want to help? Learn how to contribute to Fedora Docs ›