डेबियन इंस्टॉलर प्रिज़ेड फ़ाइल में एक से अधिक डिस्क पर पार्टमैन पार्टिशन कैसे कर सकता है?


3

पार्टिशन पार्टिशन को सिंगल डिस्क बनाना काफी आसान है:

d-i partman-auto/disk string /dev/xvda
d-i partman-auto/method string regular
d-i partman-auto/expert_recipe string \
      boot-swap :: \
        2048 2048 -1 ext3 \
           $primary{ } \
           $bootable{ } \
           method{ format } \
           format{ } \
           use_filesystem{ } \
           filesystem{ ext3 } \
           mountpoint{ / } \
           device{ /dev/xvda } \
           . \

या और भी सरल:

d-i partman-auto/disk string xvda
d-i partman-auto/method string regular
d-i partman-auto/choose_recipe select atomic

लेकिन एक से अधिक डिस्क के साथ, मुझे जो भी रेसिपी मिली या लिखी गई है उनमें से कोई भी रेसिपी नहीं है। इंस्टॉलर उस स्क्रीन पर जाता है जहां वह विभाजन विधि के लिए पूछता है, और वहां स्टाल करता है। मुझे लगा कि मैंने उस प्रश्न का उत्तर यहाँ दिया है:

# The presently available methods are:
# - regular: use the usual partition types for your architecture
# - lvm:     use LVM to partition the disk
# - crypto:  use LVM within an encrypted partition
d-i partman-auto/method string regular

यहां तक ​​कि अगर यह सवाल का जवाब देता है और यह वास्तव में अगले बिट पर अटक गया है, तो डिस्क का चयन करना, क्या इसका जवाब नहीं दिया गया है?

d-i partman-auto/disk string /dev/xvda

मैं तीन डिस्क के साथ समाप्त करने का लक्ष्य रखता हूं: रूट पर / देव / xvda, सहित / घर, / usr और बाकी; / देव / xvdb पर एक अतिरिक्त स्वैप मात्रा; और / देव / xvdc पर एक EXT3 वॉल्यूम, / var / build पर आरूढ़ है। बस चीजों को अतिरिक्त जटिल बनाने के लिए, / var / build स्थापना के समय मौजूद नहीं है, इसलिए इसे किसी तरह से भी बनाने की आवश्यकता है। यह डेबियन स्क्वीज पर है।

जवाबों:


2

मैंने इसे निचोड़ने की कोशिश नहीं की है, लेकिन मैंने जो काम किया है उसके लिए अभी भी काम करना चाहिए। untested:

d-i preseed/late_command string echo ';' | sfdisk /dev/xvdb ; mkswap /dev/xvdb1 ;
    echo '/dev/sdb1 none swap sw 0 0' >> /target/etc/fstab ;
    echo ';' | sfdisk /dev/xvdb ; mke2fs -j -q /dev/xvdb1 ;
    mkdir /target/var/build ;
    echo '/dev/xvdb1 /var/build ext3 defaults 0 2' >> /target/etc/fstab

मुझे उस संदर्भ को खोदना होगा जहां मुझे वह sfdiskचाल मिली - यह मूल रूप से डिस्क के विभाजन तालिका को मिटा देता है और एक विशाल विभाजन बनाता है।


यह एक उपयोगी नुस्खा है (धन्यवाद!) होने के लिए +1, लेकिन यह एक से अधिक डिस्क के मात्र अस्तित्व द्वारा भ्रमित होने की इंस्टॉलर की समस्या को हल नहीं करता है। मैंने प्रश्न में विवरण जोड़ दिया है।
पीटर वेस्टलेक

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

आप सही कह रहे हैं - यह एक सूक्ष्म त्रुटि थी! ठीक है, बिल्कुल सूक्ष्म नहीं, वास्तव में, और कम से कम संपादन में नहीं: मैं गलत फाइल को संपादित कर रहा था। उसके लिए मेरी कितनी प्रतिष्ठा है, मुझे आश्चर्य है?
पीटर वेस्टलेक

Preseed / late_command का उपयोग करना इसे करने का एकमात्र तरीका है। प्रलेखन (/usr/share/doc/debian-installer/devel/partman-auto-recipe.txt.gz) यह बताता है कि एकाधिक डिस्क कॉन्फ़िगर किए जा सकते हैं, लेकिन यह केवल LVM की स्थापना के लिए है।
पीटर वेस्टलेक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.