Czy istnieje [wirtualny-] system plików, który może automatycznie dzielić pliki w pamięci, ale prezentować je użytkownikowi jako pojedyncze pliki?
Na przykład:
The user sees: /user/files/10TBfile
But it is stored as: /backingstorage/user/files/10TBfile.{1..100}
Zasadniczo tak samo działa podzielone archiwum, ale w czasie rzeczywistym. Wydaje mi się, że powinno to być możliwe, ponieważ zasadniczo przechowuje każdy blok dysku wirtualnego jako osobny plik, ale nie znam żadnych istniejących rozwiązań.
Jeśli jesteś ciekawy, celem końcowym może być coś podobnego do tego pytania: Podziel pliki lokalne na różne serwery o ograniczonej przestrzeni za pomocą rsync, z wyjątkiem tego, że mam pojedyncze duże pliki, które należy podzielić, a pliki należy zaktualizować w czasie rzeczywistym -czas, więc codzienne cron / rsync i split tar nie wchodzą w rachubę. Mam już podłączone dyski zdalne, więc potrzebuję tylko sposobu podzielenia pliku i przedstawienia go jako pojedynczy plik użytkownikowi.
Dzięki!
źródło
Odpowiedzi:
Co chcesz
chunkfs
:Został napisany w tym samym celu, co twój:
źródło
Znalazłem odpowiedź tutaj: https://unix.stackexchange.com/a/67995/6226
Tworzysz kilka plików kontenerów, łączysz je jako urządzenie, formatujesz je za pomocą systemu plików, montujesz ten system plików i umieszczasz w nim duży plik.
źródło
Nie jestem pewien, ale myślę, że możesz użyć rozbierania (czyli techniki segmentowania logicznie sekwencyjnych danych, takich jak plik) na przykład w LVM.
Oto kilka informacji na ten temat z RedHat:
Dodatkowe informacje tutaj
źródło
Zazwyczaj robiłbyś to na poziomie bloku. Niektóre rozwiązania tego obejmują:
Z perspektywy systemu plików:
źródło