क्या मैं एक और रास्पबेरी पाई पर तैनाती के लिए अपने पूरे रास्पबेरी पाई को क्लोन कर सकता हूं?


12

मुझे यकीन नहीं है कि सभी "अपने एसडी कार्ड का बैकअप कैसे लें" विषय वह है जो मैं पूछ रहा हूं ... लेकिन यहां हम जाते हैं :)

क्या कोई ऐसा तरीका है जिससे मैं अपने रास्पबेरी पाई का 100% क्लोन बना सकता हूं और बस इसे दूसरे रास्पबेरी पाई पर तैनात कर सकता हूं? तो मेरे पास दो बिल्कुल समान प्रतियां हैं ... या क्या यह एसडी कार्ड का उपयोग करके अंतर्निहित dd कमांड का उपयोग करके किया जाता है ?

मैं जो कारण पूछ रहा हूं वह यह है कि मेरे रास्पबेरी पाई को पूरी तरह से अपाचे , पीएचपी और कुछ अन्य पुस्तकालयों के साथ कॉन्फ़िगर किया गया है और अब मैं ठीक उसी कॉन्फ़िगरेशन के साथ इसका एक और क्लोन चाहता हूं, आदि।

क्या यह संभव है या मैंने अपने प्रश्न का उत्तर दिया है?


मुझे आश्चर्य है कि अब तक piclone का उल्लेख नहीं किया गया है। मेरे लिए यह है कि rpi पर sd कार्ड की क्लोनिंग का सबसे सीधा तरीका है, और nvere को इससे समस्या थी। मैंने पहले से ही इस प्रश्न का उत्तर दिया है, इसलिए यहाँ कुछ और विवरणों के साथ उत्तर का लिंक दिया गया है: raspberrypi.stackexchange.com/questions/66824/…। आशा है कि यह मदद करता है।
LecauseAndThePi

मैं कहीं भी पिकलोन डाउनलोड नहीं कर पाया
एलिया वीस

आप इसे डाउनलोड करने के लिए उत्सुक नहीं हैं, यह पहले से ही वहां है। टर्मिनल में बस पिकलोन टाइप करें, और यह GUI लॉन्च करेगा।
LecauseAndThePi

जवाबों:


9

@naboovalley:

मान लें कि निम्न परिदृश्य:

  • अपने रास्पबेरी पाई पर, एक टर्मिनल पर जाएं और फिर / देव निर्देशिका पर जाएं। आपको अन्य उपकरणों, mmcblk0, mmcblk0p1 और mmcblk0p2 के बीच में देखना चाहिए।
  • mmcblk0 "नंगे" SD कार्ड डिवाइस है, जबकि mmcblk0p1 उस SD कार्ड का पहला विभाजन है जिसमें कर्नेल छवि है और इसी तरह और mmcblk0p2 रूट फ़ाइल सिस्टम वाले उस SD कार्ड का दूसरा विभाजन है।
  • अपने रास्पबेरी पाई को एक सभ्य तरीके से बंद करें (कमांड "शटडाउन" टाइप करें, संभवतः रूट के रूप में)
  • एसडी कार्ड को दूसरी लिनक्स मशीन में डालें। आम तौर पर, उपर्युक्त निर्देशिकाओं को स्वचालित रूप से / मीडिया / पर माउंट किया जाना चाहिए और वहां 2 उपनिर्देशिकाएं होनी चाहिए (एक एसडी कार्ड के विभाजन 1 के लिए, एक एसडी कार्ड के विभाजन 2 के लिए)
  • आपने अपने एसडी कार्ड की सामग्री को कॉपी करने के लिए एक अस्थायी निर्देशिका बनाई है। कहते हैं:~/tmp
  • आप में स्थित हैं ~/tmp

अब आप निम्न rsync आदेश जारी करके पहले विभाजन o fthe मूल मूल SD कार्ड की सामग्री की प्रतिलिपि बना सकते हैं:

rsync -avn /media/<user>/<partition1> .

है एक डाल /अंत में! उपरोक्त कमांड "ड्राई रन" होगा, जिसका अर्थ है कि यह आपको दिखाएगा कि यह अंततः क्या करेगा, लेकिन इसे वास्तविक के लिए निष्पादित नहीं करेगा।

वास्तविक के लिए निष्पादित करने के लिए (आपके द्वारा पुष्टि किए जाने के बाद कि सूखा रन वही कर रहा है जो उसे करना चाहिए), आप nऊपर दिए गए आदेश (इसलिए, rsync -av /media/<user>/<partition1> .) से निकाल सकते हैं ।

दूसरे विभाजन के लिए समान कमांड का उपयोग करें।

अब आपके पास अपने लिनक्स मशीन पर अपने मूल एसडी कार्ड की एक सटीक प्रति होनी चाहिए।

