noatime விருப்பம் செயல்திறனை எவ்வாறு மற்றும் ஏன் மேம்படுத்துகிறது Linux-அமைப்புகள்

நேர புதுப்பிப்பு கணினி செயல்திறனை பாதிக்கிறது. அங்கு என்ன நடக்கிறது, அதைப் பற்றி என்ன செய்வது - கட்டுரையைப் படியுங்கள்.

noatime விருப்பம் செயல்திறனை எவ்வாறு மற்றும் ஏன் மேம்படுத்துகிறது Linux-அமைப்புகள்
ஒவ்வொரு முறையும் நான் புதுப்பிக்கும்போது Linux என் வீட்டுக் கணினியில், நான் சில குறிப்பிட்ட பணிகளைச் செய்ய வேண்டியுள்ளது. பல ஆண்டுகளாக, இது ஒரு பழக்கமாகிவிட்டது: என் கோப்புகளைக் காப்புப் பிரதி எடுப்பேன், கணினியை முழுவதுமாக அழிப்பேன், எல்லாவற்றையும் புதிதாக நிறுவுவேன், என் கோப்புகளை மீட்டெடுப்பேன், பின்னர் எனக்குப் பிடித்தமான செயலிகளை மீண்டும் நிறுவுவேன். கணினி அமைப்புகளையும் நான் தனிப்பயனாக்குவேன். சில நேரங்களில் இதற்கு அதிக நேரம் ஆகிறது. சமீபத்தில், இந்தத் தலைவலி எனக்கு உண்மையிலேயே தேவையா என்று நான் யோசிக்கத் தொடங்கினேன்.

ஒரு முறை கோப்புகளுக்கான மூன்று நேர முத்திரைகளில் ஒன்று Linux (அதைப்பற்றிப் பின்னர் விரிவாகப் பார்ப்போம்.) குறிப்பாக, பிற்கால கணினி அமைப்புகளில் அதைச் சிறிது நேரம் முடக்குவது இன்னமும் பயனுள்ளதா என்று நான் யோசித்தேன். Linuxஒவ்வொரு முறை ஒரு கோப்பு அணுகப்படும்போதும் நேரம் புதுப்பிக்கப்படுவதால், அது கணினியின் செயல்திறனில் குறிப்பிடத்தக்க தாக்கத்தை ஏற்படுத்துகிறது என்பதை நான் உணர்ந்தேன்.
நான் சமீபத்தில் Fedora 32 க்கு மேம்படுத்தினேன், மேலும், வழக்கத்திற்கு மாறாக, நேரத்தை முடக்குவதன் மூலம் தொடங்கினேன். நான் நினைத்தேன்: எனக்கு இது உண்மையில் தேவையா? நான் இந்த சிக்கலைப் படிக்க முடிவு செய்தேன், இதைத்தான் நான் தோண்டி எடுத்தேன்.

கோப்பு நேர முத்திரைகள் பற்றி கொஞ்சம்

இதைப்புரிந்துகொள்ள, நீங்கள் சற்று பின்வாங்கி, கோப்பு அமைப்புகள் பற்றிய சில விஷயங்களை நினைவில் கொள்ள வேண்டும். Linux மேலும், கர்னல் கோப்புகள் மற்றும் கோப்பகங்களுக்கு நேரமுத்திரைகளை எவ்வாறு ஒதுக்குகிறது என்பதையும் காணலாம். கட்டளையை இயக்குவதன் மூலம் கோப்புகள் மற்றும் கோப்பகங்களின் கடைசி மாற்றியமைக்கப்பட்ட தேதியை நீங்கள் பார்க்கலாம். ls -l (நீண்ட) அல்லது கோப்பு மேலாளரில் அதைப் பற்றிய தகவலைப் பார்ப்பதன் மூலமும் தெரிந்துகொள்ளலாம். ஆனால் திரைக்குப் பின்னால், கெர்னல்Linux கோப்புகள் மற்றும் கோப்பகங்களுக்கான பல நேர முத்திரைகளைக் கண்காணிக்கிறது:

  1. கோப்பு கடைசியாக எப்போது மாற்றப்பட்டது (mtime)
  2. கோப்பு பண்புகள் மற்றும் மெட்டாடேட்டா கடைசியாக எப்போது மாற்றப்பட்டது (ctime)
  3. கோப்பு கடைசியாக எப்போது அணுகப்பட்டது (நேரம்)
  4. நீங்கள் கட்டளையைப் பயன்படுத்தலாம் மாநிலகோப்பு அல்லது அடைவு பற்றிய தகவலைப் பார்க்க. இதோ கோப்பு / Etc / fstab க்கு எனது சோதனை சேவையகங்களில் ஒன்றிலிருந்து:

