यदि लिनक्स केवल एक कर्नेल है, तो इसके पहले संस्करणों का उपयोग कैसे किया गया (वितरण के बिना)?


112

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


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

9
वास्तव में, सभ्य विशिष्ट उपयोगकर्ता भूमि उपकरणों की कमी के लिए, भिखारी में चिकन और अंडे की समस्या अधिक थी। एक बार MCC Interim Linux के पीछे वाले व्यक्ति ने उस अंडे को फटा, और खुद कई उपकरण लिखे, कम से कम fdisk, दूसरों के लिए आसानी से अपने स्वयं के लिनक्स सेटअप को आगे रखने के लिए दरवाजा खुला था।
रुई एफ रिबेरो



जवाबों:


162

लिनक्स के शुरुआती चरणों में, लिनस टॉर्वाल्ड्स ने दूसरों को संकेत देने के लिए लिनक्स कर्नेल स्रोत को एक अल्फा राज्य में जारी किया जो कि एक नए यूनिक्स-जैसे कर्नेल की दिशा में काम कर रहा था। उस समय तक, जैसा @RalfFriedi ने कहा, लिनक्स कर्नेल मिनिक्स में क्रॉस-संकलित किया गया था।

प्रयोग करने योग्य सॉफ़्टवेयर के रूप में, लिनस टॉर्वाल्ड्स ने लिनक्स कर्नेल के साथ वितरित करने के लिए उपयोगिताओं को भी चित्रित किया ताकि दूसरों को इसका परीक्षण करने के लिए। ये कार्यक्रम मुख्य रूप से bashऔर gcc, जैसा कि लिनस टॉर्वाल्ड्स द्वारा लिनक्स के इतिहास द्वारा वर्णित है । यूज़नेट पोस्ट के अनुसार :

प्रेषक: torvalds@klaava.Helsinki.FI (लीनस बेनेडिक्ट टॉर्वाल्ड्स)  
समाचार समूह: comp.os.minix
विषय: आप मिनिक्स में सबसे ज्यादा क्या देखना चाहेंगे?
सारांश: मेरे नए ऑपरेटिंग सिस्टम के लिए छोटा पोल  
संदेश-आईडी: <1991Aug25.205708.9541@klaava.Helsinki.FI>
दिनांक: 25 अगस्त 91 20:57:08 GMT
संगठन: हेलसिंकी विश्वविद्यालय

नमस्कार का उपयोग करते हुए सभी को नमस्कार -

मैं ३ for६ (४ 38६) क्लोन के लिए एक नि: शुल्क (मुक्त) ऑपरेटिंग सिस्टम (बस एक शौक नहीं, विष्णु की तरह बड़ा और पेशेवर होगा) कर रहा हूं। अप्रैल के बाद से यह पक रहा है, और तैयार होना शुरू हो रहा है। मैं लोगों को / minix में नापसंद जैसी चीजों पर कोई प्रतिक्रिया चाहता हूं, क्योंकि मेरा OS इसे कुछ हद तक समान है
(फाइल-सिस्टम का एक ही भौतिक लेआउट (व्यावहारिक कारणों से) अन्य चीजों के बीच)।

मैंने वर्तमान में bash (1.08) और gcc (1.40) पोर्ट किया है, और चीजें काम करने लगती हैं। इसका तात्पर्य है कि मुझे कुछ महीनों के भीतर कुछ व्यावहारिक मिल जाएगा, और मैं जानना चाहूंगा कि ज्यादातर लोग क्या सुविधाएँ चाहते हैं। किसी भी सुझाव का स्वागत करते हैं, लेकिन मैं वादा नहीं करता कि मैं उन्हें लागू करेंगे :-)

लाइनस ने उपयोगकर्ताओं के लिए डिस्कनेट प्रारूप में कर्नेल और कोर यूटिलिटी प्रोग्रामों को वितरित करने की कोशिश की और संभवतः इसमें योगदान करने के लिए वितरित किया।

