frickelbude://

October 19, 2009

Wie einzellne Dateien aus mksysb Image wiederherstellen?

Filed under: Allgemein — martin @ 1:50 pm

Jaha, so fängt die Woche gut an, auf einer alten AIX 5.2 Box ist der SSH login defekt, dürfte wohl daran liegen dass jemand am Wochenende OpenSSH/SSL für AIX 5.3 darauf installiert hat, hm? Die HMC ist ebenfalls im Eimer, nur noch der Tivoli Endpoint läuft… Über diesen SSH & SSL neu installiert, dummerweise hat es dabei die zahllosen keys in /etc/ssh überschrieben, das ist dann für andere Admins ärgerlich wenn man zB. die alten host_keys aus known_hosts entfernen und neue hinzufügen muss. Wenn dann kein TSM Backup zu Hand ist, hilft nur noch das wiederherstellen aus dem letzten mksysb Image.

1. – Nehmen wir mal an wir haben einen NFS mount des Backupservers unter /mnt eingehangen, darin sich befindend das mksysb Image des lokalen Servers:
Um die Dateien direkt an ihren angestammten Ort wieder herzustellen:
a)
cd /
restore -xqdf /mnt/servername.mksysb ./etc/ssh/ssh_host_key

b)
Will man sich die Dateien erst anschauen, oder anderweitig verwenden:
cd /tmp
restore -xqdf /mnt/serverimage.mksysb ./etc/ssh/ssh_host_key

Unterhalb von /tmp/ würde nun eine Verzeichnisstruktur ./etc/ssh/ angelegt werden mit dem wiederhergestellten Schlüssel darin..

2) Hat man das ganze Geraffel auf Tape (mal angenommen rmt0), sieht das ähnlich aus, ist jedoch leicht umfangreicher:
cd /
tctl -f /dev/rmt0 rewind
restore -xqd -s4 -f /dev/rmt0.1 ./etcssh/ssh_host_key

In diesem Falle würde /etcssh/ssh_host_key würde der host_key direkt wiederhergstellt werden.

December 28, 2008

iSCSI in 20 Minuten einrichten

Filed under: Allgemein — martin @ 12:43 pm

Eigenes SAN in wenigen Minuten einrichten, so gehts…

Nach kurzer Orientierung fällt die Wahl schnell auf IET (iSCSI Enterprise Target) als Target und open-iSCSI als Initiator.
Beides sind recht aktive Projekte die auch aktuelle 2.6er Kernel und 64bit Systeme unterstützen, der IET bietet zudem SMP support.
Da ich mit der in Ubuntu 8.10 enthaltenen Versionen des iSCSI Enterprise Target leichte Probleme hatte, habe ich schließlich beide aus dem Quellcode übersetzt. Das ist recht schmerzfrei wenn man alle Voraussetzungen hat…
(more…)

October 21, 2007

Wie back ich mir n Kernel?

Filed under: Allgemein — martin @ 2:50 pm

Aktuellen Vanillakernel in ner halben Stunde backen, so gehts!

Zutaten:
1 x Debian oder Ubuntusystem
1 x aktuelle Kernelquellen von kernel.org
n x evtl. gewünschte Patches
1 x die Pakete “build-essential”, “kernel-package” und “libncurses5-dev”

Zubereitung:

Quellen entpacken und in das Verzeichnis wechseln:

tar -xjvf linux-.tar.bz2
ln -s linux--
linux
cd linux

Nun wahlweise die alte Kernelconfig in das aktuelle Verzeichnis kopieren,
cp /boot/config-2.6.xxblablubb-usw .config
oder eine Minimalkonfiguration erstellen mittels make defconfig .

Nun sollte einmal der Befehl make oldconfig ausgeführt werden, um hinzugekommene Einstellungen und Features des neuen Kernels abzufragen.

