Alexander Larsson, kreator Flatpaka i zaposlenik Red Hata, objavio je preliminarnu zakrpu za kernel koja implementira Composefs datotečni sistem. LinuxPredloženi sistem datoteka sličan je Squashfs-u i također je pogodan za montiranje slika u režimu samo za čitanje. Razlike leže u Composefs-ovoj sposobnosti da efikasno pohranjuje sadržaj više montiranih slika diskova zajedno i podržava autentifikaciju podataka za čitanje. Aplikacije u kojima Composefs može biti koristan uključuju montiranje slika kontejnera i korištenje za OSTree repozitorij sličan Gitu.
Composefs koristi model skladištenja zasnovan na sadržaju, tj. Primarni identifikator nije ime datoteke, već hash sadržaja datoteke. Ovaj model pruža deduplikaciju i omogućava vam da zapravo pohranite samo jednu kopiju identičnih datoteka pronađenih na različitim montiranim particijama. Na primjer, slike kontejnera sadrže mnogo uobičajenih sistemskih datoteka, a ako se koristi Composefs, svaki od ovih fajlova će biti zajednički sa svim montiranim slikama, bez upotrebe trikova kao što je prosljeđivanje pomoću tvrdih veza. U ovom slučaju, dijeljene datoteke se ne pohranjuju samo kao jedna kopija na disku, već koštaju i jedan unos u keš stranice, što omogućava spremanje i diska i RAM-a.
Da bi se uštedio prostor na disku, podaci i metapodaci su odvojeni u montiranim slikama. Prilikom montaže naznačiti:
- Binarni indeks koji sadrži sve metapodatke sistema datoteka, imena datoteka, dozvole i druge informacije, isključujući stvarni sadržaj datoteke.
- Osnovni direktorij u kojem se pohranjuje sadržaj datoteka svih montiranih slika. Datoteke se pohranjuju u odnosu na hash njihovog sadržaja.
Binarni indeks se kreira za svaku sliku sistema datoteka, a osnovni direktorij je isti za sve slike. Za provjeru sadržaja pojedinačnih datoteka i cijele slike pod zajedničkim uvjetima skladištenja može se koristiti mehanizam fs-verity, koji prilikom pristupa datotekama provjerava korespondenciju hashova navedenih u binarnom indeksu sa stvarnim sadržajem (tj. napadač izvrši promjenu datoteke u osnovnom direktoriju ili podatke oštećene kao rezultat neuspjeha, takvo pomirenje će otkriti neslaganje).
izvor: opennet.ru