बाद में, एचजे लू के बूट-रूट फ्लॉपी डिस्केट्स थे। यदि इसे एक वितरण कहा जा सकता है, तो यह हार्ड डिस्क पर स्थापित होने में सक्षम पहला वितरण होने की प्रसिद्धि प्राप्त करेगा।

ये दो 5ernel "डिस्केट छवियां थीं जिनमें लिनक्स कर्नेल और आरंभ करने के लिए आवश्यक न्यूनतम उपकरण थे। इसलिए न्यूनतम ये उपकरण थे जो एक हार्ड ड्राइव से बूट करने में सक्षम होने के लिए एक हेक्स संपादक के साथ अपने मास्टर बूट रिकॉर्ड को संपादित करने की आवश्यकता थी।

bootroot

अंततः उपयोगिताओं की संख्या एक डिस्केट के अधिकतम आकार से बड़ी हो गई।

MCC इंटरिम लिनक्स पहला लिनक्स वितरण था जिसका उपयोग लोग थोड़े कम तकनीकी कौशल के साथ करते थे, जैसे कि एक स्वचालित इंस्टॉलेशन और नई उपयोगिताओं को शुरू करना fdisk

एमसीसी इंटरिम लिनक्स पहली बार फरवरी 1992 में मैनचेस्टर कम्प्यूटिंग सेंटर (एमसीसी) के ओवेन ले ब्लैंक द्वारा मैनचेस्टर विश्वविद्यालय के हिस्से में जारी लिनक्स वितरण था।

MCC इंटरिम लिनक्स की पहली रिलीज़ लिनक्स 0.12 पर आधारित थी और थिओडोर Ts'o के रैमडिस्क कोड का उपयोग करके मेमोरी के लिए एक छोटी रूट इमेज कॉपी करने के लिए अतिरिक्त उपयोगिताओं डिस्केट के लिए फ्लॉपी ड्राइव को मुक्त कर दिया। [२]

उन्होंने यह भी कहा कि उनके वितरण "अनौपचारिक प्रयोग" थे, उनके जारी होने के लक्ष्यों का वर्णन करते हुए:

  • एक सरल स्थापना प्रक्रिया प्रदान करने के लिए।
  • अधिक पूर्ण स्थापना प्रक्रिया प्रदान करने के लिए।
  • बैकअप / रिकवरी सेवा प्रदान करने के लिए।
  • उसकी (तब) वर्तमान प्रणाली का बैकअप लेने के लिए।
  • संकलन, लिंक, और कर्नेल, gcc और पुस्तकालयों के वर्तमान संस्करणों के तहत हर बाइनरी फ़ाइल का परीक्षण करने के लिए।
  • एक स्थिर आधार प्रणाली प्रदान करने के लिए, जिसे थोड़े समय में स्थापित किया जा सकता है, और जिससे अपेक्षाकृत कम प्रयास के साथ अन्य सॉफ्टवेयर को जोड़ा जा सकता है।

MCC अग्रदूत के बाद, SLS 1992 के मई में X विंडो सिस्टम की पेशकश करने वाला पहला वितरण था। विशेष रूप से, SLS का प्रतियोगी, पौराणिक Yggdrasil , 1992 के दिसंबर में शुरू हुआ।

Yggdrasil

अन्य प्रमुख वितरकों का पालन के रूप में हम उन्हें जानते हैं, विशेष रूप से स्लैकवेयर 1993 की जुलाई (एसएलएस के आधार पर) और में डेबियन 1995 के दिसंबर में पहली आधिकारिक संस्करण 1.1 रिलीज़ होने से पहले 1993 के दिसंबर में।

छवि क्रेडिट:
* बूट / रूट डिस्केट छवि से: https://www.maketecheasier.com/
* yggdrasil डिस्केट छवि से: https://yggdrasilblog.wordpress.com/


4
सबसे मूल मूल स्रोत से उन ईमेल संदेशों को लिंक करना अच्छा होगा, यह मानते हुए कि वे कहीं ऑनलाइन संग्रहीत हैं।
वाइल्डकार्ड

2
@Wildcard ने लिनस टोरवाल्ड के पेज होने का दावा करने वाली साइट पर ईमेल संदेश पाया।
रुई एफ रिबेरो

