2008-10-07 9 views
18

विंडोज एनटीएफएस पर "वैकल्पिक डेटा स्ट्रीम" (एडीएस) नामक एक अच्छी लेकिन अधिकतर अप्रयुक्त सुविधा है जिसे मैंने हाल ही में एक शौक-देव परियोजना में उपयोग किया था।क्या किसी भी लिनक्स फाइल सिस्टम पर वैकल्पिक डेटा स्ट्रीम की तरह कुछ है?

मैक एचएफएस + पर भी इसी तरह की अच्छी लेकिन अधिकतर अप्रयुक्त फीचर "नाम फोर्क्स" कहा जाता है।

मैं इस परियोजना को लिनक्स में पोर्ट करने की सोच रहा हूं, लेकिन मुझे नहीं पता कि लिनक्स पर किसी भी फाइल सिस्टम में ऐसी सुविधा है या नहीं?

+0

अधिकतर अप्रयुक्त? क्या अापको उस बारे में पूर्ण विशवास है। डेटा छिपाने के लिए यह बहुत उपयोगी है। – Pacerier

+0

@ पर्सियर: अप्रयुक्त, कि कोई यूआई या एप्लिकेशन किसी भी तरह से इसके साथ इंटरफ़ेस नहीं लग रहा है। –

+0

यह ** बिल्कुल ** है क्यों वे वायरस छिपाने के लिए उपयोगी हैं। – Pacerier

उत्तर

10

विस्तारित विशेषताओं (ईए) का समर्थन करने वाले विंडोज और लिनक्स (और अन्य ओएस) दोनों पर फ़ाइल सिस्टम हैं। विंडोज़ समर्थन ओएस/2 कंपैट के लिए जोड़ा गया था और बैकअप एपीआई के माध्यम से एक हैकी विधि को छोड़कर, कोई भी दस्तावेज इंटरफ़ेस नहीं है (यही वह है जो सिगविन करता है)। ईए को केवल छोटे मूल्यों को स्टोर करने के लिए डिज़ाइन किया गया है। विंडोज़ पर, प्रत्येक ईए में एएससीआईआईआई नाम होता है (जबकि लगभग सभी अन्य नाम यूनिकोड होते हैं) और फाइल पर सभी ईए का संयुक्त आकार 64k से बड़ा नहीं हो सकता है। ईए फ़ाइलें नहीं हैं: आप एक ईए को फ़ाइल हैंडल नहीं खोल सकते हैं और इसे सामान्य फ़ाइल की तरह पढ़ सकते हैं।

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

लिनक्स पर एडीएस के लिए कोई सटीक एनालॉग नहीं है जो मुझे पता है, लेकिन यदि आप डेटा मान छोटे हैं तो आप लिनक्स पोर्ट पर ईए का उपयोग करने में सक्षम हो सकते हैं।

+3

डिफ़ॉल्ट डेटा स्ट्रीम का नाम 'डेटा' –

+3

@DanD।, '$ डेटा ',' डेटा 'नहीं है। – Pacerier

0

अधिकांश लिनक्स फ़ाइल सिस्टम में extended attributes है। मैं एनटीएफएस धाराओं से परिचित नहीं हूं, इसलिए मैं दोनों की तुलना नहीं कर सकता। विस्तारित विशेषताओं को सक्षम करने के लिए अधिकांश फ़ाइल सिस्टम को झंडे के साथ घुमाने की आवश्यकता होती है, इसलिए यह किसी के सिस्टम के लिए सामान्य रूप से काम नहीं कर सकता है। उन्हें आम तौर पर xattr या xattrs के रूप में संक्षिप्त किया जाता है।

0

केवल एक चीज जो मुझे पता है, जो उस दिशा में कुछ हद तक जाती है extended attributes है, लेकिन जो मैंने एडीएस के बारे में पढ़ा है, वह डीफ़ है। एक ही बात नहीं। आप इसका क्या उपयोग कर रहे हैं?

+1

मैं स्टोर करना चाहता हूं इसमें फाइलों के कुछ मेटा डेटा। –

0

आमतौर पर उपयोग किए गए लिनक्स फाइल सिस्टम इसका समर्थन नहीं करते हैं। इसके बजाय आप एकाधिक फाइलों और उपयुक्त नामकरण योजना का उपयोग कर सकते हैं (बस प्रत्येक फ़ाइल नाम में स्ट्रीम इंडेक्स संलग्न करें), या एकाधिक फाइल वाले संग्रह; आप पाएंगे कि इस तरह का दृष्टिकोण अन्य तरीकों से बेहतर है - उदाहरण के लिए, विंडोज़ पर क्या होता है यदि कोई फाइल गैर-एनटीएफएस फाइल सिस्टम के साथ विंडोज़ को फाइलों का बैक अप लेना चाहता है?

+3

आपको बैकअप एपीआई का उपयोग करने वाले बैकअप प्रोग्राम का उपयोग करना होगा - वे एक फ़ाइल (ईएएस, सुरक्षा डिस्क्रिप्टर, डेटा स्ट्रीम, एन्क्रिप्टेड फाइल इत्यादि) पर सभी मेटाडेटा को सहेजने के लिए एक ही स्ट्रीम में पैकेज करेंगे और बाद में पुनर्स्थापित करेंगे । –

13

एडीएस के साथ समस्या यह है कि विंडोज उन एडीएस धाराओं को दूसरी बार "खो देंगे" जो किसी भी गैर-एनटीएफएस फाइल सिस्टम में स्थानांतरित हो जाएंगे। यह उन धाराओं को महत्वपूर्ण नहीं मानता है, इसलिए कई बार उन्हें चारों ओर नहीं रखा जाता है। आप पाएंगे कि जब वे सीडी में जलाए जाते हैं, तो यूएसबी ड्राइव पर रखे जाते हैं, तो ...

इसका लंबा और छोटा है, जब तक कि आपके पास बहुत संकीर्ण न हो अपने आवेदन (हमेशा एनटीएफएस पर) के लिए ध्यान केंद्रित करें, मैं एडीएस धाराओं से पूरी तरह से बचूंगा।

+2

यह कुछ उपयोग मामलों के लिए स्वीकार्य है जैसे कैशिंग मेटाडेटा या फ़ाइल ऑफ़सेट जो अन्यथा (पुनः) उत्पन्न हो सकते हैं/अधिक प्रयास के साथ गणना की जा सकती हैं। – hippietrail

7

विस्तारित विशेषताओं को कुछ फाइल सिस्टम, विशेष रूप से एक्सएफएस, और (मुझे लगता है) जेएफएस का समर्थन किया जाता है; लेकिन आकार में सीमित हैं (एक्सएफएस में 64k)। Reiser4 मनमाने ढंग से आकार का कांटे का समर्थन करता है; लेकिन यह मुझे किसी भी distro द्वारा समर्थित नहीं है। एक और विकल्प जेएफएस है, फिर से बहुत उपयोगी नहीं है।

अंत में, शायद एक निर्देशिका का उपयोग करना बुद्धिमानी है।

संबंधित मुद्दे