मेरे पास डिस्क छवियों का एक समूह है, जो एक EXT विभाजन पर ddrescue के साथ बनाया गया है, और मैं डेटा खोए बिना उनके आकार को कम करना चाहता हूं, जबकि अभी भी माउंट होने योग्य है।
मैं छवि के फाइल सिस्टम में शून्य स्थान को शून्य के साथ कैसे भर सकता हूं, और फिर फ़ाइल को एक विरल फ़ाइल में परिवर्तित कर दूंगा ताकि यह खाली स्थान वास्तव में डिस्क पर संग्रहीत न हो?
उदाहरण के लिए:
> du -s --si --apparent-size Jimage.image
120G Jimage.image
> du -s --si Jimage.image
121G Jimage.image
यह वास्तव में इस पर केवल वास्तविक डेटा का 50G है, हालांकि, दूसरा माप बहुत छोटा होना चाहिए।
यह शून्य स्थान के साथ रिक्त स्थान को भरेगा:
cat /dev/zero > zero.file
rm zero.file
लेकिन अगर विरल फ़ाइलों को पारदर्शी तरीके से संभाला जाता है , तो यह वास्तव में वर्चुअल डिस्क पर कुछ भी लिखे बिना विरल फ़ाइल बना सकती है, विडंबना यह है कि मुझे वर्चुअल डिस्क छवि को विरल फ़ाइल में बदलने से रोकती है। :) क्या यह?
नोट: किसी कारण से, sudo dd if=/dev/zero of=./zero.fileकाम करता है जब catएक घुड़सवार डिस्क छवि पर नहीं है।
sudo cat /dev/zero > zero.fileकाम नहीं करता है क्योंकि sudoकमांड को निष्पादित करने से पहले आपका बैश (आपके अनुसार, रूट नहीं) चल रहा है । देखें unix.stackexchange.com/questions/1416/...