NILFS2 - /homerako balen aurkako fitxategi-sistema

NILFS2 - /homerako balen aurkako fitxategi-sistema

Dakizuenez, arazoak gerta daitezkeela, zalantzarik gabe gertatuko da. Seguruenik, denek izan dute azken fitxategi garrantzitsu bat ustekabean ezabatu den kasuak, edo testu-editore batean nahi gabe hautatu eta suntsitu duten kasuak.

Ostalaria edo webgunearen jabea bazara, seguruenik erabiltzaile-kontuak edo zure webgunea pirateatzea topo izan duzu. Halakoetan, garrantzitsua da kronologia berreskuratzea, sarrera-metodoa eta erasotzaileak erabilitako ahultasuna aurkitzea.

NILFS2 fitxategi sistema ezin hobea da horrelako arazoak konpontzeko.

2.6.30 bertsiotik dago Linux nukleoan.

Fitxategi-sistema honen berezitasuna bertsio-kontrol-sistema baten antzekoa dela da: beti egin dezakezu atzera sistemaren egoera atzera eta duela denbora pixka bat nolakoa zen begiratu.

Funtzionalitate hau emateko, ez duzu Cron script-ak konfiguratu beharrik, argazkiak atera, etab. NILFS2 fitxategi-sistemak berez egiten du hau. Inoiz ez ditu datu zaharrak gainidazten eta diskoko eremu berrietan idazten du beti diskoan leku libre nahikoa badago. Copy-on-Write printzipioarekin bat etorriz.

Izan ere, fitxategi batean egindako aldaketak automatikoki fitxategi-sistemaren argazki berri bat sortzen du, beraz, FS hau denbora-makina gisa erabil dezakezu eta fitxategien egoera atzera bota dezakezu.

Story

NILFS2 - /homerako balen aurkako fitxategi-sistemaNILFS2-ren sakontasunean garatu zen Nippon Telegraph and Telephone Corporation, hain zuzen ere, estatuko jabetzakoa (kontroleko partaidetza du) eta Japoniako telekomunikazio enpresarik handiena. Zehatzago esanda, gidaritzapean dauden CyberSpace Laborategietan Ryusuke Konishi.

Zertarako garatu zen zehatz-mehatz ezezaguna da, hala ere, pentsa daiteke horrelako FS bat, bere "denboraren makina" funtzionaltasunarekin, aproposa dela adimen-zerbitzuek zulatu nahi izan ditzaketen datuak gordetzeko irudi osoa erreproduzitzeko. SMSak, emailak, etab....

NILFS2 barne segurtasun-zerbitzuetarako tresna oso baliotsua da, izan ere, ezabatutako gutunak posta datu-basean berreskuratzeko aukera ematen du, eta ondoren fitxategiak ezabatuz edo aldatuz mozorrotzen saiatu daitezkeen langileen langak agerian utziz.

Nola egin dezakezu jarraipena zure korrespondentziaren historia osoa?Linux zerbitzarietan (eta hemen NILFS2 instalatu behar da barne segurtasun-helburuetarako), mezu elektronikoak gordetzeko fitxategi-metodoa askotan erabiltzen da mezu elektronikoak gordetzeko. Formatua deritzona Maildir. Nahikoa jartzeko Courier Posta Zerbitzaria eta konfiguratu posta biltegiratzea Maildir-en. Beste formatua mbox testu-fitxategi handi bat da, mezu indibidualetan erraz analiza daitekeena.

Posta-zerbitzariak datu-base bat erabiltzen badu, NILFS2-k datu-basearen aldaketen denbora zehatza eta une horietako edozeinetan datu-basea berreskuratzeko aukera emango du. Eta orduan datu-baseko tresnak erabili behar dituzu momentu horretan zer zegoen ikusteko...

Hala ere, zerbait gaizki joan zen. Edo Japoniako gobernuak iritzia aldatu zuen guztion jarraipenari buruz (Yarovaya printzipioaren arabera), edo NILFS2 HDD tradizionaletan errendimendua paregabea izan zen, eta NILFS2 GPL lizentziapean kaleratu zen eta oso azkar sartu zen Linux nukleoan, izan ere. ez zegoen japoniera oso kualifikatua idatzitako kodeari buruzko kexa berezirik, Linux kernelaren garatzaileek ez zuten.

Nolakoa da NILFS2?

Erabileraren ikuspuntutik: bertsioak kontrolatzeko sistema batean SVN. FS kontrol-puntu bakoitza automatikoki egiten den konpromisoa da, erabiltzaileak jakin gabe aldaketaren bat dagoen bakoitzean: izan ezabatzea, fitxategi baten edukia aldatzea edo sarbide-eskubideak aldatzea. Konpromiso bakoitzak linealki handitzen den zenbaki bat du.

Programatzaile baten ikuspuntutik: buffer zirkular bat. Fitxategi-sistemak aldaketak pilatzen ditu eta gutxi gorabehera 8 MB-ko zati batean idazten ditu (2000 * 4096, non 2000 blokeko elementu kopurua den eta 4096 memoria orriaren tamaina den). Disko osoa halako zatitan banatuta dago. Grabaketak sekuentzialki aurrera egiten du. Leku librea agortzen denean, argazki zaharrenak ezabatzen dira eta zatiak gainidazten dira.

