Ausführen eines Computers im Kioskmodus für ein benutzerdefiniertes Linux C ++ - Programm

2

Ich möchte eine C ++ - Anwendung erstellen, die auf einer Linux-Plattform auf einem bestimmten Laptop-Computer ausgeführt werden soll. Ich möchte jedoch nicht, dass die Benutzer dieses Laptops andere Anwendungen / Systemfunktionen als dieses Programm verwenden - ähnlich wie die Kioskmodi, die Sie auf Computern in einem typischen Internetcafé finden würden.

Ein Problem ist, dass der Laptop vom Benutzer gestartet wird und meine Software automatisch gestartet werden muss, sodass der Benutzer so wenig Raum wie möglich hat, um in den Prozess einzugreifen. Es muss nicht vollständig sicher sein, aber es sollte so nah wie möglich sein.

Was wäre der beste Weg, um so etwas zu erreichen? Gibt es (kostenlose) Linux-Distributionen, die speziell für diesen Zweck entwickelt wurden (wenn nicht, werde ich wahrscheinlich Arch Linux verwenden)? Gibt es irgendwelche Schritte, die ich in meinem Programm unternehmen könnte / sollte, oder kann ich alles dem Betriebssystem überlassen? Würde es sich lohnen, meine eigene kleine Linux-Distribution speziell dafür zu erstellen?

Oystein
quelle

Antworten:

3

Sie suchen wahrscheinlich nach Sabayon :

Sabayon ist ein Systemverwaltungstool zum Definieren und Bereitstellen von Desktop-Profilen für die GNOME-Desktop-Umgebung. Es ermöglicht Ihnen die Steuerung von Bedienfeldlayouts, Menüelementen und Standardeinstellungen für gconf sowie die Bereitstellung vordefinierter Standardeinstellungen für einige Nicht-GNOME-Programme wie Firefox. Es nutzt auch die Lockdown-Funktionalität von Pessulus. Dazu wird ein "Desktop in einem Fenster" bereitgestellt, mit dem Sie Ihren Desktop nach Belieben anpassen und dann Ihre Änderungen aufzeichnen können, die vom Sabayon-Apply-Programm zum Zeitpunkt der Anmeldung auf die Benutzer angewendet werden.

Siehe auch diesen Artikel: Linux Kiosk: Ein Ubuntu / Gnome-Sperrszenario .

Harrymc
quelle
Dies scheint eher darauf ausgerichtet zu sein, einen speziellen Desktop für den Benutzer zu erstellen, eine GNOME-Konfiguration, nach der ich eigentlich nicht suche. Ich brauche GNOME überhaupt nicht. Trotzdem werde ich mir sowohl die Distribution als auch den Artikel genauer ansehen, da könnte etwas von Nutzen sein.
Oystein
Ich denke, Sabayon wird für das arbeiten, was Sie erreichen wollen. Es sollte Ihnen ermöglichen, Ihre Software automatisch zu starten und sicherzustellen, dass nur diese ausgeführt werden kann. Ich würde Folgendes zu Harrymcs Artikeln über dieses Thema hinzufügen. users.telenet.be/mydotcom/howto/linuxkiosk/ubuntu01.htm
Wagnarock
Das ist derselbe Link, den Harrymc gab :) Wie ist die Leistung von Sabayon auf älteren Computern? Können Sie es auf ein Minimum reduzieren?
Oystein
Sabayon scheint nur eine administrative Ebene über Linux zu sein. Linux funktioniert im Allgemeinen auf älteren Computern ziemlich gut, und es gibt viele Installationsoptionen, um es zu reduzieren. Wenn Ubuntu nicht effizient genug ist, müssen Sie möglicherweise zu einer der minimalistischen Linux-Distributionen übergehen, aber das ist ein weiteres Problem.
Harrymc
1

Auf jeder normalen Linux-Distribution im Einzelbenutzermodus ausführen und Ihr Programm als einziges Programm an X übergeben (also ohne etwas wie KDE / Gnome / xfce /, was auch immer den Trick macht).

So etwas wie dieses Tutorial (entfernen Sie die Firefox-Teile und ersetzen Sie Ihr eigenes Programm). Die Suche nach xinit + kiosk oder xorg + kiosk bietet jedoch eine Fülle von Informationen.

Natürlich sind auch geeignete Vorsichtsmaßnahmen wie das Deaktivieren des Zugriffs auf BIOS & GRUB / Bootloader erforderlich, ebenso wie das Ablehnen des Bootens von USB / LAN / CD-ROM / Diskette.

Wrikken
quelle