Une question similaire a déjà été posée: comment configurer Raspberry Pi sans moniteur?
Cependant, étant donné que la réponse acceptée ne semble pas offrir une solution appropriée, et étant donné qu'il y a un niveau d'ambiguïté dans ce qui a été demandé, je suppose que la question d'origine a été mal construite et que ma question n'est pas '' t un double exact.
J'effectue la configuration initiale et initiale d'un Pi. Je n'ai ni moniteur ni clavier, mais je souhaite utiliser un ordinateur portable connecté pour faire le travail. Je ne veux pas acheter un moniteur ou un clavier et les laisser assis juste pour les occasions où le Pi en a besoin. Je pourrais les emprunter, mais je prévois d'acheter plus de Pi à l'avenir, et je ne veux pas avoir à les emprunter à chaque fois.
J'ai défini une adresse IP statique sur le Pi en modifiant le cmdline.txt
fichier. (Le Pi exécute la dernière version de Raspbian.)
ip=10.0.0.20
J'ai donné à l' eth
interface de mon ordinateur portable une adresse IP statique correspondante. (L'ordinateur portable exécute Ubuntu.)
ip ad add 10.0.0.10/24 dev eth0
J'ai connecté les deux ensemble avec un câble Ethernet et je peux réussir à cingler le Pi depuis mon ordinateur portable.
Ce que je ne peux pas faire, c'est ssh
pour le Pi. Je reçois une réponse Connexion refusée :
richard@richard-ThinkPad-X220:~$ ssh -vvv [email protected]
OpenSSH_6.6.1, OpenSSL 1.0.1f 6 Jan 2014
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: ssh_connect: needpriv 0
debug1: Connecting to 10.0.0.20 [10.0.0.20] port 22.
debug1: connect to address 10.0.0.20 port 22: Connection refused
ssh: connect to host 10.0.0.20 port 22: Connection refused
Une chose que cela impliquerait est qu'il sshd
ne fonctionne pas encore sur le Pi.
Les documents officiels indiquent que sshd
s'exécute par défaut, mais est-il possible que lors d'un démarrage initial, d'autres choses (par exemple, des invites en attente de saisie par l'utilisateur) puissent bloquer le démarrage à un certain niveau, ce qui signifie que nous n'atteignons pas le point de sshd
démarrage ?
Où dois-je aller d'ici? (Pas "dans les magasins pour acheter un moniteur" ...)
Ce que j'essaie est-il réellement possible?
Éditer:
J'ai maintenant essayé les méthodes mentionnées dans les réponses au message suivant, mais sans succès: Activer SSH sur RPi sans écran - touches pour raspi-config?
Plus précisément, m'assurer que le script d'initialisation SSH est exécuté au niveau d'exécution 2 ne m'a toujours pas permis de me connecter.
ssh [email protected]
Vous ne semblez pas penser que nous dire comment vous essayez réellementssh
est important.ping [email protected]
. Mais cela ne fonctionne pas carraspberrypi.local
est un hôte inconnu. N'aurait-il pas besoin d'une entrée/etc/hosts
sur mon ordinateur portable pour pouvoir le résoudre?sudo nmap 10.0.0.20
sur l'ordinateur portable. S'il indique que le port 22 est ouvert, SSH est en cours d'exécution, sinon il ne fonctionne pas. Cela ne le réparera pas, mais cela vous dira ce qui se passe.Réponses:
Sur la dernière image que j'ai, 2015-11-21-raspbian-jessie- lite .img, ce n'est pas vrai. Debian / Raspbian jessie utilise actuellement systemd pour init, mais il y a une sorte de mécanisme hybride compatible avec SysV en arrière intégré, et je remarque sur le système en cours d'exécution que j'ai créé à partir de cette image (en utilisant un écran et un clavier pour la configuration initiale), où sshd est maintenant activé, il y a un déclencheur dans les
rc.d
répertoires systemd et SysV . Vraisemblablement, c'est ainsi que fonctionne le mécanisme de compatibilité descendante (j'ai activé ssh via systemd). Dans tous les cas, il n'y a qu'une seulesshd
instance avec un PPID de 1 en cours d'exécution.Pour le système de travail, il y a une entrée
/etc/rc[2,3,4,5].d
pourS02ssh
(le numéro de priorité exact, 02, est défini lorsque le service est activé et peut varier). Il y a aussi un/etc/systemd/system/multi-user.target.wants/ssh.service
.Dans l'image de base, cependant ...
... Il n'y a pas d'entrée
/etc/systemd
et il y en aK01ssh
pour les niveaux d'exécution 2, 3, 4, 5. Cela garantira à peu près qu'aucun sshd n'est en cours d'exécution.Ma suggestion est d'essayer d'abord de définir uniquement l'entrée SysV. Depuis le
etc
répertoire de la deuxième partition sur la carte SD:Vérifiez que les liens sont là et qu'ils pointent vers le bon endroit avec
stat
. Je pense que cela devrait être suffisant et vous pouvez maintenant essayer de démarrer le système. Si c'est le cas, après avoir retiré ces liens et exécutésystemctl enable ssh
, vérifiez que les liens ont été recréés (rappelez-vous, la priorité peut être différente).Si vous obtenez toujours "Connexion refusée", créez un lien de
[SD_rootfs]/lib/systemd/system/ssh.service
à[SD_rootfs]/etc/systemd/default.target.wants/ssh.service
et réessayez.la source
K01ssh
dans lerc2.d
répertoire et l' avais renommé, mais je n'avais pas repéré les autres dans les autresrc
répertoires. Supprimer ceux qui utilisent votre script n'a malheureusement pas aidé. (J'ai vérifié qu'ils ont été créés, comme vous l'avez suggéré.) Pour la deuxième méthode, je n'ai pas d'ssh.service
entrée dans leetc/systemd/system/multi-user.target.wants/
répertoire et lelib/systemd/system/
répertoire n'est pas accessible. Le système ne peut même pas dire que c'est un répertoire (et l'exécutionfile
me donne:ERROR: cannot open
lib / systemd / system '(erreur d'entrée / sortie) `).systemd
fichiers que vous avez mentionnés étaient présents, alors j'ai tenté votre deuxième suggestion, qui a fonctionné :) Je ne sais pas pourquoi les choses étaient différentes entre les images, mais cela aurait pu être mon piratage qui a affecté quelque chose dans la première image. (Je ne sais pas quoi ...) Merci beaucoup pour votre aide.lib/systemd/system/
répertoire était inaccessible. Il en va de même pour une image Wheezy. Seule l'image Lite m'a permis d'accéder au répertoire et donc de suivre les instructions.Pour ceux d'entre vous qui rencontrent cela avec les images Raspbian les plus récentes: il existe une
sshwitch
cible systemd qui vérifie/boot/ssh
et si ce fichier est présent, il régénère les clés d'hôte SSH et active le serveur SSH.Donc, pour activer SSH, ajoutez simplement un fichier appelé
ssh
à la racine de la partition de démarrage (celle de FAT, avec lebootcode.bin
fichier), et démarrez votre Pi!Edit: cela a fonctionné sur mon image 2017-01-11-raspbian-jessie-lite.
la source
Désolé d'être une réponse, mais pas de crédit pour simplement commenter.
Le service ssh est-il en place? Si c'est possible, et que c'est l'une des images d'installation de framboise, essayez raspi-config juste pour activer ssh.
Une autre façon, vérifiez si ssh est chargé et activé
Peut-être que le port ssh 22 rejette la connexion car le service n'est pas prêt
la source
systemctl --list-units | grep ssh
(ou mieux encore plus informatifsystemctl status ssh
). Mais vous avez essentiellement raison, "Connexion refusée" signifie que rien n'écoute sur le port. Si ssh est en cours d'exécution, l'adresse IP est incorrecte.https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/ Ce lien pour le système d'exploitation de la version Rasbian PIXEL.
la source
/boot/ssh
correctif.La version de Jessie lite datée du 26 février 2016 a ssh activé par défaut.
la source