ComposeFS, sistem fail daripada pencipta Flatpak

komponen

componefs ialah sistem fail baharu yang dicadangkan untuk Linux

Baru-baru ini berita itu menyahkannya Alexander Larson, pencipta Flatpak di Red Hat, telah menyiarkan pratonton tampung yang melaksanakan sistem fail ComposeFS untuk kernel Linux.

Sistem fail yang dicadangkan menyerupai Squashfs dan juga sesuai untuk memasang imej baca sahaja. Perbezaannya berpunca daripada keupayaan ComposeFS untuk berkongsi kandungan berbilang imej cakera yang dipasang dengan cekap dan sokongan untuk pengesahan data yang boleh dibaca.

Kawasan aplikasi di mana ComposeFS mungkin mendapat permintaan ialah memasang imej bekas dan menggunakan repositori OSTree seperti Git. Ini membolehkan fail kandungan dikongsi antara imej, walaupun metadata (seperti cap masa atau pemilikan fail) berbeza antara imej.

ComposeFS menggunakan model storan pengalamatan berasaskan kandungan, iaitu, pengecam utama bukanlah nama fail, tetapi cincang kandungan fail. model ini menyediakan deduplikasi dan membenarkan untuk menyimpan hanya satu salinan daripada fail yang sama ditemui pada partition dipasang yang berbeza.

Pada dasarnya, composefs ialah cara untuk membina dan menggunakan imej baca sahaja. yang digunakan sama seperti cara anda akan menggunakan, sebagai contoh, loopback gambar skuasy. Di samping itu composefs ini mempunyai dua asas baru ciri-ciri. Pertama, ia membenarkan data fail dikongsi (kedua-dua pada cakera dan pada cache halaman) antara imej, dan kedua anda mempunyai dm-verity like membaca pengesahan.

Sebagai contoh, imej bekas mengandungi banyak fail biasa sistem dan dengan Composefs, setiap fail ini akan dikongsi oleh semua imej yang dipasang, tanpa menggunakan helah seperti memajukan dengan pautan keras.

Pada masa yang sama, fail kongsi bukan sahaja disimpan sebagai salinan tunggal pada cakera, tetapi juga diuruskan oleh entri dalam cache halaman, membolehkan kedua-dua cakera dan RAM disimpan.

Composefs juga menyokong pengesahan fs-verity bagi fail kandungan. Menggunakan ini, ringkasan fail kandungan disimpan dalam imej dan composefs akan mengesahkan bahawa fail kandungan yang digunakannya mempunyai fs-verity digest didayakan untuk dipadankan. Ini bermakna kandungan sandaran tidak boleh diubah dalam apa jua cara (secara silap atau niat jahat) tanpa dikesan apabila fail digunakan.

Anda juga boleh menggunakan fs-verity pada fail imej itu sendiri dan lulus ringkasan fs-verity yang diharapkan sebagai pilihan pelekap, yang akan disahkan oleh composefs. Dalam kes ini, kami mempunyai keyakinan penuh terhadap kedua-dua data dan metadata fail yang dipasang. Ini menyelesaikan kelemahan fs-verity apabila digunakan secara bersendirian, kerana ia hanya boleh mengesahkan data fail, bukan metadata.

Untuk menjimatkan ruang cakera, data dan metadata diasingkan dalam imej yang dipasang. Apabila dipasang, nyatakan:

  • Indeks binari yang mengandungi semua metadata sistem fail, nama fail, kebenaran dan maklumat lain kecuali kandungan sebenar fail.
  • Direktori asas di mana kandungan semua fail imej yang dipasang disimpan. Fail disimpan secara relatif kepada cincang kandungannya.
  • Indeks binari dicipta untuk setiap imej FS dan direktori asas adalah sama untuk semua imej. Untuk mengesahkan kandungan fail individu dan keseluruhan imej di bawah keadaan storan dikongsi, mekanisme fs-verity boleh digunakan, yang, apabila mengakses fail, mengesahkan bahawa cincangan yang dinyatakan dalam indeks binari sepadan dengan kandungan. real (iaitu, jika penyerang membuat perubahan pada fail dalam direktori asas atau data rosak akibat kegagalan, perdamaian tersebut akan mendedahkan percanggahan).

akhirnya jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh menyemak perincian dalam pautan berikut.