एक स्क्रीन के बिना ssh के लिए तैयार करें


156

मेरे पास घर पर रास्पबेरी पाई मॉडल बी है, लेकिन मेरे पास स्क्रीन नहीं है। मेरी योजना इसे ईथरनेट से जोड़ने और फिर इसमें ssh करने की है। लेकिन इसका मतलब है कि ऑपरेटिंग सिस्टम (डेबियन स्क्वीज़) वाले एसडी कार्ड को पहले तैयार करना होगा। मैं दो तरीके देखता हूं:

  1. एसडी को ओएस के साथ तैयार करें जैसे कि आरपीआई निश्चित आईपी पते के तहत ईथरनेट से हमेशा कनेक्ट होता है और एसएसएच सर्वर को सक्षम करता है।

  2. एसडी को ओएस के साथ तैयार करें जैसे कि आरपीआई नेटवर्क से जुड़ता है, एक एसएसएच सर्वर को सक्षम करता है और फिर अपने आईपी पते को प्रसारित करता है ताकि मैं इसमें ssh कर सकूं।

इनमें से कौन सा तरीका आसान है? और मैं इसे कैसे करूँ? क्या अन्य तरीके हैं?

मेरे पास निम्न उपकरण हैं: उबंटू 10.4, मैकओएस 10.5, विंडोज 7, लेकिन केवल उबंटू में एक कार्डरीडर है। दुर्भाग्य से मैं अपने राउटर की डीएचसीपी तालिका तक नहीं पहुंच सकता, यह पूरी तरह से बंद है।


5
अलग से उपयोगी - SSP सक्षम के साथ RasPi स्वाभाविक रूप से बूट (डेबियन, कम से कम) नहीं करता है। आपको एक फ़ाइल को / boot / जिसमें SSH को बूट करने के लिए संशोधित करना है। मुझे पता है कि यह आपके सवाल का जवाब नहीं देता है, लेकिन यह अगले ठोकर हो सकता है :)
जॉर्ज पीयर्स

1
मुझे नहीं लगता कि यह उत्तर होने के योग्य है, लेकिन आप एक पोर्ट स्कैनिंग टूल का उपयोग कर सकते हैं।
ian.shaun.thomas 11

10
@iampearce: डेबियन व्हीज़ी बीटा में, ssh अब डिफ़ॉल्ट रूप से सक्षम होना प्रतीत होता है।
जॉन एगर्टन

5
वर्तमान मट्ठा में SSH प्रति डिफ़ॉल्ट सक्षम है। यदि आपके नेटवर्क में डीएचसीपी सर्वर है, तो यह बॉक्स से बाहर काम करेगा।
संतरी

1
वहाँ पहले से ही सभी जवाब आप की जरूरत है मुझे लगता है। मैं सिर्फ अपने नेटवर्क में पाईस को खोजने का अपना तरीका जोड़ना चाहता था। मेरे पास आमतौर पर एक से अधिक हैं, और यहां तक ​​कि पोर्ट 22 के साथ और भी मशीनें खुली हैं। nmap -sP 192.168.0.0/24 | grep Pi -B 2
cee

जवाबों:


71

स्टार्टअप पर ssh को सक्षम करने के लिए, boot.rcSD विभाजन पर बूट विभाजन पर बैकअप लें और इसे बदलेंboot_enable_ssh.rc

मुझे आपके राउटर के बारे में नहीं पता है, लेकिन आप अपने पाई के मैक पते के लिए एक निश्चित आईपी पते को आरक्षित करने के लिए इसे कॉन्फ़िगर करने में सक्षम हो सकते हैं।


3
नींव द्वारा आपूर्ति की गई डेबियन निचोड़ छवि पर पहले से ही ssh स्थापित है?
B

1
@ टीईएलबी, यह आपूर्ति की गई छवि में स्थापित है, लेकिन इसे मैन्युअल रूप से शुरू किया जाना चाहिए।
फाइनव

1
ठीक है, जो बूट विभाजन है? मेरे पास एक फाइल सिस्टम है, एक स्वैप विभाजन है और एक जिसमें स्टार्ट.एफएल फाइल और अन्य हैं। इसमें boot_enable_ssh.rc भी है, लेकिन boot.rc. मैंने इसका नाम बदलकर boot.rc और booted कर दिया। मैं नेटवर्क में आरपीआई पाता हूं (कम से कम मुझे लगता है कि यह पाई है), लेकिन एसश बंद है।
B

1
क्या आप सुनिश्चित हैं कि यह उस तरह से गोल है। मेरा नाम बूट करने के लिए काम करता है। बूट करने के लिए, जैसा कि raspberrypi.stackexchange.com/questions/606/…
David Sykes

5
मैंने 2012-09-18-wheezy-raspbian.img छवि को एक नए हेडलेस रास्पबेरी पाई पर बूट किया, इसने sshd को ऑटोस्टार्ट किया और DHCP का उपयोग करके स्वयं को कॉन्फ़िगर किया।
nos

