Sin enrutador + sin pantalla + cable Ethernet normal + RPI 2 + Raspbian Lite 2018-11-13 + Ubuntu 18.10
Primero debemos habilitar el servidor SSH en la Pi, que está deshabilitado por defecto por seguridad.
Si ya tiene un shell en el Pi a través de un método que no es SSH, como pantalla + teclado o UART (ver más abajo), simplemente ejecute:
sudo systemctl enable ssh
sudo service sshd start
como se explica en: /raspberrypi/58478/ssh-not-working-with-fresh-install Esto persiste en las botas.
De lo contrario, inserte la tarjeta SD en su host y cree un archivo mágico vacío llamado ssh
archivo en la boot/
partición.
En los hosts de Ubuntu, se monta automáticamente y puede hacer simplemente:
sudo touch /media/$USER/boot/ssh
que puedes confirmar con:
lsblk
que contiene:
mmcblk0 179:0 0 14.4G 0 disk
├─mmcblk0p1 179:1 0 43.9M 0 part /media/ciro/boot
└─mmcblk0p2 179:2 0 14.4G 0 part /media/ciro/rootfs
Si no habilita el demonio SSHD en la Pi, la conexión SSH fallará con:
ssh: connect to host 10.42.0.160 port 22: Connection refused
cuando lo probamos más tarde.
Después de habilitar el servidor SSH
A continuación, inicie el Pi y conecte un cable Ethernet desde su computadora portátil directamente al Pi:
En Ubuntu 17.04 para solucionar este error como se menciona en esta respuesta , primero necesita:
sudo apt-get install dnsmasq-base
En el host, abra el administrador de red:
nm-connection-editor
Y ve:
+
firmar (Agregar una nueva conexión)
- Ethernet
- Crear
- Configuración de IPv4
- Método: compartido con otras computadoras
- Ponle un buen nombre
- Salvar
Encuentre la IP del Pi en el host:
cat /var/lib/misc/dnsmasq.leases
produce algo como:
1532204957 b8:27:eb:0c:1f:69 10.42.0.160 raspberrypi 01:b8:27:eb:0c:1f:69
10.42.0.160
es la IP, entonces como de costumbre:
ssh pi@10.42.0.160
También tengo lo siguiente en mi .bashrc
:
piip() ( cat /var/lib/misc/dnsmasq.leases | cut -d ' ' -f 3; )
pissh() ( sshpass -p raspberry ssh "pi@$(piip)"; )
Desde el interior de la Pi, observe que puede acceder a Internet normalmente a través de las otras interfaces de su host:
ping google.com
Por ejemplo, en mi computadora portátil, el Pi utiliza Ethernet, pero el host también está conectado a Internet a través de WiFi.
El cable cruzado no es necesario si la tarjeta de red del host admite Auto MDI-X . Este es el caso del hardware más reciente, incluido, por ejemplo, el Lenovo T430 de 2012 con el que probé, que tiene una "Conexión de red Intel® 82579LM Gigabit" que documenta la compatibilidad con Auto MDI-X .
Ahora también puedes:
Convertidor USB serie UART
Esta es una alternativa a SSH si solo desea obtener un shell en el Pi: https://en.wikipedia.org/wiki/Serial_port
Esto no usa SSH o redes en sí, sino la interfaz serial más antigua, más simple, más directa, más confiable, de menor ancho de banda y menor distancia. El Pi no tendrá acceso a Internet con este método.
Las computadoras de escritorio todavía tienen un puerto serie que puede conectar directamente cable a cable con el Pi, pero estos están ocultos en la mayoría de las computadoras portátiles, por lo que debemos comprar un adaptador USB barato. Aquí he usado: https://www.amazon.co.uk/gp/product/B072K3Z3TL Vea también: /unix/307390/what-is-the-difference-between- ttys0-ttyusb0-y-ttyama0-en-linux / 367882 # 367882
Primero conecte la tarjeta SD en el host y edite el config.txt
archivo presente en la primera partición para agregar:
enable_uart=1
como se explica en: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=141195
Esta primera partición contiene el gestor de arranque, sus archivos de configuración y el kernel (Linux / your), config.txt
siendo uno de ellos. La segunda partición contiene el sistema de archivos raíz real de Linux.
Ahora conecte su computadora al Pi como:
Solo necesitas conectar 3 cables:
- Tierra a tierra
- Tx en Pi a Rx en el puerto USB a serie
- Rx en Pi a Tx en tye USB a puerto serie
Esto también está documentado en: https://www.raspberrypi.org/documentation/usage/gpio/README.md
Tenga cuidado de no conectar la tierra a los 5V, ¡ya quemé 2 UART a chips USB y un RPI UART al hacer eso!
No es necesario conectar el 5V al 5V en absoluto. Creo que puedes alimentar tu Pi así, pero he leído que es una mala idea, solo usa la fuente de alimentación USB habitual.
Finalmente, conecte el lado USB del conector a su computadora host y obtenga una carcasa con:
sudo apt install screen
sudo usermod -a -G dialout $USER
screen /dev/ttyUSB0 115200
Salir con Ctrl-A \
.
Aquí hay un video de Adafruit que lo muestra: https://www.youtube.com/watch?v=zUBPeoLW16Q
Ver también
Pregunta similar en RPI SE: /raspberrypi/3867/ssh-to-rpi-without-a-network-connection