Automatització de la instal·lació fent servir una configuració prèvia
Aquest apèndix explica com preparar les respostes de la configuració prèvia
a les preguntes del &d-i; per automatitzar la instal·lació.
Els fragments de configuració emprats a aquest apèndix també són a l'abast
com a exemple de fitxer de configuració prèvia a &urlset-example-preseed;.
Introducció
La configuració prèvia proporciona una manera de respondre les preguntes
de la instal·lació sense haver d'introduir manualment les respostes
en el moment en que s'instal·la. Això fa possible l'automatització
de la majoria de tipus d'instal·lació i fins i tot presenta algunes
funcionalitats no disponibles durant les instal·lacions normals.
Mètodes de configuració prèvia
N'hi ha tres: initrd, fitxer i
xarxa. El d'initrd funciona amb qualsevol mètode
d'instal·lació i permet la configuració prèvia de més coses, però requereix
la preparació més acurada. Els de fitxer i xarxa es poden fer servir amb
diferents mètodes d'instal·lació.
La taula següent mostra els mètodes de configuració prèvia es poden fer
servir amb els diferents mètodes d'instal·lació.
Mètode d'instal·lacióinitrd
fitxerxarxa
CD/DVD
sí
sí
sí
però tan sols si teniu accés a la xarxa, i li doneu el valor apropiat a
preseed/url
arrencada en xarxa
sí
no
sí
hd-media (incloent-hi memòries USB)
sí
sí
sí
basat en disquet (controladors al CD)
sí
sí
sí
basat en disquet (controladors a la xarxa)
sí
no
sí
genèric/cinta
sí
no
sí
Una diferència important entre els mètodes de configuració prèvia és el punt
en què es carrega i es processa el fitxer de configuració prèvia. En el cas
de l'initrd això té lloc just al principi de la instal·lació, abans que ni
tan sols es faça la primera pregunta. En el cas del fitxer, té lloc després
que s'haja carregat el CD o la imatge del CD. En el cas de la xarxa, després
que aquesta s'haja configurat.
Òbviament, qualsevol pregunta que haja estat processada abans de carregar
la configuració prèvia no es pot incloure en aquesta (açò inclourà les
preguntes que tan sols es mostren amb prioritat baixa o mitjana, com la
detecció inicial del maquinari). ofereix
una manera d'evitar que es facin aquestes preguntes.
Per evitar les preguntes que normalment apareixen abans de fer la
configuració prèvia, podeu arrencar l'instal·lador en mode
auto
. Açò endarrereix les preguntes que es farien massa
d'hora per ser configurades prèviament. També executa la instal·lació
amb prioritat crítica, que evita moltes preguntes sense importància.
Trobareu més detalls a .
Limitacions
Tot i que la majoria de preguntes emprades pel &d-i; poden configurar-se
prèviament fent servir aquest mètode, hi algunes excepcions remarcables. Cal
(tornar a) particionar un disc sencer o emprar-ne l'espai lliure disponible;
no es poden emprar particions ja existents.
Utilització de la configuració prèvia
Primer de tot heu de crear un fitxer de configuració prèvia i
posar-lo al lloc des d'on voleu fer-lo servir. La creació de fitxers de
configuració prèvia es tractarà després. Col·locar-los correctament és
fàcil en el cas de la configuració per xarxa o si voleu llegir el fitxer
des d'un disquet o una memòria USB. Si voleu incloure el fitxer a un CD o
un DVD, heu de reconfigurar la imatge ISO. El procediment per incloure el
fitxer a l'initrd no s'explica aquí; consulteu la documentació per als
desenvolupadors del &d-i;.
Teniu a l'abast un exemple de fitxer de configuració prèvia que podeu
emprar com a base per al vostre a &urlset-example-preseed;. Aquest fitxer
es basa en els fragments de configuració inclosos en aquest apèndix.
Càrrega del fitxer de configuració prèvia
Si esteu emprant una configuració prèvia de l'initrd, només heu
d'assegurar-vos que hi haja un fitxer preseed.cfg
inclòs al directori arrel de l'initrd. L'instal·lador comprovarà
automàticament si aquest fitxer és present i el carregarà.
En els altres mètodes de configuració prèvia heu de dir-li a
l'instal·lador el fitxer que s'usarà quan l'arrenqueu. Això es fa
normalment indicant al nucli un paràmetre d'arrencada, bé manualment
en el moment d'arrencar o bé editant el fitxer de configuració del
carregador (p.ex. syslinux.cfg) i afegint-hi el
paràmetre al final de la (les) línia (línies) addicionals per al nucli.
Si especifiqueu el fitxer a la configuració del carregador, podeu modificar
la configuració prèvia per no haver de prémer enter per arrencar
l'instal·lador. En el syslinux això vol dir ajustar el temps d'espera
(timeout) a 1, a syslinux.cfg.
Per assegurar-vos que l'instal·lador obté el fitxer de configuració prèvia
correcte, podeu especificar-ne una suma de verificació. Actualment ha de
ser una md5sum, i si l'especifiqueu ha de correspondre al fitxer, altrament
l'instal·lador no voldrà fer-la servir.
Paràmetres d'arrencada que cal especificar:
- si esteu arrencant en xarxa:
preseed/url=http://host/path/to/preseed.cfg
preseed/url/checksum=5da499872becccfeda2c4872f9171c3d
- si esteu arrencant amb un CD reconfigurat:
preseed/file=/cdrom/preseed.cfg
preseed/file/checksum=5da499872becccfeda2c4872f9171c3d
- si esteu instal·lant des d'un dispositiu USB (poseu el fitxer al directori
principal de la memòria USB):
preseed/file=/hd-media/preseed.cfg
preseed/file/checksum=5da499872becccfeda2c4872f9171c3d
Adoneu-vos que preseed/url pot escurçar-se a tan sols
url i preseed/file a
file quan són passats com a paràmetres d'arrencada.
Utilització dels paràmetres d'arrencada per complementar la configuració prèvia
Si no es pot utilitzar un fitxer de preconfiguració per fer la configuració
prèvia per alguns passos, la instal·lació encara es pot automatitzar
completament, ja que podeu passar valors de la configuració prèvia a línia
d'ordres quan està arrencant l'instal·lador.
També podeu utilitzar els paràmetres d'arrencada si no voleu utilitzar la
configuració prèvia, però voleu donar una resposta a una pregunta específica.
Hi ha alguns exemples on açò pot ser útil, documentats per tot arreu en
aquest manual.
Per donar un valor que s'utilitze dins el &d-i;, passeu
ruta/a/la/variable=valor
per qualsevol de les variables que es poden configurar prèviament que
són als exemples en aquest apèndix. Si un valor s'utilitza per configurar
paquets al sistema destí, necessitareu afegir abans el
propietari
Normalment, el propietari d'una variable debconf (o una plantilla) és
el nom del paquet que conté la plantilla debconf que es correspon a la
plantilla debconf corresponent. Les variables utilitzades en l'instal·lador
en si mateix tenen com propietari d-i
. Les plantilles i
variables poden tenir més d'un propietari que ajuden a determinar si es
poden esborrar de la base de dades debconf quan el paquet s'esborre
completament.
de la variable com
propietari:ruta/a/la/variable=valor.
Si no especifiqueu el propietari, el valor de la variable no es copiarà
a la base de dades debconf en el sistema destí i no s'utilitzarà a la
configuració del paquet rellevant.
Adoneu-vos que algunes variables a les que es dona valors freqüentment
a l'indicador de l'arrencada tenen una forma curta. Si hi ha una forma
curta, s'utilitzarà en els exemples d'aquest apèndix en comptes de la
variable completa. En particular, la variable preseed/url
te com a forma curta url i te alguna màgia extra
per permetre utilitzar adreces abreviades. Un altre exemple és la
forma curta tasks, que es tradueix a
tasksel:tasksel/first .
Un --
a les opcions d'arrencada té un significat especial.
Els paràmetres del nucli que apareixen després de l'últim --
es poden copiar al carregador d'arrencada del sistema instal·lat (si ho
suporta l'instal·lador del carregador d'arrencada). L'instal·lador
automàticament filtrarà qualsevol opció (com les opcions preconfigurades)
que reconegui.
Els nuclis actuals (2.6.9 i posteriors) accepten un màxim de 32 opcions
a la la línia d'ordres i 32 opcions d'entorn, que inclou qualsevol opció
afegida per defecte per l'instal·lador. Si es superen aquestes quantitats,
el nucli farà un «panic» (petarà). (Als nuclis anteriors, aquestes
quantitats eren inferiors).
A quasi totes les instal·lacions es poden esborrar amb seguretat algunes
de les opcions per defecte en el fitxer de configuració del carregador
d'arrencada, com vga=normal, que us permetrà que
afegiu més opcions per la configuració prèvia.
No sempre és possible passar valors amb espais als paràmetres d'arrencada,
encara que els delimiteu amb cometes.
Mode auto
Hi ha algunes característiques de l'instal·lador de Debian que combinen
la simplicitat de la línia d'ordres de l'indicador d'arrencada per
aconseguir unes instal·lacions automàtiques personalitzades arbitràriament
complexes. Per il·lustrar-ho, ací teniu alguns exemples que es poden
utilitzar a l'indicador de l'arrencada:
auto url=autoserver
Aquesta part dona per suposat que hi ha un servidor DHCP que posarà la
màquina en un punt on el autoserver es pot resoldre
per DNS, pot ser després d'afegir el domini local si s'ha proporcionat
per DHCP. Si es fa a un lloc on el domini és exemple.com,
i té una configuració ben pensada, podria donar com a resultat que el
fitxer de configuració prèvia es trobe a
http://autoserver.example.com/d-i/etch/./preseed.cfg.
L'última part de l'adreça (d-i/etch/./preseed.cfg)
s'agafa d'auto-install/defaultroot. Per defecte açò
inclou el directori etch per que permeti que les
futures versions donen el seu nom codi propi i permeti que la gent migre
d'una forma controlada. El /./ s'utilitza per indicar
un origen al qual les rutes subsegüents es referiran (per utilitzar en
preseed/include i preseed/run). Açò es pot utilitzar per construir uns
guions més portables de forma que una estructura completa de guions es
pugui moure a una nova localització sense trencar-la, per exemple
copiant els fitxers a un llapis USB quan s'inicia des d'un servidor web.
En aquest exemple, si el fitxer de configuració prèvia dona el valor
/scripts/late_command.sh a
preseed/run aleshores el fitxer es descarregarà des de
http://autoserver.example.com/d-i/etch/./scripts/late_command.sh.
Si no hi ha cap servidor DHCP o infraestructura DNS, o si no voleu
utilitzar la ruta per defecte a preseed.cfg, encara
podeu utilitzar una adreça explícita, i si no utilitzeu l'element
/./ es referirà a l'inici de la ruta (es a dir, el
tercer / a la URL). Ací hi ha un exemple que necessita
d'un suport mínim de la infraestructura local de la xarxa:
auto url=http://192.168.1.2/ruta/al/fitxer.configuració.previa
La forma en que açò funciona és:
Si la URL no conté un protocol, es suposa http,
si la secció hostname no té períodes, té el domini derivat del DHCP afegit, i
si no hi ha cap / després del hostname, aleshores
s'afegeix la ruta per defecte.
Addicionalment a especificar la url, podeu també donar els paràmetres que
no afecten directament el comportament del &d-i;, però que es poden
passar a traves dels guions donats utilitzant preseed/run
al fitxer de configuració prèvia carregat.
En aquest moment, l'únic exemple d'aquest és
auto-install/classes, que, té d'àlies
classes. Açò es pot utilitzar així:
auto url=example.com classes=classe_A;classe_B
Les classes podrien per exemple indicar el tipus de sistema al instal·lar,
o la localització a utilitzar.
Per suposat, es pot estendre aquest concepte, i si ho feu, és raonable
que s'utilitze l'espai de noms auto-install per fer-ho. Així que hauríeu
de tenir quelcom de l'estil auto-install/style que
s'utilitza aleshores als vostres guions. Si creieu que necessiteu fer-ho,
d eu-ho a la llista de correu debian-boot@lists.debian.org
de forma que ens sigui possible evitar conflictes a l'espai de noms, i
pot ser afegir un àlies del paràmetre per vosaltres.
L'etiqueta d'arrencada auto no està definida a totes
les arquitectures. El mateix efecte es pot aconseguir afegint dos
paràmetres auto=true priority=critical a la línia
d'ordres del nucli. El paràmetre auto és un àlies
d'auto-install/enable i controla el retard de les
preguntes del locale i del teclat fins que es tingui oportunitat de
fer la configuració prèvia d'aquestes, mentre priority
és un àlies per debconf/priority i donant-li el valor
critical evita que es faci qualsevol pregunta amb una
prioritat més baixa.
Les opcions addicionals que poden interessar mentre s'intenta
automatitzar una instal·lació que faci ús de DHCP són:
interface=auto netcfg/dhcp_timeout=60 que fa que la
màquina agafe el primer NIC i espere a aconseguir una resposta a la seva
petició DHCP.
Podeu trobar un exemple detallat de com utilitzar aquest entorn, incloent
scripts i classes d'exemple, a la
pàgina del seu desenvolupador. Els exemples disponibles també
mostren altres usos del sistema de preconfiguració.
Àlies útils per la configuració prèvia
Els àlies que hi ha a continuació poden ser útils quan s'utilitza la
configuració prèvia (mode auto).
autoauto-install/enable
classesauto-install/classes
fbdebian-installer/framebuffer
localedebian-installer/locale
prioritydebconf/priority
filepreseed/file
urlpreseed/url
interfacenetcfg/choose_interface
hostname netcfg/get_hostname
domainnetcfg/get_domain
protocolmirror/protocol
suitemirror/suite
Utilitzar un servidor DHCP per especificar els fitxers de
configuració prèvia
També és possible fer servir DHCP per especificar un fitxer de
configuració prèvia i descarregar-lo des de la xarxa. Normalment
s'indiquen fitxers per a arrencar la màquina per xarxa, però si
es tracta d'una URL, aleshores els mitjans d'instal·lació que
suporten configuracions prèvies per xarxa es descarregaran el fitxer i
l'utilitzaran per a la configuració. A continuació teniu un exemple
de com s'ha de configurar el fitxer dhcpd.conf per a la versió 3 del
servidor DHCP del ISC (el paquet dhcp3-server a Debian).
if substring (option vendor-class-identifier, 0, 3) = "d-i" {
filename "http://host/preseed.cfg";
}
Tingueu en compte que l'exemple anterior limita el fitxer a clients
DHCP que s'identifiquin com "d-i", i per tant no afectarà a la resta
de clients DHCP. També podeu indicar un text per a una màquina en
particular de manera que no afecti a la resta d'instal·lacions de la
vostra xarxa.
Una bona manera d'usar la configuració prèvia amb DHCP és fer-ho només
per a valors específics de la xarxa, com el servidor rèplica que es
vol utilitzar. Així totes les instal·lacions de la xarxa seleccionaran
una rèplica adequada automàticament, però la resta de la instal·lació
es podrà fer interactivament. Si voleu fer instal·lacions completes
amb configuracions prèvies i DHCP haureu d'anar amb més cura.
Creació d'un fitxer de configuració prèvia
El fitxer de configuració prèvia és en el format emprat per l'ordre
debconf-set-selections. El format general d'una línia a
un fitxer de configuració prèvia és:
<propietari> <nom de la pregunta> <tipus de pregunta> <valor>
Hi ha algunes regles que s'han de tenir en compte quan s'escriu un fitxer de
configuració prèvia.
Poseu tan sols un espai o un tabulador entre tipus i valor: qualsevol espai
addicional s'interpretarà que pertany al valor.
Una línia es pot dividir en vàries afegint una barra invertida
(\
) com a caràcter per continuar.
Un bon lloc per dividir una línia és després del nom de la pregunta;
un lloc dolent és entre un tipus i un valor.
La major part de les preguntes s'han d'omplir utilitzant els valors
vàlids i no amb valors traduïts. Però, hi ha algunes preguntes (per
exemple al partman) on s'han d'utilitzar valors
traduïts.
Algunes preguntes agafen un codi com a valor en comptes del text anglès
que es mostra a la instal·lació.
La manera més fàcil de crear un fitxer de configuració prèvia és utilitzar
el fitxer d'exemple enllaçat a com a
base i continuar la feina des d'allí.
Un mètode alternatiu és fer la instal·lació manual, i després, quan
es reinicie, utilitzar l'ordre debconf-get-selections
del paquet debconf-utils per bolcar les dos
bases de dades de debconf i la base de dades cdebconf de l'instal·lador
a un únic fitxer:
$ debconf-get-selections --installer > file
$ debconf-get-selections >> file
Per altra banda, un fitxer generat d'aquesta manera tindrà alguns elements
que no es poden configurar prèviament, i el fitxer d'exemple és el millor
lloc per on començar per la majoria d'usuaris.
Aquest mètode utilitza el fet de que, al acabar la instal·lació, la
base de dades cdebconf de l'instal·lador es guarda al sistema instal·lat
a /var/log/installer/cdebconf. Però, com que la
base de dades pot contenir informació sensible, aquests fitxers tan
sols els pot llegir el superusuari.
El directori /var/log/installer i tots els seus
fitxers s'esborraran del vostre sistema si purgueu el paquet
installation-report.
Per comprovar els possibles valors per les preguntes, podeu utilitzar
l'ordre nano per examinar els fitxers
/var/lib/cdebconf mentre la instal·lació s'està
realitzant. Vegeu templates.dat per les plantilles i
questions.dat pels valors assignats a les variables.
Per comprovar si el format del vostre fitxer de configuració prèvia és
vàlid abans de fer una instal·lació, podeu utilitzar l'ordre
debconf-set-selections -c preseed.cfg.
Continguts del fitxer de configuració prèvia
Els fragments de configuració emprats en aquest apèndix també són a l'abast
com un exemple de fitxer de configuració prèvia a &urlset-example-preseed;.
Tingueu en compte que aquest exemple es basa en una instal·lació per a una
arquitectura Intel x86. Si l'arquitectura és diferent, alguns dels exemples
(com la selecció del teclat i la instal·lació del carregador) poden no ser
adients i hauran de substituir-se per ajusts de configuració adequats a
l'arquitectura en qüestió.
Localització
L'ajust dels valors de localització només funcionaran si empreu la
configuració prèvia de l'initrd. En tota la resta de mètodes el fitxer
sols es carregarà després d'haver respost aquestes preguntes.
Es pot fer servir el locale per a especificar tant la llengua com el país.
Per a especificar el locale com un paràmetre d'arrencada, empreu
locale=ca_ES.
# El locale estableix la llengua i el país.
d-i debian-installer/locale string ca_ES
La configuració del teclat consisteix en la selecció d'una arquitectura i
un mapa de teclat. En la majoria de casos l'arquitectura de teclat correcta
és seleccionada per defecte, de manera que normalment no cal configurar-la
prèviament. El mapa de teclat ha de ser vàlid per a l'arquitectura de
teclat seleccionada.
# Selecció del teclat.
#d-i console-tools/archs select at
d-i console-keymaps-at/keymap select es
# Exemple per a una arquitectura de teclat diferent
#d-i console-keymaps-usb/keymap select mac-usb-es
Per a ometre la configuració prèvia del teclat, empreu
console-tools/archs amb
skip-config.
Això farà que romanga actiu el mapa de teclat del nucli.
Els canvis en l'estrat d'entrada dels nuclis 2.6 han fet pràcticament
obsoleta l'arquitectura de teclat. Per als nuclis 2.6 normalment s'ha de
seleccionar un mapa de teclat PC
(at).
Configuració de la xarxa
Sens dubte, la configuració prèvia de la xarxa no funcionarà si carregueu
el fitxer de configuració des de la xarxa. Però va molt bé si esteu
carregant-lo des d'un CD o una memòria USB. Si ho feu des de la xarxa,
podeu indicar-li al nucli els paràmetres d'arrencada de configuració de
la xarxa.
Si necessiteu seleccionar una interfície en concret per tal
d'arrencar per xarxa abans de carregar un fitxer de configuració
prèvia des de la xarxa, useu un paràmetre d'arrencada com
interface=eth1.
Malgrat que normalment la configuració prèvia de la xarxa no es possible
quan s'està utilitzant una configuració prèvia (utilitzant
preseed/url
), en aquest cas podeu utilitzar
el procediment per evitar-ho, per exemple si voleu configurar una adreça
estàtica per la interfície de xarxa. Aquest procediment és per forçar que
la configuració de xarxa s'execute altra vegada després de haver carregat
el fitxer de preconfiguració creant un guió preseed/run
amb
les línies següents:
killall.sh dhclient
netcfg
# Si és possible, el netcfg escollirà una interfície que tinga un enllaç.
# El següent evita que es mostre una llista si hi ha més d'una interfície.
d-i netcfg/choose_interface select auto
# Si voleu seleccionar una interfície concreta:
#d-i netcfg/choose_interface select eth1
# Si teniu un servidor dhcp lent i l'instal·lador finalitza l'espera, això
# us pot ser d'utilitat.
#d-i netcfg/dhcp_timeout string 60
# Si preferiu configurar la xarxa a mà, tragueu-li el comentari a aquesta
# línia i la configuració de la xarxa estàtica que hi ha a continuació.
#d-i netcfg/disable_dhcp boolean true
# Si voleu que el fitxer de configuració prèvia funcioni en sistemes amb i
# sense servidor dhcp, tragueu-li el comentari a aquestes línies i la
# configuració de la xarxa estàtica que hi ha a continuació.
#d-i netcfg/dhcp_failed note
#d-i netcfg/dhcp_options select Configure network manually
# Configuració de la xarxa estàtica.
#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
# Qualsevol nom d'ordinador principal i de domini assignats amb el dhcp tenen
# preferència sobre els valors indicats aquí. Tanmateix, establir aquests
# encara evitarà que es mostren qüestions fins i tot si els valors provenen
# del dhcp.
d-i netcfg/get_hostname string unassigned-hostname
d-i netcfg/get_domain string unassigned-domain
# Per deshabilitar el molest diàleg sobre la clau WEP.
d-i netcfg/wireless_wep string
# El fastigós nom del servidor dhcp que alguns ISP empren com a contrasenya.
#d-i netcfg/dhcp_hostname string radish
Configuració del servidor rèplica
Segons el mètode d'instal·lació, un servidor rèplica es pot emprar per
a descarregar components addicionals de l'instal·lador, per instal·lar
el sistema base, i com configurar el fitxer
/etc/apt/sources.list del sistema instal·lat.
El paràmetre mirror/suite determina el conjunt de
programes del sistema.
El paràmetre mirror/udeb/suite determina el conjunt
de de components addicionals que emprarà l'instal·lador. Això només és útil
si els components es descarreguen realment des de la xarxa i han de
correspondre amb el conjunt d'eines emprat per construir l'initrd per al
mètode d'instal·lació emprat en la instal·lació. De manera predeterminada,
el valor de mirror/udeb/suite és el mateix que el
de mirror/suite.
# Si seleccioneu ftp, no cal definir la cadena mirror/country.
#d-i mirror/protocol string ftp
d-i mirror/country string enter information manually
d-i mirror/http/hostname string &archive-mirror;
d-i mirror/http/directory string /debian
d-i mirror/http/proxy string
# Conjunt de programes que s'instal·larà.
#d-i mirror/suite string testing
# Conjunt de programes que s'emprarà per a carregar components de
# l'instal·lador (opcional).
#d-i mirror/udeb/suite string testing
Particionat
La configuració prèvia del particionat de discs durs està molt limitada per
les possibilitats ofertes pel partman-auto. Podeu o
bé particionar l'espai lliure existent al disc o bé el disc sencer. La
distribució del disc es pot determinar fent servir una recepta definida
prèviament, una de personalitzada procedent d'un fitxer recepta, o una
inclosa dins els fitxers de configuració prèvia. Actualment no es poden
particionar discs múltiples emprant la configuració prèvia.
La identificació dels discs depèn de l'ordre en què es carreguen llurs
controladors. Si el sistema té més d'un disc, assegureu-vos que se
seleccione el correcte abans d'utilitzar la configuració prèvia.
# Si el sistema disposa d'espai lliure podeu triar de particionar només
# aquest.
# Nota: Aquesta s'ha de omplir amb valors localitzats (traduïts).
#d-i partman-auto/init_automatically_partition \
# Selecció guiada - Utilitza l'espai lliure continu més gran
# També podeu especificar el disc que es particionarà. El nom del dispositiu
# es pot indicar bé en el format devfs o bé en el format tradicional no
# devfs.
# Per exemple, per emprar el primer disc:
d-i partman-auto/disk string /dev/discs/disc0/disc
# Addicionalment, haureu d'especificar el mètode a usar.
# Els mètodes actualment disponibles són: "regular", "lvm" i "crypto"
d-i partman-auto/method string lvm
# Si un dels discs que s'ha de particionar automàticament conté una
# configuració antiga LVM, l'usuari rebrà un avís. Això es pot
# desactivar amb una configuració prèvia...
d-i partman-auto/purge_lvm_from_device boolean true
# I el mateix per la confirmació d'escriptura a particions lvm.
d-i partman-lvm/confirm boolean true
# Podeu triar qualsevol de les receptes de particionat predefinides.
# Nota: Aquesta s'ha d'omplir amb valors localitzats (traduïts).
d-i partman-auto/choose_recipe \
select Tots els fitxers en una partició (recomanat per a nous usuaris)
#d-i partman-auto/choose_recipe \
# select Partició /home separada
#d-i partman-auto/choose_recipe \
# select Particions /home, /usr, /var i /tmp separades
# O indicar-ne una pròpia...
# El format de la recepta es descriu al fitxer devel/partman-auto-recipe.txt.
# Si podeu obtenir un fitxer de recepta per a l'entorn de l'instal·lador,
# podeu simplement apuntar-hi.
#d-i partman-auto/expert_recipe_file string /hd-media/recipe
# Si no, podeu posar una recepta sencera en una línia (lògica). Aquest exemple
# crea una petita partició /boot, un espai d'intercanvi adient, i empra la
# resta de l'espai per a la partició arrel:
#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{ } \
# .
# Això fa que el partman particione automàticament sense demanar confirmació.
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition \
select Finalitza la partició i escriu els canvis al disc
d-i partman/confirm boolean true
Particionat amb RAID
També podeu utilitzar la configuració prèvia per configurar les
particions a una matriu RAID per programari. Els nivells de RAID
suportats són 0, 1 i 5, creant matrius degradades i especificant els
dispositius de reemplaçament. Si esteu fent ús de RAID 1, podeu fer la
configuració prèvia de grub per instal·lar tots els dispositius que
s'utilitzen a la matriu; vegeu .
És molt fàcil equivocar-se en aquest tipus de particionament
automatitzat. És, addicionalment, un component molt nou que encara
pot contenir alguns errors o algun tractament d'errors oblidat. La
responsabilitat de aconseguir les receptes correctes (de forma que
tinguin sentit i no entren en conflicte) recau en l'usuari. Comproveu
el fitxer /var/log/syslog si teniu algun problema.
Fixeu-vos que tan sols el RAID 0 i el RAID 1 han estat comprovats pels
desenvolupadors del component. El RAID 5 està per comprovar. Les
configuracions RAID amb matrius degradades amb dispositius de reemplaçament
s'ha comprovat poc.
# AVÍS: aquesta opció està en fase beta i s'hauria d'utilitzar amb cura
# A «method» se li hauria de donar el valor "raid".
#d-i partman-auto/method string raid
# Especifica quins discs s'han de particionar. Tots acabaran amb la
# mateixa disposició, per tant tan sols funcionarà si els discs tenen
# la mateixa mida.
#d-i partman-auto/disk string /dev/discs/disc0/disc /dev/discs/disc1/disc
# A continuació necessiteu especificar quines particions físiques
# s'utilitzaran.
#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 } \
# .
# Per acabar necessiteu especificar com s'utilitzaran les particions
# prèviament definides a al configuració del RAID. Recordeu d'utilitzar
# els nombres de partició correctes per particions lògiques.
# Els paràmetres són:
# <raidtype> <devcount> <sparecount> <fstype> <mountpoint> \
# <devices> <sparedevices>
# Els nivells de RAID 0, 1 i 5 estan suportats; els dispositius es separen
# amb "#"
#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 \
# .
# Açò fa que el partman particione automàticament sense demanar confirmació.
d-i partman-md/confirm boolean true
d-i partman/confirm_write_new_label boolean true
d-i partman/choose_partition \
select Finish partitioning and write changes to disk
d-i partman/confirm boolean true
Configuració del rellotge i de la zona horària
# Per controlar si el rellotge del maquinari s'ajusta al temps universal
# coordinat (UTC).
d-i clock-setup/utc boolean true
# Podeu ajustar això a qualsevol valor vàlid de $TZ; vegeu /usr/share/zoneinfo/
# per als valors vàlids.
d-i time/zone string Europe/Madrid
Configuració de l'apt
La configuració del fitxer /etc/apt/sources.list
i de les opcions de configuració bàsiques estarà completament
automatitzada segons el mètode d'instal·lació emprat i les respostes
a les primeres preguntes. Opcionalment podeu afegir altres repositoris
(locals).
# Podeu instal·lar programari no lliure (non-free) i de contribució (contrib).
#d-i apt-setup/non-free boolean true
#d-i apt-setup/contrib boolean true
# Descomenteu aquesta línia si no voleu utilitzar una rèplica.
#d-i apt-setup/use_mirror boolean false
# Tragueu-li el comentari a això per evitar afegir fonts de seguretat, o
# indiqueu un nom de màquina per utilitzar un servidor diferent a
# security.debian.org.
#d-i apt-setup/security_host string
# Repositoris addicionals, local[0-9] disponibles
#d-i apt-setup/local0/repository string \
# http://servidor.local/debian stable main
#d-i apt-setup/local0/comment string local server
# Afegeix les línies deb-src
#d-i apt-setup/local0/source boolean true
# La URL de la clau pública del repositori local; heu de donar una clau o
# l'apt es queixarà de que el repositori no autenticat i per tant es deixarà
# la línia comentada al sources.list
#d-i apt-setup/local0/key string http://servidor.local/clau
# Per omissió, l'instal·lador requereix repositoris autenticats amb
# una clau gpg coneguda. Es pot utilitzar aquesta opció per desactivar
# la comprovació. Avís: aquesta opció és insegura i no es recomana
# utilitzar-la.
#d-i debian-installer/allow_unauthenticated string true
Configuració de comptes
Es poden configurar prèviament el compte del superusuari i el nom i la
contrasenya d'un usuari ordinari. Les contrasenyes es poden indicar bé
de manera explícita o bé en forma de capolaments MD5.
Sigueu conscients que la configuració prèvia de contrasenyes no és
completament segura ja que qualsevol persona amb accés al fitxer de
configuració prèvia les podrà saber. Emprar capolaments MD5 es considera
un poc millor a efectes de seguretat, però això pot generar, falsament,
sensació de seguretat, car l'accés als capolaments MD5 permet els atacs
de força bruta.
# No crear el compte de superusuari (l'usuari normal haurà de ser capaç
# d'utilitzar sudo).
#d-i passwd/root-login boolean false
# De forma alternativa, per no crear el compte d'usuari normal.
#d-i passwd/make-user boolean false
# Contrasenya de superusuari, bé explícita
#d-i passwd/root-password password r00tme
#d-i passwd/root-password-again password r00tme
# o bé xifrada fent servir un capolament MD5.
#d-i passwd/root-password-crypted password [MD5 hash]
# Per crear un compte d'usuari normal.
#d-i passwd/user-fullname string Usuari de Debian
#d-i passwd/username string debian
# Contrasenya de l'usuari normal, bé explícita
#d-i passwd/user-password password insecure
#d-i passwd/user-password-again password insecure
# o bé xifrada fent servir un capolament MD5.
#d-i passwd/user-password-crypted password [MD5 hash]
Les variables passwd/root-password-crypted i
passwd/user-password-crypted també es poden
configurar prèviament posant !
com a valor. En aquest cas,
el compte corresponent es deshabilitarà. Això pot ser convenient per al
compte de superusuari en cas que, evidentment, s'haja establert un altre
mètode per permetre les tasques d'administració o per entrar com a
superusuari (per exemple fent servir l'autenticació de la clau SSH o
el sudo).
Es pot capolar una contrasenya en MD5 amb la següent ordre.
$ echo "r00tme" | mkpasswd -s -H MD5
Instal·lació del sistema base
No hi ha moltes coses que es puguin configurar prèviament en aquesta
part. Les úniques preguntes que hi ha fan referència a la instal·lació
del nucli.
# Seleccioneu el generador initramfs per crear els initrd per a nuclis 2.6.
#d-i base-installer/kernel/linux/initramfs-generators string yaird
Instal·lació del carregador
# El grub és el carregador predeterminat (per a l'x86). Si voleu instal·lar
# el lilo, tragueu-li el comentari:
#d-i grub-installer/skip boolean true
# Això, que és segur de fer, fa que el grub s'instal·le automàticament al
# registre principal d'arrenacada (MBR) si no es detecta cap altre sistema
# operatiu a la màquina.
d-i grub-installer/only_debian boolean true
# Això altre fa també que l'instal·lador del grub el pose a l'MBR si troba
# qualsevol altre sistema operatiu, la qual cosa és menys segura ja que pot
# no ser possible d'arrencar aquest altre sistema operatiu.
d-i grub-installer/with_other_os boolean true
# Com a alternativa, si voleu instal·lar-lo a un lloc diferent de l'MBR,
# tragueu-ne el comentari i editeu aquestes línies:
#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)
# Per instal·lar grub a més d'un disc:
#d-i grub-installer/bootdev string (hd0,0) (hd1,0) (hd2,0)
Selecció de paquets
Podeu instal·lar qualsevol combinació de tasques que hi haja a l'abast.
En aquest moment les tasques que hi ha són:
estàndard
escriptori
escriptori-gnome
escriptori-kde
servidor-web
servidor-impresió
servidor-dns
servidor-fitxers
servidor-correu
servidor-base-de-dades
portàtil
Podeu també no instal·lar cap tasca i forçar la instal·lació d'un
conjunt de paquets d'alguna altra manera. És recomanable incloure sempre
la tasca estàndard.
Si voleu instal·lar alguns paquets de forma individual a més a més dels
instal·lats per tasques, podeu utilitzar el paràmetre
pkgsel/include. El valor d'aquest paràmetre
pot ser una llista de paquets separats o bé per per comes o bé per espais,
que el podeu utilitzar de forma senzilla a la línia d'ordres del nucli.
tasksel tasksel/first multiselect estàndard, escriptori
#tasksel tasksel/first multiselect estàndard, servidor-web
#tasksel tasksel/first multiselect estàndard, escriptori-kde
# Paquets addicionals per instal·lar individualment
#d-i pkgsel/include string openssh-server build-essential
# Algunes versions de l'instal·lador poden enviar informes del programari
# que heu instal·lat, i els programes que feu servir. Per defecte no
# s'envia res, però fer-ho ajuda al projecte a determinar quins programes
# són els més populars i incloure'ls en CD.
#popularity-contest popularity-contest/participate boolean false
Finalització de la primera etapa de la instal·lació
# Evita el darrer missatge de la instal·lació que apareix indicant-ne l'estat
# complet.
d-i finish-install/reboot_in_progress note
# Això evita que l'instal·lador expulse el CD quan es torna a arrencar, la
# qual cosa és útil en algunes situacions.
#d-i cdrom-detect/eject boolean false
Configuració de l'X
Es pot fer una configuració prèvia de l'X, però probablement us caldrà saber
alguns detalls sobre el maquinari de vídeo, car el configurador de l'X
no ho configura tot automàticament.
# L'X pot detectar el controlador adient per a algunes targetes, però si
# empreu una configuració prèvia, substituireu tot el que aquell seleccione.
# Amb tot, el controlador vesa funcionarà la majoria de vegades.
#xserver-xorg xserver-xorg/config/device/driver select vesa
# Un problema amb detecció automàtica del ratolí és que si falla, l'X la
# tornarà intentar indefinidament. Per tant, si l'heu inclosa en la
# configuració prèvia, hi ha la possibilitat de caure en un bucle infinit,
# si falla la detecció.
#xserver-xorg xserver-xorg/autodetect_mouse boolean true
# Es recomana fer servir la detecció automàtica del monitor.
xserver-xorg xserver-xorg/autodetect_monitor boolean true
# Tragueu el comentari a això si teniu una pantalla LCD.
#xserver-xorg xserver-xorg/config/monitor/lcd boolean true
# L'X té tres maneres de configurar el monitor. Aquí teniu com configurar
# prèviament la «intermèdia» (medium), que sempre és a l'abast. La «simple»
# pot no ser-hi, i l'«avançada» (advanced) fa massa preguntes.
xserver-xorg xserver-xorg/config/monitor/selection-method \
select medium
xserver-xorg xserver-xorg/config/monitor/mode-list \
select 1024x768 @ 60 Hz
Configuració prèvia d'altres paquets
# Segons el programari instal·lat, o si les coses van malament durant el
# procés d'instal·lació, és possible rebre preguntes sobre altres qüestions.
# També podeu fer-ne una configuració prèvia. Per obtenir una llista de
# totes les preguntes que es poden fer durant la instal·lació, feu una
# instal·lació, i després executeu aquestes ordres:
# debconf-get-selections --installer > file
# debconf-get-selections >> file
Opcions avançades
Execució d'ordres personalitzades a la instal·lació
Una opció molt potent i flexible oferta per les eines de preconfiguració és
la possibilitat d'executar ordres o guions en alguns punts de la instal·lació.
# Necessàriament, la configuració prèvia de l'instal·lador del Debian no pot
# ser segura. No hi ha res que comprove els intents de sobreeiximent de
# memòria intermèdia o d'altres abusos sobre els valors d'un fitxer de
# configuració prèvia com el present. Feu servir només aquests fitxers si
# provenen de llocs de confiança! Per raons de control, i perquè és útil
# en general, aquí teniu una manera d'executar de forma automàtica
# qualsevol ordre de l'interpret que vulgueu dins l'instal·lador.
# Aquesta primera ordre s'executa tan prompte com es pot, tot just després
# de llegir el fitxer de configuració prèvia.
#d-i preseed/early_command string anna-install some-udeb
# Aquesta s'executa just abans que finalitzi la instal·lació, però
# quan encara es pot usar un directori de destí /target. Podeu fer chroot
# sobre /target i usar-lo directament, o fer servir les ordres apt-install
# i in-target per instal·lar paquets fàcilment i executar ordres al
# sistema de destinació.
#d-i preseed/late_command string apt-install zsh; in-target chsh -s /bin/zsh
Ús de la configuració prèvia per canviar els valors predeterminats
És pot utilitzar la configuració prèvia per canviar la resposta
predeterminada a una pregunta, però que encara es faci la pregunta. Per
fer açò l'indicador seen s'ha de posar a
false
després de donar-li el valor a una pregunta.
d-i foo/bar string value
d-i foo/bar seen false
Podeu assolir el mateix efecte per a totes
les preguntes si establiu el paràmetre
preseed/interactive=true a l'indicador
d'arrencada. També pot ser útil per provar o depurar el vostre fitxer
de preconfiguració.
Si esteu preconfigurant mitjançant els paràmetres d'arrencada,
podeu fer que l'instal·lador pregunti una qüestió en
concret utilitzant l'operador ?=
, p.ex.
foo/bar?=valor.
Tingueu en compte que això només afectarà els paràmetres
corresponents a les preguntes que realment es mostren durant el procés
d'instal·lació, i no als paràmetres interns
.
Càrrega en cadena de fitxers de configuració prèvia
En un fitxer de configuració prèvia se'n poden incloure d'altres.
Qualsevol ajust d'aquests fitxers prevaldrà sobre els dels fitxers
carregats primer. Això fa possible, per exemple, indicar la configuració
general de la xarxa a un fitxer i els ajusts més específics a altres.
# Es pot incloure més d'un fitxer, separat per espais; es carregaran tots.
# Els fitxers inclosos poden tenir directrius de configuració prèvia pròpies
# o bé incloure fitxers amb d'altres. Tingueu en compte que si els noms de
# fitxer són relatius, s'agafen del mateix directori que el del fitxer que
# els inclou.
#d-i preseed/include string x.cfg
# L'instal·lador pot comprovar sumes de verificació de fitxers de configuració
# prèvia abans de fer-los servir. Actualment sols es pot poden emprar md5sums.
# Indiqueu els md5sums en el mateix ordre que la llista de fitxers que s'ha
# d'incloure.
#d-i preseed/include/checksum string 5da499872becccfeda2c4872f9171c3d
# Més flexible que això és el següent, que executa una ordre a l'intepret i,
# si s'obté cap nom d'un fitxer de configuració prèvia, s'hi inclou.
#d-i preseed/include_command \
# string echo if [ "`hostname`" = bob ]; then echo bob.cfg; fi
# El més flexible de tots, açò descarrega un programa i l'executa.
# El programa pot utilitzar ordres com debconf-set per manipular la base
# de dades debconf. Es pot llistar més d'un guió, separat per espais.
# Adoneu-vos que els noms de fitxers són relatius, s'agafen
# del mateix directori que el fitxer de preconfiguració que els executa.
#d-i preseed/run string foo.sh
És possible l'encadenament des de l'initrd o de la fase de configuració
prèvia amb fitxer, a una configuració prèvia en xarxa donant el valor a
preseed/url en els fitxers anteriors. Açò farà que la configuració prèvia
de la xarxa es realitze quan la xarxa s'aixeque. Necessiteu anar en compte
quan ho feu, ja que hi ha dos formes diferents de fer la configuració
prèvia, que vol dir per exemple que tindreu l'oportunitat d'executar
l'ordre preseed/early, la segona que es du a terme després d'aixecar
la xarxa.