如何更改登录屏幕的墙纸?


Answers:


77

Ubuntu 12.04至13.04

Ubuntu 12.04 Unity迎宾员引入了选定用户的动态背景,这意味着从可用用户列表中选择用户时,背景将更改以反映选定用户的桌面背景。

默认情况下,lightdm将被设置/usr/share/backgrounds/warty-final-ubuntu.png为默认背景,并且将打开动态背景选项。

设置动态关闭


打开终端并获得root

sudo -i

(输入sudo密码

允许用户lightdm创建与X服务器的连接

xhost +SI:localuser:lightdm

切换用户到lightdm

su lightdm -s /bin/bash

关闭后台动态切换

gsettings set com.canonical.unity-greeter draw-user-backgrounds 'false'

如果要在更改后将该设置重置为默认设置,请执行所有步骤,直到上述命令,然后使用

gsettings reset com.canonical.unity-greeter draw-user-backgrounds

当你完成设置关闭或正在重置为默认的动态背景功能,你可以关闭终端或类型2X exit,首先要恢复到和第二清除root权限并恢复到正常的用户。

更改默认的固定背景

(只有在用户未设置桌面背景图片或动态设置为false时,您才会看到此图片)

打开终端并获得root

sudo -i

(输入sudo密码

允许用户lightdm创建与X服务器的连接

xhost +SI:localuser:lightdm

切换用户到lightdm

su lightdm -s /bin/bash

用您选择的图片更改默认背景

gsettings set com.canonical.unity-greeter background '/foo/wallpaper.png'

(请注意:墙纸文件不能位于加密用户的住宅内,只有在用户使用其帐户登录后才能挂载墙纸。)

如果要将其还原为默认背景,请执行所有步骤,直到上面的命令,然后键入

gsettings reset com.canonical.unity-greeter background

完成更改默认背景功能或恢复为默认功能后,可以关闭终端或键入2x exit,第一个恢复为root用户,第二个清除root特权并恢复为普通用户。


我认为,添加此信息将有助于像我们这样的未来用户,他们希望禁用lightdm上的任何纸张。我首先禁用了“绘图用户背景”功能,然后将背景设置为仅存在于..中(不存在)。我现在有一个更好的登录屏幕。
安瓦尔2012年

我使用了“更改默认的固定背景”,它可以正常工作,但是我不知道为什么,重新启动后我收到“低图形模式”的消息,而lightdm不再启动。然后,我发现此解决方案可以更改lightdm背景。
BuZZ-dEE 2012年

我有两个用户,每个用户都有不同的(自定义)壁纸。我希望一个用户在登录屏幕上显示自己的wallpapaer,但我希望另一个用户显示默认的warty-final-ubuntu。我该怎么做?如果没有额外的程序,是否甚至有可能根据用户的墙纸而不是墙纸设置每个用户的登录背景?
JamesTheAwesomeDude

当将普遍安装程序显示给其他图像时,如何更改warty-final-ubuntu.png?
Roshan George

1
那16.04呢?
莫里森

19

对于11.10

在终端(Ctrl+ Alt+ T)中运行此命令

gksu gedit /etc/lightdm/unity-greeter.conf

您将看到gedit(文本编辑器应用)显示以下文本:

在此处输入图片说明

只需编辑BACKGROUND=...带有您想要的背景图片的绝对路径的行即可。

然后单击保存或Ctrl+,S然后关闭窗口。大功告成

注销以查看其工作情况。

资源


2
第一次尝试此操作时,我在/ home中使用了一个文件,但该文件不起作用,我的背景只有黑色(也许因为/ home是加密的?)。不过,将其更改为/ usr / share / backgrounds / <图片的名称> .jpg中的文件是可行的。
汤姆·布鲁斯曼

13

Ubuntu的12.0414.0416.04

布鲁诺·佩雷拉(Bruno Pereira)的答案对我有用,但是如果没有X11,就无法在上下文中使用。这是另一种方法,不需要X11(并且易于编写脚本):

编辑以下文件:

sudoedit /usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override

[com.canonical.unity-greeter]
draw-user-backgrounds=false
background='/foo/wallpaper.png'

应用新设置:

sudo glib-compile-schemas /usr/share/glib-2.0/schemas/


3
这似乎是在12.04中执行此操作的最佳方法。
卡斯滕·阿格2013年

1
我可以在Ubuntu 13.10的我们先前的环境中使用它!
Bastian Rang 2014年

1
Ubuntu Wiki的lightdm页面上列出了这种方法,包括Arch在内的各种论坛都提到了这种方法。我已经自由创建了一个小脚本,该脚本允许以形式通过命令行随意更改迎宾员sudo ./script /path/to/image。可以在我的github页面上找到它。它已经在Ubuntu 14.04 LTS和15.10中进行了测试。
Sergiy Kolodyazhnyy 2015年

答案也适用于16.04。
WinEunuuchs2Unix

12

11.10-简单的LightDM Manager

一个进取的开发人员将一个简单的applet放在一起,它将更改墙纸:

在此处输入图片说明

安装

sudo apt-add-repository ppa:claudiocn/slm
sudo apt-get update
sudo apt-get install simple-lightdm-manager

资源


与此存储库的连接非常不稳定
狂热的人

5

11.10

我建议使用Ubuntu Tweak。您可以舒适地配置徽标和背景图像,而不会弄乱配置文件:

在此处输入图片说明

该屏幕截图是在10.10 Maverick上拍摄的,如果有人可以轻松检查它是否也可以在最新的Ubuntu版本中使用,欢迎对此答案进行编辑!


1
UI完全不同,但是它确实允许用户更改背景和登录屏幕徽标。
阿尔弗雷多·埃尔南德斯

我想在11.10中使用@AlfredoHernández吗?
lumbic 2012年

是的,很抱歉,我忘记了xD的部分
AlfredoHernández2012年

它弄乱了我的登录壁纸!现在它具有黑色背景!
拉维

5

Ubuntu 12.10

此方法使用dconf编辑器,而不是gsettings。更改统一问候语必须以lightdm用户身份进行。步骤如下:

  1. 更改为root用户。
  2. 授予lightdm用户访问X服务器的权限。
  3. 更改为lightdm用户。
  4. 运行dconf-editor。
  5. 选择/ com / canonical / unity-greeter并更改属性。

  1. 更改为root用户。

    sudo -i
    
  2. 授予lightdm用户访问X服务器的权限。

    xhost +SI:localuser:lightdm
    
  3. 更改为lightdm用户。

    su lightdm -s /bin/bash
    
  4. 运行dconf-editor。

    dconf-editor
    
  5. 选择/ com / canonical / unity-greeter并更改属性。

    dconf编辑器


dbus-launch dconf-editor是必须的(?)。
Khurshid Alam 2013年

dconf-editor是必需的。使用sudo apt-get install dconf-editor。我已经在
12.04、14.04

4

对于11.10:

您需要编辑/etc/lightdm/unity-greeter.confsudo nano /etc/lightdm/unity-greeter.conf)。在该文件中,您必须替换Background标签的值。

对于参考,请检查以下屏幕截图。

在此处输入图片说明


4

主要答案对我不起作用,因为我没有使用统一问候语。我的lightdm配置为使用lightdm-gtk-greeter。

通过查看lightdm源代码,我找到了一个解决方案。它查询DBus来找到用户的BackgroundFile属性。您可以使用d-feet程序(或命令行工具)更改此设置。

在d英尺上导航至这一点:

http://i.stack.imgur.com/PvvMe.png

双击“ SetBackgroundFile”功能。在打开的窗口中,键入所需的壁纸文件名(在文件名两边加上双引号)。单击执行按钮。如果一切正常,您将看到一条消息,例如“此函数未返回任何内容”。

下次lightdm运行时,它将具有您选择的新墙纸。


还要注意的是,我没有使用任何主窗口管理器(我正在使用i3),这就是为什么我不能使用其他方法的原因。
杰里米·斯蒂芬斯

您可以使用以下脚本从命令行设置墙纸:gist.github.com/viking/6232740
Jeremy Stephens

3

所有版本

1)下载Ubuntu Tweak:

