Archive for the ‘Administration’ category

DSDT-Fix FSC Amilo xi 1526

Juli 18, 2010

Da mich das ständige Warten beim Booten gestört hat, wo der Rechner quasi nichts getan hat,  bin ich dem nachgegangen. Dabei bin ich dann in diversen Foren auf den Hinweiß einer neuen/modifizierten DSDT gestoßen.

Alles Weitere geschieht auf eigene Verantwortung, immer ein Backup der alten initramfs und Kernels vorhalten! Bei Fehlern ist das System unter Umständen nicht mehr Bootbar.

https://bugs.launchpad.net/ubuntu/karmic/+source/linux/+bug/100110

Habe hier auch meine bearbeitete DSDT. In der ich auch noch eine Warnung behoben habe. (weiter geht es ab dem Kompilieren.)

http://www.dateiupload.com/files/e5ooLE3aUy.dsl

oder

http://www.fileuploadx.de/181867

Also habe ich nach der Anleitung in Post 10 gearbeitet. Hier das ganze noch mal ins deutsche übersetzt.

sudo apt-get install iasl
sudo cat /proc/acpi/dsdt > dsdt.dat 
sudo iasl -d dsdt.dat

Um die 18 Sekunden zu entfernen die dsdt.dsl mit mousepad öffnen.

sudo mousepad dsdt.dsl

In der Funkion „Device (EC0)“ folgendes ändern:
Sleep (0x2710) ändern in Sleep (0x3E8)Zeile 4191
Sleep (0x1F40) ändern in Sleep (0x3E8)Zeile 4211

Danach speichern und in der Konsole wieder die DSDT kompilieren.

sudo iasl -tc dsdt.dsl

Updaten der bestehenden initramfs (Funktioniert beim Kernel 2.6.32 nicht)

sudo cp dsdt.aml /etc/initramfs-tools/DSDT.aml
sudo mkinitramfs -o /boot/initrd.img-$(uname -r)
sudo reboot

Der neue Weg unter Lucid

Da dies nun nicht mehr zur Lösung führte habe ich mich mit dem Thema Kernelkompilierung auseinander gesetzt. Auch dabei bin ich wieder auf interessante Links gestoßen die ich dem geneigten Leser nicht vorenthalten möchte.

http://www.computerhok.nl/JSPWiki/Wiki.jsp?page=Installatie%20Ubuntu%20Lucid%20Lynx

http://ubuntuforums.org/showthread.php?t=1341580

http://blog.avirtualhome.com/2010/05/05/how-to-compile-a-ubuntu-lucid-kernel/

Voraussetzung ist auch hier wieder eine angepasste DSDT. Für diesen Schritt benötigen wir die dsdt.hex welche beim Kompilieren zusammen mit der dsdt.aml entsteht. (Bitte  bei allen weiteren Schritten eventuelle Kernel-Versionsnummern anpassen.)

Die Kernelkompilierung vorbereiten.

sudo apt-get install fakeroot kernel-wedge build-essential crash kexec-tools makedumpfile
sudo apt-get build-dep linux
sudo apt-get install qt3-dev-tools libqt3-mt-dev
sudo apt-get install linux-source

Neuen Kernelkompilierungsordner erstellen.

mkdir src

cd src

Kernel-Sources entpacken und die Konfiguration des aktuellen Kernels übernehmen.

tar xjf /usr/src/linux-source-2.6.32.tar.bz2
cd linux-source-2.6.32/
cp -vi /boot/config-$(uname -r) .config

Änderungen am Kernel durchführen.

make xconfig

Hier nun auf der rechten Seite unter Power management and ACPI options -> auf ACPI (Advanced Configurations and Power Interface) Support klicken. Danach auf der linken Seite auf Custom DSDT Table file to include: doppelt klicken. Nun erscheint ein Eingabefeld unter der Liste, in der nun der Pfad zur eigenen dsdt.hex angeben wird. Hiernach speichern und das Programm schließen.

Jetzt folgendes in der Konsole eingeben, damit beide Kerne beim Kompilieren benutzt werden (Geht um einiges schneller)

export CONCURRENCY_LEVEL=3

Nun sind wir soweit, dass wir unseren eigenen Kernel kompilieren können. Dafür folgende Zeile in die Konsole eingeben.

time fakeroot make-kpkg --initrd kernel-image kernel-headers

Dies dauert eine ganze Weile. Ich hab es unter der TTy1 gemacht und den XServer angehalten und es dauerte immer noch eine geschlagene Stunde.

Damit der neue Kernel gebootet werden kann noch die letzten Befehle ausführen.

cd ..
sudo dpkg -i linux-image* linux-headers*
sudo update-initramfs -c -k 2.6.32.15+drm33.5
sudo update-grub2

Update-Initramfs muss eventuell an die Kernelversion angepasst werden. Zu sehen an der Datei linux-image*.

Update-Grub2 oder update-grub verwenden, hängt hier von der Version von Grub zusammen.

