RHEL/CentOS 8 Kickstart example | Kickstart Generator

spis treści

Reklama

w artykule udostępnię listę przykładowych poleceń RHEL/CentOS 8 Kickstart, których możesz użyć do automatyzacji instalacji dla Red Hat i CentOS. Nie omówiłem %pre I %post etapu instalacji w tym artykule, ponieważ może to tylko wydłużyć ten już długi artykuł. Chociaż postaram się opisać najczęściej używane polecenia kickstart w środowisku produkcyjnym w czasie rzeczywistym.

Kickstart Generator

możesz użyć oficjalnego narzędzia Red Hat Kickstart Generator, aby utworzyć plik kickstart, aby zautomatyzować instalację.

Po prostu postępuj zgodnie z opcjami wyświetlanymi na ekranie, a otrzymasz przykładowy plik kickstartu według własnego wyboru.

walidator Kickstartu

przed rozpoczęciem instalacji za pomocą pliku kickstartu zaleca się sprawdzenie zawartości pliku konfiguracyjnego Kickstartu. Zainstaluj pykickstartaby zainstalować ksvalidator narzędzie

Uwaga:

w systemie RHEL musisz mieć aktywną subskrypcję RHN lub możesz skonfigurować lokalne repozytorium offline, za pomocą którego menedżer pakietów ” yum ” może zainstalować dostarczone rpm i jego zależności.

# dnf -y install pykickstart

aby zweryfikować plik kickstartu, podaj ścieżkę bezwzględną i plik kickstartu za pomocą ksvalidator:

# ksvalidator kickstart.conf

poniżej znajduje się lista poleceń Kickstart, które możesz ręcznie dodać i utworzyć własny plik Kickstart, aby zautomatyzować cały proces instalacji Red Hat / CentOS. Na koniec artykułu załączam przykładowy plik konfiguracyjny kickstartu, którego użyłem do zainstalowania maszyny Wirtualnej w Oracle VirtualBox

Reklama

Dodaj komentarz (Opcjonalnie)

możesz dodać komentarz, aby zidentyfikować Kickstart jak dodałem do identyfikacji. To opcjonalne i możesz zignorować:

# version=RHEL8# RHEL/CentOS 8 Kickstart Example

wykonaj sprawdzenie mediów

Możesz sprawdzić media przed rozpoczęciem instalacji

polecenie Kickstart – mediacheck

To polecenie wymusza na programie instalacyjnym sprawdzenie mediów przed rozpoczęciem instalacji.
To polecenie wymaga, aby instalacje były obsługiwane, więc jest domyślnie wyłączone.

składnia:

mediacheck

tryb instalacji

aby instalacja była w pełni automatyczna, należy podać jeden z dostępnych trybów w pliku Kickstart:

polecenie Kickstart – graficzne

  • wykonuje instalację Kickstartu w trybie graficznym.
  • możesz również połączyć go z--non-interactive, który wykonuje instalację w całkowicie nieinteraktywnym trybie.
  • ten tryb zakończy instalację, gdy wymagana jest interakcja z użytkownikiem.

polecenie Kickstart – tekst

  • wykonuje instalację Kickstartu w trybie tekstowym.
  • możesz również połączyć go z--non-interactive, który wykonuje instalację w całkowicie nieinteraktywnym trybie.
  • ten tryb zakończy instalację, gdy wymagana jest interakcja z użytkownikiem.

polecenie Kickstart – cmdline

  • wykonuje instalację w całkowicie nieinteraktywnym trybie wiersza poleceń.
  • każdy monit o interakcję zatrzymuje instalację.
  • to polecenie nie ma opcji.

w moim przykładzie RHEL/CentOS 8 Kickstart wybieram text jako preferowaną metodę instalacji

# Install in text modetext

Utwórz dodatkowe repo

Możesz skonfigurować dodatkowe repozytoria yum, które mogą być używane jako źródła do instalacji pakietów.

polecenie Kickstart – repo

  • domyślnie wszystkie dostarczone repozytoria są automatycznie tworzone i montowane na/run/install/repo/<repo_name>
  • możesz dodać wielerepo wiersze.

składnia:

Advertisement

repo --name=repoid 

Here,

  • --baseurl= The URL to the repository.
  • --mirrorlist= The URL pointing at a list of mirrors for the repository.
  • --metalink= The URL with metalink for the repository.

aby uzyskać pełną listę obsługiwanych opcji, sprawdź przewodnik Red Hat Dla zaawansowanej instalacji

