मॉनिटर या कीबोर्ड के बिना प्रारंभिक सेटअप


10

इससे पहले एक समान प्रश्न पूछा गया है: मॉनिटर के बिना रास्पबेरी पाई कैसे स्थापित करें?

हालांकि, यह देखते हुए कि स्वीकृत उत्तर एक उचित समाधान प्रस्तुत नहीं करता है, और यह देखते हुए कि जो पूछा जा रहा है उसमें अस्पष्टता का एक स्तर है, मैं यह मान रहा हूं कि मूल प्रश्न का गलत निर्माण किया गया था, और यह कि मेरा प्रश्न isn ' t एक सटीक डुप्लिकेट।

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

मैंने cmdline.txtफ़ाइल को संपादित करके पाई पर एक स्थिर आईपी पता सेट किया है । (पाई रास्पबियन का सबसे अंतिम संस्करण चला रही है।)

ip=10.0.0.20

मैंने ethअपने लैपटॉप पर इसी स्थिर IP पते पर इंटरफ़ेस दिया है । (लैपटॉप उबंटू चल रहा है।)

ip ad add 10.0.0.10/24 dev eth0

मैंने दोनों को एक ईथरनेट केबल के साथ जोड़ा है और अपने लैपटॉप से ​​पाई को सफलतापूर्वक पिंग कर सकता हूं।

क्या मैं नहीं कर सकता करते sshपाई है। मुझे एक कनेक्शन अस्वीकृत प्रतिक्रिया मिल रही है :

richard@richard-ThinkPad-X220:~$ ssh -vvv pi@10.0.0.20
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

एक बात यह है कि इसका मतलब यह है कि sshdअभी तक पाई पर नहीं चल रहा है।

आधिकारिक डॉक्स राज्य है कि sshdडिफ़ॉल्ट रूप से चलाता है, लेकिन यह संभव है कि एक प्रारंभिक बूट के दौरान कि अन्य बातों के (जैसे संकेतों उपयोगकर्ता इनपुट के लिए प्रतीक्षा में) एक निश्चित स्तर पर बूट अवरुद्ध कर सकता है, जिसका अर्थ है हम बिंदु है जिस पर इस तक नहीं पहुंचते sshdहै शुरू कर दिया ?

मैं यहाँ से कहाँ जाऊँ? ("मॉनिटर खरीदने के लिए दुकानों पर नहीं" ...)

क्या मैं वास्तव में संभव है?

संपादित करें:

मैंने अब निम्नलिखित पोस्ट के उत्तर में वर्णित तरीकों की कोशिश की है, लेकिन सफलता के बिना: स्क्रीन के बिना आरपीआई पर एसएसएच को सक्षम करना - रास्पि-कॉन्फिग के लिए कीस्ट्रोक्स?

विशेष रूप से, यह सुनिश्चित करते हुए कि SSH init स्क्रिप्ट रनलेवल 2 पर चलाई जाती है, फिर भी मुझे कनेक्ट करने की अनुमति नहीं दी।


मान लें कि आप पाई को पिंग कर रहे हैं और यह हाल ही में रस्पियन चल रहा है तो यह काम करना चाहिए। एकमात्र विकल्प जो मैं सुझा सकता हूं, वह है UART के माध्यम से पिन 8 और 10. पर लॉगिन करना। इसके लिए तारों और 3V3 संगत USB कैरेक्टर केबल की आवश्यकता होती है।
जोंन

स्थैतिक पते सेट करना केवल समस्या को जटिल करता है। यदि आप इसके साथ नहीं जुड़ते हैं, तो ssh pi@raspberrypi.localआप के साथ जुड़ने में सक्षम होना चाहिए आप हमें यह बताने के लिए नहीं सोचते हैं कि आप वास्तव में कैसे sshमहत्वपूर्ण हैं।
मिलिविस

मैंने पाई के विन्यास से स्थिर आईपी पते को हटाने की कोशिश की है, और प्रयास किया है ping pi@raspberrypi.local। लेकिन यह काम नहीं करता है क्योंकि raspberrypi.localएक अज्ञात होस्ट है। क्या इसे /etc/hostsहल करने में सक्षम होने के लिए मेरे लैपटॉप पर प्रविष्टि की आवश्यकता नहीं होगी ?
रिचर्ड हॉरोक्स

मुझे पता है कि मैं कैसे आपूर्ति करने के लिए SSHing के बारे में आगे का विवरण देता हूं, और मैं खुशी से उन्हें प्रदान करूंगा - अगर कुछ भी गायब है तो माफी। अब तक के सुझावों के लिए धन्यवाद :)
रिचर्ड Horrocks

1
आप sudo nmap 10.0.0.20लैपटॉप पर चला सकते हैं । यदि यह दिखाता है कि पोर्ट 22 खुला है तो SSH चल रहा है, अन्यथा यह नहीं चल रहा है। यह इसे ठीक नहीं करेगा, लेकिन यह आपको बताएगा कि क्या हो रहा है।
garethTheRed

जवाबों:


5

आधिकारिक डॉक्स बताता है कि sshd डिफ़ॉल्ट रूप से चलता है

