NILFS2 - / home க்கான குண்டு துளைக்காத கோப்பு முறைமை

NILFS2 - / home க்கான குண்டு துளைக்காத கோப்பு முறைமை

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

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

NILFS2 கோப்பு முறைமை இத்தகைய சிக்கல்களைத் தீர்ப்பதற்கு ஏற்றது.

இது லினக்ஸ் கர்னலில் பதிப்பு 2.6.30 முதல் உள்ளது.

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

இந்த செயல்பாட்டை வழங்க, நீங்கள் கிரான் ஸ்கிரிப்ட்களை உள்ளமைக்க தேவையில்லை, ஸ்னாப்ஷாட்களை எடுக்க வேண்டும். NILFS2 கோப்பு முறைமை இதை தானாகவே செய்கிறது. இது பழைய தரவை மேலெழுதுவதில்லை மற்றும் போதுமான இலவச வட்டு இடம் இருந்தால் வட்டின் புதிய பகுதிகளுக்கு எப்போதும் எழுதும். நகல்-ஆன்-ரைட் கொள்கையின்படி முழுமையாக.

உண்மையில், ஒரு கோப்பில் எந்த மாற்றமும் தானாகவே கோப்பு முறைமையின் புதிய ஸ்னாப்ஷாட்டை உருவாக்குகிறது, எனவே நீங்கள் இந்த FS ஐ டைம் மெஷினாகப் பயன்படுத்தலாம் மற்றும் கோப்புகளின் நிலையை ரிவைண்ட் செய்யலாம்.

கதை

NILFS2 - / home க்கான குண்டு துளைக்காத கோப்பு முறைமைNILFS2 ஆழத்தில் உருவாக்கப்பட்டது நிப்பான் டெலிகிராப் மற்றும் டெலிபோன் கார்ப்பரேஷன், உண்மையில், அரசுக்கு சொந்தமானது (இது ஒரு கட்டுப்பாட்டுப் பங்கைக் கொண்டுள்ளது) மற்றும் ஜப்பானில் உள்ள மிகப்பெரிய தொலைத்தொடர்பு நிறுவனம். இன்னும் குறிப்பாக, தலைமையின் கீழ் சைபர்ஸ்பேஸ் ஆய்வகங்களில் Ryusuke Konishi.

இது எதற்காக உருவாக்கப்பட்டது என்பது சரியாகத் தெரியவில்லை, இருப்பினும், அத்தகைய FS, அதன் "டைம் மெஷின்" செயல்பாட்டுடன், உளவுத்துறையின் முழுப் படத்தையும் மீண்டும் இயக்குவதற்குத் தோண்டி எடுக்க விரும்பும் தரவைச் சேமிப்பதற்கு ஏற்றது என்று கருதலாம். எஸ்எம்எஸ், மின்னஞ்சல்கள் போன்றவை...

NILFS2 என்பது உள் பாதுகாப்புச் சேவைகளுக்கான மிகவும் மதிப்புமிக்க கருவியாகும், ஏனெனில் இது அஞ்சல் தரவுத்தளத்தில் உள்ள அனைத்து நீக்கப்பட்ட கடிதங்களையும் மீட்டெடுக்க உங்களை அனுமதிக்கிறது, பின்னர் தங்கள் கோப்புகளை நீக்குவதன் மூலம் அல்லது மாற்றுவதன் மூலம் அவற்றை மறைக்க முயற்சிக்கும் ஊழியர்களின் நெரிசலை வெளிப்படுத்துகிறது.

உங்கள் முழு கடித வரலாற்றையும் எவ்வாறு கண்காணிக்க முடியும்?Linux சேவையகங்களில் (இங்குதான் NILFS2 உள் பாதுகாப்பு நோக்கங்களுக்காக நிறுவப்பட வேண்டும்), மின்னஞ்சல்களை சேமிக்கும் கோப்பு முறையானது மின்னஞ்சல் செய்திகளை சேமிக்க பெரும்பாலும் பயன்படுத்தப்படுகிறது. என்று அழைக்கப்படும் வடிவம் மெயில்டிர். போட்டால் போதும் கூரியர் அஞ்சல் சேவையகம் மற்றும் Maildir இல் அஞ்சல் சேமிப்பிடத்தை உள்ளமைக்கவும். பிற வடிவம் mbox தனித்தனி செய்திகளாக எளிதில் பாகுபடுத்தக்கூடிய பெரிய உரைக் கோப்பாகும்.

