GNU/Linux >> Linux Esercitazione >  >> Linux

Esegui il comando shell in jenkins come utente root?

Suggerirei di non eseguire l'utente jenkins come root. Ciò potrebbe esporre il sistema operativo e tutti i repository che jenkins può creare.

L'esecuzione di qualsiasi script come root è un rischio per la sicurezza, ma un metodo leggermente più sicuro sarebbe concedere all'utente jenkins l'accesso sudo per eseguire solo uno script, senza bisogno di una password.

sudo visudo

e aggiungi quanto segue:

jenkins    ALL = NOPASSWD: /var/lib/jenkins/jobs/[job name]/workspace/script

Ricontrolla il tuo percorso tramite il registro della console di uno script di compilazione non riuscito. Quello mostrato qui è quello predefinito.

Ora all'interno dell'attività jenkins puoi chiamare sudo $WORKSPACE/your script


Devi modificare l'autorizzazione per jenkins user in modo da poter eseguire i comandi della shell. Puoi installare jenkins come servizio (scarica il pacchetto rpm), potresti dover cambiare le porte perché per impostazione predefinita esegue http su 8080 e AJP su porta 8009.



Il seguente processo è per CentOS
1. Apri questo script (usando VIM o un altro editor):

vim /etc/sysconfig/jenkins

2. Trova questo $JENKINS_USER e cambia in "root":

$JENKINS_USER="root"

3. Quindi cambia la proprietà di Jenkins home, webroot e logs:

chown -R root:root /var/lib/jenkins
chown -R root:root /var/cache/jenkins
chown -R root:root /var/log/jenkins

4) Riavvia Jenkins e verifica che l'utente sia stato modificato:

service jenkins restart
ps -ef | grep jenkins

Ora dovresti essere in grado di eseguire i lavori di Jenkins come utente root e tutti i comandi della shell verranno eseguiti come root .


Linux
  1. Come eseguire un comando come amministratore di sistema (root)?

  2. Come eliminare i privilegi di root negli script della shell?

  3. Modo per fare in modo che uno script di shell venga sempre eseguito come root?

  4. non fallire la build di jenkins se l'esecuzione della shell fallisce

  5. Come eseguire il comando Vim dalla shell?

Come eseguire il comando / script della shell di Linux in background

Comando ID in Linux

Comando runuser Linux - Esegui Shell con l'ID utente/gruppo specificato

Come diventare un utente root in Ubuntu

Shell dei comandi

Esecuzione di un comando come utente nologin