मैं फ्रीबीएसडी जेलों की एक संख्या के लिए घर निर्देशिकाओं के पदानुक्रम को उजागर करने की कोशिश कर रहा हूं। होम निर्देशिकाओं को ऐसे कॉन्फ़िगर किया गया है कि प्रत्येक एक अद्वितीय ZFS डेटासेट है। जेलों का उपयोग विकास कार्यों के लिए किया जाता है और इसलिए इसे नियमित आधार पर बनाया और नष्ट किया जाता है।
मेरा पहला विचार बस जेल के अंदर माउंट करने के लिए nullfs का उपयोग /home
करना था, लेकिन nullfs अधीनस्थ फाइल सिस्टम तक पहुंचने का कोई रास्ता प्रदान नहीं करता है।
मेरा दूसरा विचार एनएफएस के माध्यम से निर्देशिकाओं का निर्यात करना था और फिर प्रत्येक जेल के अंदर ऑटोमन डेमॉन (एएमडी) चलाना था। यह सिर्फ काम किया होता ... अगर किसी जेल के अंदर एनएफएस आरोहण करना संभव होता। लेकिन ऐसा नहीं है।
मेरा तीसरा विचार होस्ट पर amd चलाने का था और nullfs mounts को जेलों में रखने का था ... लेकिन nullfs के लिए amd का समर्थन मौजूद है।
मेरा चौथा विचार NFS का उपयोग करके निर्देशिकाओं के निर्यात पर वापस जाना था, क्योंकि निश्चित रूप से NFS के साथ काम करता है, सही? दुर्भाग्य से, लक्ष्य माउंटपॉइंट पर एक निर्देशिका बढ़ने के बजाय, amd एक अस्थायी स्थान ( /.amd_mnt/...
) में चीजों को माउंट करना पसंद करता है और फिर एक सिम्लिंक बनाता है ... जो, निश्चित रूप से जेल के वातावरण के अंदर बेकार है।
तो शायद आप जेल के एक उपनिर्देशिका को उजागर करने के लिए nullfs का उपयोग कर सकते हैं /.amd_mnt
? नहीं! यह हमें मेरे पहले प्रयास में वापस लाता है, जिसमें हम पाते हैं कि nullfs का उपयोग करके अधीनस्थ फाइल सिस्टम तक पहुंचने का कोई तरीका नहीं है ।
और फिर मेरा सर फट गया।
क्या मैं जो करने की कोशिश कर रहा हूं उसका कोई अच्छा समाधान है? एक बुरा समाधान जेल को बूट करने के बाद एक स्क्रिप्ट को चलाने के लिए होगा जो प्रत्येक होम डायरेक्टरी के लिए कई nullfs माउंटपॉइंट बनाएगा , लेकिन यह बहुत क्लिंकी है - इसे नई निर्देशिकाओं या हटाए गए निर्देशिकाओं को ध्यान में रखने के लिए समय-समय पर चलाने की आवश्यकता होगी। इसलिए मूल रूप से मुझे एक खराब ऑटोमोटिव लिखना होगा।
इसके लिए अवश्य ही एक बेहतर तरीका होना चाहिए। ' मेरी मदद करो, सर्वरफॉल्ट, तुम मेरी एकमात्र आशा हो!
अद्यतन 1 : यह मेरे साथ हुआ है कि मैं इस समस्या के भाग को हल करने में सक्षम हो सकता हूं pam_mount
, हालांकि यह कम से कम अधूरा होगा। इसके अलावा, यह प्रलेखन से स्पष्ट नहीं है कि क्या pam_mount
स्वचालित रूप से लक्ष्य माउंटपॉइंट बना सकते हैं या नहीं । यदि इसे पहले से मौजूद होने के लिए माउंटपॉइंट की आवश्यकता होती है, तो यह समाधान मेरे द्वारा पहले से प्रस्तावित किए गए खराब ऑटोमोटिव से बेहतर नहीं होगा।
अद्यतन 2 : जैसा कि नीचे दिए गए जवाबों में चर्चा की गई है, VFCF_JAIL
एनएफएस फाइलसिस्टम पर सेटिंग जेलों को एनएफएस माउंट करने की अनुमति देती है। दुर्भाग्यवश, आटोमैटिक का व्यवहार जारी रहता है जो अनहेल्दी होता है, और जब जेल में चलाया जाता है, तो इस तरह से वेज हो जाना बहुत अच्छा प्रतीत होता है, जैसे कि प्रक्रिया प्रविष्टि को हटाने के लिए सिस्टम रिबूट आवश्यक है।