அஞ்சல் சேவையகம் ஒரு தரவுத்தளத்தைப் பயன்படுத்தினால், NILFS2 ஆனது தரவுத்தள மாற்றங்களின் சரியான நேரத்தை மீட்டெடுப்பதையும், இந்த தருணங்களில் ஏதேனும் தரவுத்தளத்தை மீட்டெடுக்கும் திறனையும் சாத்தியமாக்கும். அந்த நேரத்தில் அதில் என்ன இருந்தது என்பதைப் பார்க்க நீங்கள் தரவுத்தள கருவிகளைப் பயன்படுத்த வேண்டும்.

இருப்பினும், ஏதோ தவறாகிவிட்டது. ஜப்பானிய அரசாங்கம் அனைவரையும் கண்காணிப்பது (a la Yarovaya கொள்கை) அல்லது பாரம்பரிய HDD களில் NILFS2 இன் செயல்திறன் சமமானதாக மாறியது, மேலும் NILFS2 GPL உரிமத்தின் கீழ் வெளியிடப்பட்டது மற்றும் மிக விரைவாக லினக்ஸ் கர்னலில் நுழைந்தது. உயர் தகுதி வாய்ந்த ஜப்பானிய மொழியில் எழுதப்பட்ட குறியீட்டைப் பற்றி குறிப்பிட்ட புகார்கள் எதுவும் இல்லை, லினக்ஸ் கர்னலின் டெவலப்பர்கள் அதைக் கொண்டிருக்கவில்லை.

NILFS2 எப்படி இருக்கும்?

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

ஒரு புரோகிராமரின் பார்வையில்: ஒரு வட்ட இடையகம். கோப்பு முறைமை மாற்றங்களைக் குவித்து அவற்றை தோராயமாக 8 MB (2000 * 4096, இதில் 2000 என்பது தொகுதியில் உள்ள உறுப்புகளின் எண்ணிக்கை மற்றும் 4096 என்பது நினைவகப் பக்கத்தின் அளவு) க்கு சமமான துண்டாக எழுதுகிறது. முழு வட்டு அத்தகைய துண்டுகளாக பிரிக்கப்பட்டுள்ளது. பதிவு வரிசையாக தொடர்கிறது. இலவச இடம் தீர்ந்துவிட்டால், பழைய ஸ்னாப்ஷாட்கள் நீக்கப்பட்டு, துண்டுகள் மேலெழுதப்படும்.

அடிப்படை NILFS2 இன்னபிற

  • பதிப்பு!!!
  • தோல்விக்குப் பிறகு கோப்பு முறைமையை மீட்டெடுப்பதற்கான செயல்முறை எளிதானது: ஏற்றும் போது, ​​சரியான செக்சம் உள்ள கடைசி துண்டானது தேடப்பட்டு, அதில் ஒரு சூப்பர் பிளாக் நிறுவப்பட்டுள்ளது. இது கிட்டத்தட்ட உடனடி நடவடிக்கை.
  • ரெக்கார்டிங் எப்போதும் நேர்கோட்டில் தொடர்வதால், பின்:
    • மெதுவான சீரற்ற எழுத்துகளுடன் SSD இல் இயங்கும் போது நல்ல முடிவுகளைக் காட்ட முடியும்.
    • NILFS2 SSD வளத்தை சேமிக்கிறது, ஏனெனில் கிட்டத்தட்ட எழுதும் பெருக்கல் காரணி இல்லை.
      இன்னும் துல்லியமாக, இது 2 க்கு மேல் இல்லை.உண்மை என்னவென்றால், முழு வட்டையும் சுழற்சி முறையில் மீண்டும் எழுதும் போது, ​​NILFS2 மாற்ற முடியாத தரவை புதிய துண்டுகளுக்கு (துண்டுகள்) மாற்றும்.

      வட்டில் 10% மாறாத தரவு இருந்தால், 10 முழுமையான மறுபதிப்புடன் 1% எழுத்து அதிகரிப்பு கிடைக்கும். சரி, 50% 50% அதிகரிப்பு சாதனத்தின் 1% முழுமையில் வட்டை XNUMX முழுமையாக மீண்டும் எழுதுவதற்கு.

      அதிகபட்ச எழுத்து ஆதாயம் 2. எல்லாமே வரிசையாக எழுதப்பட்டதைக் கருத்தில் கொண்டு இது மிகவும் குறைவு. பொதுவாக, எழுதும் அனிமேஷன் 4096-பைட் பிரிவு கொண்ட வழக்கமான துண்டு துண்டான கோப்பு முறைமையை விட குறைவாக இருக்கும். (சிந்தனையால் ஈர்க்கப்பட்டது கருத்து).

  • ரிமோட் NILFS2 FS க்கு நகலெடுப்பதைச் செயல்படுத்துவதற்கான சாத்தியமான எளிமை

