लिनक्स पर GNU कोरुटिल्स को बदलने का कोई विकल्प?


20

मैं अपने लिनक्स सिस्टम पर GNU Coreutils का उपयोग बंद करने के बारे में सोच रहा हूं, लेकिन ईमानदार होने के लिए, कई अन्य GNU घटकों के विपरीत, मैं किसी भी विकल्प (लिनक्स पर) के बारे में नहीं सोच सकता । GNU कोरुटिल्स के क्या विकल्प हैं? क्या मुझे एक से अधिक पैकेज की आवश्यकता होगी? परियोजना के लिंक एक चाहिए, दूर के संकुल के नामकरण के लिए बोनस अंक।

जब तक आप जानते हैं कि वे लिनक्स पर काम करते हैं, और निर्देशों का संदर्भ दे सकते हैं, तब तक कृपया चीजों का सुझाव न दें । मुझे संदेह है कि मैं गुठली को जल्द ही बदल दूंगा, और मैं किसी भी चीज के लिए बहुत ज्यादा आलसी हूं, जो सीधा-साधा है ./configure; make; make install। मैं निश्चित रूप से इसके लिए सी हैक नहीं करने जा रहा हूं।

चेतावनी: यदि आपके डिस्ट्रो को हटाने वाले कोर्यूटिल्स का उपयोग करता है, तो आपके डिस्ट्रो फ़ंक्शंस को तोड़ सकता है। हालांकि, उन्हें नहीं होने से आपकी $PATHचीजों को पहले नहीं तोड़ना चाहिए, क्योंकि अधिकांश लिपियों को निरपेक्ष पथ का उपयोग करना चाहिए।


10
उत्सुकता से, आप विकल्प क्यों तलाश रहे हैं?
tshepang

2
@xeno "अधिक मजबूत"? यह भी ध्यान रखें कि आपका सिस्टम (कर्नेल सहित) काफी हद तक GCC के साथ बनाया गया है और GLibC :) पर निर्भर करता है
tshepang

3
@xeno डेबियन वास्तव में अब EGLIBC का उपयोग कर रहा है , जो GLibC के कांटे की तरह है। लेकिन यह GLibC को बारीकी से फॉलो करता है, इसलिए यह इतना बड़ा नहीं है।
tshepang

2
Clang और tcc दोनों (एक समय में, वैसे भी) Linux कर्नेल को संकलित कर सकते हैं।
शॉन जे। गोफ

2
बीएसडी कर्नेल पर एक GNU उपयोगकर्ताभूमि पर काम करने वाले लोग हैं , लेकिन मैंने दूसरे तरीके के दौर के बारे में नहीं सुना है। वास्तव में गुठली स्विच करना आसान होगा। यदि आप शर्मीले हैं तो आप इसे पहले वीएम में आज़मा सकते हैं।
गाइल्स का SO- बुराई पर रोक '21

जवाबों:


15

busybox एंबेडेड लिनक्स सिस्टम का पसंदीदा।

बिजीबॉक्स एक छोटे से निष्पादन योग्य में कई आम यूनिक्स उपयोगिताओं के छोटे संस्करणों को जोड़ती है। यह उन अधिकांश उपयोगिताओं के लिए प्रतिस्थापन प्रदान करता है जो आप आमतौर पर जीएनयू फाइलुटिल, शेल्यूटिल आदि में पाते हैं। बिजीबॉक्स में उपयोगिताओं में आम तौर पर उनके पूर्ण-चित्रित जीएनयू चचेरे भाई की तुलना में कम विकल्प होते हैं; हालाँकि, जो विकल्प शामिल हैं, वे अपेक्षित कार्यक्षमता प्रदान करते हैं और उनके GNU समकक्षों की तरह बहुत व्यवहार करते हैं। बिजीबॉक्स किसी भी छोटे या एम्बेडेड सिस्टम के लिए काफी संपूर्ण वातावरण प्रदान करता है।
बिजीबॉक्स को आकार-अनुकूलन और सीमित संसाधनों को ध्यान में रखकर लिखा गया है। यह बेहद मॉड्यूलर भी है इसलिए आप संकलन समय पर आसानी से कमांड (या फीचर्स) को शामिल या बाहर कर सकते हैं। इससे आपके एम्बेडेड सिस्टम को कस्टमाइज़ करना आसान हो जाता है। एक कार्य प्रणाली बनाने के लिए, बस / dev में कुछ डिवाइस नोड्स जोड़ें, कुछ विन्यास फाइल / etc, और एक लिनक्स कर्नेल।

