1 पॉइंट द्वारा GN⁺ 2024-10-13 | 1 टिप्पणियां | WhatsApp पर शेयर करें
  • Python में FUSE फ़ाइल सिस्टम लिखने की गाइड की शुरुआत

    • DebConf22 में Eeveelweezel के साथ बातचीत के बाद, Chicago Python User Group में प्रस्तुति तैयार करने का निमंत्रण मिला.
    • Python का बहुत अधिक उपयोग नहीं करते, लेकिन छात्रों को ऐसी भाषा में पढ़ाते हैं जिसे वे आसानी से समझ सकें.
    • FIUnamFS नामक एक सरल फ़ाइल सिस्टम को कक्षा प्रोजेक्ट के रूप में इस्तेमाल कर रहे हैं, और छात्रों को FUSE का उपयोग करके एक पारदर्शी इंटरफ़ेस देने के लिए प्रोत्साहित करते हैं.
  • FUSE फ़ाइल सिस्टम इम्प्लीमेंटेशन की कठिनाइयाँ

    • Python में FUSE-आधारित फ़ाइल सिस्टम बनाना आसान नहीं है.
    • कई उदाहरण और वेब पेज मौजूद हैं, लेकिन उनमें से अधिकांश पुराने हैं और उनका अनुसरण करना कठिन है.
    • Python में python-fuse, Pyfuse, Fusepy जैसी विभिन्न इंटरफ़ेस मौजूद हैं.
  • GitLab प्रोजेक्ट की शुरुआत

    • Python में FUSE-आधारित फ़ाइल सिस्टम लिखने की गाइड देने के लिए एक GitLab प्रोजेक्ट रजिस्टर किया गया.
    • RAM-आधारित और passthrough-आधारित फ़ाइल सिस्टम इम्प्लीमेंटेशन सहित कई कार्यों को चरण-दर-चरण जोड़ा गया.
    • छात्रों को मज़ेदार और उपयोगी उदाहरणों के ज़रिए सीखने में मदद करने के लिए DNS फ़ाइल सिस्टम, real-time Markdown compilation फ़ाइल सिस्टम, decompression फ़ाइल सिस्टम, comment removal फ़ाइल सिस्टम जैसी आइडिया जोड़ी गईं.
  • प्रस्तुति और शिक्षण की योजना

    • ChiPy में प्रस्तुति देने की योजना है, और Santa Fe, Argentina में होने वाले Jornadas Regionales de Software Libre तथा Mexico City में होने वाले nerdear.la में भी प्रस्तुति देने वाले हैं.
    • इस प्रोजेक्ट को छात्रों के साथ साझा करने और Python में FUSE इम्प्लीमेंटेशन के प्रति उनकी रुचि बढ़ाने की योजना है.
  • GN⁺ का सार

    • यह लेख Python में FUSE फ़ाइल सिस्टम इम्प्लीमेंट करने में रुचि रखने वालों के लिए उपयोगी जानकारी देता है.
    • विभिन्न उदाहरणों और चरण-दर-चरण गाइड के माध्यम से यह छात्रों को आसानी से सीखने में मदद करता है.
    • FUSE इम्प्लीमेंटेशन की कठिनाइयों को हल करने का प्रयास उल्लेखनीय है, और Python कम्युनिटी में योगदान देने का इरादा सकारात्मक रूप से देखा जाता है.
    • समान कार्यक्षमता वाले प्रोजेक्ट्स में Dokan और WinFsp शामिल हैं.

1 टिप्पणियां

 
GN⁺ 2024-10-13
Hacker News राय
  • libfuse GitHub में C/C++ की जटिलता बढ़ाने वाले अच्छे उदाहरण मौजूद हैं

    • passthrough.c मौजूदा file system को mirror करता है, लेकिन performance अच्छी नहीं है
    • passthrough_fh.c की performance थोड़ी बेहतर है
    • passthrough_ll.c low-level API में implemented है, और तीनों में सबसे बेहतर है
    • passthrough_hp.cc C++ में लिखा गया high-performance version है
    • दिलचस्प FUSE projects में बड़े files को segments में बाँटना, ZFS incremental snapshots को files के रूप में दिखाना, और transparent file system compression शामिल हैं
  • FUSE के अलावा, 9p protocol के ज़रिये virtual file system implement करना भी संभव है

    • py9p के साथ Python का अनुभव fuse-python से बेहतर था
    • FUSE के माध्यम से 9p service को mount किया जा सकता है, और diod 9p server का उपयोग किया गया था
    • कुल मिलाकर, यह explore करने लायक अच्छा ecosystem है
  • FUSE का उपयोग करके Jira को file system में बदलने वाला एक project शुरू किया गया

    • issue ID को directory name के रूप में इस्तेमाल करने से automation आसान हो गया, लेकिन इंसानों के लिए navigate करना मुश्किल था
    • इसे हल करने के लिए issue-type-with-summary directory type जोड़ा गया
  • FUSE में रुचि रखने वाले लोग CUSE project में भी रुचि ले सकते हैं

    • CUSE user space में hardware को emulate करने वाला project है
    • Python का उपयोग करके IOCTL support करने वाला hardware device लिखा गया था
    • CUSE मूल रूप से user space sound device बनाने के लिए implement किया गया था
  • कई तरह के FUSE mount options मौजूद हैं, और JuiceFS object storage को POSIX file system के रूप में mount करने के लिए दिलचस्प है

  • हाल के समय में NFS-आधारित file system implement करने वाले लोगों की संख्या बढ़ रही है

    • Mac पर rclone इसे support करता है
  • azuline/rosé virtual file system वाला एक music manager है, जो सीखने के लिए अच्छा codebase देता है

  • FUSE का उपयोग करके Makefile को arbitrary resources के लिए DAG specify करने योग्य बनाया गया

    • उदाहरण के लिए, Kubernetes cluster state को expose करने वाला एक FUSE file system मौजूद है
  • एक Python FUSE file system बनाकर dokuwiki के साथ interact किया गया

    • easyfuse नाम का एक wrapper बनाया गया, जिसने dokuwiki से असंबंधित low-level API को implement किया
  • FUSE का उपयोग करके git repository को expose करने वाला एक छोटा project लिखा गया

    • .git folder के माध्यम से सभी commits और branches को उनके अपने folders के रूप में expose किया जाता है
    • सब कुछ read-only है