Ao iniciar o uWSGI no Ubuntu, opendir (): Nenhum arquivo ou diretório desse tipo [uwsgi.c line 471]

1

Estou tentando iniciar o uWSGI no Ubuntu 12.04.

Após $ sudo service uwsgi start ou # uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/file.ini , recebo o seguinte erro:

opendir(): No such file or directory [uwsgi.c line 471]

A primeira invocação registra esse erro em /var/log/uwsgi e a segunda gera esse erro em stdout .

O que há de errado?

    
por Dmitry Minkovsky 03.12.2012 / 19:28

2 respostas

3

Tente strace do processo:

# strace -f -o ~/uwsgi.trace uwsgi --ini /usr/share/uwsgi/conf/default.ini --ini /etc/uwsgi/apps-enabled/file.ini revela que, pouco antes de esse processo ser encerrado sem sucesso, a abertura de /usr/lib/uwsgi/plugins falha:

openat(AT_FDCWD, "/usr/lib/uwsgi/plugins", O_RDONLY|O_NONBLOCK|O_DIRECTORY|O_CLOEXEC) = -1 ENOENT (No such file or directory)

Portanto, crie o diretório ausente: # mkdir -p /usr/lib/uwsgi/plugins e tente iniciar o uWSGI novamente.

Dito isto, se você não tiver o diretório /usr/lib/uwsgi/plugins , sua instalação do uWSGI provavelmente não será capaz de lidar com solicitações. Para lidar com solicitações do Python, por exemplo, você desejará # apt-get install uwsgi-plugin-python e, em seguida, adicionar plugins = python à sua configuração de aplicativo.

    
por 03.12.2012 / 19:28
3

O uwsgi funciona bem para aplicativos Django, mesmo sem instalar o plugin python.

mkdir -p /usr/lib/uwsgi/plugins

é uma solução suficiente para o comportamento estranho do código de inicialização do uwsgi.

O mais confuso é que o uwsgi inicia perfeitamente se você especificar a configuração explicitamente tanto na linha de comando quanto no modo daemon.

Por exemplo, você tem:

  • /etc/uwsgi/apps-available/uwsgi.ini
  • link simbólico para ele de /etc/uwsgi/apps-enabled

e, em seguida, crie /etc/init.d/uwsgi start uwsgi.ini - não há problema com o começo! /etc/init.d/uwsgi start - [Falhou] sem diretório de plug-ins existente

Espero que os desenvolvedores do uwsgi consertem isso ou pelo menos registrem a mensagem de erro apropriada

    
por 02.06.2013 / 06:11

Tags