2012-05-10 28 views
5

ho bisogno di sapere come connettersi a un BeagleBone (o BeagleBoard) con SSH quando inserisco in una nuova rete con un cavo Ethernet in questo modo:Impossibile connettersi a beaglebone.local

$ ssh [email protected] 

Finora mi 'ho solo stato in grado di accedere in questo modo, se conosco l'indirizzo IP:

$ ssh [email protected]<ip_address> 

Ma non sempre conosce l'indirizzo IP della scheda sui nuovi canali di così sto sperando di accesso con un nome come: beaglebone.local.

Proprio ora quando provo a fare questo ottengo questo errore:

"ssh: Could not resolve hostname beaglebone.local: nodename nor servname provided, or not known" 

ho controllato il nome host e gli host file, e ha aggiunto "127.0.0.1 BeagleBone" per i padroni di casa sul BeagleBone, ma non è sicuro cos'altro posso fare?

# cat /etc/hostname 
    beaglebone 

    # cat /etc/hosts 
    127.0.0.1  localhost.localdomain    localhost 
    127.0.0.1  beaglebone 

risposta

5

Ho avuto un problema simile eseguendo il mio beaglebone su Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.05-beaglebone-2012.04.22.img.xz. In questa distribuzione, "beaglebone.local" dovrebbe apparire sulla rete dopo l'avvio del sistema.

Circa il 50% del tempo dopo il riavvio, "beaglebone.local" non appare sulla rete (anche se l'osso sarebbe disponibile per l'indirizzo IP). Quando ciò accadeva, "systemctl status avahi-daemon.service" mostrava che il demone avahi non funzionava con "exit code 255". È interessante notare che un successivo "systemctl start avaihi-daemon.service" avrà sempre successo e "beaglebone.local" apparirebbe sulla rete.

Anche "journalctl | grep avahi" ha restituito un singolo messaggio indicando qualcosa come "Daemon già runnin gon PID NNN".

Quindi, ho risolto il problema aggiungendo la riga "ExecStartPre =/bin/rm -f/var/run/avahi-demone/pid" alla sezione [Servizio] di/lib/systemd/system/avahi-daemon.service. Con questa aggiunta, "beaglebone.local" ora appare sulla rete il 100% dei riavvii.

Dico "fisso" (cioè tra virgolette) perché non sono stato in grado di rintracciare la causa principale che sta lasciando il file di pid avahi e quindi non ho una vera correzione.

- Frank

0

Odio rispondere alle mie stesse domande. Il seguente trucco funzionerà finché non emergerà un modo migliore:

Questo script di shell (dove xxx.xxx.xxx sono i primi tre numeri nell'IP del computer) troverà il beaglebone o beagleboard (che è collegato a Ethernet su un nuova rete con DHCP) eseguendo il looping di tutti gli indirizzi IP sulla subnet e tentando di accedere a ciascuno come root. Se trova uno allora prova la tua password. Se non funziona, premi Invio fino a quando il ciclo ricomincia. Se non trova la scheda allora qualcos'altro è probabilmente sbagliato.

for ip in $(seq 1 254); do ssh [email protected]$ip -o ConnectTimeout=5; [ $? -eq 0 ] && echo "xxx.xxx.xxx.$ip UP" || : ; done 

UPDATE 1

Oggi ho inserito-nel BeagleBone e vide Bonjour riconoscere che ha aderito alla rete. Così ho provato e ha funzionato. Non ho idea del perché abbia deciso tutto all'improvviso, ma è successo. Strano ma vero.

+0

Un modo più semplice, se si conosce l'indirizzo MAC della porta ethernet vostra di beagle pensione: 'nmap -sP ; arp -an | grep ' –

+1

È un'ottima idea. Non ha funzionato per me però. In alternativa, pingare l'indirizzo di broadcast e quindi eseguire arp ti darà un elenco, quindi potrai trovare il tuo MAC. # ping 192.168.1.255 # arp -an – ow3n

+1

È inoltre possibile utilizzare nmap -F xxx.xxx.xxx.1/24 e cercare le porte aperte. Di solito could9 alla porta 3000 è una buona indicazione. Capisco che questa non è una soluzione da inoltrare in ogni momento. – Seeker

0

Affinché 'beaglebone.local' funzioni, la macchina host deve riconoscere Zeroconf. BeagleBone utilizza Avahi per comunicare ad altri sistemi sulla LAN che è lì e serve applicazioni e che dovrebbe essere chiamato "beaglebone". Se ce ne sono più di uno, il secondo è generalmente chiamato "beaglebone-2.local".

0

ho avuto questo problema molto spesso con Mac OS X 10.7. Ma a differenza di Frank Halasz "systemctl status avahi-daemon.service" non ha mostrato errori. E infatti il ​​problema era sul lato Mac. Il riavvio di Bonjour con i seguenti comandi ha risolto il problema.

$ sudo launchctl unload /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist 
$ sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.mDNSResponder.plist 
Problemi correlati