sistem de fișiere ext3
sistem de fișiere ext3
I. Introducere în sistemul de fișiere ext3
sistem de operare modern, puternic și gratuit Linux oferă o arie largă pentru dezvoltarea de sisteme avansate și software personalizat. Unele dintre cele mai interesante evoluții în versiunile recente de kernel Linux este un tehnologii noi, de înaltă performanță pentru managementul de stocare, implementarea și actualizarea datelor de pe disc. Una dintre cele mai interesante mecanisme - este sistemul de fișiere ext3, care este integrat în kernel-ul Linux de la versiunea 2.4.16, și este disponibil în mod implicit în distribuțiile Linux de la companiile Red Hat si SuSE.
sistem de fișiere ext3 este un sistem de fișiere cu jurnalizare, 100% compatibil cu toate instrumentele create pentru a crea, administra și ajusta un sistem de fișiere ext2, care este utilizat în sistemele Linux, în ultimii ani. Înainte de o descriere detaliată a diferențelor dintre sistemele de fișiere ext2 și ext3, pentru a clarifica terminologia sistemelor de fișiere și de stocare a fișierelor.
II. Sistemele de fișiere Linux. Teoria uscată.
Sisteme de fișiere create pe o partiție pentru depozitare ușoară și organizarea datelor sub formă de fișiere și directoare. Linux, cum ar fi sistemul Unix foloseste un sistem de fișiere ierarhic alcătuit din fișiere și directoare, care conțin, respectiv, fie fișiere sau directoare. Fișierele și directoarele din sistemul de fișiere Linux devin disponibile pentru utilizator prin montarea acestora (echipa «mount»), care este de obicei parte a procesului de boot. Listă de sisteme de fișiere disponibile pentru utilizare este stocat în fișierul / etc / fstab (FileSystem de masă). Listă de sisteme de fișiere care nu sunt montate în momentul de date a sistemului este stocată în fișierul / etc / mtab (Muntele de masă).
La momentul de montare a sistemului de fișiere în timpul procesului de boot, bitul în antetul ( „biți pur» / «bit» curat) este șters, acest lucru înseamnă că sistemul de fișiere este folosit, și că structurile de date folosite pentru a controla plasarea și organizarea de fișiere și directoare în sistemul de fișiere Ele pot fi schimbate.
Sistemul de fișiere este considerat ca fiind complet atunci când toate blocurile de date în ea, fie folosite sau gratuit; fiecare bloc de date alocată este ocupată de unul și numai un singur fișier sau director; toate fișierele și directoarele pot fi accesate după procesarea unei serii de alte directoare din sistemul de fișiere. Când Linux este în mod deliberat se oprește folosind comanda operatorului, toate sistemele de fișiere sunt nemontate. Demonta sistemul de fișiere în procesul de realizare a lucrării stabilește o „biți pur“ în antetul sistemului de fișiere, indicând faptul că sistemul de fișiere a fost demontată în mod corespunzător și, astfel, pot fi considerate ca fiind completă.
Anul sistem de fișiere de depanare și de prelucrare, precum și utilizarea de algoritmi îmbunătățite pentru scrierea datelor pe disc într-o mare măsură, reduce daunele de date cauzate de aplicații sau Linux kernel-ului în sine, ci eliminarea daunelor și pierderea datelor din cauza reducerilor de putere și alte probleme ale sistemului sunt încă o provocare. În cazul unei opriri de urgență sau de putere pe un sistem Linux, fără utilizarea unor proceduri standard perturbatori „biți pur“ în titlu nu se instalează sistemul de fișiere. Data viitoare cizme de sistem, procesul de montura detectează că sistemul nu este marcat ca fiind „curat“, și verifică fizic integritatea acestuia, folosind sistemul de fișiere de utilitate Linux / Unix bifați „fsck“ (File de verificare Sistemul).
III. Ce este jurnalizare sistemul de fișiere?
Rularea verificarea sistemului (fsck) pe sistemele de fișiere mari poate lua o mulțime de timp, ceea ce este foarte rău, având în vedere sistemul de mare viteză de astăzi. Motivul pentru care nu integritate în sistemul de fișiere nu poate fi corect unmounting, de exemplu, în momentul terminării înregistrării a fost realizat pe disc. Aplicațiile pot actualiza datele conținute în dosarele, iar sistemul poate actualiza meta datele sistemului de fișiere care sunt „date cu privire la datele de sistem de fișiere“, cu alte cuvinte, informații despre care blocurile sunt asociate cu unele fișiere, care fișierele sunt plasate în directoare publice, etc. . Erori (lipsa de integritate) în fișierul de date - este rău, dar mai rău erori în sistemul de fișiere meta-date, ceea ce poate duce la pierderea de fișiere și alte probleme grave.
Pentru a minimiza problemele asociate cu integritatea și minimiza timpul de repornire a sistemului, sistemul de fișiere jurnalizare păstrează o listă de modificări, care va organiza sistemul de fișiere înainte de modificările de înregistrare reale. Aceste înregistrări sunt stocate într-o zonă separată a sistemului de fișiere numit un „jurnal“ sau „jurnal de viteză.“ Odată ce aceste intrări de jurnal (log) a înregistrat în condiții de siguranță, sistemul de fișiere jurnalizare face modificările la sistemul de fișiere și apoi șterge aceste înregistrări din „log“ (înregistrări jurnal). înregistrări din jurnal sunt organizate în seturi de modificări legate de sistemul de fișiere, care este foarte similar cu modul în care se adaugă modificările la baza de date sunt organizate în tranzacție.
Journaling sistem de fișiere crește probabilitatea de integritate, deoarece intrările din fișierul jurnal sunt efectuate înainte de modificările sistemului de fișiere, și pentru că sistemul de fișiere stochează aceste înregistrări, atâta timp cât acestea sunt aplicate la sistemul de fișiere nu este pe deplin și în condiții de siguranță. Când reporniți computerul, care utilizează un sistem de fișiere jurnalizare, programul mount poate asigura integritatea sistemului de fișiere printr-o simpla verificare a fișierului jurnal pentru prezența așteptat, dar nu și modificările efectuate și înregistrarea acestora în sistemul de fișiere. În cele mai multe cazuri, sistemul nu are nevoie pentru a inspecta integritatea sistemului de fișiere, ceea ce înseamnă că computerul utilizează un sistem de fișiere jurnalizare este disponibil pentru utilizare aproape imediat după repornire. În consecință, șansele de a pierderii de date din cauza problemelor din sistemul de fișiere sunt reduse considerabil.
Există mai multe sisteme de fișiere journaling disponibile pentru Linux. Cel mai faimos dintre ele: XFS, sistemul de fișiere jurnalizare dezvoltat de Silicon Graphics, dar acum a lansat o sursă deschisă (open source); RaiserFS, sistem de fișiere jurnalizare proiectat special pentru Linux; JFS, jurnalizarea sistem de fișiere inițial dezvoltat de IBM, dar acum este lansat ca open source; ext3 - sistem de fișiere dezvoltat de Dr. Stefanom Tvidi (Stephan Tweedie) în Red Hat, și alte câteva sisteme.
IV. Sistemul de fișiere ext3.
Sistemul de fișiere ext3 - este versiunea jurnalizată a sistemului de fișiere ext2 Linux. sistem de fișiere ext3 are un avantaj semnificativ față de alte sisteme de fișiere jurnalizare - este complet compatibil cu sistemul de fișiere ext2. Acest lucru face posibilă utilizarea tuturor aplicațiilor existente dezvoltate pentru manipularea și ajustarea sistemului de fișiere ext2.
sistem de fișiere ext3 sprijinit Linux kernel versiunea 2.4.16 și mai târziu, și ar trebui să fie activate cu ajutorul sistemelor de fișiere de configurare dialog (Sisteme de fișiere de configurare) în timpul miez de asamblare. În distribuții Linux, cum ar fi Red Hat 7.2 și SuSE 7.3 este deja inclus suport nativ pentru sistemul de fișiere ext3. Puteți utiliza sistemul de fișiere ext3 numai atunci când suportul ext3 este construit în kernel-ul și aveți cea mai recentă versiune a «mount» utilitati si «e2fsprogs».
De exemplu, traducerea sistemului de fișiere ext2 situat pe partiția / dev / hda5 în sistemul de fișiere ext3 poate fi implementat folosind următoarele comenzi:
# / Sbin / tune2fs -j / dev / hda5
Opțiunea „-j“ „tune2fs“ comandă creează jurnal ext3 pe un sistem de fișiere ext2 existent. După transferul sistemului de fișiere ext2 la ext3, va trebui, de asemenea, pentru a face modificări la înregistrarea fișierului / etc / fstab, pentru a indica faptul că secțiunea este acum sistemul de fișiere „ext3“. Puteți utiliza, de asemenea, definiția tip de secțiune automată (opțiunea «Auto»), dar este încă recomandat să se precizeze în mod explicit tipul de sistem de fișiere. Următorul exemplu fișier / etc / fstab arată modificările înainte și după transferul sistemului de fișiere pentru partiția / dev / hda5:
Pentru:
/ dev / hda5 / opt valori implicite ext2 1 februarie
/ Dev / hda5 / opt valori implicite ext3 1 0
Ultimul câmp din / etc / fstab indică un pas de încărcare, în care integritatea sistemului de fișiere trebuie să fie verificată cu utilitarul «fsck». Când utilizați sistemul de fișiere ext3, puteți seta această valoare la „0“, așa cum se arată în exemplul anterior. Acest lucru înseamnă că „fsck“ programul nu se va verifica integritatea sistemului de fișiere, datorită faptului că integritatea sistemului de fișiere este garantat de rollback in revista.
Traducerea sistemul de fișiere rădăcină la ext3 necesită o abordare specială, și este cel mai bine efectuată în modul utilizator unic (un singur modul de utilizare), atunci când discul RAM pentru a crea un sistem de fișiere ext3 de susținere.
V. Diferite moduri de jurnalizarea sistem de fișiere ext3
În plus față de compatibilitatea cu utilitățile sistemului de fișiere ext2, și traducerea simplă a sistemului de fișiere ext2 la ext3, sistemul de fișiere ext3 oferă, de asemenea, mai multe tipuri diferite de zhurnilirovaniya.
vedere din sistemul de fișiere jurnalizare Classic este stocat în fișierul jurnal (log) modificările sistemului de metadate și modificările de stocare a tuturor datelor de sistem de fișiere, inclusiv modificările în fișierele propriu-zise. Sistemul de fișiere ext3 suportă trei moduri diferite de logare, care pot fi activate din fișierul / etc / fstab. Aceste moduri de logare următoarele:
Revista / jurnal - o evidență a tuturor modificărilor de date a sistemului de fișiere și meta-date. Cele mai lente dintre cele trei moduri de jurnalizarea. Acest mod minimizează posibilitatea de a pierde fișiere modificările pe care le petrec în sistemul de fișiere ext3.
Serial / comandat - a înregistrat modificări doar metadatele sistemului de fișiere, dar stochează actualizarea fișierului pe disc înainte de modificările asociate în metadate sistemul de fișiere. Acest ext3 jurnalizarea setarea implicită.
Writeback / writeback - Numai modificările scrise la sistemul de fișiere meta-date bazate pe standardul înregistrările de date de proces modifică fișierele. Aceasta este cea mai rapidă metodă de exploatare forestieră.
Diferențele dintre cele două moduri în același timp și exploatarea forestieră greu de observat, și aprofundată. Utilizarea modului „Jurnal“, cere ca sistemul de fișiere ext3 înregistrează fiecare modificare a sistemului de fișiere de două ori - prima dată în revista, iar apoi în sistemul de fișiere în sine. Acest lucru poate reduce performanța generală a sistemului de fișiere, dar acest mod este cel mai iubit de către utilizatori, deoarece reduce șansele de pierdere modifică fișierele de date precum și modificări în meta-date și modificați fișierele scrise în revista ext3 și poate fi repetată atunci când sistemul repornește.
Utilizarea modului „secvențială“, numai modificările înregistrate la sistemul de fișiere meta-date, care reduce redundanță între o intrare în sistemul de fișiere și în revista, în legătură cu metoda mai rapidă. În ciuda faptului că modificările fișier de date care nu sunt înregistrate în jurnal, acestea ar trebui să se facă la modificările asociate sistemului de fișiere meta-date, care conduce daemonul de logare este ext3, ceea ce poate reduce ușor performanța sistemului. Folosind această metodă de exploatare forestieră se asigură că fișierele din sistemul de fișiere nu va fi niciodată de sincronizare cu asociate meta-date ale sistemului de fișiere.
„Write-back“ metodă este mai rapidă decât cealaltă metodă două jurnalizare, deoarece datele sunt stocate numai pe sistemul de fișiere modificările meta-date, și nu există nici un fișier de date se modifică așteptările asociate pentru înregistrarea (înainte de actualizare lucruri, cum ar fi dimensiunea fișierului și informațiile din director). Deoarece datele de actualizare a fișierului asincronă cu privire la sistemul de fișiere Journaling modifică fișierele meta-date în sistemul de fișiere poate afișa o eroare în meta-date, cum ar fi o eroare în indicarea proprietarului blocurilor de date (care sunt actualizate la momentul repornirii sistemului, nu a fost finalizată). Acest lucru nu este fatală, dar poate interfera cu utilizatorul.
Notă Modul jurnalizare utilizat în sistemul de fișiere ext3 efectuate în fișierul / etc / fstab pentru acest sistem de fișiere. Modul „Serial“ este folosit în mod implicit, dar puteți specifica diferite moduri de exploatare forestieră, prin schimbarea opțiunilor pentru secțiunea dorită în fișierul / etc / fstab. De exemplu, o intrare în / etc / fstab indică utilizarea jurnalizare mode „write-back“ va fi după cum urmează:
/ Dev / hda5 / opt ext3 date = writeback 1 0
VI. concluzie
sisteme de fișiere Journaling oferă avantaje semnificative pentru o gamă largă de utilizatori Linux, minimizează întârzierile când reporniți sistemul Linux, și aproape elimină posibilitatea de erori în sistemul de fișiere. Sistemul de fișiere ext3 este un sistem de fișiere cu jurnalizare de înaltă performanță, care este compatibil cu ext2, ext3 și instrumente pentru a face traducerea sistemului dvs. de la ext2 la ext3 este foarte simplu. Această compatibilitate crește, de asemenea, posibilitatea de utilizare a software-ului proiectat pentru a lucra cu sistemul de fișiere ext2.
Informații privind EXT3 și alte sistemul de fișiere jurnalizare este disponibil aici: