Как создать всплывающий баннер перед входом в Lightdm?
Когда Ubuntu использовал gnome, я смог создать всплывающий баннер, подобный баннеру ниже, перед экраном входа, используя zenity в / etc / gdm / Init / Default. Строка кода будет выглядеть так:
if [ -f "/usr/bin/zenity" ]; then /usr/bin/zenity --info --text="`cat /etc/issue`" --no-wrap; else xmessage -file /etc/issue -button ok -geometry 540X480; fi
Как я могу сделать это с Unity?
УВЕДОМЛЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ
Это компьютерная система и / или она напрямую связана с локальной сетевой системой. Это только для авторизованного использования. Пользователи (авторизованные или неавторизованные) не имеют явного или неявного ожидания конфиденциальности.
Любое или полное использование этой системы и всех файлов в этой системе может быть перехвачено, отслежено, записано, скопировано, проверено, проверено и раскрыто уполномоченному персоналу сайта, Министерству энергетики и сотрудникам правоохранительных органов, а также уполномоченным должностным лицам других агентств., как отечественные, так и зарубежные. Используя эту систему, пользователь соглашается на такой перехват, мониторинг, запись, копирование, аудит, инспекцию и раскрытие по усмотрению авторизованного сайта или персонала.
Несанкционированное или ненадлежащее использование этой системы может привести к административным дисциплинарным взысканиям и гражданским и уголовным наказаниям. Продолжая использовать эту систему, вы выражаете свое понимание и согласие с этими условиями использования.
ВЫЙТИ НЕМЕДЛЕННО, если вы не согласны с условиями, указанными в этом предупреждении.
1 ответ
Файл конфигурации /etc/lightdm/lightdm.conf определяет доступные сеансы. Сеансы сами определены в /usr/share/xsessions. Не должно быть проблемой изменить значение по умолчанию /usr/share/xsessions/ubuntu.desktop, чтобы обернуть команду gnome-session в сценарий, который сначала отображает диалоговое окно zenity, а затем либо выходит с ненулевым состоянием, либо запускает gnome командование
В частности:
Создайте файл с именем /usr/bin/mysess.sh, который содержит, например, следующее:
#!/bin/bash if /usr/bin/zenity --question --text="`cat /etc/issue`" --no-wrap ; then gnome-session --session=ubuntu ; else exit 1 ; fi
Для редактирования этого файла используйте
gksu gedit /usr/bin/mysess.sh
Кроме того, сделайте его исполняемым
sudo chmod a+x /usr/bin/mysess.sh
Измените файл /usr/share/xsessions/ubuntu.desktop следующим образом:
[Desktop Entry] Name=Ubuntu Comment=This session logs you into Ubuntu Exec=/usr/bin/mysess.sh TryExec=unity Icon= Type=Application X-Ubuntu-Gettext-Domain=gnome-session-3.0
Теперь, если кто-то пытается войти в систему, человек должен нажать "Да", чтобы войти; в противном случае он вернется к экрану входа.