Oinarrizko NILFS2 gozokiak

  • Bertsioa!!!
  • Hutsegite baten ondoren fitxategi-sistema bat leheneratzeko prozedura erraza da: kargatzean, checksum zuzena duen azken zatia bilatzen da eta superbloke bat instalatzen da bertan. Hau ia berehalako eragiketa da.
  • Grabaketa beti linealki egiten denez, orduan:
    • emaitza onak erakutsi ditzake SSD batean ausazko idazketa motelekin exekutatzen denean.
    • NILFS2-k SSD baliabideak gordetzen ditu, ez baitago ia idazketa biderketa faktorerik.
      Zehatzago esanda, ez da 2 baino gehiago.Kontua da disko osoa ziklikoki berridazten denean, NILFS2-k datu aldaezinak pieza berrietara (zati) transferituko dituela.

      Diskoan aldaezinak diren datuen % 10 baditugu, % 10eko idazketa-igoera izango dugu berridazketa oso batekin. Beno, % 1eko igoera gailuaren % 50eko betetasunean diskoaren berridazketa osoa egiteko.

      Idazketa-irabazia maximoa 2 da. Oso baxua da guztia sekuentzialki idatzita dagoela kontuan hartuta. Orokorrean, idazketa-animazioa 4096 byte-ko sektorea duen zatikako fitxategi-sistema konbentzional batena baino txikiagoa izango da. (Han inspiratutako pentsamendua iruzkin).

  • Erreplikazioa urrutiko NILFS2 FS batera ezartzeko balizko erraztasuna

NILFS2 /etxerako

Unix moduko sistema eragileetan, normalean, /home karpeta bat dago eta bertan erabiltzailearen datuak gordetzen dira. Hainbat programak erabiltzailearen konfigurazio espezifikoak gordetzen dituzte karpeta honetan.

Eta nork, erabiltzaileak ez badira, akatsak egiten ditu gehien? Hori dela eta, esaten den bezala, Jainkoak berak agindu zuen NILFS2 erabiltzea /home-n.

Gainera, SSDen erabilera hedatuta dagoenez, orain ez dugu kezkatu beharrik CoW fitxategi-sistemak erabiltzean murrizketa larriengatik.

Bai, nahi adina maiz sor ditzakegu FS argazkiak ZFS eta BTRFSn, baina beti dago arriskua galdutako fitxategien aldaketa argazkien artean bukatzeko. Eta argazkiak oraindik administratu behar dira: zaharrak ezabatu behar dira. NILFS2-n, hori guztia automatikoki gertatzen da, literalki segundo gutxitan.

Bolumen logiko bat sortu nuen lvcreate erabiliz (nvme bolumen taldean, thin pool thin). Lvm bolumenean sortzea gomendatzen dut, geroago erraz zabaldu baitaiteke. NILFS50-rekin % 2eko tokia edukitzea gomendatzen dut bertsio duinerako.

lvcreate -V10G -T nvme/thin -n home

eta formateatu NILFS2-n:

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 !!

Honen ondoren, uneko /homeko datu guztiak kopiatu behar dituzu.

Ordenagailua abiarazi eta berehala egin nuen, nire kontuan saioa hasi aurretik, root erabiltzaile gisa. Nire erabiltzaile gisa saioa hasiko banintz, programa batzuek socketak eta fitxategiak irekiko lituzkete nire erabiltzailearen /home/user karpetan, eta horrek kopia garbi bat zailduko luke. Dakizuenez, root erabiltzailearen hasierako karpeta normalean /root bidean egon ohi da, beraz, ez da fitxategirik irekiko /home partizioan.

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

Azken lerrorako, ikus artikulu bat.

Ondoren /etc/fstab-en editatzen dugu, zeinetan /home-rako fitxategi-sistema muntatuta dagoen

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

Aukera noatime errendimendua hobetu behar da, fitxategien sarbide bakoitzean atimea aldatu ez dadin. Ondoren, berrabiaraziko dugu.

Irudi motak NILFS2n.

Ezabatzeko immunitaterik gabeko argazki arrunt bati kontrol-puntu edo berreskuratze-puntu deitzen zaio.
Ezabatze automatikotik babestutako argazki bati argazkia deitzen zaio, eta, ondoren, argazkia besterik ez.

Kontrol-puntuak ikustea lscp komandoa erabiliz egiten da

Ikusi argazkiak lscp -s

Guk geuk sor ditzakegu argazkiak eta kontrol-puntuak edozein unetan erabiliz:

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

Datuak leheneratzen ditugu.

NILFSek nahi adina argazki zahar muntatzeko aukera ematen digu FS adar nagusiarekin lan egitearekin batera. Baina irakurtzeko moduan bakarrik.

