+<?xml version="1.0" encoding="UTF-8"?>\r
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"\r
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">\r
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">\r
<head>\r
<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=UTF-8" />\r
-<meta name="generator" content="AsciiDoc 8.6.9" />\r
+<meta name="generator" content="AsciiDoc 8.6.10" />\r
<title>grml-debootstrap(8)</title>\r
<style type="text/css">\r
/* Shared CSS for AsciiDoc xhtml11 and html5 backends */\r
<div class="sect1">\r
<h2 id="_introduction">Introduction</h2>\r
<div class="sectionbody">\r
-<div class="paragraph"><p>grml-debootstrap is a wrapper suite around debootstrap (and cdebootstrap if you\r
+<div class="paragraph"><p>grml-debootstrap is a wrapper suite around debootstrap (and cdebootstrap and mmdebstrap if you\r
want) for installing a plain Debian system very fast and easy.</p></div>\r
<div class="paragraph"><p>All you have to do is adjust a few variables in the configuration file\r
/etc/debootstrap/config or specify some command line options and invoke\r
grml-debootstrap. If invoked without any configuration modifications or command\r
-line options a dialog based frontend will be available to control some basic\r
+line options a dialog based front end will be available to control some basic\r
configuration options.</p></div>\r
<div class="paragraph"><p>A plain and base Debian system will be installed on the given device, directory\r
or virtual image file then. Customization of this process is possible as well.</p></div>\r
</dt>\r
<dd>\r
<p>\r
- Enable Debian’s Backports repository (<a href="http://backports.debian.org/">http://backports.debian.org/</a>) via the\r
+ Enable Debian’s Backports repository via the\r
/etc/apt/sources.list.d/backports.list configuration file. This provides the\r
option to install Debian packages from Debian’s backports repository.\r
</p>\r
</p>\r
</dd>\r
<dt class="hdlist1">\r
+<strong>--defaultinterfaces</strong>\r
+</dt>\r
+<dd>\r
+<p>\r
+ Install a default /etc/network/interfaces file (enabling DHCP for all local\r
+ Ethernet, WLAN and WWAN interfaces using predictable network interface names\r
+ and using eth0 as traditional interface name for backward compatibility)\r
+ instead of taking over config from host system.\r
+ This option is automatically enabled when using --vm or --vmfile.\r
+</p>\r
+</dd>\r
+<dt class="hdlist1">\r
<strong>--efi</strong> <em>device</em>\r
</dt>\r
<dd>\r
<dd>\r
<p>\r
Do not copy /etc/network/interfaces from host system to the target.\r
- This option is automatically enabled when using --vm or --vmfile.\r
</p>\r
</dd>\r
<dt class="hdlist1">\r
<dd>\r
<p>\r
Specify release of new Debian system. Supported releases names: lenny,\r
- squeeze, wheezy, jessie, stretch (note: requires a recent version of debootstrap)\r
- and sid. Corresponding with configuration variable RELEASE.\r
+ squeeze, wheezy, jessie, stretch, buster, bullseye and sid. Corresponding with configuration\r
+ variable RELEASE. Default release: buster\r
</p>\r
</dd>\r
<dt class="hdlist1">\r
</p>\r
</dd>\r
<dt class="hdlist1">\r
+<strong>--sshcopyid</strong>\r
+</dt>\r
+<dd>\r
+<p>\r
+ Use locally available public keys to authorise root login on the target system.\r
+ Similar to ssh-copy-id(1) (without the -i option) it checks if <code>ssh-add -L</code>\r
+ provides any output, and if so those keys are appended to\r
+ <em>/root/.ssh/authorized_keys</em> (creating the file and directory (with mode 0700)).\r
+</p>\r
+</dd>\r
+<dt class="hdlist1">\r
<strong>-t</strong>, <strong>--target</strong> <em>target</em>\r
</dt>\r
<dd>\r
partitioned.\r
This allows deployment of a Virtual Machine. The options needs to be\r
combined with the --target option.\r
+ This option automatically enables the --defaultinterfaces option.\r
Usage example: --vm --target /dev/mapper/your-vm-disk\r
</p>\r
</dd>\r
partition/block device or directory. This allows deployment of a Virtual\r
Machine. The options needs to be combined with the --target option\r
(<em>qemu-img create -f raw …</em> is executed on the specified target).\r
+ This option automatically enables the --defaultinterfaces option.\r
Usage example: --vmfile --target /mnt/sda1/qemu.img\r
</p>\r
</dd>\r
</div>\r
</div>\r
<div class="sect1">\r
+<h2 id="_networking">Networking</h2>\r
+<div class="sectionbody">\r
+<div class="paragraph"><p>By default (that is, if none of the options <strong>--nointerfaces</strong>,\r
+<strong>--defaultinterfaces</strong>, <strong>--vmfile</strong> or <strong>--vm</strong> are given) /etc/network/interfaces\r
+will be copied from the host to the target system.</p></div>\r
+</div>\r
+</div>\r
+<div class="sect1">\r
<h2 id="_usage_examples">Usage examples</h2>\r
<div class="sectionbody">\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>grml-debootstrap --target /dev/sda1 --grub /dev/sda</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install default Debian release (jessie) on /dev/sda1 and install bootmanager\r
-Grub in MBR (master boot record) of /dev/sda and use /dev/sda1 as system partition.</p></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) on /dev/sda1 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.</p></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><code>grml-debootstrap --release stretch --target /dev/sda1 --grub /dev/sda --hostname debian01 --password changeme</code></pre>\r
+</div></div>\r
+<div class="paragraph"><p>Install Debian release stretch on /dev/sda1 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.\r
+Set hostname to <em>debian01</em> and password for user root to <em>changeme</em>.</p></div>\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>grml-debootstrap --target /dev/sda6 --grub /dev/sda --release sid</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install Debian unstable/sid on /dev/sda6, install bootmanager Grub in MBR\r
-(master boot record) of /dev/sda and use /dev/sda6 as system partition.</p></div>\r
+<div class="paragraph"><p>Install Debian unstable/sid on /dev/sda6 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.</p></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><code>DEBOOTSTRAP=mmdebstrap grml-debootstrap --target /dev/sda1 --grub /dev/sda</code></pre>\r
+</div></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) on /dev/sda1 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.\r
+Use mmdebstrap instead of default debootstrap tool for bootstrapping.</p></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><code>grml-debootstrap --target /dev/mapper/vg0-rootfs --grub /dev/sda</code></pre>\r
+</div></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) on LVM device /dev/mapper/vg0-rootfs and install bootmanager GRUB in MBR (master boot record) of /dev/sda.</p></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><code>grml-debootstrap --efi /dev/sda1 --target /dev/sda2 --grub /dev/sda</code></pre>\r
+</div></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) on /dev/sda2 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.\r
+Use /dev/sda1 as EFI partition (requires EFI support in booted system).</p></div>\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>mount /dev/sda1 /data/chroot\r
grml-debootstrap --target /data/chroot</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install default Debian release (jessie) in directory /data/chroot (without\r
-any bootloader).</p></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) in directory /data/chroot (without any bootloader).</p></div>\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>grml-debootstrap --target /dev/sda3 --grub /dev/sda --mirror ftp://ftp.tugraz.at/mirror/debian</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install default Debian release (jessie) on /dev/sda3 and install bootmanager\r
-Grub in MBR (master boot record) of /dev/sda and use /dev/sda3 as system partition.\r
-Use specified mirror instead of the default (<a href="http://httpredir.debian.org/debian">http://httpredir.debian.org/debian</a>) one.</p></div>\r
+<div class="paragraph"><p>Install default Debian release (buster) on /dev/sda3 and install bootmanager GRUB in MBR (master boot record) of /dev/sda.\r
+Use specified mirror instead of the default (<a href="http://deb.debian.org/debian">http://deb.debian.org/debian</a>) one.</p></div>\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>mount /dev/sda1 /mnt/sda1\r
grml-debootstrap --vmfile --vmsize 3G --target /mnt/sda1/qemu.img</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install default debian release (jessie) in a Virtual Machine file with\r
-3GB disk size (including Grub as bootmanager in MBR of the virtual disk file):</p></div>\r
+<div class="paragraph"><p>Install default debian release (buster) in a Virtual Machine file with 3GB disk size (including GRUB as bootmanager in MBR of the virtual disk file):</p></div>\r
<div class="literalblock">\r
<div class="content">\r
-<pre><code>mount -o loop /mnt/sda6/debian-CD-1.iso /mnt/iso\r
-grml-debootstrap --target /dev/sda1 --grub /dev/sda --iso file:/mnt/iso/debian/</code></pre>\r
+<pre><code>mount -o loop ./debian-CD-1.iso /media/cdrom\r
+grml-debootstrap --target /dev/sda1 --grub /dev/sda --iso /media/cdrom</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Install Debian on /dev/sda1 using the loopback mounted Debian-ISO\r
-for the base-system and install bootmanager Grub in MBR (master boot record) of\r
-/dev/sda and use /dev/sda1 as system partition. Please notice, that the chroot\r
-system requires network access for all packages which are not part of the\r
-ISO.</p></div>\r
+<div class="paragraph"><p>Install Debian on /dev/sda1 using the loopback mounted Debian-ISO for the base-system and install bootmanager GRUB in MBR (master boot record) of /dev/sda.\r
+Please notice, that the chroot system requires network access for all packages which are not part of the ISO.</p></div>\r
</div>\r
</div>\r
<div class="sect1">\r
<div class="content">\r
<pre><code>release=...</code></pre>\r
</div></div>\r
-<div class="paragraph"><p>Specify release of new Debian system. Defaults to Debian jessie. Supported\r
-releases: lenny, squeeze, wheezy, jessie, stretch and sid. Usage example: release=sid</p></div>\r
+<div class="paragraph"><p>Specify release of new Debian system. Defaults to Debian buster. Supported\r
+releases: lenny, squeeze, wheezy, jessie, stretch, buster, bullseye and sid. Usage example: release=stretch</p></div>\r
<div class="literalblock">\r
<div class="content">\r
<pre><code>mirror=...</code></pre>\r
</div></div>\r
<div class="paragraph"><p>Specify mirror which should be used for apt-get/aptitude instead\r
-of the default one (<a href="http://httpredir.debian.org/debian">http://httpredir.debian.org/debian</a>).\r
+of the default one (<a href="http://deb.debian.org/debian">http://deb.debian.org/debian</a>).\r
Usage example: mirror=ftp://ftp.tugraz.at/mirror/debian</p></div>\r
<div class="literalblock">\r
<div class="content">\r
</tr>\r
<tr>\r
<td align="left" valign="top"><p class="table">squeeze</p></td>\r
-<td align="left" valign="top"><p class="table">works</p></td>\r
+<td align="left" valign="top"><p class="table">works[1]</p></td>\r
</tr>\r
<tr>\r
<td align="left" valign="top"><p class="table">wheezy</p></td>\r
-<td align="left" valign="top"><p class="table">works</p></td>\r
+<td align="left" valign="top"><p class="table">works[1]</p></td>\r
</tr>\r
<tr>\r
<td align="left" valign="top"><p class="table">jessie</p></td>\r
<td align="left" valign="top"><p class="table">works</p></td>\r
</tr>\r
<tr>\r
+<td align="left" valign="top"><p class="table">buster</p></td>\r
+<td align="left" valign="top"><p class="table">works</p></td>\r
+</tr>\r
+<tr>\r
+<td align="left" valign="top"><p class="table">bullseye</p></td>\r
+<td align="left" valign="top"><p class="table">works[2]</p></td>\r
+</tr>\r
+<tr>\r
<td align="left" valign="top"><p class="table">sid</p></td>\r
<td align="left" valign="top"><p class="table">works[2]</p></td>\r
</tr>\r
<img src="./images/icons/note.png" alt="Note" />\r
</td>\r
<td class="content">\r
-<div class="title">lenny release</div>\r
-<div class="paragraph"><p>[1] Please notice that lenny is an unsupported release within Debian nowadays.\r
-grml-debootstrap can handle the release but you really should not use lenny\r
-anymore unless you really know what you are doing. Choose Debian 8.0 (jessie) or\r
-something newer instead.</p></div>\r
-<div class="paragraph"><p>Notice that you need to specify a mirror providing the lenny release, the\r
-default (<a href="http://httpredir.debian.org/debian">http://httpredir.debian.org/debian</a>) doesn’t provide it any longer nowadays.\r
+<div class="title">lenny/squeeze/wheezy release</div>\r
+<div class="paragraph"><p>[1] Please notice that releases like lenny, squeeze and wheezy are unsupported releases within Debian nowadays.\r
+grml-debootstrap can handle the releases but you really should not use them\r
+anymore unless you really know what you are doing.\r
+Choose the current Debian stable version instead.\r
+See <a href="https://wiki.debian.org/DebianReleases">https://wiki.debian.org/DebianReleases</a> for the list of supported releases.</p></div>\r
+<div class="paragraph"><p>Notice that you need to specify a mirror providing the lenny and squeeze releases, the\r
+default (<a href="http://deb.debian.org/debian">http://deb.debian.org/debian</a>) doesn’t provide it any longer nowadays.\r
Set the mirror to e.g. <a href="http://archive.debian.org/debian/">http://archive.debian.org/debian/</a> if you don’t have\r
-your own lenny mirror.</p></div>\r
+your own lenny/squeeze mirror.</p></div>\r
+<div class="paragraph"><p>Older releases might also fail to install when running on top of recent kernel versions,\r
+throwing segfaults during debootstrap. This can be identified by the following messages inside kernel log (check with <em>dmesg</em>):</p></div>\r
+<div class="literalblock">\r
+<div class="content">\r
+<pre><code>dpkg[...] vsyscall attempted with vsyscall=none ip:[...]\r
+dpkg[...]: segfault at [...]</code></pre>\r
+</div></div>\r
+<div class="paragraph"><p>To work around this issue boot your system with the kernel boot option <em>vsyscall=emulate</em>.</p></div>\r
<div class="paragraph"><p>You also need to specify a filesystem that’s supported by lenny, e.g.\r
<em>--filesystem ext3</em> since grml-debootstrap’s current default (ext4) isn’t\r
supported by lenny.</p></div>\r
<div class="sect1">\r
<h2 id="_bugs">Bugs</h2>\r
<div class="sectionbody">\r
-<div class="paragraph"><p>Probably. Please send bugreports to Michael Prokop <<a href="mailto:mika@grml.org">mika@grml.org</a>>.</p></div>\r
+<div class="paragraph"><p>Please report bugs towards <a href="https://github.com/grml/grml-debootstrap/issues">https://github.com/grml/grml-debootstrap/issues</a></p></div>\r
</div>\r
</div>\r
<div class="sect1">\r
<h2 id="_see_also">See also</h2>\r
<div class="sectionbody">\r
-<div class="paragraph"><p>debootstrap (8), cdebootstrap (1).</p></div>\r
+<div class="paragraph"><p>debootstrap (8), cdebootstrap (1), mmdebstrap(1).</p></div>\r
</div>\r
</div>\r
<div class="sect1">\r
<div id="footer">\r
<div id="footer-text">\r
Last updated\r
- 2016-11-17 12:09:18 CET\r
+ 2019-12-13 13:06:15 UTC\r
</div>\r
</div>\r
</body>\r