मूल एसडी कार्ड निकालें, अपने लिनक्स मशीन में एक और - सही रूप से प्रारूपित - एसडी कार्ड डालें और निम्नलिखित rsync कमांड निष्पादित करें:

rsync -avn <partition1> /media/<user>

यह फिर से एक सूखी रन है, जो आप दिखाना चाहिए की सामग्री है कि है <partition1>में /media/<user>एसडी कार्ड में कॉपी किया जायेगा।

एक बार जब आप पुष्टि कर लेते हैं कि सब ठीक है, तो आप फिर nसे rsyncकमांड से हटा सकते हैं ।

दूसरे विभाजन के लिए भी यही करें।

यह आपको अन्य एसडी कार्ड पर मूल एसडी कार्ड की एक सटीक प्रतिलिपि देना चाहिए।

नोट: मैंने इन सभी को लुबंटू मशीन पर चेक किया। अन्य लिनक्स डिस्ट्रो पर निर्देशिकाएँ और नाम अलग-अलग हो सकते हैं।

यह भी ध्यान दें कि आपस < >में आइटम प्लेसहोल्डर हैं और आपको खुद ही देखना होगा कि वे आपके पर्यावरण से कैसे मेल खाते हैं।


उत्तम। धन्यवाद! क्या आप जिस तरह का वर्णन करते हैं, क्या "dd" कॉपी वही करेगा या rsync बहुत बेहतर है एक पूर्ण प्रणाली की तरह जिस तरह से मैं इसे चाहता हूँ?
naboovalley

मेरे पास ddकमांड के साथ बहुत अधिक अनुभव नहीं है , इसलिए मैं नहीं बता सकता, क्षमा करें ...
GeertVc

मुझे पूरी तरह से वह हिस्सा नहीं मिला जहां आप कहते हैं "- सही ढंग से स्वरूपित - एसडी कार्ड"। क्या हमें वसा कार्ड और एक्सटी 4 विभाजन को ठीक से आकार देने के लिए एसडी कार्ड को पूर्व स्वरूप देना है? धन्यवाद
रोमेन विन्सेंट

7

हां, आप एक कार्ड से दूसरे कार्ड में एक सटीक छवि लेने के लिए विंडोज पर Win32 डिस्क इमेजर का उपयोग ddया उपयोग कर सकते हैं । हालाँकि, इसे व्यावहारिक बनाने के लिए गंतव्य कार्ड का आकार एक जैसा होना चाहिए या बड़ा होना चाहिए।

आप केवल अपने स्रोत फ़ाइल सिस्टम की सभी फ़ाइलों को गंतव्य फ़ाइल सिस्टम पर कॉपी कर सकते हैं। यही है, अपने गंतव्य कार्ड को USB कार्ड रीडर में प्लग करें और अपने स्रोत रास्पबेरी पाई में चिपका दें। तब SSH और उचित कॉपी कमांड जारी करता है।

एक बात को भी ध्यान में रखें, अगर आपने MPEG-2 या VC-1 के हार्डवेयर डिकोडिंग के लिए लाइसेंस कुंजी खरीदी है । ये आपके हार्डवेयर से बंधे हैं, इसलिए आपको यह सुनिश्चित करने की आवश्यकता होगी कि आप अपनी प्रति पर /boot/config.txt को संपादित करें ।


तो एसडी-कार्ड सभी सिस्टम विशिष्ट फ़ाइलों और स्थापित पुस्तकालयों को रखता है? R-Pi # 2 में SD-कार्ड की क्लोन कॉपी में प्लगिंग करते समय मुझे कोई इंस्टॉलेशन कमांड चलाने की आवश्यकता नहीं होगी?
नाबोवलेले

2
यह एसएसएच कुंजी और आईपी पते के साथ मुद्दों को भी प्रस्तुत कर सकता है।
स्टीव रोबिलार्ड

तो R-Pi # 2 पर यह सोच सकता है कि IP- पता R-Pi # 1 के समान है? मुझे लगता है कि मैं सिर्फ एक नया नेटवर्क आईपी पाने के लिए इसे ताज़ा कर सकता हूं?
नाबोवलेले

यदि आप डीएचसीपी का उपयोग कर रहे हैं, तो आरपीआई को बूट पर स्वचालित रूप से एक नया आईपी प्राप्त होगा, लेकिन यदि आप एक ही सबनेट में दोनों का उपयोग करने की योजना बनाते हैं, तो आपको होस्टनाम बदलना चाहिए। यदि आप एक निश्चित आईपी का उपयोग करते हैं, तो आपको आईपी और होस्टनाम दोनों को बदलना चाहिए
रॉबर्टो