Dena horrela antolatuta dago. NILFS2-k egiten dituen ohiko kontrol-puntuak edonoiz ezaba daitezke automatikoki (diskoko lekua agortzen denean edo nilfs_cleanerd arauen arabera), beraz, instalatu aurretik, kontrol-puntua argazki bihurtu behar dugu edo, errusieraz, argazkia atera.

chcp ss Π½ΠΎΠΌΠ΅Ρ€_Ρ‡Π΅ΠΊΠΏΠΎΠΈΠ½Ρ‚Π°

Horren ondoren, argazkia munta dezakegu, adibidez, honela:

mount -t nilfs2 -r -o cp=Π½ΠΎΠΌΠ΅Ρ€_Ρ‡Π΅ΠΊΠΏΠΎΠΈΠ½Ρ‚Π° /dev/nvme/home /mnt/nilfs/Π½ΠΎΠΌΠ΅Ρ€_Ρ‡Π΅ΠΊΠΏΠΎΠΈΠ½Ρ‚Π°

Horren ondoren, leheneratu diren fitxategiak argazkitik / homera kopiatzen ditugu.
Eta, ondoren, argazkitik ezabatzerik gabeko bandera kentzen dugu, etorkizunean zabor-biltzaile automatikoak zaharkitutako datuak kendu ditzan:

chcp cp Π½ΠΎΠΌΠ΅Ρ€_Ρ‡Π΅ΠΊΠΏΠΎΠΈΠ½Ρ‚Π°

NILFS2rako erabilgarritasunak

Baina hau da arazoa. Bai, noski, fitxategi-sistema bat sor dezakegu, sarean bere tamaina alda dezakegu, erronka puntuen zerrenda ikusi, sortu eta ezabatu. Nilfs2-utils paketeak gutxieneko jaunaren multzoa eskaintzen du.

NTTk bere finantzaketa murriztu duenez, ez dago fitxategien aldaketen historia bistaratzeko edo argazkien arteko desberdintasunak egiteko aukera ematen duen maila baxuko utilitate azkarrik.

Nire n2u erabilgarritasuna

Hutsune hori betetzeko idatzi nuen zure n2u erabilgarritasuna, fitxategi/direktorio jakin bateko aldaketen historia bistaratu dezake:

n2u log filename

Irteera honelako zerbait da:

          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

Nahiko azkar funtzionatzen du aukeratutako inplementazio-metodorako: fitxategien arteko desberdintasunak bilatzen ditu bisekzio metodoa erabiliz, fitxategia/direktorioa azkar muntatu eta konparatuz argazki ezberdinetan.

Kontrol-puntu sorta bat ezar dezakezu tekla erabiliz -cp CP1:CP2 edo -cp {YEAR-MM-DD}:{YEAR-MM-DD}.

Fitxategi edo direktorio jakin baterako kontrol puntuen arteko aldea ere ikus dezakezu:

n2u diff -r cp1:cp2 filename

Aldaketen kronologia osoa bistaratu dezakezu: fitxategi/direktorio jakin bateko kontrol-puntuen arteko desberdintasun guztiak:

n2u blame [-r cp1:cp2] filename

Komando honetan data tartea ere onartzen da.

Garatzaileei oihu bat

HabrΓ©-n espezialista asko daude. Mesedez, amaitu NILFS2. Egin erreplika, maila baxuko aldea bizkorra berrikuspenen, berrikusteko eta beste ontasun batzuen artean!

Erreferentziak

NILFS webgune ofiziala.

Biltegiak:
NILFS2.
NILFS2 utilitateak eta moduluak.

Buletinak:
NILFS2 garatzaileentzako posta elektronikoko buletina. linux-nilfs harpidetzaren IDa.
Buletinaren artxiboa.

nilfs_cleanerd konfigurazio gida.
Benchmarking EXT4, Btrfs, XFS eta NILFS2 Errendimendu Probak.

Eskerrik asko:

  • NILFS2 garatzaileak: Ryusuke Konishi, Koji Sato, Naruhiko Kamimura, Seiji Kihara, Yoshiji Amagai, Hisashi Hifumi eta Satoshi Moriai. Beste laguntzaile nagusiak hauek dira: Andreas Rohner, Dan McGee, David Arendt, David Smid, dexen deVries, Dmitry Smirnov, Eric Sandeen, Jiro SEKIBA, Matteo Frigo, Hitoshi Mitake, Takashi Iwai, Vyacheslav Dubeyko.
  • Amblin Entertainment eta Universal Pictures-i film sorta zoragarri batengatik. "Itzuli etorkizunera". Postaren lehen argazkia "Back to the Future 3" filmetik aterata dago.
  • konpainiak RUVDS laguntzagatik eta HabrΓ©-n zure blogean argitaratzeko aukeragatik.

PS Mesedez, bidali mezu pribatu batean nabarituko dituzun akatsak. Nire karma handitzen dut horretarako.

NILFS2-rekin esperimentatu dezakezu makina birtual bat eskatuz RUVDS beheko kupoiarekin. Bezero berri guztientzat 3 eguneko doako proba-epea dago.

NILFS2 - /homerako balen aurkako fitxategi-sistema

Iturria: www.habr.com

Gehitu iruzkin berria