Dieser Artikel ist größtenteils für alle Ubuntu-Versionen gültig.
Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.
In dieser Anleitung wird beschrieben, wie man Ubuntu von einer bestehenden Linux-Installation aus installieren kann.
Vor der Installation von Ubuntu mittels debootstrap müssen bereits die gewünschten Partitionen für die Installation angelegt werden, beispielsweise mit GParted.
/dev/sdXY muss im Folgenden immer durch die tatsächliche Bezeichnung der Partition ersetzt werden! Wird btrfs verwendet, müssen entsprechend Subvolumes verwendet werden.
Zwei Partitionen werden benötigt:
In Distributionen, die auf Debian oder Ubuntu basieren, ist debootstrap oft bereits in den jeweiligen Paketquellen verfügbar.
Ist dies nicht der Fall, muss manuell installiert werden, ansonsten kann mit dem Einhängen der Zielpartition fortgefahren werden.
Zur manuellen Installation zunächst ein Arbeitsverzeichnis anlegen und in dieses wechseln:
mkdir work cd work
Danach debootstrap herunterladen und im Arbeitsverzeichnis entpacken. Die jeweils aktuelle Version von debootstrap kann hier heruntergeladen werden.
Jetzt wird das Paket mit ar entpackt:
ar -xf debootstrap_0.X.X_all.deb
Hierbei ist 0.X.X
durch die aktuelle Versionsnummer zu ersetzen.
Die benötigten Dateien liegen im Verzeichnis data.tar.gz und müssen nun ins Wurzelverzeichnis entpackt werden:
sudo tar -xf data.tar.gz -C /
Durch das Entpacken ins Wurzelverzeichnis können unter Umständen Systemdateien überschrieben werden.
Jetzt muss die Partition, auf der Ubuntu installiert werden soll, eingehangen werden:
sudo mount /dev/sdXY /mnt
Danach kann das Grundsystem mittels debootstrap auf die Zielpartition installiert werden:
sudo debootstrap --variant=minbase --arch=ARCHITEKTUR CODENAME /mnt http://de.archive.ubuntu.com/ubuntu/
Also für Precise Pangolin in der 64-Bit-Architektur:
sudo debootstrap --variant=minbase --arch=amd64 precise /mnt http://de.archive.ubuntu.com/ubuntu
Weitere mögliche Parameter für arch sind: alpha
, arm
, armel
, hppa
, i386
, ia64
, m68k
, mips
, mipsel
, powerpc
, s390
und sparc
.
Die im oben angegebenen Befehl verwendete Option --variant=minbase
installiert nur ein sehr rudimentäres System, welchem unter Umständen für die Arbeit wichtige Programme fehlen (z.B. sudo, ping, route, ifconfig etc.).
Wer sich die Arbeit des manuellen Installierens dieser Pakete hinterher sparen möchte, der lässt die Option --variant
ganz weg. Hierdurch wird ein vollwertiges Kommandozeilensystem installiert.
Während ein 32-Bit-System auch von einem 64-Bit-System aus installiert werden kann, ist dies umgekehrt nicht möglich!
Nun müssen die Verzeichnisse eingebunden werden, die für ein chroot notwendig sind:
sudo mount -o bind /dev /mnt/dev sudo mount -o bind /dev/pts /mnt/dev/pts sudo mount -t sysfs /sys /mnt/sys sudo mount -t proc /proc /mnt/proc sudo cp /proc/mounts /mnt/etc/mtab
Um auch die Internetverbindung weiterzureichen wird noch
sudo cp /etc/resolv.conf /mnt/etc/resolv.conf
benötigt. Danach kann mittels
sudo chroot /mnt
in das installierte Grundsystem gewechselt werden.
Die entsprechende Zeichentabelle kompilieren, sodass die locale-Funktion darauf zugreifen kann:
localedef -i de_DE -c -f UTF-8 de_DE.UTF-8
Dieser Schritt ist nicht zwingend notwendig.
Dem Grundsystem fehlt noch das Kernel-Image. Dieses wird per
apt-get install linux-image-generic
nachinstalliert. Der Bootloader GRUB 2 wird dabei mitinstalliert. Ist dies nicht gewünscht, kann bei der Installation die Ubuntu-Systempartition anstatt des Master Boot Records der Festplatte ausgewählt werden.
Nach einem Neustart ist das Linux-System, von welchem debootstrap gestartet wurde, nicht in der Bootauswahl! Dazu muss die Installation erst abgeschlossen werden.
Nun wird ein Editor der Wahl zum Anpassen der Konfigurationsdateien installiert. Der Einfachkeit halber wird hier beispielhaft Nano genannt, natürlich kann hier auch Vim (oder jede andere Kommandozeilen-Editor) verwendet werden:
apt-get install nano
Als nächster Schritt muss noch eine fstab für das neuinstallierte System angelegt werden:
nano /etc/fstab
Dort werden die entsprechenden Daten eingesetzt.
Die UUID-Werte müssen im Folgenden immer durch die tatsächlichen Bezeichnung der Partition ersetzt werden!
Die /etc/fstab hat nun folgendes Muster:
UUID=18055918-6045-42e9-9492-66e3fd29c199 swap swap defaults 0 0 UUID=69b5fb9c-774d-4d35-82f2-6a17faa446a1 / ext4 defaults 0 1 UUID=f28de325-683b-46e1-b3b5-e5d999696fff /home ext4 defaults 0 1
Da für die abschließende Konfiguration noch Pakete installiert werden müssen, die das Starten von Diensten über Upstart benötigen, müssen diese im chroot temporär deaktiviert werden:
dpkg-divert --local --rename --add /sbin/initctl ln -s /bin/true /sbin/initctl
Die Dienste müssen abschließend wieder startbar gemacht werden.
Im nächsten Schritt werden die Paketquellen eingetragen. Diese können dem Artikel sources.list entnommen werden.
Nach der Änderung müssen die Paketquellen noch mittels
apt-get update
neu eingelesen werden.
Anschließend können beliebige Pakete aus den Quellen installiert werden, ein Standard-Ubuntu über
apt-get install ubuntu-desktop
Es fehlt auch noch ein Benutzerkonto, welches durch
adduser BENUTZERNAME
angelegt werden kann. Wer sein Homeverzeichnis mit ecryptfs verschlüsseln möchte, installiert ecryptfs-utils und nutzt alternativ:
adduser --encrypt-home BENUTZERNAME
Anschließend den Benutzer noch in die notwendigen Gruppen eintragen. Die standardmäßigen Gruppenzugehörigkeiten können unter Benutzer und Gruppen für die jeweiligen Ubuntuversionen eingesehen werden.
Für Precise Pangolin kann folgender Befehl verwendet werden:
usermod -aG adm,cdrom,sudo,plugdev,lpadmin BENUTZERNAME
Das System hat noch keinen hostname. Wie dieser angelegt werden kann, ist dem Artikel Rechnername zu entnehmen.
Nun werden vor dem Neustart die Dienste wieder startbar gemacht:
rm /sbin/initctl dpkg-divert --local --rename --remove /sbin/initctl
Falls Ubuntu nicht den Hauptbootloader stellen soll, reicht es, den Bootloader im und vom entsprechenden (Haupt)System zu aktualisieren.
Falls Ubuntu das einzige System auf der Festplatte sein soll, muss nicht extra neugestartet werden um den Bootloader zu aktualisieren.
Um alle auf dem Rechner installierten Systeme im GRUB-Menü der debootstrap-Installation aufzulisten, muss nach dem Neustarten dieses Ubuntus dort folgender Befehl durchgeführt werden:
sudo update-grub
Diese Revision wurde am 6. Januar 2013 15:34 von Lasall erstellt.