DEBUGFS കമാൻഡ് - ലിനക്സിൽ ഫയൽ ക്രിയേഷൻ ടൈംസ് കാണിക്കുക


ലിനക്uസ് പോലുള്ള യുണിക്uസ് പോലുള്ള സിസ്റ്റങ്ങളിൽ, എല്ലാം ഒരു ഫയലായി കണക്കാക്കുന്നു, കൂടാതെ ഒരു ഫയലിനെക്കുറിച്ചുള്ള എല്ലാ വിവരങ്ങളും (മെറ്റാഡാറ്റ അല്ലെങ്കിൽ ഫയൽ ആട്രിബ്യൂട്ടുകൾ, സൃഷ്uടിക്കുന്ന സമയം, അവസാന പരിഷ്uക്കരണം മുതലായവ..), യഥാർത്ഥ ഫയൽ ഉള്ളടക്കം ഒഴികെ ഒരു ഐനോഡിലും ലിനക്സിലും സംഭരിക്കുന്നു. ഓരോ ഫയലിനെയും അതിന്റെ ഐനോഡ് നമ്പർ ഉപയോഗിച്ച് മനുഷ്യർക്ക് വായിക്കാവുന്ന ഫയൽ നാമം അല്ലാതെ തിരിച്ചറിയുന്നു.

കൂടാതെ, അവസാന ഡാറ്റ പരിഷ്ക്കരണം, അവസാന ആക്സസ്, അവസാന സ്റ്റാറ്റസ് മാറ്റം എന്നിവയും അതിലേറെയും. ലിനക്സിൽ യഥാർത്ഥ ഫയൽ സൃഷ്ടിക്കുന്ന സമയം കണ്ടെത്താൻ ഞങ്ങൾ രണ്ട് പ്രോഗ്രാമുകളും സംയോജിപ്പിക്കും.

ഈ ലേഖനത്തിൽ, Linux ഫയൽസിസ്റ്റമുകളിൽ ഒരു ഫയലിനായി ഇനിപ്പറയുന്ന ക്രിയേഷൻ/ആക്സസ് വിവരങ്ങൾ ലഭിക്കുന്നതിന് ഡീബഗ്ഫുകളും സ്റ്റാറ്റ് പ്രോഗ്രാമുകളും ഉപയോഗിച്ച് ഒരു ഫയലിന്റെ നിർണായക ആട്രിബ്യൂട്ടുകളിൽ ഒന്ന് എങ്ങനെ കണ്ടെത്താമെന്ന് ഞങ്ങൾ വിശദീകരിക്കും.

  • ctime: ഫയൽ മാറ്റ സമയം കാണിക്കുന്നു.
  • atime: ഫയൽ ആക്സസ് സമയം കാണിക്കുന്നു.
  • mtime: ഫയൽ പരിഷ്uക്കരണ സമയം കാണിക്കുന്നു.
  • crtime: ഫയൽ സൃഷ്ടിക്കുന്ന സമയം കാണിക്കുന്നു.

ലിനക്സിൽ ഫയൽ സൃഷ്ടിക്കുന്ന തീയതി കണ്ടെത്തുക

1. ഒരു ഫയൽ സൃഷ്uടിക്കുന്ന തീയതിയും സമയവും crtime കണ്ടെത്തുന്നതിന്, About-TecMint എന്ന ഫയലിനെതിരെ സ്റ്റാറ്റ് കമാൻഡ് ഉപയോഗിച്ച് ഫയലിന്റെ ഐനോഡ് കണ്ടെത്തുക എന്നതാണ്.

$ stat About-TecMint 

  File: 'About-TecMint'
  Size: 260       	Blocks: 8          IO Block: 4096   regular file
Device: 80ah/2058d	Inode: 14420015    Links: 1
Access: (0777/-rwxrwxrwx)  Uid: ( 1000/ tecmint)   Gid: ( 1000/ tecmint)
Access: 2017-02-23 14:15:20.263337740 +0530
Modify: 2015-10-22 15:08:25.236299000 +0530
Change: 2016-08-01 10:26:36.603280013 +0530
 Birth: -

പകരമായി, About-TecMint എന്ന ഫയലിനെതിരെ നിങ്ങൾക്ക് ls -i കമാൻഡ് ഉപയോഗിക്കാം.

$ ls -i About-TecMint
 
14420015 About-TecMint

