OverlayFS: Bagaimana Saya Dapat Menghapus File, Tidak Menyembunyikan Mereka

8

Saya mencoba untuk menggabungkan dua titik mount ke satu direktori sehingga akan menggabungkan file-file dari keduanya ke dalam satu titik mount. Saya melakukan beberapa tes dengan overlayfs dan telah mampu membuat titik mount gabungan, tetapi masalah muncul ketika saya menghapus file dari direktori gabungan ini.

Saya mengerti bahwa overlayfs memiliki filesystem atas dan bawah dan bahwa jika Anda menghapus sesuatu dari yang lebih rendah, itu menciptakan "whiteout" pada filesystem atas yang pada dasarnya hanya menyembunyikan file dari yang lebih rendah dari "bersinar melalui" ke lapisan yang digabungkan. File masih menempati ruang pada sistem file yang lebih rendah; itu tidak disajikan sebagaimana tersedia.

Pertanyaan saya adalah: bagaimana cara saya menghapus file dari sistem file atas dan bawah dan mendapatkan kembali ruang yang digunakan oleh file yang dihapus, dan tidak hanya menyembunyikannya? Saya dapat secara manual menghapus file dari direktori gabungan dan kemudian dari direktori bawah (apakah ini hal yang buruk untuk dilakukan?) Tetapi df -hamasih memperlihatkan direktori yang digabungkan sebagai mengambil ruang:

none                            6.8G  1.9G  4.6G  30% /var/www/merged
/dev/loop0                      380M  2.3M  354M   1% /mnt/lower1
/dev/loop1                      380M  2.3M  354M   1% /mnt/lower2
/dev/loop2                      380M  2.3M  354M   1% /mnt/upper
none                            380M  2.3M  354M   1% /mnt/merged

Apa cara yang benar untuk menghapus file dari sistem file overlay dan melaporkan penggunaan disk dengan benar?

Ken S.
sumber
Apakah Anda sudah melihat auf saja?
ptman
rsync tampaknya seperti metode potensial di sini - jika ada cara untuk mengatakannya hanya menghapus dan tidak menyalin,
Jasen

Jawaban:

2

Apa yang dilakukan Overlay adalah sebagai berikut:

Anda memiliki 2 direktori, lebih rendah yang hanya baca dan atas yang dibaca tulis. Hanya mungkin untuk menghapus file dari lapisan yang dapat ditulis.

Hamparan belum dirancang untuk apa yang ingin Anda capai. Lebih lanjut, ia berharap bahwa dir yang lebih rendah tidak akan benar-benar berubah, sehingga Anda mungkin berakhir dengan masalah.

Jika Anda benar-benar perlu menggabungkan banyak drive, gunakan lvm. Ini juga berfungsi pada file.

Gothrek
sumber
1

Anda tidak bisa, selain menghapus file menggunakan jalur asli (/ lower1 / file). OverlayFS tidak dimaksudkan untuk menggabungkan Mounts dengan cara itu, untuk membuat penyimpanan gabungan yang dapat ditulis.

Max Krüger
sumber