¿Cómo oculto a un usuario en particular de la pantalla de inicio de sesión?

85

¿Cómo oculto a un usuario en particular de la pantalla de inicio de sesión en una instalación predeterminada de 11.10 y superior? (es decir, usando Unity Greeter)?

desviarse
fuente

Respuestas:

92

Si su sistema usa AccountsService, no puede ocultar a un usuario de la pantalla de bienvenida reconfigurando lightdmporque difiere AccountsService. Eso se afirma muy claramente en los comentarios en /etc/lightdm/users.conf.


Lo que debe hacer en su lugar es reconfigurar AccountsService.

Para ocultar un usuario llamado XXX, cree un archivo llamado

/var/lib/AccountsService/users/XXX

que contiene dos líneas:

[User]
SystemAccount=true

Si el archivo ya existe, asegúrese de agregar la SystemAccount=truelínea a la [User]sección.

Marc Culler
fuente
44
funciona en la configuración de vainilla 14.04
viernes
3
Probado trabajando en Ubuntu 16.04 también.
Sopalajo de Arrierez
1
Esto también funciona en Ubuntu 17.10 con Gnome 3
Schuh
Y sigue siendo la respuesta correcta para Ubuntu 19.04 Disco Dingo.
Aiyion.Prime
1
Esto está funcionando en Ubuntu 19.04. Recuerde usar XXX como el nombre de usuario real, no el alias. Por ejemplo, el nombre de usuario 'postgres' tiene el alias 'PostgreSQL'. En este caso, debe usar 'postgres' como nombre del archivo.
Juan García
40

Actualmente este método no funciona debido a un error en lightdm.

Verifique el estado del error antes de aplicar este método.


Aquí está lo que quieres hacer:

Primero, haga una copia de seguridad de su configuración.

sudo cp /etc/lightdm/users.conf /etc/lightdm/users.conf.bak

Luego, necesita editar su configuración:

sudo nano /etc/lightdm/users.conf

Verás algo como esto:

#
# 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

De interés para nosotros es la parte aquí:

hidden-users=nobody nobody4 noaccess

Para ocultar el nombre de usuario james, solo agrégalo así:

hidden-users=nobody nobody4 noaccess james

Luego, reinicie su computadora y debería desaparecer.

Como referencia a otros, vea

Ver https://bugs.launchpad.net/ubuntu/+source/accountsservice/+bug/857651

En algunas versiones de lighdm (Ubuntu 14.04) necesita cambiar el nombre [UserAccounts]a [UserList](in /etc/lightdm/users.conf) para que este método funcione. (Si está interesado en por qué esto puede ser necesario, consulte la common/user-list.c:321fuente de lightdm).

jrg
fuente
Ya no funciona en 14.04, pero responda askubuntu.com/a/575390/7304 de @ marc-culler a continuación funciona.
Laurent
Todavía no se solucionó después de seis años, suspiro :(
Bulletmagnet
@Bulletmagnet bueno, Ubuntu ya no usa lightdm :(
jrg
Independientemente de lo que esté usando, el problema persiste :(
Bulletmagnet
16

Su opción hasta que se solucione el error 857651 es crear el usuario con uid <1000

Por ejemplo, para asignar un nuevo uid menor que 1000, (estamos usando 999) use este comando

sudo usermod -u 999 user-name

Reemplace el user-namecon el nombre de usuario real, como anwaro detlyetc.

OerHeks
fuente
3
Esto oculta al usuario, pero si usted está cambiando el fluido también puede querer cambiar el GID, ya que son por lo general el mismo número: sudo groupmod -g999 user-name. Y como dqvn2002 menciona en su respuesta, para Ubuntu 12.04 necesitará un número <500, por lo que 999 no funcionará.
Lambart
2
¡Y no lo olvides! Cuando cambia la identificación de usuario, cualquier archivo privado que posea ese usuario de repente se volverá inaccesible. Tendrás que correr (por ejemplo) sudo chown -R user-name:user-name /home/user-name.
Lambart
8

porque la configuración de Ubuntu 12.04

[UserAccounts]  
minimum-uid=500

entonces necesitamos reducir los uidmenos de 500

ejemplo: sudo usermod -u 499 user-name

¡Funciona conmigo! RESUELTO Buena suerte.

dqvn2002
fuente
Es posible que desee / necesite también cambiar la identificación del grupo y chowncualquier archivo propiedad del usuario, como comenté en la respuesta de OerHeks.
Lambart
4

Este método no funciona en Ubuntu 13.10.

Para ocultar los nombres de inicio de sesión de usuario correctamente Debe abrir la configuración de LightDM:

sudo vim /etc/lightdm/lightdm.conf

y agregue las siguientes opciones:

greeter-hide-users=true
greeter-show-manual-login=true

Luego guarde y reinicie. Eso es todo.

Artur Yarosh
fuente
2
El método aceptado todavía no funciona en 14.04 y mostrar el inicio de sesión manual también me parece la mejor opción. En 14.04 agregue las líneas enumeradas en esta respuesta a /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf .. si desea también deshabilitar al usuario invitado, entonces agregue allow-guest = false
Luca Borrione
1

Esta es una variación de la respuesta de James. Puede ocultar usuarios en lightDM simplemente asignándoles una ID debajo de la ID mínima que se encuentra en:

/etc/lightdm/users.conf

En mi PC eran 1000

# 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=1000

Puede cambiar el UID fácilmente en la terminal:

sudo usermod -u PutUserNameHere

Funciona en mi PC (en 2016), por lo que supongo que el error lightDM que Eliah Kagan mencionó en 2014 con respecto a la respuesta de James se ha resuelto.

thebunnyrules
fuente