Que dois-je entrer dans Terminal, en utilisant sudo pour devenir administrateur?

11

Mon compte utilisateur est un compte standard sur mon Mac. Avec quoi dois-je entrer dans Terminal sudopour devenir administrateur?

Steven Savary
la source
1
S'agit-il de modifier définitivement votre compte d'utilisateur ou d'exécuter une session de terminal avec les droits d'un utilisateur administrateur (ou root) pour lequel vous connaissez les informations de connexion?
rackandboneman

Réponses:

14

Si l'utilisateur réel <nom_utilisateur> possède un compte standard, vous devrez saisir

sudo dscl . -append /Groups/admin GroupMembership <user_name>

pour faire de <nom_utilisateur> un administrateur.

Cependant, seul un nombre restreint d'utilisateurs sont des sudoers (c'est-à-dire des comptes autorisés à s'exécuter suou sudoavec des privilèges root). Le fichier sudoers standard ( / etc / sudoers ) sous OS X ressemble à ceci:

...
# User privilege specification
root    ALL=(ALL) ALL
%admin  ALL=(ALL) ALL

# Uncomment to allow people in group wheel to run all commands
# %wheel    ALL=(ALL) ALL
...

Par conséquent, seuls root et les membres du groupe admin sont autorisés à s'exécuter sudopar défaut. La commande ci-dessus exécutée par <nom_utilisateur> échouera par conséquent, car <nom_utilisateur> ne figure pas dans la liste.

Pour activer le sudoing pour <nom_utilisateur> , vous devez ajouter <nom_utilisateur> à la liste (ci-dessous # spécification de privilège utilisateur ) ou décommenter la ligne% wheel avec sudo visudolaquelle les sudoers doivent à nouveau exécuter (c'est le Catch22 mentionné par Tetsujin).

klanomath
la source
1
Joliment spécifique pour contrer mon «merveilleusement vague». +1, comme toujours.
Tetsujin
1
Je ne me souviens pas: la dernière rév. OSX ne l'a-t-elle pas été? inclure une sorte de "pas-vraiment-sudo" qui manque de droits suix Unix standard?
Carl Witthoft
3
@CarlWitthoft Oui, vous pensez probablement au SIP .
Deditos
12

C'est un peu un Catch22…

Vous devez déjà être administrateur pour figurer sur la liste des sudoers [avec très peu d'exceptions modifiées manuellement]

Essentiellement, vous ne pouvez pas vous promouvoir.
C'est tout l'intérêt de sudo et d'être un administrateur, pour pouvoir attribuer des capacités limitées aux non-administrateurs.

Tetsujin
la source
-2

Si vous avez accès à un compte administrateur, vous pouvez devenir ce compte temporairement avec:

su - <admin_username>

De là, vous pouvez effectuer des actions administratives via sudo.

Si vous n'avez pas accès à un compte administrateur, il n'y a pas de moyen "sanctionné" d'obtenir un accès administrateur (car c'est tout l'intérêt d'avoir des rôles d'administrateur séparés), mais il existe de nombreuses façons moins que légitimes de l'atteindre , comme les exploits par élévation de privilèges ou le démarrage en mode mono-utilisateur. (Celles-ci seront laissées au lecteur comme exercice.)

duveteux
la source