2
@ एसएलएम वास्तव में पहले के समय से, मैं कई बार घर चला गया, और मेरे माता-पिता में भंडारण सीमित है। मेरे पास 386BSD / FreeBSD के शुरुआती डिस्कसेट थे, और लिनक्स के पूरे डिस्केट सेट के साथ एक PCworld CD 93-95 (शायद 95) था (कठबोली डिस्ट्रो याद रखें)। मुझे SCO V इंस्टॉलेशन डिस्क का पूरा सेट भी मान्य कुंजी के साथ मिलता था, जिसे मैंने अपने 486 में चलाया था। मेरे पास उस समय के लिए बहुत ही उन्नत hw स्पेक्स थे, मैंने एक कंप्यूटर प्रमुख आपूर्तिकर्ता के लिए काम किया था।
रुई एफ रिबेरो

28
"(सिर्फ एक शौक, बड़ा और पेशेवर नहीं होगा गन्नू)" हाह।
एफ। जॉर्ज

9
just a hobby, won't be big and professional like gnuओह बॉय, क्या आप गलत थे
अल्वारो

17

मेरे मामले में (c.1994) लिनक्स 3.5 "फ्लॉपीज़ (1.44MB) के लिए उपयुक्त छवियों के रूप में बनाया गया था, शायद ऊपर बताई गई 5 1/4" छवियों का अनुसरण है, और प्रत्येक में संकलित ड्राइवरों का एक विशिष्ट सेट है ( नेटवर्क, वीजीए, आदि)। इसलिए आपको यह जानना था कि आपको किस प्रकार की आवश्यकता है और आपके पास उपयुक्त हार्डवेयर है।

आपके द्वारा बूट किए जाने के बाद, या तो मॉडेम के माध्यम से LAN या डायलअप से कनेक्ट हो सकता है, फिर आप गए और आपके द्वारा आवश्यक सॉफ़्टवेयर पाया (FTP, gopher, आदि - यह "वेब" और खोज इंजन की शुरुआत में सही था वास्तव में अभी तक मौजूद है, इसलिए आपको यह जानना था कि कहां जाना है या किससे पूछना है) और इसे खुद बनाया।

जब मैं अपने 486DX बूट करने में सक्षम था और अपने विश्वविद्यालय नेटवर्क (56k!) में डायल करने और घर पर मशीन पर AFS शेयर को माउंट करने में सक्षम था, तो वे दिन थे। ;)


2
आप यह सब 1994 में मान लेते हैं, यह शायद 28.8k की तरह था ... अच्छा समय!
गिटारपरिकट

1994 में आपको फ्लॉपीज़ के साथ बाजी नहीं मारनी थी। मैंने इसी साल लिनक्स के साथ शुरुआत की थी लेकिन स्लैकवेयर पहले से ही सीडी पर पूर्ण वितरण था।
Gábor

आपको एक पत्रिका से एक सीडी खरीदनी थी। उस समय सीडी बर्नर महंगे थे। आरएच के लिए, मुझे एक शानदार साझा 256Kbps कनेक्शन में एक सप्ताह के अंत में एफ़टीपी के माध्यम से सभी फ़ाइलों को डाउनलोड करने, एक सीडी छवि बनाने और फिर काम पर सीडी को जलाने की याद है, शायद 96 के आसपास।
रुई एफ रिबेरो

@GuitarPicker, कि आशावादी हो सकता है। हम में से कई अभी भी 1200,2400 पर थे और 1992 में लिनक्स आमतौर पर एक शैक्षणिक संस्थान के पाइप से नीचे आ गया। लिनुस की तरह, हमारे इंटरनेट का उपयोग डायलअप द्वारा एक विश्वविद्यालय में किया गया था। हमारे पास यूज़नेट और गोफर थे लेकिन कोई ग्राफिकल (मोज़ेक) डब्ल्यूडब्ल्यूडब्ल्यू नहीं था। 1992 में सभी के पास '386' भी नहीं थे। मेरे पास एक ओलिवेटी M24 (एटी एंड टी) 8086 बॉक्स था जिसमें मोनोक्रोम स्क्रीन थी जो विंडोज 1 (अच्छी तरह से नहीं) चलती थी। मिनिक्स एक शौक या अकादमिक खोज थी, और स्वतंत्र नहीं थी। लिनक्स को एक बैंडविड्थ हॉग के रूप में माना जाता था, लेकिन इसमें नियमित रूप से क्षमता वृद्धि हो रही थी। प्रोग्रामर के लिए कैंपस में लिनक्स एक बड़ी बात थी।
mckenzm

