Wie kann ich einige Benutzer vorübergehend sperren und sie auf dem Anmeldebildschirm ausblenden?

Ich muss eine gemeinsam genutzte OSX-Workstation verwalten, die das ganze Jahr über von einer wechselnden Gruppe von Charakteren verwendet wird. Der Anmeldebildschirm wird schnell umständlich, wenn Benutzer, die eine Weile nicht einmal in der Nähe sind, aufgelistet sind und die ungeschickte horizontale Bildlaufleiste überladen.

Wie kann ich den Anmeldebildschirm bereinigen, ohne Konten zu zerstören, die zu einem späteren Zeitpunkt neu erstellt werden müssten?

Wenn jemand für einen längeren Zeitraum weg ist, möchte ich außerdem, dass sein Konto gesperrt wird, damit es nicht lokal oder remote verwendet werden kann, aber ich möchte nicht, dass die Passwörter der Benutzer gelöscht werden, wenn sie zurückkommen, sollte eine schnelle Administratoraktion erfolgen sie wieder in das System zurück?

Antworten (2)

Dies kann mit einer Funktion des Unix-basierten Anmeldesystems erreicht werden, das ein Programm zuweist, das bei erfolgreicher Anmeldung ausgeführt wird. Normalerweise haben Benutzer in OSX ihre Shell als definiert /bin/bash. Das Anmeldefenster des Betriebssystems stellt tatsächlich sicher, dass die Benutzer eine verwendbare Shell haben, bevor sie auf dem Anmeldebildschirm angezeigt werden.

Sie können einen Benutzer deaktivieren – sowohl seine Anmeldeberechtigung als auch sein Erscheinen in der Benutzerliste des Anmeldefensters widerrufen – indem Sie die Shell /usr/bin/falseauf

Die Einstellungen befinden sich in Systemeinstellungen -> Benutzer & Gruppen -> (Entsperren Sie die Einstellungen bei Bedarf) -> Rechtsklick auf einen Benutzer -> Erweiterte Optionen -> Login-Shell .

Das erneute Aktivieren des Benutzers ist so einfach wie das Zurücksetzen auf /bin/bash.

Nachtrag: In späteren Versionen von OS-X wird die Wiederherstellung solcher deaktivierter Benutzer etwas komplizierter.

  • Ab 10.7 werden die Benutzer auch nicht standardmäßig im Admin-Panel angezeigt. Sie können sie manuell wiederherstellen, indem Sie die Einstellung ihrer Shell mit dem Standard-Unix- chshBefehl in einem Terminal verwenden:

    sudo chsh <username> /bin/bash
    
  • Ab 10.9 ist das chshDienstprogramm ebenfalls nicht verfügbar, aber Sie können die Shell mit einem speziellen OSX-Dienstprogramm im Terminal einstellen:

    sudo chpass -s /bin/bash <username>
    
Wie setze ich das wieder auf /bin/bash? Der deaktivierte Benutzer wird nicht mehr in der Benutzerliste des Anmeldefensters angezeigt.
@WillSargent Natürlich werden sie nicht im Anmeldefenster angezeigt - das haben Sie deaktiviert -, aber sie sollten immer noch unter dem Systemadministrator-Benutzer-Widget angezeigt werden.
Ich habe "sudo chsh <Benutzername>" von der Befehlszeile aus verwendet. :-)
Ich habe diesen Vorgang ausprobiert und der Benutzer befindet sich nicht mehr in der Verwaltungsliste der Benutzer. Wie kann ich den Benutzer wieder aktivieren?? Es bewirkt einfach, dass der Benutzer sowohl vom Anmeldebildschirm als auch vom Verwaltungsbildschirm verschwindet. Dies ist eine äußerst schlechte Lösung und mit den oben bereitgestellten Informationen nicht zu handhaben. Ich komme darauf zurück, einfach einen "Benutzer deaktivieren"-Schalter auf den Benutzerverwaltungsbildschirmen bereitzustellen. VERSUCHEN SIE DIES NICHT unter OSX 10.7
Versuchen sudo chsh <username> /bin/bashoder posten Sie selbst eine Frage, was diesbezüglich in 10.7 passiert ist (obwohl ich glaube, dass es dasselbe ist).

Calebs Antwort ist richtig und blendet diese Benutzer aus dem Anmeldefenster aus.

Zumindest bei meiner Installation von OSX 10.9 Mavericks verschwinden diese Benutzer jedoch auch aus dem Systemverwaltungsbereich, sodass es unmöglich ist, sie wieder zum Leben zu erwecken. Darüber hinaus hilft auch die Verwendung chshals Workaround nicht, da es auf 10.9 nicht verfügbar ist.

Ich konnte sie zurückbringen mit:

sudo chpass -s /bin/bash <username>

auf der Kommandozeile.