मेरे पास नवीनतम छवि है, 2015-11-21-रास्पियन-जेसी- lite .img, यह सच नहीं है। डेबियन / रास्पियन जेसी वर्तमान में इनिट के लिए सिस्टमड का उपयोग करता है, लेकिन इसमें निर्मित हाइब्रिड बैकवर्ड-एसवाईएसवी-संगत तंत्र का एक प्रकार है, और मैं इस छवि से बनाए गए रनिंग सिस्टम पर ध्यान देता हूं (प्रारंभिक सेटअप के लिए एक स्क्रीन और कीबोर्ड का उपयोग करके), जहाँ sshd को अब सक्षम किया गया है, वहाँ systemd और पुराने SysV निर्देशिका दोनों में एक ट्रिगर है rc.d। संभवतः यह है कि पिछड़े-संगत तंत्र कैसे काम करता है (मैंने systemd के माध्यम से ssh को सक्षम किया है)। किसी भी स्थिति में, sshd1 चल रहे PPID के साथ केवल एक उदाहरण है।

काम कर प्रणाली के लिए, वहाँ में एक प्रविष्टि है /etc/rc[2,3,4,5].dके लिए S02ssh(सटीक प्राथमिकता नंबर, 02, सेट किया गया है जब सेवा सक्षम है और भिन्न हो सकते हैं)। ए भी है /etc/systemd/system/multi-user.target.wants/ssh.service

आधार छवि में, हालांकि ...

... इसमें कोई प्रविष्टि नहीं है /etc/systemdऔर K01sshरनलेवेल्स 2, 3, 4, 5 के लिए है। यह बहुत गारंटी देता है कि कोई sshd नहीं चल रहा है।

मेरा सुझाव है कि पहले केवल SysV प्रविष्टि सेट करने का प्रयास करें। etcएसडी कार्ड पर दूसरे विभाजन की निर्देशिका से:

for i in 2 3 4 5; do \
ln -s ../init.d/ssh rc$i.d/S02ssh; \
rm rc$i.d/K01ssh \
done

यह सुनिश्चित करने के लिए जांचें कि लिंक वहां हैं और वे सही जगह की ओर इशारा करते हैं stat। मेरा मानना ​​है कि यह पर्याप्त होना चाहिए और अब आप सिस्टम को बूट करने की कोशिश कर सकते हैं। यदि हां, तो आप उन लिंक को हटाने और चलाने systemctl enable sshके बाद, फिर जांचें कि लिंक फिर से बनाए गए हैं (याद रखें, प्राथमिकता अलग हो सकती है)।

आप अभी भी मिलता है "कनेक्शन से इनकार कर दिया", से एक लिंक बनाने [SD_rootfs]/lib/systemd/system/ssh.serviceके लिए [SD_rootfs]/etc/systemd/default.target.wants/ssh.serviceऔर फिर कोशिश करें।


बहुत विस्तृत निर्देशों के लिए धन्यवाद। मैंने निर्देशिका K01sshमें देखा rc2.dऔर उसका नाम बदल दिया, लेकिन अन्य rcनिर्देशिकाओं में दूसरों को नहीं देखा था । अपनी स्क्रिप्ट का उपयोग करने वालों को हटाने से मदद नहीं मिली, दुर्भाग्य से। (मैंने सुझाव दिया कि वे बनाए गए थे, जैसा कि आपने सुझाव दिया।) दूसरी विधि के लिए, मेरे पास निर्देशिका ssh.serviceमें प्रविष्टि नहीं है etc/systemd/system/multi-user.target.wants/, और lib/systemd/system/निर्देशिका सुलभ नहीं है। सिस्टम यह भी नहीं बता सकता है कि यह एक निर्देशिका है (और रनिंग fileमुझे देता है: ERROR: cannot open lib / systemd / system '(इनपुट / आउटपुट त्रुटि) `)।
रिचर्ड हॉरोक्स 15

ध्यान दें कि मैं लाइट इमेज का उपयोग नहीं कर रहा हूं, लेकिन आपके जैसी ही डेट की फुल-फैट इमेज।
रिचर्ड हॉरोक्स 15

कार्ड पर ऊपर उल्लेखित इनिट निर्देशिकाओं पर एक नज़र डालें। आपको यह बताने में सक्षम होना चाहिए कि ssh सक्षम है या नहीं। अगर यह सही है, तो IP + ssh रनिंग! = "कनेक्शन अस्वीकृत" हो जाता है, इसलिए कुछ गलत हो गया है और इसका निदान करने के लिए आपको एक स्क्रीन और कीबोर्ड ढूंढना होगा। वैकल्पिक रूप से (या साथ ही), आप यह देखने के लिए तारों की तरह कुछ का उपयोग कर सकते हैं कि पैकेट आगे और पीछे क्या हो रहा है; यह निश्चित रूप से साबित होगा कि नेटवर्क पर क्या हो रहा है।
गोल्डीलॉक्स

ठीक है, Wireshark के साथ चारों ओर एक प्रहार था, लेकिन कहीं भी नहीं मिला। फिर एक लाइट इमेज को जलाने का फैसला किया और कोशिश की। मैंने देखा कि systemdआपके द्वारा बताई गई फाइलें मौजूद थीं, इसलिए आपके दूसरे सुझाव का प्रयास किया गया, जिसमें काम किया गया :) यह पता लगाना कि चित्र के बीच चीजें अलग-अलग क्यों थीं, लेकिन यह मेरी हैकिंग के आसपास हो सकती थी जिसने पहली छवि में कुछ प्रभावित किया। (मुझे पता नहीं क्या है ...) आपकी मदद के लिए बहुत बहुत धन्यवाद।
रिचर्ड होरोक्स

