Sdelete -c और -z के बीच क्या अंतर है?


24

मैंने वीडीआई फ़ाइल को सिकोड़ने के लिए एक कदम के रूप में sdelete का उपयोग करने के लिए इस लेख से सीखा है :

sdelete -c c:

लेकिन -c('स्वच्छ पाठ' के रूप में इसके मदद पाठ द्वारा वर्णित) का क्या अर्थ है? क्या यह शून्य के साथ मुक्त स्थान नहीं लिखता है? और क्या -z(शून्य मुक्त स्थान) के बारे में? Sdelete -c और -z के बीच क्या अंतर है?

संपादित करें

मैंने पहले बताए गए लेख में कदम रखने की कोशिश की , लेकिन .vidफ़ाइल का आकार कम करने में विफल रहा । फिर मैंने इस सुपरयुजर पोस्ट का अनुसरण किया , और विकल्प -cको बदल दिया -z, और सफल रहा।

तो ऐसा लगता है कि -zशून्य मुक्त स्थान पर -cलिखता है , और कुछ और लिखता है (यादृच्छिक बिट्स संभवतः)।

जवाबों:


21

मुझे लगता है कि यह एक सामान्य गलती है। शायद -z विकल्प पहले के संस्करणों में उपलब्ध नहीं था। SDelete 1.61 कहते हैं

-z         Zero free space (good for virtual disk optimization)

ध्यान दें कि ऐसा करने से आपकी हार्ड डिस्क का विस्तार पहले आकार में हो जाएगा। केवल VMWare द्वारा सिकुड़ने की प्रक्रिया में यह फिर से छोटा हो जाएगा।

मेरी मशीन पर एक त्वरित परीक्षण:

-z took 1:01 minutes
-c took 2:11 minutes

जो इंगित करता है कि -z केवल सरल शून्य लिखता है जबकि -c , SDelete वेबसाइट पर लिखे गए सैन्य मानक है जो DoD 5220.22-M को मिटा देता है


यदि सॉफ्टवेयर कुछ हद तक बुद्धिमान है तो यह फाइल को ब्लोट नहीं करेगा। अधिकांश वर्चुअलाइजेशन अनुप्रयोग हैं। मैंने अभी इसे VMware फ़्यूज़न में आज़माया था, इसने फ़ाइल का आकार बिल्कुल नहीं बढ़ाया।
डैनियल बी

1
VMWare वर्कस्टेशन प्रो 12 डिस्क का पूर्ण आकार में विस्तार करता है, दुर्भाग्य से।
लेबनिटा

-c और -z को 1.51 में विज्ञापित किया गया था, बिल्कुल दूसरे तरीके से (चाहे वह वर्णन में सिर्फ एक त्रुटि थी या फ़ंक्शन भी उलट दिए गए थे, मुझे नहीं पता)। 1.61 का रास्ता बहुत ज्यादा मायने रखता है, जाहिर है।
लेबनिटा

बस Windows 2012 और एक नई 20GB VHDX फ़ाइल के साथ जाँच की गई। -Z विकल्प बहुत तेज (सेकंड) था और वीएचडीएक्स डिस्क फ़ाइल आकार में वृद्धि नहीं की थी। -C विकल्प बहुत धीमा चल रहा है और VHDX आकार में बढ़ रहा है। तथाकथित -z एक तथाकथित पतली / विस्तारित वर्चुअल हार्ड डिस्क के लिए पसंदीदा विकल्प है, खासकर यदि आपने डिस्क स्थान पर काम किया है। लेकिन यह -c विकल्प जितना सुरक्षित नहीं है
munrobasher 14

1
बस नवीनतम संस्करण (2.0) की जाँच की और दो स्पष्ट अंतर हैं। सबसे पहले एक 32-बिट और 64-बिट संस्करण (sdelete.exe और sdelete64.exe) है। लेकिन -c कमांड में एक सूक्ष्म अंतर भी है जो चिंता करता है। V1.61 में, -c विकल्प ने कहा "फ्री स्पेस क्लीनिंग" लेकिन v2.0 में यह "जीरोइंग फ्री स्पेस" कहता है। -Z विकल्प शून्यकरण भी कहता है। यह यादृच्छिक डेटा विकल्प खो दिया है ??
मुनोब्राशर

5

यह थॉमस के उत्तर के लिए एक टिप्पणी के रूप में अधिक उपयुक्त रूप से पोस्ट किया जाना चाहिए था, लेकिन जब से मैं अभी तक ऐसा नहीं कर सकता, मैं इसे यहां पोस्ट करता हूं।

"-Z" और "-सी" विकल्पों को मिलाना शायद एक "सामान्य गलती" है, क्योंकि SDelete ने वर्षों में उक्त विकल्पों के व्यवहार को बदल दिया है। नीचे दिए गए संदर्भों को देखते हुए ऐसा लगता है कि SDelete के पास पहले "-z" विकल्प था जो "सैन्य मानक पोंछते" था, फिर खाली स्थान को शून्य करने के लिए "-सी" विकल्प जोड़ा, और फिर v1.51 और v1 के बीच कहीं। 61 ने उस व्यवहार को वर्तमान में बदल दिया।

सन्दर्भ: sysinternals.com फोरम और पुराने SDelete होमपेज पर Microsoft TechNet पर आर्काइव.ऑर्ग के माध्यम से।


