ലിനക്സിലെ ഫയൽ സിസ്റ്റം പിശകുകൾ പരിഹരിക്കാൻ fsck എങ്ങനെ ഉപയോഗിക്കാം


ഡാറ്റ എങ്ങനെ സംഭരിക്കുകയും വീണ്ടെടുക്കുകയും ചെയ്യുന്നുവെന്ന് സംഘടിപ്പിക്കുന്നതിനുള്ള ഉത്തരവാദിത്തം ഫയൽസിസ്റ്റംസാണ്. ഒരു തരത്തിൽ അല്ലെങ്കിൽ മറ്റൊരു വിധത്തിൽ, കാലക്രമേണ, ഫയൽസിസ്റ്റം കേടാകുകയും അതിന്റെ ചില ഭാഗങ്ങൾ ആക്സസ് ചെയ്യാൻ കഴിയാതെ വരികയും ചെയ്യാം. നിങ്ങളുടെ ഫയൽസിസ്റ്റം അത്തരം പൊരുത്തക്കേടുകൾ വികസിപ്പിക്കുകയാണെങ്കിൽ, അതിന്റെ സമഗ്രത പരിശോധിക്കാൻ ശുപാർശ ചെയ്യുന്നു.

fsck (ഫയൽ സിസ്റ്റം സ്ഥിരത പരിശോധന) എന്ന സിസ്റ്റം യൂട്ടിലിറ്റി വഴി ഇത് പൂർത്തിയാക്കാൻ കഴിയും. ബൂട്ട് സമയത്ത് ഈ പരിശോധന സ്വയമേവ നടത്താം അല്ലെങ്കിൽ സ്വമേധയാ പ്രവർത്തിപ്പിക്കാം.

ഈ ലേഖനത്തിൽ, ഡിസ്ക് പിശകുകൾ പരിഹരിക്കാൻ നിങ്ങളെ സഹായിക്കുന്നതിന് fsck യൂട്ടിലിറ്റിയും അതിന്റെ ഉപയോഗവും ഞങ്ങൾ അവലോകനം ചെയ്യാൻ പോകുന്നു.

നിങ്ങൾ fsck പ്രവർത്തിപ്പിക്കാൻ ആഗ്രഹിക്കുന്ന വ്യത്യസ്ത സാഹചര്യങ്ങളുണ്ട്. കുറച്ച് ഉദാഹരണങ്ങൾ ഇതാ:

  • സിസ്റ്റം ബൂട്ട് ചെയ്യുന്നതിൽ പരാജയപ്പെടുന്നു.
  • സിസ്റ്റത്തിലെ ഫയലുകൾ കേടാകുന്നു (പലപ്പോഴും നിങ്ങൾ ഇൻപുട്ട്/ഔട്ട്പുട്ട് പിശക് കണ്ടേക്കാം).
  • അറ്റാച്ച് ചെയ്uത ഡ്രൈവ് (ഫ്ലാഷ് ഡ്രൈവുകൾ/SD കാർഡുകൾ ഉൾപ്പെടെ) പ്രതീക്ഷിച്ച പോലെ പ്രവർത്തിക്കുന്നില്ല.