w moim przykładzie RHEL/CentOS 8 Kickstart stworzę równieżAppStream repo, który jest częścią obrazu ISO.

# Create additional repo during installationrepo --name="AppStream" --baseurl=file:///run/install/repo/AppStream

metoda instalacji

istnieją różne metody instalacji do wyboru, takie jakcdromharddrivehmcnfsliveimg luburl.

najczęściej używamyurlcdrom Infs w środowisku produkcyjnym, więc wyjaśnię tę metodę instalacji:

polecenie Kickstart – NFS

wykonuje instalację z określonego serwera NFS.

składnia:

nfs OPTIONS

opcje:

  • --server= serwer, z którego ma zostać zainstalowany (Nazwa hosta lub IP).
  • --dir= katalog zawierający katalog variant drzewa instalacji.
  • --opts= opcje montowania używane do montażu eksportu NFS. (opcjonalnie)

polecenie Kickstart – url

wykonuje instalację z obrazu drzewa instalacji na zdalnym serwerze za pomocą FTP, HTTP lub HTTPS.

składnia:

url --url=FROM 

obowiązkowe opcje:

  • --url= Lokalizacja, z której chcesz zainstalować. Obsługiwane protokoły to HTTP, HTTPS, FTP i file.

opcje opcjonalne:

  • --proxy= określ serwer proxy HTTP, HTTPS lub FTP, który będzie używany podczas instalacji.

aby uzyskać pełną listę obsługiwanych opcji, sprawdź przewodnik Red Hat dla zaawansowanej instalacji

polecenie Kickstart – cdrom

  • wykonuje instalację z pierwszego napędu optycznego w systemie.
  • to polecenie nie ma opcji.

w moim przykładzie RHEL/CentOS 8 Kickstart użyję NFS jako metody instalacji

# Installation medianfs --server=10.10.10.12 --dir=/images/

Układy klawiatury

  • ustawia jeden lub więcej dostępnych układów klawiatury dla systemu.
  • wszystkie dostępne układy można wyświetlić na stronie podręcznika xkeyboard-config(7) pod Layouts.

składnia:

keyboard --vckeymap|--xlayouts OPTIONS

opcje:

  • --vckeymap= Określ klawisz VConsole, który powinien być używany. Poprawne nazwy odpowiadają liście plików w katalogu/usr/lib/kbd/keymaps/xkb/, bez rozszerzenia.map.gz.
  • --xlayouts= określa listę układów X, które powinny być używane jako lista rozdzielana przecinkami bez spacji. Akceptuje wartości w tym samym formacie co setxkbmap (1), albo w formacie układu (np. cz), albo w formacie układu (variant) (np. cz (qwerty)).

w moim przykładzie RHEL/CentOS 8 Kickstart użyję English US jako układu klawiatury

# Keyboard layoutskeyboard --vckeymap=us --xlayouts='us'

Ustaw język systemowy

polecenie Kickstart – lang

  • ustawia język, który ma być używany podczas instalacji i domyślny język, który ma być używany w zainstalowanym systemie.
  • możesz użyćlocale -a | grep _ lublocalectl list-locales, aby uzyskać listę obsługiwanych lokalizacji.

składnia:

lang language 

w moim przykładzie RHEL/CentOS 8 Kickstart użyjęen_US.UTF-8

# System languagelang en_US.UTF-8

informacje o sieci

polecenie Kickstart – sieć

  • konfiguruje informacje o sieci dla systemu docelowego i aktywuje urządzenia sieciowe w środowisku instalacyjnym.
  • urządzenie określone w pierwszym poleceniu sieciowym jest aktywowane automatycznie.
  • Aktywacja urządzenia może być również jawnie wymagana przez opcję –activate.

Syntax:

network OPTIONS

Options:

  • --activate activate this device in the installation environment.
  • --no-activate do not activate this device in the installation environment.
  • --nodefroute prevent the device from using the default route.
  • --bootproto= One of dhcp, bootp, ibft, or static. The default option is dhcp;
  • --noipv4 Wyłącz IPv4 na tym urządzeniu.
  • --noipv6 Wyłącz IPv6 na tym urządzeniu.

w moim przykładzie RHEL/CentOS 8 Kickstart przypisuję sieć do 2 interfejsóweth0Ieth1

wskazówka:

użyłem tradycyjnej nazwy interfejsu, która jest możliwa tylko wtedy, gdy wyłączysz spójne nazewnictwo urządzeń sieciowych.

