स्क्रीन के बिना आरपीआई पर SSH को सक्षम करना - raspi-config के लिए कीस्ट्रोक्स?


52

मेरे पास मेरे रास्पबेरी पाई के लिए स्क्रीन नहीं है। मैं इसमें एसएसएच करना चाहता हूं, लेकिन मुझे कनेक्शन से इनकार कर दिया गया है, इसलिए मुझे लगता है कि एसएसएच सक्षम नहीं है।

जैसा कि अन्य प्रश्नों में सलाह दी गई है मैंने sd कार्ड पर boot_enable_ssh.rc स्क्रिप्ट को सक्षम करने पर ध्यान दिया है। हालाँकि, मेरे ओएस में बूट डायरेक्टरी नहीं है (या यह मेरे iMac में कार्ड रीडर के माध्यम से दिखाई नहीं देता है) - 2012-12-16-wheezy-raspbian.img।

मैंने एक usb कीबोर्ड के माध्यम से निम्नलिखित कमांड जारी करने का भी प्रयास किया है:

pi [enter]
raspberry [enter]
sudo /etc/init.d/ssh start [enter]
raspberry [enter]

लेकिन यह काम नहीं किया है। अब कुछ डॉक्स में मैं देख रहा हूं कि नव-बूटेड आरपीआई पर आने के लिए रस्फी-विन्यास पहली चीज है। किसी ने मुझे raspi-config कृपया के माध्यम से SSH को सक्षम करने के लिए कीस्ट्रोक्स बता सकता है? या अगर मैं गलत रास्ते पर हूं, तो कृपया सलाह दें। धन्यवाद।

EDIT: इस सलाह का पालन करने की कोशिश में https://raspberrypi.stackexchange.com/a/1706/4373 मैं अपने iMac पर SD कार्ड बढ़ते समय एक निर्देशिका निर्देशिका नहीं देख रहा हूँ। यदि मैं टर्मिनल से ls चलाता हूं तो मुझे केवल निम्नलिखित मिलते हैं:

bootcode.bin            fixup.dat               kernel.img            start.elf
cmdline.txt             fixup_cd.dat            kernel_cutdown.img      start_cd.elf
config.txt              issue.txt               kernel_emergency.img

क्या मैंने एसडी कार्ड की इमेजिंग खराब कर दी है?


क्या स्क्रीन में प्लगिंग अस्थायी रूप से एक विकल्प नहीं है?
एडम हल्ड्सवर्थ

हाय एडम, मैं उस के लिए एक केबल नहीं है।
लेमी

मेरे वर्तमान स्थान पर मेरी आरपीआई नहीं है, लेकिन जैसा कि मुझे याद है, पहली बार जब आप रास्पियन व्हीजे बूट करते हैं तो यह एक सेटअप संवाद ( sudo raspi-config) दिखाता है जहां आप एसएसएच को सक्षम कर सकते हैं। यह देखने के लिए कि शायद आप इस वीडियो में दिखाए गए चरणों का पालन कर सकते हैं: youtube.com/watch?v=nXvODj6YpAE ? मुझे पता है कि यह थोड़ा आदिम दृष्टिकोण है, लेकिन मुझे लगा कि मैं इसका उल्लेख करूंगा :)
लेस्स क्रिस्चेन

जवाबों:


22

ssh स्थापित है, लेकिन रनलेवल 2 पर डिफ़ॉल्ट रूप से शुरू नहीं हुआ है, रास्पियन के लिए डिफ़ॉल्ट।
नाम बदलें /etc/rc2.d/ssh/K??sshकरने के लिए/etc/rc2.d/ssh/S02ssh

EDIT
sd कार्ड 2 विभाजन के साथ आता है। द 1 वफत है; दूसरा एक्स 3 है। Macosx से इसे एक्सेस करने के लिए आपको कुछ उपयोगिता की आवश्यकता है।

Ext2 macosx के लिए 1 Google परिणाम:
http://blog.applegrew.com/2011/12/access-ext3ext2-file-system-on-mac-osx-lion-10-7/

यह भी देखें /var/log/auth.log

अद्यतन 2016
डिफ़ॉल्ट रास्पबेरी वितरण अब रास्पियन जेसी है, और systemdइसके बजाय का उपयोग करता है sysvinit। कमांड लाइन अब है systemctl enable ssh.socket(हालांकि ssh डिफ़ॉल्ट रूप से सक्षम होना चाहिए)।

नोट: मेरे पास अभी भी है /etc/rc2.d/ssh/S02sshऔर /var/log/auth.logमट्ठे से जस्सी तक अपग्रेड करने के बाद; यह हो सकता है या नहीं एक ताजा jessie स्थापित के साथ मामला है।


धन्यवाद, उस लिंक की मदद से मैं अब विभाजन देख सकता हूं। हालांकि rc2.d में मेरे पास ssh फोल्डर नहीं है। मेरे पास rc2.d की जड़ में एक S02ssh फ़ाइल (लिंक की तरह दिखता है) है।
लेमी

ठीक है, S02ssh फ़ाइल init.d / ssh का लिंक है, इसलिए मुझे लगता है कि SSH पहले से सक्षम है?
लेमी

K का अर्थ है मार; एस का मतलब है शुरू। init.d फाइलें फ़ाइल के नाम के आधार पर तर्क के रूप में "स्टॉप" या "स्टार्ट" के साथ शुरू की जाती हैं। मेरी छवि 16 IIRC से यह K थी
M Noit

1
ठीक है, मैं अभी अंदर हूं - मैं गलत आईपी पते से जुड़ने की कोशिश कर रहा था। RPI मैक टर्मिनल से दिखाई नहीं दे रहा था लेकिन मैं इसे अपने राउटर कॉन्फिग से देख सकता था। पृष्ठ। इसलिए मैं इस उत्तर को सही के रूप में चिह्नित करूंगा क्योंकि इससे मुझे समाधान करने में मदद मिली और उनके मैक कार्ड को देखने वाले अन्य मैक उपयोगकर्ताओं के लिए उपयोगी होगा। एक पक्ष के मुद्दे के रूप में यह प्रतीत होता है कि वर्तमान वितरण में SSH डिफ़ॉल्ट रूप से सक्षम है।
लेमी

1
@ फ्रेंकस्टीन: मेरे जवाब को अपडेट किया, पुनर्मुद्रण के लिए धन्यवाद।
M Noit

117

आपको बस अपने एसडी कार्ड के बूट (FAT) पार्टीशन पर 'ssh' नाम की एक खाली फाइल रखनी है (ext3 को माउंट करने की आवश्यकता नहीं है)। 2016-11-25 के साथ परीक्षण किया-रास्पियन-जेसी-लाइट.इमग।

स्रोत: https://www.raspberrypi.org/documentation/remote-access/ssh/

Nov '16 सुरक्षा अद्यतन के बारे में अधिक जानकारी: https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/


13
यह दिसम्बर 16 के अनुसार स्वीकृत उत्तर होना चाहिए। लेकिन कृपया संबंधित ब्लॉग प्रविष्टि raspberrypi.org/blog/a-security-update-for-raspbian-pixel
flaschbier

4
बूट विभाजन एक start.elfफ़ाइल के साथ एक है। लिंक किए गए ब्लॉग पोस्ट ने मुझे इसे /boot/निर्देशिका के रूप में भ्रमित किया
राफेल

1
इस काम करता है, के साथ परीक्षण किया - 2017/04/10-raspbian-जेसी
Divyanshu जिमी

1
इस बात की पुष्टि कर सकता है कि 2019-04-08-रास्पियन-खिंचाव के साथ काम करता है
ओएनोट्रिया

1
2019-07-10-रास्पियन-बस्टर के साथ पुष्टि की गई।
ब्रेनस्टोन

15

मट्ठे की छवि का उपयोग करते हुए मेरे पास समान मुद्दे थे।

लक्ष्य पाई बूट अप है, इसलिए यदि आप किसी अन्य सिस्टम से में ssh कर सकते हैं कभी एक मॉनिटर और कीबोर्ड कनेक्ट किए बिना किया जा सके।

