मुझे संदेह है कि डिस्क पर खराब क्षेत्र हो सकता है। मैंने ext3 फाइलसिस्टम का उपयोग किया।
विंडोज के एरर चेकिंग टूल का सबसे अच्छा समकक्ष कौन सा टूल है?
मुझे संदेह है कि डिस्क पर खराब क्षेत्र हो सकता है। मैंने ext3 फाइलसिस्टम का उपयोग किया।
विंडोज के एरर चेकिंग टूल का सबसे अच्छा समकक्ष कौन सा टूल है?
जवाबों:
खराब क्षेत्रों की जांच करने के लिए स्मार्ट डेटा की जांच करें, संभवतः डिस्क उपयोगिता ( पालिम्पेस्ट ) लॉन्च करके सबसे अच्छा सुलभ है । यहां तक कि अगर आपको वहां कोई बुरा ब्लॉक नहीं दिखता है, तो सुनिश्चित करने के लिए एक आत्म-परीक्षण लॉन्च करें।
कार्यक्रम gnome-disk-utility
पैकेज में बंडल किया गया है। Daudgksudo gnome-disks
या उबंटू में 16.04 संस्करण (3.18):
आप भी उपयोग कर सकते हैं badblocks
sudo badblocks -sv /dev/sda
केवल जाँच करने के लिए, या जाँचने और ठीक करने के लिए पहले एक अस्थायी फ़ाइल पर परिणाम लिखें:
sudo badblocks -sv /dev/sda > bad-blocks-result
sudo fsck -t ext4 -l bad-blocks-result /dev/sda1
संपूर्ण डिस्क की जाँच करेगा और / dev / sda पर आने वाले सभी ख़राब ब्लॉकों का प्रिंट आउट लेगा ।
से badblocks
मैनुअल:
महत्वपूर्ण नोट: यदि बैडब्लॉक का आउटपुट e2fsck या mke2fs प्रोग्राम को खिलाया जा रहा है, तो यह महत्वपूर्ण है कि ब्लॉक का आकार ठीक से निर्दिष्ट हो, क्योंकि ब्लॉक नंबर जो उत्पन्न होते हैं, वे फाइलसिस्टम द्वारा उपयोग में ब्लॉक आकार पर बहुत निर्भर होते हैं। । इस कारण से, यह दृढ़ता से अनुशंसा की जाती है कि उपयोगकर्ता सीधे बैडब्लॉक न चलाएं, बल्कि e2fsck और mke2fs कार्यक्रमों के -c विकल्प का उपयोग करें।
fsck
fsck
अपने आप को खराब क्षेत्रों को खोजने में मदद नहीं करेगा, इससे भी बदतर, अगर बहुत सारे बुरे क्षेत्र हैं तो यह आपके डेटा को और भी अधिक नुकसान पहुंचा सकता है। इसका उपयोग केवल तब करें जब डिस्क स्वस्थ हो।
इस पूरे उत्तर के दौरान, मैं मान लूंगा कि पथ पर स्टोरेज ड्राइव ब्लॉक डिवाइस के रूप में दिखाई देती है /dev/sdc
। हमारे वर्तमान सेटअप में स्टोरेज ड्राइव का रास्ता खोजने के लिए, उपयोग करें:
palimpsest
), याlsblk
और ls -l /dev/disk/by-id
और आकार, विभाजन, निर्माता और मॉडल नाम से सही डिवाइस को खोजने के लिए प्रयास करें।कभी-कभी एक भंडारण माध्यम बस काम करने से मना कर देता है। यह अभी भी कर्नेल और डिस्क प्रबंधक में एक ब्लॉक डिवाइस के रूप में दिखाई देता है, लेकिन विभाजन तालिका को पकड़ने वाला इसका पहला क्षेत्र पठनीय नहीं है। इसे आसानी से सत्यापित किया जा सकता है:
sudo dd if=/dev/sdc of=/dev/null count=1
यदि यह आदेश "इनपुट / आउटपुट त्रुटि" के बारे में संदेश देता है, तो हमारी ड्राइव टूट गई है या अन्यथा अपेक्षित रूप से लिनक्स कर्नेल के साथ बातचीत करने में विफल रहता है। पूर्व मामले में, थोड़े से भाग्य के साथ, उचित रूप से सुसज्जित प्रयोगशाला के साथ एक डेटा रिकवरी विशेषज्ञ इसकी सामग्री को उबार सकता है। बाद के मामले में, एक अलग ऑपरेटिंग सिस्टम एक कोशिश के लायक है। (मैं USB ड्राइव पर आया हूं जो विशेष ड्राइवरों के बिना विंडोज पर काम करता है, लेकिन लिनक्स या ओएस एक्स पर नहीं।)
जो डिवाइस इसका समर्थन करते हैं, उन्हें SMART के माध्यम से अपने स्वास्थ्य के बारे में बताया जा सकता है या अलग-अलग संपूर्णता के अखंडता परीक्षण करने का निर्देश दिया गया है। यह आमतौर पर सबसे अच्छा विकल्प है, लेकिन आमतौर पर केवल (गैर-प्राचीन) हार्ड डिस्क और ठोस राज्य ड्राइव पर उपलब्ध है। अधिकांश हटाने योग्य फ्लैश मीडिया इसका समर्थन नहीं करते हैं।
आगे के संसाधन और निर्देश:
इसे लिखे बिना पूरे डिवाइस की रीड अखंडता का परीक्षण करने के लिए, हम badblocks(8)
इस तरह का उपयोग कर सकते हैं :
sudo badblocks -b 4096 -c 4096 -s /dev/sdc
इस ऑपरेशन में बहुत समय लग सकता है, खासकर अगर स्टोरेज ड्राइव वास्तव में क्षतिग्रस्त हो। यदि त्रुटि गणना शून्य से ऊपर उठती है, तो हम जानेंगे कि एक बुरा ब्लॉक है। हम किसी भी क्षण (यहां तक कि एक शक्ति विफलता के दौरान भी जबरदस्ती) ऑपरेशन को सुरक्षित रूप से समाप्त कर सकते हैं, अगर हम खराब ब्लॉकों की सटीक राशि (और शायद स्थान) में रुचि नहीं रखते हैं। विकल्प के साथ त्रुटि पर स्वचालित रूप से गर्भपात करना संभव है -e 1
।
उन्नत उपयोग के लिए ध्यान दें: यदि हम इसके लिए आउटपुट का पुन: उपयोग करना चाहते हैं e2fsck
, तो हमें -b
निहित फ़ाइल सिस्टम के ब्लॉक आकार ( ) को सेट करने की आवश्यकता है। हम -c
थ्रूपुट में सुधार करने के लिए एक बार परीक्षण किए गए डेटा की मात्रा ( ब्लॉक में) को भी ट्वीक कर सकते हैं ; अधिकांश उपकरणों के लिए 16 MiB ठीक होना चाहिए।
कभी-कभी - विशेष रूप से फ्लैश मीडिया के साथ - एक त्रुटि केवल तब होती है जब लिखने की कोशिश की जाती है। (यह मज़बूती से (फ्लैश) मीडिया की खोज नहीं करेगा , जो बड़े आकार का विज्ञापन करता है, वास्तव में उनके पास है; इसके बजाय फ़ाइट फ्लैश फ्रॉड का उपयोग करें।)
कभी भी माउंटेड फाइल सिस्टम वाली ड्राइव पर इसका इस्तेमाल न करें ! badblocks
वैसे भी उन पर काम करने से इनकार करते हैं, जब तक कि आप इसे मजबूर न करें।
इस ऑपरेशन को बलपूर्वक बाधित न करें ! Ctrl+ C(SIGINT / SIGTERM) और सुशोभित समयपूर्व समाप्ति की प्रतीक्षा करना ठीक है, लेकिन killall -9 badblocks
(SIGKILL) नहीं है। जबरदस्ती समाप्ति पर badblocks
वर्तमान में परीक्षण की गई ब्लॉक रेंज की मूल सामग्री को पुनर्स्थापित नहीं किया जा सकता है और यह जंक डेटा के साथ अधिलेखित हो जाएगा और संभवतः फ़ाइल सिस्टम को दूषित कर देगा।
गैर-विनाशकारी रीड-राइट चेक का उपयोग -n
करने के लिए, उपरोक्त badblocks
कमांड में विकल्प जोड़ें ।
जैसा कि ऊपर है, लेकिन लेखन परीक्षण करने के बाद पिछली ड्राइव सामग्री को पुनर्स्थापित किए बिना, इसलिए यह थोड़ा तेज़ है। चूँकि डेटा को वैसे भी मिटा दिया जाता है, इसलिए जबरदस्ती समाप्ति नकारात्मक परिणाम के बिना (अतिरिक्त) रहती है।
विनाशकारी रीड-राइट चेक का उपयोग -w
करने के लिए, उपरोक्त badblocks
कमांड में विकल्प जोड़ें ।
fsck - लिनक्स फाइल सिस्टम की जांच और मरम्मत करें। इसका उपयोग करके आह्वान करें
fsck /dev/sda1
जहाँ / dev / sda1 वह ड्राइव है जिसे आप जांचना चाहते हैं। अधिक विवरण के लिए 'आदमी fsck' देखें।
'बैडब्लॉक' कमांड भी है, जो किसी डिवाइस की जांच करता है, आपने अनुमान लगाया है कि यह खराब है।
चेक करते समय ड्राइव को अनमाउंट करने की आवश्यकता होती है, इसलिए रूट विभाजन की जांच करने के लिए आपको विभाजन के रूट में एक फाइल 'फोर्सफेक' बनाने की जरूरत है और रिबूट करें। डिवाइस अगले बूट पर जाँच की जाएगी:
sudo touch /forcefsck
sudo reboot
वैकल्पिक रूप से, आप एक लाइव सीडी से बूट कर सकते हैं और वहां से चेक चला सकते हैं।
sudo dumpe2fs -b /dev/sda9
। लेकिन मुझे लगता है कि यह बेहतर है अगर डिस्क दोषपूर्ण क्षेत्रों का ख्याल रखती है, न कि फाइल सिस्टम (SMART, बैडब्लॉक आदि), अपनी पोस्ट देखें)।
आप कमांड चलाने वाले बैडब्लॉक की जांच कर सकते हैं
sudo badblocks -nsv /dev/[device-partition] > bad-blocks-result
एक गैर-विनाशकारी पढ़ने-लिखने के परीक्षण के लिए। यह bad-blocks-result
क्षतिग्रस्त क्षेत्रों के साथ नामक एक फ़ाइल उत्पन्न करेगा ।
-नॉन -डिस्ट्रक्टिव रीड-राइट मोड का उपयोग करें। डिफ़ॉल्ट रूप से केवल एक गैर-विनाशकारी रीड-ओनली परीक्षण किया जाता है।
-s डिस्क पर वर्तमान बैडब्लॉक पास के लगभग प्रतिशत पूर्णता को लिखकर स्कैन की प्रगति दिखाएं।
-V वर्बोज मोड।
sudo fsck -t ext3 -l bad-blocks-result /dev/[device-partition]
उस फ़ाइल सिस्टम को बताने के लिए चला सकते हैं जहां खराब क्षेत्र हैं और यदि संभव हो तो डेटा को उनसे दूर ले जाएं।आप इसके बारे में और अधिक जानकारी यहाँ पा सकते हैं ।
fsck
कमांड के साथ विफल रहता है btrfs
फाइल सिस्टम।
IMO smartctl एक बेहतर टूल है। आपको पहले इसे स्थापित करने की संभावना है
sudo apt-get install smartmontools
फिर
sudo smartctl -a /dev/sda | less
ड्राइव स्वास्थ्य डेटा, विशेषताओं और उपलब्ध परीक्षण परिणामों को प्रिंट करने के लिए। कम छोड़ने के लिए, टाइप करें q
। वैकल्पिक रूप से
sudo smartctl -H /dev/sda
सिर्फ स्वास्थ्य डेटा मुद्रित करने के लिए।
एक नई छोटी (कुछ मिनट) या लंबी (कई घंटों तक) पृष्ठभूमि में आत्म परीक्षण शुरू करने के लिए:
sudo smartctl -t [short|long]
यदि आप चाहें तो GSsmartControl ( होम पेज ) और गनोम डिस्क ग्राफिकल फ्रंट एंड हैं।
smartctl
: "अज्ञात यूएसबी ब्रिज", "कृपया -d विकल्प के साथ डिवाइस प्रकार निर्दिष्ट करें"। मुझे वह डेटा मिला जिसकी मुझे आवश्यकता थी: smartmontools.org/wiki/Supported_USB-Devices ।
F3 (फाइट फ्लैश फ्रॉड) एक और विकल्प है जो अतिरिक्त रूप से नकली फ्लैश ड्राइव का पता लगाना चाहिए (फ्लैश ड्राइव जिनकी वास्तविक क्षमता विज्ञापन क्षमता का एक अंश है):
F3 स्थापित करें
sudo apt install f3
अपनी ड्राइव डालें
टेस्ट डेटा को ड्राइव पर खाली जगह पर लिखें (जाँच करें कि आपकी ड्राइव कहाँ है lsblk
)
f3write /media/$USER/D871-DD7C/
परीक्षण डेटा पढ़ें
f3read /media/$USER/D871-DD7C/
संदर्भ:
बैडब्लॉक अच्छी तरह से काम करता है लेकिन यह नकली फ्लैश ड्राइव का पता लगाने के लिए नहीं बनाया गया है और हो सकता है कि उनके लिए कोई त्रुटि रिपोर्ट न करें ।
badblocks
के साथ -w
या fsck
निशान क्षेत्रों के साथ के रूप में बुरा / क्षतिग्रस्त तो वे उपयोग नहीं कर रहे हैं। f3 जैसे कुछ वापस कर सकता है Corrupted: 16.01 MB (32784 sectors)
, लेकिन क्या वे बुरे क्षेत्रों के रूप में चिह्नित करते हैं? या फिर हमें उसके लिए बैडब्लॉक की आवश्यकता है? मैं कोशिश कर रहा हूँ के साथdumpe2fs -b
और ऐसा लगता आईडी निशान नहीं है।
प्रगति संकेतक दिखाते हुए आप संपूर्ण डिस्क को टेस्ट-रीड कर सकते हैं:
time sudo pv /dev/sdc >/dev/null
कुछ डिस्क समस्याएं I / O त्रुटियों के रूप में प्रकट होंगी। यह dd
प्रगति सूचक के कारण थोड़ा सा अच्छा है और क्योंकि कमांड-लाइन इंटरफ़ेस थोड़ा अधिक मानक और थोड़ा कम टाइपो-प्रवण है । ध्यान दें कि pv
मूल रूप से और वर्धित संस्करण है cat
। यह डिफ़ॉल्ट रूप से स्थापित नहीं किया जा सकता है, लेकिन इसके साथ स्थापित किया जा सकता है sudo apt-get install pv
।
एक समान दृष्टिकोण डिस्क को कई उपलब्ध उपकरणों में से एक के साथ पढ़ना है जो विशेष रूप से डिस्क I / O त्रुटियों से अवगत हैं - और "डेटा को बचाने के लिए कड़ी मेहनत करने" की सुविधा है। ddrescue
पैकेज मैनेजर में खोजें ।
dd count=1
जब तक कि भंडारण माध्यम पूरी तरह से टूट न जाए (या असमर्थित) भी बहुत तेज है।
ddrescueview
dd
पास प्रगति सूचक है status=progress
।
यदि आपके पास एक विभाजन है जिसे आप नहीं हटा सकते हैं तो डेटा इन चरणों का पालन करता है
$fdisk -l commnd
मान लें कि चेक करने के लिए विभाजन को / dev / sdPTC (जांच करने के लिए विभाजन) कहा जाता है और आपके पास / स्कैन / resultPath / फ़ोल्डर पर माउंट किए गए परिणामों को संग्रहीत करने के लिए एक और विभाजन है
2. जब आप इस कमांड को चला सकते हैं
$sudo badblocks -v /dev/sdPTC > /scan/resultPath/badsectors.txt
जो निर्धारित करेगा कि दिए गए डिवाइस के खराब ब्लॉक क्या हैं और उन्हें badsectors.txt नामक फाइल पर स्टोर करें
fsck
Ubuntu का उपयोग करके बता सकते हैं कि खराब सेक्टर्स में उल्लिखित बुरे सेक्टरों का उपयोग न करें।$sudo fsck -l /scan_result/badsectors.txt /dev/sda
इस तरह हार्ड डिस्क का जीवन तब तक थोड़ा बढ़ जाता है जब तक आपको प्रतिस्थापन के लिए एक नया नहीं मिलता।
यदि आपके पास एक पूर्ण विभाजन है जिसे आप खराब भौतिक क्षेत्रों के लिए जाँचना चाहते हैं और आप उस विभाजन पर सभी डेटा को खो सकते हैं या क्या यह इन चरणों का पालन करना है?
$sudo apt-get install gnome-disk-utility
$sudo gnome-disks
जांचें और जांचें कि उस विभाजन पर कोई महत्वपूर्ण डेटा नहीं है
का उपयोग करते हुए gnome-disks
"-" चिन्ह / हटा का उपयोग कर हाथ से विभाजन निकालें
gnome-disks
एक नए विभाजन का उपयोग करना और "धीमा" विकल्प चुनें जो त्रुटियों के लिए दिए गए स्थान की जांच करेगा
bionic beaver
डिस्क जांच अलग से संभालती है?