# Network informationnetwork --bootproto=static --ip=10.10.10.15 --netmask=255.255.255.0 --gateway=10.10.10.1 --nameserver=8.8.8.8 --device=eth0 network --bootproto=dhcp --device=eth0 --activatenetwork --bootproto=dhcp --device=eth1 --onboot=off --activatenetwork --hostname=centos8-4.example.com

Przypisz hasło roota

  • ustawia hasło roota systemu na argument hasła.aby utworzyć zaszyfrowane hasło, możesz użyć Pythona:
$ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
  • aby utworzyć zaszyfrowane hasło, możesz użyć Pythona:
$ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
  • to generuje hash twojego hasła zgodny z sha512 przy użyciu losowej soli.

składnia:

rootpw password

opcje:

  • --iscrypted jeśli ta opcja jest obecna, przyjmuje się, że argument hasła jest już zaszyfrowany.
  • --plaintext jeśli ta opcja jest obecna, przyjmuje się, że argument hasła jest w postaci zwykłego tekstu.
  • --lock jeśli ta opcja jest obecna, konto root jest domyślnie zablokowane. Oznacza to, że użytkownik root nie będzie mógł zalogować się z konsoli.

w moim przykładzie RHEL/CentOS 8 Kickstart utworzyłem już i przypisałem hasło roota

# Root passwordrootpw --iscrypted $6$w7El/FYx9mbTG6x9$Te.Yg6dq0TsQwGpdSjeDGSw4J9ZBAkLXzT9ODMV7I7lHvX3n5.9PCS4jIkS2GbVLZOpVRLvrua3wwbwA.cfWX.

Uruchom agenta konfiguracji przy pierwszym uruchomieniu

polecenie Kickstart – firstboot

  • określa, czy aplikacja Początkowa konfiguracja uruchamia przy pierwszym uruchomieniu systemu.
  • jeśli jest włączona, należy zainstalować pakiet początkowy.
  • jeśli nie podano, ta opcja jest domyślnie wyłączona.

składnia:

firstboot OPTIONS

opcje:

  • --enablelub --enabled: Wstępna konfiguracja jest uruchamiana przy pierwszym uruchomieniu systemu.
  • --disablelub--disabled: Początkowa konfiguracja nie jest uruchamiana przy pierwszym uruchomieniu systemu.
  • --reconfig :Włącz początkową konfigurację, aby uruchomić się podczas rozruchu w trybie rekonfiguracji.

w moim przykładzie RHEL/CentOS 8 Kickstart włączęfirstboot

# Run the Setup Agent on first bootfirstboot --enable

Configure X Window System

możesz zainstalować i skonfigurować X Window System lub wyłączyć go

polecenie Kickstart – xconfig

  • jeśli zainstalujesz menedżera wyświetlania wśród opcji wyboru pakietu, ten pakiet tworzy konfigurację x, A zainstalowany system domyślnie ma wartośćgraphical.target.
  • , który nadpisuje efekt opcjiskipx.
  • aby skonfigurować System X Window użyj „xconfig

polecenie Kickstart – skipx

aby uniknąć konfiguracji systemu X Window użyj skipx

w moim RHEL/CentOS 8 kickstart przykład wyłączę System X Windows

# Do not configure the X Window Systemskipx

Włącz lub Wyłącz usługi systemowe

polecenia Kickstart – usługi

  • modyfikuje domyślny zestaw usług, które będą działać pod domyślnym celem systemd.
  • lista wyłączonych usług jest przetwarzana przed listą włączonych usług.
  • dlatego, jeśli usługa pojawi się na obu listach, zostanie włączona.

składnia:

services 

w moim przykładzie RHEL/CentOS 8 włączę chronyd usługa

# System servicesservices --enabled="chronyd"

Ustaw strefę czasową

polecenie kickstart – Strefa czasowa

  • ustawia systemową strefę czasową.
  • możesz użyć timedatectl list-timezones aby uzyskać listę obsługiwanych wartości strefy czasowej

składnia:

timezone timezone 

opcje opcjonalne:

  • --utc jeśli istnieje, system zakłada, że zegar sprzętowy jest ustawiony na czas UTC (Greenwich Mean).
  • --nontp wyłącz automatyczne uruchamianie usługi NTP.
  • --ntpservers= Określ listę serwerów NTP, które mają być używane jako lista oddzielona przecinkami bez spacji.

w moim przykładzie RHEL/CentOS 8 Kickstart użyję Asia/Kolkata jako mojej strefy czasowej

# System timezonetimezone Asia/Kolkata --isUtc

