HowTo: RocketRAID 2310 RAID Host Adapter mit Dynamic Kernel Module Support (DKMS) unter Ubuntu installieren
Das von Dell entwickelte Hilfsprogramm Dynamic Kernel Module Support (DKMS), sorgt dafür, dass Kernelmodule, die manuell installiert wurden, immer dann aktualisiert werden, wenn ein neuer Kernel installiert wird. Somit entfällt der Aufwand, dies nach jedem Update manuell zu erledigen.
Von der HighPoint-Support-Seite die neueste Version des Treibers herunterladen
sudo su
cd /tmp
wget http://www.highpoint-tech.com/BIOS_Driver/rr231x_00/Linux/rr231x_0x-linux-src-v2.5-091022-1618.tar.gz
tar xzf rr231x_0x-linux-src-v2.5-091022-1618.tar.gz
Die notwendigen Pakete installieren
sudo apt-get update
sudo apt-get install build-essential dkms
Da der Treiber von HighPoint offenbar nicht mehr gepflegt wird, muss er für die Nutzung mit einem Kernel >= 2.6.37 zuerst gepatcht werden. Ein Mitglied aus dem Arch Linux Forums stellt dafür ein Paket bereit. Dieses kann nicht direkt unter Ubuntu verwendet werden, die Patches lassen sich aber trotzdem anwenden. Da der Treiber nicht offiziell zur Verfügung gestellt wird, besteht natürlich das Risiko, dass es zu einem Fehler bzw. Datenverlust kommen kann. Bei mir hat es bisher jedoch ohne Probleme funktioniert.
wget http://aur.archlinux.org/packages/rr/rr231x_0x/rr231x_0x.tar.gz
tar xzf rr231x_0x.tar.gz
patch -p1 -i rr231x_0x/scsi_lck.patch
patch -p1 -i rr231x_0x/kernel3.patch
Den Treiber in ein Verzeichnis nach dem Schema /usr/src/<module>-<module-version>/
verschieben
mv rr231x_0x-linux-src-v2.5 /usr/src/rr2310_00-2.5/
Die Konfigurationsdatei dkms.conf
anlegen
cd /usr/src/rr2310_00-2.5/
vi dkms.conf
MAKE[0]="make -C product/rr2310pm/linux/ KERNELDIR=/lib/modules/$kernelver/build/"
CLEAN="make -C product/rr2310pm/linux/ clean"
BUILT_MODULE_NAME[0]="rr2310_00"
DEST_MODULE_LOCATION[0]="/kernel/drivers/scsi/"
BUILT_MODULE_LOCATION="product/rr2310pm/linux/"
PACKAGE_NAME="rr2310_00"
PACKAGE_VERSION="2.5"
AUTOINSTALL="yes"
REMAKE_INITRD="yes"
Modul sata_mv
zur Blacklist hinzufügen
vi /etc/modprobe.d/blacklist.conf
# replaced by rr2310_00
blacklist sata_mv
Modul rr2310_00
in /etc/initramfs-tools/modules
eintragen, damit es für den Systemstart zum initramfs
hinzugefügt wird
echo rr2310_00 >> /etc/initramfs-tools/modules
Verzeichnis zu DKMS hinzufügen
dkms add -m rr2310_00 -v 2.5
Modul mit DKMS kompilieren
dkms build -m rr2310_00 -v 2.5
Modul mit DKMS installieren
dkms install -m rr2310_00 -v 2.5
Um die Kernel-Version festzulegen, kann man die Option -k 2.6.32-27-generic
verwenden. Weitere wichtige Befehle sind unter anderem uninstall
, remove
, status
und mkdeb
.
Links
- ubuntuusers.de Wiki: DKMS
- CentOS Wiki: Build Your Own Kernel Modules
- Community Ubuntu Documentation: RocketRaid
- Community Ubuntu Documentation: Kernel DKMS Package
- Dell Linux Projects: DKMS
- Manpage of DKMS
- Dell TechCenter: Linux Projects
- HighPoint-Support-Seite: RocketRAID 2300 Series
- Arch Linux Forums: RAID Interface Mappings with RocketRaid 2310 (rr2310_00) fail in .37
- AUR: Package rr231x_0x 2.5-1
Ich habe die Anleitung genau befolgt jedoch kommt beim build:
hat schon jemand dieses Problem gelöst?
Unter Ubuntu 12.04 LTS hatte ich auch das Problem, dass der Treiber nicht mehr kompiliert werden konnte. Da er von HighPoint offenbar nicht mehr gepflegt wird, bleibt nur die Möglichkeit, ihn selbst zu patchen. Im Arch Linux Forums gibt es dafür ein Paket, das den Fehler beheben soll. Die Patches können auch unter Ubuntu verwendet werden und bei mir läuft es so wieder. Ich habe das ganze Prozedere oben ergänzt. 🙂