为图书馆Internet信息亭定制Ubuntu


33

我想为图书馆自定义ubuntu,他们只想以全屏显示网站的Web浏览器。没有地址栏,没有按钮用户只能单击页面上的链接。如果图书馆工作人员输入管理员用户名和密码,他们可以更改ubuntu中的任何设置。

任何建议或有用的链接将不胜感激。


对浏览器品牌/版本或其他应用程序有偏好吗?
david6'4-4-24

对此有任何更新吗?有什么办法增加后退功能吗?

Answers:


24

我相信这篇精彩的文章会用大量的截图来说明您想要什么。您想要在登录管理器中创建一个特殊会话,该会话将使用信息亭选项启动类似Google Chrome的浏览器。您可以对其进行设置,以使普通用户可以自动登录到该自助服务终端会话,但是会引入短暂的延迟,以允许管理员用户登录到普通的Ubuntu会话来管理对系统的更改。

这些步骤非常详细,因此在这里我不会完整复制它们。但是由于Ask Ubuntu不鼓励仅进行链接(以防链接站点出现故障),因此我将在此处剪切并粘贴关键步骤。您应该转到完整说明的链接。

您需要在其中创建的桌面文件/usr/share/xsessions/应具有:

[Desktop Entry]
Encoding=UTF-8
Name=Kiosk Mode
Comment=Chromium Kiosk Mode
Exec=/usr/share/xsessions/chromeKiosk.sh
Type=Application

脚本chromeKiosk.sh应放置在具有执行权限的同一目录中,如下所示:

#!/bin/bash
xscreensaver -nosplash &
cat ~/.config/chromium/Local\ State | perl -pe "s/\"bottom.*/\"bottom\": $(xrandr | grep \* | cut -d' ' -f4 | cut -d'x' -f2),/" > ~/.config/chromium/Local\ State
cat ~/.config/chromium/Local\ State | perl -pe "s/\"right.*/\"right\": $(xrandr | grep \* | cut -d' ' -f4 | cut -d'x' -f1),/" > ~/.config/chromium/Local\ State
while true; do chromium-browser %u --start-maximized; sleep 5s; done

1
如果我在12.04上执行此操作,则浏览器无法覆盖整个屏幕。我有边界。好像浏览器认为屏幕不是1024x768。你有什么想法?
克里斯·伍拉德

@ChrisWoollard您是否尝试了我链接到的文章中的“测试”的最后一步?
Chan-Ho Suh 2012年

@ Chan-HoSuh我发现自定义pyGtK应用程序仍然存在相同的问题。关于如何最大化自定义应用程序的任何想法?
Juzer Ali 2012年

一切进展顺利,直到:“选择Kiosk Mode作为默认会话”我该怎么做?
Wyck

7

我找到了使用Firefox的方法,因为我想避免全屏模式:

Ubuntu + Firefox的信息亭解决方案:

安装Ubuntu / Lubuntu /其他

将用户设为管理员使用户信息亭设置信息亭为自动登录,没有密码修复权限(因此,信息亭无法按ctrl-s并窥视到/ home / admin)

cd /home
sudo chmod 700 *

检查您可能需要的打印机和其他硬件是否工作。

安装Firefox附加组件:“ R-kiosk”和“ Reset Kiosk”(搜索“ kiosk”),还可以选择:“ Easy Whitelist”。创建一个名为'[profile] /user.js'的文件(profile是您的firefox配置文件目录的名称,可能是'.default'),并向其中添加以下几行:

user_pref("rkiosk.navbar", true);
user_pref("browser.fullscreen.autohide",false);
user_pref("browser.link.open_newwindow", 3);
user_pref("browser.link.open_newwindow.restriction", 0);
user_pref("privacy.popups.policy", 1);

(最后三行可能需要解释:我必须将其用于依赖于弹出窗口的针对IE设计的特定Web应用程序,因此我希望Firefox以IE的方式打开所有弹出窗口。)

创建一个名为“ [profile] /chrome/userChrome.css”的文件,并在其中添加以下几行:

