Script init.d do CouchDB para Trusty

1

Eu instalei o CouchDB 1.6.1 em uma caixa Trusty através do PPA do Apache CouchDB ( couchdb/stable ). Tudo isso parece funcionar, exceto que não consigo iniciar o serviço usando service couchdb start (da mesma forma para parar). Eu tenho em torno disso, colocando o seguinte script em /usr/local/bin :

#!/bin/bash
export ERL_FLAGS="+A 16"
export ERL_MAX_PORTS=8192
nohup couchdb > /opt/couchdb/log/couch.log 2>&1 &

Eu tenho que executar isso manualmente (ou pare com kill ). Os comandos service dizem que funcionam, mas o CouchDB falha imediatamente. Isso é bom, exceto no raro evento em que a máquina precisa ser reinicializada; seria legal se o CouchDB surgisse automaticamente.

Em várias páginas que encontrei on-line, há referência a um script init.d em pacote. Na verdade, eu encontrei um gerado init.d script , que deve ser instalado junto com o CouchDB: Eu tentei isso, editado adequadamente, mas o mesmo problema persiste.

Parece que grande parte da documentação que encontrei on-line está muito desatualizada (por exemplo, ela faz referência a caminhos que não são válidos com a versão instalada do PPA e / ou a Trusty). Qual é a atual "melhor maneira de fazer isso"?

    
por Xophmeister 02.09.2016 / 17:34

1 resposta

0

Acontece que o motivo de iniciar / parar o CouchDB com o Upstart foi porque o diretório para o qual ele queria gravar (logs, dados, etc.) - que era diferente do padrão instalado - não estava acessível ao couchdb:couchdb user. Ou seja, o seguinte corrigiu o problema:

chown -R couchdb:couchdb /path/to/couchdb

Eu descobri isso quase por acidente. Obviamente, como não podia escrever no arquivo de registro que queria, isso era inútil. No entanto, os registros do Upstart deram uma indicação melhor do que deu errado!

De qualquer forma, como tal, o script init.d é um arenque vermelho irrelevante. Funciona conforme documentado, desde que possa acessar tudo o que precisa.

    
por 07.11.2016 / 12:01