Ich hatte ein ähnliches Problem, als ich versuchte, meinen Docker-Container dazu zu bringen, Jenkins-Skripts zu erlauben, sudo-Befehle zu verwenden, ohne nach einem Passwort zu fragen.
Dies wurde über das Dockerfile gelöst:
RUN echo "jenkins ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers
Um dies tun zu können, sollten Sie sicherstellen, dass Sie die folgende Zeile in Ihrem sudoers
haben Datei:
%sudo ALL=(ALL:ALL) ALL
Sie können die obige Zeile anpassen, um die Berechtigungen zu ändern, genauso wie %sudo
war ein Benutzer. Diese Zeile lässt alle Benutzer im sudo
zu Gruppe, um sudo
zu verwenden .
Jetzt <username>
zulassen um sudo
zu verwenden , können Sie einfach usermod -a -G sudo <username>
ausführen als root, was <username>
hinzufügt bis sudo
Gruppe.
Sie könnten cat
verwenden um Text an das Ende von /etc/sudoers
anzuhängen . Erstellen Sie zunächst eine Sicherungskopie Ihres /etc/sudoers
Datei. Dann:
cat >> /etc/sudoers
...type one or more lines here...
[control-D]
Verwenden Sie unbedingt zwei Größer-als-Zeichen (>>
) und nicht nur eine, sonst überschreiben Sie den gesamten Inhalt Ihrer Datei.