Como você acrescenta a variável de ambiente no Upstart?

2

Eu coloquei o seguinte no meu arquivo /etc/init/myjob.conf mas não parece funcionar

env PATH=$PATH:/mnt/data/src
env PYTHONPATH=$PYTHONPATH:/mnt/progs/link

É possível acrescentar de alguma forma a uma variável ambiental?

    
por nickponline 12.07.2014 / 03:25

3 respostas

-1
  

export PATH = ~ / bin: "$ PATH"

Você deve adicionar isso no arquivo ~ / .bashrc para trabalhar em todas as sessões de usuário.

Você deve reiniciar para ver se está funcionando ou tente o comando . .bashrc para funcionar sem reiniciar.

    
por Sudheer 12.07.2014 / 04:08
3

Você não pode acrescentar variáveis dentro de um script upstart, você precisa usar um arquivo externo e obtê-lo dentro de uma seção de script:

crie um arquivo / etc / default / myjob com conteúdo como:

env PATH=$PATH:/mnt/data/src
env PYTHONPATH=$PYTHONPATH:/mnt/progs/link
export PATH
export PYTHONPATH

depois, em /etc/init/myjob.conf , insira-o onde for necessário

script 
    . /etc/default/myjob
    exec command
end script

enquanto isso parecer desnecessariamente complicado, está correto porque um arquivo de script init deve mudar entre a versão dos pacotes enquanto / etc / default / appname são arquivos de configuração e não são sobrescritos por padrão

    
por samu 18.12.2015 / 12:01
0

Você pode colocar o seguinte em seu arquivo / etc / environment:

PATH="/mnt/data/src:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games"

PYTHONPATH="/mnt/progs/link"

É claro que este método não irá "anexar", mas não deve ser necessário devido a estas são as principais variáveis de ambiente, e outras aplicações devem anexá-las a elas.

    
por Luisg123v 12.07.2014 / 04:33