/வீட்டிற்கான NILFS2

யூனிக்ஸ் போன்ற இயக்க முறைமைகளில், ஒரு விதியாக, பயனர் தரவு சேமிக்கப்படும் / home கோப்புறை உள்ளது. இந்த கோப்புறையில் பல்வேறு நிரல்கள் அவற்றின் பயனர்-குறிப்பிட்ட அமைப்புகளைச் சேமிக்கின்றன.

பயனர்கள் இல்லையென்றால், யார் அடிக்கடி தவறு செய்கிறார்கள்? எனவே, அவர்கள் சொல்வது போல், கடவுளே NILFS2 ஐ / வீட்டில் பயன்படுத்த உத்தரவிட்டார்.

மேலும், SSDகளின் பரவலான பயன்பாட்டுடன், COW கோப்பு முறைமைகளைப் பயன்படுத்தும் போது கடுமையான குறைபாடுகளைப் பற்றி இப்போது நாம் கவலைப்பட வேண்டியதில்லை.

ஆம், ZFS மற்றும் BTRFS இல் எப்போது வேண்டுமானாலும் FS ஸ்னாப்ஷாட்களை உருவாக்கலாம், ஆனால் ஸ்னாப்ஷாட்களுக்கு இடையில் இழந்த கோப்பு மாற்றம் முடிவடையும் அபாயம் எப்போதும் உள்ளது. படங்கள் இன்னும் நிர்வகிக்கப்பட வேண்டும்: பழையவை நீக்கப்பட வேண்டும். NILFS2 இல், இவை அனைத்தும் தானாகவே நடக்கும், அதாவது ஒவ்வொரு சில வினாடிகளிலும்.

நான் lvcreate ஐப் பயன்படுத்தி ஒரு தருக்க தொகுதியை உருவாக்கினேன் (nvme தொகுதி குழுவில், மெல்லிய பூல் மெல்லியது). நான் அதை lvm தொகுதியில் உருவாக்க பரிந்துரைக்கிறேன், ஏனெனில் அதை எளிதாக விரிவாக்கலாம். ஒழுக்கமான பதிப்பு ஆழத்திற்கு NILFS50 உடன் 2% இலவச வட்டு இடத்தைப் பரிந்துரைக்கிறேன்.

lvcreate -V10G -T nvme/thin -n home

மற்றும் அதை NILFS2 இல் வடிவமைத்தது:

mkfs.nilfs2 -L nvme_home /dev/nvme/home

mkfs.nilfs2 (nilfs-utils 2.1.5)
Start writing file system initial data to the device
      Blocksize:4096  Device:/dev/nvme/home1  Device Size:10737418240
File system initialization succeeded !!

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

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

mkdir /mnt/newhome
mount -t nilfs2 /dev/nvme/home /mnt/newhome
cp -a /home/. /mnt/newhome

கடைசி வரிக்கு, பார்க்கவும் ஒரு கட்டுரை.

அடுத்து நாம் /etc/fstab ஐ எடிட் செய்கிறோம், இதில் /homeக்கான கோப்பு முறைமை ஏற்றப்பட்டுள்ளது

/dev/disk/by-label/nvme_home /home nilfs2    noatime 0 0

விருப்பம் noatime ஒவ்வொரு கோப்பு அணுகலிலும் நேரம் மாறாமல் செயல்திறனை மேம்படுத்த வேண்டும். அடுத்து நாம் மறுதொடக்கம் செய்கிறோம்.

