Ubuntu 16.04’te Nginx kurulum hatası


57
: ~ $ sudo apt-get kaldır nginx * && sudo apt-get install nginx-tam *

Paket listeleri okunuyor ... Tamamlandı
Bağımlılık ağacı oluşturma       
Durum bilgisi okunuyor ... Tamamlandı

Bu işlemden sonra 5.579 kB ek disk alanı kullanılacaktır.
Devam etmek istiyor musun? [Y / n] y
Alın: 1 http://in.archive.ubuntu.com/ubuntu xenial-updates / universe amd64 nginx-tam-dbg amd64 1.10.0-0ubuntu0.16.04.1 [3,789 kB]
33 saniyede 3,789 kB alındı ​​(112 kB / s)                                             
Daha önce seçilmemiş paketin seçilmesi nginx-common.
(Veri tabanı okunuyor ... şu an yüklü olan 189767 dosya ve dizin.)
... / nginx-common_1.10.0-0ubuntu0.16.04.1_all.deb ... paketini açmak için hazırlanıyor
Paketin açılması nginx-common (1.10.0-0ubuntu0.16.04.1) ...
Daha önce seçilmemiş paketin seçilmesi nginx-full.
Paketi açmaya hazırlanıyor ... / nginx-full_1.10.0-0ubuntu0.16.04.1_amd64.deb ...
Paketin açılması nginx-full (1.10.0-0ubuntu0.16.04.1) ...
Daha önce seçilmemiş paketin seçilmesi nginx-full-dbg.
... / nginx-full-dbg_1.10.0-0ubuntu0.16.04.1_amd64.deb ... paketini açmaya hazırlanıyor
Paketin açılması nginx-full-dbg (1.10.0-0ubuntu0.16.04.1) ...
Ufw için işleme tetikleyicileri (0.35-0ubuntu1) ...
'Apache Full' profili için güncellenen kurallar
'Nginx HTTP' profili için güncellenen kurallar

Systemd için işlem tetikleyicileri (229-4ubuntu4) ...
Ureadahead için işlem tetikleyicileri (0.100.0-19) ...
Man-db için işlem tetikleyicileri (2.7.5-1) ...
Nginx-common kurulumu (1.10.0-0ubuntu0.16.04.1) ...
Nginx-full up (1.10.0-0ubuntu0.16.04.1) ayarlanıyor ...
Kontrol işlemi hata koduyla çıktığından nginx.service için iş başarısız oldu. Ayrıntılar için "systemctl status nginx.service" ve "journalctl -xe" bölümüne bakın.

invoke-rc.d: initscript nginx, "start" eylemi başarısız oldu.

dpkg: hata işleme paketi nginx-full (--configure):
 subprocess yüklü kurulum sonrası komut dosyası hata çıkış durumu döndürdü 1
dpkg: bağımlılık sorunları, nginx-full-dbg yapılandırmasını engeller:
 nginx-full-dbg, nginx-full'e bağlıdır (= 1.10.0-0ubuntu0.16.04.1); ancak:
  Paket nginx-full henüz yapılandırılmadı.

dpkg: hata işleme paketi nginx-full-dbg (--configure):

 bağımlılık sorunları - yapılandırılmamış
Hata mesajı, önceki bir hatadan gelen bir takip hatası olduğunu gösterdiğinden yazılı rapor yok.

                          İşleme sırasında hatalarla karşılaşıldı:
 nginx-dolu

 nginx-full-dbg

E: Alt işlem / usr / bin / dpkg bir hata kodu döndürdü (1)

apt-get -f installHerhangi bir paket olmadan deneyin
Motte001

zaten kontrol edildi, aynı hata !! Lütfen bakın: Ancak: Paket nginx-full henüz yapılandırılmadı. dpkg: hata işleme paketi nginx-full-dbg (--configure): bağımlılık sorunları - yapılandırılmamış bırakma İşleme sırasında hatalarla karşılaşıldı: nginx-full nginx-full-dbg E: Alt işlem / usr / bin / dpkg bir hata kodu döndürdü (1)
Mohit

1
Nginx'i kurmadan önce Apache'nin 80 numaralı portta yüklü ve çalışıyor mu? Çıktısını içerecek şekilde soruyu düzenleyin systemctl -l status nginxyanı
Thomas Ward

Yüklü nginx'in farklı bir sürümü de var mıydı? Bir kaldırma görevi yürüdüğünü görüyorum, ancak eski yapılandırmalar hala buralardaysa, kullanımdan kaldırılmış komutlar veya benzer içerikler içeriyorsa, yüklemeyi bozabilirler.
Thomas Ward

See "systemctl status nginx.service" and "journalctl -xe" for details.- Lütfen bunu yapabilir ve sorunuzun sonucunu dahil edebilir misiniz?
David Foerster

