Pertanyaan serupa telah diajukan sebelumnya: Bagaimana cara mengatur Raspberry Pi tanpa monitor?
Namun, mengingat bahwa jawaban yang diterima tampaknya tidak menawarkan solusi yang tepat, dan mengingat bahwa ada tingkat ambiguitas dalam apa yang ditanyakan, saya berasumsi bahwa pertanyaan awal salah dikonstruksi, dan bahwa pertanyaan saya bukan t duplikat yang tepat.
Saya melakukan pengaturan awal dan pertama kali Pi. Saya tidak memiliki monitor atau keyboard, melainkan ingin menggunakan laptop yang terhubung untuk melakukan pekerjaan itu. Saya tidak ingin membeli monitor atau keyboard dan meminta mereka duduk-duduk hanya untuk saat-saat ketika mereka dibutuhkan oleh Pi. Saya bisa meminjam mereka, tetapi saya berencana untuk membeli lebih banyak Pi di masa depan, dan tidak ingin harus meminjamnya setiap waktu.
Saya telah menetapkan alamat IP statis pada Pi dengan mengedit cmdline.txt
file. (Pi menjalankan versi terbaru Raspbian.)
ip=10.0.0.20
Saya telah memberikan eth
antarmuka pada laptop saya alamat IP statis yang sesuai. (Laptop menjalankan Ubuntu.)
ip ad add 10.0.0.10/24 dev eth0
Saya telah menghubungkan keduanya bersama-sama dengan kabel ethernet dan berhasil melakukan ping Pi dari laptop saya.
Yang tidak bisa saya lakukan adalah ssh
ke Pi. Saya mendapat respons Sambungan ditolak :
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
Satu hal yang menyiratkan hal ini adalah bahwa sshd
itu belum berjalan pada Pi.
The docs resmi negara yang sshd
berjalan secara default, tapi apakah mungkin bahwa selama boot awal bahwa hal-hal lain (misalnya petunjuknya menunggu input pengguna) mungkin memblokir boot pada tingkat tertentu, berarti kita tidak mencapai titik di mana sshd
adalah mulai ?
Kemana saya harus pergi dari sini? (Bukan "ke toko untuk membeli monitor" ...)
Apakah yang saya coba sebenarnya mungkin?
Edit:
Saya sekarang telah mencoba metode yang disebutkan dalam jawaban untuk posting berikut, tetapi tidak berhasil: Mengaktifkan SSH pada RPi tanpa layar - penekanan tombol untuk raspi-config?
Secara khusus, memastikan bahwa skrip init SSH dijalankan pada runlevel 2 masih tidak memungkinkan saya untuk terhubung.
ssh [email protected]
Anda. Tampaknya Anda tidak berpikir untuk memberi tahu kami bagaimana sebenarnya Anda berusahassh
itu penting.ping [email protected]
. Tetapi ini tidak berhasil karenaraspberrypi.local
merupakan host yang tidak dikenal. Tidakkah perlu entri/etc/hosts
pada laptop saya untuk dapat menyelesaikannya?sudo nmap 10.0.0.20
di laptop. Jika ini menunjukkan port 22 terbuka maka SSH sedang berjalan, jika tidak port tidak akan berjalan. Itu tidak akan memperbaikinya, tetapi itu akan memberi tahu Anda apa yang terjadi.Jawaban:
Pada gambar terbaru yang saya miliki, 2015-11-21-raspbian-jessie- lite .img , ini tidak benar. Jessie Debian / Raspbian saat ini menggunakan systemd untuk init, tetapi ada semacam mekanisme hybrid-kompatibel-mundur SysV built-in, dan saya perhatikan pada sistem berjalan saya buat dari gambar ini (menggunakan layar dan keyboard untuk pengaturan awal), di mana sshd sekarang diaktifkan, ada pemicu di kedua yang systemd dan SysV tua
rc.d
direktori. Agaknya ini adalah cara kerja mekanisme back-kompatibel (saya mengaktifkan ssh via systemd). Bagaimanapun, hanya ada satusshd
contoh dengan PPID 1 berjalan.Untuk sistem kerja, ada entri masuk
/etc/rc[2,3,4,5].d
untukS02ssh
(nomor prioritas yang tepat, 02, diatur ketika layanan diaktifkan dan dapat bervariasi). Ada juga a/etc/systemd/system/multi-user.target.wants/ssh.service
.Namun pada gambar dasar ...
... Tidak ada entri
/etc/systemd
dan adaK01ssh
untuk runlevel 2, 3, 4, 5. Itu akan cukup menjamin tidak ada sshd yang berjalan.Saran saya adalah pertama mencoba mengatur hanya entri SysV. Dari
etc
direktori partisi kedua pada kartu SD:Periksa untuk memastikan tautan ada dan menunjuk ke tempat yang tepat
stat
. Saya percaya ini sudah cukup dan Anda sekarang dapat mencoba mem-boot sistem. Jika demikian, setelah Anda menghapus tautan-tautan itu dan menjalankannyasystemctl enable ssh
, maka periksa tautan-tautan tersebut telah dibuat kembali (ingat, prioritasnya mungkin berbeda).Jika Anda masih mendapatkan "Sambungan ditolak", buat tautan dari
[SD_rootfs]/lib/systemd/system/ssh.service
ke[SD_rootfs]/etc/systemd/default.target.wants/ssh.service
dan coba lagi.sumber
K01ssh
dirc2.d
direktori dan menamainya, tetapi tidak melihat yang lain dirc
direktori lain . Menghapus yang menggunakan skrip Anda tidak membantu, sayangnya. (Saya memeriksa mereka dibuat, seperti yang Anda sarankan.) Untuk metode kedua, saya tidak memilikissh.service
entri dietc/systemd/system/multi-user.target.wants/
direktori, danlib/systemd/system/
direktori tidak dapat diakses. Sistem bahkan tidak bisa mengatakan itu direktori (dan menjalankanfile
memberi saya:ERROR: cannot open
lib / systemd / system '(Kesalahan input / output) `).systemd
file yang Anda sebutkan ada, jadi cobalah saran kedua Anda, yang bekerja :) Tidak yakin mengapa hal-hal berbeda di antara gambar, tetapi bisa saja peretasan saya yang mempengaruhi sesuatu di gambar pertama. (Saya tidak tahu apa ...) Terima kasih banyak atas bantuan Anda.lib/systemd/system/
direktori itu tidak dapat diakses. Hal yang sama berlaku untuk gambar Wheezy. Hanya gambar Lite yang memungkinkan saya untuk mengakses direktori dan karenanya menyelesaikan instruksi.Bagi Anda yang mengalami ini dengan gambar Raspbian yang lebih baru: ada
sshwitch
target systemd, yang memeriksa/boot/ssh
, dan jika file itu ada, itu meregenerasi kunci host SSH dan memungkinkan server SSH.Jadi, untuk mengaktifkan SSH, cukup tambahkan file yang disebut
ssh
di root partisi boot (yang FAT, denganbootcode.bin
file), dan boot Pi Anda!Sunting: ini berfungsi pada gambar 2017-01-11-raspbian-jessie-lite saya.
sumber
Maaf tentang ini menjadi jawaban tetapi tidak memuji hanya komentar.
Apakah layanan ssh menyala? Jika memungkinkan, dan ini adalah salah satu gambar instalasi raspberry, coba raspi-config hanya untuk mengaktifkan ssh.
Cara lain, periksa apakah ssh dimuat dan diaktifkan
Mungkin port ssh 22 menolak koneksi karena layanan tidak siap
sumber
systemctl --list-units | grep ssh
(atau lebih baik, tetapi lebih informatifsystemctl status ssh
). Tapi Anda pada dasarnya benar, "Sambungan ditolak" berarti tidak ada yang mendengarkan di port. Jika ssh sedang berjalan, maka IP salah.https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/ Tautan ini untuk sistem operasi versi Rasbian PIXEL.
sumber
/boot/ssh
perbaikannya.Versi Jessie lite tanggal 26 Feb 2016 telah diaktifkan secara default.
sumber