NILFS2 இல் உள்ள படங்களின் வகைகள்.

நீக்குதலுக்கான நோய் எதிர்ப்பு சக்தி இல்லாத வழக்கமான ஸ்னாப்ஷாட் சோதனைச் சாவடி அல்லது மீட்புப் புள்ளி என்று அழைக்கப்படுகிறது.
தானாக நீக்குதலில் இருந்து பாதுகாக்கப்பட்ட ஒரு ஸ்னாப்ஷாட் ஒரு ஸ்னாப்ஷாட் என்று அழைக்கப்படுகிறது, பின்னர் ஒரு ஸ்னாப்ஷாட்.

சோதனைச் சாவடிகளைப் பார்ப்பது lscp கட்டளையைப் பயன்படுத்தி செய்யப்படுகிறது

ஸ்னாப்ஷாட்களைக் காண்க lscp -s

இதைப் பயன்படுத்தி எந்த நேரத்திலும் நாமே ஸ்னாப்ஷாட்களையும் சோதனைச் சாவடிகளையும் உருவாக்கலாம்:

mkcp [-s] устройство

நாங்கள் தரவை மீட்டெடுக்கிறோம்.

NILFS ஆனது, முக்கிய FS கிளையுடன் இணைந்து பணியாற்றுவதற்கு இணையாக எத்தனை பழைய ஸ்னாப்ஷாட்களை வேண்டுமானாலும் ஏற்ற அனுமதிக்கிறது. ஆனால் வாசிப்பு முறையில் மட்டுமே.

இப்படி எல்லாம் ஏற்பாடு செய்யப்பட்டுள்ளது. NILFS2 செய்யும் வழக்கமான சோதனைச் சாவடிகள் எந்த நேரத்திலும் தானாகவே நீக்கப்படும் (வட்டு இடம் தீர்ந்தால் அல்லது nilfs_cleanerd விதிகளின்படி), எனவே நிறுவும் முன் நாம் சோதனைச் சாவடியை ஸ்னாப்ஷாட்டாக மாற்ற வேண்டும் அல்லது ரஷ்ய மொழியில் ஸ்னாப்ஷாட்டைப் பிடிக்க வேண்டும்.

chcp ss номер_чекпоинта

அதன் பிறகு, நாம் ஸ்னாப்ஷாட்டை ஏற்றலாம், எடுத்துக்காட்டாக, இது போன்றது:

mount -t nilfs2 -r -o cp=номер_чекпоинта /dev/nvme/home /mnt/nilfs/номер_чекпоинта

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

chcp cp номер_чекпоинта

NILFS2 க்கான பயன்பாடுகள்

ஆனால் இதுதான் பிரச்சனை. ஆம், நிச்சயமாக, நாம் ஒரு கோப்பு முறைமையை உருவாக்கலாம், அதன் அளவை ஆன்லைனில் மாற்றலாம், சவால் புள்ளிகளின் பட்டியலைப் பார்க்கலாம், அவற்றை உருவாக்கலாம் மற்றும் நீக்கலாம். nilfs2-utils தொகுப்பு குறைந்தபட்ச ஜென்டில்மேன் தொகுப்பை வழங்குகிறது.

NTT தனது நிதியுதவியைக் குறைத்துள்ளதால், கோப்பு மாற்றங்களின் வரலாற்றைக் காட்ட அல்லது ஸ்னாப்ஷாட்களுக்கு இடையே வேறுபாட்டை ஏற்படுத்த உங்களை அனுமதிக்கும் வேகமான குறைந்த-நிலை பயன்பாடுகள் எதுவும் இல்லை.

எனது n2u பயன்பாடு

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

n2u log filename

வெளியீடு இது போன்றது:

          CHECKPOINT        DATE     TIME     TYPE          SIZE  MODE
             1787552  2019-11-24 22:08:00    first          7079    cp
             1792659  2019-11-25 23:09:05  changed          7081    cp

தேர்ந்தெடுக்கப்பட்ட செயலாக்க முறைக்கு இது மிக விரைவாக வேலை செய்கிறது: இது பைசெக்ஷன் முறையைப் பயன்படுத்தி கோப்புகளுக்கு இடையே உள்ள வேறுபாடுகளைத் தேடுகிறது, வெவ்வேறு ஸ்னாப்ஷாட்களில் கோப்பு/கோப்பகத்தை விரைவாக ஏற்றுகிறது மற்றும் ஒப்பிடுகிறது.

