6 grml-debootstrap - wrapper around debootstrap for installing plain Debian via grml
10 grml-debootstrap [ _options_ ]
12 image:images/screenshot.png[Screenshot]
17 grml-debootstrap is a wrapper suite around debootstrap (and cdebootstrap if you
18 want) for installing a plain Debian system via grml very fast and easy.
20 All you have to do is adjust a few variables in configuration file
21 /etc/debootstrap/config (or specify some variables via commandline) and invoke
22 grml-debootstrap without any further options then.
24 A plain and base Debian system will be installed on the given device (or
25 directory) then. Customization of this process is possible as well.
27 CAUTION: The grml team does not take responsibility for loss of any data!
29 Options and environment variables
30 ---------------------------------
32 *--arch* <_architecture_>::
34 Architecture you want to bootstrap. Currently only i386 is supported.
35 Defaults to the architecture that is currently running on your system. If
36 you're running an amd64 system and want to deploy a i386 system use this option.
37 Note: deploying amd64 from a i386 system won't work.
39 *--bootappend* <_appendline for the kernel_>::
41 Specify appendline for the kernel.
44 *-c*, *--config* <_file_>::
46 Use specified configuration file, defaults to /etc/debootstrap/config.
48 *--chroot-scripts* <_directory_>::
50 Execute chroot scripts from specified directory. This allows customisation
51 of the chroot setup, the executable script(s) present in the given directory
52 are executed at the end of the chroot procedure.
53 Default directory: /etc/debootstrap/chroot-scripts/
55 *-d*, *--confdir* <_path_>::
57 Place of configuration files for debootstrap, defaults to /etc/debootstrap.
59 *--debconf* <_file_>::
61 Use specified file for preseeding Debian packages instead of using
62 the default <confdir>/debconf-selections.
64 *--debopt* <_params_>::
66 Extra parameters passed to the debootstrap command.
68 *--filesystem* <_filesystem_>::
70 Filesystem that should be created when installing to a partition.
71 If unset defaults to ext3. Valid values are all filesystems that
72 can be created through mkfs.<filesystem>.
76 Skip user acknowledgement and do not prompt for user input.
80 Device where grub should be installed to. Note that only the MBR (master
81 boot record) can be used (/dev/sda, /dev/sdb,...). Partitions (like
82 /dev/sda1, /dev/sdb2,...) are NOT supported because grub2 doesn't support
83 installation into the PBR (partition boot record) anymore. Usage example:
84 '--grub /dev/sda'. Note: just do not set this option to avoid installation
89 Show summary of options and exit.
91 *--hostname* <_hostname_>::
93 Use specified hostname instead of the default (being 'grml').
95 *-i*, *--iso* <_/mntpoint_>::
97 Specify mountpoint where you have a Debian ISO mounted loopback.
98 Using this option instead of the mirror option gives you the possibility
99 to install the base-system without network access. Make sure you
100 mounted the according Debian-ISO to the given <_/mntpoint_>. See section
101 'Usage examples' for a demonstration.
105 Do not overwrite user provided /etc/apt/sources.list.
107 *-m*, *--mirror* <_URL_>::
109 Specify mirror which should be used for apt-get/aptitude.
110 Corresponding with configuration variable MIRROR.
114 Skip debootstrap, only do configuration to the target.
118 Skip installation of packages defined in /etc/debootstrap/packages.
122 Do not prompt for the root password. Note: Use the '--password' option if
123 you want to set the root password during an automatic installation but don't
124 want to use the interactive dialog.
128 Do not download and check signatures for retrieved Release files.
130 *-p*, *--mntpoint* <_/mntpoint_>::
132 Specify mountpoint that should be used for mounting the target system.
133 Corresponding with configuration variable MNTPOINT.
134 Note: this option has no effect if option -t is given and represents a
137 *--packages* <_file_>::
139 Use specified file as list for packages that should be installed instead of
140 the default package list file <confdir>/packages.
142 *--password* <_password_>::
144 Use specified password as password for user root. Use with caution, as your
145 commandline might be visible in the process list and the shell history.
146 It's meant for automatic installation only.
148 *-r*, *--release* <_releasename_>::
150 Specify release of new Debian system. Supported releases names: lenny,
151 squeeze, wheezy (note: requires current version of debootstrap) and sid.
152 Corresponding with configuration variable RELEASE.
154 *--pre-scripts* <_directory_>::
156 Execute scripts from specified directory before executing the chroot
157 script. This allows customisation of the system before the chroot has
158 been set up. The environment variable $MNTPOINT is available inside the
159 scripts for direct access of the chroot.
160 Default directory: /etc/debootstrap/pre-scripts/
162 *--scripts* <_directory_>::
164 Execute scripts from specified directory. This allows customisation of
165 the system after the chroot has been set up. The environment variable
166 $MNTPOINT is available inside the scripts for direct access of the chroot.
167 Default directory: /etc/debootstrap/scripts/
169 *-t*, *--target* <_target_>::
170 Target partition (/dev/...) or directory (anything else without /dev at the
171 beginning). To install grub using *--grub* make sure to use a _device_
172 instead of a directory as _target_ (installation of grub as bootloader when
173 using directories is NOT supported).
179 Set up a Virtual Machine instead of installing to a partition or directory.
180 This allows deployment of a Virtual Machine. The options needs to be
181 combined with the --target option.
182 Usage example: --vmfile --target /mnt/sda1/qemu.img
184 *--vmsize* <_size_>::
185 Use specified size for size of Virtual Machine disk file. If not specified it
186 defaults to 2G (being 2GB). Syntax as supported by qemu-img (see manpage
187 qemu-img(1) for details.
188 Usage example: --vmsize 3G
191 Show version of program and exit.
193 WARNING: the commandline parsing of grml-debootstrap does not validate the provided
194 arguments for the commandline options. Please be careful and check docs and
195 /etc/debootstrap/config for further information.
200 grml-debootstrap --target /dev/sda1 --grub /dev/sda
202 Install default Debian release (stable/squeeze) on /dev/sda1 and install bootmanager
203 Grub in MBR (master boot record) of /dev/sda and use /dev/sda1 as system partition.
205 grml-debootstrap --target /dev/sda6 --grub /dev/sda --release sid
207 Install Debian unstable/sid on /dev/sda6, install bootmanager Grub in MBR
208 (master boot record) of /dev/sda and use /dev/sda6 as system partition.
210 mount /dev/sda1 /data/chroot
211 grml-debootstrap --target /data/chroot
213 Install default Debian release (stable/squeeze) in directory /data/chroot (without
216 grml-debootstrap --target /dev/sda3 --grub /dev/sda --mirror ftp://ftp.tugraz.at/mirror/debian
218 Install default debian release (stable/squeeze) in a Virtual Machine file with
219 3GB disk size (including Grub as bootmanager in MBR of the virtual disk file):
221 mount /dev/sda1 /mnt/sda1
222 grml-debootstrap --vmfile --vmsize 3G --target /mnt/sda1/qemu.img
224 Install default Debian release (stable/squeeze) on /dev/sda3 and install bootmanager
225 Grub in MBR (master boot record) of /dev/sda and use /dev/sda3 as system partition.
226 Use specified mirror instead of the default (ftp://ftp.debian.de/debian) one.
228 mount -o loop /mnt/sda6/debian-40r0-i386-CD-1.iso /mnt/iso
229 grml-debootstrap --target /dev/sda1 --grub /dev/sda --iso file:/mnt/iso/debian/
231 Install Debian stable/squeeze on /dev/sda1 using the loopback mounted Debian-ISO
232 for the base-system and install bootmanager Grub in MBR (master boot record) of
233 /dev/sda and use /dev/sda1 as system partition. Please notice, that the chroot
234 system requires network access for all packages which are not part of the
240 /etc/debootstrap/config
242 Main configuration file. You have to adjust it according to your needs
243 if you want to execute grml-debootstrap in the non-interactive mode without
244 any special command line arguments.
246 /etc/debootstrap/chroot-script
248 The script executed within the new Debian system as soon as the main system
249 has been installed via [c]debootstrap.
251 /etc/debootstrap/locale.gen
253 Defines the default locales used for generating locales via locale-gen.
255 /etc/debootstrap/packages
257 Defines the software packages which should be installed in the new
258 Debian system by default.
260 /etc/debootstrap/extrapackages
262 Debian Packages dropped here will be installed into the new Debian system by
263 default (Controlvariable: EXTRAPACKAGES)
265 /etc/debootstrap/stages/
267 The default directory for storing information about executed stages. Every
268 single function of grml-debootstrap will write 'done' to the stages directory
269 into a file named as the function itself if it has been executed successfully.
270 You can adjust the location of the directory via configuration variable STAGES
271 via /etc/debootstrap/config. Please notice that you have to remove the stages
272 directory on your own if you want to re-execute grml-debootstrap after running it
273 successfully once. This should avoid recurrent execution by error of
274 grml-debootstrap (which might delete present data).
279 You can control execution of grml-debootstrap via adjusting
280 /etc/debootstrap/config for some main stuff or via setting some selected
281 variables via commandline. The packages which should be installed in the new
282 Debian system can be defined via the file /etc/debootstrap/packages. If you
283 want to put existing files to the new Debian system you can place them into the
284 (by default non-existing) directories boot, etc, share, usr and var in
285 /etc/debootstrap/. Every existing directory will be copied to the new Debian
286 system then. If you want to install additional packages that are not available
287 via the grml or debian mirror drop them into /etc/debootstrap/extrapackages and
288 make sure that EXTRAPACKAGES is set to "yes".
290 Automatic installation
291 ----------------------
293 If environment variable AUTOINSTALL is set grml-debootstrap can be executed in a
294 full automatic mode. While this mode isn't really useful for interactive
295 execution (just configure /etc/debootstrap/configure or specify the relevant
296 variables on the commandline instead) it is meant for use via bootoption
297 debian2hd. The bootoption debian2hd (more precise: the kernelname on bootprompt)
298 supports the following bootoptions (they correspond with the commandline options
303 The target partition/directory of the new Debian system. Usage example:
308 Where do you want to install grub to? Usage example: grub=/dev/sda
312 Specify release of new Debian system. Defaults to Debian squeeze. Supported
313 relases: lenny, squeeze, wheezy and sid. Usage example: release=sid
317 Specify mirror which should be used for apt-get/aptitude instead
318 of the default one (ftp://ftp.debian.de/debian).
319 Usage example: mirror=ftp://ftp.tugraz.at/mirror/debian
323 Set password of user root without prompting for it but set it to the given
324 argument. Usage example: password=AiTh5ahn
326 Usage example for automatic installation:
327 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
329 debian2hd target=/dev/sda1 grub=/dev/sda mirror=ftp://ftp.tugraz.at/mirror/debian password=foobar
331 You have to enter this commandline at the bootprompt of grml. Please make sure
332 that /dev/sda1 is the partition where you really want to install your new Debian
336 Automatic installation within booting process is done in grml-autoconfig via
337 setting environment variable AUTOINSTALL and creation of
338 /usr/bin/grml-debootstrap_noninteractive with the available and relevant
339 bootoptions for grml-debootstrap.
344 include::releasetable.txt[]
348 ================================================================================
349 [1] Please notice that Etch is the current old-stable within Debian.
350 grml-debootstrap can handle the release but you really should not use Etch
351 anymore unless you really know what you are doing. Choose Lenny or
353 ================================================================================
357 ================================================================================
358 When installing lenny to a new mdraid, grml-debootstrap will use md metadata
359 format version 0.90. This limits the device to a maximum size of 2TB, but has
360 the advantage of grub-legacy actually being able to boot from it.
361 ================================================================================
366 Probably. Please send bugreports to Michael Prokop <mika@grml.org>.
371 debootstrap (8), cdebootstrap (1).
375 Michael Prokop <mika@grml.org>