आप बहुत अधिक किसी भी कोरुटिल नाम को बिजीबॉक्स बाइनरी का लिंक बना सकते हैं और यह काम करेगा। आप भी दौड़ सकते हैं busybox <command>और यह काम करेगा। उदाहरण: यदि आप जेंटू में हैं और viआपने अभी तक स्थापित नहीं किया है, तो आप चला सकते हैं busybox vi filenameऔर आप vi में रहेंगे। आईटी इस


अपने डिस्ट्रो के लिंक के साथ इसे संशोधित करने के लिए स्वतंत्र महसूस करें
xenoterracide

इसके अलावा, यह एम्बेडेड पर एक पसंदीदा है, इसलिए हालांकि यह एक विकल्प है जो शायद मेरे डेस्कटॉप / सर्वर वातावरण के लिए GNU को बदलने के लिए पर्याप्त नहीं है
xenoterracide

यदि आप सी को हैक नहीं करना चाहते हैं तो यह एकमात्र व्यावहारिक समाधान है, और व्यस्त संस्करण बहुत मानक अनुरूप होना चाहिए।
मैक्सक्लेपजिग

5

यह एक पुराना विषय है, मुझे एहसास है। हालाँकि, इस समाधान का कभी उल्लेख नहीं किया गया और "लिनक्स विथ बीएसडी यूजरलैंड" के लिए Google पर अपेक्षाकृत अधिक वृद्धि हुई।

एक और उपाय है: हिरलूम। मुझे पता है कि यह आर्क पर काम करता है, और इसे AUR में पैक किया जाता है (उदाहरण के लिए, gnu2sysv देखें)। यह आर्क के कोरूटिल्स पैकेज को प्रतिस्थापित करेगा और हीरोमॉम समकक्षों को प्रदान करेगा। आप आर्क के विकी पर पूरी बात के बारे में पढ़ सकते हैं: https://wiki.archlinux.org/index.php/Base2heirloom


2

की जाँच करें uutils

यह GNU कोरुटिल्स का एक क्रॉस प्लेटफॉर्म कार्यान्वयन है जो रस्ट में लिखा गया है। यह एमआईटी लाइसेंस प्राप्त है। इस उत्तर को लिखने के समय यह 100 time पूर्ण नहीं है (कुछ महत्वपूर्ण लोगों को पसंद करता है lsऔर cp) लापता है , लेकिन कई अन्य भी किए जाते हैं।


0

मुझे संदेह है कि आपको GNU Coreutils से छुटकारा पाने में मुश्किल समय होगा, हालांकि, हमेशा बराबर BSD उपकरण होते हैं, हालांकि वे GNU टूल के लिए ड्रॉप-इन प्रतिस्थापन में नहीं होते हैं।


मैं लिनक्स डिस्ट्रो पर बीएसडी टूल कैसे स्थापित करूंगा? मैं उन्हें कहाँ मिलेगा?
xenoterracide

FreeBSD का पूरा OS CVS freebsd.org/cgi/cvsweb.cgi/src के माध्यम से उपलब्ध है , हालांकि, बीएसडी उपयोगकर्ता को लिनक्स कर्नेल के तहत संकलन करने के लिए प्राप्त करना मुश्किल होगा। जीएनयू का यूजरलैंड संभवतः बीएसडी की तुलना में अधिक पोर्टेबल है, क्योंकि जीएनयू के यूजरलैंड (शुरुआत में कम से कम) कई गुठली के बीच पोर्टेबल होने के लिए बनाया गया था।
jsbillings

यह पीटीए की तरह लगता है, यकीन है कि अगर यह संभव है तो किसी ने कहीं इसे कम से कम एक बार लिनक्स के लिए पैक किया है।
xenoterracide

सोलारिस (140-कुछ भी उपलब्ध है) भी एक विकल्प होगा। अगर आप डिस्ट्रो का इस्तेमाल कर रहे हैं तो आप पागल हैं। अब बंद करो। यदि आप LFS का उपयोग कर रहे हैं , तो रॉक करें! मज़े करो! अगर आप डिस्ट्रो कर रहे हैं, तो मैं आपकी बहादुरी को सराहता हूं।
बहमट

हाँ, मुझे यकीन नहीं है कि यह भी संभव है। शायद FreeBSD को स्थापित करना और लिनक्स संगतता को सक्षम करना आसान होगा। आप आसानी से फ्रीबीएसडी के तहत काम करने वाले GNU कोरट्यूट मिल सकते हैं, लेकिन इसके विपरीत नहीं।
jsbillings 16

0

