विषय के बारे में Im पढ़ना अगर लिनक्स पर ZFS का उपयोग रूट फाइल सिस्टम के लिए ही किया जा सकता है और एक दिलचस्प विकि लेख उपलब्ध है। लेकिन उदाहरण में विभाजन लेआउट मेरे लिए स्पष्ट नहीं है।
# sgdisk -n1:0:0 -t1:BF01 /dev/disk/by-id/scsi-SATA_disk1
Run this if you need legacy (BIOS) booting:
# sgdisk -a1 -n2:34:2047 -t2:EF02 /dev/disk/by-id/scsi-SATA_disk1
Run this for UEFI booting (for use now or in the future):
# sgdisk -n3:1M:+512M -t3:EF00 /dev/disk/by-id/scsi-SATA_disk1
Run this in all cases:
# sgdisk -n9:-8M:0 -t9:BF07 /dev/disk/by-id/scsi-SATA_disk1
इस उदाहरण में मुझे जो समझ में नहीं आया वह पहला विभाजन है। Sgdisk के मैन पेज के माध्यम से पढ़ना मेरे लिए स्पष्ट नहीं है यदि पहला विभाजन केवल एक ब्लॉक का आकार है या यदि यह अनिवार्य रूप से पूरे डिवाइस को कवर करता है। बाद के मामले में इसका मतलब यह होगा कि अन्य सभी निर्मित विभाजन पहले एक के भीतर बने हैं? मुझे आश्चर्य होता है कि मैन पेज में निम्नलिखित वाक्य है:
0 का प्रारंभ या अंतिम मान डिफ़ॉल्ट मान को निर्दिष्ट करता है, जो प्रारंभ क्षेत्र के लिए सबसे बड़े उपलब्ध ब्लॉक की शुरुआत है और अंत क्षेत्र के लिए उसी ब्लॉक का अंत है।
"एक ही ब्लॉक" भौतिक डिवाइस के एक ब्लॉक की तरह लगता है, इसलिए या तो 512 बाइट या डेटा की 4k बाइट? या अंत में कई तार्किक / भौतिक ब्लॉकों को फैलाते हुए, इसका मतलब है कि कुछ सन्निहित राशि का भंडारण है?
विकी में निम्नलिखित वाक्य के कारण मेरे लिए इसे समझना महत्वपूर्ण है:
रूट पूल में एक डिस्क नहीं होना चाहिए; यह एक दर्पण या छापा टोपोलॉजी हो सकता है। उस स्थिति में, सभी डिस्क के लिए विभाजन कमांड को दोहराएं जो पूल का हिस्सा होगा। फिर, ज़ूल क्रिएट का उपयोग करके पूल बनाएं ... रैंप मिरर / देव / डिस्क / बाय-आईडी / एससीआई- SATA_disk1-part1 / देव / डिस्क / बाय-आईडी / scsi-SATA_disk2-part1 (या raidz, raidz2 के साथ दर्पण बदलें) या raidz3 और अतिरिक्त डिस्क से विभाजन को सूचीबद्ध करें)।
जैसा कि आप पढ़ सकते हैं, केवल पहले विभाजन को पूल में रखा गया है, ऊपर बनाए गए अन्य का उल्लेख बिल्कुल नहीं है। मैं यह नहीं समझ पा रहा हूं कि क्या अन्य विभाजन का हिस्सा है part1
और इसलिए पूल में निहित है या पूल के लिए बिल्कुल भी उपयोग नहीं किया गया है। उदाहरण के लिए, GRUB को अन्य विभाजन में से एक में स्थापित किया गया है, इस मामले में ZFS पूल का कोई संदर्भ नहीं:
# mkdosfs -F 32 -n EFI /dev/disk/by-id/scsi-SATA_disk1-part3
[...]
# echo PARTUUID=$(blkid -s PARTUUID -o value \
/dev/disk/by-id/scsi-SATA_disk1-part3) \
/boot/efi vfat nofail,x-systemd.device-timeout=1 0 1 >> /etc/fstab
मेरे लिए यह पसंद part3
है कि ZFS पूल का हिस्सा नहीं है और इसलिए इसे व्यक्तिगत रूप से उपयोग किया जाता है। लेकिन यह कैसे आकार के लिए फिट बैठता है part1
? केवल एक ब्लॉक का एक विभाजन बहुत मायने नहीं रखता है, जबकि अगर किसी तरह part3
से निहित है part1
, तो इसका मतलब यह होगा कि यह ZFS पूल का हिस्सा है, लेकिन इसके बिना भी संबोधित किया गया है?
मुझे यह समझने की आवश्यकता है कि उपर्युक्त उदाहरण में कई उपकरणों और विभाजन के साथ सेटअप में बूट विभाजन के लिए कैसे अतिरेक प्रदान किया जाता है। की तुलना में mdadm
, कुल लक्ष्य एक RAID10 सेटअप है, जहां हमेशा दो उपकरणों को प्रतिबिंबित किया जाता है और उन उपकरणों के विभाजन को फिर सभी दर्पणों पर धारीदार किया जाता है। अंत में, 6 डिस्क्स के साथ एक बूट विभाजन और रूट पूल के लिए 3 गुना भंडारण होगा। ZFS सामान्य रूप से ऐसा करने में सक्षम है, मुझे यकीन नहीं है कि पूल का हिस्सा क्या है और यदि अतिरेक बूट विभाजन को भी कवर करता है।
मेरी वर्तमान भावना यह है कि ऐसा नहीं है और मुझे mdadm
बूट विभाजन को निरर्थक बनाने की आवश्यकता होगी । केवल इसलिए कि ऊपर GRUB उदाहरण कुछ विशिष्ट डिस्क और विभाजन तक पहुँचता है, एक भौतिक उपकरण, ZFS द्वारा निर्मित कुछ तार्किक दर्पण नहीं। इसके अतिरिक्त, उस विभाजन को ZFS के बजाय FAT32 के साथ स्वरूपित किया गया है। यह नहीं पढ़ता है जैसे कि ZFS उन सभी विभाजनों की परवाह कर रहा है।
तो अंत में, क्या ZFS एक RAID10 सेटअप का समर्थन करता है जो mdadm
सभी बूट विभाजन, रूट और इस तरह, वास्तव में सब कुछ सहित संभव है ?