I Artikkelen Vil Jeg Dele listen over rhel/CENTOS 8 Kickstart Eksempel Kommandoer som du Kan bruke til å automatisere installasjonen for red hat og centos. Jeg har ikke dekket %pre
og %post
installasjonstrinn i denne artikkelen, da det bare kan forlenge denne allerede lange artikkelen. Selv om jeg vil prøve å dekke de mest brukte kickstart kommandoer i sanntid produksjonsmiljø.
Kickstart Generator
Du kan bruke Red Hat offisielle Kickstart Generator Verktøy for å lage din kickstart fil for å automatisere installasjonen.
bare følg alternativene på skjermen, og du vil få en prøve kickstart fil basert på ditt valg.
Kickstart Validator
før du starter installasjonen med kickstart-fil, anbefales det å validere innholdet I Kickstart-konfigurasjonsfilen. Installerpykickstart
for å installereksvalidator
verktøyet
# dnf -y install pykickstart
for å validere kickstartfilen gir du den absolutte banen og kickstartfilen med ksvalidator
:
# ksvalidator kickstart.conf
Nedenfor er listen Over Kickstart kommandoer som du kan manuelt legge til og lage din egen Kickstart fil for å automatisere Hele Red Hat / CentOS installasjonsprosessen. På slutten av artikkelen har jeg lagt ved en prøve kickstart konfigurasjonsfil som jeg har brukt til å installere Virtuell Maskin I Oracle VirtualBox
Legg Til Kommentar (Valgfritt)
du kan velge å legge til noen kommentar for å identifisere Kickstart som jeg har lagt til for identifikasjon. Dette valgfritt, og du kan velge å ignorere:
# version=RHEL8# RHEL/CentOS 8 Kickstart Example
Utfør Media Sjekk
du kan sjekke media før du starter installasjonen
Kickstart kommando-mediacheck
denne kommandoen tvinger installasjonsprogrammet til å utføre en media sjekk før du starter installasjonen.
denne kommandoen krever at installasjoner blir deltatt, så den er deaktivert som standard.
Syntaks:
mediacheck
Installasjonsmodus
for en helautomatisk installasjon må du enten angi en av de tilgjengelige modusene I Kickstart-filen:
Kickstart – kommando-grafisk
- Den utfører Kickstart-installasjonen i grafisk modus.
- du kan også kombinere den med
--non-interactive
som utfører installasjonen i en helt ikke-interaktiv modus. - denne modusen vil avslutte installasjonen når brukerinteraksjon er nødvendig.
Kickstart kommando – tekst
- Den utfører Kickstart-installasjonen i tekstmodus.
- du kan også kombinere den med
--non-interactive
som utfører installasjonen i en helt ikke-interaktiv modus. - denne modusen vil avslutte installasjonen når brukerinteraksjon er nødvendig.
Kickstart kommando-cmdline
- den utfører installasjonen i en helt ikke-interaktiv kommandolinjemodus.
- enhver melding om interaksjon stopper installasjonen.
- denne kommandoen har ingen alternativer.
I MITT RHEL/CentOS 8 kickstart-eksempel velger jegtext
som foretrukket installasjonsmetode
# Install in text modetext
Opprett ekstra repo
du kan konfigurere flere yum-repositorier som kan brukes som kilder for pakkeinstallasjon.
Kickstart kommando – repo
- som standard alle gitt repos blir automatisk opprettet og montert på
/run/install/repo/<repo_name>
- du kan legge til flere
repo
linjer.
Syntaks:
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.
for fullstendig liste over støttede alternativer, sjekk Red Hats Guide for Avansert Installasjon
I MITT RHEL / CentOS 8 kickstart-eksempel vil jeg også lage AppStream
repo som er en DEL AV ISO-bildet.
# Create additional repo during installationrepo --name="AppStream" --baseurl=file:///run/install/repo/AppStream
Installasjonsmetode
det er forskjellige installasjonsmetoder å velge mellom, for eksempel cdrom
harddrive
hmc
nfs
liveimg
, eller url
.
Vi bruker for det meste url
cdrom
og nfs
i produksjonsmiljø, så jeg vil forklare disse installasjonsmetoden:
Kickstart kommando – nfs
den utfører installasjonen fra en spesifisert nfs-server.
Syntaks:
nfs OPTIONS
Alternativer:
-
--server=
Server som skal installeres (vertsnavn ELLER IP). -
--dir=
Katalog som inneholder variantkatalogen til installasjonstreet. -
--opts=
Monteringsalternativer for montering AV nfs-eksport. (valgfritt)
Kickstart-kommando-url
den utfører installasjonen fra et installasjonstreetbilde på en ekstern server ved HJELP AV FTP, HTTP eller HTTPS.
Syntaks:
url --url=FROM
Obligatoriske valg:
--url=
plasseringen som skal installeres fra. Støttede protokoller ER HTTP, HTTPS, FTP og fil.Valgfrie alternativer:
-
--proxy=
Angi EN HTTP -, HTTPS-eller FTP-proxy som skal brukes under installasjonen.
for å få komplett liste over støttede alternativer, sjekk Red Hats Guide for avansert installasjon
Kickstart command-cdrom
- den utfører installasjonen fra den første optiske stasjonen på systemet.
- denne kommandoen har ingen alternativer.
I MITT RHEL / CentOS 8 kickstart-eksempel vil jeg bruke NFS som installasjonsmetode
# Installation medianfs --server=10.10.10.12 --dir=/images/
Tastaturoppsett
- det setter ett eller flere tilgjengelige tastaturoppsett for systemet.
- Alle tilgjengelige oppsett kan vises på xkeyboard-config(7) man-siden under Oppsett.
Syntaks:
keyboard --vckeymap|--xlayouts OPTIONS
Alternativer:
-
--vckeymap=
Angi Et vconsole-tastekort som skal brukes. Gyldige navn samsvarer med listen over filer i/usr/lib/kbd/keymaps/xkb/
– katalogen, uten.map.gz
– utvidelsen. -
--xlayouts=
Angi en liste Over x-oppsett som skal brukes som en kommaseparert liste uten mellomrom. Godtar verdier i samme format som setxkbmap (1), enten i layoutformatet (for eksempel cz) eller i layoutformatet (variant) (for eksempel cz (qwerty)).
I MIN RHEL/CentOS 8 kickstart eksempel vil jeg bruke English US
Som Tastaturoppsett
# Keyboard layoutskeyboard --vckeymap=us --xlayouts='us'
Sett Systemspråk
Kickstart kommando – lang
- det setter språket som skal brukes under installasjonen Og STANDARDSPRÅKET Som Skal Brukes På det installerte systemet.
- du kan bruke
locale -a | grep _
ellerlocalectl list-locales
for å få listen over støttede lokaliteter.
Syntaks:
lang language
I MITT RHEL/CentOS 8 kickstart eksempel vil jeg bruke en_US.UTF-8
# System languagelang en_US.UTF-8
Nettverksinformasjon
Kickstart kommando – nettverk
- den konfigurerer nettverksinformasjon for målsystemet og aktiverer nettverksenheter I INSTALLASJONSMILJØET.
- enheten som er angitt i den første nettverkskommandoen, aktiveres automatisk.
- Aktivering av enheten kan også eksplisitt kreves av –activate-alternativet.
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
Deaktiver IPv4 på denne enheten. -
--noipv6
Deaktiver IPv6 på denne enheten.
I MITT RHEL/CentOS 8 kickstart-eksempel vil jeg tildele nettverk til 2 grensesnitteth0
ogeth1
# 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
Tilordne rotpassord
- det setter systemets rotpassord til passordargumentet.
- du kan gi root passord enten i ren tekst eller kryptert
- for å opprette et kryptert passord, kan du bruke python:
$ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
- dette genererer en sha512 crypt-kompatibel hash av passordet ditt ved hjelp av en tilfeldig salt.
Syntaks:
rootpw password
Alternativer:
-
--iscrypted
hvis dette alternativet er til stede, antas passordargumentet allerede å være kryptert. -
--plaintext
hvis dette alternativet er til stede, antas passordargumentet å være i ren tekst. -
--lock
hvis dette alternativet er til stede, er rotkontoen låst som standard. Dette betyr at rotbrukeren ikke vil kunne logge inn fra konsollen.
I MITT RHEL/CentOS 8 kickstart – eksempel har jeg allerede opprettet og tildelt root-passord
# Root passwordrootpw --iscrypted $6$w7El/FYx9mbTG6x9$Te.Yg6dq0TsQwGpdSjeDGSw4J9ZBAkLXzT9ODMV7I7lHvX3n5.9PCS4jIkS2GbVLZOpVRLvrua3wwbwA.cfWX.
Kjør setup agent på første oppstart
Kickstart-kommando-firstboot
- det avgjør om Det Første Setup-programmet starter første gang systemet er startet.
- hvis aktivert, må den første oppsettspakken installeres.
- hvis ikke spesifisert, er dette alternativet deaktivert som standard.
Syntaks:
firstboot OPTIONS
Alternativer:
-
--enable
eller--enabled
: Første Oppsett startes første gang systemet starter. -
--disable
eller--disabled
:Første Oppsett startes ikke første gang systemet starter. -
--reconfig
:Aktiver Det Første Oppsettet for å starte ved oppstart i rekonfigureringsmodus.
I MIN RHEL/CentOS 8 kickstart eksempel vil jeg aktivere firstboot
# Run the Setup Agent on first bootfirstboot --enable
Konfigurer X Window System
du kan enten velge å installere Og konfigurere X Window System eller deaktivere den
Kickstart kommando – xconfig
- hvis du installerer en visningsbehandling blant pakkevalgsalternativene dine, oppretter denne pakken en x-konfigurasjon, og det installerte systemet er som standard
graphical.target
. - som overstyrer effekten av
skipx
alternativet. - for å konfigurere X Vindu System bruk «
xconfig
«
Kickstart kommando – skipx
for å unngå å konfigurere X Vindu System bruk skipx
I MIN RHEL/centos 8 kickstart eksempel jeg vil deaktivere x windows system
# Do not configure the X Window Systemskipx
aktivere eller deaktivere systemtjenester
kickstart kommando – tjenester
- det endrer standard sett med tjenester som vil kjøre under standard systemd mål.
- listen over deaktiverte tjenester behandles før listen over aktiverte tjenester.
- derfor, hvis en tjeneste vises på begge lister, vil den bli aktivert.
Syntaks:
services
I MITT RHEL/CentOS 8 kickstart – eksempel vil jeg aktiverechronyd
service
# System servicesservices --enabled="chronyd"
Angi tidssone
Kickstart-kommando-tidssone
- det setter systemets tidssone.
- du kan bruke
timedatectl list-timezones
for å få listen over støttede tidssoneverdier
Syntaks:
timezone timezone
Valgfrie alternativer:
-
--utc
hvis det finnes, antar systemet at maskinvareklokken er satt til utc (greenwich mean) tid. -
--nontp
Deaktiver NTP-tjenesten automatisk start. -
--ntpservers=
Angi en liste OVER NTP-servere som skal brukes som en kommaseparert liste uten mellomrom.
I MIN RHEL/CentOS 8 kickstart eksempel vil jeg brukeAsia/Kolkata
som min tidssone
# System timezonetimezone Asia/Kolkata --isUtc
Håndtere omstart av noden
Kickstart kommando – omstart
-
reboot
» instruerer installasjonsprogrammet til å starte på nytt etter at installasjonen er fullført (ingen argumenter). - Kickstart viser Normalt en melding og venter på at brukeren trykker på en tast før omstart.
- Angi omstart for å automatisere installasjonen
I MITT RHEL/CentOS 8 kickstart – eksempel vil jeg bruke omstart som jeg planlegger å automatisere hele installasjonen
# Reboot the nodereboot
Opprett Diskpartisjon
du kan bruke forskjellige variabler for å konfigurere diskoppsettet
Kickstart kommando-ignoredisk
- det fører til at installasjonsprogrammet ignorerer de angitte DISKENE.
- dette er nyttig hvis du bruker automatisk partisjonering og vil være sikker på at noen disker ignoreres.
I MITT RHEL/CentOS 8 kickstart – eksempel vil jeg bare brukesda
disk for installasjon
# Choose the disks to be usedignoredisk --only-use=sda
Kickstart-kommando-clearpart
- det fjerner partisjoner fra systemet, før opprettelse av nye partisjoner.
- som standard fjernes ingen partisjoner.
I Mitt CentOS / RHEL 8 kickstart eksempel vil jeg fjerne alle eksisterende partisjoner:
# Partition clearing informationclearpart --all
Kickstart kommando-del eller partisjon
- det skaper en partisjon på systemet.
- dette emnet er veldig stort, og jeg planlegger å gi forskjellige partisjonslayouteksempler for å installere Linux
i mitt eksempel kickstart eksempel vil jeg installere CentOS 8 ved Hjelp Av Logical Volume Manager. Her vil jeg opprette
- root logisk volum
- bytt partisjon
- boot partisjon
# 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
opprett ny bruker (permanent)
du kan også opprette ny bruker ved hjelp av kickstart som også vil være til stede etter installasjonen
kickstart kommando – bruker
bruk user
for å opprette en ny bruker ved hjelp av kickstart
syntaks:
user --name=username
I MITT RHEL/CentOS 8 kickstart-eksempel vil jeg opprette en brukerdeepak
# Create useruser --name=deepak --shell=/bin/bash --homedir=/home/deepak --iscrypted --password=$6$uSejt/TeWMJVQ/F8$/oFsIanDHS/5b9ssy7gZbQwNkORgRjsQIw4JyFjlTWDh9TVsEXWEy2APpCUNTHipOOEe..ubg3qBZOwpaPtsB.
Opprett Bruker (kun for installasjon)
du kan bare opprette bruker for å overvåke installasjonsprosessen. Når installasjonen er fullført, vil denne brukeren bli fjernet fra noden
Kickstart-kommando-sshpw
- under installasjonen kan du samhandle med installasjonsprogrammet og overvåke fremdriften over EN SSH-tilkobling
- Bruk sshpw-kommandoen til å opprette midlertidige kontoer som du kan logge på.
- hver forekomst av kommandoen oppretter en egen konto som bare finnes i installasjonsmiljøet.
- disse kontoene overføres ikke til det installerte systemet.
Syntaks:
sshpw --username=name password
I Mitt CentOS/RHEL 8 kickstart eksempel lager jeg en brukeradmin
for å overvåke installasjonen:
sshpw --username=admin --iscrypted --password=$6$PMLcSXd.w5pBvC.u$D06Ip60h/iWExxQ09gMi5aAbFaDK.NtLOgOZ56uU6kw.uUy/9/Mmw6vYBjs8Hw50y0Rx4m0yMdH0Vt5EUEsRI.
Opprett ny gruppe
du kan også opprette en ny gruppe ved hjelp av kickstart
kickstart command – group
- hvis en gruppe med gitt navn eller gid allerede eksisterer, mislykkes denne kommandoen.
- brukerkommandoen kan brukes til å opprette en ny gruppe for den nyopprettede brukeren.
- det oppretter en ny brukergruppe på systemet.
Syntaks:
group --name=name
Obligatoriske alternativer
--name=
gir navnet på gruppen.Aktiver eller Deaktiver brannmur
du kan aktivere eller deaktivere brannmur under installasjonstrinnet
Kickstart kommando-brannmur
den angir brannmurkonfigurasjonen for det installerte systemet.
Syntaks:
firewall --enabled|--disabled
Her,
--enabled
eller --enable
– Avvis innkommende tilkoblinger som ikke svarer PÅ utgående forespørsler, for EKSEMPEL DNS-svar eller dhcp-forespørsler.--disabled
eller --disable
– ikke konfigurer noen iptables-regler . Aktiver en modul
du kan også aktivere en modul ved hjelp av kickstart
Kickstart command-module
Bruk denne kommandoen til å aktivere en pakkemodulstrøm i kickstart script.
Syntaks:
module --name=NAME
Obligatoriske valg
--name=
Angir navnet på modulen som skal aktiveres. Erstatt NAVN med det faktiske navnet.Aktiver Eller Deaktiver SELinux
du kan også aktivere eller deaktivere selinux ved hjelp av kickstart
Kickstart kommando-selinux
- det setter tilstanden Til SELinux på det installerte systemet.
- Standard SELinux-policy håndheves.
Syntaks:
selinux
Alternativer:
-
--enforcing
Aktiverer SELinux med standard målrettet politikk som håndheves. -
--permissive
Sender ut advarsler basert På SELinux-policyen, men håndhever faktisk ikke policyen. -
--disabled
Deaktiverer SELinux helt på systemet.
Pakkevalg
Kickstart bruker seksjoner startet av % packages-kommandoen for å velge pakker som skal installeres.
Kickstart kommando- % pakker
- du kan installere pakker, grupper, miljøer, modulstrømmer og modulprofiler på denne måten.
- Bruk kommandoen % packages til å starte En Kickstart-seksjon som beskriver programvarepakkene som skal installeres.
- delen % pakker må avsluttes med kommandoen % end.
Angi grupper
- Angi grupper, en oppføring til en linje, som starter med et @ – symbol, og deretter hele gruppenavnet eller gruppe-id
- du kan få listen over støttede alternativer fra listen over «
dnf grouplist
«
%packages@X Window System@Desktop@Sound and Video%end
angi individuelle pakker
- angi individuelle pakker etter navn, en oppføring til en linje. Du kan bruke stjernetegnet ( * ) som et jokertegn i pakkenavn. Eksempelvis:
%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=
mengden minne du vil reservere for kdump, i MiB
I MITT RHEL/CentOS 8 kickstart – eksempel har jeg brukt auto
for å automatisk reservere det nødvendige minnet for kdump:
%addon com_redhat_kdump --enable --reserve-mb='auto'%end
bruk passordpolicy
kickstart kommando-pwpolicy
- bruk DENNE KOMMANDOEN til Å Håndheve en egendefinert passordpolicy under installasjonen.
- policyen krever at du oppretter passord for root, brukere eller luks brukerkontoer.
- faktorene som passordlengde og styrke bestemmer gyldigheten av et passord.
for liste over støttede alternativer, sjekk Red Hats Guide for Avansert Installasjon
I MITT RHEL / CentOS 8 kickstart-eksempel har jeg brukt under passordpolicy:
%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