Wie vermeidet man, dass „Root nicht berechtigt ist, sudo auszuführen“?

Wie vermeidet man, dass „Root nicht berechtigt ist, sudo auszuführen“?

Ich versuche, ein Installationsskript eines Drittanbieters (ansible tower setup.sh) auszuführen, das als Root oder über sudo gestartet werden muss, da einige der Befehle Root-Rechte erfordern. EinigeBefehle während der Skriptausführung versuchen Sie mit sudo. Fragen Sie mich nicht warum, ich denke, das Setup-Skript ist eine Gemeinschaftsarbeit mit einigen Inkonsistenzen ...

Das Skript schlägt also fehl und ich kann es reproduzieren. Ich stoße jedes Mal auf diesen seltsamen Fehler, wenn ich versuche, sudo als Root einzugeben, z. B.

root@machine:/home/someuser: sudo echo 1
root is not allowed to run sudo on <FQDN here>.  This incident will be reported.

So etwas habe ich bei meinen bisherigen Erfahrungen mit Ubuntu noch nie gesehen (und, um ehrlich zu sein, derzeit auch nicht bei Google).

Da es keine Option ist, alle Stellen zu finden und das Skript so umzuwandeln, dass es sudo nicht aufruft, muss ich einen Weg finden, wie der Root-Benutzer sudo ausführen kann. Der Ubuntu 16.04-Server, an dem ich arbeite, wird vom privaten Cloud-Anbieter des Unternehmens innerhalb der Domäne auf exotische Weise konfiguriert (keine Ahnung, ob das wichtig ist).

Meine /etc/sudoers sieht folgendermaßen aus:

#
# This file MUST be edited with the 'visudo' command as root.
# more bla bla
Defaults        env_reset
Defaults        mail_badpass
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
+unixadmin,+unixadminext      ALL= NOPASSWD: ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

über sudo:

root@machine:/home/someuser# which sudo
/usr/bin/sudo
root@machine:/home/someuser# ll /usr/bin/sudo
-rwsr-xr-x 1 root root 140816 Jun  7  2017 /usr/bin/sudo*    

Was vermisse ich?

Ich habe den Root-Benutzer zur Sudo-Gruppe hinzugefügt, aber das Problem wurde dadurch nicht gelöst.

Antwort1

Führen Sie als Root aus groups: „Root ist nicht in der Sudo-Gruppe. Warum sollte es das auch sein?“

Um das Problem zu beheben, können Sie entweder root zur Sudo-Gruppe hinzufügen oder in jedes Skript, das sudo ausführt, ein Häkchen setzen (was Sie als Möglichkeit für Ihr spezielles Problem ausgeschlossen haben, für andere aber möglicherweise eine Lösung ist).

So fügen Sie Root zur Sudo-Gruppe hinzu:

(als Root)usermod -a -G sudo root

verwandte Informationen