I don't want to expose my wallpaper to other people who share my computer, is there a way I can disable this feature or work around it?
To Hide YOUR Wallpaper
First and foremost, it sounds like the wallpaper is sensitive. So you should make sure no one else can view it anyway, regardless of whether it's displayed on the greeter or not.
To prevent people from viewing your wallpaper file:
- Open the File Browser
- Navigate to the wallpaper file
- Right click on it
- Choose Properties
- Select the Permissions tab
- Under "Others", select the "Access:" dropdown and choose "None"
There. Now no one but you can view that file. And incidentally, this means the greeter can no longer display it as your wallpaper and will fallback to the default one.
To Hide ALL Wallpapers
sudo -u lightdm dbus-launch gsettings set com.canonical.unity-greeter draw-user-backgrounds false
Secret Bonus Trick for Showing a Different Wallpaper
If you'd like to display a different wallpaper on the greeter than you have as your own wallpaper, issue the following command in a Terminal:
Which will give you a number that represents your own user ID on the system. Now enter the following command:
dbus-send --system --print-reply --dest=org.freedesktop.Accounts /org/freedesktop/Accounts/UserYOURID org.freedesktop.Accounts.User.SetBackgroundFile string:YOURWALLPAPER
Where YOURID is the user ID you just got and YOURWALLPAPER is a path to the wallpaper you want to use.
Now, if you change your desktop wallpaper after doing this, the greeter wallpaper will be reset to the desktop wallpaper. So you will have to enter this command again to maintain separate wallpapers.
Try the following commands in a terminal. It should work.
sudo xhost +SI:localuser:lightdm sudo su lightdm -s /bin/bash gsettings set com.canonical.unity-greeter draw-user-backgrounds false exit exit