Nakładka systemu plików Linux - do czego służy workdir? (OverlayFS)


35

OverlayFS ma workdiropcję obok dwóch innych katalogów lowerdiri upperdir, który musi być pustym katalogiem.

Niestety dokumentacja jądra overlayfs nie mówi wiele o celu tej opcji.

„Katalog roboczy” musi być pustym katalogiem w tym samym systemie plików, co katalog górny.

W przypadku nakładek tylko do odczytu workdirmoże być ommittet wśród upperdir. To daje mi wskazówkę, że ma to związek z pisaniem scalonych plików.

Wyjaśnij, co się dzieje, workdirgdy pliki są zapisywane lub zmieniane w scalonym katalogu. Dlaczego zapis upperdirnie wystarcza?

Odpowiedzi:


27

Opcja workdir jest wymagana i służy do przygotowania plików, zanim zostaną one przełączone do miejsca docelowego nakładki w akcji atomowej (katalog roboczy musi znajdować się w tym samym systemie plików, co katalog główny).

Źródło: http://windsock.io/the-overlay-filesystem/

Zaryzykowałbym przypuszczenie, że „cel nakładki” oznacza upperdir.

Więc ... niektóre pliki (może pliki „whiteout”?) Są tworzone nieatomowo i konfigurowane, workdira następnie przenoszone atomowo upperdir.


-3

Ponieważ po usunięciu pliku znajdującego się w folderze lowerdir informacje te zostaną zapisane w katalogu roboczym.


1
Hm, ale kiedy usuwam pliki ze scalonego katalogu, katalog roboczy pozostaje pusty, ale w górnym katalogu są wyświetlane pliki z cflagą ( c--------- 1 root root 0, 0 Nov 19 18:22 ivebeendeleted), gdy zostały one „usunięte z nakładki” z dolnego katalogu. (Ten sam plik pozostaje oczywiście w dolnym katalogu.)
spróbuj złapać w końcu

Myślę, że kiedy usuwasz plik, tworzony jest plik „whiteout”, który jest przechowywany w górnym katalogu, a nie w katalogu roboczym. Plik bieli jest urządzeniem znakowym (z flagą „c”)
ejm
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.