Arch Linux auf einem Root-Server: Unterschied zwischen den Versionen
Dirk (Diskussion | Beiträge) K righttoc |
|||
Zeile 1: | Zeile 1: | ||
{{unvollständig}} | {{unvollständig}} | ||
{{righttoc}} | |||
Diese Anleitung beschreibt die Installation von Arch Linux auf einem dedicated Root-Server aus einem Rescue-System auf Basis eigener Erfahrungen. Basierend auf der Anleitung von [http://wiki.archlinux.org/index.php/Install_From_Existing_Linux], welche aber nicht 1:1 übersetzt wurde. | Diese Anleitung beschreibt die Installation von Arch Linux auf einem dedicated Root-Server aus einem Rescue-System auf Basis eigener Erfahrungen. Basierend auf der Anleitung von [http://wiki.archlinux.org/index.php/Install_From_Existing_Linux], welche aber nicht 1:1 übersetzt wurde. | ||
==Anmerkungen== | ==Anmerkungen== | ||
Zeile 138: | Zeile 138: | ||
Hauptquelle war das englische HowTo unter http://wiki.archlinux.org/index.php/Install_From_Existing_Linux<br /> | Hauptquelle war das englische HowTo unter http://wiki.archlinux.org/index.php/Install_From_Existing_Linux<br /> | ||
--[[Benutzer:Igprolin|Igprolin]] 15:28, 1. Jan. 2009 (CET) | --[[Benutzer:Igprolin|Igprolin]] 15:28, 1. Jan. 2009 (CET) | ||
[[Kategorie:Installation]] |
Version vom 27. April 2009, 11:15 Uhr
Dieser Artikel oder Artikelabschnitt ist noch nicht vollständig!
Diese Anleitung beschreibt die Installation von Arch Linux auf einem dedicated Root-Server aus einem Rescue-System auf Basis eigener Erfahrungen. Basierend auf der Anleitung von [1], welche aber nicht 1:1 übersetzt wurde.
Anmerkungen
Entsprechend der später verwendeten Architektur sollte auch das Rettungssystem diese bereits verwenden. Bei Hetzner kann man zwischen einem 32-Bit und einem 64-Bit Rettungssystem auswählen. Bis 3 GB RAM sollte das 32-Bit System ( so auch die i686er Variante von Arch ) vollkommen ausreichen. Vorausgesetzt man braucht keine Datenbanken mit mehreren 100 MByte Größe. Diese Anleitung beschreibt die Nutzung der i686-Variante, kann aber auf die x86_64 1:1 übernommen werden - Bis auf die Pakete.
Vorbereitung
Partitionierung
Für diese Anleitung wird ein Software-RAID 1 aufgebaut, welches eine erhöhte Datensicherheit bietet. Die Partitionierung kann mit cfdisk oder fdisk erfolgen. Bevorzugt lege ich auf meinen Servern immer folgendes Partionsschemata an:
- /dev/sda1 - 100 MB - linuxraid autodetect - /boot
- /dev/sda2 - 1 GB - linuxraid autodetect - swap
- /dev/sda3 - rest - linuxraid autodetect - /
Dies muss auf beiden Festplatten erfolgen!
Erstellung der RAID-Arrays
Info
Sollte RAID später Probleme machen, dann mal RAID weg lassen.
Mit mdadm erstellen wir nun das RAID Array für /boot, / und swap.
Bevor das RAID Array erstellt werden kann, müssen die entsprechenden Module geladen werden:
modprobe raid1
Später / ...
mdadm --create /dev/md0 --level 1 --raid-devices 2 /dev/sda3 /dev/sdb3
Später /boot ...
mdadm --create /dev/md1 --level 1 --raid-devices 2 /dev/sda1 /dev/sdb1
Später swap ...
mdadm --create /dev/md2 --level 1 --raid-devices 2 /dev/sda2 /dev/sdb2
Erstellung der Dateisysteme
Damit wir später archlinux installieren und noch später auch booten können, müssen nun die entsprechenden Dateisystem erstellt werden. Für /boot sowie für / wird das ext3-Dateisystem benutzt.
mkfs.ext3 /dev/md0
mkfs.ext3 /dev/md1
mkswap /dev/md2
Mounten
Nun müssen die einzelnen Partitionen (RAID Arrays) gemountet werden. Hierzu wird vorher unter /mnt das Verzeichnis archlinux erstellt:
mkdir -p /mnt/archlinux
mount -t ext3 /dev/md0 /mnt/archlinux
mkdir -p /mnt/archlinux/boot
mount -t ext3 /dev/md1 /mnt/archlinux/boot
Notwendige Pakete downloaden
Damit wir später Arch mit pacman installieren können, muss dieses nun nach /tmp/archlinux gedownloaded werden:
mkdir -p /tmp/archlinux
cd /tmp/archlinux
wget ftp://ftp.archlinux.org/core/os/i686/pacman-3.2.1-2-i686.pkg.tar.gz
wget ftp://ftp.archlinux.org/core/os/i686/pacman-mirrorlist-20081213-1-i686.pkg.tar.gz
tar xzvf pacman-3.2.1-2-i686.pkg.tar.gz
tar xzvf pacman-mirrorlist-20081213-1-i686.pkg.tar.gz
Da pacman nicht statisch auf Libs gelinkt ist, benötigen wir noch die statisch gelinkte.
cd /tmp/archlinux
wget http://repo.archlinux.fr/i686/pacman-static-3.2.2-1.pkg.tar.gz
tar xzvf pacman-static-3.2.1-1-i686.pkg.tar.gz
Benötigte Dateien ins Host-System kopieren
Da in der Regel die Rescue-Systeme von dedicated Root-Servern ein Netzwerkimage haben, können die Dateien von Pacman direkt nach / kopiert werden:
tar xf /tmp/archlinux/pacman-*.pkg.tar.gz -C /
Pacman konfigurieren
Nun müssen die Dateien /etc/pacman.conf und /etc/pacman.d/mirrorlist den Bedürfnissen angepasst werden.
Installation von Arch Linux
Pacman aktualisieren
mkdir -p /mnt/archlinux/var/lib/pacman
pacman.static -Sy -r /mnt/archlinux
pacman.static -S pacman -r /mnt/archlinux
Basissystem installieren
pacman.static -Sy base -r /mnt/archlinux
System vorbereiten
Nun wird es richtig ernst, denn wir bereiten das System für das chroot vor. Vorher muss aber sichergestellt werden, dass die richtigen nodes in /dev für udev erstellt wurden:
ls -alF /mnt/archlinux/dev
» Das sollte dann ausgegeben werden:
crw------- 1 root root 5, 1 2008-12-27 21:40 console
» Nun müssen weitere Dateisystem eingebunden werden:
crw-rw-rw- 1 root root 1, 3 2008-12-27 21:42 null
crw-rw-rw- 1 root root 1, 5 2008-12-27 21:40 zero
mount -o bind /dev /newarch/dev
» /etc/resolv.conf kopieren
mount -t proc none /newarch/proc
mount -o bind /sys /newarch/sys
cp -r /etc/resolv.conf /mnt/archlinux/etc/resolv.conf
» /etc/pacman.d/mirrorlist kopieren
cp -r /etc/pacman.d/mirrorlist /mnt/archlinux/etc/pacman.d/mirrorlist
» Enter the chroot
chroot /mnt/archlinux /bin/bash
» Den Rest installieren
pacman -Sy kernel26
Das Paket openssh muss installiert werden, sofern keine Remote-Console an den Server gekoppelt ist.
pacman -S openssh
pacman -S <paket>
System einrichten
- /etc/rc.conf
- /etc/fstab
/dev/md0 / ext3 defaults 0 0
/dev/md1 /boot ext3 defaults 0 0
/dev/md2 swap swap defaults 0 0
- /etc/mkinitcpio.conf
- /etc/modprobe.conf
- /etc/resolv.conf
- /etc/hosts
- /etc/hosts.deny
# ALL: ALL: DENY
- /etc/hosts.allow
ALL: ALL: ALLOW
- /etc/locale.gen
Wenn alle Konfigurationsdateien bearbeitet wurden und die notwendigen Locales in /etc/locale.gen freigeschalten wurden (# vor Zeile weg), können die notwendigen Locales erstellt werden:
locale-gen
Installation von Grub
» Damit Grub innerhalb des chroot installiert werden kann
grep -v rootfs /proc/mounts > /etc/mtab
» /boot/grub/menu.lst bearbeiten
» Kernelzeile muss am Ende folgendes enthalten
md=1,/dev/sda1,/dev/sdb1 md=0,/dev/sda3,/dev/sdb3, md=2,/dev/sda2,/dev/sdb2
» Grub installieren
grub
grub> find /boot/grub/stage1
grub> root (hd0,0)
grub> setup (hd0)
grub> quit
Installation fertig
Wenn alles eingerichtet und installiert ist, kann das System rebootet werden.
Bei Hetzner ist es nun angebracht sich eine LARA anschließen zu lassen, da ich persönlich bsp. Probleme hatte.
Bekannte Probleme
- Derzeit keine.
Fragen oder Anregungen
Ihr habt Fragen oder Anregungen oder möchtet etwas ergänzen? Keine Scheu, ich beiße keinem dem Kopf ab!
Quellen
Hauptquelle war das englische HowTo unter http://wiki.archlinux.org/index.php/Install_From_Existing_Linux
--Igprolin 15:28, 1. Jan. 2009 (CET)