वर्चुअल फ़ाइल सिस्टम को सही ढंग से कैसे बनाएं?


10

मेरे होमवर्क असाइनमेंट में एक कार्य मुझे एक वर्चुअल फ़ाइल सिस्टम बनाने, इसे माउंट करने और इस पर कुछ ऑपरेशन करने के लिए कहता है।

मैं 10 एमबी की एक फाइल बनाने वाला हूं, जिसके बिट्स सभी पर सेट हैं 0, इसे ext3 के रूप में प्रारूपित करें और इसे माउंट करें। मैंने ऐसा किया है:

dd if=/dev/zero of=~/filesyst bs=10485760 count=1
sudo mkfs.ext3 ~/filesyst
sudo mount –o loop ~/filesyst /media/fuse

हालांकि मैंने उपयोग किया है /dev/zero, फ़ाइल मैं अभी भी अस्पष्ट चरित्रों से भरा हुआ है (ज्यादातर पर-संकेत)। अनुमतियों पर /media/fuseकर रहे हैं drw-rw-rw-(जो ठीक हो), लेकिन यह अंदर फाइलों पर अनुमतियाँ कुछ इस तरह हैं:

d????????? ? ? ? ?          ? lost+found
-????????? ? ? ? ?          ? secret_bin

मैं कहाँ पर गलत हो गया?


मुझे लगता है कि समस्या आपके mkfs.ext3 कमांड से संबंधित है। IIRC, डिवाइस के बजाय फ़ाइल पर ऐसा करते समय आपके द्वारा उपयोग किए जाने वाले विभिन्न तर्क हैं।
user606723

1
शायद मैं गलत हूँ, प्रति adamsinfo.com/ के अनुसार , आप इसे सही तरीके से कर रहे हैं। क्या आप इस url पर सटीक आदेशों का पालन करके देख सकते हैं कि क्या आपके पास अभी भी समस्याएँ हैं?
user606723

इसके अलावा, कोशिश करेंmkfs.ext3 -F ~/filesyst
user606723

@ user606723 धन्यवाद, मैंने इसे हल किया। समस्या थी तर्क bsऔर countतर्क। अगर मैं लिखता हूं bs=1MiB count=10, जैसा कि आपने जो लिंक पोस्ट किया है, वह काम करता है।
पॉल

1
वैसे, आपको वास्तव में फ़ाइल को शून्य से भरने की आवश्यकता नहीं है। आप केवल मनमाने आकार की एक खाली फ़ाइल बना सकते हैं truncate -s 400m filesyst। अंतर यह है कि जब तक आप वास्तव में फ़ाइल में डेटा लिखते हैं, तब तक यह डिस्क पर कोई स्थान नहीं उपयोग करता है, इसलिए आप एक वर्चुअल फाइलसिस्टम बना सकते हैं जो आपके पूरे डिस्क ड्राइव से बड़ा है, जब तक आप वास्तव में इसे भरने की कोशिश नहीं करते हैं। । आप देख सकते हैं कि फ़ाइल वास्तव में कितनी जगह का उपयोग कर रही है du -h filesyst
Psusi

जवाबों:


6

हम्मम ... इसे करने का सही तरीका है:

dd if=/dev/zero of=./filesyst bs=10485760 count=1
sudo losetup /dev/loop0 ./filesyst
sudo mkfs.ext3 /dev/loop0
sudo mount /dev/loop0 /tmp/lalla

और यह काम करता है:

(0)romano-asus:~/tmp% ls -l /tmp/lalla
total 12
drwx------ 2 root root 12288 2011-12-20 22:21 lost+found
(0)romano-asus:~/tmp% df /tmp/lalla
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/loop0                9911      1121      8278  12% /tmp/lalla

आपको पहले लूप डिवाइस को मुफ्त में जांचना चाहिए losetup -f

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