समस्या यह है कि जब SSH सेवा सक्षम है, जैसा कि ऊपर बताया गया है, यह अभी तक कॉन्फ़िगर नहीं किया गया है, ताकि आप कनेक्ट नहीं कर सकता है, भले ही नेटवर्किंग चल रहा है है। इस कार्य को करने के लिए यहां कार्य दिए गए हैं:

  1. छवि को एसडी कार्ड पर रखें। (कहीं और कवर किया गया है)

  2. सुनिश्चित करें कि आप अपने पीआई बूट्स को एक बार टीसीपी / आईपी एड्रेस निर्धारित कर सकते हैं।

    संकेत: अपने राउटर को देखें कि क्या पते असाइन किए गए हैं।

  3. सुनिश्चित करें कि sshचलेंगे और कनेक्शन की अनुमति देंगे । यहाँ मैंने यह कैसे किया:

    ए। दूसरे एसडी कार्ड विभाजन को माउंट करें, etcनिर्देशिका के साथ बड़ा ।

    ख। एक फ़ाइल बनाएँetc/SSHFLAG

    सी। लाइन के etc/rc.localठीक ऊपर निम्न कोड डालें exit 0

    if [ -e /etc/SSHFLAG ]; then
      /usr/sbin/update-rc.d -f ssh defaults
      /bin/rm /etc/SSHFLAG
      /sbin/shutdown -r now
    fi
    

    विचार यह है कि जब आपके पाई बूट होते हैं, SSHFLAG फ़ाइल इसे ssh को फिर से कॉन्फ़िगर करने के लिए ट्रिगर करती है (चाबियाँ फिर से शुरू करना और सेवा शुरू करना), ध्वज फ़ाइल को हटा दें ताकि यह केवल एक बार हो, और आपके सिस्टम को रिबूट करें। मेरे लिए काम किया, YMMV


समस्या का अच्छा समाधान।
0xC0000022L

उसके बाद, मुझे फ़ाइल /etc/init.d/ssh startमें जोड़ना पड़ा /etc/rc.local, इसलिए एसएसएच सेवा शुरू होती है।
इवान पेरेज़ 15

Iván: नहीं यकीन है कि क्यों मेरे समाधान तुम्हारे लिए विफल रहा। सबसे अधिक संभावना स्पष्टीकरण ए) टाइपो, या बी) आरपीआई ssh पैकेज में परिवर्तन हैं। शायद डिबगिंग के लायक नहीं है। यदि ssh सेवा अभी तक कॉन्फ़िगर नहीं की गई है (यानी, यदि कुंजी उत्पन्न नहीं हुई है) तो आपका समाधान काम नहीं कर सकता है।
nortally

मुझे इवान जैसा ही अनुभव था। ssh start ने काम किया।
रॉबर्ट ३५२

7

हेडलेस सेटअप के लिए, एसएसएच को एसडी कार्ड के बूट विभाजन पर, बिना किसी एक्सटेंशन के 'ssh' नामक एक फाइल रखकर सक्षम किया जा सकता है।


1
"नहीं" हो सकता है, लेकिन नवंबर 2016 के बाद से होना चाहिए। यह सवाल जनवरी 2013 से है।
टेक्न्राफ

3

मेरे कल के अनुभव से: 2012-12-16-wheezy-raspbian.img ("आधिकारिक वितरण" के रूप में सुझाए गए) ने SSH को डिफ़ॉल्ट रूप से सक्षम किया है। इसे http://www.raspberrypi.org/downloads से प्राप्त करें

आपको कार्ड पर कुछ भी संपादित करने की आवश्यकता नहीं है या "ब्लाइंड मोड" में raspi-config शुरू करें।

बस सुनिश्चित करें कि आप एक सही IP पते का उपयोग करते हैं। तालिका से आईपी प्राप्त करने के लिए अपने रूटर डीएचसीपी वेब-इंटरफ़ेस का उपयोग करें; केबल का उपयोग करें, वाईफाई नहीं; सुनिश्चित करें कि एसडी कार्ड ठीक है (आप दूसरे एसडी-कार्ड की कोशिश कर सकते हैं); सुनिश्चित करें कि एसडी कार्ड फाइलसिस्टम ठीक है (छवि को फिर से लिखने की कोशिश करें और कार्ड को ठीक से "बेदखल" करना न भूलें)।


जबकि जिस्ट सच है, विवरण नहीं हैं। sshडिफ़ॉल्ट रूप से सक्षम नहीं है। इसके बजाय regenerate_ssh_host_keysसक्षम किया गया है, जो तब sshहोस्ट कुंजियों को बनाने के बाद सक्षम होगा और स्वयं को अक्षम करेगा। बेशक शुद्ध प्रभाव समान है।
0xC0000022L

2

कुछ महीनों के लिए पाई का उपयोग नहीं करने के बाद Google के माध्यम से इस पृष्ठ पर गया। हालिया अपडेट के बाद, ssh डिफ़ॉल्ट रूप से अक्षम हो गया है।

