HowTo: Ubuntu auf RocketRAID 2310 RAID Host Adapter installieren (mit und ohne LVM Partitionen)
LVM steht für Logical Volume Manager und ist ein Verfahren, um Speicherplatz auf mehreren Festplatten dynamisch zu verwalten. Es wird sozusagen eine zusätzliche logische Schicht zwischen Dateisystem und Partitionen der Festplatten eingezogen. Die Installation ist mit und ohne LVM beschrieben.
Die entsprechenden Bereiche sind mit *Mit LVM*
bzw. *Ohne LVM*
gekennzeichet und gehen bis ***
. Alles, was nicht in einem solchen Bereich steht ist für beide gültig.
Falls ein Fehler auftreten sollte, empfehle ich die Installation neu zu beginnen, da sich ansonst aus kleinen Fehlern große Probleme entwickeln können.
Unter Ubuntu 8.04 LTS war es bei mir notwendig mit dem Bootparameter noapic
zu booten, da ansonsten eine "kernel panic" folgte. Um den Bootparameter zu setzen drückt man nach Auswahl der Sprache F6 und gibt noapic
ein. Bei der Installation mit dem aktuelleren Ubuntu 8.10 war dies nicht mehr notwendig.
Als Erstes sollte man auf der Webseite den aktuellsten "Open-Source"-Treiber raussuchen http://www.highpoint-tech.com/USA/bios_rr2310.htm
Als Nächstes laden wir die vorher rausgesuchten Treiber mit wget runter und entpacken sie
cd /tmp
wget http://www.highpoint-tech.com/BIOS_Driver/rr231x_00/Linux/rr231x_0x-linux-src-v2.2-080710-1412.tar.gz
tar xzf rr231x_0x-linux-src-v2.2-080710-1412.tar.gz
cd rr231x_0x-linux-src-v2.2/product/rr2310pm/linux/
Um den Treiber kompilieren zu können, aktualisieren wir die Paketlisten und laden die nötigen Pakete
sudo apt-get update
sudo apt-get install build-essential
*Mit LVM* LVM muss man zusätzlich installieren, da es normalerweise mit der Desktop-Version nicht mitgeliefert wird
sudo apt-get install lvm2
sudo modprobe dm-mod
***
Es ist soweit, wir kompilieren den Treiber (für ein AMD64-System muss hier zusätzlich noch der Parameter ARCH=x86_64
angehängt werden)
sudo make
Wir entfernen das Modul sata_mv
aus dem Kernel, da es sonst einen Konflikt zwischen diesem und dem neuen Treiber geben würde (anstatt mit `uname -r`
kann man den Kernel-Pfad auch direkt angeben z.B. 2.6.24-19-generic
)
sudo rmmod sata_mv
sudo rm /lib/modules/`uname -r`/kernel/drivers/ata/sata_mv.ko
Den neuen Treiber aktivieren und anschließend schauen, ob /dev/sda
angezeigt wird
sudo insmod -p rr2310_00.ko
sudo depmod -ae
ls /dev/sd*
*Ohne LVM* Während der Installation partitionieren. ***
*Mit LVM* Festplatten partitionieren: In diesem Schritt werden wir die Aufteilung der Festplatte erstellen. Dabei werden alle Daten gelöscht, die sich auf der Festplatte befinden! Sollten sich wichtige Dateien darauf befinden, bedenken Sie bitte diese vorher zu sichern.
Eine Voraussetzung von Linux an LVM ist, dass /boot
auf einer herkömmlichen Partition liegt. Wir werden also eine separate /boot Partition und eine große LVM Partition (Volume Group), die den Rest der Festplatte einnimmt, erstellen. Diese LVM Partition wird dann in /
und swap Partitionen (Logical Volumes) unterteilt. Den Rest des Speicherplatzes werden wir erstmal ungenutzt lassen, um ihn später zu verwenden.
Ich gehe in diesem Schritt davon aus, dass noch keine Partitionen angelegt sind. Falls doch, nutzen Sie bitte fdisk oder gparted, um diese zu löschen. Gparted findet sich auf der Live-CD unter System --> Systemverwaltung --> Partition Editor
. Die Partitionstabelle im Kernel aktualisieren
sudo partprobe
Warning: Unable to open /dev/scd0 read-write (Read-only file system). /dev/scd0 has been opened read-only.
Nun erstellen wir eine Boot-Partition, die 256MB groß ist und eine LVM-Partition mit dem Rest des verfügbaren Speicherplatzes
sudo fdisk /dev/sda
Die Anzahl der Zylinder für diese Platte ist auf 182374 gesetzt.
Daran ist nichts verkehrt, aber das ist größer als 1024 und kann
in bestimmten Konfigurationen Probleme hervorrufen mit:
1) Software, die zum Bootzeitpunkt läuft (z. B. ältere LILO-Versionen)
2) Boot- und Partitionierungssoftware anderer Betriebssysteme
(z. B. DOS FDISK, OS/2 FDISK)
Befehl (m für Hilfe): n
Befehl Aktion
e Erweiterte
p Primäre Partition (1-4)
p
Partitionsnummer (1-4): 1
Erster Zylinder (1-182374, Vorgabe: 1):
Benutze den Standardwert 1
Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (1-182374, Vorgabe: 182374): +256M
Befehl (m für Hilfe): n
Befehl Aktion
e Erweiterte
p Primäre Partition (1-4)
p
Partitionsnummer (1-4): 2
Erster Zylinder (33-182374, Vorgabe: 33):
Benutze den Standardwert 33
Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (33-182374, Vorgabe: 182374):
Benutze den Standardwert 182374
Befehl (m für Hilfe): t
Partitionsnummer (1-4): 2
Hex code (L um eine Liste anzuzeigen): 8e
Der Dateisystemtyp der Partition 2 ist nun 8e (Linux LVM)
Befehl (m für Hilfe): w
Die Partitionstabelle wurde verändert!
Rufe ioctl() um Partitionstabelle neu einzulesen.
Synchronisiere Platten.
Die Partitionstabelle im Kernel aktualisieren
sudo partprobe
Warning: Unable to open /dev/scd0 read-write (Read-only file system). /dev/scd0 has been opened read-only.
Jetzt haben wir unsere Boot- und LVM-Partition erstellt. Als Nächstes formatieren wir /boot
mit dem ext3 Dateisystem, erstellen ein physical volume auf /dev/sda2
und erstellen Logical Volumes für /
und die swap-Partition. Diese anschließend auch formatiert.
/dev/sda1 als ext3 mit dem Namen boot formatieren
sudo mke2fs -j /dev/sda1 -L boot
Ein "physical volume" auf /dev/sda2 erstellen
sudo pvcreate /dev/sda2
Physical volume "/dev/sda2" successfully created
Eine "volume group" mit dem Namen "lvmvolume" erstellen und dabei /dev/sda2 als "physical volume" nutzen
sudo vgcreate lvmvolume /dev/sda2
Volume group "lvmvolume" successfully created
Ein "logical volume" mit 5GB und dem Namen "swap" in lvmvolume erstellen
sudo lvcreate -n swap -L 5G lvmvolume
Logical volume "swap" created
Ein "logical volume" mit 5GB und dem Namen "root" in lvmvolume erstellen
sudo lvcreate -n root -L 5G lvmvolume
Logical volume "root" created
swap als swap Dateisystem mit dem Namen swap formatieren
sudo mkswap -L swap /dev/lvmvolume/swap
root als ext3 mit dem Namen root formatieren
sudo mkfs -j /dev/lvmvolume/root -L root
Während der anschließenden Installation, muss man bei Partitionierung manuell
auswählen und dann so ähnlich wie auf diesem Bild zu sehen verwenden. ***
--- Installieren ---
Nach dem die Installation abgeschlossen ist, NICHT neustarten, sondern die Live-CD weiter verwenden
.
*Ohne LVM* Die zukünftigen Partitionen einhängen
sudo mount /dev/sda2 /target
sudo mount /dev/sda1 /target/boot
cd /tmp
cp -r rr231x_0x-linux-src-v2.2 /target/tmp/
sudo chroot /target
***
*Mit LVM* Die existierenden volumes aktivieren
sudo vgchange -ay
2 logical volume(s) in volume group "lvmvolume" now active
Sie sollten sicherstellen, dass alle zukünftigen Partitionen unter /target gemountet sind: Alle zukünftigen Partitionen und in /target root werden
sudo mount /dev/lvmvolume/root /target
sudo mount /dev/sda1 /target/boot
sudo chroot /target
LVM installieren
apt-get install lvm2
***
blacklist editieren
vi /etc/modprobe.d/blacklist
Am Ende des Dokuments folgendes einfügen um das laden des Moduls sata_mv zu verhindern
# replaced by rr2310_00
blacklist sata_mv
Das dürfte normalerweise reichern, man sollte es aber zur Sicherheit auch noch löschen
rm /lib/modules/`uname -r`/kernel/drivers/ata/sata_mv.ko
Vorbereitungen für die Treiber-Installation treffen
mount -t proc proc /proc
mount -t sysfs sysfs /sys
ln /usr/sbin/mkinitramfs /usr/sbin/mkinitrd
Als Nächstes laden wir die Treiber nochmal mit wget runter und entpacken sie
cd /tmp
wget http://www.highpoint-tech.com/BIOS_Driver/rr231x_00/Linux/rr231x_0x-linux-src-v2.2-080710-1412.tar.gz
tar xzf rr231x_0x-linux-src-v2.2-080710-1412.tar.gz
cd rr231x_0x-linux-src-v2.2/product/rr2310pm/linux/
Treiber kompilieren und anschließend installieren (für ein AMD64-System muss hier zusätzlich noch der Parameter ARCH=x86_64
angehängt werden)
make
make install
exit
--- Neustarten ---
Updates einspielen
sudo apt-get update
sudo apt-get upgrade
Unter anderem werden auch Pakete eines aktualisierten Kernels eingespielt
linux-headers-2.6.24-19
linux-headers-2.6.24-19-generic
linux-image-2.6.24-19-generic
Das Modul sata_mv
steht danach zwar immer noch auf der blacklist, man sollte es aber zur Sicherheit löschen
sudo rm /lib/modules/`uname -r`/kernel/drivers/ata/sata_mv.ko
--- Neustarten ---
Als Nächstes folgt die Installation eines Management-Programms für das RAID. Ich habe mich dabei für den WebGUI entschieden, da er meiner Meinung nach am praktischsten ist.
Zuerstes sollte man auf der Webseite den aktuellsten "WebGUI" heraussuchen http://www.highpoint-tech.com/USA/bios_rr2310.htm
Als Nächstes laden wir die vorher ausgesuchte Version mit wget runter und entpacken sie
cd /tmp
wget http://www.highpoint-tech.com/BIOS_Driver/HRM/Linux/WebGui-Linux-v1.4-8-080829.tgz
tar xzf WebGui-Linux-v1.4-8-080829.tgz
cd WebGui-Linux-v1.4-8-080829
Um das WebGUI-Paket zu installieren laden wir alien runter, da die Original-Pakete als RPM vorliegen
sudo apt-get install alien
Nun wandeln wir das Paket um und installieren es gleich (für ein AMD64-System muss man hier statt hptsvr-https-1.4-8.i386.rpm
hptsvr-https-1.4-8.x86_64.rpm
installieren)
$ sudo alien -d -i -c hptsvr-https-1.4-8.i386.rpm
dpkg --no-force-overwrite -i hptsvr-https_1.4-9_i386.deb
Wähle vormals abgewähltes Paket hptsvr-https.
(Lese Datenbank ... 100562 Dateien und Verzeichnisse sind derzeit installiert.)
Entpacke hptsvr-https (aus hptsvr-https_1.4-9_i386.deb) ...
Richte hptsvr-https ein (1.4-9) ...
Adding system startup for /etc/init.d/hptdaemon ...
/etc/rc0.d/K20hptdaemon -> ../init.d/hptdaemon
/etc/rc1.d/K20hptdaemon -> ../init.d/hptdaemon
/etc/rc6.d/K20hptdaemon -> ../init.d/hptdaemon
/etc/rc2.d/S20hptdaemon -> ../init.d/hptdaemon
/etc/rc3.d/S20hptdaemon -> ../init.d/hptdaemon
/etc/rc4.d/S20hptdaemon -> ../init.d/hptdaemon
/etc/rc5.d/S20hptdaemon -> ../init.d/hptdaemon
Starting hptsvr daemon.
Das Management-Programm kann nun unter https://localhost:7402/
mit jedem Browser aufgerufen (wenn man von einem externen Computer zugreifen will, muss man localhost
durch die IP-Adresse des Servers ersetzen).
Da die Seite ein ungültiges Sicherheitszertifikat verwendet, muss man in Firefox 3 noch eine Ausnahme hinzufügen.
Zum Anmelden verwendet man als Benutzername RAID
und als Passwort hpt
. Diese Daten lassen sich später über das Konfigurationsmenü noch ändern.
Fehlercode: sec_error_reused_issuer_and_serial
Sollte in Firefox dabei der folgende Fehler auftreten
Ihr Zertifikat enthält die gleiche Seriennummer wie ein anderes Zertifikat dieser Zertifizierungsstelle. Bitte erwerben Sie ein neues Zertifikat mit einer eindeutigen Seriennummer.
(Fehlercode: sec_error_reused_issuer_and_serial)
muss die Datei cert8.db
im Firefox-Profilordner gelöscht werden
rm ~/.mozilla/firefox/*.default/cert8.db