Ich habe ein Kiosk-System mit Linux Debian Wheezy eingerichtet. Nach dem Booten wird ein Benutzer automatisch angemeldet und ausgeführt startx
durch /etc/inittab
.
Das Problem besteht darin, dass Personen die Maschine aufgrund physischer Zugriffe herunterfahren oder das Netzkabel ziehen können und durch Drücken von STRG-C während des Betriebs eine Benutzeroberfläche erhalten init
.
Ist es möglich, Tastenkombinationen wie STRG-C während des Initialisierungsvorgangs zu deaktivieren, bis die Benutzersitzung beginnt und wenn ja, wie?
/etc/inittab
oder so. Aber vielleicht habe ich einen Workaround gefunden, ich könnte den Intr-Schlüssel ändernstty intr ^U
ok, man könnte noch jeden Schlüssel ausprobieren, aber vielleicht sind auch Kombinationen möglich. Ich werde es versuchen.stty intr undef
.stty intr undef
im.bashrc
aber auf dem Kiosk-System funktioniert es nicht. Gibt es noch andere Orte, an die ich mich setzen könnte?stty intr undef
zu? Vielleicht in/etc/inittab
?Antworten:
Das habe ich durch Putten herausgefunden
stty intr undef
im~/.bashrc
es funktioniert perfekt auf meinem Desktop Kubuntu-Rechner. Für das Kiosksystem funktionierte es jedoch nicht. Wahrscheinlich wegen der angepassten Art der automatischen Anmeldung und des Sitzungsstarts.quelle
Es ist möglicherweise einfacher, in GDM / XDM "Runlevel 5" zu starten und ein Gastkonto zu erstellen.
Abgesehen davon können Sie das Boot-Skript (Kernel) ändern, um bestimmte Befehle auszuführen (stty und was nicht). Sie müssten herausfinden, auf welcher Art von Bootsystem das Kiosksystem basiert, um dies zu tun.
Es besteht auch die Möglichkeit, die Tastaturunterstützung als Modul aufzubauen und diese erst nach dem Laden zu laden X-Sitzung wird gestartet. Dies scheint diese einfachste Option zu sein.
Was von inittab ausgeführt wird, wird übrigens über das Init-Skript als root ausgeführt. Das Ausführen von startx als Superuser ist nicht etwas, das Sie in einem öffentlichen Browser ausführen möchten.
quelle
/etc/inittab
ist ein Autologin für den Kioskbenutzer:1:2345:respawn:/sbin/getty -n -l /usr/sbin/autologin 38400 tty1
Danach der Prozessstartx
wird automatisch durch einen Eintrag in gestartet/home/kiosk/.bash_profile
Dies scheint also ziemlich sicher zu sein, falls niemand den Start der X-Sitzung unterbrechen kann. Der Init-Prozess kann, soweit ich weiß, nicht unterbrochen werden.