Yanıtlar:


139

Nginx'i kurmadan önce apache2'yi kapatmak şu sorunu çözmelidir:

sudo service apache2 stop

3
Ubuntu'ya Sormaya Hoş Geldiniz! Bunun nasıl yapılacağı hakkında ayrıntılı bilgi vermek için bu cevabı düzenlemenizi öneririm . (Ayrıca bkz. İyi bir cevap nasıl yazabilirim? Ask Ubuntu'da hangi tür cevapların en değerli olduğu konusunda genel tavsiyeler için.)
David Foerster

Bu bana ihtiyacım olan ipucunu verdi. Benim durumumda başka bir nginx sunucusu çalıştıran bir docker konteyner kullanıyordum
mithril_knight

Aynı şeyi çarptım ama suçluyu netstat -tulpn | grep :80buldum, benim durumumda 80 numaralı bağlantı noktasını dinlemek için Varnish oldu systemctl stop varnish. Neden Debian / Ubuntu paketleri kurulum sırasında kendilerini başlatmaya çalışıyorlar benden öte ...
Kurmayı

28

Andrew Chan benim için doğru cevabı verdi. Cevabını biraz uzatmak için işte komut satırında yapabilecekleriniz;

apache'yi durdur2

sudo systemctl stop apache2.service

apache2'nin önyüklemede başlamasını önle

sudo systemctl disable apache2.service

Nginx'i yeniden yükle

sudo apt-get install nginx


1
Bunu gerekirse açılışta Apache2 devre dışı öneririm - Eğer do birçok durumlar vardır değil başka portu dinlemesi yapılandırmaya sonuna kadar eğer Apache devre dışı bırakmanız gerekir. Bunu kendim yaptıktan sonra, bazı kurulumlar için, bazı deneyimlerden bahsedebilirim (bu deneyimin geldiği yer olan nginx paketinde de çok çalışıyorum)
Thomas Ward

7

Ben sadece bu sorunu yaşadım, ancak çözüm biraz farklıydı.

Basit bir site yanlış yapılandırmasını çözdüğümde, nginx'i güncelleyebildim.

Nginx hata günlüğünüzü kontrol edin :

sudo cat /var/log/nginx/error.log|less

Ardından tekrar deneyin:

sudo apt-get update;sudo apt-get upgrade


6

Benim durumumda hata sunucu IPv6 devre dışı bırakılmış olmasıdır. Çözüm:

Düzenleyin /etc/nginx/sites-enabled/defaultve IPv6 dışında Açıklama:

listen [::]:80 default_server;

Nginx'i yeniden kurun:

apt purge nginx
apt autoremove
apt install nginx

Apt 1.0 ile @DavidFoerster, yeni ikili tanıtıldı arasında dağıtıldı tanıdık (alt) komutların birçok topladığı apt-get, apt-cachevb vb. Örneğin, apt updateeşittir apt-get update, apt search some-nameeşittir apt-cache search some-namevb. Bazı durumlarda, apt full-upgradeeşit olması gibi bazı yeniden değerlendirme olmuştur apt-get dist-upgrade. Eski ikili dosyalar ve onların komutları, onları beğenenler için de mevcuttur.
Henning Kockerbeck

@HenningKockerbeck: Teşekkürler. O zamanlar gerçekten bilmiyordum ve bir yazım hatası olduğunu düşünmüştüm ama bu arada kendimi eğitmiştim.
David Foerster

Benim için çalıştı, ancak bunu sunucu dağıtımına yönelik kabuk komut dosyalarımda uygulayamıyorum, bu gülünç bir şekilde dolambaçlı ...
Menasheh

1

/Var/log/nginx/error.log dosyasını kontrol ettiğimde, yükleyicinin / var / cache / nginx / microcache dosyasını açamadığını gördüm.

Bir dizin listesi / var / cache / nginx dizini olmadığını gösterdi, bu yüzden onu oluşturdum ve kurulum başarılı oldu.


1

Benim durumumda / etc / nginx / sites-enable / dizininde yanlış yapılandırılmış bir dosya var. Onları .old dosyaları olarak adlandırdım, ancak bu önemli değil. Okunurlar ve başarılı bir kurulum veya bu hizmetin başlatılmasını engelleyebilirler. Bu klasördeki dosyalara dikkat edin ve @Taiger tarafından açıklandığı gibi hata çıktınızı dikkatlice okuyun


0

Kurulumdan önce, manuel olarak eklenmiş sembolik bağlantıları kaldırın /sites-enabled.


0

Benim durumumda, bunun dışında hiçbir şeyin hiçbir yardımı olmadı:

sudo fuser -k 80/tcp

service nginx start
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.