在Ubuntu中配置屏幕保护程序

如何在Ubuntu中配置屏幕保护程序?我可以看到gnome-screensaver正在运行。
3个回答

从12.04版本开始,Ubuntu不再附带任何屏幕保护程序,而是在系统空闲时显示一个黑屏。如果你更喜欢使用屏幕保护程序,可以将gnome-screensaver替换为XScreenSaver。
实际上,屏幕保护程序在Ubuntu 11.10版本中就已经被移除了。Ubuntu使用gnome-screensaver,并且继承了上游GNOME的变化。GNOME开发者认为将显示器置于低功耗模式的黑屏是最优的选择。
安装XScreenSaver 打开终端并运行以下命令以卸载gnome-screensaver:
sudo apt-get remove gnome-screensaver

使用以下命令安装XScreenSaver和一些额外的屏幕保护程序包:
sudo apt-get install xscreensaver xscreensaver-data-extra xscreensaver-gl-extra

配置屏幕保护程序

安装完成后,在Dash中搜索屏幕保护程序。启动屏幕保护程序工具并使用它来配置XScreenSaver并选择您的屏幕保护程序设置。

启动屏幕保护程序工具时,它会提示您停止gnome-screensaver进程并启动xscreensaver后台进程。

默认情况下,XScreenSaver每次启动时都会随机选择一个屏幕保护程序。您可以指定它选择的屏幕保护程序,或者启用“仅使用一个屏幕保护程序”模式,始终使用您喜欢的屏幕保护程序。

enter image description here

添加到启动项

要实际使用屏幕保护程序,您希望每次登录时XScreenSaver在后台启动。如果它没有启动,它就无法察觉到您的系统处于空闲状态并启动屏幕保护程序。

通过从Dash启动“启动应用程序”实用程序开始。使用以下命令添加一个启动程序。这里的名称和注释可以是任何您喜欢的内容:

xscreensaver -nosplash

xscreenserver

撤销您的更改

撤销这些更改很简单。只需运行以下命令来卸载 XScreenSaver 并重新安装 gnome-screensaver:

sudo apt-get remove xscreensaver xscreensaver-data-extra xscreensaver-gl-extra
sudo apt-get install gnome-screensaver

源代码和更多信息请参阅:如何在Ubuntu 12.04中添加屏幕保护程序

1这是一个非常愚蠢的问题,但是我该如何设置屏幕保护程序何时启动? - MadTux
1太棒了的回答!@MadTux:你可以在“屏幕保护程序”窗口的底角设置它何时开始。 - eggonlegs
你可以通过运行xscreensaver-demo命令来从命令行配置xscreensaver。 - Drew Noakes
非常好的资源!请将这些信息也添加到您的帖子中。它是关于当用XScreensaver替换Gnome的屏幕保护程序时,Ctrl+Alt+L停止工作的事实,以及如何修复:http://askubuntu.com/questions/75692/lock-screen-when-xscreensaver-is-installed - Mihai Danila
那个配置窗口在命令行界面中怎么称呼? - holms

不,你不需要卸载gnome-screensaver并安装xscreensaver。你只需进入系统设置->亮度和锁定来设置gnome-screensaver的空闲时间。 gnome-screensaver可以将你的液晶显示器置于低活动模式,因此对你的显示器来说是最好的选择。

虽然在Natty版本中gnome-screensaver无法运行DPMS,但在Precise版本中终于可以了(我的液晶背光实际上是关闭的!)- 配置超时的地方是正确的;但我不知道为什么它必须在开始之前显示我的全名(在黑屏的角落),然后才开始“保存”。 - Robert Siemer

Radu的回答是很好的,所以我不会重复它。我将指出xscxreensaver开发者建议的额外步骤。我还包括了开发者的一段简短的历史。


使用GNOME或Unity

在过去的十年中,GNOME一直原样发布xscreensaver,一切都能直接使用。然而,在2005年,他们决定重新发明轮子,并发布自己的替代xscreensaver守护进程的"gnome-screensaver",而不是改进xscreensaver并将更改贡献回来。结果,"gnome-screensaver"程序不安全、有bug且缺少许多xscreensaver的功能。你不应该使用它。

要用xscreensaver替换gnome-screensaver:

  1. 完全卸载gnome-screensaver软件包。

    sudo apt-get remove gnome-screensaver

  2. 登录时启动xscreensaver。

    从菜单中选择“启动应用程序”(或手动启动“gnome-session-properties”),并添加“xscreensaver”。

  3. 使GNOME的“锁定屏幕”使用xscreensaver。

    sudo ln -sf /usr/bin/xscreensaver-command /usr/bin/gnome-screensaver-command

    但这在Unity下不起作用。显然,它有自己内置的屏幕锁定器,不是gnome-screensaver,并且不能被移除,但仍然存在着漏洞和不安全。继续重新发明轮子吧,伙计们!(如果你已经找到了如何用xscreensaver替换Unity的锁定“功能”,请告诉我。)

  4. 关闭Unity的内置屏幕空白。

    打开“系统设置/亮度和锁定”;

    取消选中“自动启动”;

    将“闲置时关闭屏幕”设为“从不”。


免责声明

我不同意开发者使用强烈的措辞,但觉得将历史包含在内比隐藏更好。


Ubuntu 18.04特别注意事项

许多人在使用 Ctrl+Alt+L 锁定屏幕时抱怨外部监视器会立即变黑,并且带有 dpms 的监视器将被关闭。这导致解锁屏幕时出现不必要的延迟。使用 xscreensaver 可以避免这个特定的问题。

您可以取消将 Ctrl+Alt+L 快捷键从 gnome-screensaver 中移除,并将其分配给 xscreensaver 的新命令:

xscreensaver-command -lock

这个键盘快捷键重新分配在Ubuntu 16.04中也适用。