Sisällysluettelo
Jaan artikkelissa listan RHEL/CentOS 8 Kickstart-esimerkkikomennoista, joiden avulla voit automatisoida Red Hatin ja centosin asennuksen. I have not covered %pre
and %post
installation stage in this article as that may just longe this already long article. Vaikka yritän kattaa eniten käytetyt kickstart-komennot reaaliajassa tuotantoympäristössä.
Kickstart Generator
voit käyttää Red Hatin virallista Kickstart Generator-työkalua luodaksesi kickstart-tiedoston automatisoidaksesi asennuksen.
seuraa näytön asetuksia ja saat valitsemaasi kickstart-tiedoston.
Kickstart Validator
ennen kuin aloitat asennuksen kickstart-tiedostolla, on suositeltavaa validoida Kickstart-asetustiedoston sisältö. Asenna pykickstart
asentaaksesi ksvalidator
työkalu
# dnf -y install pykickstart
Kickstart-tiedoston validoimiseksi annetaan absoluuttinen polku ja kickstart-tiedosto ksvalidator
:
# ksvalidator kickstart.conf
alla on luettelo Kickstart-komennoista, joita voit manuaalisesti lisätä ja luoda oman Kickstart-tiedoston automatisoidaksesi koko Red Hat / CentOS-asennusprosessin. Artikkelin loppuun olen liittänyt sample kickstart-asetustiedoston, jota olen käyttänyt virtuaalikoneen asentamiseen Oracle VirtualBoxiin
Add Comment (valinnainen)
voit lisätä jonkin kommentin tunnistaaksesi Kickstart kuten olen lisännyt tunnistamista varten. Tämä valinnainen ja voit jättää huomiotta:
# version=RHEL8# RHEL/CentOS 8 Kickstart Example
Suorita Mediatarkistus
voit tarkistaa median ennen asennuksen aloittamista
Kickstart command – mediacheck
Tämä komento pakottaa asennusohjelman suorittamaan mediatarkistuksen ennen asennuksen aloittamista.
Tämä komento vaatii, että asennuksiin on osallistuttava, joten se on oletusarvoisesti pois käytöstä.
syntaksi:
mediacheck
asennustapa
täysautomaattisessa asennuksessa on joko määritettävä jokin käytettävissä olevista tiloista Kickstart-tiedostossa:
Kickstart command – graafinen
- se suorittaa Kickstart-asennuksen graafisessa tilassa.
- sen voi myös yhdistää
--non-interactive
, joka suorittaa installaation täysin ei-interaktiivisessa tilassa. - tämä tila lopettaa asennuksen, kun käyttäjän vuorovaikutus on tarpeen.
Kickstart command – text
- se suorittaa Kickstart-asennuksen tekstitilassa.
- sen voi myös yhdistää
--non-interactive
, joka suorittaa installaation täysin ei-interaktiivisessa tilassa. - tämä tila lopettaa asennuksen, kun käyttäjän vuorovaikutus on tarpeen.
Kickstart command – cmdline
- se suorittaa asennuksen täysin ei-interaktiivisessa komentorivitilassa.
- mikä tahansa vuorovaikutuskehote pysäyttää asennuksen.
- tällä komennolla ei ole vaihtoehtoja.
omassa RHEL/CentOS 8 kickstart-Esimerkissäni valitsen text
ensisijaiseksi asennustavaksi
# Install in text modetext
luo ylimääräisiä repoja
voit määrittää lisää yum-arkistoja, joita voidaan käyttää pakettiasennuksen lähteinä.
Kickstart command – repo
- oletuksena kaikki toimitetut repot luodaan automaattisesti ja asennetaan
/run/install/repo/<repo_name>
- voit lisätä useita
repo
linjat.
syntaksi:
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.
täydellinen lista tuetuista vaihtoehdoista tarkista Red Hatin ohjeesta Advanced Installation
omassa RHEL/CentOS 8 kickstart-Esimerkissäni luon myös AppStream
repo, joka on osa ISO-kuvaa.
# Create additional repo during installationrepo --name="AppStream" --baseurl=file:///run/install/repo/AppStream
asennustapa
valittavana on erilaisia asennustapoja, kuten cdrom
harddrive
hmc
nfs
liveimg
, tai url
.
käytämme enimmäkseen url
cdrom
ja nfs
tuotantoympäristössä, joten selitän nämä asennustavat:
Kickstart command – NFS
se suorittaa asennuksen määrätyltä NFS-palvelimelta.
syntaksi:
nfs OPTIONS
Options:
--server=
palvelin, jolta asentaa (isäntänimi tai IP).--dir=
Hakemisto, joka sisältää asennuspuun varianttihakemiston.--opts=
asennusmahdollisuudet NFS-viennin kiinnittämiseen. (valinnainen)
Kickstart – komento-url
se suorittaa asennuksen asennuspuun kuvasta etäpalvelimella käyttäen FTP -, HTTP-tai HTTPS-protokollaa.
syntaksi:
url --url=FROM
pakolliset vaihtoehdot:
--url=
asennuspaikka alkaen. Tuettuja protokollia ovat HTTP, HTTPS, FTP ja tiedosto.
valinnaiset vaihtoehdot:
--proxy=
Määritä HTTP -, HTTPS-tai FTP-välityspalvelin, jota käytetään asennuksen aikana.
saadaksesi täydellisen listan tuetuista valinnoista tarkista Red Hatin opas advanced installation
Kickstart command – cdrom
- se suorittaa asennuksen järjestelmän ensimmäiseltä optiselta asemalta.
- tällä komennolla ei ole vaihtoehtoja.
RHEL/CentOS 8 kickstart-Esimerkissäni käytän NFS: ää asennustapanani
# Installation medianfs --server=10.10.10.12 --dir=/images/
näppäimistöasettelut
- siinä asetetaan järjestelmälle yksi tai useampi käytettävissä oleva näppäimistöasettelu.
- kaikkia saatavilla olevia ulkoasuja voi tarkastella xkeyboard-config(7) – man-sivulla asettelujen alla.
syntaksi:
keyboard --vckeymap|--xlayouts OPTIONS
Options:
--vckeymap=
Määritä VConsole-näppäin, jota tulisi käyttää. Kelvolliset nimet vastaavat/usr/lib/kbd/keymaps/xkb/
hakemiston tiedostoluetteloa ilman.map.gz
– laajennusta.--xlayouts=
Määritä luettelo X-asetteluista, joita tulisi käyttää pilkulla eroteltuna luettelona ilman välilyöntejä. Hyväksyy arvot samassa muodossa kuin setxkbmap (1), joko asettelumuodossa (kuten cz) tai asettelumuodossa (variant) (kuten CZ (qwerty)).
RHEL/CentOS 8 kickstart – Esimerkissäni käytän English US
näppäimistön asetteluna
# Keyboard layoutskeyboard --vckeymap=us --xlayouts='us'
Set System Language
Kickstart command-lang
- se määrittää asennuksessa käytettävän kielen ja asennetussa järjestelmässä käytettävän oletuskielen.
- voit käyttää
locale -a | grep _
tailocalectl list-locales
saadaksesi listan tuetuista lokaaleista.
syntaksi:
lang language
omassa RHEL/CentOS 8 kickstart – esimerkissä käytän en_US.UTF-8
# System languagelang en_US.UTF-8
verkkotiedot
Kickstart command-network
- se määrittää kohdejärjestelmän verkkotiedot ja aktivoi verkkolaitteet ASENNUSYMPÄRISTÖSSÄ.
- ensimmäisessä verkkokomennossa määritetty laite aktivoituu automaattisesti.
- laitteen aktivointia voi vaatia myös –activate-asetus.
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
Poista IPv4 käytöstä tällä laitteella.--noipv6
Poista IPv6 käytöstä tällä laitteella.
RHEL/CentOS 8 kickstart-Esimerkissäni osoitan verkon 2 liitännälle ja eth1
# 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
Assign root password
- se asettaa järjestelmän juurisalasanan salasana-argumentille.
- juurisalasanan voi antaa joko selkotekstinä tai salattuna
- salatun salasanan luomiseen voi käyttää Pythonia:
$ python3 -c 'import crypt,getpass;pw=getpass.getpass();print(crypt.crypt(pw) if (pw==getpass.getpass("Confirm: ")) else exit())'
- tämä luo sha512 Crypt-yhteensopivan hajautuksen salasanastasi käyttämällä satunnaista suolaa.
syntaksi:
rootpw password
Options:
--iscrypted
jos tämä asetus on käytössä, salasana-argumentin oletetaan olevan jo salattu.--plaintext
jos tämä asetus on käytössä, salasana-argumentin oletetaan olevan pelkkää tekstiä.--lock
jos tämä asetus on käytössä, juuritili on oletusarvoisesti lukittu. Tämä tarkoittaa, että pääkäyttäjä ei voi kirjautua konsolista sisään.
omassa RHEL/CentOS 8 kickstart – Esimerkissäni olen jo luonut ja antanut juurisalasanan
# Root passwordrootpw --iscrypted $6$w7El/FYx9mbTG6x9$Te.Yg6dq0TsQwGpdSjeDGSw4J9ZBAkLXzT9ODMV7I7lHvX3n5.9PCS4jIkS2GbVLZOpVRLvrua3wwbwA.cfWX.
Suorita asetusagentti ensimmäisellä käynnistyksellä
Kickstart command-firstboot
- se määrittää, käynnistääkö Alkuasetussovellus Ensimmäisen aika, jolloin järjestelmä käynnistetään.
- jos käytössä, alkuasetuspaketti on asennettava.
- jos sitä ei ole määritelty, tämä asetus on oletusarvoisesti pois käytöstä.
syntaksi:
firstboot OPTIONS
Options:
--enable
tai--enabled
:alkuasetelma aloitetaan heti, kun järjestelmä käynnistyy.--disable
tai--disabled
:Alkuasetusta ei aloiteta heti, kun järjestelmä käynnistyy.--reconfig
:salli alkuasetusten käynnistyminen käynnistyksen yhteydessä uudelleenkonfigurointitilassa.
omassa RHEL/CentOS 8 kickstart – Esimerkissäni otan käyttöön firstboot
# Run the Setup Agent on first bootfirstboot --enable
Configure X Window System
voit joko asentaa ja määrittää X Window Systemin tai poistaa sen käytöstä
Kickstart command-xconfig
- jos asennat paketin valintavaihtoehtojen joukkoon näyttöhallinnan, Tämä paketti luo X-kokoonpanon, ja asennetun järjestelmän oletusarvo on
graphical.target
. - , joka kumoaa
skipx
– vaihtoehdon vaikutuksen. - X – ikkunajärjestelmän käytön määrittäminen ”
xconfig
”
Kickstart command – skipx
x-ikkunajärjestelmän käytön määrittäminen skipx
omassa RHEL/CentOS 8 kickstart esimerkki I will disable X Windows System
# Do not configure the X Window Systemskipx
enable or Disable System Services
Kickstart Command-services
- it modifies the default set of services that will run under the default systemd target.
- vammaisten palvelujen luettelo käsitellään ennen käytössä olevien palvelujen luetteloa.
- näin ollen, jos palvelu ilmestyy molemmille listoille, se otetaan käyttöön.
syntaksi:
services
RHEL/CentOS 8 kickstart – esimerkissä otan käyttöön chronyd
palvelu
# System servicesservices --enabled="chronyd"
Aseta aikavyöhyke
kickstart-komento-aikavyöhyke
- se asettaa järjestelmän aikavyöhykkeen.
- voit käyttää
timedatectl list-timezones
saadaksesi listan tuetuista aikavyöhykearvoista
syntaksi:
timezone timezone
valinnaiset vaihtoehdot:
--utc
jos esiintyy, järjestelmä olettaa laitteistokellon olevan asetettu UTC-aikaan (Greenwichin keskiarvo).--nontp
Poista NTP-palvelun automaattinen käynnistys.--ntpservers=
Määritä NTP-palvelimista luettelo, jota käytetään pilkulla eroteltuna listana ilman välilyöntejä.
RHEL/CentOS 8 kickstart – Esimerkissäni käytän Asia/Kolkata
aikavyöhykkeenäni
# System timezonetimezone Asia/Kolkata --isUtc
käsittele solmun uudelleenkäynnistys
Kickstart command-reboot
reboot
” ohjeistaa asennusohjelmaa käynnistämään uudelleen asennuksen onnistuttua (ei argumentteja).- normaalisti Kickstart näyttää viestin ja odottaa käyttäjän painavan näppäintä ennen uudelleenkäynnistystä.
- Määritä uudelleenkäynnistys automatisoidaksesi asennuksen
omassa RHEL/CentOS 8 kickstart – Esimerkissäni käytän rebootia, koska suunnittelen automatisoivani koko asennuksen
# Reboot the nodereboot
luo levyosiota
voit käyttää eri muuttujia levyn asettelun määrittämiseen
kickstart Command-ignoredisk
- se saa asennusohjelman ohittamaan määritetyt levyt.
- tämä on hyödyllinen, jos käytät automaattista osiointia ja haluat olla varma, että joitain levyjä ei huomioida.
omassa RHEL/CentOS 8 kickstart – Esimerkissäni haluan vain käyttää sda
levyn asennukseen
# Choose the disks to be usedignoredisk --only-use=sda
Kickstart command-clearpart
- se poistaa osioita järjestelmä, ennen uusien osioiden luomista.
- oletuksena osioita ei poisteta.
minun CentOS / RHEL 8 Kickstart esimerkissä poistan kaikki olemassa olevat osiot:
# Partition clearing informationclearpart --all
Kickstart command – part or partition
- se luo järjestelmään osion.
- tämä aihe on hyvin laaja ja aion antaa erilaisia osioasetteluesimerkkejä Linuxin asentamiseksi
omassa Kickstart-Esimerkissäni asennan CentOS 8: n käyttäen loogista Taltiohallintaa. Täällä luon
- juurilogiikka
- swap partition
- boot partition
# 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
create new user (permanent)
voit myös luoda uuden käyttäjän käyttämällä kickstartia, joka on läsnä myös asennuksen jälkeen
Kickstart Command – user
käytä user
luodaksesi uuden käyttäjän kickstart
syntaksin avulla:
user --name=username
RHEL/CentOS 8 kickstart-Esimerkissäni luon yhden käyttäjän deepak
# Create useruser --name=deepak --shell=/bin/bash --homedir=/home/deepak --iscrypted --password=$6$uSejt/TeWMJVQ/F8$/oFsIanDHS/5b9ssy7gZbQwNkORgRjsQIw4JyFjlTWDh9TVsEXWEy2APpCUNTHipOOEe..ubg3qBZOwpaPtsB.
Luo käyttäjä (vain asennusta varten)
voit luoda käyttäjän vain seuraamaan asennusprosessia. Kun asennus on valmis, tämä käyttäjä poistetaan solmusta
Kickstart command – sshpw
- asennuksen aikana, voit olla yhteydessä asennusohjelmaan ja seurata sen etenemistä SSH-yhteyden kautta
- käytä sshpw-komentoa luodaksesi väliaikaisia tilejä, joiden kautta kirjaudut.
- jokainen komennon ilmentymä luo erillisen tilin, joka on olemassa vain asennusympäristössä.
- näitä tilejä ei siirretä asennettuun järjestelmään.
Syntax:
sshpw --username=name password
In my CentOS/RHEL 8 kickstart example I am creating a user admin
to monitoring the installation:
sshpw --username=admin --iscrypted --password=$6$PMLcSXd.w5pBvC.u$D06Ip60h/iWExxQ09gMi5aAbFaDK.NtLOgOZ56uU6kw.uUy/9/Mmw6vYBjs8Hw50y0Rx4m0yMdH0Vt5EUEsRI.
Create new group
voit myös luoda uuden ryhmän käyttämällä Kickstart
Kickstart – komentoryhmää
- jos ryhmä, jolla on annettu nimi tai gid, on jo olemassa, tämä komento epäonnistuu.
- user-komennolla voidaan luoda uusi ryhmä juuri luodulle käyttäjälle.
- se luo järjestelmään uuden käyttäjäryhmän.
syntaksi:
group --name=name
pakolliset vaihtoehdot
--name=
antaa ryhmän nimen.
Ota palomuuri käyttöön tai poista se käytöstä
voit ottaa palomuurin käyttöön tai poistaa sen käytöstä asennusvaiheessa
Kickstart command – firewall
se määrittää asennetun järjestelmän palomuurikokoonpanon.
syntaksi:
firewall --enabled|--disabled
täällä,
--enabled
tai--enable
– hylkää saapuvat yhteydet, jotka eivät vastaa lähteviin pyyntöihin, kuten DNS-vastaukset tai DHCP pyytää.--disabled
tai--disable
– Älä määritä mitään iptables-sääntöjä.
ota moduuli käyttöön
voit ottaa moduulin käyttöön myös kickstart
Kickstart – komentomoduuli
käytä tätä komentoa ottaaksesi pakettimoduulivirran käyttöön kickstart-komentosarjassa.
syntaksi:
module --name=NAME
pakolliset asetukset
--name=
määrittää käyttöön otettavan moduulin nimen. Korvaa nimi varsinaisella nimellä.
ota SELinux käyttöön tai poista se käytöstä
SELinuxin voi ottaa käyttöön tai poistaa käytöstä myös käyttämällä kickstart
Kickstart command – selinux
- se määrittää SELinuxin tilan asennetussa järjestelmässä.
- SELinux-oletuskäytäntö on voimassa.
syntaksi:
selinux
Options:
--enforcing
mahdollistaa SELinuxin, jonka oletuskäytäntö on käytössä.--permissive
antaa varoituksia SELinuxin käytäntöön perustuen, mutta ei varsinaisesti valvo käytäntöä.--disabled
poistaa SELinuxin kokonaan järjestelmästä.
Pakettivalinta
Kickstart käyttää %packages-komennolla käynnistettyjä osioita asennettavien pakettien valintaan.
Kickstart command – %packages
- voit asentaa paketteja, ryhmiä, ympäristöjä, moduulivirtoja ja moduuliprofiileja näin.
- käytä %packages-komentoa aloittaaksesi Kickstart-osion, joka kuvaa asennettavat ohjelmistopaketit.
- %packages-osion tulee päättyä %end-komentoon.
täsmennetään ryhmät
- Määritä ryhmät, yksi merkintä riville, joka alkaa @ – merkillä, ja sitten koko ryhmän nimi tai ryhmätunnus
- saat tuettujen vaihtoehtojen luettelon luettelosta ”
dnf grouplist
”
%packages@X Window System@Desktop@Sound and Video%end
yksilöidyt pakkaukset
- yksilöidään yksittäiset pakkaukset nimen mukaan, yksi merkintä riville. Voit käyttää tähdellä merkittyä merkkiä (*) jokerimerkkinä pakettien nimissä. Esimerkiksi:
%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=
muistin määrä, jonka haluat varata kdumpille, MIB: ssä
RHEL/CentOS 8 kickstart – Esimerkissäni olen käyttänyt auto
varatakseni vaaditun muistin automaattisesti kdumpille:
%addon com_redhat_kdump --enable --reserve-mb='auto'%end
käytä salasanakäytäntöä
Kickstart Command-pwpolicy
- käytä tätä komentoa mukautetun salasanakäytännön täytäntöönpanoon asennuksen aikana.
- käytäntö edellyttää salasanojen luomista root -, users-tai luks-käyttäjätileille.
- sellaiset tekijät kuin salasanan pituus ja vahvuus ratkaisevat salasanan pätevyyden.
tuettujen vaihtoehtojen luettelosta tarkista Red Hatin opas Advanced Installation
omassa RHEL / CentOS 8 kickstart-Esimerkissäni olen käyttänyt alla salasanakäytäntöä:
%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