किसी के लाभ के लिए जेसी की एक साफ स्वच्छ स्थापना कर:

अनुकरणीय

रसभरी

सुडो नैनो / बूट / एसएचएस

परीक्षण [या किसी अन्य पाठ]

[ctrl-x दबाएं]

y

sudo shutdown -r अब

किया हुआ! शुभकामनाएं।

अपना पासवर्ड बदलना और ssh के माध्यम से उपयोगकर्ता 'pi' को अक्षम करना याद रखें।


1
जब /boot/sshएसडी कार्ड फ्लैश करने के लिए आपने उसी कंप्यूटर का उपयोग करके बनाया जा सकता है तो कोई भी ऐसा क्यों करेगा ? इसके अलावा, यदि आप डिफ़ॉल्ट उपयोगकर्ता को अक्षम करते हैं, तो आप कैसे लॉगिन करते हैं?
दिमित्री ग्रिगोरीव

1

आपके SD कार्ड पर कई विभाजन हैं, और जो फ़ाइलें आप अपने मैक से देख रहे हैं, वे उन विभाजन से हैं जो /boot/रास्पबेरी के रूप में माउंट किए गए हैं।

आपके पास एसडी कार्ड पर एक और विभाजन होना चाहिए जो रूट (उर्फ /) विभाजन को स्टोर करेगा , जिसमें सभी /etc/...सामान होंगे। मैक ओएस एक्स पर यह एक उपलब्ध करने के लिए अपने मैक पर EXT3 फाइलसिस्टम समर्थन को सक्षम करना सुनिश्चित करें।


1

और मैंने इस फाइल को अपने बूट पार्टीशन पर डाल दिया है और SSH अपने आप शुरू हो गया है। Boot_enable_ssh.rc से लिंक करें

वास्तव में, मैंने अभी नेट पर आरपीआई के लिए एक डेबियन संशोधन पाया है जिसमें डिफ़ॉल्ट रूप से एसएसएच सक्षम था। मैंने बूट विभाजन की जाँच की और यह फ़ाइल मिली!


1
tib20 के पास SSH को सक्षम करने का उत्तर है यदि आपने इसे खो दिया है। बस वह फ़ाइल को सीधे बूट विभाजन में छोड़ दें और यह खूबसूरती से काम करता है! उसके लिये आपका धन्यवाद। मैंने pi पर hostname बदलने के बाद अपना SSH खो दिया था।

1

मैं "नेटवर्क पर इसे नहीं ढूँढ सका" मुद्दों पर बहुत कुछ सुनता हूं। मैं ssh पोर्ट ओपन के साथ सभी मशीनों को खोजने के लिए इसे चलाने का सुझाव देने जा रहा हूं।

nmap 192.168.0.1/24 -p 22
# change the 192.168.0.1 part to match the first 3 octets of your ip address
# as seen via: ifconfig

यह मेरे लिए बहुत महत्वपूर्ण था क्योंकि मेरे पास उस राउटर के लिए व्यवस्थापक पासवर्ड नहीं है जिससे मैं जुड़ता हूं। अब, मैं कहूंगा कि एक बार जब मैंने अपने रास्पबेरी पाई के आईपी पते की पहचान कर ली थी, तब भी मैं कनेक्ट नहीं कर सका, जबकि नैम्प कहता है कि पोर्ट खुला था। मुझे तुरंत एक संदेश मिलता है ...

Connection closed by 192.168.0.116

मुझे अभी भी यह पता नहीं चला है कि एक बाहर।


1

बस अद्यतन करने के लिए, ऐसा करने के लिए बहुत सरल विधि है।

नवंबर 2016 की रिलीज के अनुसार, रास्पियन में डिफ़ॉल्ट रूप से SSH सर्वर अक्षम है। > आपको इसे मैन्युअली इनेबल करना होगा। यह raspi-config का उपयोग करके किया जाता है:

टर्मिनल में sudo raspi-config दर्ज करें, पहले Interfacing विकल्पों का चयन करें, फिर> ssh पर नेविगेट करें, Enter दबाएँ और ssh सर्वर को सक्षम या अक्षम करें चुनें।

हेडलेस सेटअप के लिए, SSH को SD कार्ड के बूट विभाजन पर 'ssh' नाम की फाइल को बिना किसी एक्सटेंशन के रखकर सक्षम किया जा सकता है।

स्रोत

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.