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]
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.