Inhoudsopgave
In het artikel zal ik delen de lijst van RHEL/CentOS 8 voorbeeld kickstart commando ‘ s die u kunt gebruiken voor het automatiseren van de installatie van Red Hat en CentOS. Ik heb niet behandeld %pre
en %post
installatie fase in dit artikel, omdat dat kan gewoon verlengen dit al lange artikel. Hoewel Ik zal proberen om de meest gebruikte kickstart commando ‘ s in real time productie omgeving te behandelen.
Kickstart Generator
Je kunt Red Hat ‘ s officiële Kickstart Generator Tool gebruiken om je kickstart bestand aan te maken om de installatie te automatiseren.
volg gewoon de opties op het scherm en je krijgt een voorbeeld kickstart bestand gebaseerd in je keuze.
Kickstart Validator
voordat je de installatie start met behulp van het kickstart bestand, wordt het aanbevolen om de inhoud van het kickstart configuratie bestand te valideren. Install pykickstart
om de ksvalidator
tool
# dnf -y install pykickstart
om het kickstart bestand te valideren geef het absolute pad en het kickstart bestand met ksvalidator
:
# ksvalidator kickstart.conf
hieronder staat de lijst met Kickstart commando ‘ s die je handmatig kunt toevoegen en je eigen kickstart bestand kunt maken om het gehele Red Hat/CentOS installatie proces te automatiseren. Aan het einde van het artikel heb ik een voorbeeld kickstart configuratiebestand toegevoegd dat ik heb gebruikt om een virtuele Machine te installeren in Oracle VirtualBox
add Comment (optioneel)
u kunt ervoor kiezen om commentaar toe te voegen om de kickstart te identificeren als I hebben toegevoegd voor identificatie. Dit is optioneel en je kunt kiezen om te negeren:
# version=RHEL8# RHEL/CentOS 8 Kickstart Example
voer Media controle uit
Je kunt de media controleren voordat je de installatie start
Kickstart Commando – mediacheck
Dit commando forceert het installatie programma om een media controle uit te voeren voordat je de installatie start.
dit commando vereist dat installaties worden bijgewoond, dus het is standaard uitgeschakeld.gebruik:
mediacheck
installatiemodus
voor een volautomatische installatie moet je ofwel één van de beschikbare modi opgeven in het Kickstart bestand:
kickstart Commando-graphical
- Het voert de kickstart installatie uit in grafische modus.
- U kunt het ook combineren met
--non-interactive
die de installatie uitvoert in een volledig niet-interactieve modus. - deze modus zal de installatie beëindigen wanneer gebruikersinteractie vereist is.
kickstart Commando-text
- Het voert de kickstart installatie uit in tekst mode.
- U kunt het ook combineren met
--non-interactive
die de installatie uitvoert in een volledig niet-interactieve modus. - deze modus zal de installatie beëindigen wanneer gebruikersinteractie vereist is.
kickstart Commando-cmdline
- Het voert de installatie uit in een volledig niet-interactieve commandoregel mode.
- elke prompt voor interactie stopt de installatie.
- dit commando heeft geen opties.
In mijn RHEL/CentOS 8 kickstart voorbeeld kies ik text
als de geprefereerde installatie methode
# Install in text modetext
Creëer extra repo
je kunt extra Yum repositories instellen die gebruikt kunnen worden als bronnen voor pakketinstallatie.
kickstart command – repo
- standaard worden alle verstrekte repo ‘ s automatisch aangemaakt en aangekoppeld op
/run/install/repo/<repo_name>
- U kunt meerdere
repo
regels toevoegen.
syntaxis:
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.
voor de volledige lijst van ondersteunde opties controleer Red Hat ‘ s Guide voor Geavanceerde installatie
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik ook AppStream
repo aanmaken wat deel uitmaakt van de ISO image.
# Create additional repo during installationrepo --name="AppStream" --baseurl=file:///run/install/repo/AppStream
Installatie Methode
Er zijn verschillende methoden om uit te kiezen, zoals cdrom
harddrive
hmc
nfs
liveimg
of url
.
we gebruiken meestal url
cdrom
en nfs
in de productieomgeving, dus Ik zal deze installatie methode uitleggen:
Kickstart Commando – nfs
Het voert de installatie uit vanaf een opgegeven NFS server.gebruik:
nfs OPTIONS
opties:
--server=
Server van waaruit moet worden geïnstalleerd (hostnaam of IP).--dir=
map die de variantmap van de installatie-boom bevat.--opts=
Koppelopties die gebruikt worden voor het mounten van de NFS-export. (optioneel)
kickstart command – url
Het voert de installatie uit vanaf een installatie boom image op een remote server met behulp van FTP, HTTP, of HTTPS.gebruik:
url --url=FROM
verplichte opties:
--url=
de te installeren locatie. Ondersteunde protocollen zijn HTTP, HTTPS, FTP en file.
optionele opties:
--proxy=
Geef een HTTP -, HTTPS-of FTP-proxy op om te gebruiken tijdens het uitvoeren van de installatie.
om een volledige lijst van ondersteunde opties te krijgen, Controleer Red Hat ‘ s Guide voor geavanceerde installatie
Kickstart command – cdrom
- Het voert de installatie uit vanaf het eerste optische station op het systeem.
- dit commando heeft geen opties.
in mijn RHEL / CentOS 8 kickstart voorbeeld zal ik NFS gebruiken als mijn installatie methode
# Installation medianfs --server=10.10.10.12 --dir=/images/
Toetsenbordindelingen
- Het stelt een of meer beschikbare toetsenbordindelingen in voor het systeem.
- alle beschikbare lay-outs kunnen worden bekeken op de xkeyboard-config(7) manual pagina onder lay-outs.gebruik:
keyboard --vckeymap|--xlayouts OPTIONS
opties:
--vckeymap=
Geef een vconsole-toetsenkaart op die moet worden gebruikt. Geldige namen komen overeen met de lijst met bestanden in de/usr/lib/kbd/keymaps/xkb/
map, zonder de.map.gz
extensie.--xlayouts=
Geef een lijst van X-opmaak op die gebruikt moet worden als een door komma ‘ s gescheiden lijst zonder spaties. Accepteert waarden in hetzelfde formaat als setxkbmap (1), hetzij in het opmaakformaat (zoals cz), of in het opmaakformaat (variant) (zoals cz (qwerty)).
in mijn RHEL/CentOS 8 kickstart voorbeeld zal ik
English US
gebruiken als toetsenbordindeling# Keyboard layoutskeyboard --vckeymap=us --xlayouts='us'
Set System Language
kickstart Commando – lang
- Het stelt de taal die gebruikt moet worden tijdens de installatie en de standaard taal die gebruikt moet worden op het geïnstalleerde systeem.
- u kunt
locale -a | grep _
oflocalectl list-locales
gebruiken om de lijst met ondersteunde landinstellingen te verkrijgen.
syntaxis:
lang language
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik
en_US.UTF-8
# System languagelang en_US.UTF-8
netwerk informatie
kickstart Commando – netwerk
- het configureert netwerkinformatie voor het doelsysteem en activeert netwerkapparaten in de installatie-omgeving.
- het apparaat dat in het eerste netwerkcommando is opgegeven, wordt automatisch geactiveerd.
- activering van het apparaat kan ook expliciet worden vereist door de –activate optie.
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
schakel IPv4 op dit apparaat uit.--noipv6
schakel IPv6 op dit apparaat uit.
in mijn RHEL/CentOS 8 kickstart voorbeeld zal ik netwerk toewijzen aan 2 interfaces
eth0
eneth1
HINT:ik heb een traditionele interface naam gebruikt die alleen mogelijk is als je consistente netwerk apparaat naamgeving uitschakelt.# 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
root wachtwoord toewijzen
- Het stelt het root wachtwoord van het systeem in op het wachtwoord argument.
- U kunt root-wachtwoord opgeven in platte tekst of versleuteld
- om een versleuteld wachtwoord aan te maken, kunt u python gebruiken:
$ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
- dit genereert een SHA512 Crypt-compatibele hash van uw wachtwoord met behulp van een willekeurige zout.gebruik:
rootpw password
opties:
--iscrypted
als deze optie aanwezig is, wordt aangenomen dat het wachtwoord argument al versleuteld is.--plaintext
als deze optie aanwezig is, wordt aangenomen dat het wachtwoord argument in platte tekst is.--lock
als deze optie aanwezig is, wordt het root-account standaard vergrendeld. Dit betekent dat de root gebruiker niet in staat zal zijn om in te loggen vanaf de console.
in mijn RHEL/CentOS 8 kickstart voorbeeld heb ik al een root wachtwoord aangemaakt en toegewezen
# Root passwordrootpw --iscrypted $6$w7El/FYx9mbTG6x9$Te.Yg6dq0TsQwGpdSjeDGSw4J9ZBAkLXzT9ODMV7I7lHvX3n5.9PCS4jIkS2GbVLZOpVRLvrua3wwbwA.cfWX.
Voer de setup agent uit op de eerste boot
kickstart Commando – firstboot
- Het bepaalt of de initiële Setup applicatie start de eerste keer dat het systeem opgestart.
- Indien ingeschakeld moet het pakket initial-setup geïnstalleerd zijn.
- indien niet opgegeven, is deze optie standaard uitgeschakeld.gebruik:
firstboot OPTIONS
opties:
--enable
or--enabled
:de eerste installatie wordt gestart de eerste keer dat het systeem opstart.--disable
or--disabled
:de eerste installatie wordt niet gestart de eerste keer dat het systeem opstart.--reconfig
:Schakel de initiële instellingen in om tijdens het opstarten te starten in de herconfiguratiemodus.
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik
firstboot
# Run the Setup Agent on first bootfirstboot --enable
Configure X Window System
U kunt kiezen om X Window System te installeren en configureren of het uitschakelen
kickstart Commando – xconfig
- Als u een display Manager installeert tussen uw pakketselectie-opties, maakt dit pakket een X-configuratie aan, en het geïnstalleerde systeem standaard
graphical.target
. - die het effect van de optie
skipx
overschrijft. - configureert het X Window Systeem in gebruik “
xconfig
“
Kickstart commando – skipx
om Te voorkomen dat de configuratie van X Window Systeem gebruiken
skipx
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik het uitschakelen van X Windows Systeem
# Do not configure the X Window Systemskipx
Inschakelen of Uitschakelen van het systeem services
Kickstart commando – services
- Het verandert de standaard set van voorzieningen die zullen draaien met de standaard systemd doel.
- de lijst met uitgeschakelde diensten wordt vóór de lijst met ingeschakelde diensten verwerkt.
- daarom zal een service op beide lijsten worden ingeschakeld.gebruik:
services
in mijn RHEL/CentOS 8 kickstart voorbeeld zal ik
chronyd
service# System servicesservices --enabled="chronyd"
Tijdzone
kickstart commando inschakelen – timezone
- het stelt de systeemtijdzone in.
- U kunt
timedatectl list-timezones
gebruiken om de lijst met ondersteunde Tijdzone-waarden
syntaxis:
timezone timezone
optionele opties:
--utc
indien aanwezig, neemt het systeem aan dat de hardwareklok is ingesteld op UTC (Greenwich Mean) tijd.--nontp
Schakel de NTP-dienst automatisch starten uit.--ntpservers=
Geef een lijst op van NTP-servers die gebruikt moeten worden als een door komma ‘ s gescheiden lijst zonder spaties.
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik gebruik maken
Asia/Kolkata
mijn tijdzone# System timezonetimezone Asia/Kolkata --isUtc
Greep reboot van de node
Kickstart commando – reboot
- De “
reboot
” instrueert de installatie-programma te starten nadat de installatie succesvol is beëindigd (geen argumenten). - normaal gesproken toont Kickstart een bericht en wacht tot de gebruiker op een toets drukt voordat hij opnieuw opstart.
- Specificeer reboot om installatie te automatiseren
in mijn RHEL/CentOS 8 kickstart voorbeeld zal ik reboot gebruiken als ik van plan ben om de gehele installatie te automatiseren
# Reboot the nodereboot
schijfpartitie aanmaken
u kunt verschillende variabelen gebruiken om uw schijflay – out te configureren
kickstart command-ignoredisk
- het zorgt ervoor dat het installatie programma de opgegeven schijven negeert.
- dit is handig als u automatische partitionering gebruikt en er zeker van wilt zijn dat sommige schijven worden genegeerd.
in mijn RHEL/CentOS 8 kickstart voorbeeld wil ik alleen
sda
schijf gebruiken voor installatie# Choose the disks to be usedignoredisk --only-use=sda
kickstart Commando – clearpart
- Het verwijdert partities van het systeem, voorafgaand aan de creatie van nieuwe partities.
- standaard worden geen partities verwijderd.
in mijn CentOS / RHEL 8 kickstart voorbeeld zal ik alle bestaande partities verwijderen:
# Partition clearing informationclearpart --all
kickstart Commando – partitie
- Het maakt een partitie aan op het systeem.
- dit onderwerp is zeer uitgebreid en ik ben van plan om verschillende partitie lay-out voorbeelden te geven om Linux
te installeren In mijn voorbeeld kickstart voorbeeld zal ik CentOS 8 installeren met behulp van logische Volume Manager. Hier zal ik maken
- root logische volume
- swap partitie
- boot partitie
# 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
nieuwe gebruiker Aanmaken (permanent)
U kunt ook een nieuwe gebruiker aanmaken met gebruik van kickstart die ook aanwezig zullen zijn na de installatie
Kickstart commando – user
Gebruik
user
een nieuwe gebruiker aanmaken met gebruik van kickstartSyntax:
user --name=username
In mijn RHEL/CentOS 8 kickstart voorbeeld zal ik één gebruiker aanmaken
deepak
# Create useruser --name=deepak --shell=/bin/bash --homedir=/home/deepak --iscrypted --password=$6$uSejt/TeWMJVQ/F8$/oFsIanDHS/5b9ssy7gZbQwNkORgRjsQIw4JyFjlTWDh9TVsEXWEy2APpCUNTHipOOEe..ubg3qBZOwpaPtsB.
Create User (only for installation)
Je kunt een gebruiker aanmaken om het installatie proces te controleren. Zodra de installatie voltooid is zal deze gebruiker verwijderd worden van het knooppunt
Kickstart Commando – sshpw
- tijdens de installatie, kan je interageren met het installatie programma en de voortgang ervan controleren over een SSH verbinding
- gebruik het sshpw commando om tijdelijke accounts aan te maken waarmee je je kunt aanmelden.
- elke instantie van het commando maakt een apart account aan dat alleen in de installatie-omgeving bestaat.
- deze accounts worden niet overgedragen naar het geïnstalleerde systeem.gebruik:
sshpw --username=name password
in mijn CentOS/RHEL 8 kickstart voorbeeld maak ik een gebruiker
admin
om de installatie te controleren:sshpw --username=admin --iscrypted --password=$6$PMLcSXd.w5pBvC.u$D06Ip60h/iWExxQ09gMi5aAbFaDK.NtLOgOZ56uU6kw.uUy/9/Mmw6vYBjs8Hw50y0Rx4m0yMdH0Vt5EUEsRI.
Maak een nieuwe groep
U kunt maak ook een nieuwe groep aan met Kickstart
kickstart commando – Group
- als een groep met de opgegeven naam of gid al bestaat, faalt dit commando.
- het commando gebruiker kan gebruikt worden om een nieuwe groep aan te maken voor de nieuw aangemaakte gebruiker.
- Het maakt een nieuwe gebruikersgroep aan op het systeem.gebruik:
group --name=name
verplichte opties
--name=
geeft de naam van de groep.
Firewall inschakelen of uitschakelen
je kunt firewall in – of uitschakelen tijdens de installatie fase
Kickstart Commando-firewall
het specificeert de firewall configuratie voor het geà nstalleerde systeem.
syntaxis:
firewall --enabled|--disabled
Hier,
--enabled
or--enable
– binnenkomende verbindingen weigeren die niet reageren op uitgaande verzoeken, zoals DNS-antwoorden of DHCP-Verzoeken.--disabled
or--disable
– configureer geen iptables-regels.
Enable a module
u kunt ook een module inschakelen met kickstart
kickstart command – module
Gebruik dit commando om een pakket module stream in kickstart script aan te zetten.gebruik:
module --name=NAME
verplichte opties
--name=
specificeert de naam van de module die moet worden ingeschakeld. Vervang de naam door de werkelijke naam.
SELinux
inschakelen of uitschakelen U kunt selinux ook in – of uitschakelen met kickstart
kickstart Commando-selinux
- Het stelt de status van SELinux in op het geïnstalleerde systeem.
- De Standaard SELinux tactiek wordt afgedwongen.gebruik:
selinux
opties:
--enforcing
zet SELinux aan met de standaard gerichte tactiek die afdwingt.--permissive
geeft waarschuwingen gebaseerd op de SELinux tactiek, maar dwingt de tactiek niet daadwerkelijk af.--disabled
schakelt SELinux volledig uit op het systeem.
pakketselectie
Kickstart gebruikt secties gestart door het %packages commando voor het selecteren van pakketten om te installeren.
kickstart Commando- % packages
- je kunt pakketten, groepen, omgevingen, module streams en module profielen op deze manier installeren.
- gebruik het %packages commando om een kickstart sectie te starten die de software pakketten beschrijft die geà nstalleerd moeten worden.
- de sectie %packages moet eindigen met het %end Commando.
groepen opgeven
- groepen opgeven, één regel, beginnend met een @ – symbool, en dan de volledige groepsnaam of groep-ID
- U kunt de lijst met ondersteunde opties krijgen uit de lijst van “
dnf grouplist
“
%packages@X Window System@Desktop@Sound and Video%end
specificing individual packages
- specificeer individuele packages op naam, één regel. U kunt het sterretje (*) als joker gebruiken in pakketnamen. Bijvoorbeeld:
%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=
hoeveel geheugen u wilt reserveren voor kdump, in MiB
In mijn RHEL/CentOS 8 kickstart voorbeeld dat ik heb gebruikt
auto
automatisch behouden ons het benodigde geheugen voor kdump:%addon com_redhat_kdump --enable --reserve-mb='auto'%end
Stel een Wachtwoord Policy
Kickstart commando – pwpolicy
- Gebruik deze opdracht om het afdwingen van een aangepast wachtwoordbeleid tijdens de installatie.
- het beleid vereist dat u wachtwoorden maakt voor de root -, gebruikers-of luks-gebruikersaccounts.
- de factoren zoals wachtwoordlengte en-sterkte bepalen de geldigheid van een wachtwoord.
Voor lijst met ondersteunde opties controleer Red Hat ‘ s Guide voor Geavanceerde installatie
in mijn RHEL / CentOS 8 kickstart voorbeeld dat ik hieronder heb gebruikt:
%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