விசையைப் பயன்படுத்தி பல சோதனைச் சாவடிகளை அமைக்கலாம் -cp CP1:CP2 அல்லது -cp {YEAR-MM-DD}:{YEAR-MM-DD}.

ஒரு குறிப்பிட்ட கோப்பு அல்லது கோப்பகத்திற்கான சோதனைச் சாவடிகளுக்கு இடையிலான வித்தியாசத்தையும் நீங்கள் பார்க்கலாம்:

n2u diff -r cp1:cp2 filename

மாற்றங்களின் முழு காலவரிசையையும் நீங்கள் காட்டலாம்: ஒரு குறிப்பிட்ட கோப்பு/கோப்பகத்தின் சோதனைச் சாவடிகளுக்கு இடையிலான அனைத்து வேறுபாடுகளும்:

n2u blame [-r cp1:cp2] filename

இந்த கட்டளையில் தேதி இடைவெளியும் துணைபுரிகிறது.

டெவலப்பர்களுக்கு ஒரு அழுகை

ஹப்ரேயில் பல நிபுணர்கள் உள்ளனர். NILFS2ஐ முடிக்கவும். மீள்திருத்தங்கள், ரீலிங்க் மற்றும் பிற இன்னபிற பொருட்களுக்கு இடையே நகலெடுக்கவும், குறைந்த-நிலை வேகமான வேறுபாட்டை உருவாக்கவும்!

குறிப்புகள்

அதிகாரப்பூர்வ NILFS இணையதளம்.

களஞ்சியங்கள்:
NILFS2.
NILFS2 பயன்பாடுகள் மற்றும் தொகுதிகள்.

செய்திமடல்கள்:
NILFS2 டெவலப்பர்களுக்கான மின்னஞ்சல் செய்திமடல். linux-nilfs சந்தாவுக்கான ஐடி.
செய்திமடல் காப்பகம்.

nilfs_cleanerd அமைவு வழிகாட்டி.
தரப்படுத்தல் EXT4, Btrfs, XFS & NILFS2 செயல்திறன் சோதனைகள்.

ஒப்புதல்கள்:

  • NILFS2 டெவலப்பர்கள்: Ryusuke Konishi, Koji Sato, Naruhiko Kamimura, Seiji Kihara, Yoshiji Amagai, Hisashi Hifumi மற்றும் Satoshi Moriai. மற்ற முக்கிய பங்களிப்பாளர்கள்: ஆண்ட்ரியாஸ் ரோஹ்னர், டான் மெக்கீ, டேவிட் அரெண்ட், டேவிட் ஸ்மிட், டெக்ஸென் டிவ்ரீஸ், டிமிட்ரி ஸ்மிர்னோவ், எரிக் சாண்டீன், ஜிரோ செகிபா, மேட்டியோ ஃப்ரிகோ, ஹிட்டோஷி மிடேக், தகாஷி ஐவாய், வியாசெஸ்லாவ் டுபேகோ.
  • ஆம்ப்ளின் என்டர்டெயின்மென்ட் மற்றும் யுனிவர்சல் பிக்சர்ஸுக்கு அருமையான தொடர் படங்களுக்கு. "எதிர்காலத்திற்குத் திரும்பு". இடுகையின் முதல் படம் "பேக் டு தி ஃபியூச்சர் 3" திரைப்படத்திலிருந்து எடுக்கப்பட்டது.
  • நிறுவனம் RUVDS ஆதரவு மற்றும் Habré இல் உங்கள் வலைப்பதிவில் வெளியிட வாய்ப்பு.

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

ஒரு மெய்நிகர் இயந்திரத்தை ஆர்டர் செய்வதன் மூலம் நீங்கள் NILFS2 உடன் பரிசோதனை செய்யலாம் RUVDS கீழே உள்ள கூப்பனுடன். அனைத்து புதிய வாடிக்கையாளர்களுக்கும் 3 நாட்கள் இலவச சோதனைக் காலம் உள்ளது.

NILFS2 - / home க்கான குண்டு துளைக்காத கோப்பு முறைமை

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

கருத்தைச் சேர்