52
  1. कॉपी boot_enable_ssh.rcकरने boot.rcसे /bootरास्पबेरी Pi के दशक में rootfs(एसडी कार्ड)

  2. रास्पबेरी पाई में अभी भी rootfs, /etc/network/interfacesएक निश्चित आईपी पते को असाइन करने के लिए संपादित करें (ताकि कोई डीएचसीपी सर्वर की आवश्यकता न हो)। उदाहरण के लिए,

    auto lo eth0
    iface lo inet loopback
    iface eth0 inet static
        address 192.168.0.202
        netmask 255.255.255.0
        gateway 192.168.0.200
    
  3. अपने रास्पबेरी पाई को बूट करें, इसे उसी नेटवर्क से कनेक्ट करने के लिए एक ईथरनेट केबल का उपयोग करें जिसे आपका पीसी कनेक्टेड है (या सीधे इसे अपने पीसी से कनेक्ट करें) और SSH के माध्यम से लॉगिन करें:

    ssh pi@192.168.0.202
    
  4. अपने रास्पबेरी पाई में एक हल्का वीएनसी सर्वर स्थापित करें:

    sudo apt-get install tightvncserver
    
  5. फिर VNC सर्वर शुरू करें (आपसे पासवर्ड सेट करने के लिए कहा जाएगा):

    vncserver :1 -name RasPi -depth 16 -geometry 1024x768
    
  6. अपने पीसी में VNC क्लाइंट स्थापित करें:

    apt-get install xtightvncviewer
    
  7. फिर अपने पीसी से VNC के माध्यम से अपने रास्पबेरी पाई से कनेक्ट करें:

    xtightvncviewer 192.168.0.202:1
    

यह बस यहाँ उस तरह से काम करता है :)


2
FWIW: OP ने ssh के बारे में पूछा - X या VNC के बारे में नहीं।
ब्रैड

मैं pi पर ओएस माउंट करने के लिए BUILDROOT के तहत raspberrypi_defconfig कॉन्फ़िगरेशन का उपयोग किया है ... बूट फ़ोल्डर में कोई boot.rc फ़ाइल नहीं है !!! मैं क्या कर सकता हूँ ?
द बीस्ट

36

boot_enable_ssh.rcवर्तमान रास्पियन बिल्ड में कोई भी सामान मौजूद नहीं है। आप बूट करते हैं, एक अच्छा चित्रमय मेनू आपको कुछ विकल्प देता है (जिसमें SSHD बूट पर लोड होना चाहिए) और फिर आपको कमांड लाइन पर आउट करता है।

यह बहुत अच्छा है अगर ... आप एक चित्रमय उपयोगकर्ता हैं।

यदि आप नहीं हैं, तो आप उस स्थिति में रह जाते हैं, जहाँ आपको किसी तरह बाहरी रूप से भागना पड़ता है update-rc.d। यह सब वास्तव /etc/init.d/...में /etc/rc{0..6}.d/...फाइलसिस्टम में विभिन्न बिंदुओं पर स्क्रिप्ट के लिए एक सिम्लिंक बनाता है । उलझन में? कोई बात नहीं - नुकसान करना सरल है।

  1. मैं मान रहा हूं कि आप लिनक्स कंप्यूटर से ऐसा कर रहे हैं। कम से कम बैश का उपयोग करके कुछ, या कुछ संगत। मैं जो सुझाव दे रहा हूं वह सिगविन (या अन्य) के बिना विंडोज से काम नहीं करेगा। एसडी कार्ड और cdइसमें माउंट करें ।

  2. Daud:

    for i in 2 3 4 5; do sudo ln -s /etc/init.d/ssh etc/rc$i.d/S02ssh; done
    
  3. अनमाउंट करें, और बूट करें। आपको SSH पर इसकी पहुंच होनी चाहिए।

यदि आप इसे अपने नेटवर्क पर खोजने के लिए संघर्ष कर रहे हैं ...

आपके लिए तीन विकल्प:

  • इसे खोजने के लिए अपने राउटर के एडमिन का उपयोग करें। नेटगियर विशेष रूप से "अटैच्ड डिवाइसेस" दिखाने में अच्छा है।
  • एक मॉनिटर प्लग इन करें और चलाएं ifconfig(धोखा!)
  • इसके nmapलिए स्कैन करने के लिए किसी अन्य कंप्यूटर पर उपयोग करें । आपको पता होना चाहिए कि आईपी क्या है (मोटे तौर पर / 24) तो स्कैनिंग सरल है:

    sudo nmap -sV --open 192.168.0.0/24  -p22
    

1
इसके लिए नैम्प का उपयोग न करें, आप प्रसारण पते को पिंग कर सकते हैं और एआरपी तालिका की जांच कर सकते हैं।
तमारा वाइज्समैन

@TomWijsman क्या आपका मतलब है दौड़ना ping -b 192.168.0या समकक्ष? मुझे यकीन नहीं है कि यह कैसे व्यवहार्य है क्योंकि मैंने इसे बिना किसी सफलता के दो राउटर पर परीक्षण किया है। आमतौर पर अवरुद्ध होने लगता है।
ओली

1
@ ओली: नहीं, यह आपकी कर्नेल है जो सभी एआरपी उत्तरों को इकट्ठा नहीं कर रहा है, यह देखने के लिए हर आने वाले पैकेट की जांच करने के लिए एक बेकार माना जाता है कि क्या इसका मैक एआरपी कैश में पहले से ही है, यही कारण है कि यह हमेशा लिनक्स पर काम नहीं करता है, यदि केवल मुझे पता था कि इसे कैसे कॉन्फ़िगर करना है; लेकिन यह उदाहरण के लिए विंडोज और मैक ओएस एक्स पर ठीक काम करता है ...
तमारा विजसमैन

