데비안 8에서 nginx-full 설치 문제


23

데비안 제시에 nginx pkg (nginx-full)을 설치하는 데 문제가 있습니다.

# apt-get install nginx-full
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following extra packages will be installed:
  nginx-common
Suggested packages:
  fcgiwrap nginx-doc
The following NEW packages will be installed:
  nginx-common nginx-full
0 upgraded, 2 newly installed, 0 to remove and 0 not upgraded.
Need to get 510 kB of archives.
After this operation, 1.271 kB of additional disk space will be used.
Do you want to continue? [Y/n] 
Get:1 http://debian.c3sl.ufpr.br/debian/ jessie/main nginx-common all 1.6.1-1 [83,6 kB]
Get:2 http://debian.c3sl.ufpr.br/debian/ jessie/main nginx-full amd64 1.6.1-1+b1 [427 kB]
Fetched 510 kB in 1s (266 kB/s)     
Selecting previously unselected package nginx-common.
(Reading database ... 170540 files and directories currently installed.)
Preparing to unpack .../nginx-common_1.6.1-1_all.deb ...
Unpacking nginx-common (1.6.1-1) ...
Selecting previously unselected package nginx-full.
Preparing to unpack .../nginx-full_1.6.1-1+b1_amd64.deb ...
Unpacking nginx-full (1.6.1-1+b1) ...
Processing triggers for man-db (2.6.7.1-1) ...
Setting up nginx-common (1.6.1-1) ...
Setting up nginx-full (1.6.1-1+b1) ...
Job for nginx.service failed. See 'systemctl status nginx.service' and 'journalctl -xn' for details.
invoke-rc.d: initscript nginx, action "start" failed.
dpkg: error processing package nginx-full (--configure):
 subprocess installed post-installation script returned error exit status 1
Errors were encountered while processing:
 nginx-full
E: Sub-process /usr/bin/dpkg returned an error code (1)

# systemctl status nginx.service
nginx.service - A high performance web server and a reverse proxy server
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled)
   Active: failed (Result: exit-code) since Sex 2014-09-05 11:39:46 BRT; 1s ago
  Process: 2972 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=1/FAILURE)

#journalctl -xn
No journal files were found.

누군가 고치는 방법을 알고 있습니까?


1
당신은 'systemctl 상태 nginx.service'과의 출력을 추가 할 수 'journalctl -xn'
0x7c0

# systemctl status nginx.service가 있으며 journalctl -xn은 "저널 파일을 찾을 수 없습니다."를 반환합니다.
gnomex

lighttpd를 먼저 설치 한 이후에도 같은 문제가있었습니다. @Shutupsquare : nginx가 더 나은 오류 메시지를 제공한다면 좋을 것입니다. 출력은 쓸모없고 포트가 이미 차단되었다는 결론을 내리지 못했습니다 ...
Chris

답변:


26

데비안 버그 # 754407 에서도 비슷한 문제가보고되었습니다 . 결국 그것은 다른 프로세스 (Apache2)에 의해 취해진 포트 80이었습니다. 이것도 당신의 경우일까요?


버그를 읽은 후에는 실제로 더 우아하고 유익하게 실패해야합니다. 현재 포트가 사용중인 경우 다른 포트로 전환 할 수도 있습니다. postgresql은 예를 들어 이와 같은 일을한다고 생각합니다.
Faheem Mitha

버그는 버전 1.6.1-2에서 수정되었습니다. 이제 모든 것이 완벽하게 작동합니다
gnomex

@gnomex nope, 1.9.10-1 in Stretch 및 apache2설치 를 중단 해야했습니다 nginx-full.
berbt

필자의 경우 Varnish는 443에 nginx를 설치하려고 시도하면서 포트 80을 사용하고있었습니다. 팁 감사합니다
NoChecksum

20

아파치 2 중지

service apache2 stop

그런 다음 nginx를 설치하십시오.

apt-get install nginx

그럼 축하해!


9

내 경우에는 내가 처형했다.

sudo apt-get remove nginx* --purge 그 후 나는 nginx-common을 설치했다.

sudo apt-get install nginx-common

그런 다음 nginx를 설치했습니다.

sudo apt-get install nginx

이 후 브라우저에 ip를 입력하고 작동했습니다.


1

나는 같은 문제가 있었다. 아파치가없고 포트 80을 막고있는 것이 없습니다. nginx를 설치할 수 없습니다

sudo apt-get install nginx

와 함께

sudo apt-get install nginx-common nginx-full

일주일 후 나는이 작은 블로그를 우연히 발견했다 : https://etc.banana.fish/?p=75

이 블로그에서 해결책은 다음과 같습니다.

  1. nginx-common을 설치하십시오 : sudo apt-get install nginx-common
  2. / etc / nginx / sites-enabled / defaultlisten [::]:80 default_server; 에서 제거하십시오 (루트 사용자를 사용하여 작성했습니다)
  3. 확실하게, 나는 서버를 재부팅했다.
  4. 그냥 확인을 두 번, 내가 한 일하기 위해 sudo apt-get update다음과 sudo apt-get upgrade.
  5. 이제 나는 마침내 전화 sudo apt-get install nginx-full를 걸었고 효과가 있었다!

원격 서버의 IP를 입력했을 때 nginx의 타이틀 화면을 볼 수있었습니다.


0

제 경우에는 서버에서 IPv6을 사용하지 않도록 설정했습니다. 수정하기 위해 nginx 구성 파일을 편집하고 (예 : / etc / nginx / sites-enabled / default) nginx 악마를 다시 시작하십시오.


