Ejabberd Start Neden Başarısız?


9

Ben yüklemeye çalışıyorum ejabberd 2.1.10-2benim üzerinde Ubuntu 12.04.1sunucuda. Bu yeni bir yükleme ve ejabberd asla başarıyla yüklenmedi.

Kurulum

Her seferinde, apt-get bunun üzerinde asılı kalır:

Setting up ejabberd (2.1.10-2ubuntu1) ...
Generating SSL certificate /etc/ejabberd/ejabberd.pem...

Creating config file /etc/ejabberd/ejabberd.cfg with new version
Starting jabber server: ejabberd............................................................ failed.

Noktalar sadece dışarı bunun kadar sonsuza kere gidip veya I 'Killall' beam, beam.smp, epmd, ve ejabberdsüreçler. Tüm güvenlik duvarı kısıtlamalarını kapattım.

İşte çıktısı var epmd -namesyüklemek asılmış ise:

epmd: up and running on port 4369 with data:
name ejabberdctl at port 42108
name ejabberd at port 39621

Ve başarısız olduktan sonra:

epmd: up and running on port 4369 with data:
name ejabberd at port 39621

Aynı zamanda (sırasında ve sonrasında), her iki çıkış netstat -atnp | grep 5222ve netstat -atnp | grep 5280boştur.


Crash Dosyası

Adresinde bir kilitlenme döküm dosyası oluşturulur /var/log/ejabber/erl_crash.dump. Sloganı (yani çökme nedeni):

Slogan: Kernel pid terminated (application_controller) ({application_start_failure,kernel,{shutdown,{kernel,start,[normal,[]]}}})

Yaşıyor?

Ne zaman ejabberd'i yeniden başlatmaya çalışsam service ejabberd start, aynı şey olur - bunu yapmadan önce tüm süreçleri öldürsem bile.

Ancak, yukarıda listelenen işlemleri tekrar öldürüp çalıştırdığımda su - ejabberd -c /usr/sbin/ejabberd, elde ettiğim çıktı budur:

Erlang R14B04 (erts-5.8.5) [source] [64-bit] [rq:1] [async-threads:0] [kernel-poll:false]

Eshell V5.8.5  (abort with ^G)
(ejabberd@ns1)1> 
=INFO REPORT==== 15-Oct-2012::12:26:13 ===
I(<0.478.0>:ejabberd_listener:166) : Reusing listening port for 5222

=INFO REPORT==== 15-Oct-2012::12:26:13 ===
I(<0.479.0>:ejabberd_listener:166) : Reusing listening port for 5269

=INFO REPORT==== 15-Oct-2012::12:26:13 ===
I(<0.480.0>:ejabberd_listener:166) : Reusing listening port for 5280

=INFO REPORT==== 15-Oct-2012::12:26:13 ===
I(<0.40.0>:ejabberd_app:72) : ejabberd 2.1.10 is started in the node ejabberd@ns1

Ardından, sunucu çalışıyor gibi görünüyor. Eriştiğimde bir giriş istemi alıyorum http://mydomain.com:5280/admin/. Elbette bir hesap oluşturmadıkça giriş yapamıyorum.

Şu anda, çıkışı netstat -atnp | grep 5222ve netstat -atnp | grep 5280aşağıdaki gibi olduğu:

tcp        0      0 0.0.0.0:5222            0.0.0.0:*               LISTEN      19347/beam      
tcp        0      0 0.0.0.0:5280            0.0.0.0:*               LISTEN      19347/beam      

ejabberdctl

Ejabberd çalışıyor gibi görünse bile, ejabberdctl ile herhangi bir şey yapmaya çalışmak başarısız olur. Örneğin: bir kullanıcı kaydetmeye çalışmak:

root@ns1:~# ejabberdctl register myusername mydomain.com mypassword
Failed RPC connection to the node ejabberd@ns1: nodedown

Neyi yanlış yaptığımı bilmiyorum. Bu, aynı yazılımın yüklü olduğu iki farklı sunucuda gerçekleşir (gerçekten hiçbir şey değil). Lütfen yardım et. Teşekkürler.


Sadece bir tahmin, geliştirici web sitesinden bir ikili / paket almayı veya kaynaktan bina yapmayı denediniz mi? Ayrıca, 12.10'luk bir VM'ye (veya gerçek yüklemeye) kurmayı test ettiniz mi?
fouric

Yanıtlar:


7

Daemon ejabber yapılandırma dosyasında verdiğim ana bilgisayar adının ip adresini belirleyemediğinde bir kez bu sorunu yaşadım. Benim çözümüm / etc / hosts dosyasını düzenlemek ve genel ip adresim ve ejabber'in yanıt vermesini istediğim alan adı için bir ana bilgisayar adı girişi olduğundan emin olmaktı.

0.0.0.0 hostname.domain.com hostname
1.1.1.1 ns1.yahoo.com ns1

Resmi anlıyorsun. Umarım yardımcı olur.


Kontrol ettim ve zaten / etc / hosts dosyamda alan adımı ve genel IP adresimi olan bir giriş var. Ancak, bununla doğru yolda olduğunuzu düşünüyorum. Ben sadece "ejabberd @ ns1 düğümü ile RPC bağlantısı başarısız" hata mesajını fark ettim. ns1, makinenin adıdır ancak etki alanı adı değildir. Bu alan adını orada göstermeli mi?
Andrew Ensley

1
evet tabii ki .. En azından hosts dosyasına ns1 eklemelisiniz. like 0.0.0.0 <FQDN> <hostname>
Frank Barcenas

Kutsal ... Ben bile ... / etc / hosts dosyama ns1 ekledi. İyi keder.
Andrew Ensley

1
Hallettiğini duyduğuma sevindim. İyi şanslar ve güç seninle olsun. :-)
Frank Barcenas
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.