Dlaczego wszystkie moje katalogi migawek ZFS są puste?

13

Korzystam z urządzenia Oracle 11 jako urządzenia pamięci ZFS i regularnie wykonuję migawki systemów plików ZFS za pośrednictwem cron.

W przeszłości wiem, że jeśli chciałem pobrać konkretny plik z migawki, zachowałem kopię tylko do odczytu .zfs/snapshot/{name}/i mogłem tam nawigować i wyciągać plik. Jest to udokumentowane na stronie internetowej Oracle .

Jednak poszedłem to zrobić innego dnia i zauważyłem, że wszystkie katalogi ZFS w katalogach migawek są puste. zfs list -t snapshotpoprawnie pokazuje listę migawek, które powinny być obecne, i .zfs/snapshotspoprawnie zawiera katalog dla każdej migawki, aw każdej migawce jest katalog dla każdego systemu plików ZFS. Te katalogi wydają się jednak puste.

Właśnie przetestowałem przywracanie, dotykając pliku w mało używanym udziale i przywracając do najnowszej cogodzinnej migawki, i wygląda na to, że działało dobrze. Tak więc istnieje funkcja wycofywania.

Czy Oracle zmieniło sposób wykonywania migawek? A może coś tutaj jest naprawdę nie tak?

rosnąć
źródło
A także github.com/zfsonlinux/zfs/issues/3030 . Chociaż używasz drzewa Oracle ZFS i prawdopodobnie zmieniły się one na tyle, że nie są już bezpośrednio porównywalne.
Perseidy

Odpowiedzi:

5

Jeśli masz na przykład potomny system plików ZFS tank/newfs. Wtedy nie znajdzie pliki tank/newfsw /tank/.zfs/mysnapshotfolderze, tylko mountpoint newfsbędzie istnieć. Jeśli chcesz uzyskać dostęp do plików, musisz poszukać ich w /tank/newfs/.zfs/mysnapshotfolderze.

Olav Grønås Gjerde
źródło
0

Migawki wymienione w .zfs/snapshot/są automatycznie montowane na żądanie, gdy są przeglądane, i są automatycznie odmontowywane, gdy nie są już używane.

Wykonanie prostego lsw katalogu najwyraźniej nie wystarczy, aby uznać go za „żądanie”. Musisz przejść cddo odpowiedniego katalogu, a następnie wydać lspolecenie.

Konieczne może być również ustawienie snapdir=visiblesystemu plików.

Daniel
źródło