Как создать всплывающий баннер перед входом в 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?

УВЕДОМЛЕНИЕ ДЛЯ ПОЛЬЗОВАТЕЛЕЙ

Это компьютерная система и / или она напрямую подключена к локальной сетевой системе. Это только для авторизованного использования. Пользователи (авторизованные или неавторизованные) не имеют явного или неявного ожидания конфиденциальности.

Любое или все виды использования этой системы и всех файлов в этой системе могут быть перехвачены, проверены, записаны, скопированы, проверены, проверены и раскрыты уполномоченному персоналу, Министерству энергетики и сотрудникам правоохранительных органов, а также уполномоченным должностным лицам. других агентств, как отечественных, так и зарубежных. Используя эту систему, пользователь соглашается на такой перехват, мониторинг, запись, копирование, аудит, проверку и раскрытие по усмотрению авторизованного сайта или персонала.

Несанкционированное или ненадлежащее использование этой системы может привести к административным дисциплинарным взысканиям и гражданским и уголовным наказаниям. Продолжая использовать эту систему, вы выражаете свое понимание и согласие с этими условиями использования.

НЕМЕДЛЕННО ВЫЙТИ из системы, если вы не согласны с условиями, указанными в этом предупреждении.

4
задан 5 October 2012 в 22:31

1 ответ

Файл конфигурации /etc/lightdm/lightdm.conf определяет доступные сеансы. Сеансы сами определены в / usr / share / xsessions. Не должно быть проблемой изменить значение по умолчанию /usr/share/xsessions/ubuntu.desktop, чтобы обернуть команду gnome-session в сценарий, который сначала отображает диалоговое окно zenity, а затем либо выходит с ненулевым состоянием, либо запускает gnome командование.

В частности:

  1. Создайте файл с именем /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
    
  2. Измените файл /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
    

Теперь, если кто-то пытается войти в систему, человек должен нажать «Да», чтобы войти; в противном случае он вернется к экрану входа в систему.

0
ответ дан 5 October 2012 в 22:31

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

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