Uchwyt reboot węzła

polecenie Kickstart – reboot

  • reboot” instruuje program instalacyjny do ponownego uruchomienia po pomyślnym zakończeniu instalacji (bez argumentów).
  • normalnie Kickstart wyświetla komunikat i czeka na naciśnięcie klawisza przed ponownym uruchomieniem.
  • Określ reboot, aby zautomatyzować instalację

w moim przykładzie RHEL/CentOS 8 Kickstart użyję reboot, ponieważ planuję zautomatyzować całą instalację

# Reboot the nodereboot

Utwórz partycję dysku

możesz użyć różnych zmiennych do skonfigurowania układu dysku

polecenie kickstart – ignoredisk

  • powoduje, że program instalacyjny ignoruje podane dyski.
  • jest to przydatne, jeśli używasz automatycznego partycjonowania i chcesz mieć pewność, że niektóre dyski są ignorowane.

w moim przykładzie RHEL/CentOS 8 Kickstart chcę użyć tylko sda dysku do instalacji

# Choose the disks to be usedignoredisk --only-use=sda

polecenie Kickstart – clearpart

  • usuwa partycje z systemu, przed utworzeniem nowych partycji.
  • domyślnie nie są usuwane żadne partycje.

w moim przykładzie CentOS/RHEL 8 usunie wszystkie istniejące partycje:

# Partition clearing informationclearpart --all

polecenie Kickstart – część lub partycja

  • tworzy partycję w systemie.
  • ten temat jest bardzo obszerny i planuję podać różne przykłady układu partycji, aby zainstalować Linuksa

w moim przykładowym przykładzie kickstartu zainstaluję CentOS 8 za pomocą Logical Volume Manager. Tutaj stworzę

  • główny wolumin logiczny
  • partycja wymiany
  • partycja rozruchowa
# Disk partitioning informationpart pv.409 --fstype="lvmpv" --ondisk=sda --size=14847part /boot --fstype="ext4" --ondisk=sda --size=512volgroup rhel --pesize=4096 pv.409logvol swap --fstype="swap" --size=953 --name=swap --vgname=rhellogvol / --fstype="ext4" --size=13887 --name=root --vgname=rhel

utwórz nowego użytkownika (stałego)

Możesz również utworzyć nowego Użytkownika za pomocą kickstartu, który będzie również obecny po instalacji

polecenie Kickstart – użytkownik

użyj user aby utworzyć nowego Użytkownika za pomocą składni kickstart

:

user --name=username 

w moim przykładzie RHEL/CentOS 8 stworzę jednego użytkownikadeepak

# Create useruser --name=deepak --shell=/bin/bash --homedir=/home/deepak --iscrypted --password=$6$uSejt/TeWMJVQ/F8$/oFsIanDHS/5b9ssy7gZbQwNkORgRjsQIw4JyFjlTWDh9TVsEXWEy2APpCUNTHipOOEe..ubg3qBZOwpaPtsB.

Utwórz użytkownika (tylko do instalacji)

możesz utworzyć użytkownika tylko do monitorowania procesu instalacji. Po zakończeniu instalacji Ten użytkownik zostanie usunięty z węzła

polecenie Kickstart – sshpw

  • podczas instalacji możesz wchodzić w interakcje z programem instalacyjnym i monitorować jego postęp przez połączenie SSH
  • użyj polecenia Sshpw, aby utworzyć tymczasowe konta, za pomocą których można się zalogować.
  • każda instancja polecenia tworzy osobne konto, które istnieje tylko w środowisku instalacyjnym.
  • te konta nie są przenoszone do zainstalowanego systemu.

składnia:

sshpw --username=name password

w moim przykładzie kickstartu CentOS/RHEL 8 tworzę użytkownikaadmin aby monitorować instalację:

sshpw --username=admin --iscrypted --password=$6$PMLcSXd.w5pBvC.u$D06Ip60h/iWExxQ09gMi5aAbFaDK.NtLOgOZ56uU6kw.uUy/9/Mmw6vYBjs8Hw50y0Rx4m0yMdH0Vt5EUEsRI.

Utwórz nową grupę

Możesz również utworzyć nową grupę za pomocą kickstartu

polecenie Kickstart – Grupa

  • jeśli grupa o podanej nazwie lub GID już istnieje, polecenie to nie powiedzie się.
  • polecenie user może być użyte do utworzenia nowej grupy dla nowo utworzonego użytkownika.
  • tworzy nową grupę użytkowników w systemie.

składnia:

group --name=name 

obowiązkowe opcje

  • --name= podaje nazwę grupy.

Włącz lub wyłącz zaporę

możesz włączyć lub wyłączyć zaporę podczas etapu instalacji

polecenie Kickstart – firewall

określa konfigurację zapory dla zainstalowanego systemu.

składnia:

firewall --enabled|--disabled 

tutaj,

  • --enabled lub --enable – Odrzuć połączenia przychodzące, które nie są w odpowiedzi na żądania wychodzące, takie jak odpowiedzi DNS lub żądania DHCP.
  • --disabled lub--disable – nie Konfiguruj żadnych reguł iptables.

Włącz moduł

Możesz również włączyć moduł za pomocą kickstartu

polecenie Kickstart – moduł

Użyj tego polecenia, aby włączyć strumień modułu pakietu w skrypcie kickstart.

składnia:

module --name=NAME 

obowiązkowe opcje

  • --name= Określa nazwę modułu, który ma być włączony. Zastąp nazwę rzeczywistą nazwą.

Włącz lub wyłącz SELinux

Możesz również włączyć lub wyłączyć selinux za pomocą kickstartu

polecenie Kickstart – selinux

  • ustawia stan SELinux na zainstalowanym systemie.
  • domyślna Polityka SELinux jest wymuszana.

składnia:

selinux 

opcje:

  • --enforcing włącza SELinux z wymuszaniem domyślnej polityki docelowej.
  • --permissive wyświetla ostrzeżenia oparte na polityce SELinux, ale w rzeczywistości nie wymusza tej polityki.
  • --disabled wyłącza SELinux całkowicie w systemie.

wybór pakietów

Kickstart używa sekcji uruchamianych przez polecenie %packages do wyboru pakietów do zainstalowania.

polecenie Kickstart – %packages

  • w ten sposób można instalować pakiety, grupy, środowiska, strumienie modułów i profile modułów.
  • użyj polecenia %packages, aby rozpocząć sekcję Kickstart, która opisuje pakiety oprogramowania do zainstalowania.
  • sekcja %packages musi kończyć się poleceniem %end.

określanie grup

  • Określ grupy, jeden wpis do linii, zaczynając od symbolu@, a następnie pełną nazwę grupy lub identyfikator grupy
  • możesz uzyskać listę obsługiwanych opcji z listy „dnf grouplist
%packages@X Window System@Desktop@Sound and Video%end

określanie poszczególnych pakietów

  • określ poszczególne pakiety według nazwy, jednego wpisu do linii. W nazwach pakietów można używać znaku gwiazdki (*) jako symbolu wieloznacznego. Na przykład:
%packagessqlitecurlaspelldocbook*%end

In my RHEL/CentOS 8 kickstart example I have used „Virtualization Host

%packages@^Virtualization Hostkexec-tools%end

Enable or Disable Kdump

Kickstart command – %addon com_redhat_kdump

This command configures the kdump kernel crash dumping mechanism.

Syntax:

%addon com_redhat_kdump %end

Options:

  • --enable Enable kdump on the installed system.
  • --disable Disable kdump on the installed system.
  • --reserve-mb= ilość pamięci, którą chcesz zarezerwować dla kdump, w MiB

w moim przykładzie RHEL/CentOS 8 Kickstart użyłemauto, aby automatycznie zarezerwować wymaganą pamięć dla kdump:

%addon com_redhat_kdump --enable --reserve-mb='auto'%end

zastosuj politykę haseł

polecenie Kickstart – pwpolicy

  • użyj tego polecenia, aby wymusić niestandardową politykę haseł podczas instalacji.
  • zasada wymaga utworzenia haseł dla konta głównego, użytkowników lub użytkowników luks.
  • czynniki takie jak długość i Siła hasła decydują o ważności hasła.

lista obsługiwanych opcji znajduje się w Przewodniku Red Hat do zaawansowanej instalacji

w moim przykładzie RHEL / CentOS 8 Kickstart, którego użyłem poniżej polityka haseł:

%anacondapwpolicy root --minlen=6 --minquality=1 --notstrict --nochanges --notemptypwpolicy user --minlen=6 --minquality=1 --notstrict --nochanges --emptyokpwpolicy luks --minlen=6 --minquality=1 --notstrict --nochanges --notempty%end

RHEL/CentOS 8 Kickstart Example File

Below is one sample kickstart file example from my server which I use to install Virtual Machine on Oracle VirtualBox

Red_Hat_CentOS_8_Kickstart_Example

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.