2013-05-02 16:34:01 +0000 2013-05-02 16:34:01 +0000
62
62
Advertisement

Comment trouver mon ID utilisateur et mon groupe dans Mac OS X ?

Advertisement

J'essaie de faire fonctionner ce compagnon en terminal :

sudo chown -R yourid:yourgroup local

Cependant, je n'ai aucune idée de mon identité et de mon groupe, ni de l'endroit où les trouver. Des idées ?

Advertisement

Réponses (6)

65
65
65
2013-05-02 16:49:08 +0000

Sous OS X, votre groupe primaire est toujours staff sauf si vous ou votre gestionnaire de répertoire des utilisateurs l'avez modifié.

Qu'est-ce qu'un groupe primaire ? Le groupe primaire d'un utilisateur est par défaut le propriétaire de tous les fichiers créés par cet utilisateur.


Pour les besoins de chmod sur votre ordinateur, vous pouvez utiliser soit votre ID utilisateur numérique (par exemple 501), soit votre nom de compte (par exemple danielbeck). Ce dernier est différent du nom d'utilisateur que vous voyez habituellement dans l'interface utilisateur (par exemple Daniel Beck).

Vous pouvez déterminer votre nom de compte à l'aide de l'un des éléments suivants :

  • C'est le nom de votre répertoire d'origine (à moins que vous ne l'ayez personnalisé) dans le titre du Finder ou dans la barre latérale

  • Exécutez whoami dans le Terminal - un chown -R $(whoami):staff devrait donc suffire. Vous pouvez également obtenir votre groupe principal avec groups $(whoami) | cut -d' ' -f1.

  • Ouvrez Préférences Système “ Utilisateurs & Groupes, déverrouillez le volet si nécessaire, cliquez avec le bouton droit de la souris sur votre nom d'utilisateur (l'unique entrée de la liste dans la section Current User), et sélectionnez Advanced Options…. C'est le champ Nom du compte dans la fenêtre de dialogue qui vient de s'ouvrir. Cette boîte de dialogue vous montre également votre groupe principal.

  • Exécutez id dans le Terminal pour une sortie plus verbeuse. Cela comprendra votre ID d'utilisateur numérique. Il affichera également la liste de tous les groupes dont vous êtes membre, et pas seulement votre groupe principal. Le premier groupe est le groupe primaire.

42
42
42
2013-11-27 01:56:17 +0000

Utilisez la commande id du terminal. Elle affichera votre uid et les groupes auxquels vous appartenez. Par exemple, voici ma sortie affichant mon identifiant (534), l'identifiant du groupe (20) et les groupes auxquels j'appartiens (également 20).

uid=534(galuga) gid=20(staff) groups=20(staff)
16
Advertisement
16
16
2016-08-03 09:47:16 +0000

Votre numéro d'utilisateur s'affichera.

$ id -u
502

Cela affichera le nom de votre groupe. Les noms des groupes sont entre parenthèses.

$ id
uid=502(whoami) gid=20(staff) groups=20(staff),702(com.apple.sharepoint.group.2),12(everyone),61(localaccounts),79(_appserverusr),80(admin),81(_appserveradm),98(_lpadmin),33(_appstore),100(_lpoperator),204(_developer),395(com.apple.access_ftp),398(com.apple.access_screensharing),399(com.apple.access_ssh)
4
4
4
2013-05-02 16:42:49 +0000

dans Terminal, allez à ~/Documents et exécutez ls -la. Votre nom d'utilisateur et votre groupe seront indiqués à côté de chacun des fichiers/répertoires.

Cela devrait ressembler à ceci :

drwxr-xr-x 2 username usergroup 4096 Oct 17 2012 Templates
4
Advertisement
4
4
2019-05-14 03:44:29 +0000

Je ne commenterais que si je le pouvais. Je n'ai pas assez de karma sur ce site.

Je n'ai aucune idée de la raison pour laquelle quelqu'un a voté contre @callaginn, car il soulève un point valable.

Les méthodes suivantes sont valables (et probablement les meilleures options pour les scripts shell) :

id -u # returns UID

id -un # returns username

id -g # returns primary (a.k.a. effictive) GID

id -gn # returns primary Group Name

Voir man id pour plus d'options.

Pour répondre à cette question spécifique, si j'écrivais un script qui fonctionnerait dans n'importe quel environnement, je ne supposerais pas que le groupe par défaut staff est utilisé et je ferais plutôt ce qui suit si j'écrivais un script qui pourrait être exécuté pour n'importe quel utilisateur (qu'il modifie ou non son système) :

chown "$(id -un):$(id -gn)" some_file

Il est toujours préférable d'être agnostique à la plate-forme chaque fois que cela est possible (si cela ne demande pas trop de temps), car vous aurez moins de dettes techniques plus tard.

Veuillez noter que le drapeau chown doit être utilisé avec la plus grande confiance. Vous risqueriez vraiment d'abîmer votre système (même s'il est à noter qu'Apple a rendu la chose difficile depuis qu'ils ont implémenté -R).

Considérez, par exemple, que si vous deviez utiliser System Integrity Protection au lieu de chown -R 755 /var en tant que root avec chown -R 755 /var/www désactivé, je pense que vous seriez dans le pétrin. Je ne peux pas vous dire ce qui se casserait en premier, mais ce serait le cas sur un système Darwin, mais croyez-moi, ce ne serait pas joli.

J'espère que quelqu'un trouvera cela utile.

2
2
2
2019-05-06 15:55:00 +0000

Une méthode encore plus courte pour trouver le groupe primaire :

id -gn
Advertisement
Advertisement