How does "Accounts Service" work with lightdm?

I have added two users using the command useradd but they do no show up in the lightdm/unity-greeter login screen. So there is no way to graphically login for them. It seems Accounts Service (whatever that is) is not reading them in. How can I reload that or cause them to appear in the login window? I am a Fedora user so I have no clue about Ubuntu and how it does these things. Thanks.


Solution 1:

For Ubuntu the recommended command to add a new user to the system is

sudo adduser <newuser> --ingroup <group>

This will take care to add this new user to the system with settings defined in /etc/adduser.conf.

The low-level command useradd is available but not all default settings are made

useradd is a low level utility for adding users. On Debian, administrators should usually use adduser(8) instead.from manpage useradd

Solution 2:

According to the package information:

The accountsservice project provides a set of D-Bus interfaces for querying and manipulating user account information and an implementation of these interfaces, based on the useradd, usermod and userdel commands.

So, based on this information it seems that the only way to configure it is to configure those base services (usermod, useradd and userdel) which can be accomplished by editing the /etc/login.defs file. Specifically if you're looking for a way to show a user whose ID is lower than 1000 you have to change the value of MIN_UID.

It seems that the /etc/login.defs file is used in two ways:

  1. To control defaults when accounts are created.
  2. To control how the accountsservice accounts-daemon responds to D-Bus queries.

Short answer

Since ubuntu sets a user's group (GID) to be the same value as the user's ID (UID) I found that I had to alter both MIN_UID and MIN_GID in /etc/login.defs to get accountsservice to reveal my login to lightdm.