आमतौर पर, जब कोई व्यक्ति किसी ऐसे चीज़ से दूर होने के लिए कहता है, जिसका कई प्लेटफ़ॉर्म पर अच्छी तरह से परीक्षण किया गया हो, तो सत्यापित किया जाता है, यह "कोड गंध" और "तकनीकी ऋण" या "कोड" के अनियंत्रित संचय के रूप में एक अंतर्निहित समस्या का एक बाहरी अभिव्यक्ति है। का कर्ज"। जीएनयू संग्रह ने वर्षों में कोड ऋण की एक बड़ी मात्रा का निर्माण किया था, और जब एक कोडबेस को ठीक से बनाए नहीं रखा जाता है तो यह एक ब्रेकिंग पॉइंट (विरासत कोड, और यहां तक ​​कि रुग्ण विरासत कोड) तक पहुंच सकता है।

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

मेरा सुझाव वास्तव में और रिफ्लेक्टर कोरुटिल्स में जाना है। किसी का यह करना होगा। और जो कोई भी कोरूटिल्स को बदलने का मुद्दा उठाता है - आपका विचार आपकी परियोजना।

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

अधिकांश उपयोगिताओं में पहले से ही परीक्षण सूट होना चाहिए, इसलिए सत्यापन प्रगतिशील चरण-वार बदलाव + स्वचालित प्रतिगमन परीक्षण चरणों के साथ किया जा सकता है; जो बहुत तेजी से जा सकता है (जैसे 10 या अधिक संशोधन अपडेट / दिन)। इस प्रक्रिया की एक जटिलता तब होती है जब सॉफ़्टवेयर सूट में कहीं भी हार्डवेयर या निम्न-स्तरीय सॉफ़्टवेयर निर्भरताएँ होती हैं; चूँकि यह कई प्लेटफ़ॉर्म पर सत्यापन को लागू करता है। मुझे इतना पता नहीं है कि कोरुटिल्स में है; हार्डवेयर या निम्न-स्तरीय सॉफ़्टवेयर परतों से इसमें किसी प्रकार का अलगाव होना चाहिए (उदाहरण के लिए उन स्थानों की संख्या जहाँ कोरुटिल्स किस प्रकार का हैफाइल सिस्टम इस पर न्यूनतम या बेहतर, शून्य होना चाहिए। एमुलेटर और वर्चुअल मशीन, मल्टी-प्लेटफ़ॉर्म टेस्टिंग करने के प्रयोजनों के लिए उपयोग करने के लिए, सीमाएँ हैं। उदाहरण के लिए, मैक ओएस एक्स को विशेष रूप से इसे अनुकरण या वीएम की क्षमता में बाधा के लिए बनाया गया है।


-1

सोलारिस (svn_140- कुछ के रूप में) भी एक विकल्प होगा।

अगर आप डिस्ट्रो का इस्तेमाल कर रहे हैं तो आप पागल हैं। अब बंद करो। मनोरोग विशेषज्ञ की मदद लें।

यदि आप LFS का उपयोग कर रहे हैं , तो रॉक ऑन करें! मज़े करो!

अगर आप डिस्ट्रो कर रहे हैं, तो मैं आपकी बहादुरी को सराहता हूं।


1
यह "मैं कौन से डिस्ट्रो" का उपयोग कर सकता हूं, इसके बारे में कोई सवाल नहीं है, यह लिनक्स पर कोर्यूटिल्स को बदलने के बारे में है। जब तक आप ओप्‍लेरोरिसिस कोरुटिल्‍स का जिक्र नहीं करते हैं? यह भी FreeBSD विकल्प की तुलना में PITA से कम है?
xenoterracide

1
ओपनसोलारिस का स्रोत कोड सिर्फ सोलारिस है। CDD के तहत Sun / Oracle द्वारा svn_14x तक सोलारिस स्रोत कोड जारी किया गया था। यूनिक्स यूजरलैंड के लिए मूल रूप से तीन मुख्य हेरिटेज हैं। "जेनेटिक" यूनिक्स (Solaris, AIX, True64, आदि, जो AT & T कोड से आया है और काफी हद तक बंद है, लेकिन Solaris एक समय के लिए खुला था), BSD (जो अंत में यह 4.4-लाइट के रूप में खड़ा था) और GNU। लेकिन मुझे लगता है कि जीएनयू से दूर जाना उतना ही मुश्किल (या आसान) होगा जितना आप बीएसडी या सोलारिस के साथ जाते हैं। या आप वास्तव में महत्वाकांक्षी हो सकते हैं और xenocore-utils बना सकते हैं ;-)
bahamat
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.