Tässä liitteessä käytetyt asetustiedostojen osat ovat saatavilla myös esimerkkiasetustiedostona http://d-i.alioth.debian.org/manual/example-preseed.txt.
Huomaa tämän esimerkin olevan tarkoitettu Intel x86-arkkitehtuurille tapahtuvaan asennukseen. Jos asennetaan jollekin muulle arkkitehtuurille, jotkin esimerkeistä (kuten näppäimistön valinta ja käynnistyslataimen asennus) eivät ehkä ole mielekkäitä ja ne on korvattava arkkitehtuurikohtaisilla debconfin asetuksilla.
Valmiit vastaukset kotoistukseen toimivat vain jos vastausten tallennuspaikka on initrd. Muista tallennuspaikoista tiedosto ladataan vasta kun kysymykset on jo esitetty.
Lokaalin avulla voidaan määrätä sekä kieli että maa. Lokaali annetaan käynnistysparametrina kirjoittamalla locale=. fi_FI
# Lokaali määrittää kielen ja maan. d-i debian-installer/locale string fi_FI
Näppämistön asetuksissa valitaan näppäimistön arkkitehtuuri ja asettelu. Useimmissa tapauksissa oikea näppäimistön arkkitehtuuri on oletusarvona, joten se ei tavallisesti tarvitse valmista vastausta. Näppäinasettelun on oltava kelvollinen valitulle näppäimistön arkkitehtuurille.
# Näppäimistön valinta. #d-i console-tools/archs select at d-i console-keymaps-at/keymap select us # Esimerkki muusta näppäimistön arkkitehtuurista #d-i console-keymaps-usb/keymap select mac-usb-us
Näppäimistön asetukset ohitetaan antamalla kysymykseen console-tools/archs valmis vastaus skip-config. Tällöin ytimen näppäinasettelu jää käyttöön.
2.6-ytimien syötetason muutoksien seurauksena näppäinarkkitehtuuri on melkein poistunut käytöstä. 2.6-ytimille olisi tavallisesti valittava näppäinasetteluksi “PC” (at).
Valmiit vastaukset verkkoasetuksiin ei tietystikään toimi jos valmiiden vastausten tiedosto noudetaan verkosta. Mutta CD-levyltä tai USB-muistilta käynnistettäessä lataaminen on tosi näppärää. Noudettaessa valmiiden vastausten tiedostot verkosta, voidaan verkon asetukset antaa ytimen käynnistysparametreina.
Mikäli verkosta käynnistettäessä on valittava tietty verkkoliitäntä ennen valmiiden vastausten tiedoston noutamista verkosta, käytetään käynnistysparametria kuten interface=. eth1
Although preseeding the network configuration is normally not possible when using network preseeding (using “preseed/url”), you can use the following hack to work around that, for example if you'd like to set a static address for the network interface. The hack is to force the network configuration to run again after the preconfiguration file has been loaded by creating a “preseed/run” script containing the following commands:
killall.sh; netcfg
The following debconf variables are relevant for network configuration.
# netcfg valitsee liitännän jossa linkkivalo palaa, mikäli mahdollista. # Tällöin ohitetaan luettelon näyttäminen jos liitäntöjä on # enemmmän kuin yksi. d-i netcfg/choose_interface select auto # Valitaankin tietty liitäntä: #d-i netcfg/choose_interface select eth1 # Jos DHCP-palvelin on hidas ja asennin tekee aikakatkaisun sitä # odotellessaan, tämä voi olla hyödyllistä. #d-i netcfg/dhcp_timeout string 60 # Jos mielluummin tekee verkon asetukset itse, poistetaan kommenttimerkit # seur. rivistä ja muutaman rivin päästä olevissa kiinteiden # verkkoasetusten riveistä. #d-i netcfg/disable_dhcp boolean true # Jos valmiiden vastausten tiedoston on toimittava sekä DHCP-palvelimen # kanssa että ilman, poistetaan kommenttimerkki seur. riveistä ja # kiinteiden verkkoasetusten riveistä. #d-i netcfg/dhcp_failed note #d-i netcfg/dhcp_options select Configure network manually # Kiinteät verkkoasetukset. #d-i netcfg/get_nameservers string 192.168.1.1 #d-i netcfg/get_ipaddress string 192.168.1.42 #d-i netcfg/get_netmask string 255.255.255.0 #d-i netcfg/get_gateway string 192.168.1.1 #d-i netcfg/confirm_static boolean true # DHCP-palvelimelta saadut konenimi ja verkkoaluenimi ovat etusijalla, # mutta näiden arvojen antaminen estää kysymysten esittämisen, # vaikkakin käytetään DHCP:n antamia arvoja. d-i netcfg/get_hostname string unassigned-hostname d-i netcfg/get_domain string unassigned-domain # Ota inha WEP-avaimen valintaikkuna pois käytöstä. d-i netcfg/wireless_wep string # Pälli dhcp konenimi, joillain palveluntarjoajilla salasanan tapaisena. #d-i netcfg/dhcp_hostname string radish
Käytettävästä asennustavasta riippuen asennuspalvelimelta voidaan noutaa lisää asentimen osia, asentaa peruskokoonpano ja tehdä tiedosto /etc/apt/sources.list asennettavaan järjestelmään.
Parametri mirror/suite kertoo mitä julkaisua käytetään asennuksessa.
Parametri mirror/udeb/suite kertoo mistä julkaisusta asentimen lisäosat noudetaan. Tästä parametrista on hyötyä vain jos osat tosiaan noudetaan verkosta ja sen on vastattava käytetyn asennustavan initrd:n tekemisessä käytettyä julkaisua. Oletusarvona mirror/udeb/suite on sama kuin mirror/suite.
# Jos valitaan ftp, ei merkkijonolle mirror/country tarvitse antaa arvoa. #d-i mirror/protocol string ftp d-i mirror/country string manual d-i mirror/http/hostname string http.us.debian.org d-i mirror/http/directory string /debian d-i mirror/http/proxy string # Asennettava julkaisu #d-i mirror/suite string testing # Julkaisu, josta asentimen lisäosat noudetaan (valinnainen). #d-i mirror/udeb/suite string testing
# Määrittää onko laitekello standardiajassa vai paikallisessa ajassa. d-i clock-setup/utc boolean true # Tämä voidaan asettaa mihin tahansa kelvolliseen ympäristömuuttujan # $TZ arvoon; kelvolliset arvot löytyvät hakemistosta /usr/share/zoneinfo/. d-i time/zone string Europe/Helsinki # Määrittää käytetäänkö NTP:tä kellon asettamiseen asennuksen aikana. d-i clock-setup/ntp boolean true # Käytettävä aikapalvelin. Oletus on lähes aina sopiva. #d-i clock-setup/ntp-server ntp.esimerkki.fi
Valmiiden vastausten käyttämistä levyn osioinnissa rajoittaa se, mitä partman-auto tukee. Voidaan osioida joko levyllä jo oleva vapaa tila tai koko levy. Osioiden asettelu levyllä voidaan määrätä käyttämällä valmista mallinetta, muokattua mallinetta mallinetiedostosta tai valmiiden vastausten tiedostoon tallennettua mallinetta. Tällä hetkellä ei ole mahdollista käyttää valmiita vastauksia useiden levyjen osioimiseen.
Levylaitteiden ajurien lataamisjärjestys vaikuttaa levyjen nimeämiseen. Jos järjestelmässä on useinta kiintolevyjä, varmistu huolellisesti oikean levyn tulevan valituksi valmiita vastauksia käytettäessä.
# Jos järjestelmässä on vapaata tilaa voidaan valita osioitavaksi vain
# tuo tila. Huomaa: valmiissa vastauksissa on käytettävä kotoistettua
# (eli suomennettua) arvoa.
#d-i partman-auto/init_automatically_partition \
# select Ohjattu - käytä suurinta yhtenäistä vapaata tilaa
# Toinen tapa on määrätä mikä levy osioidaan. Laitenimi voidaan antaa
# joko devfs- tai perinteisessä ei-devfs-muodossa.
# Esimerkiksi haluttaessa käyttää ensimmäistä SCSI/SATA-levyä:
d-i partman-auto/disk string /dev/sda
# Huomaa: Jos halutaan käyttää mitä tahansa vapaata levyä riippumatta sen
# laitenimestä, kommentoi yläpuolinen rivi pois käytöstä. Tämä toimii
# vain, jos järjestelmässä on vain yksi levy.
# Lisäksi on määritettävä mitä osiointitapaa käytetään.
# Tällä hetkellä käytettävissä on tavat: "regular", "lvm" ja "crypto"
d-i partman-auto/method string lvm
# Jos yhdellä automaattisesti osioitavista levyistä on vanha LVM-asennus,
# saa käyttäjä tavallisesti varoituksen. Tämä varoitus voidaan
# valmiilla vastauksella poistaa...
d-i partman-lvm/device_remove_lvm boolean true
# Samalla lailla kysyttäessä vahvistusta LVM-osioiden kirjoittamiselle.
d-i partman-lvm/confirm boolean true
# Voidaan valita mikä tahansa ennalta määrätyistä osiointimallineista.
# Huomaa: valmiissa vastauksissa on käytettävä kotoistettua arvoa.
d-i partman-auto/choose_recipe \
select Vain yksi levyosio (suositellaan uusille käyttäjille)
#d-i partman-auto/choose_recipe \
# select Erillinen /home -osio
#d-i partman-auto/choose_recipe \
# select Erilliset /home, /usr, /var, ja /tmp -levyosiot
# Tai annetaan oma malline...
# Mallineen muoto on kuvattu tiedostossa devel/partman-auto-recipe.txt.
# Jos mallinetiedoston saa asentimen ympäristöön, siihen voidaan
# viitata suoraan.
#d-i partman-auto/expert_recipe_file string /hd-media/recipe
# Jos ei, koko malline voidaan tallentaa valmiiden vastausten tiedostoon
# yhtenä (loogisena) rivinä. Tämä esimerkki tekee pienen /boot-osion,
# sopivan sivutusosion, ja käyttää lopun tilan juuriosiolle:
#d-i partman-auto/expert_recipe string \
# boot-root :: \
# 40 50 100 ext3 \
# $primary{ } $bootable{ } \
# method{ format } format{ } \
# use_filesystem{ } filesystem{ ext3 } \
# mountpoint{ /boot } \
# . \
# 500 10000 1000000000 ext3 \
# method{ format } format{ } \
# use_filesystem{ } filesystem{ ext3 } \
# mountpoint{ / } \
# . \
# 64 512 300% linux-swap \
# method{ swap } format{ } \
# .
# Tämä saa partman-moduulin tekemään osiot automaattisesti ilman
# varmistuksia, jos sille määritettiin yksi yllä olevista tavoista.
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition \
select Lopeta osioiden teko ja tallenna muutokset levylle
d-i partman/confirm boolean true
Valmiilla vastauksilla voidaan tehdä osiot myös ohjelmallisesti toteutettuihin RAID-pakkoihin. Tuettuja ovat RAID-tasot 0, 1 ja 5, vajaiden pakkojen luominen ja varalevyjen määrittely. Käytettäessä RAID tasoa 1, voidaan valmiilla vastauksilla saada grub asentumaan kaikille pakassa käytetyille laitteille; katso Kohta B.4.11, “Käynnistyslataimen asennus”.
Tämänkaltaisen automaattisen osioinnin kanssa tekee helposti virheitä. Se on myöskin hyvin uusi osa, jossa saattaa vielä olla vikoja tai puutteita virhetilanteiden käsittelyssä. Vastuu mallineiden oikeellisuudesta (ovat järkeviä eivätkä sisällä ristiriitoja) on käyttäjällä. Tarkista lokitiedosto /var/log/syslog jos pulmia ilmenee.
Huomaa, että osan tekijät ovat testanneet vain RAID tasot 0 ja 1. RAID 5 on testaamatta. Edistyneemmä asetukset joissa on vajaita pakkoja tai varalaitteita on testattu vain hieman.
# HUOMIO: tämä valinta on laadultaan testiversio ja käytettävä varoen
# Mallineeksi olisi valittava "raid".
#d-i partman-auto/method string raid
# Määritä osioitavat levyt. Niihin tulee kaikkin sama osiointi,
# joten tämä toimii vain jos levyt ovat samankokoisia.
#d-i partman-auto/disk string /dev/discs/disc0/disc /dev/discs/disc1/disc
# Seuraavaksi on määritettävä käytettävä fyysinen osiointi.
#d-i partman-auto/expert_recipe string \
# multiraid :: \
# 1000 5000 4000 raid \
# $primary{ } method{ raid } \
# . \
# 64 512 300% raid \
# method{ raid } \
# . \
# 500 10000 1000000000 raid \
# method{ raid } \
# .
# Lopuksi on määritettävä kuinka yllä määriteltyjä osioita käytetään
# RAID-pakassa. Muista käyttää oikeita osioiden numeroita loogisille
# osioille.
# Parametrit ovat:
# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
# <devices> <sparedevices>
# RAID tasot 0, 1 ja 5 on tuettu; laitteiden erottimena on "#"
#d-i partman-auto-raid/recipe string \
# 1 2 0 ext3 / \
# /dev/discs/disc0/part1#/dev/discs/disc1/part1 \
# . \
# 1 2 0 swap - \
# /dev/discs/disc0/part5#/dev/discs/disc1/part5 \
# . \
# 0 2 0 ext3 /home \
# /dev/discs/disc0/part6#/dev/discs/disc1/part6 \
# .
# Tämä saa partmanin tekemään osiot automaattisesti kysymättä vahvistusta.
d-i partman-md/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition \
select Lopeta osioiden teko ja tallenna muutokset levylle
d-i partman/confirm boolean true
Tässä asennuksen vaiheessa ei oikeastaan ole kovinkaan paljoa mahdollista käyttää valmiita vastauksia. Ainoat kysymykset koskevat ytimen asentamista.
# Valitse initramfs:n tekevä ohjelma, jolla initrd tehdään 2.6-ytimille. #d-i base-installer/kernel/linux/initramfs-generators string yaird # Asennettava ydinkuvan sisältävä (meta)paketti. Valitse "none", jos # mitään ydintä ei haluta asentaa. #d-i base-installer/kernel/image string linux-image-2.6-486
Pääkäyttäjän tunnuksen root salasana ja ensimmäisen tavallisen käyttäjän tunnus ja salasana voidaan antaa valmiissa vastauksissa. Salasanalle voidaan käyttää joko ilmitekstiä tai MD5 tiivistettä (hash).
On hyvä tietää ettei valmiiden vastausten käyttäminen salasanoille ole täysin tietoturvallista, koska jokainen vastaukset sisältävän tiedoston lukija saa ne tietää. MD5-tiivisteiden käyttö parantaa turvallisuutta hieman, mutta saattaa myös tuudittaa liialliseen turvallisuuden tunteeseen koska MD5-tiivisteen tietämällä voi salasanoja murtaa kokeilemalla kaikki mahdollisuudet.
# Ohita pääkäyttäjän tunnuksen luominen (tavallinen käyttäjätunnus # voi käyttää sudo:a). #d-i passwd/root-login boolean false # Tai ohita tavallisen käyttäjän tunnuksen luominen. #d-i passwd/make-user boolean false # Pääkäyttäjän salasana, joko ilmitekstinä #d-i passwd/root-password password r00tme #d-i passwd/root-password-again password r00tme # tai salattuna käyttäen MD5-tiivistettä. #d-i passwd/root-password-crypted password [MD5 hash] # Tavallisen käyttäjän tunnuksen luonti. #d-i passwd/user-fullname string Debian User #d-i passwd/username string debian # Tavallisen käyttäjän salasana, joko ilmitekstinä #d-i passwd/user-password password insecure #d-i passwd/user-password-again password insecure # tai salattuna käyttäen MD5-tiivistettä. #d-i passwd/user-password-crypted password [MD5 hash] # Luo ensimmäinen käyttäjä annetulla UID:llä oletuksen sijaan. #d-i passwd/user-uid string 1010 # Käyttäjätunnus lisätään joihinkin standardeihin ryhmiin. # Käytä tätä määrätäksesi itse ryhmät. #d-i passwd/user-default-groups string audio cdrom video
Muuttujille passwd/root-password-crypted ja passwd/user-password-crypted voidaan antaa valmis vastaus myös “!” arvona. Tällöin vastaavan käyttäjätunnuksen käyttö on estetty. Tämä voi olla kätevää pääkäyttäjän tunnukselle, tietenkin vain jos on tehty muu tapa tehdä pääkäyttäjä tehtävät tai kirjautua pääkäyttäjänä (esimerkiksi tunnistautua SSH-avaimilla tai komento sudo).
The following command can be used to generate an MD5 hash for a password:
$ echo "r00tme" | mkpasswd -s -m md5
Tiedoston /etc/apt/sources.list teko ja perusasetukset on täysin automatisoitu asennustavan ja aiempien kysymysten vastausten perusteella. Muiden (paikallisten) varastoalueiden lisääminen on valinnaista.
# non-free- ja contrib-osastojen ohjelmia voidaan valita asennettaviksi. #d-i apt-setup/non-free boolean true #d-i apt-setup/contrib boolean true # Poista kommenttimerkki, jos et halua käyttää asennuspalvelimen kopiota. #d-i apt-setup/use_mirror boolean false # Valitse käytettävät päivityspalvelut. Määritä käytettävät peilit. # Alla olevat arvot ovat normaalit oletusarvot. #d-i apt-setup/services-select multiselect security, volatile #d-i apt-setup/security_host string security.debian.org #d-i apt-setup/volatile_host string volatile.debian.org # Lisää varastoja, local[0-9] käytettävissä #d-i apt-setup/local0/repository string \\ # http://local.server/debian stable main #d-i apt-setup/local0/comment string local server # Ota käyttöön deb-src-rivit #d-i apt-setup/local0/source boolean true # Varaston julkisen avaimen URL. Avaimen on oltava käytettävissä # tai apt valittaa tunnistamattomasta varastosta ja tiedoston # sources.list rivi jää kommentoiduksi pois #d-i apt-setup/local0/key string http://local.server/key # Oletusarvona asennin vaatii varastojen autentikointia tunnetulla # gpg-avaimella. Tällä asetuksella tuo autentikointi saadaan pois päältä. # Varoitus: ei turvallinen, ei suositella. #d-i debian-installer/allow_unauthenticated string true
Asennettavaksi voidaan valita mitkä tahansa saatavilla olevista tehtävistä. Tätä kirjoitettaessa saatavilla olevia tehtäviä ovat ainakin:
standard
desktop
gnome-desktop
kde-desktop
web-server
print-server
dns-server
file-server
mail-server
sql-database
laptop
Voidaan myös jättää kaikki tehtävät valitsematta, ja pakotetaan halutun pakettijoukon asennus muilla tavoin. Suositellaan aina valittavaksi tehtävä standard.
Jos tehtävien asentamien pakettien lisäksi halutaan asentaa yksittäisiä paketteja, voidaan käyttää parametria pkgsel/include. Tämän parametrin arvona voi olla luettelo paketteja eroteltuna joko pilkuin tai välilyönnein, joten sitä on helppo käyttää ytimen käynnistysparametrinakin.
tasksel tasksel/first multiselect standard, web-server # Jos tehtävä "desktop" on valittuna, asennetaan kde- ja xfce-työpöydät # oletusarvoisen gnome-työpöydän sijaan. #tasksel tasksel/desktop multiselect kde, xfce # Asennetaan yksittäisiä lisäpaketteja #d-i pkgsel/include string openssh-server build-essential # Eräät asentimen versiot voivat kertoa mitä ohjelmia on asennettuna # ja mitä ohjelmia käytetään. Oletusarvo on, ettei raporttia lähetetä, # mutta raporttien lähettäminen auttaa Debian-projektia tietämään # suosituimmat ohjelmat ja kokoamaan ne CD-levyille. #popularity-contest popularity-contest/participate boolean false
# Grub is the default boot loader (for x86). If you want lilo installed # instead, uncomment this: #d-i grub-installer/skip boolean true # To also skip installing lilo, and install no bootloader, uncomment this # too: #d-i lilo-installer/skip boolean true # This is fairly safe to set, it makes grub install automatically to the MBR # if no other operating system is detected on the machine. d-i grub-installer/only_debian boolean true # This one makes grub-installer install to the MBR if it also finds some other # OS, which is less safe as it might not be able to boot that other OS. d-i grub-installer/with_other_os boolean true # Alternatively, if you want to install to a location other than the mbr, # uncomment and edit these lines: #d-i grub-installer/only_debian boolean false #d-i grub-installer/with_other_os boolean false #d-i grub-installer/bootdev string (hd0,0) # To install grub to multiple disks: #d-i grub-installer/bootdev string (hd0,0) (hd1,0) (hd2,0) # Optional password for grub, either in clear text #d-i grub-installer/password password r00tme #d-i grub-installer/password-again password r00tme # or encrypted using an MD5 hash, see grub-md5-crypt(8). #d-i grub-installer/password-crypted password [MD5 hash]
An MD5 hash for a password for grub can be generated using grub-md5-crypt, or using the command from the example in Kohta B.4.8, “Käyttäjätunnusten luonti”.
# During installations from serial console, the regular virtual consoles # (VT1-VT6) are normally disabled in /etc/inittab. Uncomment the next # line to prevent this. #d-i finish-install/keep-consoles boolean true # Avoid that last message about the install being complete. d-i finish-install/reboot_in_progress note # This will prevent the installer from ejecting the CD during the reboot, # which is useful in some situations. #d-i cdrom-detect/eject boolean false # This is how to make the installer shutdown when finished, but not # reboot into the installed system. #d-i debian-installer/exit/halt boolean true
Debianin X:n asetuksille on mahdollista antaa valmiit vastaukset, mutta luultavasti on tiedettävä muutamia yksityiskohtia tietokoneen näytönohjaimesta, koska Debianin X:n asetukset tekevä ohjelma ei tee kaikkia asetuksia täysin automaattisesti.
# X osaa löytää oikean ajurin joillekin korteille, mutta valmis vastaus
# korvaa X:n valinnan. Mutta vesa toimii useimmiten.
#xserver-xorg xserver-xorg/config/device/driver select vesa
# Hiiren tunnistuksessa on hankaluus: jos se epäonnistuu, X jää
# yrittämään tunnistusta uudelleen ja uudelleen. Niinpä jos valmis
# vastaus määrää hiiren tunnistuksen, voidaan jäädä junnaamaan.
#xserver-xorg xserver-xorg/autodetect_mouse boolean true
# Monitorin automaattista tunnistamista suositellaan.
xserver-xorg xserver-xorg/autodetect_monitor boolean true
# Poista kommentti jos näyttö on LCD.
#xserver-xorg xserver-xorg/config/monitor/lcd boolean true
# X:sssä on kolme asetustapaa monitorille Näin annetaan valmis
# vastaus aina käytettävissä olevalle medium-tavalle. "simple"
# ei ehkä ole käytettävissä, ja "advanced" kyselee ihan liikaa.
xserver-xorg xserver-xorg/config/monitor/selection-method \
select medium
xserver-xorg xserver-xorg/config/monitor/mode-list \
select 1024x768 @ 60 Hz
# Asennettaviksi valitut ohjelmat tai asennuksen meneminen pieleen # vaikuttavat kysyttäviin kysymyksiin. Muitakin kysymyksiä voi olla, # ja niihinkin voi antaa valmiit vastaukset. Kaikkien mahdollisten # asennuksen aikana kysyttävien kysymysten luettelon saa asennuksen # jälkeen komennoilla: # debconf-get-selections --installer > file # debconf-get-selections > > file