Eu tenho todos os meus arquivos de configuração iniciais sob controle de versão. Minha maneira ideal de usar o upstart é criar links flexíveis do meu repositório de controle de versão (mercurial - não que isso importe) no / etc / init, mas o upstart não consegue ver os trabalhos. Está tudo bem se eu copiar os arquivos do diretório do repositório para / etc / init.
Alguém sabe por que o iniciante falha ao lidar com links simbólicos ou mesmo físicos?
obrigado
Chris
ubuntu-10.04
upstart
Chris McCauley
fonte
fonte
/etc/init
, tente usar links físicos.Respostas:
O Upstart não suporta links simbólicos, pois eles podem apontar para um arquivo em uma partição que não é carregada no momento da inicialização .
Eu resolvi isso em meu próprio projeto, colocando os arquivos conf em / etc / init / myscripts e vinculando-os a um diretório no meu repositório.
mount --bind /etc/init/myscripts ~/code/repo/initscripts
.Adicione isso ao / etc / fstab e a ligação será persistente:
Isso efetivamente fornece diretórios vinculados. O Upstart tratará os arquivos conf como qualquer outro, porque eles são locais para / etc / init. Seu DVCS também os verá como arquivos locais no repositório, portanto, também os tratará como faria com outros arquivos armazenados lá. Melhor dos dois mundos.
fonte
O Upstart observa seus diretórios de configuração com inotify e recarrega a configuração quando qualquer um dos arquivos é alterado ou quando um novo arquivo é adicionado. Aparentemente, isso não funciona para links simbólicos.
Para atualizar manualmente a configuração, use
fonte
Como mencionado anteriormente:
No entanto, se você receber um erro como o seguinte:
Você deve invocar o sudo:
fonte