“无法退出”的 GUI 程序

“无法退出”的 GUI 程序

是否可以创建一个 GUI 应用程序,用户可以与其交互,但不能切换到任何其他程序(终端、桌面等)。此类应用程序的示例是在公共信息亭上运行的程序,您希望用户能够使用您的应用程序,但不能以任何其他方式弄乱计算机。

如果这并非完全可能,那么用户切换应用程序会变得多“困难”,并对系统造成多大的潜在损害?

附言:如果需要的话,我可以在单独的用户帐户、chroot 等下运行该程序。

答案1

有一个信息亭模式为了node-webkit程序启动后全屏显示对于 Linux,可以使用Alt-F4系统级处理的组合键来绕过它。该库指出,否则该程序将被视为潜在病毒:

在 Linux 和 Windows 上,用户仍然可以通过按 Alt + F4 和 Control + Alt + Del 等键退出 node-webkit,目前 node-webkit 不会阻止这些键,因为这会使 node-webkit 表现得像病毒并被 AV 软件阻止。

答案2

您可以启动没有窗口管理器(或专门配置的轻量级窗口管理器)的 X 服务器,只运行您的应用程序。此示例将使用xterm,将其替换为您的应用程序。

为此,创建文件~/.xinitrc并添加如下内容:

exec xterm

现在通过 TTY 登录并输入以下命令:

startx

这应该启动一个仅xterm运行的 X 服务器。

您还可以通过将以下内容添加到您的来禁用切换到 TTY xorg.conf

Section "ServerFlags"
    Option "DontVTSwitch" "true"
EndSection

按照这样的思路进行游戏你就会到达你想要去的地方。


如果您需要窗口管理器,OpenBox 可能是一个不错的选择,因为它具有极高的可配置性(您可以删除所有标准键盘快捷键,例如ALT+F4等)

要使用 OpenBox,请使用 安装它sudo apt-get install openbox并将其放入exec openbox-session您的~/.xinitrc,然后将您的应用程序添加到~/.config/openbox/autostart

相关内容