Note:- Your display manager may vary from lightdm or gdm, gdm3 etc depending on your distro. But strictly as mentioned below is for Ubuntu(lightdm), feel free to flame me below in the comment section.
If your system uses AccountsService
, you can not hide a user from the greeter screen by re-configuring lightdm
because it defers to AccountsService
. That is stated very clearly in the comments in /etc/lightdm/users.conf
.
What you need to do instead is to reconfigure AccountsService
.
To hide a user named akash, create a file named
/var/lib/AccountsService/users/akash
containing two lines:
[User]
SystemAccount=true
If the file already exists, make sure you append the SystemAccount=true
line to the [User]
section.
The change takes effect after reloading AccountsService:
sudo systemctl restart accounts-daemon.service
OR
This is what you want to do:
First, make a backup of your config.
sudo cp /etc/lightdm/users.conf /etc/lightdm/users.conf.bak
Then, you need to edit your config:
sudo nano /etc/lightdm/users.conf
You'll see something like this:
#
# User accounts configuration
#
# NOTE: If you have AccountsService installed on your system, then LightDM will
# use this instead and these settings will be ignored
#
# minimum-uid = Minimum UID required to be shown in greeter
# hidden-users = Users that are not shown to the user
# hidden-shells = Shells that indicate a user cannot login
#
[UserAccounts]
minimum-uid=500
hidden-users=nobody nobody4 noaccess
hidden-shells=/bin/false /usr/sbin/nologin
Of interest to us is the part here:
hidden-users=nobody nobody4 noaccess
To hide the username akash, just add it like this:
hidden-users=nobody nobody4 noaccess akash
Then, reboot your computer and it should be gone.