NILFS2 - системаи файлии зидди тир барои /home

NILFS2 - системаи файлии зидди тир барои /home

Тавре ки шумо медонед, агар душворӣ рӯй диҳад, ҳатман рӯй медиҳад. Эҳтимол, ҳама ҳолатҳое дошта бошанд, ки файли муҳими охирин тасодуфан нест карда шуда бошад ё матн дар муҳаррири матн тасодуфан интихоб ва нобуд карда шавад.

Агар шумо соҳиби вебсайт ё соҳиби вебсайт бошед, пас шумо эҳтимол бо ҳакерии ҳисобҳои корбар ё вебсайти шумо дучор шудаед. Дар чунин ҳолатҳо, барқарор кардани хронология, пайдо кардани усули воридшавӣ ва осебпазирии аз ҷониби ҳамлакунанда истифодашаванда муҳим аст.

Системаи файлии NILFS2 барои ҳалли чунин мушкилот комил аст.

Он дар ядрои Linux аз версияи 2.6.30 мавҷуд аст.

Хусусияти ин системаи файлӣ дар он аст, ки он ба системаи идоракунии версия монанд аст: шумо ҳамеша метавонед ҳолати системаро баргардонед ва ба он нигоҳ кунед, ки он чанд вақт пеш чӣ гуна буд.

Барои таъмини ин функсия, ба шумо лозим нест, ки скриптҳои Cron-ро танзим кунед, аксбардорӣ кунед ва ғайра. Системаи файлии NILFS2 инро худ аз худ мекунад. Он ҳеҷ гоҳ маълумоти кӯҳнаро аз нав наменависад ва дар сурати мавҷуд будани фазои кофӣ дар диск ҳамеша ба минтақаҳои нави диск менависад. Мувофики принципи «Нусха ба навиштан».

Дарвоқеъ, ҳама гуна тағирот ба файл ба таври худкор тасвири нави системаи файлиро эҷод мекунад, аз ин рӯ шумо метавонед ин FS-ро ҳамчун мошини вақт истифода баред ва ҳолати файлҳоро баргардонед.

ҳикояи

NILFS2 - системаи файлии зидди тир барои /homeNILFS2 дар қаъри таҳия шудааст Корпоратсияи телеграф ва телефонии Ниппон, дар хакикат моликияти давлатй (он акцияхои назоратй дорад) ва калонтарин ширкати телекоммуникацияи Япония мебошад. Аниқтараш, дар Лабораторияҳои CyberSpace таҳти роҳбарии Рюсуке Кониши.

Он маҳз барои чӣ таҳия шудааст, маълум нест, аммо тахмин кардан мумкин аст, ки чунин як ФС бо функсияи "мошини вақт" барои нигоҳ доштани маълумоте, ки хадамоти иктишофӣ мехоҳанд бо мақсади дубора намоиш додани тамоми тасвири худ кофта шаванд, беҳтарин аст. SMS, почтаи электронӣ ва ғайра ...

NILFS2 инчунин эҳтимолан як абзори хеле арзишманд барои хадамоти амнияти дохилӣ мебошад, зеро он ба шумо имкон медиҳад, ки ҳамаи ҳарфҳои ҳазфшударо дар пойгоҳи додаҳои почта барқарор кунед ва бандҳои кормандонро ошкор созед, ки минбаъд метавонанд онҳоро бо роҳи нест кардан ё иваз кардани файлҳояшон пинҳон кунанд.

Чӣ тавр шумо метавонед тамоми таърихи мукотибаи худро пайгирӣ кунед?Дар серверҳои Linux (ва ин ҷоест, ки NILFS2 бояд барои мақсадҳои амнияти дохилӣ насб карда шавад), усули файлии нигоҳдории мактубҳо аксар вақт барои нигоҳ доштани паёмҳои почтаи электронӣ истифода мешавад. Ба ном формат Майлдир. Барои гузоштан басанда Сервери почтаи хаткашон ва нигоҳдории почтаро дар Maildir танзим кунед. Формати дигар mbox як файли матнии калон аст, ки ба осонӣ ба паёмҳои инфиродӣ тақсим карда мешавад.