12

लघु संस्करण

उस समय जब लिनुस ने अपना कर्नेल शुरू किया था, ग्नू परियोजना में एक कार्यशील कर्नेल को छोड़कर, एक ऑपरेटिंग ऑपरेटिंग सिस्टम था। इसलिए जब लोगों ने चारों ओर देखा, तो उन्हें वे सभी उपकरण मिले जिनकी उन्हें आवश्यकता थी: gcc (और मित्र: binutils), bash (और मित्र gnu-utils), emacs, ...

वे तब भागों से अपनी प्रणाली का निर्माण करेंगे।

यह वह जगह है जहां से यह मजाक आता है "यदि एमएस-विंडोज एक हवाई जहाज था, तो यह 10 हजार फीट तक चढ़ जाएगा, और फिर हर किसी को साइड में मार देगा, लेकिन कम से कम आपको प्रस्थान करने से पहले अपना विमान नहीं बनाना होगा।"


8
और यही कारण है कि अधिकांश वितरणों को जीएनयू / लिनक्स वितरण कहा जाता है , यदि आप जीएनयू और एफएसएफ का पालन करते हैं।
निमो

जीएनयू के पास अच्छा परिवाद पुस्तकालय नहीं था। पुराने दिनों में लिनक्स अलग-अलग लिबक लाइब्रेरी का उपयोग करता था। केवल अपेक्षाकृत देर से हमारे पास एक अच्छी ग्लिबक लाइब्रेरी थी। शुरुआत में मिनीक्स टूल्स का उपयोग किया गया (आंशिक रूप से GNU द्वारा निर्मित)।
जियाकोमो कैटेनाज़ी

@GiacomoCatenazzi libc के बारे में सच है। लेकिन इसमें अधिकांश उपयोगकर्ता भूमि उपकरण थे। मुझे याद है कि 1992 में Sun Solaris पर चलने के लिए GNU टूल्स का संकलन किया गया था। (मैंने तब तक लिनक्स का उपयोग शुरू नहीं किया था जब तक कि यह ग्लिबक के लिए मध्य संक्रमण नहीं था।) वे उपकरण थोड़ी देर के लिए (लिनक्स से पहले) थे।
सीटीटीएल-अल्ट-डेलोर

