2012-03-02 19 views
6

Instalé originalmente nginx a través de apt-get install. Funciona bien. Ahora, quiero instalar algunos módulos de terceros y tengo que recompilar nginx. Así que intenté recompilar. Hizo los movimientos y luego me di cuenta de que mi versión original todavía era la que estaba siendo utilizada.Recompilación de nginx después de usar apt-get install nginx

¿Debo desinstalar primero mi copia original de nginx para que la otra se instale correctamente?

mis banderas para la instalación: --conf-path =/etc/nginx/nginx.conf --error-log-path =/var/log/nginx/error.log --pid-ruta =/var/run/nginx.pid --lock-path =/var/lock/nginx.lock --http-log-path =/var/log/nginx/access.log --http-client-body-temp -path =/var/lib/nginx/body --http-proxy-temp-path =/var/lib/nginx/proxy --http-fastcgi-temp-path =/var/lib/nginx/fastcgi --con -debug --with-http_stub_status_module --with-http_flv_module --with-http_ssl_module --with-http_dav_module --with-http_gzip_static_module --with-http_realip_module --with-mail --with-mail_ssl_module --with-ipv6 --add -module =/usr/src/gnosek-nginx-upstream-fair-5f6a3b7 --add-module =/usr/src/mod_strip

Respuesta

1

No deberías necesitar para desinstalar la versión de apt-get primero, pero es una buena idea para que no inadvertidamente revise su compilación personalizada con una 'actualización de apt-get' o una actualización de sistema similar en el futuro.

Existen algunas razones por las que su compilación podría no haber funcionado. ¿El instalador tiene los permisos correctos para sobrescribir el archivo existente? ¿Está .configure colocando el binario compilado en el mismo lugar que apt-get? (--sbin-path =/where-you-want-it-installed en .configure, if not/sbin/nginx) ¿Se estaba ejecutando nginx cuando compiló? Es posible que el instalador no pueda sobrescribir un archivo abierto. (Has reiniciado nginx, ¿no?) Tal vez algo más, pero ahí es donde empezaría a buscar.

+0

definitivamente estaba ejecutando nginx en ese momento. desde entonces lo he reiniciado varias veces. De hecho, no estoy seguro de cuál era el camino de sbin para apt-get, ¿cómo puedo verificarlo? ¿Cómo puedo otorgar permisos al instalador? – Kristian

+0

Puede usar 'whereis nginx' para encontrar dónde está el binario actual (pero probablemente/sbin/nginx a menos que algo haya cambiado). Los permisos para el instalador dependen de qué usuario estaba ejecutando la compilación y quién es el propietario del archivo binario instalado. Si ambos son lo mismo, no debería importar. En la mayoría de los casos, usar sudo debería ser suficiente. –

+0

ah, de hecho se encuentra en/usr/sbin/nginx. también yo soy la raíz. – Kristian