下载适用于Ubuntu 12.04 Precise Pangolin

下载适用于Ubuntu 11.10 Oneiric Ocelot

下载其他Ubuntu

如果您使用12.04 Precise:更改登录墙纸,只需更改您的桌面墙纸,使用Ubuntu Tweak只能更改徽标。

如果使用11.10 Oneiric,则可以使用Ubuntu Tweak更改登录壁纸和徽标。

2)打开下载的软件包并安装 屏幕截图

3)启动Ubuntu Tweak。

转到调整>登录设置。单击解锁,然后单击要更改的图像。 屏幕截图

如果您使用12.04 Precise:更改登录壁纸,只需更改桌面壁纸,使用Ubuntu Tweak即可更改徽标。


2

这是一个解决方法为12.04和当前版本的Unity-迎宾的(默认的“主题”)。对于lightdm-gtk-greeter等其他问候者,通常在/etc/lightdm/工作中编辑conf文件。但是unity-greeter不再查看unity-greeter.conf,并且不清楚如何配置它。

我所做的是:我找到了团结欢迎者坚持使用的图像。对我来说,它在/usr/share/backgrounds。移动/删除/重命名。现在,统一问候语将回退到默认背景/usr/share/backgrounds/warty-final-ubuntu.png。移动/删除/重命名。现在,您需要在该位置使用该名称放置另一个图像。不,它不必一定是png(实际上,由于我不愿在这里介绍的原因,warty-final-ubuntu.png实际上是jpg)。我相信替换必须是jpg(如果我输入错了,请纠正我)。这里要非常小心。我认为,如果lightdm无法回退到默认背景,则可能会发生一些可怕的事情:-/(也许只会显示彩色背景……无论如何要小心!)。

