Menyiapkan Suatu Server Instalasi
Lampiran ini ditujukan bagi pengguna dengan pengalaman Linux sebelumnya. Bila Anda pengguna baru, Anda mungkin ingin memasang memakai media boot minimal atau DVD distribusi. |
Ringkasan Instalasi PXE
Preboot Execution Environment, atau PXE, adalah suatu teknologi yang memungkinkan komputer boot secara langsung dari sumber daya yang disediakan melalui jaringan. Memasang Fedora melalui jaringan berarti Anda tidak perlu membuat media, dan Anda dapat memasang ke beberapa komputer atau mesin virtual secara simultan. Proses tersebut melibatkan sejumlah komponen dan fitur yang bekerja bersama untuk menyediakan sumber daya yang diperlukan.
Kebanyakan komputer modern memiliki kapabilitas boot jaringan. Biasanya, suatu tombol fungsi yang ditekan selama boot akan memunculkan suatu menu pemilihan boot. Dalam lingkungan yang dirancang untuk administrasi tanpa pengawasan, sistem seringkali dikonfigurasi agar pertama kali mencoba boot dari jaringan, lalu boot dari penyimpanan lokal, dan server instalasi dikonfigurasi untuk hanya menawarkan instalasi ketika diperlukan. Manual komputer Anda akan memberikan instruksi spesifik tentang menata prioritas boot.
Ketika suatu sistem meminta sebuah alamat selama boot jaringan, server DHCP juga menyediakan lokasi berkas untuk boot. Suatu jaringan mesti hanya punya satu server DHCP.
Karena lingkungan pra-boot sangat sederhana, berkas-berkas mesti disediakan dalam cara yang sangat sederhana. Trivial File Transfer Protocol, atau TFTP, menyediakan sistem dengan bootloader yang diperlukan untuk melanjutkan proses instalasi.
Karena tugas mem-boot suatu sistem operasi terlalu rumit bagi lingkungan pra-boot, suatu bootloader dipakai untuk memuat kernel dari berkas-berkas terkait. Itu juga menyediakan informasi konfigurasi ke installer, dan dapat menawarkan sebuah menu untuk memilih dari konfigurasi yang berbeda.
Kernel adalah inti dari setiap sistem operasi Linux, dan initramfs menyediakan kernel dengan alat dan sumber daya yang diperlukan. Berkas-berkas ini juga disediakan oleh tftp.
Repositori Fedora harus tersedia untuk instalasi. Contoh di bagian ini menggunakan cermin Fedora publik sebagai sumber repositori, tetapi Anda juga dapat menggunakan repo pada jaringan lokal yang disediakan oleh NFS, FTP, atau HTTP. Repositori dapat dikonfigurasi menggunakan opsi boot inst.repo=; lihat Menentukan Sumber Instalasi untuk detailnya.
Konfigurasi Server DHCP
-
Memasang paket server dhcp.
# dnf install dhcp-server
-
Buat konfigurasi sederhana untuk server dhcp di
/etc/dhcp/dhcpd.conf
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; }
-
Uji konfigurasi Anda dan atasi masalah apa pun yang Anda temukan.
systemctl start dhcpd systemctl enable dhcpd journalctl --unit dhcpd --since -2m --follow
-
Tambahkan entri untuk mengarahkan klien ke bootloader mereka dan server yang menyediakannya ke konfigurasi subnet Anda di
/etc/dhcp/dhcp/dhcpd.conf
. Karena klien DHCP menyediakan server dengan informasi identifikasi bersama dengan permintaan alamat mereka, klien BIOS dan klien UEFI masing-masing dapat diarahkan ke bootloader yang benar. Menggunakan kode opsi arsitektur prosesor terbaru, yang dapat ditemukan di halaman pendaftaran IANA DHCPv6, memungkinkan beberapa arsitektur untuk berbagi satu server DHCP.# refer to RFC4578 & IANA DHCPv6 for possible arch option values 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; } ...
-
Mulai ulang layanan dhcp untuk memeriksa konfigurasi dan membuat perubahan sesuai kebutuhan.
systemctl restart dhcpd journalctl --unit dhcpd --since -2m --follow
Memasang server tftp
-
Memasang paket server tftp.
# dnf install tftp-server
-
Mulai dan aktifkan
soket tftp
.systemd
akan secara otomatis memulai layanantftpd
bila diperlukan.# systemctl start tftp.socket # systemctl enable tftp.socket
Menyediakan dan mengonfigurasi bootloader untuk klien PXE
-
Dapatkan bootloader syslinux untuk klien BIOS.
-
Instal paket syslinux.
# dnf install syslinux
-
Buat direktori untuk berkas bootloader, dan buat mereka tersedia di sana.
# 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/
-
-
Mendapatkan berkas bootloader untuk sistem UEFI
-
Pasang paket shim-x64 dan grub2-efi-x64. Jika server Anda adalah sistem BIOS, Anda harus menginstal paket ke root instal sementara. Menginstalnya langsung pada mesin BIOS akan mencoba mengkonfigurasi sistem untuk boot UEFI dan menyebabkan masalah.
# dnf install shim-x64 grub2-efi-x64 --installroot=/tmp/fedora --releasever 35
-
Buat direktori untuk berkas bootloader, dan buat mereka tersedia di sana.
# mkdir -p
/var/lib/tftpboot/uefi
# cp/tmp/fedora/boot/efi/EFI/fedora/{shimx64.efi,grubx64.efi}
/var/lib/tftpboot/uefi/
-
-
Buat menu boot untuk klien BIOS di
/var/lib/tftpboot/pxelinux.cfg/default
.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 35 64-bit kernel f35/vmlinuz append initrd=f35/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/ ip=dhcp label server menu label ^Install Fedora 35 ( Minimal Image ) kernel f35/vmlinuz append initrd=f35/initrd.img inst.stage2=https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/ ip=dhcp ks=https://example.com/fedora/kickstarts/minimal.ks
-
Buat menu boot untuk klien UEFI di
/var/lib/tftpboot/uefi/grub.cfg
.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/f35/vmlinuz ip=dhcp inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/ initrd $fw_path/f35/initrd.img } menuentry 'Install Fedora 35 Server' --class fedora --class gnu-linux --class gnu --class os { kernel f35/vmlinuz append initrd=f35/initrd.img inst.repo=https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/ ip=dhcp ks=https://git.fedorahosted.org/cgit/spin-kickstarts.git/plain/fedora-install-server.ks?h=f21 }
Mendapatkan kernel dan initrd
-
Buat direktori untuk berkas.
# mkdir -p
/var/lib/tftpboot/f35
-
Unduh kernel.
# wget https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/images/pxeboot/vmlinuz -O /var/lib/tftpboot/f35/vmlinuz
-
Unduh initrd
# wget https://download.fedoraproject.org/pub/fedora/linux/releases/35/Server/x86_64/os/images/pxeboot/initrd.img -O /var/lib/tftpboot/f35/initrd.img
Ringkasan Instalasi HTTP
Boot HTTP/HTTPS adalah teknologi yang memungkinkan komputer untuk boot langsung dari sumber daya yang disediakan melalui jaringan. Ketika digunakan bersama dengan HTTPS keaslian server divalidasi, dan penggunaan HTTP menawarkan mekanisme transportasi yang lebih andal daripada TFTP PXE. Memasang Fedora dengan cara ini menghindari membuat media instalasi dan memungkinkan beberapa komputer untuk dipasang secara bersamaan. Banyak implementasi UEFI saat ini, termasuk pengiriman firmware berbasis EDK2 dengan solusi virtualisasi fedora, dapat langsung boot dari sumber HTTP. Entri boot UEFI dapat ditambahkan secara manual yang menentukan sumber HTTP melalui menu firmware. Atau, server DHCP dapat secara otomatis menyediakan jalur HTTP yang diperlukan.
Sementara banyak mesin yang mampu boot HTTPS maupun HTTP, mereka akan sering perlu pertama kali memiliki otoritas sertifikat (CA) didaftarkan. CA digunakan untuk memvalidasi sertifikat yang disajikan oleh server HTTPS. Hal ini dapat dilakukan dengan mendaftarkan berkas yang sesuai dari ca-sertifikat yang disediakan fedora untuk cermin publik atau sertifikat server boot HTTPS lokal.
Konfigurasi Server DHCP bagi HTTP
Instalasi dan konfigurasi server DHCP untuk boot HTTP identik dengan konfigurasi untuk PXE kecuali bahwa kita perlu mengubah kondisi opsi arch untuk klien HTTP
.... 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/35/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/35/Server/x86_64/os/images/boot.iso"; } else { filename "pxelinux.0"; next-server 192.168.1.2; } ...
Menyediakan repositori
Contoh di bagian ini menggunakan cermin Fedora publik sebagai sumber paket. Untuk instalasi yang lebih cepat, menginstal ke banyak sistem, atau lingkungan yang lebih terisolasi, Anda mungkin ingin mengelola sebuah repositori lokal.
Infrastruktur Fedora mengelola instruksi untuk mengonfigurasi cermin lokal di https://fedoraproject.org/wiki/Infrastructure/Mirroring. Metode yang disukai untuk menyediakan repositori adalah melalui HTTP, dan Anda dapat merujuk ke Fedora Panduan Administrator Sistem untuk mengonfigurasi httpd
.
Instalasi jaringan tingkat lanjut dengan Cobbler
Untuk lingkungan yang lebih kompleks, Fedora menawarkan server instalasi cobbler. Tugas-tugas seperti mengelola konfigurasi kickstart, mengkoordinasikan repositori, memelihara catatan dns, server dhcp, dan bahkan manifes puppet secara efektif diotomatisasi oleh cobbler.
Meskipun semua fitur yang disediakan oleh cobbler bisa relatif sederhana, fungsionalitas penuh dari alat canggih ini terlalu luas untuk didokumentasikan dalam panduan ini. Komunitas cobbler menyediakan dokumentasi di https://cobbler.github.io/ untuk menemani paket di repositori Fedora.
Atau, Anda mungkin juga tertarik pada Foreman. Anda dapat menemukan dokumentasi resmi serta unduhan di situs web proyek di https://www.theforeman.org/.
Want to help? Learn how to contribute to Fedora Docs ›