#bookmarks-menu { display: none !important;}
#window-controls { display: none !important;}
#personal-bookmarks { display: none !important;}
#autohide-context { display: none !important;}
#urlbar { display: none !important; }
#searchbar { display: none !important; }

这将从窗口中删除所有不需要的图标/菜单。万一我忘记了任何内容,请使用定制功能从工具栏中删除项目,或将其移动到例如书签工具栏,该工具栏将从视图中隐藏。

您可能希望将Firefox设置为从不保存历史记录。设置默认主页并重新启动Firefox。请记住,您仍然可以使用alt-f4关闭Firefox,并使用“ firefox -safe-mode”启动它以禁用信息亭模式。

安装Openbox(sudo apt-get install openbox obconf)使用obconf删除多余的窗口–它只会使用户感到困惑。编辑openbox菜单(/etc/xdg/openbox/menu.xml)以删除所有不需要的菜单项。那可能只会让您“退出”,或者一无所有。如果您退出“退出”状态,则信息亭用户可以注销并进入登录屏幕,但是他只能以信息亭的身份再次登录,除非他能猜出admin的密码。如果将其完全删除,则您自己可能无法退出信息亭(例如,以管理员身份登录并进行维护)。在我的Ubuntu安装中,ctrl-alt-backspace和ctrl-alt-sysrq-k均已禁用,因此我只能使用ctrl-alt-sysrq-b重新启动。或者,您可以远程登录或使用ctrl-alt-f1并从命令行进行维护工作。编辑文件〜/ .config / openbox / autostart:

# run firefox:
while true; do firefox; sleep 5s; done &

用户可以在此设置上执行的操作:

使用alt-f4关闭Firefox(但几秒钟后重新启动)。使用alt-tab在程序之间切换(但Firefox是唯一的程序)。他只能跟踪主页上的链接,因此他不能滥用互联网。重新启动计算机(但BIOS中输入密码)ctrl-alt-f1 –但他不知道以管理员身份登录的密码。如果他可以退出openbox并进入lightdm,则可以再次以信息亭的身份登录并选择另一个窗口管理器并获得完全控制,因此您需要从/ usr / share / xsessions /中删除所有其他.desktop条目(openbox除外)。桌面。我不知道您可以将用户绑定到特定的wm。:-(

使用Openbox而不是Xwindows之上的浏览器的优点:

信息亭模式下的Chromium / Firefox始终处于最大化状态。当我不使用wm时,它永远不会填满整个屏幕。我得到了退出菜单选项(可选)。

到底有什么好处呢?

全屏信息亭非常适合浏览特定的网站,例如学校,图书馆或博物馆的网站。但是,如果您迷路了,能够返回主页/开始页面是很不错的,因此,网站的设计需要带有大的主页按钮和非常容易的导航。而且您不能有任何链接导致用户不在现场,因为他们无法回来。当然,浏览器将在一段时间不活动后重置,或者如果您使用alt-f4将其关闭,则大多数用户将不知道该设置,并且会感到非常沮丧。这就是为什么全屏模式通常不总是那么用户友好的原因,这就是为什么我想保留一些工具栏功能,而只有Firefox可以给我,而不是Chrome。或者尝试一下Openkiosk,由于弹出问题,它对我不起作用,但可能对您有用。


3

Firefox信息亭

铬浏览器信息亭配置不允许使用要求“ java”的网页。Java(IcedTea)没有可用的PPAPI插件,因此在Chromium中不可用,因为Trusty中的Chromium 34已切换到Aura渲染框架,并且不再允许使用NPAPI插件。

Firefox信息亭可以!此配置在Ubuntu 12.04 LTS和Ubuntu 14.04 LTS上均可使用。

第一步是创建“信息亭”用户。

安装Cinnamon (我必须摆脱Unity桌面)

sudo add-apt-repository ppa:lestcape/cinnamon    
sudo apt-get update && sudo apt-get install cinnamon

安装mKiosk

从“ Kiosk用户”配置文件中安装mKiosk Web浏览器(公共终端)-(Firefox的附件)。系统将提示您有关管理员使用的警告。接受并继续前进。

  1. 在“基本”标签中:选择“始终以全屏模式启动”,并将此标签上的所有其他内容保留为默认设置
  2. 在“网络”选项卡中:代理选项–将“受限用户”保留为“已禁用(仅直接连接)”
  3. 从“外观”选项卡:全屏显示–选择“全屏查看地址栏”,“显示选项卡”,“显示书签工具栏”。取消选择“显示打印机”按钮和“显示重置”按钮(当然,除非您愿意)。
  4. 从“安全性”选项卡:在“清除以关闭会话”上–选择“删除缓存文件并在限制时清除历史记录(仅在安全模式下回滚!!)” –选择“使用密码”(F1,F2,F11 / Ctrl + Shift + F和F12 / Ctrl + Shift + W)!并提供管理员密码。
  5. 在“迭代度”选项卡上:保留默认值。

注意:在第4步中,信息亭用户点击括号中的任何这些键时,系统会提示他们输入管理员密码。

F1–配置mKiosk –配置
F2Firefox首选项
Ctrl+ Shift+ FF11–退出全屏模式
Ctrl+ Shift+ WF12–退出Firefox

配置mKiosk后,将再次提示您输入管理员密码。您可能必须按几次返回按钮才能返回到主页和全屏模式(或按一下F11)。您将收到管理员密码已更改的通知。

现在,您可以为工具栏配置书签按钮,例如“主页”(否则,后退按钮是返回首页的唯一方法,而用户不会这样做)。

在Ubuntu中安装Oracle Java 7

sudo add-apt-repository ppa:webupd8team/java    
sudo apt-get update    
sudo apt-get install oracle-java7-installer    
sudo apt-get install oracle-java7-set-default

现在,您可以将Firefox添加到信息亭用户的“启动应用程序”中。您将必须退出浏览器(F12

创建Firefox桌面

打开文件(sudo nano /usr/share/xsessions/Firefox.desktop)并粘贴:

[Desktop Entry]    
Name=Firefox (No effects)    
Comment=This session only opens Firefox    
Exec=/usr/bin/firefox -height 768 -width 1024    
Icon=    
Type=Application

注销,为Kiosk用户选择Firefox(无影响)登录名并登录。

自动登录“信息亭用户”

您将必须以“管理员”身份注销并重新登录,以管理“信息亭用户”的“自动登录”。

  1. 以“管理员”身份登录到gnome桌面

  2. 应用程序>系统工具>管理>用户帐户

  3. 解锁信息亭用户并将自动登录设置为是

管理Ubuntu的更新

  1. 点击F12按钮。系统将提示您输入mKiosk管理员密码。Firefox将退出,您将返回登录屏幕。

  2. 以“管理员”身份登录。转到更新管理器,扫描更新并安装。

  3. 重启。做完了


2

我已经设置好了。我为您提供了一个简单的脚本。运行此脚本,您将可以使用全屏浏览器浏览其网站。没有地址栏,没有按钮,用户只能单击页面上的链接。

wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -

sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google.list'

sudo apt-get update sudo apt-get install google-chrome-stable -y

echo '[Desktop Entry]
Encoding=UTF-8
Name=Kiosk Mode
Comment=Chrome Kiosk Mode
Exec=/usr/share/xsessions/chromeKiosk.sh
Type=Application' >/usr/share/xsessions/kiosk.desktop

echo '#!/bin/bash
xset s off
xset s noblank
nm-applet &
sleep 5s
while true; do 
    google-chrome --window-size=1920,1080 --kiosk --window-position=0,0 http://google.com; 
    sleep 5s; 
done' >/usr/share/xsessions/chromeKiosk.sh

sudo chmod +x /usr/share/xsessions/chromeKiosk.sh

将所有内容复制到.sh文件中并运行。脚本完成后,您需要如图所示的Kiosk模式登录。

信息亭模式

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.