മുകളിലുള്ള കമാൻഡുകളുടെ ഔട്ട്uപുട്ടിൽ നിന്ന്, ഫയൽ ഐനോഡ് നമ്പർ 14420015 ആണ്. ഇനിപ്പറയുന്ന ഘട്ടങ്ങളിൽ ഞങ്ങൾ ഈ ഐനോഡ് നമ്പർ ഉപയോഗിക്കുന്നതിനാൽ ദയവായി ഈ അദ്വിതീയ ഐനോഡ് നമ്പർ ശ്രദ്ധിക്കുക.

2. ഇപ്പോൾ നമുക്ക് നമ്മുടെ ഫയൽ സ്ഥിതിചെയ്യുന്ന റൂട്ട് ഫയൽസിസ്റ്റം കണ്ടെത്തേണ്ടതുണ്ട്, റൂട്ട് ഫയൽ സിസ്റ്റം തിരിച്ചറിയുന്നതിനായി താഴെ പറയുന്ന df -h കമാൻഡ് നൽകുക.

$ df -h

Filesystem      Size  Used Avail Use% Mounted on
udev            3.9G     0  3.9G   0% /dev
tmpfs           788M  9.7M  779M   2% /run
/dev/sda10      324G  277G   31G  91% /
tmpfs           3.9G  192M  3.7G   5% /dev/shm
tmpfs           5.0M  4.0K  5.0M   1% /run/lock
tmpfs           3.9G     0  3.9G   0% /sys/fs/cgroup
/dev/loop3       87M   87M     0 100% /snap/core/4486
/dev/loop0       87M   87M     0 100% /snap/core/4407
/dev/loop1       82M   82M     0 100% /snap/core/4206
/dev/loop2      181M  181M     0 100% /snap/vlc/190
/dev/loop4      189M  189M     0 100% /snap/vlc/158
cgmfs           100K     0  100K   0% /run/cgmanager/fs
tmpfs           788M   40K  788M   1% /run/user/1000

മുകളിലെ ഔട്ട്uപുട്ടിൽ നിന്ന്, റൂട്ട് പാർട്ടീഷനുള്ള ഫയൽസിസ്റ്റം /dev/sda10 ആണ് (ഈ ഫയൽസിസ്റ്റം ശ്രദ്ധിക്കുക). നിങ്ങളുടെ സിസ്റ്റത്തിൽ ഇത് വ്യത്യസ്തമായിരിക്കും.

3. അടുത്തതായി, About-TecMint എന്ന ഫയലിന്റെ സൃഷ്uടി സമയം കണ്ടെത്താൻ debugfs കമാൻഡ് ഉപയോഗിക്കുക, -R ഫ്ലാഗ് ഉപയോഗിച്ച്, inode നമ്പർ 14420015 (ഇനോഡ് നമ്പർ 14420015) ഉപയോഗിച്ച് വ്യക്തമാക്കിയ ഏക ബാഹ്യ കമാൻഡ് എക്uസിക്യൂട്ട് ചെയ്യാൻ ഡീബഗ്uഫുകളെ നിർദ്ദേശിക്കുന്നു. ഈ സാഹചര്യത്തിൽ സ്റ്റാറ്റ്) തുടർന്ന് പുറത്തുകടക്കുക.

$ sudo debugfs -R 'stat <14420015>' /dev/sda10

Inode: 14420015   Type: regular    Mode:  0777   Flags: 0x80000
Generation: 2130000141    Version: 0x00000000:00000001
User:  1000   Group:  1000   Size: 260
File ACL: 0    Directory ACL: 0
Links: 1   Blockcount: 8
Fragment:  Address: 0    Number: 0    Size: 0
 ctime: 0x579ed684:8fd54a34 -- Mon Aug  1 10:26:36 2016
 atime: 0x58aea120:3ec8dc30 -- Thu Feb 23 14:15:20 2017
 mtime: 0x5628ae91:38568be0 -- Thu Oct 22 15:08:25 2015
crtime: 0x579ed684:8fd54a34 -- Mon Aug  1 10:26:36 2016
Size of extra inode fields: 32
EXTENTS:
(0):57750808
(END)

മുകളിലെ ഔട്ട്uപുട്ടിൽ നിന്ന്, About-TecMint എന്ന ഫയൽ, crtime നൽകിയത് പോലെ, Mon Aug 1 10:26:36 2016-ന് സൃഷ്uടിച്ചതാണെന്ന് ഇത് മായ്uക്കുന്നു. നിങ്ങളുടെ ഫയലിന്റെ ctime, atime, mtime എന്നിവയും നിങ്ങൾ കാണും.