* Michael Frank schrieb am 25.Aug.2002:
Nochmal: Der PC läuft als Server/Router nur mit angeschl. Tastatur und ich würde halt gerne außer dem Reboot mit [Strg]+[Alt]+[Entf] auch noch andere Aktionen wie Shutdown o.ä. ausführen, ohne mich remote einloggen zu müssen.
Ich habe nach dem Booten aber noch keine Konsole, dazu müsste ich mich ja einloggen, oder?
Das mit dem "kein getty sondern ein anderes Programm starten" ist mir nicht klar.
Ist das ein Ansatz? Kann man statt dem Login auf Konsole 1 ein Programm starten lassen, das Tastenkürzel annimmt und (am besten als root, wg. shutdown) Skripte startet?
Mach das doch in der /etc/inittab. Normalerweise startet der Kernel als erstes und einziges Programm init. init schaut in der /etc/inittab nach, was es machen soll. Da steht dann z.B daß /etc/init.d/boot gestartet werden soll, oder /etc/init.d/rc, was wiederumt die initskripte startet. Aber auch die mingettys, die auf den einzelnen Konsolen lauschen. Die Syntax der /etc/inittab ist recht einfach, jeder Eintrag besteht aus vier Felder, die durch ein : voneinander getrennt sind. Im ersten Feld muß etwas stehen, daß einmalig ist, ansonsten ist es egal. Im zweiten Feld steht das Runlevel, für der der Eintrag gilt. Im dritten Feld stehen solche Sachen wie once, wait oder respawn, oder auch boot oder bootwait oder auch powerfail und andere. once bedeutet, daß wenn in einem der Runlevel gewechselt wird, das im zweiten Feld steht, dann wird der Befehl, der im vierten Feld steht ausgeführt. wait macht das gleiche, nur daß mit der Ausführung der nächsten Zeilen solange gewartet wird, bis die Ausführung beendet ist. respawn ist auch nicht viel anders, nur daß, sobald der Befehl beendet ist, wird er erneut gestartet. Das geht solange, bis zu einem anderen runlevel gewechselt wird. boot und bootwait sind wie once und wait, nur daß es nur beim booten ausgeführt wird, nicht aber bei einem normalen runlevelwechsel. powerfail wird, wie der Name sagt, ausgeführt, wenn die Stromzuführung ausfällt. Bzw. wenn sie wieder da ist. Im vierten Feld steht der Befehl. Natürlich muß er mit vollen Pfad angegeben werden. Hier könntest Du auch ein shellskript hinschreiben, daß alles macht, was Du willst. Bitte beachte, daß kein Pfad gesetzt ist, und auch kein Terminal zugeordnet. Alles muß umgelenkt werden, auch die Eingabe. (mit <) Interessant könnte für dich tleds sein, damit kanst Du eine gewisse Kontrolle mit den Tastatur LEDs machen.
Frage:
Wie bedient Ihr denn Eure Linux Server/Router? Etwa immer alles über Shell, auch für einen kurzen Reboot?
Wieso reboot? Ein Server läuft normalerweise Tage wenn nicht Jahrelang durch. Wenn man was an der Hardware machen muß, dann ist es meist sowieso besser ein Monitor für die Zeit anzuschließen. Ansonsten wird er mit ssh verwaltet.
An dieser Stelle: An alle Paranoiker da draußen: Bitte jetzt keine Hinweise zum Thema Sicherheit! ;-) Ist mir schon selbst klar, dass das unsicher ist, aber man ist halt faul...
Schlechte Einstellung. Allerding weiß ich nicht, ob es wirklich so unsicher ist. Wenn in dem Skript hart drin steht, daß Befehle nur von /dev/tty1 kommen, dann kann man von außen nicht viel machen, und solange kein Angreifer an die Tastatur kommt. Bernd -- Alle meine Signaturen sind rein zufällig und haben nichts mit dem Text oder dem Schreiber zu tun, dem ich antworte. Falls irgendwelche Unrichtigkeiten dabei sein sollten, so bedauere ich das. Es wäre nett, wenn Du mich benachrichtigen würdest. |Zufallssignatur 0