2012-05-10 28 views
5

Necesito saber cómo conectarse a un BEAGLEBONE (o BeagleBoard) con SSH cuando lo conecto a una nueva red con un cable Ethernet como esto:No se puede conectar a beaglebone.local

$ ssh [email protected] 

Hasta ahora sólo he podido acceder a él de esta manera, si sé la dirección IP:

$ ssh [email protected]<ip_address> 

Pero no siempre conoce la dirección IP de la pizarra en nuevas redes, así que espero que el acceso con un nombre como: beaglebone.local.

este momento cuando trato de hacer esto me sale este error:

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

he comprobado el nombre de host y anfitriones archivos, y añadió "BEAGLEBONE 127.0.0.1" para los hosts de la BEAGLEBONE, pero no está seguro ¿Que mas puedo hacer?

# cat /etc/hostname 
    beaglebone 

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

Respuesta

5

Tuve un problema similar al ejecutar mi beaglebone en Angstrom-Cloud9-IDE-GNOME-eglibc-ipk-v2012.05-beaglebone-2012.04.22.img.xz. En esta distribución, "beaglebone.local" debería aparecer en la red después de que se inicie el sistema.

Alrededor del 50% de las veces después del reinicio, "beaglebone.local" no aparecería en la red (aunque el hueso estaría disponible por dirección IP). Cuando esto sucedió, "systemctl status avahi-daemon.service" mostró que el avahi-daemon falló con el "código de salida 255". Curiosamente, un "servicio de arranque de sistema sis" posterior siempre sería exitoso y "beaglebone.local" aparecería en la red.

También "journalctl | grep avahi" devolvió un mensaje único que indica algo así como "Daemon ya está ejecutando gon PID NNN".

Así que "solucioné" el problema añadiendo la línea "ExecStartPre =/bin/rm -f/var/run/avahi-daemon/pid" a la sección [Service] de/lib/systemd/system/avahi-daemon.service. Con esta adición, "beaglebone.local" ahora aparece en la red el 100% de los reinicios.

Digo "fijo" (es decir, entre comillas) porque no he podido rastrear la causa raíz que está dejando alrededor del archivo (s) avahi pid extraviados y, por lo tanto, no tengo una solución verdadera.

- Frank

0

Odio responder a mis propias preguntas. El siguiente truco funcionará hasta que surja una mejor manera:

Este guión de shell (donde xxx.xxx.xxx son los primeros tres números en la IP de su computadora) encontrará su beaglebone o beagleboard (que está enchufado a ethernet en un nueva red con DHCP) al recorrer toda la dirección IP de la subred e intentar iniciar sesión como root. Si encuentra uno, intente con su contraseña. Si no funciona, simplemente presione Intro hasta que el ciclo comience nuevamente. Si no encuentra el tablero, probablemente algo más esté mal.

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

ACTUALIZACIÓN 1

Hoy he enchufado en el BEAGLEBONE y vio Bonjour reconocer que se unió a la red. Así que lo intenté y funcionó. No tenía idea de por qué decidió de repente, pero lo hizo. Extraño pero cierto.

+0

Una forma más fácil, si se conoce el mac-dirección de su puerto Ethernet del Beagle a bordo: 'nmap -sP ; arp -an | grep ' –

+1

Esa es una gran idea. Aunque no funcionó para mí. Alternativamente, hacer ping a la dirección de difusión y luego ejecutar arp le dará una lista, luego puede encontrar su MAC. # ping 192.168.1.255 # arp -an – ow3n

+1

También puede usar nmap -F xxx.xxx.xxx.1/24 y buscar puertos que estén abiertos. Usualmente could9 en el puerto 3000 es una buena indicación. Entiendo que esta no es una solución para transmitir en todo momento. – Seeker

0

Para que funcione 'beaglebone.local', su máquina host debe reconocer Zeroconf. El BeagleBone usa Avahi para indicar a otros sistemas en la LAN que está allí y que sirve aplicaciones y que se debe llamar 'beaglebone'. Si hay más de uno, el segundo se llama generalmente 'beaglebone-2.local'.

0

que tenía este problema muy a menudo con Mac OS X 10.7. Pero a diferencia de Frank Halasz, "systemctl status avahi-daemon.service" no mostró fallas. Y, de hecho, el problema estaba en el lado de Mac. Reiniciar Bonjour con los siguientes comandos solucionó el problema.

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