अगर मैं अपने फाइलसिस्टम ("df") को देखता हूं, तो मेरे पास "rootfs" 2.1GB और / dev / रूट 2.1GB - कुछ है जो मेरा / dev / mmcblk0 sd-card केवल 10M लेता है। तो जब मैं "mmcblk0" की नकल करता हूं तो मेरा पूरा सिस्टम शामिल हो जाएगा? धन्यवाद दोस्तों
naboovalley

6

आप सिर्फ dd के साथ @ me-- के रूप में कॉपी कर सकते हैं , लेकिन यह बताता है कि सिस्टम क्लोनिंग करते समय आपको यह सब नहीं करना है। कुछ विशिष्ट प्रणाली पहचानकर्ता हैं जिन्हें भी बदला जाना चाहिए।

पासवर्ड रीसेट किया जाना चाहिए ताकि एक नया नमक उपयोग किया जाए। यह लोगों को यह जानने से रोकता है कि आपने एक ही पासवर्ड का दो बार उपयोग किया है। passwdअपने उपयोगकर्ता (आमतौर पर पाई ) और रूट के रूप में दोनों कमांड को चलाएं ।

यदि आप SSH का उपयोग करते हैं, तो SSH कुंजियों को फिर से उत्पन्न किया जाना चाहिए। यह उदाहरण के लिए महत्वपूर्ण है, यह सुनिश्चित करने के लिए कि यदि कोई एक रास्पबेरी पाई चुराता है तो वे दूसरे को संचार डिक्रिप्ट नहीं कर सकते हैं। बस इस कमांड को चलाएं:

sudo rm /etc/ssh/ssh_host_*

अंत में और सबसे महत्वपूर्ण बात, आपको होस्टनाम बदलने की आवश्यकता है। यदि यह अपने डिफ़ॉल्ट पर है तो यह रास्पबेरी है । यदि आप मेरे जैसे हैं, तो मैं रास्पबेरी पाई के होस्ट नाम पर हस्ताक्षर करता हूं, इसलिए मैं करता हूं ssh raspberrypi। नेटवर्क पर दो "रास्पबेरीपिस" होने से काम करना बंद हो जाता है, इसलिए उदाहरण के लिए दूसरे को रास्पबेरीपी 2 नाम दिया जाना चाहिए । आप इस परिवर्तन को sudo raspi-configचुन सकते हैं , चयन कर सकते हैं Advanced Optionsऔर फिर चयन कर सकते हैं Hostname


raspi-configRaspbmc के लिए उपलब्ध नहीं है । शायद मेजबान नाम सेट करने का एक मैनुअल तरीका वर्णित किया जाना चाहिए?
पीटर मोर्टेनसेन


संदर्भ के लिए, raspberrypi.stackexchange.com/questions/3926/… रास्पैम के तहत होस्टनाम को बदलते हुए कवर करता है।
फ्रेड

4

एक माइक्रो एसडी को बैकअप के लिए क्लोन करना या अपने सिस्टम को दूसरे RPi3 में ले जाने के लिए एक एक्सेसरी के रूप में बनाया गया है, कम से कम ऑपरेटिंग सिस्टम के संस्करण पर जो मुझे NOOBS स्टार्टअप एसडी पर मिला है:

  • सामान पर जाएं;
  • हिट कॉपी SD ;
  • एक USB धारक में एक खाली माइक्रो एसडी रखें;
  • खुले USB स्लॉट में प्लेस होल्डर;
  • नया एसडी चुनें;
  • कॉपी मारा।

यह सही उत्तर होना चाहिए। इतना आसान।
जॉर्डन

1

आप बिल्कुल ऐसा कर सकते हैं कि रास्पबेरी पाई और यूएसबी के माध्यम से जुड़े एक नए आदर्श वाक्य एसडी कार्ड का उपयोग कर सकते हैं। रास्पबेरी पाई सॉफ्टवेयर के नवीनतम संस्करण में एक बिल्टिन सॉफ्टवेयर है, जो सामान के तहत एसडी कार्डकोपर कहा जाता है जो वास्तव में ऐसा करता है।

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


0

रूट फाइल सिस्टम (लिंक के कारण जो रूट फाइल सिस्टम में मौजूद हैं) जैसी चीजों को कॉपी करने के लिए एक बहुत ही सुरक्षित और विश्वसनीय उपकरण है rsync। यह उपकरण टाइमस्टैम्प, लिंक, अनुमतियां जैसी सभी आवश्यक चीजों को ध्यान में रखेगा ... सामान की प्रतिलिपि बनाने के लिए पूरी तरह से अनुकूल है जैसे आप करना चाहते हैं।


लेकिन मैं अभी भी पूर्ण प्रणाली डुप्लिकेट के लिए केवल एसडी-कार्ड सामग्री की प्रतिलिपि बनाता हूं - या क्या मुझे कुछ और शामिल करने की आवश्यकता है? धन्यवाद
naboovalley

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