@ ओली: एक व्यवहार्य विकल्प यदि आपका सिस्टम ऐसा नहीं कर सकता है arping; यह करता है कि अलग-अलग पिंग और आर्प कमांड क्या लगाएंगे, लेकिन फिर बिना ICMP पैकेट वाले नेटवर्क को भर दिए।
तमारा विज्समैन

2
@ नोर्नगन: arp -aअपने दम पर ऐसा नहीं करता है।
तमारा विजसमैन

21

यदि आप आर्क लिनक्स वितरण का उपयोग करते हैं , तो आप बस इसे प्लग इन करते हैं और इसका पता डीएचसीपी सर्वर से सौंपा गया है । आप तब डीएचसीपी की स्थिति (उदाहरण के लिए अपने राउटर से कनेक्ट करके) की जांच कर सकते हैं और कनेक्टेड क्लाइंट सूची से आईपी पते को पुनः प्राप्त कर सकते हैं। यदि वह विफल रहता है, तो आप nmapखुले पोर्ट 22 के लिए पूरे सबनेट को स्कैन करने के लिए या इसी तरह के उपकरणों का उपयोग कर सकते हैं (एसएसएच डिफ़ॉल्ट रूप से सक्षम है)।


ओह, जोड़ना भूल गया: मैं अपने राउटर तक नहीं पहुंच सकता (यह मेरी कंपनी द्वारा आपूर्ति की जाती है और पूरी तरह से बंद है)। क्या आप कह रहे हैं कि आर्क ssh पर हमेशा सक्षम है? डेबियन के बारे में कैसे?
B

मुझे लगता है कि केवल आर्क ही एसएसएचडी पूर्व-सक्षम के साथ आता है।

5
डेबियन डिफ़ॉल्ट रूप से एसएसएच सक्षम नहीं है।
स्टीव रोबिलार्ड

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

14

2016 में बड़े पैमाने पर बोटनेट हमलों के बाद IoT उपकरणों को आसानी से डिफ़ॉल्ट पासवर्ड के साथ हैक किए जाने के कारण, रास्पियन एक बार फिर एसएसएच के साथ आता है डिफ़ॉल्ट रूप से बंद हो जाता है ( स्रोत )।

फिक्स बहुत आसान है, आपको बस boot विभाजन में एक फ़ाइल बनाने की आवश्यकता है (रूट फाइल सिस्टम के भीतर निर्देशिका नहीं) जिसे कहा जाता है ssh। यह जांचने के लिए कि क्या आप सही विभाजन में हैं, इसमें एक फ़ाइल नाम होना चाहिए start.elf

के बाद अपना पासवर्ड बदलने के लिए मत भूलना!

अपने नेटवर्क पर मैंने पाई का उपयोग करने के लिए sudo arp-scan -l, हालांकि sudo nmap -sS --open -O 192.168.1.0/24एक वैध, लेकिन धीमी, विकल्प भी है।


फ़ाइल नाम "start.elf" बनाने के लिए आपकी पोस्टिंग का उल्लेख किया गया है, जबकि स्रोत URL में "SSH" फ़ाइल नाम बनाने के लिए उल्लेख किया गया है: 'यदि आप SSH को सक्षम करना चाहते हैं, तो आपको केवल ssh नामक एक फ़ाइल डालनी होगी। / बूट / निर्देशिका। ' क्या आप पोस्टिंग की समीक्षा कर सकते हैं?
15

उफ़, उत्तर लिखते समय मैं थोड़ा जल्दबाज़ी में था, भ्रम के उस बिंदु को पहचानने के लिए धन्यवाद
राफेल

13

डेबियन 7 (व्हीजी) बीटा छवि का उपयोग करके, एसएसएच डिफ़ॉल्ट रूप से स्थापित और सक्षम है। आपको बस इसके आईपी पते के माध्यम से इसे कनेक्ट करने की आवश्यकता है।

वर्कआउट करने के कुछ तरीके हैं जो रास्पबेरी पाई को संबोधित करते हैं, बिना ifconfigसीधे उस पर चलने के लिए, उदाहरण के लिए:

  • आपके राउटर कॉन्फ़िगरेशन पृष्ठों में कनेक्टेड मशीनों के लिए स्क्रीन पते आईपी पते हो सकते हैं
  • अधिकांश स्मार्टफोन में मुफ्त वाई-फाई नेटवर्क स्कैनर होते हैं जो नेटवर्क से जुड़े उपकरणों को दिखाएंगे।

