Alguns arquivos em / usr / sbin / nunca estão sendo substituídos?

1

Eu tenho uma pergunta sobre um problema estranho que nunca encontrei antes, apesar de estar trabalhando com muitos servidores por um bom tempo.

Portanto, há o servidor da web cherokee que eu compilei e instalei com

./configure --prefix=/usr
make
make install

Antes desta 'atualização' eu apaguei a versão antiga completamente (também verifiquei com ferramentas de busca) e fiz o backup da configuração existente que atualizei e copiei de volta para sua pasta original mais tarde.

Mas o problema básico são dois arquivos: cherokee-worker e cherokee-admin . Esses arquivos não foram copiados para / usr / sbin / corretamente. Para provar minha suspeita, executei alguns comandos:

/home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker -i
  >> Version: 1.2.1

cp /home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker /usr/sbin/cherokee-worker

/usr/sbin/cherokee-worker -i
  >> Vesion: 1.0.8

O mesmo problema acontece com cherokee-admin . O mais estranho é que se eu substituir a cópia real de cherokee-worker em / usr / sbin / com um link simbólico para o arquivo working em /.../ build /../ cherokee-1.2.1 it funciona !

rm /usr/sbin/cherokee-worker
ln -s /home/paul/build/cherokee/cherokee-1.2.1/cherokee/cherokee-worker /usr/sbin/cherokee-worker
/usr/sbin/cherokee-worker -i
  >> Version: 1.2.1

Parece que uma cópia do cherokee-worker / -admin não está funcionando corretamente. Mas como vem?

Você sabe o que acontece? Eu não tenho absolutamente nenhuma ideia do que está acontecendo.

Obrigado pela sua ajuda antecipadamente!

Paul

    
por Paul 01.03.2011 / 18:29

2 respostas

3

Você precisa ser root para executar o make install. De sua pergunta, não está claro se você tem as permissões corretas ao executá-lo.

Você deve compilar como usuário normal e instalar como root (você também deve usar / usr / local como prefixo para tudo que não vem do gerenciador de pacotes da sua distribuição, mas isso é outro debate):

make
sudo make install
    
por user9521 01.03.2011 / 18:40
0

Se você já instalou o cherokee nos repositórios do ubuntu, então essa versão foi instalada em / usr / sbin, e sua versão compilada manualmente provavelmente irá interferir mal com a instalação 'oficial'. Certifique-se de remover a versão empacotada antes de tentar instalar uma cópia personalizada.

apt-get remove cherokee

Até onde for, eu recomendaria sempre usar a versão nos repositórios, a menos que você tenha um bom motivo. Dessa forma, você obterá atualizações automaticamente e não terá que lutar contra os erros do upstream. link

    
por ImaginaryRobots 01.03.2011 / 18:57