0

나는 같은 문제를 겪고 있었다. 설치하는 동안 적극적으로 제거했기 때문에 Apache에 대한 조언은 관련이 없습니다.

nginx의 구성 파일 /etc/nginx/nginx.conf과 서비스 스크립트 간의 충돌 결과를 보았습니다 /lib/systemd/system/nginx.service.

특히, 서비스 스크립트는 daemon on다음을 포함한 몇 가지 옵션으로 nginx를 시작했습니다 .

$ cat /lib/systemd/system/nginx.service
...
[Service]
...
ExecStartPre=/usr/sbin/nginx -t -q -g 'daemon on; master_process on;'
ExecStart=/usr/sbin/nginx -g 'daemon on; master_process on;'
ExecReload=/usr/sbin/nginx -g 'daemon on; master_process on;' -s reload
...

/usr/sbin/nginx -g 'daemon on; master_process on;'터미널에서 직접 실행했는데 다음 오류가 발생했습니다.

nginx: [emerg] "daemon" directive is duplicate in /etc/nginx/nginx.conf:1

나는 살펴보고 /etc/nginx/nginx.conf1 번 라인에서 찾았습니다.

daemon off;

이것을 주석 처리하고 실행 sudo apt-get -f install하면 문제가 해결되었습니다.


0

나는이 문제가 발생하는 경우 apt-get remove nginxapt-get automove nginx, 그리고 수동의 nginx 폴더를 제거보다 후. 내가 언제 apt-get install nginx다시이 문제가 나온다.

~# apt-get install  

nginx 패키지 목록 읽기 ... 완료 건물 종속성 트리 상태 정보 읽기 ... 완료 nginx는 이미 최신 버전입니다. 0 업그레이드, 0 새로 설치, 0 제거 및 140 업그레이드되지 않음. 2 완전히 설치 또는 제거되지 않았습니다. 이 작업 후에는 0B의 추가 디스크 공간이 사용됩니다. 계속 하시겠습니까? [Y / n] y nginx-full (1.6.2-5 + deb8u4) 설정 중 ... nginx.service 작업에 실패했습니다. 자세한 내용은 'systemctl status nginx.service'및 'journalctl -xn'을 참조하십시오. invoke-rc.d : initscript nginx, "start"작업이 실패했습니다. dpkg : 오류 처리 패키지 nginx-full (-configure) : 서브 프로세스 설치 후 설치 스크립트가 오류 종료 상태 1을 리턴했습니다. dpkg : 종속성 문제로 인해 nginx의 구성을 방지합니다. nginx는 nginx-full에 따라 다릅니다 (> = 1.6.2-5 + deb8u4 ) | nginx-light (> = 1.6. 2-5 + deb8u4) | nginx-extras (> = 1.6.2-5 + deb8u4); 하나:
nginx-full 패키지가 아직 구성되지 않았습니다. nginx-light 패키지가 설치되지 않았습니다. nginx-extras 패키지가 설치되어 있지 않습니다. nginx는 nginx-full에 의존합니다 (<< 1.6.2-5 + deb8u4.1 ~) | nginx-light (<< 1.6.2-5 + deb8u4.1 ~) | nginx-extras (<< 1.6.2-5 + deb8u4.1 ~); 그러나 nginx-full 패키지가 아직 구성되지 않았습니다. nginx-light 패키지가 설치되지 않았습니다.
nginx-extras 패키지가 설치되어 있지 않습니다.

dpkg : 오류 처리 패키지 nginx (-configure) : 종속성 문제-구성되지 않은 상태로 유지 처리하는 동안 오류가 발생했습니다. nginx-full nginx E : 하위 프로세스 / usr / bin / dpkg에서 오류 코드 (1)를 반환했습니다.

~# systemctl status nginx.service  

nginx.service-고성능 웹 서버 및 리버스 프록시 서버로드 됨 :로드 됨 (/lib/systemd/system/nginx.service; 활성화 됨) 활성 : 실패 2017 년 3 월 21 일 이후 (결과 : 종료 코드) 04 : 35:29 EDT; 1 분 33 초 전
프로세스 : 19912 ExecStartPre = / usr / sbin / nginx -t -q -g 데몬; master_process on; (code = exited, status = 1 / FAILURE) 기본 PID : 18408 (code = exited, status = 0 / SUCCESS)

3 월 21 일 04:35:29 dayinhu nginx [19912] : nginx : [emerg] open () "/etc/nginx/nginx.conf"실패 (2 : 해당 파일 또는 디렉토리 없음) 3 월 21 일 04:35:29 dayinhu nginx [19912] : nginx : 구성 파일 /etc/nginx/nginx.conf 테스트 실패 3 월 21 일 04:35:29 dayinhu systemd [1] : nginx.service : 제어 프로세스 종료, 코드 = 종료 상태 = 1 3 월 21 일 04:35 : 29 dayinhu systemd [1] : 고성능 웹 서버 및 리버스 프록시 서버를 시작하지 못했습니다. 3 월 21 일 04:35:29 dayinhu systemd [1] : 단위 nginx.service가 실패 상태에 들어갔습니다.

nginx.conf가 손실되었다고 말했지만 성공하지 못한 채 여러 번 시도했습니다.

마지막으로

apt-get purge nginx nginx-common nginx-full
apt-get install nginx

-2
  1. 스카이프가있는 경우 : 스카이프 포트 80443
  2. 아파치 2 서비스 중지
  3. nginx 설치
  4. 아파치 다시 시작
  5. 적절한 업데이트
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.