Re: Autologin und Autostart eines QT-Programms unter Suse 8.2
Christian Boltz <suse-/[email protected]>
| Newsgroups | gmane.linux.suse.programming |
|---|---|
| Message-ID | <[email protected]> |
Hallo Marc, hallo Leute,
Am Mittwoch, 1. September 2004 22:34 schrieb Marc Klünder:
> Ich würde gerne mein Suse-System so einstellen, dass nach dem Starten
> automatisch ein Benutzer (nicht root) eingeloggt wird, und im
> Anschluss daran, direkt ein grafisches Qt-Programm geladen wird.
> Bisher habe ich es so gelöst, dass ich beim grafischen Login den
> Benutzer anmelde.
Automatisches Login geht auch. Entweder im KDM so einstellen (geht übers
KDE-Kontrollzentrum) oder ein kleines Startscript schreiben, das
su kioskuser -c starx
ausführt.
> Im Anschluss daran wird KDE geladen. Im
> Autostart-Ordner befindet sich ein Skript, welches das Programm
> startet. Allerdings will ich davon weg,
diverse Tips zur xinitrc hast Du ja schon erhalten.
Nur noch eins: Ich würde für sowas nicht unbedingt KDE empfehlen ;-)
Nimm lieber einen "leichten" Windowmanager ohne viele Zusatzfunktionen,
wenn Du sowieso alles abschalten willst.
Zu ändern ist das über die .xinitrc oder über $WINDOWMANAGER
> Als weiteres besteht noch das Problem, dass ich verhindern will, dass
> man während des Programmbetriebes mittels den Tastenkombinationen
> Alt+Strg+Fx in die verschiedenen Konsolen wechseln kann.
Das sind Tastenkombinationen des X-Servers. In man XF86Config sind im
Abschnitt "Serverflags Section" diverse Optionen gelistet, um diese
Tastenkombinationen abzuschalten.
> Mein letztes Problem besteht darin, dass ich in meinem Programm dem
> Benutzer die Möglichkeit geben will, den Rechner neu zu starten. Ich
> hatte da an die Befehle shutdown -r bzw reboot gedacht, welche ich
> über den Befehl 'system()' aus meinem Programm aufrufen wollte.
> Allerdings kann man diese Konsolenbefehle nur als root ausführen. Die
> Benutzung von 'su' bzw. 'sudo' klappt nicht, da ich im Anschluss
> daran ja das Passwort eingeben muss, und dieses lässt sich nicht
> mittels system() übergeben.
Das wäre auch nicht sonderlich sicher *g*
> Gibt es evtl. weitere mögliche Befehle?
sudo ohne Passwort ;-)
visudo aufrufen und die folgende Zeile eingeben:
halt ALL=(ALL) NOPASSWD:/sbin/init 6
Dadurch darf der Benutzer "halt" den folgenden Befehl ausführen:
sudo /sbin/init 6
Gruß
Christian Boltz
--
3.-5.9.2004: Hoffest der Landjugend Insheim
www.landjugend-insheim.de
--
Um die Liste abzubestellen, schicken Sie eine Mail an:
suse-programming-unsubscribe-IBi9RG/[email protected]
Um eine Liste aller verfügbaren Kommandos zu bekommen, schicken
Sie eine Mail an: suse-programming-help-IBi9RG/[email protected]