पूर्णता की खातिर, मैंने एक नए फुल-फैट जेसी छवि के साथ फिर से एक अलग एसडी कार्ड की कोशिश की, लेकिन फिर से, lib/systemd/system/निर्देशिका अप्राप्य थी। वही व्हीजी इमेज के लिए जाता है। केवल लाइट छवि ने मुझे निर्देशिका तक पहुंचने और इसलिए निर्देशों को पूरा करने की अनुमति दी।
रिचर्ड हॉरोक्स

11

आप में से जो लोग नए रास्पियन छवियों के साथ इस में चल रहे हैं: एक सिस्टमैड sshwitchलक्ष्य है, जो चेक करता है /boot/ssh, और यदि वह फ़ाइल मौजूद है, तो यह SSH होस्ट कुंजी को पुन: बनाता है और SSH सर्वर को सक्षम करता है।

इसलिए, SSH को सक्षम करने के लिए, बस sshबूट विभाजन (रूट FAT एक, bootcode.binफ़ाइल के साथ ) नामक रूट में एक फ़ाइल जोड़ें , और अपने पाई को बूट करें!

संपादित करें: इसने मेरे 2017-01-11-रास्पबियन-जेसी-लाइट छवि पर काम किया।


यह अच्छा काम करता है। यदि आपके पास एक कीबोर्ड काम है, तो टाइप करें: pi <enter> raspberry <enter> sudo touch / boot / ssh <enter> sudo reboot <enter> फिर अपने राउटर को देखें क्योंकि डिवाइस को एक आईपी मिलता है, फिर ssh pi @ <ip> और आप एक हैकर की तरह महसूस करेंगे।
nurettin

1

यह एक उत्तर होने के बारे में क्षमा करें, लेकिन केवल टिप्पणी करने के लिए क्रेडिट को एनॉगेट नहीं करें।

Ssh सेवा है? यदि यह संभव है, और यह रास्पबेरी इंस्टॉलेशन छवियों में से एक है, तो ssh को सक्षम करने के लिए बस रास्प-कॉन्फिग की कोशिश करें।

एक और तरीका है, अगर ssh लोड और सक्षम है के साथ की जाँच करें

sudo service --status-all|grep ssh

शायद ssh पोर्ट 22 कनेक्शन को अस्वीकार कर देता है क्योंकि सेवा तैयार नहीं है


1
रास्पबियन के वर्तमान संस्करणों पर आप शायद systemctl --list-units | grep ssh(या बेहतर अभी तक अधिक जानकारीपूर्ण systemctl status ssh) का उपयोग करना चाहते हैं । लेकिन आप अनिवार्य रूप से सही हैं, "कनेक्शन मना कर दिया" का अर्थ है कि बंदरगाह पर कुछ भी नहीं सुन रहा है। यदि ssh चल रहा है, तो IP गलत है।
गोल्डीलॉक्स

2
जवाब के लिए धन्यवाद। आपके सुझाव के साथ समस्या यह है कि मेरे पास कमांड चलाने का कोई तरीका नहीं है, क्योंकि मैं इसे चलाने के लिए पाई तक नहीं पहुंच सकता। मुर्गी और अंडा। :( मुझे पता है कि आईपी पता सही है क्योंकि मैं इसे पिंग कर सकता हूं (और मुझे पता है कि नेटवर्क पर और कुछ भी समान पता नहीं है)
रिचर्ड होर्रक्स

1

https://www.raspberrypi.org/blog/a-security-update-for-raspbian-pixel/ Rasbian PIXEL संस्करण संचालन प्रणाली के लिए यह लिंक है।


यह वास्तव में किसी भी तरह से सवाल का जवाब नहीं देता है।
Jacobm001

यद्यपि उपयोगी जानकारी केवल लिंक में है (उत्तर की प्रतिक्रिया के बजाय, जहां यह होना चाहिए), यह कम से कम आधिकारिक raspberrypi.org प्रलेखन है, और अनुभाग "क्या बदल गया है?" लिंक किए गए पृष्ठ में उन सुरक्षा समस्याओं का विवरण दिया गया है जिनके कारण आवश्यक परिवर्तन हुए (यानी डिफ़ॉल्ट रूप से ssh को अक्षम करना), और /boot/sshफिक्स का विवरण दिया गया ।
रॉबर्टो टेले

0

जेसी लाइट के दिनांक 26 फरवरी 2016 के संस्करण को डिफ़ॉल्ट रूप से सक्षम किया गया है।

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