summaryrefslogtreecommitdiff
path: root/nl/appendix/preseed.xml
diff options
context:
space:
mode:
authorJeroen Schot <schot@a-eskwadraat.nl>2012-08-29 15:10:27 +0000
committerJeroen Schot <schot@a-eskwadraat.nl>2012-08-29 15:10:27 +0000
commita292182f917a4104b223016e041410498f4d47a3 (patch)
tree31983bd3bb12e47ca30a949da0d472b93796a9ea /nl/appendix/preseed.xml
parentf842e23756734b3ce4932695707bc416810e46cc (diff)
downloadinstallation-guide-a292182f917a4104b223016e041410498f4d47a3.zip
Restart Dutch translation of D-I manual in PO format.
Diffstat (limited to 'nl/appendix/preseed.xml')
-rw-r--r--nl/appendix/preseed.xml1624
1 files changed, 0 insertions, 1624 deletions
diff --git a/nl/appendix/preseed.xml b/nl/appendix/preseed.xml
deleted file mode 100644
index 90ce8a4f6..000000000
--- a/nl/appendix/preseed.xml
+++ /dev/null
@@ -1,1624 +0,0 @@
-<!-- retain these comments for translator revision tracking -->
-<!-- original version: 62798 untranslated -->
-
-<!--
-Be careful with the format of this file as it is parsed to generate
-the example preconfiguration file.
-In that file all text between <informalexample> tags that have the
-attribute 'role="example"' set is included, except if a 'condition'
-attribute is in force that does not match the specified release or if an
-'arch' attribute is in force that does not match the specified architecture.
-
-Currently only a single variant of the example file is generated (for i386).
--->
-
-<appendix id="appendix-preseed">
-<title>Automating the installation using preseeding</title>
-
-<para>
-
-This appendix explains how to preseed answers to questions in &d-i; to
-automate your installation.
-
-</para><para>
-
-The configuration fragments used in this appendix are also available as an
-example preconfiguration file from &urlset-example-preseed;.
-
-</para>
-
- <sect1 id="preseed-intro">
- <title>Introduction</title>
-<para>
-
-Preseeding provides a way to set answers to questions asked during the
-installation process, without having to manually enter the answers while
-the installation is running. This makes it possible to fully automate most
-types of installation and even offers some features not available during
-normal installations.
-
-</para><para>
-
-Preseeding is not required. If you use an empty preseed file, the installer
-will behave just the same way as in a normal manual installation. Each
-question you preseed will (if you got it right!) modify the installation in
-some way from that baseline.
-
-</para>
-
- <sect2 id="preseed-methods">
- <title>Preseeding methods</title>
-<para>
-
-There are three methods that can be used for preseeding:
-<firstterm>initrd</firstterm>, <firstterm>file</firstterm> and
-<firstterm>network</firstterm>. Initrd preseeding will work with any
-installation method and supports preseeding of more things, but it requires
-the most preparation. File and network preseeding each can be used with
-different installation methods.
-
-</para><para>
-
-The following table shows which preseeding methods can be used with which
-installation methods.
-
-<informaltable>
-<tgroup cols="4">
-<thead>
-<row>
- <entry>Installation method</entry><entry>initrd</entry>
- <entry>file</entry><entry>network</entry>
-</row>
-</thead>
-
-<tbody>
-<row>
- <entry>CD/DVD</entry>
- <entry>yes</entry>
- <entry>yes</entry>
- <entry>yes<footnote id='apx-ps-net'>
-
- <para>
- but only if you have network access, and set <literal>preseed/url</literal>
- appropriately
- </para>
-
- </footnote></entry>
-</row><row>
- <entry>netboot</entry>
- <entry>yes</entry>
- <entry>no</entry>
- <entry>yes</entry>
-</row><row>
- <entry>hd-media <phrase condition="bootable-usb">(including usb-stick)</phrase></entry>
- <entry>yes</entry>
- <entry>yes</entry>
- <entry>yes<footnoteref linkend='apx-ps-net'/></entry>
-</row><row condition="supports-floppy-boot">
- <entry>floppy based (cd-drivers)</entry>
- <entry>yes</entry>
- <entry>yes</entry>
- <entry>yes<footnoteref linkend='apx-ps-net'/></entry>
-</row><row condition="supports-floppy-boot">
- <entry>floppy based (net-drivers)</entry>
- <entry>yes</entry>
- <entry>no</entry>
- <entry>yes</entry>
-</row><row arch="s390">
- <entry>generic/tape</entry>
- <entry>yes</entry>
- <entry>no</entry>
- <entry>yes</entry>
-</row>
-</tbody>
-
-</tgroup></informaltable>
-
-</para><para>
-
-An important difference between the preseeding methods is the point at which
-the preconfiguration file is loaded and processed. For initrd preseeding
-this is right at the start of the installation, before the first question is
-even asked. For file preseeding this is after the CD or CD image has been
-loaded. For network preseeding it is only after the network has been
-configured.
-
-</para><para>
-
-Obviously, any questions that have been processed before the
-preconfiguration file is loaded cannot be preseeded (this will include
-questions that are only displayed at medium or low priority, like the
-first hardware detection run). <xref linkend="preseed-bootparms"/>
-offers a way to avoid these questions being asked.
-
-</para><para>
-
-In order to avoid the questions that would normally appear before the
-preseeding occurs, you can start the installer in <quote>auto</quote>
-mode. This delays questions that would normally be asked too early for
-preseeding (i.e. language, country and keyboard selection) until after
-the network comes up, thus allowing them to be preseeded. It also runs
-the installation at critical priority, which avoids many unimportant
-questions. See <xref linkend="preseed-auto"/> for details.
-
-</para>
- </sect2>
-
- <sect2 id="preseed-limitations">
- <title>Limitations</title>
-<para>
-
-Although most questions used by &d-i; can be preseeded using this method,
-there are some notable exceptions. You must (re)partition an entire disk
-or use available free space on a disk; it is not possible to use existing
-partitions.
-
-</para>
- </sect2>
-
-<!-- Joeyh feels this is too technical, so leave it out for now
- <sect2 id="preseed-debconf">
- <title>Debconf basics</title>
-<para>
-
-Preseeding makes use of the <classname>debconf</classname> framework. This
-framework is the preferred mechanism used in &debian; to interact with the user
-when configuring packages and also forms the heart of &d-i;.
-In the <classname>debconf</classname> framework questions or dialogs are
-based on <firstterm>templates</firstterm>. There are different types of
-templates for different types of questions. The actual questions are
-<quote>generated</quote> from templates at runtime; multiple questions can
-use the same template.
-
-</para><para>
-
-The following types of templates are relevant for preseeding.
-
-</para>
-
-<itemizedlist spacing="compact">
-<listitem><para>
- string: allows the user to type any value
-</para></listitem>
-<listitem><para>
- password: similar to string but the value typed is not displayed
-</para></listitem>
-<listitem><para>
- boolean: for yes/no or true/false type of questions
-</para></listitem>
-<listitem><para>
- select: allows the user to select one option from a list
-</para></listitem>
-<listitem><para>
- multiselect: allows the user to select zero, one or more options from a list
-</para></listitem>
-<listitem><para>
- note: used to display a message
-</para></listitem>
-</itemizedlist>
-
-<para>
-
-In &d-i; templates are stored in a readable file
-<filename>/var/cache/debconf/templates.dat</filename>. This file contains all fixed
-text and all translations. It can also contain a default value for the
-template. The fixed text can include variables that will be replaced at
-runtime.
-
-</para><para>
-
-Another readable file <filename>/var/cache/debconf/questions.dat</filename>
-is used to store the values for variables and the answers given to questions.
-A question always refers to the template used to ask it. For obvious
-security reasons the values for questions of type <quote>password</quote>
-are stored in a separate, non-readable file in the same directory.
-
-</para>
- </sect2>
--->
- </sect1>
-
-
- <sect1 id="preseed-using">
- <title>Using preseeding</title>
-<para>
-
-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 floppy or usb-stick. If you want to include the file on a CD or DVD, you
-will have to remaster the ISO image. How to get the preconfiguration file
-included in the initrd is outside the scope of this document; please consult
-the developers' documentation for &d-i;.
-
-</para><para>
-
-An example preconfiguration file that you can use as basis for your own
-preconfiguration file is available from &urlset-example-preseed;. This file is
-based on the configuration fragments included in this appendix.
-
-</para>
-
- <sect2 id="preseed-loading">
- <title>Loading the preconfiguration file</title>
-<para>
-
-If you are using initrd preseeding, you only have to make sure a file named
-<filename>preseed.cfg</filename> is included in the root directory of the
-initrd. The installer will automatically check if this file is present and
-load it.
-
-</para><para>
-
-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. <filename>syslinux.cfg</filename>) and adding the
-parameter to the end of the append line(s) for the kernel.
-
-</para><para>
-
-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 <literal>1</literal>
-in <filename>syslinux.cfg</filename>.
-
-</para><para>
-
-To make sure the installer gets the right preconfiguration file, you can
-optionally specify a checksum for the file. Currently this needs to be a
-md5sum, and if specified it must match the preconfiguration file or the
-installer will refuse to use it.
-
-</para>
-
-<informalexample><screen>
-Boot parameters to specify:
-- if you're netbooting:
- preseed/url=http://host/path/to/preseed.cfg
- preseed/url/checksum=5da499872becccfeda2c4872f9171c3d
-
-- if you're booting a remastered CD:
- 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
-</screen></informalexample>
-
-<para>
-
-Note that <filename>preseed/url</filename> can be shortened to just
-<filename>url</filename> and <filename>preseed/file</filename> to just
-<filename>file</filename> when they are passed as boot parameters.
-
-</para>
- </sect2>
-
- <sect2 id="preseed-bootparms">
- <title>Using boot parameters to preseed questions</title>
-<para>
-
-If a preconfiguration file cannot be used to preseed some steps, the
-install can still be fully automated, since you can pass preseed values on
-the command line when booting the installer.
-
-</para><para>
-
-Boot parameters can also be used if you do not really want to use preseeding,
-but just want to provide an answer for a specific question. Some examples where
-this can be useful are documented elsewhere in this manual.
-
-</para><para>
-
-To set a value to be used inside &d-i;, just pass
-<userinput><replaceable>path/to/variable</replaceable>=<replaceable>value</replaceable></userinput>
-for any of the preseed variables listed in the examples in this appendix.
-If a value is to be used to configure packages for the target system, you
-will need to prepend the <firstterm>owner</firstterm><footnote>
-
-<para>
-The owner of a debconf variable (or template) is normally the name of the
-package that contains the corresponding debconf template. For variables
-used in the installer itself the owner is <quote>d-i</quote>.
-Templates and variables can have more than one owner which helps to
-determine whether they can be removed from the debconf database if the
-package is purged.
-</para>
-
-</footnote> of the variable as in
-<userinput><replaceable>owner</replaceable>:<replaceable>path/to/variable</replaceable>=<replaceable>value</replaceable></userinput>.
-If you don't specify the owner, the value for the variable will not be
-copied to the debconf database in the target system and thus remain unused
-during the configuration of the relevant package.
-
-</para><para>
-
-Normally, preseeding a question in this way will mean that the question will
-not be asked. To set a specific default value for a question, but still have
-the question asked, use <quote>?=</quote> instead of <quote>=</quote> as
-operator. See also <xref linkend="preseed-seenflag"/>.
-
-</para><para>
-
-Note that some variables that are frequently set at the boot prompt
-have a shorter alias. If an alias is available, it is used in the
-examples in this appendix instead of the full variable. The
-<literal>preseed/url</literal> variable for example has been aliased as
-<literal>url</literal>. Another example is the <literal>tasks</literal>
-alias, which translates to <literal>tasksel:tasksel/first</literal>.
-
-</para><para>
-
-A <quote>--</quote> in the boot options has special meaning. Kernel
-parameters that appear after the last <quote>--</quote> may be copied
-into the bootloader configuration for the installed system (if supported by
-the installer for the bootloader). The installer will automatically filter
-out any options (like preconfiguration options) that it recognizes.
-
-</para>
-<note arch="linux-any"><para>
-
-Current linux kernels (2.6.9 and later) accept a maximum of 32 command line
-options and 32 environment options, including any options added by default
-for the installer. If these numbers are exceeded, the kernel will panic
-(crash). (For earlier kernels, these numbers were lower.)
-
-</para></note>
-<para>
-
-For most installations some of the default options in your bootloader
-configuration file, like <literal>vga=normal</literal>, may be safely
-removed which may allow you to add more options for preseeding.
-
-</para>
-<note><para>
-
-It may not always be possible to specify values with spaces for boot
-parameters, even if you delimit them with quotes.
-
-</para></note>
- </sect2>
-
- <sect2 id="preseed-auto">
- <title>Auto mode</title>
-<para>
-
-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. To illustrate
-this, here are some examples that can be used at the boot prompt:
-
-<informalexample><screen>
-auto url=autoserver
-</screen></informalexample>
-
-This relies on there being a DHCP server that will get the machine to
-the point where <literal>autoserver</literal> can be resolved by DNS,
-perhaps after adding the local domain if that was provided by DHCP.
-If this was done at a site where the domain is
-<literal>example.com</literal>, and they have a reasonably sane DHCP
-setup, it would result in the preseed file being retrieved from
-<literal>http://autoserver.example.com/d-i/&releasename;/./preseed.cfg</literal>.
-
-</para><para>
-
-The last part of that url (<literal>d-i/&releasename;/./preseed.cfg</literal>)
-is taken from <literal>auto-install/defaultroot</literal>. By default
-this includes the directory <literal>&releasename;</literal> to allow future versions
-to specify their own codename and let people migrate forwards in a
-controlled manner. The <literal>/./</literal> bit is used to indicate
-a root, relative to which subsequent paths can be anchored (for use in
-preseed/include and preseed/run). This allows files to be specified
-either as full URLs, paths starting with / that are thus anchored, or
-even paths relative to the location where the last preseed file was
-found. This can be used to construct more portable scripts where an
-entire hierarchy of scripts can be moved to a new location without
-breaking it, for example copying the files onto a USB stick when they
-started out on a web server. In this example, if the preseed file
-sets <literal>preseed/run</literal> to
-<literal>/scripts/late_command.sh</literal> then the file will be
-fetched from
-<literal>http://autoserver.example.com/d-i/&releasename;/./scripts/late_command.sh</literal>.
-
-</para><para>
-
-If there is no local DHCP or DNS infrastructure, or if you do not want to
-use the default path to <filename>preseed.cfg</filename>, you can still
-use an explicit url, and if you don't use the <literal>/./</literal>
-element it will be anchored to the start of the path (i.e. the third
-<literal>/</literal> in the URL). Here is an example that requires minimal
-support from the local network infrastructure:
-
-<informalexample><screen>
-auto url=<replaceable>http://192.168.1.2/path/to/mypreseed.file</replaceable>
-</screen></informalexample>
-
-The way this works is that:
-<itemizedlist spacing="compact">
-<listitem><para>
-if the URL is missing a protocol, http is assumed,
-</para></listitem>
-<listitem><para>
-if the hostname section contains no periods, it has the domain derived
-from DHCP appended to it, and
-</para></listitem>
-<listitem><para>
-if there's no <literal>/</literal>'s after the hostname, then the default
-path is added.
-</para></listitem>
-</itemizedlist>
-
-</para><para>
-
-In addition to specifying the url, you can also specify settings that
-do not directly affect the behavior of &d-i; itself, but can be passed
-through to scripts specified using <literal>preseed/run</literal>
-in the loaded preseed file. At present, the only example of
-this is <literal>auto-install/classes</literal>, which has an alias
-<literal>classes</literal>. This can be used thus:
-
-<informalexample><screen>
-auto url=<replaceable>example.com</replaceable> classes=<replaceable>class_A;class_B</replaceable>
-</screen></informalexample>
-
-The classes could for example denote the type of system to be installed,
-or the localization to be used.
-
-</para><para>
-
-It is of course possible to extend this concept, and if you do, it is
-reasonable to use the auto-install namespace for this. So one might have
-something like <literal>auto-install/style</literal> which is then used
-in your scripts. If you feel the need to do this, please mention it on
-the <email>debian-boot@lists.debian.org</email> mailing list so that we
-can avoid namespace conflicts, and perhaps add an alias for the parameter
-for you.
-
-</para><para>
-
-The <literal>auto</literal> boot label is not yet defined everywhere.
-The same effect may be achieved by simply adding the two
-parameters <literal>auto=true priority=critical</literal> to the kernel
-command line. The <literal>auto</literal> parameter is an alias for
-<literal>auto-install/enable</literal> and setting it to
-<literal>true</literal> delays the
-locale and keyboard questions until after there has been a chance to
-preseed them, while <literal>priority</literal> is an alias for
-<literal>debconf/priority</literal> and setting it to
-<literal>critical</literal> stops any questions with a lower priority
-from being asked.
-
-</para><para>
-
-Additional options that may be of interest while attempting to
-automate an install while using DHCP are: <literal>interface=auto
-netcfg/dhcp_timeout=60</literal> which makes the machine choose the
-first viable NIC and be more patient about getting a reply to its
-DHCP query.
-
-</para>
-<tip><para>
-
-An extensive example of how to use this framework, including example scripts
-and classes, can be found on the <ulink url="http://hands.com/d-i/">website
-of its developer</ulink>. The examples available there also show many other
-nice effects that can be achieved by creative use of preconfiguration.
-
-</para></tip>
- </sect2>
-
- <sect2 id="preseed-aliases">
- <title>Aliases useful with preseeding</title>
-<para>
-
-The following aliases can be useful when using (auto mode) preseeding.
-Note that these are simply short aliases for question names, and you
-always need to specify a value as well: for example,
-<literal>auto=true</literal> or <literal>interface=eth0</literal>.
-
-</para>
-
-<!-- Setting column width does not seem to work; use non-breaking spaces
- to separate columns a bit -->
-<informaltable frame="none">
-<tgroup cols="2"><tbody>
-<row><entry>auto</entry><entry>auto-install/enable</entry></row>
-<row><entry>classes</entry><entry>auto-install/classes</entry></row>
-<row><entry>fb</entry><entry>debian-installer/framebuffer</entry></row>
-<row><entry>language</entry><entry>debian-installer/language</entry></row>
-<row><entry>country</entry><entry>debian-installer/country</entry></row>
-<row><entry>locale</entry><entry>debian-installer/locale</entry></row>
-<row><entry>priority</entry><entry>debconf/priority</entry></row>
-<row><entry>file</entry><entry>preseed/file</entry></row>
-<row><entry>url</entry><entry>preseed/url</entry></row>
-<row><entry>interface</entry><entry>netcfg/choose_interface</entry></row>
-<row><entry>hostname&nbsp;&nbsp;&nbsp;</entry><entry>netcfg/get_hostname</entry></row>
-<row><entry>domain</entry><entry>netcfg/get_domain</entry></row>
-<row><entry>protocol</entry><entry>mirror/protocol</entry></row>
-<row><entry>suite</entry><entry>mirror/suite</entry></row>
-</tbody></tgroup>
-</informaltable>
-
- </sect2>
-
- <sect2 id="preseed-dhcp">
- <title>Using a DHCP server to specify preconfiguration files</title>
-<para>
-
-It's also possible to use DHCP to specify a preconfiguration file to download
-from the network. DHCP allows specifying a filename. Normally this is a file
-to netboot, but if it appears to be an URL then installation media that
-support network preseeding will download the file from the URL and use it as a
-preconfiguration file. Here is an example of how to set it up in the dhcpd.conf
-for version 3 of the ISC DHCP server (the dhcp3-server &debian; package).
-
-</para>
-
-<informalexample><screen>
-if substring (option vendor-class-identifier, 0, 3) = "d-i" {
- filename "http://host/preseed.cfg";
-}
-</screen></informalexample>
-
-<para>
-
-Note that the above example limits this filename to DHCP clients that identify
-themselves as "d-i", so it will not affect regular DHCP clients, but only
-the installer. You can also put the text in a stanza for only one particular
-host to avoid preseeding all installs on your network.
-
-</para><para>
-
-A good way to use the DHCP preseeding is to only preseed values specific to
-your network, such as the &debian; mirror to use. This way installs on your
-network will automatically get a good mirror selected, but the rest of the
-installation can be performed interactively. Using DHCP preseeding to fully
-automate &debian; installs should only be done with care.
-
-</para>
- </sect2>
- </sect1>
-
-
- <sect1 id="preseed-creating">
- <title>Creating a preconfiguration file</title>
-<para>
-
-The preconfiguration file is in the format used by the
-<command>debconf-set-selections</command> command. The general format of
-a line in a preconfiguration file is:
-
-<informalexample><screen>
-&lt;owner&gt; &lt;question name&gt; &lt;question type&gt; &lt;value&gt;
-</screen></informalexample>
-
-</para><para>
-
-There are a few rules to keep in mind when writing a preconfiguration file.
-
-</para>
-
-<itemizedlist>
-<listitem><para>
- Put only a single space or tab between type and value: any additional
- whitespace will be interpreted as belonging to the value.
-</para></listitem>
-<listitem><para>
- A line can be split into multiple lines by appending a backslash
- (<quote><literal>\</literal></quote>) as the line continuation character.
- A good place to split a line is after the question name; a bad place is
- between type and value. Split lines will be joined into a single line
- with all leading/trailing whitespace condensed to a single space.
-</para></listitem>
-<listitem><para>
- For debconf variables (templates) used in the installer itself, the
- owner should be set to <quote>d-i</quote>; to preseed variables used
- in the installed system, the name of the package that contains the
- corresponding debconf template should be used. Only variables that have
- their owner set to something other than <quote>d-i</quote> will be
- propagated to the debconf database for the installed system.
-</para></listitem>
-<listitem><para>
- Most questions need to be preseeded using the values valid in English and
- not the translated values. However, there are some questions (for example
- in <classname>partman</classname>) where the translated values need to be
- used.
-</para></listitem>
-<listitem><para>
- Some questions take a code as value instead of the English text that is
- shown during installation.
-</para></listitem>
-</itemizedlist>
-
-<para>
-
-The easiest way to create a preconfiguration file is to use the example file
-linked in <xref linkend="preseed-contents"/> as basis and work from there.
-
-</para><para>
-
-An alternative method is to do a manual installation and then, after
-rebooting, use the <command>debconf-get-selections</command> from the
-<classname>debconf-utils</classname> package to dump both the debconf
-database and the installer's cdebconf database to a single file:
-
-<informalexample><screen>
-$ debconf-get-selections --installer &gt; <replaceable>file</replaceable>
-$ debconf-get-selections &gt;&gt; <replaceable>file</replaceable>
-</screen></informalexample>
-
-</para><para>
-
-However, a file generated in this manner will have some items that should
-not be preseeded, and the example file is a better starting place for most
-users.
-
-</para>
-
-<note><para>
-
-This method relies on the fact that, at the end of the installation, the
-installer's cdebconf database is saved to the installed system in
-<filename>/var/log/installer/cdebconf</filename>. However, because the
-database may contain sensitive information, by default the files are only
-readable by root.
-
-</para><para>
-
-The directory <filename>/var/log/installer</filename> and all files in it
-will be deleted from your system if you purge the package
-<classname>installation-report</classname>.
-
-</para></note>
-
-<para>
-
-To check possible values for questions, you can use <command>nano</command>
-to examine the files in <filename>/var/lib/cdebconf</filename> while an
-installation is in progress. View <filename>templates.dat</filename> for
-the raw templates and <filename>questions.dat</filename> for the current
-values and for the values assigned to variables.
-
-</para><para>
-
-To check if the format of your preconfiguration file is valid before performing
-an install, you can use the command <command>debconf-set-selections -c
-<replaceable>preseed.cfg</replaceable></command>.
-
-</para>
- </sect1>
-
-
- <sect1 id="preseed-contents">
- <title>Contents of the preconfiguration file (for &releasename;)</title>
-<para>
-
-The configuration fragments used in this appendix are also available as an
-example preconfiguration file from &urlset-example-preseed;.
-
-</para><para>
-
-Note that this example is based on an installation for the Intel x86
-architecture. If you are installing a different architecture, some of the
-examples (like keyboard selection and bootloader installation) may not be
-relevant and will need to be replaced by debconf settings appropriate for
-your architecture.
-
-</para>
-
- <sect2 id="preseed-l10n">
- <title>Localization</title>
-<para>
-
-Setting localization values will only work if you are using initrd preseeding.
-With all other methods the preconfiguration file will only be loaded after
-these questions have been asked.
-
-</para><para>
-
-The locale can be used to specify both language and country and can be any
-combination of a language supported by &d-i; and a recognized country. If
-the combination does not form a valid locale, the installer will automatically
-select a locale that is valid for the selected language.
-To specify the locale as a boot parameter, use
-<userinput>locale=<replaceable>en_US</replaceable></userinput>.
-
-</para><para>
-
-Although this method is very easy to use, it does not allow preseeding of
-all possible combinations of language, country and locale<footnote>
-
-<para>
-Preseeding <literal>locale</literal> to <userinput>en_NL</userinput> would
-for example result in <literal>en_US.UTF-8</literal> as default locale for
-the installed system. If e.g. <literal>en_GB.UTF-8</literal> is preferred
-instead, the values will need to be preseeded individually.
-</para>
-
-</footnote>. So alternatively the values can be preseeded individually.
-Language and country can also be specified as boot parameters.
-
-<informalexample role="example"><screen>
-# Preseeding only locale sets language, country and locale.
-d-i debian-installer/locale string en_US
-
-# The values can also be preseeded individually for greater flexibility.
-#d-i debian-installer/language string en
-#d-i debian-installer/country string NL
-#d-i debian-installer/locale string en_GB.UTF-8
-# Optionally specify additional locales to be generated.
-#d-i localechooser/supported-locales en_US.UTF-8, nl_NL.UTF-8
-</screen></informalexample>
-
-</para><para>
-
-Keyboard configuration consists of selecting a keymap.
-
-<informalexample role="example"><screen>
-# Keyboard selection.
-# keymap is an alias for keyboard-configuration/xkb-keymap
-d-i keymap select us
-# d-i keyboard-configuration/toggle select No toggling
-</screen></informalexample>
-
-</para><para>
-
-To skip keyboard configuration, preseed
-<classname>keymap</classname> with
-<userinput>skip-config</userinput>.
-This will result in the kernel keymap remaining active.
-
-</para>
-
- </sect2>
-
- <sect2 id="preseed-network">
- <title>Network configuration</title>
-<para>
-
-Of course, preseeding the network configuration won't work if you're
-loading your preconfiguration file from the network. But it's great when
-you're booting from CD or USB stick. If you are loading preconfiguration
-files from the network, you can pass network config parameters by using
-kernel boot parameters.
-
-</para><para>
-
-If you need to pick a particular interface when netbooting before loading
-a preconfiguration file from the network, use a boot parameter such as
-<userinput>interface=<replaceable>eth1</replaceable></userinput>.
-
-</para><para>
-
-Although preseeding the network configuration is normally not possible when
-using network preseeding (using <quote>preseed/url</quote>), 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 <quote>preseed/run</quote> script containing the following
-commands:
-
-<informalexample><screen>
-killall.sh; netcfg
-</screen></informalexample>
-
-</para><para>
-
-The following debconf variables are relevant for network configuration.
-
-</para>
-
-<informalexample role="example"><screen>
-# Disable network configuration entirely. This is useful for cdrom
-# installations on non-networked devices where the network questions,
-# warning and long timeouts are a nuisance.
-#d-i netcfg/enable boolean false
-
-# netcfg will choose an interface that has link if possible. This makes it
-# skip displaying a list if there is more than one interface.
-d-i netcfg/choose_interface select auto
-
-# To pick a particular interface instead:
-#d-i netcfg/choose_interface select eth1
-
-# If you have a slow dhcp server and the installer times out waiting for
-# it, this might be useful.
-#d-i netcfg/dhcp_timeout string 60
-
-# If you prefer to configure the network manually, uncomment this line and
-# the static network configuration below.
-#d-i netcfg/disable_dhcp boolean true
-
-# If you want the preconfiguration file to work on systems both with and
-# without a dhcp server, uncomment these lines and the static network
-# configuration below.
-#d-i netcfg/dhcp_failed note
-#d-i netcfg/dhcp_options select Configure network manually
-
-# Static network configuration.
-#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
-
-# Any hostname and domain names assigned from dhcp take precedence over
-# values set here. However, setting the values still prevents the questions
-# from being shown, even if values come from dhcp.
-d-i netcfg/get_hostname string unassigned-hostname
-d-i netcfg/get_domain string unassigned-domain
-
-# Disable that annoying WEP key dialog.
-d-i netcfg/wireless_wep string
-# The wacky dhcp hostname that some ISPs use as a password of sorts.
-#d-i netcfg/dhcp_hostname string radish
-
-# If non-free firmware is needed for the network or other hardware, you can
-# configure the installer to always try to load it, without prompting. Or
-# change to false to disable asking.
-#d-i hw-detect/load_firmware boolean true
-</screen></informalexample>
-
-<para>
-
-Please note that <command>netcfg</command> will automatically determine the
-netmask if <classname>netcfg/get_netmask</classname> is not preseeded. In
-this case, the variable has to be marked as <literal>seen</literal> for
-automatic installations. Similarly, <command>netcfg</command> will choose
-an appropriate address if <classname>netcfg/get_gateway</classname> is not
-set. As a special case, you can set
-<classname>netcfg/get_gateway</classname> to <quote>none</quote> to specify
-that no gateway should be used.
-
-</para>
-
- </sect2>
-
- <sect2 id="preseed-network-console">
- <title>Network console</title>
-
-<informalexample role="example"><screen>
-# Use the following settings if you wish to make use of the network-console
-# component for remote installation over SSH. This only makes sense if you
-# intend to perform the remainder of the installation manually.
-#d-i anna/choose_modules string network-console
-#d-i network-console/authorized_keys_url string http://10.0.0.1/openssh-key
-#d-i network-console/password password r00tme
-#d-i network-console/password-again password r00tme
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-mirror">
- <title>Mirror settings</title>
-<para>
-
-Depending on the installation method you use, a mirror may be used to
-download additional components of the installer, to install the base system,
-and to set up the <filename>/etc/apt/sources.list</filename> for the installed
-system.
-
-</para><para>
-
-The parameter <classname>mirror/suite</classname> determines the suite for
-the installed system.
-
-</para><para>
-
-The parameter <classname>mirror/udeb/suite</classname> determines the suite
-for additional components for the installer. It is only useful to set this
-if components are actually downloaded over the network and should match the
-suite that was used to build the initrd for the installation method used for
-the installation. Normally the installer will automatically use the correct
-value and there should be no need to set this.
-
-</para>
-
-<informalexample role="example"><screen>
-# If you select ftp, the mirror/country string does not need to be set.
-#d-i mirror/protocol string ftp
-d-i mirror/country string manual
-d-i mirror/http/hostname string &archive-mirror;
-d-i mirror/http/directory string /debian
-d-i mirror/http/proxy string
-
-# Suite to install.
-#d-i mirror/suite string testing
-# Suite to use for loading installer components (optional).
-#d-i mirror/udeb/suite string testing
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-account">
- <title>Account setup</title>
-<para>
-
-The password for the root account and name and password for a first regular
-user's account can be preseeded. For the passwords you can use either clear
-text values or MD5 <emphasis>hashes</emphasis>.
-
-</para>
-<warning><para>
-
-Be aware that preseeding passwords is not completely secure as everyone
-with access to the preconfiguration file will have the knowledge of these
-passwords. Using MD5 hashes is considered slightly better in terms of
-security but it might also give a false sense of security as access to a
-MD5 hash allows for brute force attacks.
-
-</para></warning>
-
-<informalexample role="example"><screen>
-# Skip creation of a root account (normal user account will be able to
-# use sudo).
-#d-i passwd/root-login boolean false
-# Alternatively, to skip creation of a normal user account.
-#d-i passwd/make-user boolean false
-
-# Root password, either in clear text
-#d-i passwd/root-password password r00tme
-#d-i passwd/root-password-again password r00tme
-# or encrypted using an MD5 hash.
-#d-i passwd/root-password-crypted password [MD5 hash]
-
-# To create a normal user account.
-#d-i passwd/user-fullname string Debian User
-#d-i passwd/username string debian
-# Normal user's password, either in clear text
-#d-i passwd/user-password password insecure
-#d-i passwd/user-password-again password insecure
-# or encrypted using an MD5 hash.
-#d-i passwd/user-password-crypted password [MD5 hash]
-# Create the first user with the specified UID instead of the default.
-#d-i passwd/user-uid string 1010
-
-# The user account will be added to some standard initial groups. To
-# override that, use this.
-#d-i passwd/user-default-groups string audio cdrom video
-</screen></informalexample>
-
-<para>
-
-The <classname>passwd/root-password-crypted</classname> and
-<classname>passwd/user-password-crypted</classname> variables can also
-be preseeded with <quote>!</quote> as their value. In that case, the
-corresponding account is disabled. This may be convenient for the root
-account, provided of course that an alternative method is set up to allow
-administrative activities or root login (for instance by using SSH key
-authentication or <command>sudo</command>).
-
-</para><para>
-
-The following command can be used to generate an MD5 hash for a password:
-
-<informalexample><screen>
-$ printf "r00tme" | mkpasswd -s -m md5
-</screen></informalexample>
-
-</para>
- </sect2>
-
- <sect2 id="preseed-time">
- <title>Clock and time zone setup</title>
-
-<informalexample role="example"><screen>
-# Controls whether or not the hardware clock is set to UTC.
-d-i clock-setup/utc boolean true
-
-# You may set this to any valid setting for $TZ; see the contents of
-# /usr/share/zoneinfo/ for valid values.
-d-i time/zone string US/Eastern
-
-# Controls whether to use NTP to set the clock during the install
-d-i clock-setup/ntp boolean true
-# NTP server to use. The default is almost always fine here.
-#d-i clock-setup/ntp-server string ntp.example.com
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-partman">
- <title>Partitioning</title>
-<para>
-
-Using preseeding to partition the harddisk is limited to what is supported
-by <classname>partman-auto</classname>. You can choose to partition
-either existing free space on a disk or a whole disk. The layout of the
-disk can be determined by using a predefined recipe, a custom recipe from
-a recipe file or a recipe included in the preconfiguration file.
-
-</para><para>
-
-Preseeding of advanced partition setups using RAID, LVM and encryption is
-supported, but not with the full flexibility possible when partitioning
-during a non-preseeded install.
-
-</para><para>
-
-The examples below only provide basic information on the use of recipes.
-For detailed information see the files
-<filename>partman-auto-recipe.txt</filename> and
-<filename>partman-auto-raid-recipe.txt</filename> included in the
-<classname>debian-installer</classname> package.
-Both files are also available from the
-<ulink url="&url-d-i-websvn;/trunk/installer/doc/devel/">&d-i; source
-repository</ulink>. Note that the supported functionality may change
-between releases.
-
-</para>
-
-<warning><para>
-
-The identification of disks is dependent on the order in which their drivers
-are loaded. If there are multiple disks in the system, make very sure the
-correct one will be selected before using preseeding.
-
-</para></warning>
-
- <sect3 id="preseed-partman-example">
- <title>Partitioning example</title>
-
-<informalexample role="example"><screen>
-# If the system has free space you can choose to only partition that space.
-# This is only honoured if partman-auto/method (below) is not set.
-#d-i partman-auto/init_automatically_partition select biggest_free
-
-# Alternatively, you may specify a disk to partition. If the system has only
-# one disk the installer will default to using that, but otherwise the device
-# name must be given in traditional, non-devfs format (so e.g. /dev/hda or
-# /dev/sda, and not e.g. /dev/discs/disc0/disc).
-# For example, to use the first SCSI/SATA hard disk:
-#d-i partman-auto/disk string /dev/sda
-# In addition, you'll need to specify the method to use.
-# The presently available methods are:
-# - regular: use the usual partition types for your architecture
-# - lvm: use LVM to partition the disk
-# - crypto: use LVM within an encrypted partition
-d-i partman-auto/method string lvm
-
-# If one of the disks that are going to be automatically partitioned
-# contains an old LVM configuration, the user will normally receive a
-# warning. This can be preseeded away...
-d-i partman-lvm/device_remove_lvm boolean true
-# The same applies to pre-existing software RAID array:
-d-i partman-md/device_remove_md boolean true
-# And the same goes for the confirmation to write the lvm partitions.
-d-i partman-lvm/confirm boolean true
-d-i partman-lvm/confirm_nooverwrite boolean true
-
-# You can choose one of the three predefined partitioning recipes:
-# - atomic: all files in one partition
-# - home: separate /home partition
-# - multi: separate /home, /usr, /var, and /tmp partitions
-d-i partman-auto/choose_recipe select atomic
-
-# Or provide a recipe of your own...
-# If you have a way to get a recipe file into the d-i environment, you can
-# just point at it.
-#d-i partman-auto/expert_recipe_file string /hd-media/recipe
-
-# If not, you can put an entire recipe into the preconfiguration file in one
-# (logical) line. This example creates a small /boot partition, suitable
-# swap, and uses the rest of the space for the root partition:
-#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{ } \
-# .
-
-# The full recipe format is documented in the file partman-auto-recipe.txt
-# included in the 'debian-installer' package or available from D-I source
-# repository. This also documents how to specify settings such as file
-# system labels, volume group names and which physical devices to include
-# in a volume group.
-
-# This makes partman automatically partition without confirmation, provided
-# that you told it what to do using one of the methods above.
-d-i partman-partitioning/confirm_write_new_label boolean true
-d-i partman/choose_partition select finish
-d-i partman/confirm boolean true
-d-i partman/confirm_nooverwrite boolean true
-</screen></informalexample>
-
- </sect3>
- <sect3 id="preseed-partman-raid">
- <title>Partitioning using RAID</title>
-<para>
-
-You can also use preseeding to set up partitions on software RAID arrays.
-Supported are RAID levels 0, 1, 5, 6 and 10, creating degraded arrays and
-specifying spare devices.
-If you are using RAID 1, you can preseed grub to install to all devices
-used in the array; see <xref linkend="preseed-bootloader"/>.
-
-</para>
-
-<warning><para>
-
-This type of automated partitioning is easy to get wrong. It is also
-functionality that receives relatively little testing from the developers
-of &d-i;. The responsibility to get the various recipes right (so they
-make sense and don't conflict) lies with the user.
-Check <filename>/var/log/syslog</filename> if you run into problems.
-
-</para></warning>
-
-<informalexample role="example"><screen>
-# The method should be set to "raid".
-#d-i partman-auto/method string raid
-# Specify the disks to be partitioned. They will all get the same layout,
-# so this will only work if the disks are the same size.
-#d-i partman-auto/disk string /dev/sda /dev/sdb
-
-# Next you need to specify the physical partitions that will be used.
-#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 } \
-# .
-
-# Last you need to specify how the previously defined partitions will be
-# used in the RAID setup. Remember to use the correct partition numbers
-# for logical partitions. RAID levels 0, 1, 5, 6 and 10 are supported;
-# devices are separated using "#".
-# Parameters are:
-# &lt;raidtype&gt; &lt;devcount&gt; &lt;sparecount&gt; &lt;fstype&gt; &lt;mountpoint&gt; \
-# &lt;devices&gt; &lt;sparedevices&gt;
-
-#d-i partman-auto-raid/recipe string \
-# 1 2 0 ext3 / \
-# /dev/sda1#/dev/sdb1 \
-# . \
-# 1 2 0 swap - \
-# /dev/sda5#/dev/sdb5 \
-# . \
-# 0 2 0 ext3 /home \
-# /dev/sda6#/dev/sdb6 \
-# .
-
-# For additional information see the file partman-auto-raid-recipe.txt
-# included in the 'debian-installer' package or available from D-I source
-# repository.
-
-# This makes partman automatically partition without confirmation.
-d-i partman-md/confirm boolean true
-d-i partman-partitioning/confirm_write_new_label boolean true
-d-i partman/choose_partition select finish
-d-i partman/confirm boolean true
-d-i partman/confirm_nooverwrite boolean true
-</screen></informalexample>
-
- </sect3>
-
- <sect3 id="preseed-partman-mount-styles">
- <title>Controlling how partitions are mounted</title>
-<para>
-
-Normally, filesystems are mounted using a universally unique identifier
-(UUID) as a key; this allows them to be mounted properly even if their
-device name changes. UUIDs are long and difficult to read, so, if you
-prefer, the installer can mount filesystems based on the traditional device
-names, or based on a label you assign. If you ask the installer to mount by
-label, any filesystems without a label will be mounted using a UUID instead.
-
-</para><para>
-
-Devices with stable names, such as LVM logical volumes, will continue to use
-their traditional names rather than UUIDs.
-
-</para>
-
-<warning><para>
-
-Traditional device names may change based on the order in which the kernel
-discovers devices at boot, which may cause the wrong filesystem to be
-mounted. Similarly, labels are likely to clash if you plug in a new disk or
-a USB drive, and if that happens your system's behaviour when started will
-be random.
-
-</para></warning>
-
-<informalexample role="example"><screen>
-# The default is to mount by UUID, but you can also choose "traditional" to
-# use traditional device names, or "label" to try filesystem labels before
-# falling back to UUIDs.
-#d-i partman/mount_style select uuid
-</screen></informalexample>
-
- </sect3>
- </sect2>
-
- <sect2 id="preseed-base-installer">
- <title>Base system installation</title>
-<para>
-
-There is actually not very much that can be preseeded for this stage of the
-installation. The only questions asked concern the installation of the kernel.
-
-</para>
-
-<informalexample role="example"><screen>
-# Configure APT to not install recommended packages by default. Use of this
-# option can result in an incomplete system and should only be used by very
-# experienced users.
-#d-i base-installer/install-recommends boolean false
-
-# Select the initramfs generator used to generate the initrd for 2.6 kernels.
-#d-i base-installer/kernel/linux/initramfs-generators string initramfs-tools
-
-# The kernel image (meta) package to be installed; "none" can be used if no
-# kernel is to be installed.
-#d-i base-installer/kernel/image string &kernelpackage;-2.6-486
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-apt">
- <title>Apt setup</title>
-<para>
-
-Setup of the <filename>/etc/apt/sources.list</filename> and basic configuration
-options is fully automated based on your installation method and answers to
-earlier questions. You can optionally add other (local) repositories.
-
-</para>
-
-<informalexample role="example"><screen>
-# You can choose to install non-free and contrib software.
-#d-i apt-setup/non-free boolean true
-#d-i apt-setup/contrib boolean true
-# Uncomment this if you don't want to use a network mirror.
-#d-i apt-setup/use_mirror boolean false
-# Select which update services to use; define the mirrors to be used.
-# Values shown below are the normal defaults.
-#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
-
-# Additional repositories, local[0-9] available
-#d-i apt-setup/local0/repository string \
-# http://local.server/debian stable main
-#d-i apt-setup/local0/comment string local server
-# Enable deb-src lines
-#d-i apt-setup/local0/source boolean true
-# URL to the public key of the local repository; you must provide a key or
-# apt will complain about the unauthenticated repository and so the
-# sources.list line will be left commented out
-#d-i apt-setup/local0/key string http://local.server/key
-
-# By default the installer requires that repositories be authenticated
-# using a known gpg key. This setting can be used to disable that
-# authentication. Warning: Insecure, not recommended.
-#d-i debian-installer/allow_unauthenticated boolean true
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-pkgsel">
- <title>Package selection</title>
-<para>
-
-You can choose to install any combination of tasks that are available.
-Available tasks as of this writing include:
-
-</para>
-
-<itemizedlist>
-<listitem><para>
- <userinput>standard</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>desktop</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>gnome-desktop</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>kde-desktop</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>web-server</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>print-server</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>dns-server</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>file-server</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>mail-server</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>sql-database</userinput>
-</para></listitem>
-<listitem><para>
- <userinput>laptop</userinput>
-</para></listitem>
-</itemizedlist>
-
-<para>
-
-You can also choose to install no tasks, and force the installation of a
-set of packages in some other way. We recommend always including the
-<userinput>standard</userinput> task.
-
-</para><para>
-
-If you want to install some individual packages in addition to packages
-installed by tasks, you can use the parameter
-<classname>pkgsel/include</classname>. The value of this parameter can be
-a list of packages separated by either commas or spaces, which allows it
-to be used easily on the kernel command line as well.
-
-</para>
-
-<informalexample role="example"><screen>
-#tasksel tasksel/first multiselect standard, web-server
-# If the desktop task is selected, install the kde and xfce desktops
-# instead of the default gnome desktop.
-#tasksel tasksel/desktop multiselect kde, xfce
-
-# Individual additional packages to install
-#d-i pkgsel/include string openssh-server build-essential
-# Whether to upgrade packages after debootstrap.
-# Allowed values: none, safe-upgrade, full-upgrade
-#d-i pkgsel/upgrade select none
-
-# Some versions of the installer can report back on what software you have
-# installed, and what software you use. The default is not to report back,
-# but sending reports helps the project determine what software is most
-# popular and include it on CDs.
-#popularity-contest popularity-contest/participate boolean false
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-bootloader">
- <title>Boot loader installation</title>
-
-<informalexample role="example"><screen>
-# 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
-
-# With a few exceptions for unusual partitioning setups, GRUB 2 is now the
-# default. If you need GRUB Legacy for some particular reason, then
-# uncomment this:
-#d-i grub-installer/grub2_instead_of_grub_legacy boolean false
-
-# 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]
-
-# Use the following option to add additional boot parameters for the
-# installed system (if supported by the bootloader installer).
-# Note: options passed to the installer will be added automatically.
-#d-i debian-installer/add-kernel-opts string nousb
-</screen></informalexample>
-
-<para>
-
-An MD5 hash for a password for <classname>grub</classname> can be generated
-using <command>grub-md5-crypt</command>, or using the command from the
-example in <xref linkend="preseed-account"/>.
-
-</para>
- </sect2>
-
- <sect2 id="preseed-finish">
- <title>Finishing up the installation</title>
-
-<informalexample role="example"><screen>
-# 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
-# This will power off the machine instead of just halting it.
-#d-i debian-installer/exit/poweroff boolean true
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-other">
- <title>Preseeding other packages</title>
-
-<informalexample role="example"><screen>
-# Depending on what software you choose to install, or if things go wrong
-# during the installation process, it's possible that other questions may
-# be asked. You can preseed those too, of course. To get a list of every
-# possible question that could be asked during an install, do an
-# installation, and then run these commands:
-# debconf-get-selections --installer > file
-# debconf-get-selections >> file
-</screen></informalexample>
-
- </sect2>
- </sect1>
-
-
- <sect1 id="preseed-advanced">
- <title>Advanced options</title>
-
- <sect2 id="preseed-hooks">
- <title>Running custom commands during the installation</title>
-<para>
-
-A very powerful and flexible option offered by the preconfiguration tools
-is the ability to run commands or scripts at certain points in the
-installation.
-
-</para>
-
-<informalexample role="example"><screen>
-# d-i preseeding is inherently not secure. Nothing in the installer checks
-# for attempts at buffer overflows or other exploits of the values of a
-# preconfiguration file like this one. Only use preconfiguration files from
-# trusted locations! To drive that home, and because it's generally useful,
-# here's a way to run any shell command you'd like inside the installer,
-# automatically.
-
-# This first command is run as early as possible, just after
-# preseeding is read.
-#d-i preseed/early_command string anna-install some-udeb
-# This command is run immediately before the partitioner starts. It may be
-# useful to apply dynamic partitioner preseeding that depends on the state
-# of the disks (which may not be visible when preseed/early_command runs).
-#d-i partman/early_command \
-# string debconf-set partman-auto/disk "$(list-devices disk | head -n1)"
-# This command is run just before the install finishes, but when there is
-# still a usable /target directory. You can chroot to /target and use it
-# directly, or use the apt-install and in-target commands to easily install
-# packages and run commands in the target system.
-#d-i preseed/late_command string apt-install zsh; in-target chsh -s /bin/zsh
-</screen></informalexample>
-
- </sect2>
-
- <sect2 id="preseed-seenflag">
- <title>Using preseeding to change default values</title>
-<para>
-
-It is possible to use preseeding to change the default answer for a
-question, but still have the question asked. To do this the
-<firstterm>seen</firstterm> flag must be reset to <quote>false</quote> after
-setting the value for a question.
-
-<informalexample><screen>
-d-i foo/bar string value
-d-i foo/bar seen false
-</screen></informalexample>
-
-The same effect can be achieved for <emphasis>all</emphasis> questions by
-setting the parameter <classname>preseed/interactive=true</classname> at
-the boot prompt. This can also be useful for testing or debugging your
-preconfiguration file.
-
-</para><para>
-
-Note that the <quote>d-i</quote> owner should only be used for variables
-used in the installer itself. For variables belonging to packages installed
-on the target system, you should use the name of that package instead. See
-the footnote to <xref linkend="preseed-bootparms"/>.
-
-</para><para>
-
-If you are preseeding using boot parameters, you can make the installer ask
-the corresponding question by using the <quote>?=</quote> operator, i.e.
-<userinput><replaceable>foo</replaceable>/<replaceable>bar</replaceable>?=<replaceable>value</replaceable></userinput>
-(or <userinput><replaceable>owner</replaceable>:<replaceable>foo/bar</replaceable>?=<replaceable>value</replaceable></userinput>).
-This will of course only have effect for parameters that correspond to
-questions that are actually displayed during an installation and not for
-<quote>internal</quote> parameters.
-
-</para>
- </sect2>
-
- <sect2 id="preseed-chainload">
- <title>Chainloading preconfiguration files</title>
-<para>
-
-It is possible to include other preconfiguration files from a preconfiguration
-file. Any settings in those files will override pre-existing settings from
-files loaded earlier. This makes it possible to put, for example, general
-networking settings for your location in one file and more specific
-settings for certain configurations in other files.
-
-</para>
-
-<informalexample><screen>
-# More than one file can be listed, separated by spaces; all will be
-# loaded. The included files can have preseed/include directives of their
-# own as well. Note that if the filenames are relative, they are taken from
-# the same directory as the preconfiguration file that includes them.
-#d-i preseed/include string x.cfg
-
-# The installer can optionally verify checksums of preconfiguration files
-# before using them. Currently only md5sums are supported, list the md5sums
-# in the same order as the list of files to include.
-#d-i preseed/include/checksum string 5da499872becccfeda2c4872f9171c3d
-
-# More flexibly, this runs a shell command and if it outputs the names of
-# preconfiguration files, includes those files.
-#d-i preseed/include_command \
-# string if [ "`hostname`" = bob ]; then echo bob.cfg; fi
-
-# Most flexibly of all, this downloads a program and runs it. The program
-# can use commands such as debconf-set to manipulate the debconf database.
-# More than one script can be listed, separated by spaces.
-# Note that if the filenames are relative, they are taken from the same
-# directory as the preconfiguration file that runs them.
-#d-i preseed/run string foo.sh
-</screen></informalexample>
-
-<para>
-
-It is also possible to chainload from the initrd or file preseeding phase,
-into network preseeding by setting preseed/url in the earlier files.
-This will cause network preseeding to be performed when the network comes
-up. You need to be careful when doing this, since there will be two
-distinct runs at preseeding, meaning for example that you get another
-chance to run the preseed/early command, the second one happening after the
-network comes up.
-
-</para>
-
- </sect2>
- </sect1>
-</appendix>