You will first need to create a preconfiguration file and place it in the location from where you want to use it. Creating the preconfiguration file is covered later in this appendix. Putting it in the correct location is fairly straightforward for network preseeding or if you want to read the file off a usb-stick. If you want to include the file in an installation ISO image, you will have to remaster the image. How to get the preconfiguration file included in the initrd is outside the scope of this document; please consult the developers' documentation for debian-installer
.
Valmiiden vastausten tiedostosta on esimerkki https://d-i.debian.org/manual/example-preseed.txt jota voi käyttää oman tiedoston pohjana. Tuo tiedosto käyttää tämän liitteen esimerkkeinä olevia asetuksia.
Jos tallennuspaikkana on initrd, riittää varmistaa tiedoston nimeltä preseed.cfg
olevan initrd:n juurihakemistossa. Asennin tarkistaa automaattisesti onko tuo tiedosto paikallaan ja lataa sen.
For the other preseeding methods you need to tell the installer what file to use when you boot it. This is normally done by passing the kernel a boot parameter, either manually at boot time or by editing the bootloader configuration file (e.g. syslinux.cfg
) and adding the parameter to the end of the append line(s) for the kernel.
If you do specify the preconfiguration file in the bootloader configuration, you might change the configuration so you don't need to hit enter to boot the installer. For syslinux this means setting the timeout to 1
in syslinux.cfg
.
Tiedostolle on mahdollista asettaa tarkistussumma varmistamaan asentimen saavan oikean asetustiedoston. Tällä hetkellä tarkistussummman on oltava md5sum, ja jos se annetaan sen on vastattava valmiit vastaukset sisältävää tiedostoa tai asennin jättää tiedoston käyttämättä.
Boot parameters to specify: - if you're netbooting: preseed/url=http://host/path/to/preseed.cfg preseed/url/checksum=5da499872becccfeda2c4872f9171c3d - or preseed/url=tftp://host/path/to/preseed.cfg preseed/url/checksum=5da499872becccfeda2c4872f9171c3d - if you're booting a remastered installation image: preseed/file=/cdrom/preseed.cfg preseed/file/checksum=5da499872becccfeda2c4872f9171c3d - if you're installing from USB media (put the preconfiguration file in the toplevel directory of the USB stick): preseed/file=/hd-media/preseed.cfg preseed/file/checksum=5da499872becccfeda2c4872f9171c3d
Note that preseed/url
can be shortened to just url
, preseed/file
to just file
and preseed/file/checksum
to just preseed-md5
when they are passed as boot parameters.
Jos valmiiden vastausten tiedostoa ei voi käyttää joidenkin vaiheiden automatisoimiseen, asennus voidaan siitä huolimatta automatisoida täysin, koska valmiit vastaukset voidaan välittää komentorivillä asenninta käynnistettäessä.
Käynnistysparametreja voidaan käyttää myös, jos ei varsinaisesti haluta käyttää valmiita vastauksia, vain antaa vastaus johonkin tiettyyn kysymykseen. Joitakin esimerkkejä tilanteista joissa tämä on hyödyllistä löytyy toisaalta tästä asennusohjeesta.
Debianin asentimessa käytettävän muuttujan arvo asetetaan kirjoittamalla
mille tahansa tämän liitteen esimerkeissä luetellulle valmiita vastauksia käyttävälle muuttujalle. Jos arvoa käytetään kohdejärjestämän pakettien asetusten tekemiseen, on alkuun lisättävä muuttujan omistaja[19], tähän tapaan: polku/siihen/muuttujaan
=arvo
. Jos omistajaa ei anneta, muuttujan arvoa ei kopioida kohdejärjestelmän debconf-tietokantaan, ja sitä ei niin ollen käytetä tehtäessä paketin asetuksia. omistaja
:polku/siihen/muuttujaan
=arvo
Yleensä valmiiden vastausten antaminen tällä tavalla merkitsee, että kysymystä ei kysytä. Antaaksesi kysymykselle tietyn oletusarvon siten, että kysymys edelleen kysytään, käytä operaattoria ”?=” normaalin ”=” sijaan. Katso myös Kohta B.5.2, ”Oletusarvojen muuttaminen valmiilla vastauksilla”.
Joillain usein käynnistimen kehotteessa käytetyillä muuttujilla olevan lyhennysmerkintä. Jos lyhennysmerkintä on käytettävissä, sitä käytetään tämän liitteen esimerkeissä pitkän nimen tilalla. Erityisesti muuttujan preseed/url
lyhennysmerkintä on url
, mukana on myös hieman automaagisuutta mahdollistamaan lyhyempien urlien käyttö. Toinen esimerkki on lyhyt muoto tasks
, joka tarkoittaa tasksel:tasksel/first
.
”---” saa erikoismerkityksen käynnistysparametreissa. Viimeisen ”---” jälkeen tulevat ytimen parametrit voidaan kopioida asennetun järjestelmän käynnistyslataimen asetuksiin (jos asennin tukee niitä käynnistyslataimelle). Asennin suodattaa automaattisesti pois tunnistamansa parametrit (kuten valmiita vastauksia koskevat).
Huomaa | |
---|---|
Nykyiset linux-ytimet (2.6.9 ja uudemmat) hyväksyvät enintään 32 komentorivin parametria ja 32 ympäristömuutujaa, joihin lasketaan mukaan asentimelle oletusarvona annetut muuttujat. Jos nämä numerot ylitetään, ydin kaatuu (crash). (Aikaisemmilla ytimillä nämä rajat olivat pienemmät.) |
Useimmissa asennuksissa voidaan jotkin käynnistyslataimen asetustiedoston valitsimet, kuten vga=normal
, turvallisesti poistaa. Näin enemmän parametreja valmiiden vastausten käyttöön.
Huomaa | |
---|---|
Voi olla ettei käynnistyksen parametreille voi aina antaa arvoa jossa on tyhjämerkki, vaikka käytettäisiinkin lainausmerkkejä arvon ympärillä. |
There are several features of Debian Installer that combine to allow fairly simple command lines at the boot prompt to result in arbitrarily complex customized automatic installs.
This is enabled by using the Automated install
boot choice, also called auto
for some architectures or boot methods. In this section, auto
is thus not a parameter, it means selecting that boot choice, and appending the following boot parameters on the boot prompt. See Kohta 5.1.5, ”Käynnistysruutu” for information on how to add a boot parameter.
Tämä käy ilmi näistä muutamista esimerkeistä:
auto url=autoserver
Tässä oletetaan käytössä olevan DHCP-palvelin, jonka antamilla asetuksilla asennettava kone saa osoitteen autoserver
DNS:ltä, mahdollisesti lisättyään loppuun paikallisen verkkoaluenimen jos DHCP sen kertoi. Jos komento annettiin verkossa, jossa verkkoaluenimi on example.com
, ja DHCP:n asetukset ovat kohtuullisen järkevät, noudettaisiin valmiiden vastausten tiedosto osoitteesta http://autoserver.example.com/d-i/trixie/./preseed.cfg
.
Tuon urlin viimeinen osa (d-i/trixie/./preseed.cfg
) otetaan auto-install/defaultroot
:sta. Oletusarvona tähän sisältyy hakemisto trixie
jotta tulevat versiot voivat määrittää oman koodinimensä ja päivitys uudempaan versioon sujuu hallitusti. Osa /./
merkitsee juurta josta myöhemmät polkunimet voivat aloittaa (käytettäväksi preseed/include:ssa ja preseed/run:ssa). Tämän avulla tiedostot voidaan määrittää joko kokonaisina URLeina, "/" alkavilla ja sillä ankkuroiduilla polkunimillä tai jopa suhteellisina niminä jotka alkavat viimeisimmän valmiiden vastausten tiedoston sijainnista. Tämän avulla voidaan rakentaa siirrettävämpiä komentotiedostoja, joissa kokonainen komentotiedostojen hierarkia voidaan siirtää uuteen paikkaan sitä rikkomatta, esimerkiksi kopioimalla tiedostot USB-muistille kun ne alunperin olivat webbipalvelimella. Jos tässä esimerkissä valmiiden vastausten tiedostossa asetetaan preseed/run
arvoon /scripts/late_command.sh
, noudetaan tiedosto osoitteesta http://autoserver.example.com/d-i/trixie/./scripts/late_command.sh
.
Jos ei ole paikallisia DHCP- tai DNS-palvelimia, tai jos et halua käyttää oletuspolkua tiedostoon preseed.cfg
, voit silti käyttää eksplisiittistä urlia, ja jos et käytä osaa /./
se ankkuroidaan polun alkuun (ts. URL:n kolmanteen kauttaviivaan /
). Seuraava esimerkki edellyttää mahdollisimman vähän tukea paikallisverkolta:
auto url=http://192.168.1.2/polku/omaan/preseed.tiedostooni
Tämä toimii seuraavasti:
jos URL:stä puuttuu yhteyskäytäntö, oletetaan http,
jos konenimen osuudessa ei ole pisteitä, siihen lisätään DHCP:ltä saatu verkkoaluenimi, ja
jos konenimen jälkeen ei tule /
-merkkejä, lisätään oletuspolku.
URLin lisäksi voidaan antaa asetuksia jotka eivät sinänsä vaikuta suoraan debianin asentimen toimintaan, mutta jotka voidaan välittää edelleen ladatussa valmiiden vastausten tiedostossa preseed/run
-määritteillä annetuille komentotiedostoille. Tällä hetkellä ainoa esimerkki tästä on auto-install/classes
, jolla on lyhennysmerkintä classes
. Tätä voidaan käyttää näin:
auto url=example.com
classes=class_A;class_B
Tässä class voi tarkoittaa esimerkiksi asennettavan järjestelmän tyyppiä tai käytettävää kotoistusta.
Tätä käsitettä voidaan tietenkin laajentaa, ja jos niin tehdään, on järkevää käyttää siihen auto-installin nimiavaruutta. Niinpä voisi olla auto-install/style
jota sitten käytetään komentotiedostoissa. Jos on tarvetta tehdä tämmöistä, ole hyvä ja mainitse siitä postituslistalla <debian-boot@lists.debian.org>
, jotta vältymme nimien yhteentörmäyksiltä, ja voimme ehkä lisätä lyhennysmerkinnän sinua varten.
The auto
boot choice is not yet defined on all arches. The same effect may be achieved by simply adding the two parameters auto=true priority=critical
to the kernel command line. The auto
kernel parameter is an alias for auto-install/enable
and setting it to true
delays the locale and keyboard questions until after there has been a chance to preseed them, while priority
is an alias for debconf/priority
and setting it to critical
stops any questions with a lower priority from being asked.
When an Automatic install is selected without also specifying a preseed configuration, the user will be prompted to provide a preseed location. Alternatively, if a preseed configuration has been specified, then that prompt is normally suppressed in order to enable a fully non-interactive install. However, if the intent is to modify defaults by using a preseed.cfg
in an initrd, then the result should really behave as though no preseeding has yet been specified, even though it has. In that case, the debconf variable auto-install/cloak_initrd_preseed
can be set to true
(e.g. in the initrd's preseed.cfg
). to get the required behaviour.
Lisää kiinnostavia parametreja asennuksen automatisointiin DHCP:tä käyttämällä: interface=auto netcfg/dhcp_timeout=60
, joka saa tietokoneen käyttämään ensimmäistä kelvollista verkkoliitäntää ja odottamaan kauemmin vastausta DHCP-kyselyyn.
Vihje | |
---|---|
Laaja esimerkki valmiiden vastausten käytöstä, mukana komentotiedostoja ja luokkia, löytyy kehittäjän verkkosivulta. Sieltä saatavat esimerkit näyttävät myös muita kivoja toimintoja joita saadaan valmiiden vastausten luovalla käytöllä. |
Seuraavat lyhennysmerkinnät saattavat olla hyödyllisiä käytettäessä (auto mode)
valmiita vastauksia. Huomaa näiden olevan vain lyhennysmerkintä kysymyksen nimelle,
ja aina on annettava myöskin arvo: esimerkiksi auto=true
tai
interface=eth0
.
priority | debconf/priority |
fb | debian-installer/framebuffer |
auto | auto-install/enable |
classes | auto-install/classes |
tiedosto | preseed/file |
url | preseed/url |
theme | debian-installer/theme |
language | debian-installer/language |
country | debian-installer/country |
locale | debian-installer/locale |
keymap | keyboard-configuration/xkb-keymap |
modules | anna/choose_modules |
firmware | hw-detect/firmware-lookup |
interface | netcfg/choose_interface |
domain | netcfg/get_domain |
hostname | netcfg/get_hostname |
protocol | mirror/protocol |
suite | mirror/suite |
recommends | base-installer/install-recommends |
tasks | tasksel:tasksel/first |
desktop | tasksel:tasksel/desktop |
preseed-md5 | preseed/file/checksum |
Here are some examples of how the boot prompt might look like (you will need to adapt this to your needs; also see Kohta 5.1.5, ”Käynnistysruutu”).
# To set French as language and France as country: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz language=fr country=FR --- quiet # To set English as language and Germany as country, and use a German keyboard layout: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz language=en country=DE locale=en_US.UTF-8 keymap=de --- quiet # To install the MATE desktop: /install.amd/vmlinuz vga=788 initrd=/install.amd/gtk/initrd.gz desktop=mate-desktop --- quiet # To install the web-server task: /install.amd/vmlinuz initrd=/install.amd/initrd.gz tasksel:tasksel/first=web-server ---
DHCP:täkin voi käyttää kertomaan mistä päin verkkoa valmiit vastaukset sisältävä tiedosto noudetaan. DHCP sallii tiedoston nimen välittämisen. Tämä on tavallisesti verkkokäynnistyksen tiedosto, mutta jos se näyttäisi olevan URL noutaa verkosta haettavia valmiita vastauksia tukeva asennustaltio tiedoston URL:n avulla ja käyttää sitä valmiiden vastausten tiedostona. Seuraava esimerkki näyttää miten tämä tehdään ISC DHCP -palvelimen version 3 dhcpd.conf
-tiedostossa (Debianin paketti dhcp3-server).
if substring (option vendor-class-identifier, 0, 3) = "d-i" { filename "http://host/preseed.cfg"; }
Huomaa edeltävän esimerkin tarjoavat tätä tiedostonimeä vain DHCP-asiakkaille jotka ilmoittavat nimekseen ”d-i”, joten tämä ei vaikuta tavallisiin DHCP-asiakkaisiin, vain asentimeen. Toinen tapa on kirjoittaa teksti vain nimetyn koneen tietueeseen jolloin sitä ei taaskaan käytetä kaikkiin verkosta tapahtuviin asennuksiin.
DHCP:tä on hyvä käyttää kertomaan valmiit vastaukset vain verkkokohtaisiin kysymyksiin, kuten käytettävä Debian-asennuspalvelin. Näin verkkoa käyttävät asennukset saavat automaattisesti valittua hyvän asennuspalvelimen, mutta muut asennukset voidaan tehdä vuorovaikutteisesti. DHCP:n käyttö automatisoimaan Debianin asennus kokonaan olisi tehtävä vain harkitusti.
[19] Debconf-muuttujan (tai mallineen) omistaja on tavallisesti sen paketin nimi, johon vastaava debconf-malline kuuluu. Asentimessa itsessään käytettyjen muuttujien omistaja on ”d-i”. Mallineilla ja muuttujilla voi olla useita omistajia, tästä on apua päätettäessä voidaanko ne poistaa debconf-tietokannasta jos paketti poistetaan.