So führen Sie den Cron-Job als Benutzer statt als Root-Benutzer aus

So führen Sie den Cron-Job als Benutzer statt als Root-Benutzer aus

Ich habe einige Bash-Skripte, die zu Cron-Jobs mit festgelegtem Timing hinzugefügt werden, aber sie müssen als Root-Benutzer ausgeführt werden. Ich versuche, diese Skripte, also Cron-Jobs, auszuführen, aber dafür ist die Root-Benutzerberechtigung erforderlich, da ich diese Jobs in einer Ubuntu-EC2-Instanz ausführe, in der der Root-Benutzer eingeschränkt ist. Wie könnte ich diese Skripte als Root-Benutzer ausführen?

Danke

Antwort1

Ich kenne mich mit EC2 nicht aus, aber man kann eine Liste von Befehlen definieren, die sudoohne Passwortabfrage ausgeführt werden können. Führen Sie den Befehl aus visudound fügen Sie etwas wie das Folgende ein:

Cmnd_Alias     CRONJOB = /full/path/to/command1, /full/path/to/command2, ...
<your_user>  ALL=(ALL)   ALL, NOPASSWD:CRONJOB

Verwenden Sie diese anschließend einfach sudoin den Bash-Skripten und fügen Sie diese in Ihren Cron-Job ein.

*/1 * * * * /path/to/the/script1
* */2 * * * /path/to/the/script2

verwandte Informationen