यह मूल प्रश्न का उत्तर नहीं है । किसी लेखक से स्पष्टीकरण मांगने या उसका अनुरोध करने के लिए, उनके पोस्ट के नीचे एक टिप्पणी छोड़ दें - आप हमेशा अपने स्वयं के पोस्ट पर टिप्पणी कर सकते हैं, और एक बार आपके पास पर्याप्त प्रतिष्ठा होने पर आप किसी भी पोस्ट पर टिप्पणी कर पाएंगे ।
DavidPostill

4
यह मूल प्रश्न का उत्तर नहीं है । कृपया पोस्ट की पहली पंक्ति को फिर से पढ़ें। यदि किसी के लिए पहले से मौजूद उत्तर में उपयोगी और / या प्रासंगिक जानकारी जोड़ने के लिए एक बेहतर प्रक्रिया है, जिसने सिर्फ सेवा तक साइन अप किया है, तो मुझे बेझिझक महसूस करें।
LN2

"अगर किसी के लिए पहले से मौजूद उत्तर के लिए उपयोगी और / या प्रासंगिक जानकारी जोड़ने के लिए एक बेहतर प्रक्रिया है, जिसने अभी सेवा में साइन अप किया है, तो मुझे बेझिझक महसूस करें" - ऐसा नहीं है, कृपया मेरे द्वारा प्रदत्त लिंक पढ़ें।
DavidPostill

1.61 में ध्यान देना दिलचस्प है कि आप चाहे जिस स्विच का इस्तेमाल करें, वह हमेशा "ज़ीरोइंग फ्री स्पेस" कहता है (और 1.51 में यह हमेशा "फ्री स्पेस क्लीनिंग" कहता है)। यह थोड़ा भ्रामक है, थोड़ी देर के लिए इसने मुझे अविश्वास कर दिया कि "-सी" वास्तव में "स्वच्छ" था न कि "शून्य" व्यवहार।
रेकजेरर

5

वर्तमान दस्तावेज़ (और प्रोग्राम संस्करण 2.01):

  • -c: स्वच्छ खाली स्थान। एक रनिंग सिस्टम द्वारा उपयोग के लिए मुक्त छोड़ने के लिए अंतरिक्ष की एक विकल्प राशि निर्दिष्ट करें।
  • -z: शून्य मुक्त स्थान (आभासी डिस्क अनुकूलन के लिए अच्छा)।

लेकिन पुराने संस्करणों में इसका उल्टा हुआ:

  • -c: शून्य मुक्त स्थान (आभासी डिस्क अनुकूलन के लिए अच्छा)।
  • -z: स्वच्छ खाली स्थान।

यहां छवि विवरण दर्ज करें

लेकिन वे क्या करते हैं?

स्वच्छ अपनी सबसे बड़ी फ़ाइल बनाता है, और इसे यादृच्छिक डेटा से भरता है, और फिर इसे शून्य से भरता है। यह वही है जो ज्यादातर लोग पोंछने के रूप में सोचते हैं , और यह ओवरकिल है।

नकारात्मक पक्ष यह है कि यदि आप एक वर्चुअल डिस्क का उपयोग कर रहे हैं, या किसी वर्चुअल मशीन के अंदर, या इसे स्टोरेज स्पेस पर चला रहे हैं: अंतर्निहित स्टोरेज सिस्टम आपको यादृच्छिक डेटा रखने के लिए संसाधन आवंटित करने के लिए मजबूर करेगा, और फिर शून्य को होल्ड करेगा। उम्मीद है कि तब अंतर्निहित भंडारण प्रणाली को यह एहसास होगा कि वह सभी जगह जो अभी आपकी ड्राइव को आवंटित की गई थी, को पुनः प्राप्त किया जा सकता है क्योंकि उन सभी क्षेत्रों में बस शून्य हैं।

-z शून्य: सभी क्षेत्रों के लिए बस शून्य लिखता है। यह वह विकल्प है जो आप चाहते हैं, कई कारणों से:

  • यादृच्छिक डेटा के साथ पोंछना ओवरकिल है (डेटा पढ़ना व्यावहारिक रूप से संभव नहीं है; अर्थात एक समय में एक बिट हालांकि एक माइक्रोस्कोप संभव नहीं है)
  • कुछ SSDs यह पता लगा सकते हैं कि आप किसी क्षेत्र में शून्य लिख रहे हैं , और इसका उपयोग करके उस क्षेत्र को मुक्त (TRIM के समान) चिह्नित कर सकते हैं
  • अधिकांश वर्चुअल स्टोरेज सिस्टम (VMWare, हाइपर-वी, विंडोज वर्चुअल डिस्क, स्टोरेज स्पेस) से पता चलता है कि आप शून्य का एक पूरा क्षेत्र लिख रहे हैं, और अंतर्निहित स्टोरेज फ़ाइल में स्थान को पुनः प्राप्त करने का अवसर लेते हैं।
  • SSDs यह नहीं जान पाएंगे कि आपका अंतिम लक्ष्य अनिवार्य रूप से एक शानदार TRIM है, और (वर्चुअल डिस्क की तरह) उन क्षेत्रों को भरने के लिए मजबूर किया जाना चाहिए, जिनमें पहले से ही शून्य, गैर-शून्य के साथ, केवल फिर से शून्य से भरना है। यह आपके SSDs के लिए भयानक है।

स्रोत : एक वर्चुअल हार्ड डिस्क को माउंट किया और I / O ऑपरेशंस को देखा जिसे sdelete ने दोनों मोड में लिया था।

tl; dr: यूज़-ज़ीरो। यह तेज, बेहतर, सुरक्षित है।

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