Агар сервери почта махзани маълумотро истифода барад, он гоҳ NILFS2 имкон медиҳад, ки вақти дақиқи тағирёбии пойгоҳи додаҳо ва қобилияти барқарор кардани пойгоҳи додаҳо дар ҳама гуна лаҳзаҳо барқарор карда шавад. Ва он гоҳ ба шумо лозим аст, ки асбобҳои пойгоҳи додаҳоро истифода баред, то бубинед, ки дар он вақт дар он чӣ буд ...

Бо вуҷуди ин, чизе нодуруст рафт. Ё ҳукумати Ҷопон ақидаи худро дар бораи мониторинги ҳама тағир дод (принсипи Яровая) ё иҷрои NILFS2 дар HDD-ҳои анъанавӣ аз сатҳи паст баромад ва NILFS2 таҳти литсензияи GPL бароварда шуд ва хеле зуд ба ядрои Linux ворид шуд, зеро ягон шикояти мушаххасе дар бораи коди бо забони японии баландихтисос навишташуда набуд, таҳиягарони ядрои Linux онро надоштанд.

NILFS2 чӣ гуна аст?

Аз нуқтаи назари истифода: дар системаи идоракунии версия SVN. Ҳар як нуқтаи гузаргоҳи FS ӯҳдадориест, ки бидуни огоҳии корбар ҳангоми тағирот ба таври худкор анҷом дода мешавад: хоҳ несткунӣ, тағир додани мундариҷаи файл ё тағир додани ҳуқуқи дастрасӣ. Ҳар як ӯҳдадорӣ рақаме дорад, ки ба таври хаттӣ зиёд мешавад.

Аз нуқтаи назари барномасоз: буфери даврашакл. Системаи файлӣ тағиротҳоро ҷамъ мекунад ва онҳоро ба порчаи баробар ба тақрибан 8 МБ менависад (2000 * 4096, ки дар он 2000 шумораи элементҳои блок ва 4096 андозаи саҳифаи хотира аст). Тамоми диск ба чунин қисмҳо тақсим карда мешавад. Сабт пай дар пай давом мекунад. Вақте ки фазои холӣ тамом мешавад, аксҳои кӯҳна нест карда мешаванд ва қисмҳо бар сари нав навишта мешаванд.

Тӯҳфаҳои асосии NILFS2

  • Версиясозӣ!!!
  • Тартиби барқарор кардани системаи файлӣ пас аз нокомӣ оддӣ аст: ҳангоми боркунӣ порчаи охирине, ки маблағи санҷиши дуруст дорад, ҷустуҷӯ карда мешавад ва дар он суперблок насб карда мешавад. Ин як амалиёти қариб фаврӣ аст.
  • Аз сабаби он, ки сабт ҳамеша ба таври хаттӣ сурат мегирад, пас:
    • метавонад ҳангоми кор дар SSD бо навиштани тасодуфии суст натиҷаҳои хуб нишон диҳад.
    • NILFS2 захираи SSD-ро сарфа мекунад, зеро омили зарбкунии навиштан қариб вуҷуд надорад.
      Аниқтараш, он аз 2 зиёд нест.Далели он аст, ки ҳангоми ба таври даврӣ аз нав навиштани тамоми диск, NILFS2 маълумоти тағирнашавандаро ба қисмҳои нав (порчаҳо) интиқол медиҳад.

      Агар мо дар диск 10% маълумоти бетағйир дошта бошем, пас мо бо 10 азнавнависии пурра 1% афзоиши навиштан мегирем. Хуб, 50% афзоиш дар 50% пуррагии дастгоҳ барои 1 азнавнависии пурраи диск.

      Фоидаи максималии навиштан 2 аст. Ин хеле паст аст, бо назардошти он, ки ҳама чиз пайдарпай навишта шудааст. Дар маҷмӯъ, аниматсияи навиштан аз системаи файлии фрагментатсияшудаи муқаррарӣ бо бахши 4096-байт камтар хоҳад буд. (Фикр аз ҷониби шарҳ).

  • Осонии эҳтимолии татбиқи такрорӣ ба NILFS2 FS-и дурдаст

