Was muss ich in Terminal eingeben, um mich mit sudo zum Administrator zu machen?

Mein Benutzerkonto ist ein Standardkonto auf meinem Mac. Was muss ich im Terminal mit eingeben sudo, um mich zum Administrator zu machen?

Geht es darum, Ihr Benutzerkonto dauerhaft zu ändern oder eine Terminalsitzung mit den Rechten eines Administrators (oder Root-Benutzers) auszuführen, für den Sie die Anmeldeinformationen kennen?

Antworten (3)

Wenn der tatsächliche Benutzer < Benutzername > ein Standardkonto hat, müssen Sie es eingeben

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

um <Benutzername> zum Administrator zu machen.

Nur eine begrenzte Anzahl von Benutzern sind jedoch Sudoer (dh Konten, die erfolgreich ausgeführt werden dürfen suoder sudomit Root-Rechten). Die Standard-Sudoers-Datei ( /etc/sudoers ) in OS X sieht so aus:

...
# 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
...

Daher dürfen standardmäßig nur root und Mitglieder der Admin-Gruppe ausgeführt werden. sudoDer obige Befehl, der von < Benutzername > ausgeführt wird, schlägt folglich fehl, da < Benutzername > nicht in der Liste enthalten ist.

Um sudoing für < user_name > zu aktivieren , müssten Sie < user_name > zur Liste hinzufügen (unter # User Privilege Specification ) oder die Zeile %wheel auskommentieren, mit sudo visudoder die Sudoers erneut ausgeführt werden müssen (das ist das von Tetsujin erwähnte Catch22).

Schön spezifisch, um meinem "wunderbar vage" entgegenzuwirken. +1, wie immer.
Ich kann mich nicht erinnern: Hat nicht die neueste OSX-Rev. eine Art "nicht-wirklich-sudo" enthalten, dem die vollen Standard-Unix-su-Rechte fehlen?
@CarlWitthoft Ja, du denkst wahrscheinlich an SIP .

Das ist ein bisschen Catch22…

Sie müssen bereits Administrator sein , um auf der Sudoers-Liste zu stehen [mit sehr wenigen manuell geänderten Ausnahmen]

Im Grunde können Sie sich nicht selbst bewerben.
Das ist der ganze Sinn von sudo und Administrator zu sein, um Nicht-Administratoren eingeschränkte Fähigkeiten zuweisen zu können.

Wenn Sie Zugriff auf ein Administratorkonto haben, können Sie dieses Konto vorübergehend werden mit:

su - <admin_username>

Von dort aus können Sie administrative Aktionen über durchführen sudo.

Wenn Sie keinen Zugriff auf ein Administratorkonto haben, gibt es keine "sanktionierte" Möglichkeit, Administratorzugriff zu erhalten (da dies der springende Punkt bei separaten Administratorrollen ist), aber es gibt viele weniger legitime Möglichkeiten, dies zu erreichen B. Privilegienausweitung oder Booten in den Einzelbenutzermodus. (Diese werden dem Leser als Übung überlassen.)