Liebe Debiangemeinde!
Seit Monaten kämpfe ich immer wieder mit einem komplett eingefrorenem System dank KMS. Heute war es schon wieder so weit. Ich weiß, dass ich KMS deaktivieren kann. Aber ich möchte den Kernel-Hackern bei der Fehlersuche helfen. Daher bin ich auf funktionierende Sysrq-Befehle angewiesen. Einige funktionieren, andere hingegen nicht.
Ich würde gerne R E I S U B im falle eines hängenden Systems verwenden können. Allerdings sagt der Kernel bei E I und S "This sysrq operation is disabled". cat /proc/sys/kernel/sysrq ergibt "438".
Wenn ich die Zahl manuell editiere, dann ist sie beim reboot wieder die selbe. Wie kann ich also alle sysrq-Befehle dauerhaft aktivieren? Vor allem möchte ich gerne sysrq T nutzen können, um das schuldige Programm zum ausplaudern seiner Geheimnisse zu bewegen.
[gelöst] fehlende sysrq befehle aktivieren
[gelöst] fehlende sysrq befehle aktivieren
Zuletzt geändert von clue am 11.03.2011 10:31:58, insgesamt 1-mal geändert.
Offenbarung 13 erfüllt sich gerade vor unseren Augen, genießen wir also die letzten Jahre unserer Scheinfreiheit
Re: fehlende sysrq befehle aktivieren
hi,
* die billigste Lösung¹: eine Zeile in /etc/rc.local:
die offizielle Debian-Lösung²: eine Zeile in einer neuen Datei namens /etc/sysctl.d/local.conf:
* fast genauso offiziell: die gleiche Zeile in /etc/sysctl.conf
* die radikale Variante³, angeblich werden die vorigen Einstellungen dann ignoriert: ein Kernel-Boot-Parameter:
* Die wirklich dauerhafte Lösung: einen eigenen Kernel ohne diesen speziellen Debian-sysrq-Patch bauen. Weil manche sysrq-Funktionen den normalen Betrieb ein wenig stören könnten, waren ursprünglich alle abgeschaltet. Weil aber manche Funktionen sehr nützlich sind, waren eine Zeit lang alle eingeschaltet -- bis jemand sie als sicherheitskritisch eingestuft hat, z.B. hier 562884. Daraufhin hat Debian einen Kompromiss gemacht und E und F abgeschaltet (siehe letzte Message zum Bug); der Debian-Default war dann 0x1b6 (=438).
1) /usr/src/linux/Documentation/sysrq.txt
2) /etc/sysctl.d/README.sysctl
3) /usr/src/linux/Documentation/kernel-parameters.txt
* die billigste Lösung¹: eine Zeile in /etc/rc.local:
Code: Alles auswählen
echo 1 > /proc/sys/kernel/sysrq
Code: Alles auswählen
kernel.sysrq=1
* die radikale Variante³, angeblich werden die vorigen Einstellungen dann ignoriert: ein Kernel-Boot-Parameter:
Code: Alles auswählen
sysrq_always_enabled
1) /usr/src/linux/Documentation/sysrq.txt
2) /etc/sysctl.d/README.sysctl
3) /usr/src/linux/Documentation/kernel-parameters.txt
Beware of programmers who carry screwdrivers.
Re: fehlende sysrq befehle aktivieren
Wow, das nenn ich mal eine umfassende Antwort, vielen Dank, cosmac!
Offenbarung 13 erfüllt sich gerade vor unseren Augen, genießen wir also die letzten Jahre unserer Scheinfreiheit
Re: [gelöst] fehlende sysrq befehle aktivieren
Nur schade, dass die Befehle dann trotzdem nicht funktionieren, wenn die Kiste mal wieder hängt
Offenbarung 13 erfüllt sich gerade vor unseren Augen, genießen wir also die letzten Jahre unserer Scheinfreiheit