Wie verstecke ich einen bestimmten Benutzer vor dem Anmeldebildschirm?

84

Wie verstecke ich einen bestimmten Benutzer bei einer Standardinstallation von 11.10 oder höher vor dem Anmeldebildschirm? (dh mit Unity Greeter)?

tückisch
quelle

Antworten:

91

Wenn Ihr System verwendet AccountsService, Sie können nicht einen Benutzer aus der Greeter Bildschirm ausblenden , indem Sie neu konfigurieren , lightdmweil es aufschiebt AccountsService. Das steht sehr deutlich in den Kommentaren in /etc/lightdm/users.conf.


Sie müssen stattdessen eine Neukonfiguration durchführen AccountsService.

XXXErstellen Sie eine Datei mit dem Namen, um einen Benutzer mit dem Namen auszublenden

/var/lib/AccountsService/users/XXX

mit zwei Zeilen:

[User]
SystemAccount=true

Wenn die Datei bereits vorhanden ist, stellen Sie sicher, dass Sie die SystemAccount=trueZeile an den [User]Abschnitt anhängen .

Marc Culler
quelle
4
arbeitet an vanilla 14.04 setup
frnhr 15.03.15
3
Getestet mit Ubuntu 16.04.
Sopalajo de Arrierez
1
Dies funktioniert auch auf Ubuntu 17.10 mit Gnome 3
Schuh
Und ist immer noch die richtige Antwort für Ubuntu 19.04 Disco Dingo.
Aiyion.Prime
1
Dies funktioniert unter Ubuntu 19.04. Denken Sie daran, XXX als tatsächlichen Benutzernamen und nicht als Alias ​​zu verwenden. Beispielsweise hat der Benutzername 'postgres' den Alias ​​'PostgreSQL'. In diesem Fall müssen Sie 'postgres' als Dateinamen verwenden.
Juan García
40

Derzeit funktioniert diese Methode aufgrund eines Fehlers in Lightdm nicht.

Bitte überprüfen Sie den Fehlerstatus, bevor Sie diese Methode anwenden.


Hier ist was du machen willst:

Erstellen Sie zunächst eine Sicherungskopie Ihrer Konfiguration.

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

Dann müssen Sie Ihre Konfiguration bearbeiten:

sudo nano /etc/lightdm/users.conf

Sie werden so etwas sehen:

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

Von Interesse für uns ist der Teil hier:

hidden-users=nobody nobody4 noaccess

Um den Benutzernamen auszublenden james, fügen Sie ihn einfach wie folgt hinzu:

hidden-users=nobody nobody4 noaccess james

Starten Sie dann Ihren Computer neu und es sollte verschwunden sein.

Als Verweis auf andere, siehe

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

Bei einigen Versionen von lighdm (Ubuntu 14.04) müssen Sie den Namen [UserAccounts]in [UserList](in /etc/lightdm/users.conf) ändern, damit diese Methode funktioniert. (Wenn Sie interessiert sind, warum dies notwendig sein könnte, common/user-list.c:321lesen Sie in der LightDM-Quelle nach.)

jrg
quelle
Funktioniert am 14.04 nicht mehr, aber die Antwort auf askubuntu.com/a/575390/7304 von @ marc-culler funktioniert unten.
Laurent
Nach sechs Jahren immer noch nicht behoben, seufz :(
Bulletmagnet
@Bulletmagnet Nun, Ubuntu verwendet kein lightdm mehr :(
jrg
Was auch immer es verwendet, das Problem besteht weiterhin: (
Bulletmagnet
15

Sie können den Benutzer mit einer UID <1000 erstellen, bis der Fehler 857651 behoben ist

Um beispielsweise eine neue UID unter 1000 zuzuweisen (wir verwenden 999), verwenden Sie diesen Befehl

sudo usermod -u 999 user-name

Ersetzen Sie das user-namedurch den tatsächlichen Benutzernamen, genau wie anwaroder detlyusw.

OerHeks
quelle
3
Das blendet den Benutzer, aber wenn Sie die uid sind Ändern können Sie auch die gid ändern möchten, da sie in der Regel die gleiche Zahl sind: sudo groupmod -g999 user-name. Und wie dqvn2002 in ihrer Antwort erwähnt, benötigen Sie für Ubuntu 12.04 eine Zahl <500, sodass 999 nicht funktioniert.
Lambart
2
Und vergiss nicht! Wenn Sie die Benutzer-ID ändern, kann plötzlich nicht mehr auf alle privaten Dateien zugegriffen werden, die diesem Benutzer gehören. Du musst laufen (zB) sudo chown -R user-name:user-name /home/user-name.
Lambart
8

weil das Ubuntu 12.04 Setup

[UserAccounts]  
minimum-uid=500

also müssen wir die uidweniger als 500 reduzieren

Beispiel: sudo usermod -u 499 user-name

Es funktioniert bei mir! Gelöst Viel Glück.

dqvn2002
quelle
Möglicherweise möchten / müssen Sie auch die Gruppen-ID und chownalle Dateien, die dem Benutzer gehören, ändern , wie ich die Antwort von OerHeks kommentiert habe.
Lambart
4

Diese Methode funktioniert unter Ubuntu 13.10 nicht.

So verbergen Sie Benutzeranmeldenamen korrekt Sie müssen die LightDM-Konfiguration öffnen:

sudo vim /etc/lightdm/lightdm.conf

und füge die folgenden Optionen hinzu:

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

Dann speichern und neu starten. Das ist alles.

Artur Yarosh
quelle
2
Die akzeptierte Methode funktioniert am 14.04 immer noch nicht und das Anzeigen der manuellen Anmeldung scheint mir auch die beste Option zu sein. Fügen Sie in 14.04 die in dieser Antwort aufgeführten Zeilen zu /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf hinzu. Wenn Sie auch den
Gastbenutzer
1

Dies ist eine Variation von James 'Antwort. Sie können Benutzer in lightDM ausblenden, indem Sie ihnen einfach eine ID zuweisen, die unter der Mindest-ID in:

/etc/lightdm/users.conf

Auf meinem PC waren es 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

Sie können die UID einfach im Terminal ändern:

sudo usermod -u PutUserNameHere

Es funktioniert auf meinem PC (im Jahr 2016), daher schätze ich, dass der LightDM-Fehler, den Eliah Kagan im Jahr 2014 in Bezug auf James 'Antwort erwähnte, behoben wurde.

thebunnyrules
quelle