आप जो हासिल करने की कोशिश कर रहे हैं वह बूट तकनीक को बढ़ा रहा है :) हालांकि मुझे लगता है कि यह संभव है, हालांकि मैं पूरी तरह से चलने-फिरने के लिए जानकार नहीं हूं।
पहले, जैसा कि पहले कहा गया था, डिस्ट्रोस की बहुत अलग आवश्यकताएं हैं। दूसरा, दूसरी तरफ अच्छी बात, आप डिस्ट्रोस भी पा सकते हैं जिन्हें न्यूनतम आवश्यकताओं की आवश्यकता होती है।
मैं GRUB4DOS को बूटलोडर के रूप में उपयोग करने की सलाह दूंगा। इस लिंक को देखें कि इसे USB के साथ कैसे उपयोग किया जाए (क्योंकि इसमें find --set root - कमांड है, जो महत्वपूर्ण है अगर आपके पास USB जैसा मोबाइल डिवाइस है)।
फिर आपको यह तय करना होगा कि आप कितने विभाजन का उपयोग करेंगे। मानक "पूर्ण इंस्टॉल" हमेशा एक ही विभाजन में होता है। इसलिए यदि आपके पास 8 जीबी की यूएसबी स्टिक है और 4 जीबी पार्टीशन (जो न्यूनतम इंस्टॉलेशन की अनुमति देता है) लें तो आप डेबियन या फेडोरा जैसे मुख्य डिस्ट्रोस के 2 अलग "फुल इंस्टॉल" तक सीमित रहेंगे।
हालांकि, कुछ छोटे और विशेष लिनक्स वितरण हैं। उदाहरण के लिए "पिल्ला लिनक्स" बहुत छोटा है और इसमें एक विशेष "मितव्ययी स्थापना" मोड है। यह कई स्वादों में आता है (उदाहरण के लिए MacPup है जिसमें Apple को डेस्कटॉप, या Fatdog64 जो 64-बिट लिनक्स है) को लागू करने की कोशिश करता है।
इस "मितव्ययी स्थापना" मोड में यह सिर्फ 1 निर्देशिका का उपयोग करता है और इसे हार्डडिस्क (या यूएसबी) पर मौजूदा लिनक्स या विंडोज के समानांतर में स्थापित किया जा सकता है। मुझे यकीन है कि अन्य वितरण भी हैं जो समान मोड का समर्थन करते हैं।
चूंकि पिल्ला लिनक्स छोटा है (<150 एमबी) और यह मानते हुए कि आप प्रत्येक इंस्टॉलेशन (512 एमबी) के लिए एक छोटी सी बचत करते हैं, तो आप आसानी से यूएसबी स्टिक पर 10 अलग-अलग ऑपरेटिंग सिस्टम की तरह इंस्टॉल कर सकते हैं। यहां तक कि छोटे लिनक्स (स्लिटाज़, टिनिकोर) भी हैं, जिनका आप उपयोग कर सकते हैं।
उदाहरण के लिए, मैं अपने वर्तमान पीसी-इंस्टॉलेशन से menu.lst (GRUB4DOS) फ़ाइल संलग्न करता हूं, पहले 8 प्रविष्टियां hd0,2 (यानी 1 हार्डडिस्क पर तीसरा विभाजन) पर सभी अलग-अलग पिल्ला लिनक्स इंस्टॉलेशन हैं, फिर एक न्यूनतम है एक छोटे से अतिरिक्त विभाजन में डेबियन स्थापना और मूल विंडोज-एक्सपी।
timeout=10
default=0
title Linux Buero (on /dev/sda3)
root (hd0,2)
kernel /puppy431-de/vmlinuz psubdir=puppy431-de pkeys=de ro vga=normal
initrd /puppy431-de/initrd.gz
title Live CD build (on /dev/sda3)
root (hd0,2)
kernel /puppylivecdbuild/vmlinuz psubdir=puppylivecdbuild ro vga=normal
initrd /puppylivecdbuild/initrd.gz
title sage developement(on /dev/sda3)
root (hd0,2)
kernel /Sage46dev/vmlinuz psubdir=Sage46dev pfix=nocopy ro vga=normal
initrd /Sage46dev/initrd.gz
title sage developement test and fun
root (hd0,2)
kernel /Sage-test/vmlinuz psubdir=Sage-test pfix=nocopy,noram ro vga=normal
initrd /Sage-test/initrd.gz
title Lupq 511
find --set-root --ignore-floppies /lupq511/initrd.gz
kernel /lupq511/vmlinuz psubdir="lupq511" pfix=nocopy pkeys=de ro vga=normal
initrd /lupq511/initrd.gz
title Lupu 520 - New kid on the block
find --set-root --ignore-floppies /lupu-520/initrd.gz
kernel /lupu-520/vmlinuz psubdir="lupu-520" pfix=nocopy pkeys=de ro vga=normal
initrd /lupu-520/initrd.gz
title wary beta (on /dev/sda3)
root (hd0,2)
kernel /wary/vmlinuz psubdir=wary ro vga=normal
initrd /wary/initrd.gz
title spup (on /dev/sda3)
root (hd0,2)
kernel /spup/vmlinuz psubdir=spup ro vga=normal
initrd /spup/initrd.gz
title Debian (on /dev/sda2)
find --set-root --ignore-floppies /initrd.img
kernel /vmlinuz root=/dev/sda2 ro
initrd /initrd.img
title Windows NT/2K/XP\nStart Windows if installed on HDD
fallback 7
find --set-root --ignore-floppies /ntldr
chainloader /ntldr
boot
find --set-root --ignore-floppies /lupq511/initrd.gz
यदि आप USB का उपयोग करते हैं, तो आपके USB पर मेनू .stst समान दिख सकता है, GRUB4DOS कमांड
(सभी ड्राइव्स में इस फ़ाइल के लिए दिखता है) बहुत उपयोगी हो सकता है।
उपरोक्त जानकारी के साथ आपके मूल प्रश्नों पर कुछ टिप्पणियाँ:
Q: * मैं समझता हूं कि / बूट / img / [SystemName] फ़ोल्डर एक विशिष्ट सिस्टम के लिए छवि को संग्रहीत करेगा, जो कि / boot / कर्नेल निर्देशिका (कम से कम) में संग्रहीत लिनक्स कर्नेल के विभिन्न (या समान) संस्करणों का उपयोग कर सकता है। मैं इसे कैसे सेट करना चाहूंगा)
ए: मुझे यकीन नहीं है कि अगर वह काम करने जा रहा है, क्योंकि अधिकांश प्रमुख वितरणों को अपने विभाजन का अनन्य अधिकार है और अपनी फ़ाइलों के लिए एक विशिष्ट निर्देशिका संरचना स्थापित करने की उम्मीद है। मेरी राय में, डिफ़ॉल्ट सेटअप का सम्मान करना और वितरण की उम्मीद करना बेहतर है, अर्थात कुछ को एक विशेष विभाजन की आवश्यकता है, कुछ साझा विभाजन पर सिर्फ एक निर्देशिका के साथ खुश होंगे। मैं यह नहीं कहता कि एक गैर डिफ़ॉल्ट तरीके से कई OS के 1 विभाजन को स्थापित करना संभव नहीं है, लेकिन यह परेशानियों के लिए भीख माँग रहा है और मेरी राय में लिनक्स नवागंतुक के लिए व्यावहारिक नहीं है। एक संभावित वर्कअराउंड मैं अपनी पोस्ट के नीचे ("वूबी-जैसे" इंस्टॉल) का उल्लेख करता हूं।
Q: * हालांकि, इनमें से अधिकांश सिस्टम में बस उनकी निर्देशिकाओं में एक कर्नेल होता है, जिसे "linux" कहा जाता है (संस्करण को बताते हुए नहीं)। मैं यह पता लगा सकता हूं कि ये सभी कर्नेल कौन से उपयोग करते हैं, लेकिन क्या कर्नेल को खुद को कॉपी / बूट / कर्नेल करने के लिए सबसे अच्छी जगह है?
एक: मुझे लगता है कि गुठली बिल्कुल वहीं जाना चाहिए जहां वितरण उनके पास आम तौर पर होता है। उन्हें एक अलग / बूट / कर्नेल फ़ोल्डर में संग्रहीत करने की आवश्यकता नहीं है, और मैं उन्हें वितरण के बीच साझा करने का प्रयास करने की भी सिफारिश नहीं करूंगा। स्टोरेज स्पेस एक कर्नेल के लिए न्यूनतम है (जैसे 2-3 एमबी)। वास्तव में बहुत सारे संस्करण और उप-संस्करण हैं और कभी-कभी वितरण की गुठली पर लागू विशिष्ट पैच भी होते हैं। एक अलग / अनुपयोगी कर्नेल में प्लगइन करने के लिए एक अनावश्यक प्रयोग है।
प्रश्न: * मुझे गुठली मिलने के बाद, मैं कल्पना करता हूं कि बाकी ज्यादातर डिवाइस को / boot / img / पर कॉपी कर रहे हैं और मेनू में उचित प्रविष्टि बना रहे हैं। सही है? मैं सिस्टम सिस्टम के आधार पर ऐसा कर सकता हूं कि एक बार मुझे गुठली मिल जाए।
ए: जैसा कि पहले उल्लेख किया गया है, बेहतर उन वितरणों के लिए अलग विभाजन बनाते हैं जिनकी उन्हें आवश्यकता होती है और अपने स्वयं के फ़ोल्डरों में इतने लालची वितरण में मिश्रण नहीं करते हैं। एक इकाई के रूप में कर्नेल, initrd और बाकी डिस्ट्रो का इलाज करें।
एक अंतिम विचार। यदि आप अलग-अलग विभाजनों का उपयोग नहीं करना चाहते हैं, तो आप कुछ ऐसा प्रयास कर सकते हैं जैसे "WUBI" अपने स्वयं के विभाजन के लिए पूर्ण इंस्टॉल की मांग करने वाले विकृतियों के लिए इंस्टॉल करता है। इसका मतलब है कि आप USB पर अपने स्वयं के ext2 / ext3 फाइल सिस्टम के साथ बड़ी फाइलें बनाते हैं, फिर उन्हें "ड्राइव" के रूप में माउंट करें और इसमें ओएस स्थापित करें। (मैं इसे WUBI कहता हूं, क्योंकि यह सबसे अच्छा ज्ञात अनुप्रयोग है)।
निम्नलिखित एक "Wubi स्थापित" बूट करने के लिए एक Grub4dos menu.lst प्रविष्टि होना चाहिए।
# Add the ntfs module - just needed for Installation on a Windows Partition
insmod ntfs
# Set root (normally would be sda1, or hd0,1 Change as necessary
set root=(hd0,1)
loopback loop0 /ubuntu/disks/root.disk
set root=(loop0)
linux /boot/vmlinuz root=/dev/sda1 loop=/ubuntu/disks/root.disk ro
initrd /boot/initrd/initrd.img
boot
से यहाँ ।
आप देखते हैं, 2 "सेट रूट" कमांड हैं, दूसरे के बाद "root.disk" जिसमें लिनक्स शामिल है, को लूप 0 के रूप में माउंट किया गया है।
मुझे उम्मीद है कि मैं कुछ विचार दे सकता हूं, हालांकि यह पूरी तरह से नहीं है।