$ stat fstab
  File: fstab
  Size: 261             Blocks: 8          IO Block: 4096   regular file
Device: b303h/45827d    Inode: 2097285     Links: 1
Access: (0664/-rw-rw-r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: system_u:object_r:etc_t:s0
Access: 2019-04-25 21:10:18.083325111 -0500
Modify: 2019-05-16 10:46:47.427686706 -0500
Change: 2019-05-16 10:46:47.434686674 -0500
 Birth: 2019-04-25 21:03:11.840496275 -0500

நான் கணினியை நிறுவிய போது இந்த கோப்பு ஏப்ரல் 25, 2019 அன்று உருவாக்கப்பட்டது என்பதை இங்கே பார்க்கலாம். எனது கோப்பு / Etc / fstab க்கு கடைசியாக மே 16, 2019 அன்று மாற்றப்பட்டது, மற்ற எல்லா பண்புக்கூறுகளும் அதே நேரத்தில் மாற்றப்பட்டன.

நான் நகலெடுத்தால் / Etc / fstab க்கு ஒரு புதிய கோப்பில், அது ஒரு புதிய கோப்பு என்பதைக் குறிக்கும் தேதிகள் மாறும்:

$ sudo cp fstab fstab.bak
$ stat fstab.bak
  File: fstab.bak
  Size: 261             Blocks: 8          IO Block: 4096   regular file
Device: b303h/45827d    Inode: 2105664     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:etc_t:s0
Access: 2020-05-12 17:53:58.442659986 -0500
Modify: 2020-05-12 17:53:58.443659981 -0500
Change: 2020-05-12 17:53:58.443659981 -0500
 Birth: 2020-05-12 17:53:58.442659986 -0500

ஆனால், கோப்பின் உள்ளடக்கங்களை மாற்றாமல் அதன் பெயரை மட்டும் மாற்றினால், Linux கோப்பு மாற்றியமைக்கப்பட்ட நேரம் மட்டுமே புதுப்பிக்கப்படும்:

$ sudo mv fstab.bak fstab.tmp
$ stat fstab.tmp
  File: fstab.tmp
  Size: 261             Blocks: 8          IO Block: 4096   regular file
Device: b303h/45827d    Inode: 2105664     Links: 1
Access: (0644/-rw-r--r--)  Uid: (    0/    root)   Gid: (    0/    root)
Context: unconfined_u:object_r:etc_t:s0
Access: 2020-05-12 17:53:58.442659986 -0500
Modify: 2020-05-12 17:53:58.443659981 -0500
Change: 2020-05-12 17:54:24.576508232 -0500
 Birth: 2020-05-12 17:53:58.442659986 -0500

இந்த நேர முத்திரைகள் சில யுனிக்ஸ் நிரல்களுக்கு மிகவும் பயனுள்ளதாக இருக்கும். எடுத்துக்காட்டாக, biff என்பது உங்கள் மின்னஞ்சலில் புதிய செய்தி வரும்போது உங்களுக்குத் தெரிவிக்கும் ஒரு நிரலாகும். தற்போது வெகு சிலரே பயன்படுத்துகின்றனர் பிஃப், ஆனால் அஞ்சல் பெட்டிகள் கணினியில் உள்ளூரில் இருந்த நாட்களில், biff மிகவும் பொதுவானது.

உங்கள் இன்பாக்ஸில் புதிய அஞ்சல் இருந்தால் நிரலுக்கு எப்படித் தெரியும்? biff கடைசியாக மாற்றியமைக்கப்பட்ட நேரத்தையும் (புதிய மின்னஞ்சல் செய்தியுடன் இன்பாக்ஸ் கோப்பு புதுப்பிக்கப்பட்டபோது) மற்றும் கடைசி அணுகல் நேரத்தையும் (உங்கள் மின்னஞ்சலை கடைசியாகப் படித்தது) ஒப்பிடுகிறது. அணுகலுக்குப் பிறகு மாற்றம் ஏற்பட்டால், புதிய கடிதம் வந்துள்ளது என்பதை biff புரிந்துகொண்டு அதைப் பற்றி உங்களுக்குத் தெரிவிக்கும். மட் மின்னஞ்சல் கிளையண்ட் அதே வழியில் செயல்படுகிறது.

கோப்பு முறைமை பயன்பாட்டு புள்ளிவிவரங்கள் மற்றும் டியூன் செயல்திறனை நீங்கள் சேகரிக்க வேண்டும் என்றால், கடைசி அணுகல் நேர முத்திரை பயனுள்ளதாக இருக்கும். கணினி நிர்வாகிகள் எந்தெந்த பொருட்களை அணுகுகிறார்கள் என்பதை அறிந்து கொள்ள வேண்டும், அதனால் அவர்கள் கோப்பு முறைமையை அதற்கேற்ப கட்டமைக்க முடியும்.

ஆனால் பெரும்பாலான நவீன நிரல்களுக்கு இனி இந்தக் குறியீடு தேவையில்லை, எனவே அதை வழக்கற்றுப் போகச் செய்ய ஒரு முன்மொழிவு இருந்தது. 2007-ல், லினஸ் டோர்வால்ட்ஸ் மற்றும் பல கெர்னல் உருவாக்குநர்கள் ஒரு செயல்திறன் சிக்கல் தொடர்பாக இது குறித்து விவாதித்தனர். கெர்னல் உருவாக்குநர் Linux atime மற்றும் ext3 கோப்பு முறைமை குறித்து இங்கோ மோல்னார் பின்வரும் கருத்தைத் தெரிவித்தார்:

ஒவ்வொரு டெஸ்க்டாப்பும் சர்வரும்... Linux தொடர்ச்சியான atime புதுப்பிப்புகளால், குறிப்பிடத்தக்க உள்ளீடு/வெளியீட்டுச் செயல்திறன் சீர்குலைவு ஏற்படுகிறது; இருப்பினும், உண்மையான பயனர்கள் இரண்டே இரண்டுதான்: tmpwatch [இதை ctime-ஐப் பயன்படுத்தும்படி உள்ளமைக்க முடியும், எனவே இது ஒரு பெரிய பிரச்சனை அல்ல] மற்றும் சில காப்புப் பிரதி கருவிகள்.

ஆனால், இந்த நேர முத்திரை தேவைப்படும் சில நிரல்களை மக்கள் இன்னும் பயன்படுத்துகின்றனர், எனவே atime-ஐ நீக்குவது அவற்றைச் செயலிழக்கச் செய்துவிடும். கெர்னல் உருவாக்குநர்கள் Linux பயனரின் சுதந்திரத்தில் தலையிடக் கூடாது.

சாலமன் தீர்வு

விநியோகங்களில் Linux பலதரப்பட்ட பயன்பாடுகள் இதில் சேர்க்கப்பட்டுள்ளன, மேலும் பயனர்கள் தங்கள் தேவைகளுக்கு ஏற்ப மற்ற நிரல்களையும் பதிவிறக்கம் செய்து நிறுவலாம். இது ஒரு திறந்த மூல இயக்க முறைமையின் முக்கிய நன்மையாகும். இருப்பினும், இது உங்கள் கோப்பு அமைப்பின் செயல்திறனை மேம்படுத்துவதை கடினமாக்குகிறது. அதிக வளங்களைப் பயன்படுத்தும் கூறுகளை நீக்குவது கணினியின் செயல்திறனை சீர்குலைக்கக்கூடும்.

ஒரு சமரசமாக, கர்னல் உருவாக்குநர்கள் Linux செயல்திறன் மற்றும் இணக்கத்தன்மைக்கு இடையே ஒரு சமநிலையை வழங்கும் நோக்கில், நாங்கள் ஒரு புதிய ரிலேடைம் விருப்பத்தை அறிமுகப்படுத்தியுள்ளோம்:

முந்தைய அணுகல் நேரம், தற்போதைய மாற்றியமைத்தல் அல்லது நிலை மாற்ற நேரத்தை விடக் குறைவாக இருந்தால் மட்டுமே நேரம் புதுப்பிக்கப்படும்... இதிலிருந்து தொடங்குகிறது Linux 2.6.30 முதல், கர்னல் இந்த விருப்பத்தை இயல்புநிலையாகப் பயன்படுத்துகிறது (noatime குறிப்பிடப்பட்டாலன்றி)… மேலும், இதிலிருந்து தொடங்கி Linux 2.6.30, ஒரு கோப்பு ஒரு நாளுக்கு மேல் பழமையானதாக இருந்தால், அதன் கடைசி அணுகல் நேரம் எப்போதும் புதுப்பிக்கப்படும்.

நவீன அமைப்புகள் Linux (தொடக்கத்தில் இருந்து) Linux 2009-ல் வெளியிடப்பட்ட 2.6.30 பதிப்பு, ஏற்கனவே ரிலேடைம் (relaytime)-ஐப் பயன்படுத்துகிறது, இது செயல்திறனில் ஒரு மிகப்பெரிய மேம்பாட்டை வழங்கும். இதன் பொருள், நீங்கள் கோப்பை உள்ளமைக்கத் தேவையில்லை. / Etc / fstab க்கு, மற்றும் ரிலேடைம் மூலம் நீங்கள் இயல்புநிலையை நம்பலாம்.

noatime உடன் கணினி செயல்திறனை மேம்படுத்துதல்

ஆனால் அதிகபட்ச செயல்திறனைப் பெற உங்கள் கணினியை டியூன் செய்ய விரும்பினால், நேரத்தை முடக்குவது இன்னும் சாத்தியமாகும்.

மிக வேகமான நவீன டிரைவ்களில் (NVME அல்லது Fast SSD போன்றவை) செயல்திறன் மாற்றம் மிகவும் கவனிக்கப்படாமல் இருக்கலாம், ஆனால் அங்கு சிறிய அதிகரிப்பு உள்ளது.

நேரம் தேவைப்படும் மென்பொருளை நீங்கள் பயன்படுத்தவில்லை என்பது உங்களுக்குத் தெரிந்தால், கோப்பில் noatime விருப்பத்தை இயக்குவதன் மூலம் செயல்திறனை சிறிது மேம்படுத்தலாம் /etc/fstab. இதற்குப் பிறகு, கர்னல் தொடர்ந்து நேரத்தை புதுப்பிக்காது. கோப்பு முறைமையை ஏற்றும்போது noatime விருப்பத்தைப் பயன்படுத்தவும்:

/dev/mapper/fedora_localhost--live-root /          ext4   defaults,noatime,x-systemd.device-timeout=0 1 1
UUID=be37c451-915e-4355-95c4-654729cf662a /boot    ext4   defaults,noatime        1 2
UUID=C594-12B1                          /boot/efi  vfat   umask=0077,shortname=winnt 0 2
/dev/mapper/fedora_localhost--live-home /home      ext4   defaults,noatime,x-systemd.device-timeout=0 1 2
/dev/mapper/fedora_localhost--live-swap none       swap   defaults,x-systemd.device-timeout=0 0 0

அடுத்த முறை நீங்கள் மறுதொடக்கம் செய்யும் போது மாற்றங்கள் நடைமுறைக்கு வரும்.

விளம்பரம் உரிமைகள் மீது

உங்கள் இணையதளத்தை ஹோஸ்ட் செய்ய சர்வர் வேண்டுமா? எங்கள் நிறுவனம் வழங்குகிறது நம்பகமான சர்வர்கள் தினசரி அல்லது ஒரு முறை கட்டணம் செலுத்துவதன் மூலம், ஒவ்வொரு சேவையகமும் 500 மெகாபிட் இணைய சேனலுடன் இணைக்கப்பட்டுள்ளது மற்றும் இலவசமாக DDoS தாக்குதல்களுக்கு எதிராக பாதுகாக்கப்படுகிறது!

noatime விருப்பம் செயல்திறனை எவ்வாறு மற்றும் ஏன் மேம்படுத்துகிறது Linux-அமைப்புகள்

ஆதாரம்: www.habr.com

DDoS பாதுகாப்பு, VPS VDS சர்வர்கள் கொண்ட தளங்களுக்கு நம்பகமான ஹோஸ்டிங் வாங்கவும் 🔥 DDoS பாதுகாப்புடன் கூடிய நம்பகமான இணையதள ஹோஸ்டிங், VPS, VDS சர்வர்களை வாங்குங்கள் | ProHoster