就我而言,我只是从该位置的另一个背景进行了符号链接:

sudo ln -s Bird_by_Magnus.jpg warty-final-ubuntu.png

进入时运行此命令/usr/share/backgrounds/(或相应地调整命令)。当然,请以可用和所需的任何内容替换jpg。

请记住,如果要在家庭中使用背景,则需要确保家庭未加密,因为lightdm在登录之前将无法读取该文件。另外,请确保您对文件具有正确的权限。如果您不知道这意味着什么,请坚持使用已经存在的墙纸/usr/share/backgrounds/。(随机提示:您可以通过将该目录正确安装在早期版本的Ubuntu中获取更多壁纸sudo apt-get install ubuntu-wallpapers-oneiric,将“ oneiric”替换为“ natty”,等等)


Jokerdino找到了正确的答案。此应立即删除。
Chan-Ho Suh 2012年

冒着自恋的风险,我只是发现自己的回答再次非常有用,因此我不删除它。:-/
Su-Ho Suh

2

这对我有用。通过nautilus,我在其中重命名了原始/usr/share/backgrounds/warty-final-ubuntu.png图像文件,然后将首选图像粘贴为登录墙纸,并将其重命名为warty-final-ubuntu.png,然后应用了与原始文件相同的文件属性。


2

没有使用dconf的X11的Ubuntu 16.10

此解决方案是samb解决方案的一种变体。此解决方案的好处是所有定制都已完成,/etc并且只需要编译一个文件。

mkdir /etc/dconf/db/local.d
sudo edit /etc/dconf/db/local.d/10-unity-greeter

将设置更改为您的首选项:

[com/canonical/unity-greeter]
draw-user-backgrounds=false
background='/usr/share/backgrounds/Haukland_Beach_view_by_Michele_Agostini.jpg'

为这些设置创建编译的文件:

sudo dconf compile /etc/dconf/db/local /etc/dconf/db/local.d

编辑用户个人资料:

sudo edit /etc/dconf/profile/user

通过system-db条目包括本地定制:

user-db:user
system-db:local

您可能需要重新启动lightdm才能显示更改:

if dialog --defaultno --yesno "Restart lightdm?\n\nThis will terminate all desktop sessions!" 10 30; then sudo service lightdm restart; fi

Etvoilà,一个定制的统一问候背景。

结果


1

12.04

