कैसे खरोंच से रास्पबेरी पाई के लिए कस्टम ओएस बनाने के लिए?


10

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

इसके लिए मैंने आधिकारिक गिथब से कर्नेल, टारगेट_एफ़, फ़र्मवेयर और टूल-चेन डाउनलोड किया है। मैंने उपकरण-श्रृंखला का उपयोग करके कर्नेल को संकलित किया है।

अब मुझे नहीं पता कि इसे नए sdcard में कैसे डाला जाए (नए सिरे से प्रारूपित)। अपने स्टैक को बूट करने से पहले मुझे किन बातों का ध्यान रखना है? चूँकि मैंने ssh या telnet server / Client को नहीं रखा है, मुझे कैसे पता चलेगा कि बूट सफल था। मुझे पीआई के लिए एसएचएस / टेलनेट डेमन कहां मिल सकता है? मेरा उद्देश्य रास्पबेरी पाई में केवल कर्नेल (या नंगे न्यूनतम) को बूट करना है।


2
यह एक विधर्मी कार्य है और मुझे नहीं लगता कि आपके पास अभी तक पर्याप्त अनुभव है। केवल मौजूदा वितरण को समायोजित करने और 99% समय बचाने के लिए माना जाता है?
थोरबजोरन राव एंडरसन

मुझे एहसास है कि यह थोड़ा पुराना है, हालांकि मैंने हाल ही में एमएलएल के बारे में सीखा है, जो एक न्यूनतम लिनक्स ओएस बनाने का एक और तरीका है। खुद को लिनक्स निओफाइट के रूप में मैंने इस प्रक्रिया को सीखने में एमएलएल वाद्य यंत्र पाया। मैं वर्तमान में उस प्रक्रिया पर शोध कर रहा हूं, जिसमें बिल्ड में रास्पबेरी पाई ड्राइवरों को शामिल किया जाना है। MLL minimal.linux-bg.org/#home शुभकामनाएँ!
रोब

जवाबों:


9

कर्नेल दो चीजों की अपेक्षा करता है: एक रूट फाइलसिस्टम, और एक initडेमन जो उस पर रहता है। रास्पियन के साथ शामिल init एक sysV स्टाइल सिस्टम है। आपको लगता है कि से जुड़ा नहीं है - अन्य init सिस्टम सामान्यतः linux के साथ इस्तेमाल किया (याद रखें: गिरी है linux ) कर रहे हैं systemdऔर upstart- लेकिन आप किसी प्रकार की एक init प्रणाली की जरूरत है।

आप initएक initramfs भी डाल सकते हैं और इसे कर्नेल में बनाया गया है , जिस स्थिति में आप बिना रूट सिस्टम के भाग सकते हैं, लेकिन यह इस मामले में व्यर्थ लगता है।

initकर्नेल द्वारा शुरू किया गया एकमात्र यूजरलैंड एप्लिकेशन है। आम तौर पर, यह तब प्रक्रियाओं को शुरू करता है जो एक लॉगिन के साथ ट्टी खोलते हैं, और फिर अन्य सेवाएं जो एक प्रदर्शन प्रबंधक, sshd, आदि शुरू कर सकती हैं। आपको लॉगिन की आवश्यकता नहीं हो सकती है, लेकिन आप शायद ट्टी को चाहते हैं; आप इसके बजाय सीधे sshd शुरू कर सकते हैं।

मैं पीआई के लिए एसएचएस / टेलनेट डेमन कहां प्राप्त कर सकता हूं?

यह उसी जगह से प्राप्त करें जिसे रस्पियन ने किया, अपस्ट्रीम स्रोत। इस सामान में से कोई भी विशेष रूप से पाई के लिए नहीं लिखा गया था। या कम से कम, इसके बहुत कम। यह विभिन्न प्रणालियों की एक विशाल विविधता पर उपयोग किया गया है।

यदि आप पी के लिए एक पूर्व संकलित करना चाहते हैं ... अच्छी तरह से, यह रास्पियन है, आदि 1

मुझे नहीं पता कि इसे एक नए एसडीकार्ड में कैसे डाला जाए

आपको पीआई-विशिष्ट बूटलोडर का उपयोग करना होगा जो /bootकि रास्पियन छवि के विभाजन में है।


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


1
क्विकोटिक ? आप केवल उन लोगों में से एक हैं जिन्हें मैं जानता हूं कि मेरी शब्दावली को कौन चुनौती देता है। अकेले उस के लिए +1।
Jacobm001

7

बस शुरू करने के लिए, मुझे लगता है कि आपके पास एम्बेडेड कंप्यूटर (विशेषकर रास्पबेरी पाई स्तर पर) का उपयोग करने की गलत अवधारणा है। यदि आप वास्तव में एक कस्टम ओएस बनाना चाहते हैं, तो मेरा सुझाव है कि आप लिनक्स पर स्क्रैच, LFS, http://www.linuxfromscratch.org/ से शुरू करें, लेकिन यदि आप Googling "एम्बेडेड सिस्टम", विकिपीडिया, या एंबेडेड द्वारा एम्बेडेड कंप्यूटिंग शुरुआत को समझना चाहते हैं लिनक्स विकी http://elinux.org/Main_Page


1
LFS के लिए +1। मैं एक क्रॉस-संकलन सेटिंग में हालांकि ऐसा करना चाहता हूं!
गोल्डीलॉक्स

-1

मुझे भी यही समस्या थी। मैंने उस उद्देश्य के लिए, शेल स्क्रिप्ट का एक संग्रह बनाया।

http://www.dettus.net/detLFS


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