Nach einem make menuconfig erscheint ein wunderschönes ncurses-basiertes Konfigurationsinterface.
Wenn man die alte Kernelkonfiguration übernommen hat, braucht man eigentlich nicht viel tun, aber ein wenig abspecken lohnt sich immer. Module die man nicht benötigen wird, können komplett abgewählt werden. Bei mir ist das zB. Unterstützung für Serielle und Parallele Schnittstellen, Firewire, DVB, IPv6, 1GBit und 10GBit-Ethernet, Virtualisierung, uswusw… Sollte man jemals etwas davon brauchen, kann man sich den passenden Kernel immernoch wieder neu zusammenbauen. Natürlich gilt, umso weniger Module übersetzt werden müssen, umso schneller der Kompiliervorgang, logisch…

Sofern man sich für eine minimale Defaultkonfiguration entschieden hat, sollte man prüfen ob die benötigten Module für den Festplatten-Controller sowie für das Dateisystem auf welchem die Rootpartition “/” liegt, aktiviert sind.

Fertig konfiguriert? Dann geht es ans backen. Der Übersetzungsvorgang wird mittels make-kpkg --initrd kernel-image kernel-headers angestoßen. Das dauert je nach Hardware unterschiedlich lange, auf meinem AthlonXP 2600+ zB. 15min, auf meinem Core 2 Q6600 ca. 8min, genug Zeit für nen Kaffee… Bei erfolgreichem Abschluss finden sich die Kompilate im übergeordneten Verzeichnis. Diese sind mittels dpkg ../*.deb kurzerhand installiert, das System kann nun neu gestartet werden. Wenn der neue Kernel fehlerfrei startet und alle Geräte erkannt werden, kann der alte Kernel entfernt werden.

Viel Spaß beim backen!

edit:

Die Kompilation lässt sich mittels export CONCURRENCY_LEVEL=8 parallelisieren, idR. werden hier die doppelte Anzahl der CPU Kerne als concurrency level empfohlen…
Patches lassen sich zB. mittels patch -p1 < ../2.6.31-sched-bfs-304.patch einspielen, während man sich im Quellcodeverzeichniss befindet.

March 21, 2007

Lüftersteuerung für Compaq Evo N600c

Filed under: Uncategorized — martin @ 9:17 pm

Ich bin mit meinem Compaq Evo N600c “second-hand” Notebook schon seit geraumer Zeit eigentlich sehr zufrieden. Eine Macke hat das ganze Ding jedoch (leider); der Lüfter läuft solange nicht bis der Laptop einmal so richtig durchheizt, schaltet sich dann ein und hält auch selbstständig nicht mehr an. Das obwohl das Gerät eigentlich nichts tut, die meiste Zeit im Speedstep läuft und nur ca. 40°C Prozessortemperatur anzeigt.
Eine Lüftersteuerung musste her…

Die von mir gebastelte Lösung basiert im wesentlichen einfach darauf, dass man unter /proc/acpi/thermal_zone/ die Temperatur des Prozessors auslesen und über /proc/acpi/fan/ den Lüfterstatus regeln kann.

Das ganze benötigt dann nur noch 2 kleine Dateien, eine Konfigurationsdatei “temperatures” in /etc/ und das eigentliche Steuerscript:

/etc/temperatures
fan_off=44
fan_on=49

und /usr/bin/fancontrol

#!/usr/bin/perl
@temp = `cat /etc/temperatures`;
for(@temp)
{
if($_ =~ /fan_on/)
{
$fan_on = substr($_, -3, 2);
}
if($_ =~ /fan_off/)
{
$fan_off = substr($_, -3, 2);
}
}

$time = 0;

for ($time; $time < 60; $time +=1)
{
$cputemp = `cat /proc/acpi/thermal_zone/TZ1/temperature`;
$cputemp = substr($cputemp, -5, 3);
if ($cputemp > $fan_on)
{
$cmd = `echo -n 0 > /proc/acpi/fan/C1F8/state`;
}
if ($cputemp < $fan_off)
{
$cmd = `echo -n 3 > /proc/acpi/fan/C1F8/state`;
}
sleep 1;
}

Bitte entschuldigt die nicht vorhandene Einrückung, hab ich hier im Blog nicht hinbekommen :-/
Das ganze liest also die von euch frei wählbaren Regeltemperaturen aus der Konfigurationsdatei aus und steuert in einer 60 Sekunden Schleife den Lüfter. Damit es auch minütlich aufgerufen wird, fehlt nur noch folgender Eintrag in der crontab von root:

* * * * * /usr/bin/fancontrol &

Hierzu bitte sudo crontab -e benutzen, das Script funktioniert nicht als normaler Benutzer, da dieser kein Echo von Werten nach /proc/ machen darf!
Mit eventuellen Anpassungen an der Lüfter- und CPU-Bezeichnung ist dieses Skript sicher auch auf anderen Distributionen und Notebooks zu gebrauchen.

tags: fancontrol Lüftersteuerung perl linux kubuntu ubuntu debian

February 26, 2007

Wechsel zu Debian 4.0 ‘etch’ auf UltraSPARC

Filed under: Uncategorized — martin @ 12:10 am

Wenn ihr diesen Beitrag gefunden habt, dann steht ihr jetzt sicher vor dem gleichen Problem das ich hatte, nachdem ich das ‘sarge‘ meiner Ultra auf ‘etch‘ (natürlich mit passendem Kernel 2.6.18) aktualisiert habe. Die Tastatur produziert nur noch murks.
Liegt an einer weitgehend überarbeiteten Eingabeschnittstelle im 2.6′er Kernel. Nun werden alle Tastaturen als normale PC-Tastaturen behandelt. Um die Tastatur der Konsole zu ändern, am besten über SSH anmelden, dpkg-reconfigure console-data ausführen und aus der Gesamtliste eine pc-Tastatur auswählen, zB.
pc / qwertz / German / Standard / latin1 - no dead keys .

Bei vorhandener GUI sollte auch die xorg.conf angepasst werden, da auch hier noch die Regeln für die SUN TypeX Tastaturen hinterlegt sind. Das ganze sollte dann wie folgt aussehen:

[...]

Section "InputDevice"
Identifier "Generic Keyboard"
Driver "kbd"
Option "CoreKeyboard"
Option "XkbRules" "pc105"
Option "XkbModel" "pc105"
Option "XkbLayout" "de"
Option "XkbVariant" "nodeadkeys"
EndSection

[...]

February 13, 2007

CDs brennen mit Kernel 2.4

Filed under: Uncategorized — martin @ 11:33 pm

Wer trotz fortgeschrittener Entwicklung des 2.6′er Kernels noch in die Verlegenheit kommt einen 2.4′er Kernel benutzen zu müssen, wird sich vielleicht fragen, wie zur Hölle man damit CDs brennen kann/soll! Mir erging es derart mit Debian 3.1 auf meiner SUN Ultra 10…
cdrecord -scanbus
zeigt jedenfalls, es habe keine Brenner gefunden. Tolle Wurst…

Abhilfe schafft hier die IDE-SCSI Simulation, die folgendermaßen aktiviert werden kann. Bearbeitet werden die jeweiligen Konfigurationsdateien lilo, silo oder grub…

LILO/SILO (/boot/lilo.conf bzw. /boot/silo.conf):

image=/vmlinuz
label=Linux
append = "hdc=ide-scsi"
initrd=/initrd.img

GRUB (/boot/grub/menu.lst):

kernel (hd0,0)/boot/vmlinuz root=/dev/hda1 splash=no hdc=ide-scsi

Problem gelöst. Ist der Brenner ein anderes Laufwerk als /dev/hdc, ist dieses natürlich zu berücksichtigen ;-)

Older Posts »

Powered by WordPress