Fsck കമാൻഡ് സൂപ്പർ യൂസർ പ്രത്യേകാവകാശങ്ങൾ അല്ലെങ്കിൽ റൂട്ട് ഉപയോഗിച്ച് പ്രവർത്തിപ്പിക്കേണ്ടതുണ്ട്. വ്യത്യസ്ത വാദങ്ങൾ ഉപയോഗിച്ച് നിങ്ങൾക്ക് ഇത് ഉപയോഗിക്കാം. അവയുടെ ഉപയോഗം നിങ്ങളുടെ നിർദ്ദിഷ്ട കേസിനെ ആശ്രയിച്ചിരിക്കുന്നു. താഴെ നിങ്ങൾ കൂടുതൽ പ്രധാനപ്പെട്ട ചില ഓപ്ഷനുകൾ കാണും:

    • -A – എല്ലാ ഫയൽ സിസ്റ്റങ്ങളും പരിശോധിക്കാൻ ഉപയോഗിക്കുന്നു. ലിസ്റ്റ് /etc/fstab എന്നതിൽ നിന്ന് എടുത്തതാണ്.
    • -C – പുരോഗതി ബാർ കാണിക്കുക.
    • -l – പരിശോധനയ്ക്കിടെ പാർട്ടീഷൻ ഉപയോഗിക്കാൻ മറ്റൊരു പ്രോഗ്രാമും ശ്രമിക്കില്ലെന്ന് ഉറപ്പ് നൽകാൻ ഉപകരണം ലോക്ക് ചെയ്യുന്നു.
    • -M – മൗണ്ട് ചെയ്ത ഫയൽസിസ്റ്റം പരിശോധിക്കരുത്.
    • -N - എന്താണ് ചെയ്യേണ്ടതെന്ന് മാത്രം കാണിക്കുക - യഥാർത്ഥ മാറ്റങ്ങളൊന്നും വരുത്തിയിട്ടില്ല.
    • -P – നിങ്ങൾക്ക് റൂട്ട് ഉൾപ്പെടെ സമാന്തരമായി ഫയൽസിസ്റ്റം പരിശോധിക്കണമെങ്കിൽ.
    • -R – റൂട്ട് ഫയൽസിസ്റ്റം പരിശോധിക്കരുത്. ഇത് ‘-A‘.
    • എന്നതിൽ മാത്രമേ ഉപയോഗപ്രദമാകൂ
    • -r – പരിശോധിക്കുന്ന ഓരോ ഉപകരണത്തിനും സ്ഥിതിവിവരക്കണക്കുകൾ നൽകുക.
    • -T – തലക്കെട്ട് കാണിക്കുന്നില്ല.
    • -t – പരിശോധിക്കേണ്ട ഫയൽസിസ്റ്റം തരങ്ങൾ പ്രത്യേകം വ്യക്തമാക്കുക. തരങ്ങൾ കോമയാൽ വേർതിരിച്ച ലിസ്റ്റ് ആകാം.
    • -V – എന്താണ് ചെയ്യുന്നതെന്ന് വിവരണം നൽകുക.

    Linux ഫയൽ സിസ്റ്റം പിശകുകൾ നന്നാക്കാൻ fsck എങ്ങനെ പ്രവർത്തിപ്പിക്കാം

    fsck പ്രവർത്തിപ്പിക്കുന്നതിന്, നിങ്ങൾ പരിശോധിക്കാൻ പോകുന്ന പാർട്ടീഷൻ മൌണ്ട് ചെയ്തിട്ടില്ലെന്ന് ഉറപ്പാക്കേണ്ടതുണ്ട്. ഈ ലേഖനത്തിന്റെ ഉദ്ദേശ്യത്തിനായി, ഞാൻ /mnt-ൽ മൌണ്ട് ചെയ്തിരിക്കുന്ന എന്റെ രണ്ടാമത്തെ ഡ്രൈവ് /dev/sdb ഉപയോഗിക്കും.

    പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുമ്പോൾ fsck പ്രവർത്തിപ്പിക്കാൻ ശ്രമിച്ചാൽ സംഭവിക്കുന്നത് ഇതാണ്.

    # fsck /dev/sdb
    

    ഇത് ഒഴിവാക്കാൻ പാർട്ടീഷൻ അൺമൗണ്ട് ചെയ്യുക.

    # umount /dev/sdb
    

    അപ്പോൾ fsck സുരക്ഷിതമായി പ്രവർത്തിപ്പിക്കാം.

    # fsck /dev/sdb
    

    fsck പ്രവർത്തിപ്പിച്ച ശേഷം, അത് ഒരു എക്സിറ്റ് കോഡ് തിരികെ നൽകും. ഈ കോഡുകൾ പ്രവർത്തിപ്പിക്കുന്നതിലൂടെ fsck-ന്റെ മാനുവലിൽ കാണാൻ കഴിയും:

    # man fsck
    
    0      No errors
    1      Filesystem errors corrected
    2      System should be rebooted
    4      Filesystem errors left uncorrected
    8      Operational error
    16     Usage or syntax error
    32     Checking canceled by user request
    128    Shared-library error            
    

    ചിലപ്പോൾ ഒരു ഫയൽസിസ്റ്റത്തിൽ ഒന്നിലധികം പിശകുകൾ കണ്ടെത്താം. അത്തരം സന്ദർഭങ്ങളിൽ നിങ്ങൾ fsck യാന്ത്രികമായി പിശകുകൾ തിരുത്താൻ ശ്രമിക്കണം. ഇത് ഉപയോഗിച്ച് ചെയ്യാം:

    # fsck -y /dev/sdb
    

    -y ഫ്ലാഗ്, ഒരു പിശക് തിരുത്താൻ fsck-ൽ നിന്നുള്ള ഏത് നിർദ്ദേശത്തിനും സ്വയമേവ \yes.

    അതുപോലെ, നിങ്ങൾക്ക് എല്ലാ ഫയൽസിസ്റ്റങ്ങളിലും (റൂട്ട് ഇല്ലാതെ) ഒരേ പോലെ പ്രവർത്തിപ്പിക്കാം:

    $ fsck -AR -y 
    

    Linux റൂട്ട് പാർട്ടീഷനിൽ fsck എങ്ങനെ പ്രവർത്തിപ്പിക്കാം

    ചില സന്ദർഭങ്ങളിൽ, നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ റൂട്ട് പാർട്ടീഷനിൽ fsck പ്രവർത്തിപ്പിക്കേണ്ടി വന്നേക്കാം. പാർട്ടീഷൻ മൌണ്ട് ചെയ്യുമ്പോൾ fsck പ്രവർത്തിപ്പിക്കാൻ കഴിയാത്തതിനാൽ, നിങ്ങൾക്ക് ഈ ഓപ്ഷനുകളിലൊന്ന് പരീക്ഷിക്കാം:

    • സിസ്റ്റം ബൂട്ടിൽ fsck നിർബന്ധിക്കുക
    • റെസ്ക്യൂ മോഡിൽ fsck പ്രവർത്തിപ്പിക്കുക

    ഞങ്ങൾ രണ്ട് സാഹചര്യങ്ങളും അവലോകനം ചെയ്യും.

    ഇത് പൂർത്തിയാക്കാൻ താരതമ്യേന എളുപ്പമാണ്, നിങ്ങൾ ചെയ്യേണ്ടത് നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ റൂട്ട് പാർട്ടീഷനിൽ forcefsck എന്ന ഫയൽ ഉണ്ടാക്കുക എന്നതാണ്. ഇനിപ്പറയുന്ന കമാൻഡ് ഉപയോഗിക്കുക:

    # touch /forcefsck
    

    അപ്പോൾ നിങ്ങൾക്ക് നിങ്ങളുടെ സിസ്റ്റത്തിന്റെ റീബൂട്ട് നിർബന്ധിക്കുകയോ ഷെഡ്യൂൾ ചെയ്യുകയോ ചെയ്യാം. അടുത്ത ബൂട്ടപ്പ് സമയത്ത്, fsck നടപ്പിലാക്കും. പ്രവർത്തനരഹിതമായ സമയം നിർണായകമാണെങ്കിൽ, ഇത് ശ്രദ്ധാപൂർവ്വം ആസൂത്രണം ചെയ്യാൻ ശുപാർശ ചെയ്യുന്നു, കാരണം നിങ്ങളുടെ സിസ്റ്റത്തിൽ ധാരാളം ഐനോഡുകൾ ഉണ്ടെങ്കിൽ, fsck കുറച്ച് അധിക സമയം എടുത്തേക്കാം.

    നിങ്ങളുടെ സിസ്റ്റം ബൂട്ട് ചെയ്ത ശേഷം, ഫയൽ ഇപ്പോഴും നിലവിലുണ്ടോയെന്ന് പരിശോധിക്കുക:

    # ls /forcefsck
    

    അങ്ങനെയാണെങ്കിൽ, ഓരോ സിസ്റ്റം ബൂട്ടിലും fsck ഒഴിവാക്കാൻ നിങ്ങൾ അത് നീക്കം ചെയ്യേണ്ടതുണ്ട്.

    റെസ്ക്യൂ മോഡിൽ fsck പ്രവർത്തിപ്പിക്കുന്നതിന് കുറച്ച് ഘട്ടങ്ങൾ കൂടി ആവശ്യമാണ്. ആദ്യം റീബൂട്ടിനായി നിങ്ങളുടെ സിസ്റ്റം തയ്യാറാക്കുക. MySQL/MariaDB മുതലായ ഏതെങ്കിലും നിർണ്ണായക സേവനങ്ങൾ നിർത്തുക, തുടർന്ന് ടൈപ്പ് ചെയ്യുക.

    # reboot
    

    ബൂട്ട് സമയത്ത്, ഗ്രബ് മെനു കാണിക്കുന്നതിനായി shift കീ അമർത്തിപ്പിടിക്കുക. \വിപുലമായ ഓപ്ഷനുകൾ തിരഞ്ഞെടുക്കുക.

    തുടർന്ന് \വീണ്ടെടുക്കൽ മോഡ് തിരഞ്ഞെടുക്കുക.

    അടുത്ത മെനുവിൽ \fsck തിരഞ്ഞെടുക്കുക.

    നിങ്ങളുടെ / ഫയൽസിസ്റ്റം റീമൗണ്ട് ചെയ്യണോ എന്ന് നിങ്ങളോട് ചോദിക്കും. \അതെ തിരഞ്ഞെടുക്കുക.

    ഇതിന് സമാനമായ ഒന്ന് നിങ്ങൾ കാണണം.

    തുടർന്ന് \പുനരാരംഭിക്കുക തിരഞ്ഞെടുത്ത് നിങ്ങൾക്ക് സാധാരണ ബൂട്ടിലേക്ക് പുനരാരംഭിക്കാം.

    ഈ ട്യൂട്ടോറിയലിൽ നിങ്ങൾ fsck എങ്ങനെ ഉപയോഗിക്കാമെന്നും വ്യത്യസ്ത Linux ഫയൽസിസ്റ്റത്തിൽ സ്ഥിരത പരിശോധനകൾ പ്രവർത്തിപ്പിക്കാമെന്നും പഠിച്ചു. നിങ്ങൾക്ക് fsck-യെ കുറിച്ച് എന്തെങ്കിലും ചോദ്യങ്ങളുണ്ടെങ്കിൽ, ചുവടെയുള്ള അഭിപ്രായ വിഭാഗത്തിൽ അവ സമർപ്പിക്കാൻ മടിക്കരുത്.