Ubuntu 12.04中,您无需再进行所有这些命令行编辑。您要做的就是更改墙纸和外观LightDM会将其用作背景(:

遗憾的是,它似乎尚未完全实现,因为当您的计算机启动时,您会在默认的Ubuntu墙纸看到几秒钟后才更改为墙纸。但是由于我们正在谈论一个beta(Ubuntu 12.04现在处于Beta 2中),因此可以预期。

希望它回答了您的问题(:


1
我认为除非您使用Unity并在Unity中更改墙纸,否则此方法无效。无论如何,如果您想要在lightdm中使用与桌面环境中不同的墙纸,那么您的建议将不起作用。
Chan-Ho Suh 2012年

@ Chan-Ho Suh True,但是由于他未指定他正在使用其他接口,所以我认为他正在使用Unity。关于第二点,是正确的(:
朱利安·费尔南德斯

这是目前更改墙纸的唯一方法。
加里


1

Ubuntu 16.04

使用Nautilus导航并查看适当的.png或.jpg文件以用作登录屏幕和锁定屏幕墙纸后,Nautilus可以使用脚本为您设置此设置:

设置登录Wallpaper.gif

注意:在Ubuntu 18.04中,仅更改了锁屏墙纸。更改登录墙纸将需要其他技术。

要创建脚本,请使用:

cd ~/.local/share/nautilus/scripts/
gedit set-login-wallpaper

粘贴以下行:

#!/bin/bash

## Set login wallpaper

# strip new line char passed by Nautilus
FILENAME=$(echo $NAUTILUS_SCRIPT_SELECTED_FILE_PATHS | sed -e 's/\r//g')

# Multiple files can't be selected.
LINE_COUNT=$(wc -l <<< "$NAUTILUS_SCRIPT_SELECTED_FILE_PATHS")
LINE_COUNT=$((LINE_COUNT-1))

if [[ $LINE_COUNT > 1 ]] ; then
    zenity --error --text "Ony one file can be selected at a time! "
    exit 1
fi

# Object type must be "file..." (ie no directories, etc.)
if [ -d "${FILENAME}" ] ; then
    zenity --error --text "$FILENAME is a directory!";
    exit 1
else
    if [ -f "${FILENAME}" ]; then
        : # Bash noop
    else
        zenity --error --text "${FILENAME} is not a file!";
        exit 2
    fi
fi

# Build working file in /tmp
echo "[com.canonical.unity-greeter]" > /tmp/set-login-wallpaper.tmp
echo "draw-user-backgrounds=false" >> /tmp/set-login-wallpaper.tmp
echo "background='$FILENAME'" >> /tmp/set-login-wallpaper.tmp

# Must run as sudo
if [ "$EUID" -ne 0 ] ; then

    # Get sudo password
    PASSWORD=$(zenity --password --title="Set Login Wallpaper" --timeout=20)

    # copy working file to real file using sudo
    echo $PASSWORD | sudo -S cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override

    # compile using sudo
    echo $PASSWORD | sudo -S glib-compile-schemas /usr/share/glib-2.0/schemas

else
    # Already sudo so simply copy and compile
    # copy working file to real file
    cp /tmp/set-login-wallpaper.tmp \
/usr/share/glib-2.0/schemas/10_unity_greeter_background.gschema.override

    # compile
    glib-compile-schemas /usr/share/glib-2.0/schemas
fi

exit 0

保存文件并退出gedit编辑器。

现在,使用以下命令将脚本标记为可执行文件:

chmod +x set-login-wallpaper

打开Nautilus并导航到包含墙纸图像的目录。找到合适的图像,然后右键单击它。出现以下下拉菜单:

鹦鹉螺右键单击下拉

单击第三个选项Scripts。出现另一个下拉菜单,其中包含所有脚本:

Nautilus设置登录壁纸下拉菜单

选择set-login-wallpaper

脚本运行时,您将必须输入sudo密码。

重新启动并享受您的新登录壁纸。


Ubuntu 18.04

请访问Ubuntu手册以获取有关此概述的完整说明:

  1. 将您喜欢的图像移至 /usr/share/backgrounds
  2. 编辑css定义GDM登录背景的文件
  3. 替换resource:///org/gnome/shell/theme/noise-texture.png为您的图片

也可以在Ask Ubuntu中查看这些现有答案:


0

12.04

对于那些无法更改登录屏幕背景的用户,这是我的解决方案。

更换壁纸时遇到了这个问题,但是我得到了默认的Ubuntu登录背景。所以我要做的是wallpaper.jpg在终端中找到文件,然后将其权限更改为:

chmod 777 walpaper.jpg

可以完全访问的东西,现在我们可以看到效果了。我在桌面上选择的墙纸也被视为登录屏幕背景。这适用于所有用户。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.