如何使ubuntu 14.04成为一个自助服务终端
我已经完成了Ubuntu 14.04 LTS桌面的全新安装,现在希望将其转换为带有全屏webbrowser的自助服务终端。
这是以前在10.04完成的并且工作得很完美,但由于硬件更改(图形),我们不得不使用版本14.04。
我在/usr/share/xsessions
xsessions中创建了一个kiosk.desktop,并在一个名为kiosk.sh
的shell脚本中启动了安装了r-kiosk
firefox。 shell脚本是可执行的。 名为“kiosk”的用户设置为自动登录(在/etc/lightdm/lightdm.conf
)。
但现在我被卡住了。 我想在kiosk用户会话启动时运行kiosk.sh
。
在以前的版本中,可以在GUI工具“登录屏幕设置”或/usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf
。
我已将50-ubuntu.conf
更改为"user-session=kiosk"
但它无法启动。 找不到“登录屏幕设置”工具。 它是否已被14.04中的另一个实用程序取代?
在~/kiosk/.config/autostart works
放置kiosk.sh.desktop
~/kiosk/.config/autostart works
,但是在firefox以全屏模式启动之前会显示gnome-desktop,这样用户就可以与桌面进行交互。
用户自动登录后,在全屏启动firefox的正确/最佳方法是什么?
谢谢
托马斯
我亲自支持所有lightdm
和Xsession
东西,然后启动我刚刚启动Firefox的X实例。 听起来很噩梦但是用一个小小的Upstart脚本真的很简单
start on (filesystem and stopped udevtrigger) stop on runlevel [06] console output emits starting-x respawn exec sudo -u thomas startx /etc/X11/Xsession /path/to/kiosk.sh --
显然,将用户名更改为您想要运行的任何用户,但这就是它。 保存为/etc/init/x.conf
然后你应该能够sudo start x
而你离开了(它会在启动时加载)。 如果Firefox崩溃,它将使用新实例重新加载X.
如果你有一个完整的Ubuntu安装坐在那里,你可能必须首先禁用LightDM:
sudo stop lightdm echo manual | sudo tee /etc/init/lightdm.override
您的Firefox配置文件完全取决于您。 您甚至可能希望在某些配置文件恢复中编写脚本,这样如果有人确实破坏了您的配置文件,您只需要重新启动x
服务,它将再次使用干净副本。 只是一个想法。
我之后撰写了一篇关于使用14.04和Chrome从头开始创建Kiosk的博客文章。
对于您的无线配置问题,我建议尽量远离临时用户。 您可以非常简单地使用TTY建立连接:
sudo nmcli dev wifi con password
这应该添加到系统的连接和连接(以及将来自动连接),但我还没有测试它。 它甚至可能不需要sudo
但这取决于主要用户拥有的权限。
在这里加载其他东西的简单好处是,一些过路人无法访问图形网络设置对话框。 它确实要求操作员能够遵循指令。
如果他们无法处理,你可以很容易地修改你的kiosk.sh
来查找现有的连接,并询问一些zenity
-questions,这些都是前面的nmcli
命令:
if [[ $(nmcli con | wc -l) == 1 ]]; then SSID=$(zenity ...) PASS=$(zenity ...) nmcli dev wifi con $SSID password $PASS fi
这只是一个粗略的想法。 你需要继续努力。 可能有一个更好的独立图形网络管理器配置应用程序。