हाँ। मैंने भी सोलारिस के साथ शुरुआत की, सूर्य की तुलना में जीएनयू उपकरण को प्राथमिकता दी। वहाँ से मैं और अधिक चाहता था इसलिए मैं लिनक्स में चला गया (और मेरे पहले वितरण में कोई एक्स सिस्टम नहीं था। Red Hat क्लाइंट एक वाणिज्यिक X का उपयोग कर सकते हैं। केवल बाद में हमारे पास XFree86 था। ट्रू फ्री (और ज्यादातर GNU) सिस्टम में संक्रमण हो गया। कई साल (कर्नेल सिर्फ एक कदम था, लेकिन सबसे "लोकतांत्रिक" कदम [कंप्यूटर + बुनियादी यूनिक्स आखिरकार सभी के लिए (या छात्रों के लिए बेहतर) था।
जियाको कैटेनज़ज़ी

12

अपनी पुस्तक " जस्ट फ़न फ़ॉर " लिनुस टॉर्वाल्ड्स में उल्लेख किया गया है कि लिनक्स कर्नेल शुरू में एक साधारण टर्मिनल एमुलेटर को मॉडेम के माध्यम से जोड़ने के लिए एक साधारण टर्मिनल एमुलेटर था:

इसलिए अंततः मैं दो थ्रेड्स, AAAAAAAA और BBBBBBB को बदलने में सक्षम था, ताकि एक मॉडेम से पढ़े और स्क्रीन पर लिखे, और दूसरा कीबोर्ड से पढ़े और मॉडेम को लिखे। मेरा अपना टर्मिनल इम्यूलेशन प्रोग्राम था।

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

और क्योंकि मैं अपने मिनिक्स फाइल सिस्टम में फाइल सेव करना चाहता था - और क्योंकि मिनिक्स फाइल सिस्टम को वैसे भी अच्छी तरह से प्रलेखित किया गया था - मैंने अपनी फाइल सिस्टम को मिनिक्स फाइल सिस्टम के साथ संगत कर दिया ...

जब तक मैंने ऐसा किया, यह स्पष्ट था कि परियोजना एक ऑपरेटिंग सिस्टम बनने के रास्ते पर थी। इसलिए मैंने इसे एक ऑपरेटिंग सिस्टम के रूप में सोचने के लिए एक टर्मिनल एमुलेटर के रूप में अपनी सोच को स्थानांतरित कर दिया।


10

संपादित: हटाए गए कर्नेल कैसे काम करते हैं और महत्वपूर्ण भाग को कैसे छोड़ते हैं, यह समझने में शर्मनाक कमी को दूर किया।

लिनक्स कर्नेल करने से पहले GNU उपयोगकर्ता मौजूद था।

https://en.wikipedia.org/wiki/GNU

https://en.wikipedia.org/wiki/Linux_kernel

पीटर मैकडोनाल्ड को काफी हद तक पहला 'प्रयोग करने योग्य' GNU / Linux वितरण बनाने के रूप में पहचाना जाता है।

https://en.wikipedia.org/wiki/Peter_MacDonald_(computer_programmer)

https://en.wikipedia.org/wiki/Softlanding_Linux_System

कुछ चर्चाओं की स्मृति से मैं उनके साथ था: पीटर सरकार के लिए यूनिक्स सिस्टम प्रशासक के रूप में काम कर रहे थे और मास्टर्स डिग्री के लिए विक्टोरिया विश्वविद्यालय जा रहे थे। पीटर घर से काम करने का एक तरीका चाहते थे, लेकिन यूनिक्स डेस्कटॉप लाइसेंस लागत निषेधात्मक थे। वह पहले से ही GNU यूजरलैंड टूल्स से परिचित था, इसलिए जब उसने यूनिवर्सिटी नेटवर्क पर लिनुस टोरवाल्ड्स का संदेश देखा तो उसने पूरा फायदा उठाया और नए कर्नेल में GNU टूल्स को वायर कर दिया। तो वास्तव में, प्रारंभिक समस्या आपके प्रश्न का उल्टा था: उपयोगकर्ता क्षेत्र पहले से ही मौजूद था और जिसकी आवश्यकता थी वह एक कर्नेल था।

कुछ अन्य ऐतिहासिक ख़बरें:

  • पीटर ने एसएलएस लिनक्स वितरित नहीं किया और सॉफ्टवेयर के लिए शुल्क नहीं लिया। एसएलएस को उनकी पत्नी कोलीन द्वारा वितरित किया गया था और यह शुल्क सीडी को जलाने की महंगी और समय लेने वाली प्रक्रिया के लिए था।
  • पीटर ने कर्नेल के लिए कई विशाल योगदान दिए जिन्हें गतिशील मॉड्यूल लोडिंग और बेहतर मेमोरी प्रबंधन सहित कभी स्वीकार नहीं किया गया है।
  • सॉफ्टवेयर 'छोटी गाड़ी' था क्योंकि वह काम कर रहा था, स्कूल जा रहा था, दो बच्चों की परवरिश कर रहा था और लिनक्स उपयोगकर्ताओं को खुश रखने की कोशिश कर रहा था। हम सभी जानते हैं कि लिनक्स उपयोगकर्ताओं को खुश रखना कितना आसान है ...
  • पीटर के पास इंस्टॉलर लिपियों पर 'तर्क' / 'असहमति' की कोई याद नहीं है कि दूसरों ने दावा किया है कि स्लैकवेयर और डेबियन शुरू हुई।

2
यदि आप किसी कर्नेल को मेमोरी में लोड कर सकते हैं और छवि को निष्पादित कर सकते हैं, तो यह घबरा जाएगा क्योंकि यह / sbin / init को निष्पादित नहीं कर सकता है। init पहले से ही एक यूजरलैंड टूल है। C में कोई भी प्रोग्राम कर्नेल एपीआई का उपयोग करने के लिए एक यूजरलैंड प्रोग्राम है।
राल्फफ्राइडल

डी 'ओह! अच्छी बात। मैं यह कहने की कोशिश कर रहा था कि आमतौर पर जिन उपकरणों के साथ बातचीत की जाती है, उन्हें चलाने के लिए कर्नेल की आवश्यकता नहीं होती है। मैं फिर से
सोचूंगा

जबकि यह बहुत अच्छी तरह से प्रलेखित है पीटर न तो कर्नेल + उपयोगकर्ता भूमि के बंटवारे का पहला या दूसरा वितरण था, हम लिनक्स समुदाय को लिनक्स वितरण में एक प्रयास में डालते हैं, जैसा कि हम आज जानते हैं।
रुई एफ रिबेरो

2

लिनक्स को पहली बार मिनिक्स के लिए एक विस्तारित प्रतिस्थापन के रूप में शुरू किया गया था और i386 पर संरक्षित मोड प्रोग्रामिंग को समझने के लिए। Minix स्रोत के साथ आया था, और उस समय GNU उपयोगकर्ता भूमि उपयोगिताओं और BSD उपयोगकर्ता भूमि उपयोगिताओं थे। दोनों स्रोत के साथ उपलब्ध थे। लिनक्स ने POSIX को संगत बनाने की कोशिश की, इसलिए पोर्ट करना उतना मुश्किल नहीं था। पहले कदमों में से एक लिनक्स पर बैश चलाना था। आप लिनक्स के शुरुआती दिनों को क्रॉस संकलन के रूप में मान सकते हैं, कर्नेल को किसी अन्य सिस्टम पर संकलित किया जाना था।


2
कर्नेल को मिनिक्स में क्रॉस-संकलित किया जा रहा था।
रुई एफ रिबेरो

17
यह कहना कि लिनक्स "मिनिक्स के विस्तार के रूप में शुरू किया गया था" भ्रामक है। हां, यह सच है कि उस समय लिनस मिनिक्स का उपयोग कर रहा था, लेकिन लिनक्स मिनिक्स के साथ कोड की एक भी लाइन साझा नहीं करता है, और एक अलग डिजाइन दर्शन (माइक्रोकिलीन बनाम अखंड) का भी अनुसरण करता है। मिनिक्स भी उस समय 386 के लिए आधिकारिक रूप से उपलब्ध नहीं था, जबकि लिनक्स कर्नेल शुरुआत से 386 के लिए लिखा गया था। संगतता के कारण लिनक्स का पहला फाइलसिस्टम मिनिक्स फाइल सिस्टम था, लेकिन यह भी पूर्ण रूप से कार्यान्वयन था।
जोहान मायरेन

10
लिनस, और मिनिक्स के लेखक, दोनों सहमत हैं कि यह मिनिक्स या उस पर आधारित नहीं है।
ctrl-alt-delor

@ जोहानमेरेन बेशक किसी भी संक्षिप्त पाठ में पूरी सच्चाई नहीं है। यहां तक ​​कि विकिपीडिया में केवल एक छोटा परिचय है। और मुझे पता है कि मिनिक्स की कमियों के कारण लिनक्स शुरू किया गया था। यदि i386 के लिए एक मिनिक्स था, तो आज कोई लिनक्स नहीं हो सकता है। दूसरी ओर, लिनक्स मिनिक्स से प्रेरित था, और समर्थित पहली फाइल सिस्टम मिनिक्स था। लेकिन मैं मानता हूं कि विस्तार सही काम नहीं है, मैंने वाक्य बदल दिया।
RalfFriedl
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.