2010-08-14 20 views
5

Erlang'da yeniyim ve laptopum üzerinde iki düğüm kurmaya çalışıyorum. TerminaleErlang düğümleri birbirini göremiyor

ben yazın:

[email protected]: ~/erlang_apps> erl -sname foo -setcookie secret 

Ve ikinci terminalde

:

[email protected]: ~/erlang_apps> erl -sname bar -setcookie secret 

ikinci ping ilk terminalini kullanıyorsanız: Ben olsun

([email protected])1> net_adm:ping([email protected]). 

Bir pang cevabı (ilk terimi ping için ikinci terimini kullanırsam aynı cevap).

Neden olursa olsun? Böyle düğümleri başlayan

+1

"erl_epmd: names()' komutunu çalıştırabilir ve çıktıyı gönderebilir misiniz? –

+0

Kayıtlı olmayan hesabınızı kayıtlı hesabınıza ekledim. Artık yorumları yanıtlar altında bırakabilir, sorunuzu düzenleyebilir, vb. Önceki cevabınızı @ mjcopple'in yanıtı altındaki bir yoruma dönüştürdüm. –

cevap

3

deneyin: Daha önce yaptığımız gibi

[email protected]: ~/erlang_apps> erl -sname [email protected] -setcookie secret 
[email protected]: ~/erlang_apps> erl -sname [email protected] -setcookie secret 

Sonra onları ping.

([email protected])1> net_adm:ping([email protected]). 

Bu sizin için işe yaramazsa, düğümü kendiliğinden ping işlemi yapmayı deneyin.

+0

Ayrıca bakınız: http://stackoverflow.com/questions/2136918/getting-two-erl-shells-to-talk – mjcopple

+0

mjcopple: Cevabınız için teşekkürler. Önerdiğin gibi düğümleri başlattım. Yine de birbirlerini göremezler. Her iki düğümü de düğümden başka bir düğümden değil de düğümleyebilirim. OpenSUSE 11.3 üzerinde deniyorum. Ubuntu 10.04 üzerinde çalışırken iyi çalışıyor. Her iki makine de Sanal Kutu altında çalışan sanal makinelerdir. – elimayost

0

Hatalar için syslog dosyasını kontrol ettiniz mi?

Uygulayıcı aktif mi? Belki de kapatıp tekrar deneyiniz. Bir gün apparmor ile çok garip etkilerim vardı ... ama bu sadece bir tahmin.

0

Bu bir DNS sorunu, ana makinenizin adı 'elimayost' DNS'de bulunamadı. 'Localhost'u' foo @ localhost 've' bar @ localhost 'gibi ana makine parçası olarak kullanabilirsiniz, her zaman çalışır.