Installation auf einem IBM xServer 226: Unterschied zwischen den Versionen

Aus wiki.archlinux.de
K (code → ic, synt, kat, artikelstil)
(5 dazwischenliegende Versionen von 2 Benutzern werden nicht angezeigt)
Zeile 1: Zeile 1:
= Vorwort =
{{Artikelstil}}
Dieser Artikel beschreibt die Installation von ArchLinux mit Hilfe des [https://wiki.archlinux.de/title/Download Installationsmediums 2013.02.01] auf dem IBM xServer 226.
Dieser Artikel beschreibt die Installation von ArchLinux mit Hilfe des [https://wiki.archlinux.de/title/Download Installationsmediums 2013.02.01] auf dem IBM xServer 226.
Ich persönlich benutze diesen Server als Desktop-PC.
 
== Hardwareinformation ==
== Hardwareinformation ==
* CPU: Intel [http://de.wikipedia.org/wiki/Intel_Xeon_(Core) Xeon (Core)] 2x3.2Ghz
Dieser Artikel basiert auf einem System mit folgenden Daten:
 
* CPU: Intel {{wikipedia|Intel_Xeon_(Core)|Xeon (Core)}} 2x3.2Ghz
* RAM: 3GB DDR2-3200
* RAM: 3GB DDR2-3200
* GPU: [http://www.amd.com/de/products/desktop/graphics/ati-radeon-hd-4000/hd-4800/Pages/ati-radeon-hd-4800-overview.aspx ATI Radeon HD4800 Series] (onboard disabled due to add-in video card)
* GPU: [http://www.amd.com/de/products/desktop/graphics/ati-radeon-hd-4000/hd-4800/Pages/ati-radeon-hd-4800-overview.aspx ATI Radeon HD4800 Series] {{sprache|en}} (onboard disabled due to add-in video card)
* HDD: 2x 160GB via [http://www.adaptec.com/en-us/support/scsi/u320/asc-29320alp-r/ Adaptec U320 SCSI RAID Controller] (PCIx Karte; Planar SCSI disabled via BIOS: Somit auch kein Adptec HostRAID mehr verfügbar)
* HDD: 2x 160GB via [http://www.adaptec.com/en-us/support/scsi/u320/asc-29320alp-r/ Adaptec U320 SCSI RAID Controller] {{sprache|en}} (PCIx Karte; Planar SCSI disabled via BIOS: Somit auch kein Adptec HostRAID mehr verfügbar)
* SND: [http://www.terratec.net/de/produkte/AUREON_5.1_PCI_1987.html Terratec Aureon 5.1 PCI]
* SND: [http://www.terratec.net/de/produkte/AUREON_5.1_PCI_1987.html Terratec Aureon 5.1 PCI] {{sprache|en}}


== Nützliche Links zur Installation ==
== Nützliche Links zur Installation ==
Zeile 16: Zeile 18:
== Keyboard Layout anpassen ==
== Keyboard Layout anpassen ==
Nachdem das ArchLinux Installationsmedium fertig gebootet hat, sollte man zuerst das Keyboardlayout auf Deutsch stellen:
Nachdem das ArchLinux Installationsmedium fertig gebootet hat, sollte man zuerst das Keyboardlayout auf Deutsch stellen:
  loadkeys de-latin1
  loadkeys de-latin1
== Erstellen der Partitionen mit RAID ==
== Erstellen der Partitionen mit RAID ==
Ein bisschen abweichend zur normalen Installationsanleitung, wollte ich ArchLinux auf einem Software RAID installieren.
Ein bisschen abweichend zur normalen Installationsanleitung, wollte ich ArchLinux auf einem Software RAID installieren.
=== Löschen alter mdadm RAIDs ===
=== Löschen alter mdadm RAIDs ===
Damit die nachfolgenden Schritte funktionieren, sollte man davor sicherstellen, dass keine alten Software RAIDs auf den Platten laufen.
Damit die nachfolgenden Schritte funktionieren, sollte man davor sicherstellen, dass keine alten Software RAIDs auf den Platten laufen.
{{achtung|Die Nachfolgenden Befehle zerstören jegliche Daten und Partitionen auf den Festplatten!}}
{{achtung|Die Nachfolgenden Befehle zerstören jegliche Daten und Partitionen auf den Festplatten!}}
Diese RAIDs liefen vorher auf meinem Server:
Diese RAIDs liefen vorher auf meinem Server:
* <code>/dev/md0</code> bildete <code>/</code> via <code>/dev/sda3,/dev/sdb3</code> mit RAID0
 
* <code>/dev/md1</code> bildete <code>swap</code> via <code>/dev/sda2,/dev/sdb2</code> mit RAID0
* {{ic|/dev/md0}} bildete {{ic|/}} via {{ic|/dev/sda3,/dev/sdb3}} mit RAID0
* <code>/dev/md2</code> bildete <code>/boot/</code> via <code>/dev/sda1,/dev/sdb1</code> mit RAID1
* {{ic|/dev/md1}} bildete {{ic|swap}} via {{ic|/dev/sda2,/dev/sdb2}} mit RAID0
* {{ic|/dev/md2}} bildete {{ic|/boot/}} via {{ic|/dev/sda1,/dev/sdb1}} mit RAID1
 
Zuerst muss man dazu alte mdadm RAIDs stoppen
Zuerst muss man dazu alte mdadm RAIDs stoppen
  mdadm --stop /dev/md0
  mdadm --stop /dev/md0
  mdadm --stop /dev/md1
  mdadm --stop /dev/md1
  mdadm --stop /dev/md2
  mdadm --stop /dev/md2
und anschließend den Zero Superblock löschen:
und anschließend den Zero Superblock löschen:
  mdadm --zero-superblock /dev/sd[ab]1
  mdadm --zero-superblock /dev/sd[ab]1
  mdadm --zero-superblock /dev/sd[ab]2
  mdadm --zero-superblock /dev/sd[ab]2
  mdadm --zero-superblock /dev/sd[ab]3
  mdadm --zero-superblock /dev/sd[ab]3
Zusätzlich sollte man die ersten 4K der Festplatten mit Nullen überschreiben, um alte Partitionen zu löschen:
Zusätzlich sollte man die ersten 4K der Festplatten mit Nullen überschreiben, um alte Partitionen zu löschen:
  dd if=/dev/zero of=/dev/sda bsize=4096 count=1
 
  dd if=/dev/zero of=/dev/sdb bsize=4096 count=1
  dd if=/dev/zero of=/dev/sda bs=4096 count=1
  dd if=/dev/zero of=/dev/sdb bs=4096 count=1
 
=== Partitionen erstellen ===
=== Partitionen erstellen ===
Für mein System werde ich folgende Partitionen anlegen:
Für mein System werde ich folgende Partitionen anlegen:
* Partition 1 <code>/boot</code> 100MB
 
* Partition 2 <code>swap</code> 512M
* Partition 1 {{ic|/boot}} 100MB
* Partition 3 <code>/</code> 30000MB
* Partition 2 {{ic|swap}} 512M
* Partition 4 <code>/home</code> Restlicher Speicher
* Partition 3 {{ic|/}} 30000MB
* Partition 4 {{ic|/home}} Restlicher Speicher
 
Um die Partitionen auf den Laufwerken zu erstellen empfehle ich [https://wiki.archlinux.de/title/Gdisk#Partitionieren_mit_gdisk gdisk]
Um die Partitionen auf den Laufwerken zu erstellen empfehle ich [https://wiki.archlinux.de/title/Gdisk#Partitionieren_mit_gdisk gdisk]
  gdisk /dev/sda
  gdisk /dev/sda
Falls gdisk fragt <code>Found invalid MBR and corrupt GPT. What do you want to do?</code> beantworte die Frage mit <code>2</code> (Create blank GPT).
 
Zunächst erstellen wir die <code>/boot</code> Partition:
Falls gdisk fragt {{ic|Found invalid MBR and corrupt GPT. What do you want to do?}} beantworte die Frage mit {{ic|2}} (Create blank GPT).
Zunächst erstellen wir die {{ic|/boot}} Partition:
 
  Command (? for help): n [Enter]
  Command (? for help): n [Enter]
  Partition number (1-128, default 1): [Enter für Default 1]
  Partition number (1-128, default 1): [Enter für Default 1]
Zeile 54: Zeile 74:
  Hex code or GUID (L to show codes, Enter = 8300): fd00 [Enter]
  Hex code or GUID (L to show codes, Enter = 8300): fd00 [Enter]
  Changed type of partition to 'Linux RAID'
  Changed type of partition to 'Linux RAID'
Die restlichen Partitionen werden nach dem gleichen Schema erstellt, die einzige Unterscheidung ist die Größe bzw. der <code>Last Sector</code>.
 
{{hinweis|Beachte bitte, dass der Typ der Partitionen immer <code>fd00</code> sein muss, damit das erstellen des RAIDs und das installieren des Boot Loaders später funktioniert}}
Die restlichen Partitionen werden nach dem gleichen Schema erstellt, die einzige Unterscheidung ist die Größe bzw. der {{ic|Last Sector}}.
{{hinweis|Beachte bitte, dass der Typ der Partitionen immer {{ic|fd00}} sein muss, damit das erstellen des RAIDs und das installieren des Boot Loaders später funktioniert}}
 
==== Bootflag setzen ====
==== Bootflag setzen ====
Damit später das System booten kann, muss die <code>/boot</code> Partition noch den <code>Legacy BIOS Bootable</code> Flag bekommen.
Damit später das System booten kann, muss die {{ic|/boot}} Partition noch den {{ic|Legacy BIOS Bootable}} Flag bekommen.
 
  Command (? for help): x [Enter]
  Command (? for help): x [Enter]
  Expert Command (? for help): a [Enter]
  Expert Command (? for help): a [Enter]
Zeile 64: Zeile 87:
  Toggle which attribute field [...]: 2 [Enter]
  Toggle which attribute field [...]: 2 [Enter]
  Toggle which attribute field [...]: [Enter um zu verlassen]
  Toggle which attribute field [...]: [Enter um zu verlassen]
Als letztes schreiben wir die Partitionen auf die Festplatte und beenden das Programm:
Als letztes schreiben wir die Partitionen auf die Festplatte und beenden das Programm:
  Expert Command (? for help): w [Enter]
  Expert Command (? for help): w [Enter]
  [...]
  [...]
  Do you want to procced? (Y/n): Y [Enter]
  Do you want to procced? (Y/n): Y [Enter]
==== Partitionen auf die anderen Festplatten kopieren ====
==== Partitionen auf die anderen Festplatten kopieren ====
Da später jede Partition Teil eines RAID Systems ist, muss jede Festplatte das Partitions-Shema, das wir für <code>/dev/sda</code> angelegt haben, besitzen. Dazu kopieren wir das Partitions-Shema auf <code>/dev/sda</code> einfach auf die anderen Festplatten. Vorher sollte man aber sicherstellen, dass GPT auf der Ziel-Festplatte läuft:
Da später jede Partition Teil eines RAID Systems ist, muss jede Festplatte das Partitions-Shema, das wir für {{ic|/dev/sda}} angelegt haben, besitzen. Dazu kopieren wir das Partitions-Shema auf {{ic|/dev/sda}} einfach auf die anderen Festplatten. Vorher sollte man aber sicherstellen, dass GPT auf der Ziel-Festplatte läuft:
 
  gdisk /dev/sdb
  gdisk /dev/sdb
Falls gdisk nun (wieder) fragt <code>Found invalid MBR and corrupt GPT. What do you want to do?</code> beantworte die Frage mit <code>2</code> (Create blank GPT) und schreiben das blanke GPT auf die Platte:
 
Falls gdisk nun (wieder) fragt {{ic|Found invalid MBR and corrupt GPT. What do you want to do?}} beantworte die Frage mit {{ic|2}} (Create blank GPT) und schreiben das blanke GPT auf die Platte:
 
  Command (? for help): w [Enter]
  Command (? for help): w [Enter]
  [...]
  [...]
  Do you want to procced? (Y/n): Y [Enter]
  Do you want to procced? (Y/n): Y [Enter]
Fragt gdisk nicht, kann man das Programm wieder mit <code>q</code> beenden.
 
Fragt gdisk nicht, kann man das Programm wieder mit {{ic|q}} beenden.
Danach kann man das Partitions-Shema folgendermaßen kopieren:
Danach kann man das Partitions-Shema folgendermaßen kopieren:
  sgdisk --backup=table /dev/sda
  sgdisk --backup=table /dev/sda
  sgdisk --load-backup=table /dev/sdb
  sgdisk --load-backup=table /dev/sdb
=== RAIDs erzeugen ===
=== RAIDs erzeugen ===
Nun können die RAIDs erzeugt werden. Dadurch werden die einzelnen zusammengehörigen Partitionen auf den Festplatten verknüpft. Für mein System möchte ich folgendes Shema verwenden:
Nun können die RAIDs erzeugt werden. Dadurch werden die einzelnen zusammengehörigen Partitionen auf den Festplatten verknüpft. Für mein System möchte ich folgendes Shema verwenden:
* <code>/dev/md0</code> ist <code>/boot</code> und besteht aus <code>/dev/sda1,/dev/sdb1</code> mit RAID1
 
* <code>/dev/md1</code> ist <code>swap</code> und besteht aus <code>/dev/sda2,/dev/sdb2</code> mit RAID0
* {{ic|/dev/md0}} ist {{ic|/boot}} und besteht aus {{ic|/dev/sda1,/dev/sdb1}} mit RAID1
* <code>/dev/md2</code> ist <code>/</code> und besteht aus <code>/dev/sda3,/dev/sdb3</code> mit RAID0
* {{ic|/dev/md1}} ist {{ic|swap}} und besteht aus {{ic|/dev/sda2,/dev/sdb2}} mit RAID0
* <code>/dev/md3</code> ist <code>/home</code> und besteht aus <code>/dev/sda4,/dev/sdb4</code> mit RAID0
* {{ic|/dev/md2}} ist {{ic|/}} und besteht aus {{ic|/dev/sda3,/dev/sdb3}} mit RAID0
* {{ic|/dev/md3}} ist {{ic|/home}} und besteht aus {{ic|/dev/sda4,/dev/sdb4}} mit RAID0
 
Zuerst lädt man die benötigten RAID Module:
Zuerst lädt man die benötigten RAID Module:
  modprobe raid0
  modprobe raid0
  modprobe raid1
  modprobe raid1
Anschließend kann man die RAIDs mit <code>mdadm</code> erzeugen.
 
Anschließend kann man die RAIDs mit {{ic|mdadm}} erzeugen.
 
  mdadm --create /dev/md0 --level=1 --raid-devices=2 --metadata=1.0 /dev/sd[ab]1
  mdadm --create /dev/md0 --level=1 --raid-devices=2 --metadata=1.0 /dev/sd[ab]1
  mdadm --create /dev/md1 --level=0 --raid-devices=2 /dev/sd[ab]2
  mdadm --create /dev/md1 --level=0 --raid-devices=2 /dev/sd[ab]2
  mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/sd[ab]3
  mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/sd[ab]3
  mdadm --create /dev/md3 --level=0 --raid-devices=2 /dev/sd[ab]4
  mdadm --create /dev/md3 --level=0 --raid-devices=2 /dev/sd[ab]4
== Formatieren der RAID Partitionen ==
== Formatieren der RAID Partitionen ==
Wenn die RAIDs erstellt sind, kann man sie wie gehabt mit <code>mkfs</code> formatieren
Wenn die RAIDs erstellt sind, kann man sie wie gehabt mit {{ic|mkfs}} formatieren
 
  mkfs.ext2 /dev/md0
  mkfs.ext2 /dev/md0
  mkswap /dev/md1
  mkswap /dev/md1
Zeile 100: Zeile 139:
  mkfs.ext4 /dev/md2
  mkfs.ext4 /dev/md2
  mkfs.ext4 /dev/md3
  mkfs.ext4 /dev/md3
== Mounten des neuen Dateisystems ==
== Mounten des neuen Dateisystems ==
Um die Installation auf den neuen RAID Partition durchführen zu können, muss man die RAID Partitionen mounten. Zuerst <code>/</code> aka. <code>/dev/md2</code>:
Um die Installation auf den neuen RAID Partition durchführen zu können, muss man die RAID Partitionen mounten. Zuerst {{ic|/}} aka. {{ic|/dev/md2}}:
 
  mount /dev/md2 /mnt
  mount /dev/md2 /mnt
Nun erstellen wir die benötigten Mountpunkte für die anderen Partitionen
Nun erstellen wir die benötigten Mountpunkte für die anderen Partitionen
  mkdir /mnt/boot
  mkdir /mnt/boot
  mkdir /mnt/home
  mkdir /mnt/home
und mounten sie:
und mounten sie:
  mount /dev/md0 /mnt/boot
  mount /dev/md0 /mnt/boot
  mount /dev/md3 /mnt/home
  mount /dev/md3 /mnt/home
== Installation des Grundsystems auf das neue Dateisystem ==
== Installation des Grundsystems auf das neue Dateisystem ==
Zur Installation des Grundsystems ist eine Internetverbindung erforderlich. Hierzu sollte man folgenden Artikel lesen: [https://wiki.archlinux.org/index.php/Beginners%27_Guide#Establish_an_internet_connection Establish an Internet Connection]
Zur Installation des Grundsystems ist eine Internetverbindung erforderlich. Hierzu sollte man folgenden Artikel lesen: [https://wiki.archlinux.org/index.php/Beginners%27_Guide#Establish_an_internet_connection Establish an Internet Connection]
Die Installation des Grundsystems erfolgt mittels der <code>Arch Install Scripts</code>:
Die Installation des Grundsystems erfolgt mittels der {{ic|Arch Install Scripts}}:
 
  pacstrap /mnt base base-devel mdadm [weitere Pakete]
  pacstrap /mnt base base-devel mdadm [weitere Pakete]


== Das System einrichten ==
== Das System einrichten ==
Zuerst solte man die Festplatten konfigurieren:
Zuerst solte man die Festplatten konfigurieren:
  genfstab -p /mnt >> /mnt/etc/fstab
  genfstab -p /mnt >> /mnt/etc/fstab
  mdadm --detail --scan >> /mnt/etc/mdadm.conf
  mdadm --detail --scan >> /mnt/etc/mdadm.conf
Danach ins neue ArchLinux System chrooten:
Danach ins neue ArchLinux System chrooten:
  arch-chroot /mnt
  arch-chroot /mnt
=== Hostnamen festlegen ===
=== Hostnamen festlegen ===
  echo "Hostname" > /etc/hostname
  echo "Hostname" > /etc/hostname
Dementsprechend auch die "<hostname>" Spalte in {{ic|/etc/hosts}} anpassen
=== Spracheinstellungen festlegen ===
=== Spracheinstellungen festlegen ===
  echo "LANG=de_DE.UTF8" > /etc/locale.conf
  echo "LANG=de_DE.UTF-8" > /etc/locale.conf
Außerdem muss die gewünschte Sprache aus der <code>/etc/locale.gen</code> auskommentiert werden und danach mit <code>locale-gen</code> generiert werden:
 
Außerdem muss die gewünschte Sprache aus der {{ic|/etc/locale.gen}} auskommentiert werden und danach mit {{ic|locale-gen}} generiert werden:
 
  locale-gen
  locale-gen
Danach noch die Zeitzoneninformation einstellen
Danach noch die Zeitzoneninformation einstellen
  ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
  ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime
und das Tastaturlayout permanent speichern:
und das Tastaturlayout permanent speichern:
  echo "KEYMAP=de-latin1" > /etc/vconsole.conf
  echo "KEYMAP=de-latin1" > /etc/vconsole.conf
=== Kernel Einstellungen vornehmen ===
=== Kernel Einstellungen vornehmen ===
Damit der Kernel korrekt booten kann, muss man beim Erzeugen des Images mit <code>mkinitcpio</code> ein paar Einstellungen setzen:
Damit der Kernel korrekt booten kann, muss man beim Erzeugen des Images mit {{ic|mkinitcpio}} ein paar Einstellungen setzen:
 
  nano /etc/mkinitcpio.conf
  nano /etc/mkinitcpio.conf
# <code>raid0</code> und <code>raid1</code> zum MODULES Array hinzufügen
 
# <code>mdadm_udev</code> zum HOOKS Array hinzufügen (nach <code>udev</code>)
# {{ic|raid0}} und {{ic|raid1}} zum MODULES Array hinzufügen
# {{ic|mdadm_udev}} zum HOOKS Array hinzufügen (nach {{ic|udev}})
 
Danach muss man das neue Kernel-Image erzeugen
Danach muss man das neue Kernel-Image erzeugen
  mkinitcpio -p linux
  mkinitcpio -p linux
{{hinweis|Achte darauf, dass beim Erstellen des Images beim mdadm_udev Hook diese Zeile folgt: <code>Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays</code>. Sollte die Zeile nicht angezeigt werden, überprüfe die Einstellungen in der <code>/etc/mdadm.conf</code> und konfiguriere das RAID System ggf. mit <code>mdadm --detail --scan >> /etc/mdadm.conf</code> erneut! Achte auch darauf, erneut <code>mkinitcpio</code> aufzurufen.}}
 
{{hinweis|Achte darauf, dass beim Erstellen des Images beim mdadm_udev Hook diese Zeile folgt: {{ic|Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays}}. Sollte die Zeile nicht angezeigt werden, überprüfe die Einstellungen in der {{ic|/etc/mdadm.conf}} und konfiguriere das RAID System ggf. mit {{ic|mdadm --detail --scan >> /etc/mdadm.conf}} erneut! Achte auch darauf, erneut {{ic|mkinitcpio}} aufzurufen.}}
 
=== Root Passwort festlegen ===
=== Root Passwort festlegen ===
  passwd
  passwd


== Syslinux als Bootloader installieren ==
== Syslinux als Bootloader installieren ==
Zuerst muss Syslinux auf dem neuen System installiert werden. Bitte beachte, dass der Befehl nach <code>arch-chroot /tmp</code> ausgeführt werden muss:
{{hinweis|Wir befinden uns immernoch in der chroot Umgebung!}}
Zuerst muss Syslinux auf dem neuen System installiert werden
 
  pacman -Syy syslinux
  pacman -Syy syslinux
Danach muss man Syslinux noch konfigurieren:
Danach muss man Syslinux noch konfigurieren:
  syslinux-install_update -im
  syslinux-install_update -im
Nun ollte man überprüfen, ob die Kernel-Zeilen in der <code>/boot/syslinux/syslinux.cfg</code> passen. Dort sollte in meinem Fall <code>root=/dev/md2</code>, also die <code>/</code> Partition in beiden Kernel-Zeilen stehen (<code>Arch</code> und <code>Arch Fallback</code>)
 
Nun ollte man überprüfen, ob die Kernel-Zeilen in der {{ic|/boot/syslinux/syslinux.cfg}} passen. Dort sollte in meinem Fall {{ic|1=root=/dev/md2}}, also die {{ic|/}} Partition in beiden Kernel-Zeilen stehen ({{ic|Arch}} und {{ic|Arch Fallback}})


== Abschluss der Installation ==
== Abschluss der Installation ==
Zum Abchluss sollte man das <code>arch-chroot</code> verlassen, Alle Festplatten unmounten und das System neu starten
Zum Abchluss sollte man das {{ic|arch-chroot}} verlassen, Alle Festplatten unmounten und das System neu starten
 
  exit
  exit
  umount /mnt/boot
  umount /mnt/boot
Zeile 158: Zeile 231:
= Weiterführende Installation =
= Weiterführende Installation =
== Audio mit ALSA konfigurieren ==
== Audio mit ALSA konfigurieren ==
Zuerst muss <code>alsamixer</code> runtergeladen werden. Das entsprechende Paket heißt <code>alsa-utils</code>
{{hinweis|Siehe auch: [https://wiki.archlinux.de/title/Alsa ALSA]}}
Zuerst muss {{ic|alsamixer}} runtergeladen werden. Das entsprechende Paket heißt {{ic|alsa-utils}}
 
  pacman -Syy alsa-utils
  pacman -Syy alsa-utils
Danach sollte man das Default-Gerät festlegen. Sie dazu [https://wiki.archlinux.de/title/Alsa#Festlegen_des_Default-Device hier]
Danach sollte man das Default-Gerät festlegen. Sie dazu [https://wiki.archlinux.de/title/Alsa#Festlegen_des_Default-Device hier]
Nun sollte man die Lautstärke des Audiogeräts anpassen und die Kanäle, die man braucht, aktivieren. Das ganz geschieht mit:
Nun sollte man die Lautstärke des Audiogeräts anpassen und die Kanäle, die man braucht, aktivieren. Das ganz geschieht mit:
  alsamixer
  alsamixer
Die Einstellungen sollte man danach noch speichern, damit sie bei einem erneuten Startvorgang wieder geladen werden
Die Einstellungen sollte man danach noch speichern, damit sie bei einem erneuten Startvorgang wieder geladen werden
  alsactl store
  alsactl store
[[Kategorie:Installation]]
[[Kategorie:Server]]

Version vom 22. Februar 2013, 21:27 Uhr

Dieser Artikel oder Artikelabschnitt bedarf einer stilistischen Überarbeitung laut Empfehlungen in Artikelstil.


Dieser Artikel beschreibt die Installation von ArchLinux mit Hilfe des Installationsmediums 2013.02.01 auf dem IBM xServer 226.

Hardwareinformation

Dieser Artikel basiert auf einem System mit folgenden Daten:

Nützliche Links zur Installation

Installation des Grundsystems

Keyboard Layout anpassen

Nachdem das ArchLinux Installationsmedium fertig gebootet hat, sollte man zuerst das Keyboardlayout auf Deutsch stellen:

loadkeys de-latin1

Erstellen der Partitionen mit RAID

Ein bisschen abweichend zur normalen Installationsanleitung, wollte ich ArchLinux auf einem Software RAID installieren.

Löschen alter mdadm RAIDs

Damit die nachfolgenden Schritte funktionieren, sollte man davor sicherstellen, dass keine alten Software RAIDs auf den Platten laufen.

Achtung: Die Nachfolgenden Befehle zerstören jegliche Daten und Partitionen auf den Festplatten!


Diese RAIDs liefen vorher auf meinem Server:

  • /dev/md0 bildete / via /dev/sda3,/dev/sdb3 mit RAID0
  • /dev/md1 bildete swap via /dev/sda2,/dev/sdb2 mit RAID0
  • /dev/md2 bildete /boot/ via /dev/sda1,/dev/sdb1 mit RAID1

Zuerst muss man dazu alte mdadm RAIDs stoppen

mdadm --stop /dev/md0
mdadm --stop /dev/md1
mdadm --stop /dev/md2

und anschließend den Zero Superblock löschen:

mdadm --zero-superblock /dev/sd[ab]1
mdadm --zero-superblock /dev/sd[ab]2
mdadm --zero-superblock /dev/sd[ab]3

Zusätzlich sollte man die ersten 4K der Festplatten mit Nullen überschreiben, um alte Partitionen zu löschen:

dd if=/dev/zero of=/dev/sda bs=4096 count=1
dd if=/dev/zero of=/dev/sdb bs=4096 count=1

Partitionen erstellen

Für mein System werde ich folgende Partitionen anlegen:

  • Partition 1 /boot 100MB
  • Partition 2 swap 512M
  • Partition 3 / 30000MB
  • Partition 4 /home Restlicher Speicher

Um die Partitionen auf den Laufwerken zu erstellen empfehle ich gdisk

gdisk /dev/sda

Falls gdisk fragt Found invalid MBR and corrupt GPT. What do you want to do? beantworte die Frage mit 2 (Create blank GPT). Zunächst erstellen wir die /boot Partition:

Command (? for help): n [Enter]
Partition number (1-128, default 1): [Enter für Default 1]
First Sector ([...], default = 2048) or [...]: [Enter für Default 2048]
Last Sector ([...]) or [...]: +100MB [Enter]
Current type is 'Linux filesystem'
Hex code or GUID (L to show codes, Enter = 8300): fd00 [Enter]
Changed type of partition to 'Linux RAID'

Die restlichen Partitionen werden nach dem gleichen Schema erstellt, die einzige Unterscheidung ist die Größe bzw. der Last Sector.

Hinweis: Beachte bitte, dass der Typ der Partitionen immer fd00 sein muss, damit das erstellen des RAIDs und das installieren des Boot Loaders später funktioniert

Bootflag setzen

Damit später das System booten kann, muss die /boot Partition noch den Legacy BIOS Bootable Flag bekommen.

Command (? for help): x [Enter]
Expert Command (? for help): a [Enter]
Partition number (1-4): 1 [Enter]
[...]
Toggle which attribute field [...]: 2 [Enter]
Toggle which attribute field [...]: [Enter um zu verlassen]

Als letztes schreiben wir die Partitionen auf die Festplatte und beenden das Programm:

Expert Command (? for help): w [Enter]
[...]
Do you want to procced? (Y/n): Y [Enter]

Partitionen auf die anderen Festplatten kopieren

Da später jede Partition Teil eines RAID Systems ist, muss jede Festplatte das Partitions-Shema, das wir für /dev/sda angelegt haben, besitzen. Dazu kopieren wir das Partitions-Shema auf /dev/sda einfach auf die anderen Festplatten. Vorher sollte man aber sicherstellen, dass GPT auf der Ziel-Festplatte läuft:

gdisk /dev/sdb

Falls gdisk nun (wieder) fragt Found invalid MBR and corrupt GPT. What do you want to do? beantworte die Frage mit 2 (Create blank GPT) und schreiben das blanke GPT auf die Platte:

Command (? for help): w [Enter]
[...]
Do you want to procced? (Y/n): Y [Enter]

Fragt gdisk nicht, kann man das Programm wieder mit q beenden. Danach kann man das Partitions-Shema folgendermaßen kopieren:

sgdisk --backup=table /dev/sda
sgdisk --load-backup=table /dev/sdb

RAIDs erzeugen

Nun können die RAIDs erzeugt werden. Dadurch werden die einzelnen zusammengehörigen Partitionen auf den Festplatten verknüpft. Für mein System möchte ich folgendes Shema verwenden:

  • /dev/md0 ist /boot und besteht aus /dev/sda1,/dev/sdb1 mit RAID1
  • /dev/md1 ist swap und besteht aus /dev/sda2,/dev/sdb2 mit RAID0
  • /dev/md2 ist / und besteht aus /dev/sda3,/dev/sdb3 mit RAID0
  • /dev/md3 ist /home und besteht aus /dev/sda4,/dev/sdb4 mit RAID0

Zuerst lädt man die benötigten RAID Module:

modprobe raid0
modprobe raid1

Anschließend kann man die RAIDs mit mdadm erzeugen.

mdadm --create /dev/md0 --level=1 --raid-devices=2 --metadata=1.0 /dev/sd[ab]1
mdadm --create /dev/md1 --level=0 --raid-devices=2 /dev/sd[ab]2
mdadm --create /dev/md2 --level=0 --raid-devices=2 /dev/sd[ab]3
mdadm --create /dev/md3 --level=0 --raid-devices=2 /dev/sd[ab]4

Formatieren der RAID Partitionen

Wenn die RAIDs erstellt sind, kann man sie wie gehabt mit mkfs formatieren

mkfs.ext2 /dev/md0
mkswap /dev/md1
swapon /dev/md1
mkfs.ext4 /dev/md2
mkfs.ext4 /dev/md3

Mounten des neuen Dateisystems

Um die Installation auf den neuen RAID Partition durchführen zu können, muss man die RAID Partitionen mounten. Zuerst / aka. /dev/md2:

mount /dev/md2 /mnt

Nun erstellen wir die benötigten Mountpunkte für die anderen Partitionen

mkdir /mnt/boot
mkdir /mnt/home

und mounten sie:

mount /dev/md0 /mnt/boot
mount /dev/md3 /mnt/home

Installation des Grundsystems auf das neue Dateisystem

Zur Installation des Grundsystems ist eine Internetverbindung erforderlich. Hierzu sollte man folgenden Artikel lesen: Establish an Internet Connection Die Installation des Grundsystems erfolgt mittels der Arch Install Scripts:

pacstrap /mnt base base-devel mdadm [weitere Pakete]

Das System einrichten

Zuerst solte man die Festplatten konfigurieren:

genfstab -p /mnt >> /mnt/etc/fstab
mdadm --detail --scan >> /mnt/etc/mdadm.conf

Danach ins neue ArchLinux System chrooten:

arch-chroot /mnt

Hostnamen festlegen

echo "Hostname" > /etc/hostname

Dementsprechend auch die "<hostname>" Spalte in /etc/hosts anpassen

Spracheinstellungen festlegen

echo "LANG=de_DE.UTF-8" > /etc/locale.conf

Außerdem muss die gewünschte Sprache aus der /etc/locale.gen auskommentiert werden und danach mit locale-gen generiert werden:

locale-gen

Danach noch die Zeitzoneninformation einstellen

ln -s /usr/share/zoneinfo/Europe/Berlin /etc/localtime

und das Tastaturlayout permanent speichern:

echo "KEYMAP=de-latin1" > /etc/vconsole.conf

Kernel Einstellungen vornehmen

Damit der Kernel korrekt booten kann, muss man beim Erzeugen des Images mit mkinitcpio ein paar Einstellungen setzen:

nano /etc/mkinitcpio.conf
  1. raid0 und raid1 zum MODULES Array hinzufügen
  2. mdadm_udev zum HOOKS Array hinzufügen (nach udev)

Danach muss man das neue Kernel-Image erzeugen

mkinitcpio -p linux

Hinweis: Achte darauf, dass beim Erstellen des Images beim mdadm_udev Hook diese Zeile folgt: Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays. Sollte die Zeile nicht angezeigt werden, überprüfe die Einstellungen in der /etc/mdadm.conf und konfiguriere das RAID System ggf. mit mdadm --detail --scan >> /etc/mdadm.conf erneut! Achte auch darauf, erneut mkinitcpio aufzurufen.

Root Passwort festlegen

passwd

Syslinux als Bootloader installieren

Hinweis: Wir befinden uns immernoch in der chroot Umgebung!

Zuerst muss Syslinux auf dem neuen System installiert werden

pacman -Syy syslinux

Danach muss man Syslinux noch konfigurieren:

syslinux-install_update -im

Nun ollte man überprüfen, ob die Kernel-Zeilen in der /boot/syslinux/syslinux.cfg passen. Dort sollte in meinem Fall root=/dev/md2, also die / Partition in beiden Kernel-Zeilen stehen (Arch und Arch Fallback)

Abschluss der Installation

Zum Abchluss sollte man das arch-chroot verlassen, Alle Festplatten unmounten und das System neu starten

exit
umount /mnt/boot
umount /mnt/home
umount /mnt
reboot

Weiterführende Installation

Audio mit ALSA konfigurieren

Hinweis: Siehe auch: ALSA

Zuerst muss alsamixer runtergeladen werden. Das entsprechende Paket heißt alsa-utils

pacman -Syy alsa-utils

Danach sollte man das Default-Gerät festlegen. Sie dazu hier Nun sollte man die Lautstärke des Audiogeräts anpassen und die Kanäle, die man braucht, aktivieren. Das ganz geschieht mit:

alsamixer

Die Einstellungen sollte man danach noch speichern, damit sie bei einem erneuten Startvorgang wieder geladen werden

alsactl store