Kein Router + kein Bildschirm + normales Ethernet-Kabel + RPI 2 + Raspbian Lite 2018-11-13 + Ubuntu 18.10-Host
Zuerst müssen wir den SSH-Server auf dem Pi aktivieren, der aus Sicherheitsgründen standardmäßig deaktiviert ist.
Wenn Sie bereits über eine Nicht-SSH-Methode wie screen + keyboard oder UART eine Shell auf dem Pi haben (siehe unten), führen Sie einfach Folgendes aus:
sudo systemctl enable ssh
sudo service sshd start
wie erklärt unter: SSH funktioniert nicht bei Neuinstallation Dies bleibt bei allen Booten erhalten.
Andernfalls legen Sie die SD-Karte in Ihren Host ein und erstellen eine leere Datei mit dem Namen ssh
file in der boot/
Partition.
Auf Ubuntu-Hosts wird es automatisch gemountet und Sie können Folgendes tun:
sudo touch /media/$USER/boot/ssh
was Sie bestätigen können mit:
lsblk
was beinhaltet:
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
Wenn Sie den SSHD-Daemon auf dem Pi nicht aktivieren, schlägt die SSH-Verbindung fehl mit:
ssh: connect to host 10.42.0.160 port 22: Connection refused
wenn wir es später versuchen.
Nach dem Aktivieren des SSH-Servers
Starten Sie als Nächstes den Pi und verbinden Sie ein Ethernet-Kabel von Ihrem Laptop direkt mit dem Pi:
Unter Ubuntu 17.04 benötigen Sie zum Umgehen dieses Fehlers, wie in dieser Antwort erwähnt , zunächst Folgendes:
sudo apt-get install dnsmasq-base
Öffnen Sie auf dem Host den Netzwerkmanager:
nm-connection-editor
Und gehen:
+
sign (Neue Verbindung hinzufügen)
- Ethernet
- Erstellen
- IPv4-Einstellungen
- Methode: Für andere Computer freigegeben
- Setze einen guten Namen dafür
- sparen
Finden Sie die IP des Pi auf dem Host:
cat /var/lib/misc/dnsmasq.leases
gibt so etwas aus wie:
1532204957 b8:27:eb:0c:1f:69 10.42.0.160 raspberrypi 01:b8:27:eb:0c:1f:69
10.42.0.160
ist die IP dann wie gewohnt:
ssh pi@10.42.0.160
Ich habe auch folgendes in meinem .bashrc
:
piip() ( cat /var/lib/misc/dnsmasq.leases | cut -d ' ' -f 3; )
pissh() ( sshpass -p raspberry ssh "pi@$(piip)"; )
Beachten Sie, dass der Pi über die anderen Schnittstellen Ihres Hosts normal auf das Internet zugreifen kann:
ping google.com
Zum Beispiel auf meinem Laptop nimmt der Pi das Ethernet auf, aber der Host ist auch über WiFi mit dem Internet verbunden.
Das Crossover-Kabel ist nicht erforderlich, wenn die Host-Netzwerkkarte Auto MDI-X unterstützt . Dies ist der Fall für die jüngste Hardware, zum Beispiel einschließlich der 2012 Lenovo T430 ich getestet, die hat eine „Intel® 82579LM Gigabit Network Connection“ , die Unterstützung für Auto - MDI-X dokumentiert .
Jetzt können Sie auch:
- Greifen Sie vom PI aus über die Wifi-Verbindung Ihres Ubuntu auf das Internet zu
- Öffnen Sie einen VNC, um auch das Display zu entfernen: Wie richte ich Raspberry Pi ohne Monitor ein?
Serieller UART-USB-Konverter
Dies ist eine Alternative zu SSH, wenn Sie nur eine Shell auf dem Pi erhalten möchten: https://en.wikipedia.org/wiki/Serial_port
Hierbei wird weder SSH noch das Netzwerk selbst verwendet, sondern die ältere, einfachere, direktere, zuverlässigere, serielle Schnittstelle mit geringerer Bandbreite und geringerem Abstand. Der Pi hat mit dieser Methode keinen Zugang zum Internet.
Desktop-Computer haben immer noch einen seriellen Anschluss, den Sie direkt mit dem Pi verbinden können. Diese sind jedoch in den meisten Laptops verborgen. Daher müssen wir einen billigen USB-Adapter kaufen. Hier habe ich verwendet: https://www.amazon.co.uk/gp/product/B072K3Z3TL Siehe auch: https://unix.stackexchange.com/questions/307390/what-is-the-difference-between- ttys0-ttyusb0-and-ttyama0-in-linux / 367882 # 367882
Stecken Sie zuerst die SD-Karte in den Host und bearbeiten Sie die config.txt
in der ersten Partition vorhandene Datei, um Folgendes hinzuzufügen:
enable_uart=1
wie erklärt unter: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=141195
Diese erste Partition enthält den Bootloader, seine Konfigurationsdateien und den (Linux- / Ihren) Kernel config.txt
. Die zweite Partition enthält das eigentliche Linux-Root-Dateisystem.
Verbinden Sie nun Ihren Computer mit dem Pi wie folgt:
Sie müssen nur 3 Kabel anschließen:
- Masse zu Masse
- Tx on Pi to Rx am USB to Serial Port
- Rx on Pi to Tx am USB to Serial Port
Dies ist auch dokumentiert unter: https://www.raspberrypi.org/documentation/usage/gpio/README.md
Achten Sie darauf, den Ground nicht mit 5V zu verbinden, da ich damit bereits 2 UART auf USB-Chips gebrannt habe!
Sie müssen die 5V überhaupt nicht an die 5V anschließen. Ich denke, Sie können Ihren Pi auf diese Weise mit Strom versorgen, aber ich habe gelesen, dass dies eine schlechte Idee ist. Verwenden Sie einfach die übliche USB-Stromquelle.
Schließen Sie zum Schluss die USB-Seite des Anschlusses an Ihren Host-Computer an und erhalten Sie eine Shell mit:
sudo apt install screen
sudo usermod -a -G dialout $USER
screen /dev/ttyUSB0 115200
Beenden Sie mit Ctrl-A \
.
Hier ist ein Video von Adafruit, das es zeigt: https://www.youtube.com/watch?v=zUBPeoLW16Q