यह डिफ़ॉल्ट रूप से MY Debian Wheezy छवि पर सक्षम नहीं है ... :(
मैट

@ मैट: क्या आपको यकीन है? - जब मैंने इसे चालू किया था, तब मैंने जो मानक डाउनलोड किया था।
जॉन एगर्टन

मुझे ऐसा लगता है। मैंने आज सुबह फिर से कोशिश की (नवीनतम छवि के साथ)। शायद मुझे कुछ याद आया, लेकिन मुझे याद है कि अब एक दो बार ऐसा करना है।
मैट

2017 में लागू नहीं होता है
राफेल

11

आसान तरीका (यदि आपके पास सिर्फ एक कीबोर्ड है)

SSH डेबियन व्हीज़ी (रास्पियन) में डिफ़ॉल्ट रूप से सक्षम नहीं है। एक बार, SSH निश्चित रूप से मेरी रास्पियन छवियों पर सक्षम नहीं था। जाहिर है SSH डिफ़ॉल्ट रूप से सक्षम है। लेकिन अगर यह नहीं है और आप फंस गए हैं, तो इस पर पढ़ें:

यदि आपके पास USB कीबोर्ड है, तो अधिकांश उत्तर की तुलना में इसे सरल करना बहुत सरल है।

  1. कीबोर्ड में प्लग करें और आरपीआई को बूट करें। ध्यान दें कि डिफ़ॉल्ट कीबोर्ड लेआउट मानक QWERTY US लेआउट होगा , इसलिए अपने "Y" और "Z", और आपके "-" s और "/" s को ध्यान में रखें।
  2. एक मिनट प्रतीक्षा करें, फिर "पी" टाइप करें, एंटर दबाएं, फिर "रास्पबेरी" और हिट एंट्री करें।
  3. SSH को इसके साथ सक्षम करें:

    sudo /etc/init.d/ssh start
    
  4. पासवर्ड "रास्पबेरी" को बस फिर से टाइप करें, क्योंकि यह एक sudoकमांड है, और एंटर दबाएं।

अब आपको अपने नेटवर्क पर अपने आईपी पते द्वारा अपने आरपीआई को रिमोट करने में सक्षम होना चाहिए।

जैसा कि डेनिस मित्रोपोलस्की ने उल्लेख किया है , कॉन्फ़िगरेशन उपयोगिता इस बिंदु पर एसएसएच को कॉन्फ़िगर करना आसान बनाती है:

sudo raspi-config

बस "ssh" विकल्प पर जाएं। सौभाग्य से, यह एक एसएसएच सत्र में काम करता है, इसलिए आपको "नेत्रहीन" चलाने के लिए एकमात्र आदेश ऊपर वाला पहला है।


1
बहुत बढ़िया जवाब है, हालांकि यह लग रहा है कि पीएस के साथ अधिक हाल के एसडी कार्ड थॉट शिप पर एसएचएस सक्षम हो सकता है। पिछले हफ्ते मेरा ऑर्डर दिया और ssh ने बस बॉक्स में काम किया!
पफरफिश

वे अब एसडी कार्ड के साथ जहाज? आपने अपना आदेश कहाँ दिया? हालांकि यह अच्छी खबर है। मैं बी मॉडल में अपग्रेड करने के बारे में सोच रहा था।
मैट

4
इस अंधे समाधान के लिए बस एक टिप्पणी : मेरे पास "देशी" अंग्रेजी कीबोर्ड नहीं है (यह जर्नल है !), इसलिए बिना रास्पी-कॉन्फिग या dpkg-reconfigure कीबोर्ड-कॉन्फ़िगरेशन के मेरा USB कीबोर्ड 'y' के बजाय 'z' भेजता है, जो अंधे पासवर्ड लॉगिन को प्रभावित करता है । इसी तरह की समस्या अन्य गैर-अंग्रेज़ी कीबोर्ड पर भी बनी रह सकती है! आप कार्यपट्टी में अपने कीबोर्ड / भाषा बार सेटिंग्स को 'अपनी भाषा' -> 'EN' से स्विच करते समय विंडोज में डिफ़ॉल्ट अंग्रेजी अक्षरों की जांच कर सकते हैं।
टॉमिल

3
@ टॉमीएल: अच्छी बात है। जर्मन कीबोर्ड पर 'Z' और 'Y' भी स्वैप किए गए हैं।
पीटर मोर्टेंसन

1
यह अब सबसे अच्छा काम करता है, नवीनतम रास्पियन जेसी ने ssh को यूजरनेम / पासवर्ड पाई / रास्पबेरी के साथ डिफ़ॉल्ट रूप से सक्षम किया है
RedDevil

5

SSH बॉक्स से बाहर काम करता है या नहीं, यह नहीं कह सकता, लेकिन नवीनतम कॉन्फ़िगरेशन उपयोगिता संस्करण में "SSH सक्षम करें" कमांड है। उसके बाद मैं नेटवर्क के माध्यम से अपने रास्पबेरी से कनेक्ट करने में सक्षम था। लेकिन इसे सक्षम करने के लिए आपको वैसे भी एक मॉनिटर की आवश्यकता होती है।


1
यह मूल रूप से सबसे आसान तरीका है। यदि आपके पास कीबोर्ड है तो आपको इसे सक्षम करने के लिए मॉनिटर की भी आवश्यकता नहीं है। यह केवल एक आदेश लेता है जिसे आप नेत्रहीन चला सकते हैं।
मैट

5

एक चेतावनी: आर्क लिनक्स के साथ , यह मेरे लिए केवल तभी काम करता था जब मैंने रास्पबेरी पाई को बूट करने से पहले ईथरनेट को हुक किया था (और फिर यह ठीक काम किया था: sshd डिफ़ॉल्ट रूप से सक्षम था)। यदि मैं पहली बार बूट करता हूं, तो ईथरनेट केबल कनेक्ट करें, रास्पबेरी पाई कभी भी आईपी एड्रेस प्राप्त करने के लिए डीएचसीपी सर्वर से संपर्क नहीं करती है।


4

राउटर + नो स्क्रीन + रेगुलर इथरनेट केबल + आरपीआई २ + रास्पियन लाइट २०१ +-११-१३ + उबंटू १ +.१० होस्ट

पहले हमें पाई पर एसएसएच सर्वर को सक्षम करना चाहिए, जो सुरक्षा के लिए डिफ़ॉल्ट रूप से अक्षम है।

यदि आपके पास पहले से ही गैर-एसएसएच विधि जैसे स्क्रीन + कीबोर्ड या UART (नीचे देखें) के माध्यम से पाई पर एक शेल है, तो बस यह पढ़ें:

sudo systemctl enable ssh
sudo service sshd start

जैसा कि समझाया गया है: SSH नए सिरे से काम नहीं कर रहा है यह बूट के पार बना रहता है।

अन्यथा, वह आपके होस्ट पर एसडी कार्ड डालें, और विभाजन sshमें एक जादू खाली फ़ाइल नाम दें boot/

उबंटू मेजबानों पर, यह स्वचालित रूप से माउंट हो जाता है और आप बस कर सकते हैं:

sudo touch /media/$USER/boot/ssh

जिसकी आप पुष्टि कर सकते हैं:

lsblk

जिसमें है:

mmcblk0     179:0    0  14.4G  0 disk
├─mmcblk0p1 179:1    0  43.9M  0 part /media/ciro/boot
└─mmcblk0p2 179:2    0  14.4G  0 part /media/ciro/rootfs

यदि आप पाई पर SSHD डेमॉन को सक्षम नहीं करते हैं तो SSH कनेक्शन इसके साथ विफल हो जाएगा:

ssh: connect to host 10.42.0.160 port 22: Connection refused

जब हम इसे बाद में आजमाते हैं।

SSH सर्वर को सक्षम करने के बाद

इसके बाद, पाई बूट करें, और अपने लैपटॉप से ​​ईथरनेट केबल को सीधे Pi से लिंक करें:

यहां छवि विवरण दर्ज करें

उबंटू 17.04 पर इस बग के आसपास काम करने के लिए जैसा कि इस उत्तर पर आपको पहले चाहिए:

sudo apt-get install dnsmasq-base

होस्ट पर, नेटवर्क प्रबंधक खोलें:

nm-connection-editor

और जाओ:

  1. + हस्ताक्षर (एक नया कनेक्शन जोड़ें)
  2. ईथरनेट
  3. सृजन करना
  4. IPv4 सेटिंग्स
  5. विधि: अन्य कंप्यूटरों पर साझा की गई
  6. इसके लिए एक अच्छा नाम निर्धारित करें
  7. सहेजें

यहां छवि विवरण दर्ज करें

होस्ट पर पाई का IP ढूंढें:

cat /var/lib/misc/dnsmasq.leases

आउटपुट कुछ इस तरह है:

1532204957 b8:27:eb:0c:1f:69 10.42.0.160 raspberrypi 01:b8:27:eb:0c:1f:69

10.42.0.160 IP है, फिर हमेशा की तरह:

ssh pi@10.42.0.160

मेरे पास निम्नलिखित भी हैं .bashrc:

piip() ( cat /var/lib/misc/dnsmasq.leases | cut -d ' ' -f 3; )
pissh() ( sshpass -p raspberry ssh "pi@$(piip)"; )

पाई के अंदर से, ध्यान दें कि यह आपके मेजबान के अन्य इंटरफेस के माध्यम से सामान्य रूप से इंटरनेट तक पहुंच सकता है:

ping google.com

मेरे लैपटॉप पर उदाहरण के लिए, Pi ईथरनेट को लेता है, लेकिन होस्ट वाईफाई के माध्यम से इंटरनेट से भी जुड़ा हुआ है।

यदि होस्ट नेटवर्क कार्ड Auto MDI-X का समर्थन करता है तो क्रॉसओवर केबल की आवश्यकता नहीं है । यह सबसे हालिया हार्डवेयर के लिए मामला है, उदाहरण के लिए 2012 लेनोवो T430 I के साथ परीक्षण किया गया, जिसमें "Intel® 82579LM गिगाबिट नेटवर्क कनेक्शन" है जो ऑटो एमडीआई-एक्स के लिए दस्तावेजों का समर्थन करता है

अब आप यह भी कर सकते हैं:

UART सीरियल USB कनवर्टर

यह SSH का एक विकल्प है यदि आप केवल पाई पर एक शेल प्राप्त करना चाहते हैं: https://en.wikipedia.org/wiki/Serial_port

यह एसएसएच या नेटवर्किंग का उपयोग नहीं करता है, बल्कि पुराने, सरल, अधिक प्रत्यक्ष, अधिक विश्वसनीय, कम बैंडविड्थ, कम दूरी के सीरियल इंटरफ़ेस का उपयोग करता है। इस पद्धति से पाई का इंटरनेट तक उपयोग नहीं होगा।

डेस्कटॉप कंप्यूटर में अभी भी एक सीरियल पोर्ट है जिसे आप पाई के साथ सीधे तार से कनेक्ट कर सकते हैं, लेकिन ये अधिकांश लैपटॉप में छिपे होते हैं, और इसलिए हमें एक सस्ता यूएसबी एडाप्टर खरीदने की आवश्यकता है। यहाँ मैंने प्रयोग किया है: https://www.amazon.co.uk/gp/product/B072K3Z3TL इसे भी देखें: https://unix.stackexchange.com/questions/307390/what-is-the-difference-between- ttyS0-ttyUSB0 और ttyama0-इन-linux / 367,882 # 367,882

पहले मेजबान पर एसडी कार्ड प्लग करें, और config.txtजोड़ने के लिए पहले विभाजन में मौजूद फ़ाइल को संपादित करें :

enable_uart=1

जैसा कि समझाया गया है: https://www.raspberrypi.org/forums/viewtopic.php?f=28&t=141195

इस पहले विभाजन में बूटलोडर, इसकी विन्यास फाइल और (लिनक्स / आपका) कर्नेल है, config.txtइनमें से एक है। दूसरे विभाजन में वास्तविक लिनक्स रूट फाइल सिस्टम है।

अब अपने कंप्यूटर को Pi से कनेक्ट करें:

यहां छवि विवरण दर्ज करें

आपको केवल 3 केबल संलग्न करने की आवश्यकता है:

  • जमीन से जमीन
  • सीरियल पोर्ट पर यूएसबी पर पीएक्स से आरएक्स पर टीएक्स
  • सीरियल पोर्ट पर टीईई यूएसबी पर पाई टू टीएक्स पर आरएक्स

यह भी यहाँ प्रलेखित है: https://www.raspberrypi.org/documentation/usage/gpio/README.md

ग्राउंड को 5 वी से लिंक नहीं करने के लिए सावधान रहें, मैंने पहले ही 2 UART को USB चिप्स से जला दिया है!

आपको 5V को 5V से जोड़ने की आवश्यकता नहीं है। मुझे लगता है कि आप अपने पाई को उस तरह से पावर कर सकते हैं, लेकिन मैंने पढ़ा है कि यह एक बुरा विचार है, बस सामान्य यूएसबी पावर स्रोत का उपयोग करें।

अंत में, कनेक्टर के USB पक्ष को अपने होस्ट कंप्यूटर पर प्लग करें, और इसके साथ एक शेल प्राप्त करें:

sudo apt install screen
sudo usermod -a -G dialout $USER
screen /dev/ttyUSB0 115200

के साथ बाहर निकलें Ctrl-A \

यहाँ Adafruit द्वारा एक वीडियो दिखाया गया है: https://www.youtube.com/watch?v=zUBPeoLW16Q


3

यदि आप डेबियन का उपयोग करते हैं, तो यह काफी आसान है अगर आप किसी मित्र से सिर्फ कुछ मिनटों के लिए अपने आरपीआई के लिए स्क्रीन और नेटवर्क उधार दे सकते हैं। यदि नहीं, तो आप केवल अपने Ubuntu होस्ट से 'nmap' और 'ssh' के लिए कमांड का परीक्षण कर सकते हैं।

बस जांचें कि पैकेज ओपनश-सर्वर स्थापित है, और आप उठ रहे हैं और जा रहे हैं। आप कमांड लाइन से ऐसा करते हैं aptitude install openssh-server। जब आप मशीन में लॉग इन होते हैं तो आप आरपीआई की जांच या नाम बदल सकते हैं। आप यह भी देख सकते हैं कि पैकेज avahi-utilsऔर avahi-daemonस्थापित हैं, बस कोशिश करें aptitude install avahi-utils

अवहि पैकेज / कार्यक्रम एपल्स प्रोटोकोल mDNS / DNS-SD को लागू करेगा, जो स्वयं उन अन्य कंप्यूटरों की घोषणा करेगा जो DNS डोमेन में कंप्यूटर के रूप में उस प्रोटोकोल का उपयोग करते हैं local। इसलिए यदि आपकी मशीन को कॉल किया जाता है rpi-machine, तो मशीन से कनेक्ट करने का प्रयास करें rpi-machine.local

आप यह देखने के लिए फ़ाइल में /etc/nsswitch.confदेख सकते हैं कि क्या आपके पास यह पंक्ति है:

hosts:          files mdns4_minimal [NOTFOUND=return] dns mdns4

आपके Apple और Ubuntu दोनों मशीन को इसे लागू करना चाहिए। आपका MS Windows 7 मशीन हालांकि ऐसा नहीं करता है। उबंटू मशीन पर आप इस कमांड को आज़मा सकते हैं:

avahi-browse --all

या

avahi-browse _ssh._tcp

फिर आपको अपने सभी मशीनों और उनकी सेवाओं को प्राप्त करना चाहिए, जैसे एसएसएच और एचटीटीपी सूचीबद्ध।

आप nmapअपनी उबंटू मशीन में पैकेज को स्थापित करने का भी प्रयास कर सकते हैं । फिर आप देख सकते हैं कि आप किस नेट पर हैं, यह ip route listदेखने के लिए कि आप किस आईपी-नेट पर हैं। मेरी मशीन पर उदाहरण के लिए मुझे कुछ ऐसा मिल सकता है (यह example.com से है, इसलिए इसका उपयोग न करें):

192.0.43.0/24 dev eth0  proto kernel  scope link  src 192.0.43.1  metric 1

मुझे बताता है कि मैं नेट पर हूं 192.0.43.0/24और राउटर हैं 192.0.43.1। इसलिए यदि आप कमांड चलाते हैं तो nmap 192.0.43.0/24अपने जाल में सभी मशीनों को खोजने की कोशिश करेंगे और बताएंगे कि कौन से पोर्ट खुले हैं। पोर्ट के लिए देखो 22/tcp, के रूप में ssh सर्वर हैं।


3

मैंने निम्न चरणों का उपयोग करते हुए स्क्रीन या कीबोर्ड के बिना अपने रास्पबेरी पीआई को सेटअप करने का प्रबंधन किया:

  1. डेबियन-पी / रास्पबियन-यूए-नेटस्टीन की नवीनतम छवि डाउनलोड करें । वर्तमान एक है raspbian-ua-netinst-v1.0.7.img.bz2। डाउनलोड की गई फ़ाइल केवल 17 एमबी की है।

  2. " Apple Pi बेकर ऐप " डाउनलोड करें और अपने एसडी कार्ड पर छवि को स्थानांतरित करने के लिए इस सॉफ़्टवेयर का उपयोग करें

    ApplePiBaker

  3. अपने पीआई में एसडी कार्ड डालें और लगभग 15 मिनट के बाद नवीनतम रस्पियन स्थापित किया जाएगा।

  4. फिंग आईफोन ऐप का उपयोग करके मैंने पीआई के आईपी की खोज की, जो मेरे मामले में है 192.168.1.13

    आईपी

  5. अब मैं उस आईपी को SSH की तरह कर सकता हूं:

    # Password = raspbian
    ssh root@192.168.1.13 
    

और वोइला I थकाऊ कॉन्फ़िगरेशन किए बिना SSH के माध्यम से उपयोग करता है।

FYI करें: raspbian-ua-netinstअधिक उन्नत कॉन्फ़िगरेशन प्रदान करता है, इसलिए यदि आप उन आरंभिक सेटिंग्स में से कुछ को समायोजित करना चाहते हैं तो Readme की जाँच करें।

ssh का उपयोग


2

प्रारंभिक कॉन्फ़िगरेशन के बाद कनेक्ट करने के सर्वोत्तम तरीकों में से एक अवधी-डेमॉन को प्राप्त करना और रास्पबेरी पाई पर चलना है।

एक बार जब आप होस्ट कंप्यूटर पर रास्पबेरी पाई और बोनजोर पर अवही-डेमॉन स्थापित कर लेते हैं, तो आप होस्टनाम के रूप में रास्पबेरीपी.लोक का उपयोग करके लॉग इन कर सकते हैं । तो आईपी ​​पते को स्थिर या गतिशील रूप से कॉन्फ़िगर करने की कोई आवश्यकता नहीं है

रास्पबेरी पाई पर अवही-डेमॉन स्थापित करने के लिए:

sudo apt-get update
sudo apt-get install libnss-mdns

और अगर आपके पास आईट्यून मेजबान कंप्यूटर पर स्थापित है, तो बस में प्रवेश raspberrypi.local में पुट्टी , और से Bonjour स्थापित यहाँ । अधिक जानकारी के लिए इस ट्यूटोरियल की जाँच करें


2

आप raspbian-ua-netinstएक कोशिश देना चाह सकते हैं : आप इसे यहां क्लिक करके पा सकते हैं। यह रास्पबेरी पाई मॉडल 1 बी, 1 बी + और 2 बी के लिए न्यूनतम रास्पियन अनअटेंडेड नेटस्टाइकर है। कोई स्क्रीन या कीबोर्ड की आवश्यकता नहीं है। वे में एक उत्कृष्ट स्थापना मैनुअल है README.md

अनिवार्य रूप से, आप सिर्फ एक एसडी-कार्ड को FAT- स्वरूपित करते हैं। उस पर नवीनतम स्थिर रिलीज खोलना और अपने रास्पबेरी पाई में एसडी-कार्ड डालें। न्यूनतम रास्पियन इंस्टॉलेशन को स्थापित करने में लगभग 20 से 30 मिनट लगते हैं और फिर आप जाने के लिए अच्छे हैं। डिफ़ॉल्ट रूप से स्थापित SSH के साथ आता है। कुछ विकल्प हैं जो आपको शुरुआती पैकेज के दौरान अतिरिक्त पैकेज और सामान स्थापित करने की अनुमति देते हैं। आप बाद में भी पैकेज जोड़ सकते हैं, जाहिर है।


2

रास्पबियन के लिए, मुझे यह ट्यूटोरियल बहुत उपयोगी लगा। इसमें वर्णित चरणों का प्रदर्शन करने के बाद, मैं अपने विंडोज 10 लैपटॉप से ​​अपने रास्पबेरी पीआई को उपयोगकर्ता piऔर पासवर्ड के साथ एसएसएच करने में सक्षम था raspberry

विशेष रूप से, यहाँ प्रासंगिक हिस्सा है:

  • सुनिश्चित करें कि रास्पबेरी पाई को बंद कर दिया गया है, और एसडी-कार्ड को हटा दें।

  • एसडी-कार्ड को एक कार्ड रीडर में डालें और इसे अपने लैपटॉप में प्लग करें।

  • ड्राइव का पता लगाएं और आपको कार्ड पर कई फाइलें मिलनी चाहिए (ध्यान दें कि यह आपकी अपेक्षा से बहुत छोटा है क्योंकि यह केवल कार्ड का बूट सेक्शन है (बाकी छिपा हुआ है))।

  • Cmdline.txt की प्रतिलिपि बनाएँ और इसे cmdline.normal नाम दें

  • Cmdline.txt को संपादित करें और अंत में आईपी पता जोड़ें (सुनिश्चित करें कि आप कोई अतिरिक्त लाइनें नहीं जोड़ते हैं)।

नेटवर्क सेटिंग्स के लिए जहां आईपी पता स्वचालित रूप से प्राप्त किया जाता है, 169.254.XX (169.254.0.0 - 169.254.255.255) सीमा में एक पते का उपयोग करें:

ip=169.254.0.2

नेटवर्क सेटिंग्स के लिए जहां आईपी पता तय किया गया है, अंतिम पते को छोड़कर एक पते का उपयोग करें जो लैपटॉप / कंप्यूटर के पते से मेल खाता है।

ip=192.168.0.2

सुनिश्चित करें कि आप इस आईपी पते पर ध्यान दें (आपको हर बार इसकी आवश्यकता होगी जब आप सीधे रास्पबेरी पाई से जुड़ना चाहते हैं)।

  • Cmdline.txt की नई प्रतिलिपि बनाएँ और इसका नाम बदलकर cmdline.direct करें

  • कॉन्फ़िगरेशन के बीच स्वैप करने के लिए, बस cmdline.txt को या तो cmdline.normal या cmdline.direct के साथ बदलें (या विकल्प 2 में कमांड का उपयोग सीधे रास्पबेरी पाई पर करने के लिए करें - अगली बार जब आप बदलाव करेंगे तो परिवर्तन प्रभावी होगा)

  • कार्ड को रास्पबेरी पाई पर लौटाएं। कंप्यूटर और रास्पबेरी पाई और पावर अप दोनों से जुड़ी नेटवर्क केबल संलग्न करें।

ध्यान दें:

  • नेटवर्क सेटिंग्स का पता लगाने के लिए आपको अपने कंप्यूटर के लिए प्रतीक्षा करने की आवश्यकता होगी (आप अपने सिस्टम ट्रे में चमकता हुआ एक छोटा नेटवर्किंग आइकन देख सकते हैं, या जब यह समाप्त हो चुका है और आईपी पता है, तो यह देखने के लिए नेटवर्क सेटिंग्स खोलें) - इसमें लगभग 1/2 मिनट लग सकते हैं। आपका कंप्यूटर कनेक्शन को "सीमित या बिना कनेक्शन" के रूप में रिपोर्ट कर सकता है जब इस तरह से रास्पबेरी पाई से जुड़ा होता है, यह सामान्य है क्योंकि यह इंगित करता है कि यह मानक नेटवर्क के बजाय कंप्यूटर कनेक्शन के लिए एक सीधा कंप्यूटर है।

  • यदि आप भूल जाते हैं या नेटवर्क केबल में प्लग नहीं करने का निर्णय लेते हैं, तो रास्पबेरी पाई शुरू होने से पहले 2 मिनट (या जब तक आप केबल कनेक्ट नहीं करते) तक इंतजार करेंगे (इसलिए यदि आपके पास केवल एक कीबोर्ड और मॉनिटर जुड़ा हुआ है, तो आपको इंतजार करने की आवश्यकता है !)।

  • यदि आप अपने कंप्यूटर पर कई वायर्ड नेटवर्क एडेप्टर (यानी एक अतिरिक्त यूएसबी-लैन डोंगल का उपयोग कर रहे हैं) का उपयोग कर रहे हैं, तो आप पा सकते हैं कि आपको दूसरे नेटवर्क केबल को अनप्लग करना होगा और इसके बाद डायरेक्ट लिंक के माध्यम से कनेक्ट होने से पहले मेरी विंडोज एक्सपी मशीन की जरूरत होगी। )।


2

चूँकि मेरे पास कुछ अन्य पिस थे जिनसे मैं जुड़ सकता था, इसलिए मैंने धोखा दिया।

मैंने पाई से माइक्रो एसडी कार्ड लिया जो मुझे कनेक्ट नहीं होने देगा, और इसे एक यूएसबी रीडर में काम कर रहे पीई में से एक पर डाल दिया।

फिर मैंने इसे एक परीक्षण फ़ोल्डर ( sudo mount /dev/sda2 /mnt/test) में रखा, फिर chroot /mnt/testइसे नए शेल के रूप में माना।

मैंने तब SSH को सक्षम किया systemctl enable ssh। कार्ड को अनमाउंट करने के बाद बाहर निकाला, पाई को बूट किया, फिर एसएसएच पोर्ट खोला गया और सुलभ हो गया।

डेबियन पर काम करता है, मुझे यकीन है कि अन्य systemdस्टाइल सिस्टम भी हैं।

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