在某些情况下,在登录之前向我显示一条简短的文本通知会很有帮助,这样我就可以在看到消息后决定不登录。
有没有办法在图形登录屏幕上显示通知消息?
答案1
我意识到这是一个迟来的回应(比如,迟了好几年),但我想我会继续在这里为遇到同样问题的人提供一些东西。我经常看到这个问题。这只是一种易于编写脚本和部署的方法。请记住,这是一个不太优雅的解决方案,类似于这个:如何在使用 Lightdm 登录之前创建弹出横幅?
- 创建一个文件并将其命名为您想要的任何名称,例如:anythingYouWant
将以下内容放入该文件中(当然替换横幅文本):
bannerText="This is my banner and you will love it. Worship it!" zenity --question --title="Pirate Ninja Banner" \ --text=$bannerText" --no-wrap --width=800 --height=200 until [[ $? = '0' ]]: do zenity --question --title="Pirate Ninja Banner" \ --text=$bannerText" --no-wrap --width=800 --height=200 done
调整宽度和高度以满足您的需要。
3a. 这里的想法是,当登录消息显示时,用户只有在同意条款后才能继续,因此它会循环直到选择“是”。
注意(因为我之前不知道这一点):zenity --list 可以返回 true yes false no(布尔值),zenity --question 返回 exit 0,1
使您的文件可执行:
sudo chmod +x anythingYouWant
把它放在某个地方——我只是把它放在了/usr/bin 中
sudo mv anythingYouWant /usr/bin
-----------LIGHTDM-----------------------
如果您使用的是 lightdm,则需要修改 lightdm.conf 文件。我第一次执行此操作时,lightdm.conf 不存在 T_T。所以,如果没有,没关系,请通过以下方式获取副本:
sudo cp /usr/share/doc/lightdm/lightdm.conf /etc/lightdm/
如果这不起作用,那么可能是 /usr/share/doc/lightdm/ 中的文件被压缩了,因此请执行以下操作:
sudo gzip -d /usr/share/doc/lightdm/lightdm.conf.gz
7a. 然后将文件移动到 /etc/lightdm/
打开 lightdm.conf(现在应该在 /etc/lightdm/ 中)并在 [SeatDefaults] 部分下方添加以下内容,如下所示:
[SeatDefaults] greeter-setup-script=/path/to/your/loginMessage
8a. /path/to/your/loginMessage 是您放置先前创建的可执行文件的位置。我将我的文件放在 /usr/bin 中,因此我的文件如下所示:
[SeatDefaults] greeter-setup-script=/usr/bin/loginmessage
8b.保存文件
这应该适用于 lightdm。您也可以创建自己的 lightdm.conf 文件并将上述内容放入其中。
9a.重启。
-----------GDM-------------------
我也使用 GDM 在 CenOS 7 和 Ubuntu 14.04 上测试了这个弹出“循环”。问题是,lightdm.conf 在 GDM 的情况下真的没什么用,不是吗?
嗯,有一个解决方法对我有用(就目前而言)。
打开文件 /etc/gdm/Init/Default
sudo vim /etc/gdm/Init/Default
转至文件底部。
在 0 号出口的正上方放置:
exec /path/to/your/message
14a. 其中 /path/to/your/message 是您的漂亮登录消息的路径。完成后,它应该看起来像这样:
fi exec /usr/bin/loginmessage exit 0
14b. “fi” 和 “exit 0” 已经存在,您只需输入“exec /path/to/your/message”部分即可。
14c.保存并重新启动。
可能不需要重新启动。我在虚拟机中测试了这些东西,因此只需重新启动机器就更容易了。
如果有更好的方法可以做到这一点,我会洗耳恭听。我知道 gconf 在 CentOS 6.x 中运行良好。我知道 dconf 在 CentOS 7 中可以正常工作,但我没有得到我想要的。在 Ubuntu 中,gconf 对我来说不起作用,即使在安装了 GDM 并重新配置之后也是如此 <- 不过可能只是我的问题。
答案2
可能无法直接在登录屏幕上显示消息。但您可以在登录之前发送消息。添加到您的/etc/lightdm/lightdm.conf
:
greeter-setup-script=xmessage -button ok -default ok -center "Hello world"
要小心因为此文件中的错误选项可能会破坏您的启动过程。
鼠标在此阶段将不可用,但您可以使用关闭消息Enter。xmessage
您可以从文件中读取消息文本或可以自定义超时。查看其手册页以了解其他选项。
您可以检查https://wiki.ubuntu.com/LightDM了解有关lightdm.conf
迎宾定制的更多信息。
答案3
您可以修改登录横幅以显示您想要显示的警告。有关更多详细信息,您可以查看下面提到的链接:-
http://www.howtogeek.com/howto/ubuntu/change-ssh-welcome-banner-on-ubuntu/