ZFS xattr के राज्य FreeBSD में समर्थन करते हैं


15

मैं यह जानने की कोशिश कर रहा हूं कि क्या या नहीं, या क्या विस्तार करना है, XFS को ZFS का उपयोग करके FreeBSD में समर्थन किया जाता है। मैंने कुछ परस्पर विरोधी जानकारी पढ़ी है।

  1. zfs get xattrके रूप में सूचियों यह on (default)के लिए /, /usrऔर /var, लेकिन जैसा कि off (temporary)ऊपर उल्लेख किया है लोगों के बच्चों सहित अन्य सभी डेटासेट, के लिए।
  2. दौड़कर zfs set xattr=on zroot/usr/homeमुझे संदेश मिला

    property 'xattr' not supported on FreeBSD: permission denied

  3. इस के साथ सहमत हैं आदमी पेज : zfs

    xattrसंपत्ति वर्तमान में FreeBSD पर समर्थित नहीं है।

  4. setextattr, getextattrऔर lsextattrलगता है कि काफी अच्छी तरह से काम करते हैं।
  5. मैं भी बचाने के लिए और का उपयोग कर नोड एक युक्ति फ़ाइल को पुनर्स्थापित करने में कामयाब रहे rsync --fake-super, और का उपयोग कर अपने डेटा देख सकते हैं lsextattrऔर getextattr
  6. विकिपीडिया की कुछ चर्चा एक्सट्रा टॉक पेज में है । जाहिर तौर पर एक बार यह दावा किया गया था कि ZFS FreeBSD 8 के बाद से Xattr का समर्थन करता है, लेकिन बाद में मैनपेज के संदर्भ में इसे हटा दिया गया (देखें 3.)।

वर्तमान में मुझे आभास मिलता है कि ज़ैफ़ पर विस्तारित विशेषताएँ अभ्यास में काम करती हैं, लेकिन यह कि जो xattrसंपत्ति उनके उपयोग को नियंत्रित करती है वह काम नहीं करती है क्योंकि यह अन्य ज़फ़े वितरण में होगा। लेकिन मैं इस तरह की rsync --fake-superमशीन पर चलने से पहले बैकअप डेटा की बड़ी मात्रा पर भरोसा करने से पहले उस पुष्टि (या सही) को सुनना चाहता हूं । मैं अपने सभी मेटाडेटा को ज्ञात xattr समस्याओं के कारण नहीं खोना चाहूंगा।

अगर यह मायने रखता है, तो यह एक बहुत ही ताज़ा FreeBSD 10.2 है I I को अभी स्थापित किया गया है, जिसमें ZFS इंस्टॉलर द्वारा स्थापित किया गया है।


1
मैंने इसे FreeBSD फोरम पर पोस्ट किया । आइए आशा करते हैं कि या, या इनाम, या दोनों, इस पर एक आधिकारिक उत्तर प्राप्त करने में मदद करेंगे।
20

1
मैंने इसे फ़्रीबेस-एफएस मेलिंग सूची में भी क्रॉस-पोस्ट किया है । जवाब के बिना इनाम की समय सीमा समाप्त होने के लिए शर्म की बात होगी।
MvG

मेलिंग सूची लिंक मृत है।
माटुस्स पिओत्रोस्की

1
@ माटेउसज: गैम्ने के निर्माता ने उस सेवा को बंद कर दिया , हालांकि जाहिर तौर पर इसे फिर से जारी रखने के लिए किसी और से बातचीत चल रही है। यहाँ FreeBSD संग्रह में पोस्ट है, या यहाँ मेरी संदेश आईडी खोजने के लिए ।
MvG

जवाबों:


5

जैसा कि आपने पाया है, xattrs काम करेगी, लेकिन मोटे किनारे हैं।

कभी-कभी आपको एंथ्रोपोलॉजिस्ट की तरह ओपन सोर्स कोड अप्रोच करना पड़ता है। यदि यह अपने आप में सहायक नहीं है, तो शायद यह कुछ बेहतर योगदानों (या अंततः कोड फिक्स) को भड़काएगा! "

मुझे यह स्रोत कोड में मिला:

https://github.com/freebsd/freebsd/blob/c829c2411ae5da594814773175c728ea816d9a12/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_vfsops.c#L514

/*
 * Register property callbacks.
 *
 * It would probably be fine to just check for i/o error from
 * the first prop_register(), but I guess I like to go
 * overboard...
 */
error = dsl_prop_register(ds,
    zfs_prop_to_name(ZFS_PROP_ATIME), atime_changed_cb, zfsvfs);
error = error ? error : dsl_prop_register(ds,
    zfs_prop_to_name(ZFS_PROP_XATTR), xattr_changed_cb, zfsvfs);
error = error ? error : dsl_prop_register(ds,
    zfs_prop_to_name(ZFS_PROP_RECORDSIZE), blksz_changed_cb, zfsvfs);

और यह https://github.com/freebsd/freebsd/blob/386ddae58459341ec567604707805814a2128a57/sys/cddl/contrib/opensolaris/common/zfs/zfs_prop.c#L302

और फिर भी यह आपको विराम देता है: https://github.com/freebsd/freebsd/blob/e95b1e137c604a612291fd223fce89c2095cddf2/cddl/contrib/opensolaris/lib/libzfs/common/libzfs_datasasfasas

इसलिए मुझे लगता है कि वास्तव में यह हो रहा है कि Xattrs काम करती है लेकिन ZFS डाटासेट गुणों द्वारा उन्हें (या चालू) बंद करने की कार्यक्षमता टूट गई है, इसलिए "समर्थित नहीं" संदेश का अर्थ है "आप अपने दम पर हैं।"

वहाँ कुछ कोड है जो MNTOPT_XATTR सेट करता है, लेकिन मैंने इसे ट्रेस नहीं किया है। zfs सेट का उपयोग करके इसे बदलने की कोशिश करने से आपको असमर्थित संदेश मिलता है। मेरा अनुमान है कि /, / usr, / var के साथ zFS xattr संपत्ति की विचित्रता और / घर के परस्पर विरोधी सेटिंग / व्यवहार के बारे में बताते हैं।

यह चीजों पर कुछ प्रकाश डालता है। https://www.lesbonscomptes.com/pages/extattrs.html

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.