Podczas gdy różne montowane migawki działałyby, wydaje się, że w wielu przypadkach może być strasznie powolne.
Czy istnieje specyficzna funkcjonalność btrfs dla różnych migawek? (Nie udało mi się znaleźć żadnych w dokumentacji)
filesystems
diff
btrfs
Catskul
źródło
źródło
A
zawierającya
, zapiszb
w jego migawce, a później zmień go z powrotem naa
, plik tak naprawdę wcale się nie zmienił.Odpowiedzi:
Wygląda na to, że szukasz wysyłania / odbierania btrfs , które pojawią się w Linuksie 3.6.
send
Polecenie tworzy plik dziennika różnic między dwoma migawek, areceive
komenda dotyczy zmiany z pliku. Zauważ, że wysyłanie / odbieranie używa niestandardowego formatu pliku, więc plik nie będzie wyglądał dokładnie tak, jak powiedzmy diff lub tar.źródło
Używam stabilnej wersji Debiana, której nie ma
btrfs send
, więc szukałem rozwiązania używającegobtrfs subvolume find-new
.Jeśli masz snapshot1 i snapshot2 i chcesz wiedzieć, co zmieniło się w późniejszym, snapshot 2, ponieważ od czasu utworzenia snapshot1 możesz użyć skryptu, który zapewnia
która wyświetli listę wszystkich plików zmienionych w newsnapshot / od oldsnapshot /.
Aby wyjaśnić:
btrfs subvolume find-new
znajduje pliki zmienione po określonej „generacji” migawki. Podaje również bieżący numer generacji.Ostrzeżenia
np. weź codzienną migawkę przypadku podobjętości:
Co zmieniło się między snap1 i snap2?
Możemy więc zobaczyć nowy plik, zobaczyć zmodyfikowany plik, ale usunięcie nie jest zgłaszane . Jest tak, ponieważ polecenie informuje o plikach, które istnieją, a nie o tych, które już nie istnieją.
Co zmieniło się między snap2 a podobjętością na żywo?
plik o zmienionej nazwie nie jest zgłaszany . Jego dane nie uległy zmianie.
Co teraz, jeśli dodamy dane do pliku o zmienionej nazwie
OK, ma sens. Ale stwórzmy nowy plik
eh! gdzie jest lala? . Jeśli dodasz kolejny plik,
lala
pojawi się. To zachowanie jest trochę dziwne. Prawdopodobnie dlatego wiki mówi:Jednak dziwność pojawia się, gdy porównujesz podobjętość na żywo z poprzednim stanem, a nie podczas porównywania migawek (tylko do odczytu). Może to być nadal przydatne, chyba że chcesz również zidentyfikować usunięte pliki.
źródło
Jest to obsługiwane przez narzędzie wygody migawki
snapper
.sudo snapper -c config diff 445..446
Oczywiście wymaga to korzystania
snapper
z migawek.Identyfikatory tych migawek można znaleźć za pomocą
snapper list -a
. Niestety w chwili pisania snappera nie obsługiwał migawek list dla pojedynczej konfiguracji, chociaż liczby te można znaleźć w nazwach podwielokrotnych.źródło