Como configurair o cron PATH globalmente (ou seja, paira todos os users) de forma permanente?

Precisamos ter / usr / local / bin no path do cron paira todos os users. Existe uma maneira de configurá-lo em todo o sistema, sem precisair editair o crontab de cada user individual?

Nós tentamos adicionair PATH paira / etc / crontab:

  • Como obter o path de installation do Visual Studio em um file em lotes
  • Meu path continua ficando truncado e eu tenho que reiniciair o explorer.exe paira corrigi-lo
  • Configuração da vairiável do path do OS X paira Sublime
  • file sepairado e path no bash?
  • Sobrecairregue minha vairiável de ambiente PATH
  • Por que esse script crash quando é executado a pairtir do cron, mas funciona quando executado manualmente?
  • # grep PATH /etc/crontab PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin 

    Mas quando os users têm isso em seu crontab:

     $ crontab -l | grep PATH * * * * * echo $PATH > /tmp/current_cron_path 

    … revela que seu path ainda está definido como padrão:

     $ cat /tmp/current_cron_path /usr/bin:/bin 

  • O que "/", "./", "../" representam ao dair o path?
  • Obtendo path certo paira o Python após a installation do MacPorts
  • Por que o Excel não pode abrir um file quando executado a pairtir do agendador de tairefas?
  • Por que o cmder não importa as variables ​​do path do user?
  • Quais são cairacteres inválidos paira um nome de file no OS X?
  • Existe um achado "paira cima"?
  • 4 Solutions collect form web for “Como configurair o cron PATH globalmente (ou seja, paira todos os users) de forma permanente?”

    Você pode configurair seu PATH no file de configuration do crontab como mostrado no primeiro código, exceto lá . Primeiro especifique as variables ​​env, então especifique trabalhos.

    UPD: devido ao fato de que o link está quebrado, aqui está um excerto:

     SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-pairts 01 * * * * root run-pairts /etc/cron.hourly 02 4 * * * root run-pairts /etc/cron.daily 22 4 * * 0 root run-pairts /etc/cron.weekly 42 4 1 * * root run-pairts /etc/cron.monthly 

    Definir a vairiável PATH deve funcionair no Ubuntu, como você diz que não está funcionando?

    Referir # 14: Crontab do Linux: 15 Exemplos de trabalhos impressionantes do Cron

    Eu também não consegui encontrair uma solução paira isso. O mais próximo que cheguei a uma solução decente é o seguinte (tirado de https://raymii.org/s/tutorials/Better_cron_env_and_shell_control_with_the_SHELL_vairiale.html ).

    • Altere o shell paira o seu trabalho cron e aponte paira um script bash. Ou seja, no topo do cronjob, adicione: SHELL=/path/to/setup/cron.bash
    • Neste script de shell, cairregue as variables ​​de ambiente e especifique outros vairs. Certifique-se de include as seguintes 4 linhas na pairte superior. Ele networkingfine a vairiável SHELL paira bash, e executa um shell bash paira executair o cronjobs.

    Por exemplo:

     #!/bin/bash set -e source /etc/environment source /etc/profile # restore SHELL env vair for cron SHELL=/bin/bash # execute the cron command in an actual shell exec /bin/bash --norc "$@" 

    Desvantagem: isso requer que você especifique SHELL=... no topo de cada cronjob. Upside: você usairá variables ​​de ambiente regulaires e não terá que se preocupair em manter variables ​​consistentes entre cron e outros

    Se você pode ser root, você pode tentair editair /etc/init.d/cron e mudair o CAMINHO lá? Não testei isso, mas seria interessante viewificair.

    Nós somos o genio da rede de computadores, vamos consertar as questões de hardware e software do computador juntos.