Jetzt ist alles geschafft und der neue Kernel kann gebootet werden. Bitte darauf achten das die Möglichkeit besteht den alten Kernel zu laden. Viel Spaß mit dem neuen Kernel und der um 18 Sekunden kürzeren Bootzeit.

Eine weitere Kernel-Konfiguration zu genau diesem Laptop wird noch hier veröffentlicht, sobald diese fertig ist. (CPU-Typ auf Core2/Xeron stellen bring enorme Geschwindigkeitsvorteile aber dazu später mehr.)

Advertisements

Software RAID – Erfahrungsbericht

September 20, 2009

Vielleicht sollte ich, bevor ich mich weiter über das Thema Software-RAID auslasse, kurz meine Motivation schildern, warum ich mich mit diesem Thema beschäftigt habe.

Der ausschlaggebende Punkt war der neue Web-Server der Schule. Alles ganz schön und gut, jedoch haben die Zuständigen für Haushaltsentscheidungen, sich nicht genauer mit den Spezifikationen des Servers auseinander gesetzt. So steht im Handbuch des gelieferten Servers „Designed for M$“. Nun ja, da der Webserver auf einem Debian System aufsetzen sollte, habe ich mir hier erst mal keine Gedanken gemacht, da ich es schon oft erlebt habe das die Hardware trotzdem unter Linux läuft.

Nach dem der Server nun angeschlossen war und ich das RAID-System in Betrieb nehmen wollte, habe ich partou nicht das RAID-Bios gefunden. Später lass ich auf der Herstellerseite, das genau diese Low-Buget Version des Servers mit einem Software RAID ausgestattet ist. Hierfür wurden dann auch Treiber für M$ Produkte angegeben.

Aus diesem Grunde habe ich mich dann mit Software-RAID’s unter Linux beschäftigt. Hierbei habe ich das RAID-System nach dieser sehr guten Anleitung eingerichtet. Allerdings empfielt es sich, wie so oft, wirklich jeden Schritt nach zu vollziehen. [link]

Da ich allerdings das bestehende HowTo nicht noch mal wieder geben werde, komme ich nun zu den Eckpunkten.

Bevor man überhaupt an das Real-System geht sollte man sich auf jeden Fall ein klares Konzept bereitlegen. So kann man die einzelnen Größen der Partitionen zu bestimmen und sinnvoll deren Zwecke zuführen. Persönlich habe ich mich für ein eigenes „Rescue“-System entschieden, was aus der Basisinstallation eines Debian Etch Linux bestand. (Das war nötig, da der Server im weiteren Verlauf ins Bildungs-Rechenzentrums in Bremen gebracht wird und ich so während der Installation nicht auf ein bestehendes System zurück greifen konnte.)

So habe ich mir auf einer relativ kleinen Partition eine Basisinstallation erstellt und daraus dann über chroot ein weiteres Debian installiert, das Produktiv-System. Das hätte man eleganter lösen können, allerdings finde ich diese Lösung gar nicht mal so schlecht.

Was man auch bedenken sollte, ein Hardware-RAID spiegelt über den RAID-Controller. Sprich das RAID später wieder zusammen zu bauen ohne den richtigen RAID-Controller, kann recht schwierig und zeitaufwendig sein. Beim Software RAID wird der Bootmanager (Grub in meinem Falle) und auch der Linux-Kernel von einer Platte gebootet. Nach letzterer gestartet ist, ist auch das Modul, welches für das Software-Raid zuständig ist geladen. Bei Software-RAID’s muss man Partitionen selektieren, welche und vor allem wohin gespiegelt werden.

So kann ich nun unabhängig welche Platte ausgefalle ist, das System wieder mit einer neuen Platte ausstatten. Auch wenn gegen alle Erwartungen ein Stromausfall sein sollte, könnte ich von beiden Platten booten. Hierzu wird einfach grub-install auf beide Festplatten los gelassen. Danach noch die menu.lst angepasst. So kann ich sogar wählen von welcher Platte der Kernel geladen wird, denn ich lasse bis auf das Rescue-System alles Spiegeln.

Da dann ja wenig später das Update von Etch nach Lenny folgte, konnte ich das RAID-System gleich testen. Also alle Partitionen einer Platte als fehlerhaft makiert und somit die Platte aus dem RAID-Verbund gelöst. Diese dann herraus gezogen und dann ein Distribution-Upgrade durchgeführt. Nach erfolgreichem Abschluss habe ich dann den Server neu gebootet, da auch ein neuer Kernel installiert wurde. Dieses System habe ich dann noch überprüft, ob dieses noch genau so funktioniert, wie das vorherige. Als der Test bestanden war, ging es darum die herraus gezogene Platte wieder in das RAID-Array wieder auf zu nehmen. Hierbei sollte man sehr genau drauf achten, das man die richtigen Partitionen den richtigen Arrays wieder zu ordnet. Nach einem Sync von knapp 4 Stunden hatte ich wieder ein bestehendes RAID-System mit einem geupdateten Debian.

[kurze Code Snipets]