Как сделать ubuntu 14.04 киоском [дубликат]

На этот вопрос уже есть ответ здесь:

Я сделал чистую установку Ubuntu 14.04 LTS Desktop и теперь хочу превратить его в киоск с полноэкранным веб-браузером.

Ранее это было сделано в 10.04 и работало идеально, но из-за аппаратных изменений (графика) мы вынуждены использовать версию 14.04.

Я создал kiosk.desktop в /usr/share/xsessions и сценарий оболочки под названием kiosk.sh, который запускает firefox с установленным r-kiosk. Сценарий оболочки является исполняемым. Пользователь под именем "kiosk" настроен на автологин (в /etc/lightdm/lightdm.conf).

Но теперь я застрял. Я хочу, чтобы kiosk.sh запускался при запуске сессии пользователя kiosk.

В предыдущих версиях это можно было сделать в GUI-инструменте "Login Screen Settings" или в /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf.

Я изменил 50-ubuntu.conf на "user-session=kiosk", но он не запускается. Утилита "Настройки экрана входа в систему" не может быть найдена. Была ли она заменена другой утилитой в 14.04?

Размещение kiosk.sh.desktop в ~/kiosk/.config/autostart работает, но gnome-desktop отображается перед запуском firefox в полноэкранном режиме, что делает возможным взаимодействие пользователей с рабочим столом.

Как правильно/лучшим способом запустить firefox в полноэкранном режиме после автологина пользователя?

Спасибо

Thomas

9
задан 2 July 2014 в 17:55

1 ответ

Я лично отступил бы весь lightdm и Xsession материал и просто запускает мой собственный экземпляр X, который только что запустил Firefox. Звучит кошмарным, но это действительно просто с небольшим Новомодным сценарием

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.


Для Вашей проблемы конфигурации радиоресурсов я предложил бы сохранить такое количество этого далеко от обычных пользователей. Вы могли настроить соединение с помощью TTY справедливо просто:

sudo nmcli dev wifi con <SSID> password <password>

Это должно добавить соединение с системой и подключением (и автоподключение в будущем), но я не протестировал его. Этому даже, возможно, не понадобилось бы sudo но что все зависит, на каких полномочиях Ваш основной пользователь имеет.

Простое преимущество по загрузке чего-то еще в фоновом режиме вот - то, что нет никакого шанса, некоторый прохожий будет иметь доступ к графическому диалогу параметров сети. Это действительно требует, чтобы оператор смог следовать инструкциям.

Если они не могут обработать это, Вы могли бы довольно легко изменить Ваш kiosk.sh искать существующие соединения и спросить некоторых zenity- вопросы, которые питаются в предыдущее nmcli команда:

if [[ $(nmcli con | wc -l) == 1 ]]; then
    SSID=$(zenity ...)
    PASS=$(zenity ...)
    nmcli dev wifi con $SSID password $PASS
fi

Это - просто общее представление. Необходимо будет работать над этим. Может быть лучшее автономное графическое приложение конфигурирования администратора сети.

7
ответ дан 2 July 2014 в 17:55

Другие вопросы по тегам:

Похожие вопросы: