Was ist der einfachste Weg oder die einfachste Methode, um das Hinzufügen eines Benutzers zu einer frischen Sudoers -Datei zu automatisieren?

StackOverflow https://stackoverflow.com/questions/5347489

  •  27-10-2019
  •  | 
  •  

Frage

Also habe ich Micronxd adduser'ed. Ich habe Micronxd bestanden. Jetzt möchte ich Micronxd zu einem Sudo -Benutzer machen.

Ich versuche so viel von diesem Prozess wie möglich in ein Shell -Skript zu packen. Wenn möglich, könnte die Lösung die Sudoers -Datei beinhalten? Ich würde gerne ein sehr starkes Verständnis für dieses tierische kleine Nugget (SED) bekommen.

War es hilfreich?

Lösung

Das sudoers Datei sollte wirklich nur mit bearbeitet werden visudo(8).

Das heißt, vielleicht sollten Sie einfach hinzufügen micronxd zum wheel Gruppe beim Hinzufügen der micronxd Benutzer (siehe adduser(8) --add_extra_groups Option) und dann diese Zeile hinzufügen sudoers (über visudo(8) :) :

%wheel ALL=(ALL) ALL

Nun jeder Benutzer, den Sie mit der primären Gruppe oder einer zusätzlichen Gruppe von erstellen wheel bekommt sudo automatisch zugreifen. Möglicherweise müssen Sie die möglicherweise nie bearbeiten sudoers Datei wieder.

(Beachten Sie, dass Sie problemlos jeden hinzufügen können, den Sie möchten wheel Gruppe; vigr(8), finde das wheel Gruppe und fügen Sie ihren Login -Namen an die Zeile hinzu. Verwenden Sie Kommas, um Benutzernamen zu trennen.)

Andere Tipps

OK OK OK! Ich habe es total verstanden. Dies mag ein bisschen übertrieben sein, aber ich bin mir nicht sicher, ob Sudoers -Dateien in unterschiedlicher Distribution gleich sind.

Ich fand hier eine Dokumentation über den Holding -Puffer für SED: http://anaturb.net/sed.htm

und auf dem X -Befehl für SED hier: http://www.kingcomputerservices.com/unix_101/hands_off_editing_with_spart_2.htm

Und ich habe mich darauf ausgedacht:sed -e '/^root/{h;}' -e 'x' -e 's/root/micronxd/' -e 'x' -e '/^root/G' -e 'wsudoers' sudoers

Hier ist die Aufschlüsselung der 6 Schritte:

1. '/^root/{h;}'

findet unkontrollierte Linien, beginnend mit Wurzel, und ersetzt den Haltepuffer durch ihn.

  • Regelmäßiger SED -Puffer: [Die gesamte Sudoers -Datei
  • Puffer halten: Wurzeln Sie alle = (alle) alle

2. 'x'

tauscht den Haltenpuffer mit dem regulären "Sed'd" -Puffer aus.

  • Regelmäßiger SED -Puffer: Wurzeln Sie alle = (alle) alle
  • Holding Puffer: [Die gesamte Sudoers -Datei

3. 's/root/micronxd/' '

Ersetzt die Wurzel durch Mikronxd

  • Regelmäßiger SED -Puffer: micronxd alle = (alle) alle
  • Holding Puffer: [Die gesamte Sudoers -Datei

4. 'x'

tauscht den Haltebuffer wieder mit dem regulären Puffer "Sed'd" -Puffer aus.

  • Regelmäßiger SED -Puffer: [Die gesamte Sudoers -Datei
  • Puffer halten: micronxd alle = (alle) alle

5. '/^root/g'

Der G findet den Haltebuffer nach dem Matching der Linie an ^Wurzel.

  • Regelmäßiger SED -Puffer (nur die relevanten Bits):

## Ermöglichen
Wurzeln Sie alle = (alle) alle
micronxd alle = (alle) alle

  • Puffer halten: micronxd alle = (alle) alle

6. "Wsudoers"

schreibt den regulären SED -Puffer zurück zu sudoers

Ich bin mir sicher, dass es einen besseren Weg gibt, aber ich versuche, SED zu halten. Außerdem war ich mir nicht sicher, ob user MACHINE=COMMANDS ???? ist die Syntax für alle Linux -Systeme oder nur Fedora (womit ich es zu tun habe).

Wie auch immer, ich freue mich, andere Wege zu sehen (besonders bessere Wege).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top