web-dev-qa-db-fra.com

Masquer les utilisateurs de Mac OS X Snow Leopard Screen Sailon

D'une manière ou d'une autre, j'ai réussi à définir un Passwd pour mon utilisateur _postgres sur mon système d'exploitation au lieu de la définir sur le rôle des postgres que j'ai aussi superutilisateur/root. Quoi qu'il en soit, depuis cela, je me suis battu avec cet utilisateur montrant dans la section de compte et l'écran de connexion, ce que j'aimerais vraiment éviter. J'ai lu certaines documents à ce sujet et définir le mot de passe à * devrait être tout ce qui est nécessaire pour résoudre ce problème. Mais après plusieurs tentatives en faisant cela avec et sans DSCl en vain, je suis à un point où je ne sais plus quoi faire.

Je ne pensais pas que ce serait même difficile de faire cela, mais il me manque clairement quelque chose, alors comment faites-vous cela?

25
googletorp

La méthode la plus simple pour masquer les utilisateurs du système (si leur ID utilisateur est <500) dans la fenêtre de connexion consiste à exécuter la commande suivante:

Sudo defaults write /Library/Preferences/com.Apple.loginwindow Hide500Users -bool TRUE

Alternativement vous pouvez cacher manuellement simplement le nom d'utilisateur en courant

Sudo defaults write /Library/Preferences/com.Apple.loginwindow HiddenUsersList -array-add '_postgres'

Pour masquer les "autres ..." de la fenêtre de connexion si nécessaire:

Sudo defaults write /Library/Preferences/com.Apple.loginwindow SHOWOTHERUSERS_MANAGED -bool FALSE
31
Chealion

Juste au cas où vous n'avez pas trouvé de solution viable (ou si quelqu'un d'autre trouve cette question de Google), définissez la coque de l'utilisateur à /usr/bin/false empêche-lui de se connecter et la masque de l'écran de connexion et des préférences du système. Pour ce faire, utilisez la ligne de commande suivante:

Sudo dscl . -change /Users/[username] UserShell /bin/bash /usr/bin/false

Et pour revenir le changement:

Sudo dscl . -change /Users/[username] UserShell /usr/bin/false /bin/bash

[username] est le nom de l'utilisateur que vous voulez cacher (_postgres Dans votre cas, je suppose). Je ne sais pas pourquoi dscl veut d'abord l'ancienne valeur, mais c'est ce que dit le manchon de Manpage, et cela fonctionne assez bien.

7
zneak