NILFS2 барои /хона

Дар системаҳои оператсионии ба Unix монанд, чун қоида, папкаи /home мавҷуд аст, ки дар он маълумоти корбар нигоҳ дошта мешавад. Барномаҳои гуногун танзимоти ба корбар хоси худро дар ин ҷузвдон захира мекунанд.

Ва кӣ, агар корбар набошад, аксар вақт хато мекунад? Бинобар ин, чунон ки мегуянд, худи Худо фармудааст, ки NILFS2-ро дар /хона истифода барад.

Ғайр аз он, бо истифодаи васеъи SSDs, мо дигар набояд дар бораи коҳиши шадид ҳангоми истифодаи системаҳои файлии CoW хавотир шавем.

Бале, мо метавонем дар ZFS ва BTRFS зуд-зуд аксҳои FS-ро эҷод кунем, аммо ҳамеша хатари тағири файли гумшуда дар байни аксҳо ба охир мерасад. Ва расмҳо ҳанӯз бояд идора карда шаванд: расмҳои кӯҳна бояд нест карда шаванд. Дар NILFS2, ҳамаи ин ба таври худкор, аслан ҳар чанд сония рух медиҳад.

Ман як ҳаҷми мантиқӣ бо истифода аз lvcreate офаридаам (дар гурӯҳи ҳаҷми nvme, ҳавзи борик борик). Ман тавсия медиҳам, ки онро дар ҳаҷми lvm эҷод кунед, зеро онро баъдтар ба осонӣ васеъ кардан мумкин аст. Ман тавсия медиҳам, ки 50% фазои озоди диск бо NILFS2 барои умқи версияи муносиб дошта бошад.

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

Фосилаи сана дар ин фармон низ дастгирӣ мешавад.

Як гиря ба таҳиягарон

Дар бораи Habré мутахассисони зиёде мавҷуданд. Лутфан NILFS2-ро анҷом диҳед. Тафовути фаврии сатҳи пастро дар байни ислоҳҳо, бозсозӣ ва дигар чизҳои хуб эҷод кунед!

мурожиат

Вебсайти расмии NILFS.

Анборҳо:
NILFS2.
Utilities ва модулҳои NILFS2.

Бюллетенҳо:
Бюллетени почтаи электронӣ барои таҳиягарони NILFS2. ID барои обунаи linux-nilfs.
Архиви бюллетен.

дастури танзимоти nilfs_cleanerd.
Санҷишҳои муқоисавии EXT4, Btrfs, XFS & NILFS2.

Сипосгузорӣ:

  • Таҳиягарони NILFS2: Рюсуке Кониши, Коҷи Сато, Нарухико Камимура, Сейджи Кихара, Ёсиҷи Амагай, Хисаши Ҳифуми ва Сатоши Мориаи. Дигар саҳмгузорони асосӣ инҳоянд: Андреас Ронер, Дэн МакГи, Дэвид Арендт, Дэвид Смид, Дексен ДеВрис, Дмитрий Смирнов, Эрик Сандин, Ҷиро СЕКИБА, Маттео Фриго, Хитоши Митаке, Такаши Ивай, Вячеслав Дубейко.
  • Ба Amblin Entertainment ва Universal Pictures барои як силсила филмҳои аҷиб. "Бозгашт ба оянда". Нахустин акси ин паём аз филми "Бозгашт ба оянда 3" гирифта шудааст.
  • Ширкатҳо РУВДС барои дастгирӣ ва имкони нашр дар блоги худ дар Habré.

PS Лутфан хатогиҳоеро, ки мебинед, дар паёми хусусӣ фиристед. Ман барои ин корамро зиёд мекунам.

Шумо метавонед бо фармоиши мошини виртуалӣ аз NILFS2 озмоиш кунед РУВДС бо купон дар зер. Барои ҳама муштариёни нав мӯҳлати озмоиши ройгони 3 рӯз вуҷуд дорад.

NILFS2 - системаи файлии зидди тир барои /home

Манбаъ: will.com

Илова Эзоҳ