J'essaie d'exécuter ce compand dans le terminal :
sudo chown -R yourid:yourgroup local
Cependant, je n'ai aucune idée de ce que sont mon ID et mon groupe, ni où les trouver. Avez-vous une idée ?
J'essaie d'exécuter ce compand dans le terminal :
sudo chown -R yourid:yourgroup local
Cependant, je n'ai aucune idée de ce que sont mon ID et mon groupe, ni où les trouver. Avez-vous une idée ?
Sous OS X, votre groupe primaire est toujours staff
à moins que vous ou votre responsable de répertoire d'utilisateurs ne l'ayez 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.
Aux fins de chmod
sur votre ordinateur, vous pouvez utiliser soit votre identifiant numérique (par exemple, 501), soit votre nom de compte (par exemple, le nom de l'utilisateur). danielbeck
). Ce dernier est différent du nom d'utilisateur que vous voyez habituellement dans l'interface utilisateur (par ex. Daniel Beck ).
Vous pouvez déterminer le nom de votre compte en utilisant l'une des méthodes suivantes :
C'est le nom de votre répertoire d'origine (à moins que vous ne l'ayez personnalisé) dans le titre ou la barre latérale du Finder.
Exécuter whoami
dans le terminal - donc un chown -R $(whoami):staff
devrait suffire. Vous pouvez également obtenir votre groupe primaire avec groups $(whoami) | cut -d' ' -f1
.
Ouvrir Préférences du système " Utilisateurs et groupes Pour déverrouiller 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 le menu déroulant). Utilisateur actuel ), et sélectionnez Options avancées . C'est le champ Nom du compte dans la nouvelle fenêtre de dialogue ouverte. Cette boîte de dialogue vous montre également votre groupe primaire.
Exécuter id
dans le Terminal pour une sortie plus verbeuse. Cela comprendra votre ID utilisateur numérique. Elle listera également tous les groupes dont vous êtes membre, et pas seulement votre groupe principal. Le premier groupe est le groupe principal.
Utilisez le id
à partir du terminal. Elle affichera votre uid et les groupes auxquels vous appartenez. Par exemple, voici la sortie montrant mon identifiant d'utilisateur (534), mon identifiant de groupe (20) et les groupes auxquels j'appartiens (également 20).
uid=534(galuga) gid=20(staff) groups=20(staff)
Cela montrera votre identifiant.
$ id -u
502
Cela affichera les noms de vos groupes. 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)
Je ne commenterais que si je pouvais. Je n'ai pas assez de karma sur ce site.
Je ne sais pas pourquoi quelqu'un a rétrogradé @callaginn, car il soulève un point valable.
Les méthodes suivantes sont valables (et probablement les meilleures options pour le script 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 à la place je ferais ce qui suit si j'écrivais un script qui pourrait être exécuté pour n'importe quel utilisateur (qu'il ait ou non modifié son système) :
chown "$(id -un):$(id -gn)" some_file
Il est toujours préférable de ne pas tenir compte de la plate-forme dans la mesure du possible (si cela ne représente pas un compromis trop important en termes de temps), car vous aurez moins de dettes techniques par la suite.
Veuillez noter que chown
's -R
doit être utilisé avec la plus grande confiance. Vous pourriez vraiment endommager votre système (bien qu'il soit intéressant de noter qu'Apple a rendu la chose difficile depuis qu'ils ont mis en place le programme System Integrity Protection
).
Considérez, par exemple, que si vous deviez chown -R 755 /var
au lieu de chown -R 755 /var/www
comme racine avec System Integrity Protection
handicapés, je crois que vous seriez dans le coup. Je ne peux pas vous dire ce qui se briserait en premier, mais ce serait d'abord sur un système Darwin, mais croyez-moi sur parole, ce ne serait pas joli.
J'espère que quelqu'un trouvera cela utile.
SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.