Edytuj 1/1/2019: Ponieważ ta odpowiedź jest nadal popularna, uwzględnimy zmianę w komentarzu bigjosha . Około kwietnia 2017 r. Raspbian wprowadził zmianę zabezpieczeń, która nie uruchamia już domyślnie serwera SSH (zobacz ten post na blogu ). Aby włączyć serwer SSH podczas rozruchu, utwórz plik o nazwie ssh
na partycji rozruchowej karty SD Pi przed wypróbowaniem tych instrukcji.
Używając Macbooka Pro (wystarczy dowolny nowoczesny laptop / komputer stacjonarny), Pi i czysta, nieobsługiwana karta SD z Raspbianem, oto co zrobiłem:
Przy pierwszym uruchomieniu Pi faktycznie uruchomi serwer SSH dostępny na porcie Ethernet. Ale jest to prawie niedostępne, jeśli Pi nie ma adresu IP. Domyślnie tak nie jest. Uaktywni klienta DHCP, aby skontaktować się z routerem w celu uzyskania adresu IP. Podłączenie Ethernetu z Pi do komputera spowoduje, że Pi poprosi o podanie adresu IP. Domyślnie komputery konsumenckie nie odpowiadają na to zapytanie. Pierwszym krokiem jest aktywacja serwera DHCP na komputerze. Do mojej instalacji użyłem dnsmasq zainstalowanego na maszynie wirtualnej Debiana, którą stworzyłem dla innego projektu. Maszyna wirtualna nie jest wymagana, ponieważ dnsmasq będzie działał dobrze na komputerze Mac (instalowalnym z MacPorts lub źródła) lub na komputerze z systemem Linux. Sądzę, że niektóre serwery DHCP działają w systemie Windows, ale nie jestem pewien. Możesz również podłączyć Pi do routera bezprzewodowego z tym samym efektem,
Po uruchomieniu serwera DHCP podłącz Pi do sieci Ethernet komputera i włącz go. W pliku dziennika / danych wyjściowych konsoli powinieneś zobaczyć coś takiego:
dnsmasq-dhcp[2358]: DHCPREQUEST(eth2) 10.79.26.137 ac:87:xx:xx:xx:xx
dnsmasq-dhcp[2358]: DHCPACK(eth2) 10.79.26.137 ac:87:xx:xx:xx:xx Maxwell
dnsmasq-dhcp[2358]: DHCPDISCOVER(eth2) b8:27:xx:xx:xx:xx
dnsmasq-dhcp[2358]: DHCPOFFER(eth2) 10.79.26.148 b8:27:xx:xx:xx:xx
dnsmasq-dhcp[2358]: DHCPREQUEST(eth2) 10.79.26.148 b8:27:xx:xx:xx:xx
dnsmasq-dhcp[2358]: DHCPACK(eth2) 10.79.26.148 b8:27:xx:xx:xx:xx raspberrypi
Wyjaśnienie i to, czego szukamy tutaj: Pierwsze dwie linie to mój laptop (Maxwell) łączący się z serwerem DHCP. Ponieważ laptop rozpoznaje serwer DHCP, żąda adresu IP, który miał w przeszłości: 10.37.27.137. Można to potwierdzić, patrząc na ustawienia sieciowe twojego komputera (dla mnie pokazało się to w Preferencjach systemowych / Sieć w OS X). Serwer DHCP następnie podaje mojemu komputerowi żądane IP, ponieważ nie jest to konflikt ( DHCPACK
, dhcp-ack [nowledgement]). Następne trzy cztery są związane z Pi: Najpierw wysyła a, DHCPDISCOVER
aby znaleźć dowolne serwery DHCP (jeśli istnieją). Następnie Dnsmasq oferuje nowy adres IP. Pi akceptuje to ( DHCPREQUEST
), a następnie serwer potwierdza adres IP w swojej bazie danych i faktycznie przekazuje adres IP Pi. Wiem, że znalazłem właściwy wpis, ponieważ końcowa nazwa hosta wymieniona wDHCPACK
to „raspberrypi”. Zanotuj adres IP, który serwer DHCP dał Pi (moje to 10.79.26.148).
Jeśli podłączyłeś Pi do routera zamiast do komputera, poszukaj w interfejsie internetowym routera listy klientów DHCP lub listy komputerów podłączonych do sieci. Większość routerów ma to gdzieś, nawet jeśli nie wszyscy nazywają to tak samo. Wyszukaj komputer o nazwie „raspberrypi” i zanotuj jego adres IP.
Po uzyskaniu adresu IP dla Pi można połączyć się z nim za pomocą wybranego klienta SSH. W systemie Mac / Linux / UNIX możesz po prostu otworzyć terminal i wpisać ssh pi@IP_ADDRESS
gdzie IP_ADDRESS
znajduje się adres IP twojego Pi, który znalazłeś wcześniej. Użytkownicy systemu Windows mogą korzystać z Cygwin, MobaXterm lub PuTTY. Jeśli masz poprawne IP, powinieneś zobaczyć coś takiego:
$ ssh pi@raspberrypi
The authenticity of host 'raspberrypi (10.79.26.148)' can't be established.
ECDSA key fingerprint is 6c:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added 'raspberrypi,10.79.26.148' (ECDSA) to the list of known hosts.
pi@raspberrypi's password:
Ponieważ wcześniej nie łączyłem się z Pi, musiałem zaakceptować klucz ECDSA, aby kontynuować. Domyślne hasło, jak podano we wcześniejszych odpowiedziach tutaj i w oficjalnej dokumentacji, to raspberry
. Teraz jesteśmy zalogowani do Raspbian przez SSH i możemy robić różne rzeczy. Powinieneś zobaczyć to teraz na konsoli SSH:
Linux raspberrypi 3.18.5+ #744 PREEMPT Fri Jan 30 18:19:07 GMT 2015 armv6l
The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
NOTICE: the software on this Raspberry Pi has not been fully configured. Please run 'sudo raspi-config'
pi@raspberrypi ~ $
Teraz, zgodnie z poleceniem MOTD, musisz uruchomić, sudo raspi-config
który prowadzi do tego samego okna konfiguracji, które zobaczyłbyś, gdybyś uruchomił go za pomocą HDMI. Między innymi tutaj należy włączyć serwer SSH. Po jego skonfigurowaniu możesz użyć tej samej konfiguracji do ponownego połączenia się z Pi przez ssh po ponownym uruchomieniu.
Źródła: moje własne doświadczenie.