लिनक्स में EXT2, EXT3 और EXT4 स्वास्थ्य को प्रबंधित करने के लिए 4 उपकरण
एक फाइलसिस्टम एक डेटा संरचना है जो यह नियंत्रित करने में मदद करती है कि कंप्यूटर सिस्टम पर डेटा कैसे संग्रहीत और पुनर्प्राप्त किया जाता है। एक फाइलसिस्टम को डिस्क पर एक भौतिक (या विस्तारित) विभाजन के रूप में भी माना जा सकता है। यदि अच्छी तरह से रखरखाव और नियमित रूप से निगरानी नहीं की जाती है, तो यह लंबे समय में क्षतिग्रस्त हो सकता है या भ्रष्ट हो सकता है, इतने सारे अलग-अलग तरीकों से।
कई कारक हैं जो एक फाइल सिस्टम को अस्वस्थ होने का कारण बन सकते हैं: सिस्टम क्रैश, हार्डवेयर या सॉफ़्टवेयर की खराबी, छोटी गाड़ी चालक और प्रोग्राम, इसे गलत तरीके से ट्यूनिंग करना, अत्यधिक डेटा के साथ इसे लोड करना और अन्य मामूली ग्लिट्स।
इनमें से कोई भी समस्या लिनक्स को एक फ़ाइल सिस्टम को इनायत से माउंट (या अनमाउंट) नहीं करने का कारण बन सकती है, जिससे सिस्टम विफलता हो सकती है।
इसके अलावा, एक बिगड़ा हुआ फाइल सिस्टम के साथ आपके सिस्टम को चलाने से ऑपरेटिंग सिस्टम घटकों या उपयोगकर्ता अनुप्रयोगों में अन्य रनटाइम त्रुटियों को जन्म दे सकता है, जो गंभीर डेटा हानि के लिए आगे बढ़ सकता है। फाइलसिस्टम भ्रष्टाचार या क्षति से बचने के लिए, आपको इसके स्वास्थ्य पर नजर रखने की आवश्यकता है।
इस लेख में, हम एक ext2, ext3 और ext4 फाइल सिस्टम स्वास्थ्य की निगरानी और रखरखाव के लिए उपकरणों को कवर करेंगे। यहां वर्णित सभी टूल को रूट उपयोगकर्ता विशेषाधिकारों की आवश्यकता है, इसलिए उन्हें चलाने के लिए sudo कमांड का उपयोग करें।
EXT2 / EXT3 / EXT4 फाइलसिस्टम जानकारी कैसे देखें
डंप 2 एफ़्स एक कमांड लाइन टूल है जिसका उपयोग ext2/ext3/ext4 फाइल सिस्टम जानकारी को डंप करने के लिए किया जाता है, इसका मतलब है कि यह डिवाइस पर फाइल सिस्टम के लिए सुपर ब्लॉक और ब्लॉक ग्रुप जानकारी प्रदर्शित करता है।
डंप 2 एफएस चलाने से पहले, फाइलसिस्टम डिवाइस नाम जानने के लिए df -hT कमांड चलाना सुनिश्चित करें।
$ sudo dumpe2fs /dev/sda10
dumpe2fs 1.42.13 (17-May-2015) Filesystem volume name: Last mounted on: / Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 21544960 Block count: 86154752 Reserved block count: 4307737 Free blocks: 22387732 Free inodes: 21026406 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1003 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Flex block group size: 16 Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 10:25:19 2017 Mount count: 432 Maximum mount count: -1 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 0 () Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks Journal features: journal_incompat_revoke Journal size: 128M Journal length: 32768 Journal sequence: 0x00580f0c Journal start: 12055
आप फ़ाइल सिस्टम में किसी भी ब्लॉक को आरक्षित करने के लिए -b
झंडे को पास कर सकते हैं (कोई आउटपुट बैडब्लॉक का अर्थ नहीं है):
$ dumpe2fs -b
त्रुटियों के लिए EXT2 / EXT3 / EXT4 फाइल सिस्टम की जाँच करना
e2fsck का उपयोग त्रुटियों के लिए ext2/ext3/ext4 फाइल सिस्टम की जांच करने के लिए किया जाता है और fsck जांच करता है और वैकल्पिक रूप से लिनक्स फाइल सिस्टम की मरम्मत कर सकता है; यह मूल रूप से फाइलसिस्टम चेकर्स की एक सीमा के लिए फ्रंट-एंड है ( fsck.fstype उदाहरण के लिए fsck.ext3 , fsck.sfx// आदि) लिनक्स के तहत।
याद रखें कि Linux /etc/fstab कॉन्फ़िगरेशन फ़ाइल में जाँच के लिए लेबल किए गए विभाजन पर सिस्टम बूट पर e2fack/fsck स्वचालित रूप से चलता है। यह सामान्य रूप से तब किया जाता है जब कोई फाइल सिस्टम साफ-सुथरा नहीं होता है।
लाल
$ sudo unmount /dev/sda10 $ sudo fsck /dev/sda10
वैकल्पिक रूप से, इस तरह से एक फ़ाइल सिस्टम निर्दिष्ट करने के लिए -V
स्विच के साथ वर्बोज़ आउटपुट को सक्षम करें और -t
का उपयोग करें:
$ sudo fsck -Vt ext4 /dev/sda10
EXT2 / EXT3 / EXT4 फाइलसिस्टम को ट्यूनिंग
हमने शुरुआत से उल्लेख किया है कि फाइलसिस्टम क्षति के कारणों में से एक गलत ट्यूनिंग है। आप नीचे बताए अनुसार ext2/ext3/ext4 फाइल सिस्टम के ट्यूनेबल मापदंडों को बदलने के लिए ट्यून 2 एफएएस उपयोगिता का उपयोग कर सकते हैं।
फाइलसिस्टम सुपरब्लॉक की सामग्री को देखने के लिए, मापदंडों के वर्तमान मूल्यों सहित, -l
विकल्प का उपयोग करें।
$ sudo tune2fs -l /dev/sda10
tune2fs 1.42.13 (17-May-2015) Filesystem volume name: Last mounted on: / Filesystem UUID: bb29dda3-bdaa-4b39-86cf-4a6dc9634a1b Filesystem magic number: 0xEF53 Filesystem revision #: 1 (dynamic) Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize Filesystem flags: signed_directory_hash Default mount options: user_xattr acl Filesystem state: clean Errors behavior: Continue Filesystem OS type: Linux Inode count: 21544960 Block count: 86154752 Reserved block count: 4307737 Free blocks: 22387732 Free inodes: 21026406 First block: 0 Block size: 4096 Fragment size: 4096 Reserved GDT blocks: 1003 Blocks per group: 32768 Fragments per group: 32768 Inodes per group: 8192 Inode blocks per group: 512 Flex block group size: 16 Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 10:25:19 2017 Mount count: 432 Maximum mount count: -1 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 0 () Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks
अगला, -c
ध्वज का उपयोग करके, आप संख्याओं को सेट कर सकते हैं जिसके बाद फाइल सिस्टम को e2fsck द्वारा चेक किया जाएगा। यह कमांड सिस्टम को हर 4 mounts के बाद /dev/sda10
के खिलाफ e2fsck चलाने का निर्देश देता है।
$ sudo tune2fs -c 4 /dev/sda10 tune2fs 1.42.13 (17-May-2015) Setting maximal mount count to 4
आप -i
विकल्प के साथ दो फाइल सिस्टम जांचों के बीच के समय को भी परिभाषित कर सकते हैं। निम्न आदेश फ़ाइल सिस्टम जाँच के बीच 2 दिनों का अंतराल सेट करता है।
$ sudo tune2fs -i 2d /dev/sda10 tune2fs 1.42.13 (17-May-2015) Setting interval between checks to 172800 seconds
अब यदि आप इस कमांड को नीचे चलाते हैं, तो फ़ाइल सिस्टम चेक अंतराल के लिए /dev/sda10
अब सेट है।
$ sudo tune2fs -l /dev/sda10
Filesystem created: Sun Jul 31 16:19:36 2016 Last mount time: Mon Nov 6 10:25:28 2017 Last write time: Mon Nov 6 13:49:50 2017 Mount count: 432 Maximum mount count: 4 Last checked: Sun Jul 31 16:19:36 2016 Check interval: 172800 (2 days) Next check after: Tue Aug 2 16:19:36 2016 Lifetime writes: 2834 GB Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) First inode: 11 Inode size: 256 Required extra isize: 28 Desired extra isize: 28 Journal inode: 8 First orphan inode: 6947324 Default directory hash: half_md4 Directory Hash Seed: 9da5dafb-bded-494d-ba7f-5c0ff3d9b805 Journal backup: inode blocks
डिफ़ॉल्ट जर्नलिंग पैरामीटर बदलने के लिए, -J
विकल्प का उपयोग करें। इस विकल्प में उप-विकल्प भी हैं: आकार = पत्रिका-आकार (पत्रिका का आकार निर्धारित करता है), उपकरण = बाहरी-पत्रिका (उस उपकरण को निर्दिष्ट करता है जिस पर यह संग्रहीत है) और < मजबूत> स्थान = पत्रिका-स्थान (पत्रिका के स्थान को परिभाषित करता है)।
ध्यान दें कि एक फ़ाइल सिस्टम के लिए केवल एक आकार या उपकरण विकल्प सेट किया जा सकता है:
$ sudo tune2fs -J size=4MB /dev/sda10
अंतिम लेकिन कम से कम, फ़ाइल सिस्टम का वॉल्यूम लेबल नीचे दिए गए -L
विकल्प का उपयोग करके सेट नहीं किया जा सकता है।
$ sudo tune2fs -L "ROOT" /dev/sda10
डिबग EXT2 / EXT3 / EXT4 फाइल सिस्टम
डीबगफ़्स एक सरल, इंटरैक्टिव कमांड लाइन ext2/ext3/ext4 फाइल सिस्टम डीबगर है। यह आपको फाइलसिस्टम मापदंडों को संवादात्मक रूप से संशोधित करने की अनुमति देता है। उप-आदेश या अनुरोध देखने के लिए, ?
टाइप करें।
$ sudo debugfs /dev/sda10
डिफ़ॉल्ट रूप से, फाइल सिस्टम को रीड-राइट मोड में खोला जाना चाहिए, इसे रीड-राइट मोड में खोलने के लिए -w
फ्लैग का उपयोग करें। इसे विपत्तिपूर्ण मोड में खोलने के लिए, -c
विकल्प का उपयोग करें।
debugfs 1.42.13 (17-May-2015) debugfs: ? Available debugfs requests: show_debugfs_params, params Show debugfs parameters open_filesys, open Open a filesystem close_filesys, close Close the filesystem freefrag, e2freefrag Report free space fragmentation feature, features Set/print superblock features dirty_filesys, dirty Mark the filesystem as dirty init_filesys Initialize a filesystem (DESTROYS DATA) show_super_stats, stats Show superblock statistics ncheck Do inode->name translation icheck Do block->inode translation change_root_directory, chroot ....
मुक्त स्थान विखंडन दिखाने के लिए, फ्रीफ्रैग अनुरोध का उपयोग करें, जैसे।
debugfs: freefrag
Device: /dev/sda10 Blocksize: 4096 bytes Total blocks: 86154752 Free blocks: 22387732 (26.0%) Min. free extent: 4 KB Max. free extent: 2064256 KB Avg. free extent: 2664 KB Num. free extent: 33625 HISTOGRAM OF FREE EXTENT SIZES: Extent Size Range : Free extents Free Blocks Percent 4K... 8K- : 4883 4883 0.02% 8K... 16K- : 4029 9357 0.04% 16K... 32K- : 3172 15824 0.07% 32K... 64K- : 2523 27916 0.12% 64K... 128K- : 2041 45142 0.20% 128K... 256K- : 2088 95442 0.43% 256K... 512K- : 2462 218526 0.98% 512K... 1024K- : 3175 571055 2.55% 1M... 2M- : 4551 1609188 7.19% 2M... 4M- : 2870 1942177 8.68% 4M... 8M- : 1065 1448374 6.47% 8M... 16M- : 364 891633 3.98% 16M... 32M- : 194 984448 4.40% 32M... 64M- : 86 873181 3.90% 64M... 128M- : 77 1733629 7.74% 128M... 256M- : 11 490445 2.19% 256M... 512M- : 10 889448 3.97% 512M... 1024M- : 2 343904 1.54% 1G... 2G- : 22 10217801 45.64% debugfs:
आप फ़ाइलों या निर्देशिकाओं को बनाने या हटाने, वर्तमान कार्य निर्देशिका को बदलने और बहुत कुछ करने जैसे कई अन्य अनुरोधों का पता लगा सकते हैं, बस प्रदान किए गए संक्षिप्त विवरण को पढ़कर। डीबगफ़ुट छोड़ने के लिए, q
अनुरोध का उपयोग करें।
अभी के लिए इतना ही! हमारे पास नीचे विभिन्न श्रेणियों के अंतर्गत संबंधित लेखों का संग्रह है, जो आपको उपयोगी मिलेंगे।
- 12 Useful “df” Commands to Check Disk Space in Linux
- Pydf an Alternative “df” Command to Check Disk Usage in Different Colours
- 10 Useful du (Disk Usage) Commands to Find Disk Usage of Files and Directories
- 3 Useful GUI and Terminal Based Linux Disk Scanning Tools
- How to Check Bad Sectors or Bad Blocks on Hard Disk in Linux
- How to Repair and Defragment Linux System Partitions and Directories
एक स्वस्थ फाइल सिस्टम बनाए रखना हमेशा आपके लिनक्स सिस्टम के समग्र प्रदर्शन में सुधार करता है। यदि आपके पास नीचे दिए गए टिप्पणी फ़ॉर्म का उपयोग करने के लिए कोई प्रश्न या अतिरिक्त विचार हैं।