Mam kilka maszyn klienckich OSX, które wykonują kopie zapasowe za pomocą TimeMachine do udziałów AFP na serwerze Ubuntu Linux, eksportowane przez netatalk / afpd. Klienci ci wykonują kopie zapasowe w dowolnych porach dnia, każdego dnia. Istnieją również inne ważne udziały AFP inne niż TimeMachine na serwerze.
Na serwerze kopie zapasowe TimeMachine są reprezentowane jako sparsebundles - format przechowywania danych obejmujący wiele „pasm” - przechowywanych w standardowym systemie plików EXT4. W tym rzadkim pakiecie znajduje się system plików HFS +, z którego korzysta TimeMachine, ale po stronie serwera jest to tylko zbiór plików zespołu.
Mam rsnapshot działający co 4 godziny na serwerze, który tworzy kopię zapasową całego serwera na wymiennym dysku twardym (który często wymieniam). Dlatego rsnapshot tworzy kopie zapasowe tych pasm sparsebundle o określonych porach dnia.
Problem polega na tym, że jeśli rsnapshot działa, gdy komputer kliencki ma zamontowany pakiet sparsebundle, możliwe jest przechwycenie przez rsnapshot niespójnego stanu pakietu sparsebundle, ponieważ pasma mogą się zmieniać podczas procesu tworzenia kopii zapasowej. Oczywiście nie sprzyja to odtwarzaniu kopii zapasowych!
Próbuję wymyślić sposoby obejścia tego problemu. Wydaje się ważne, że pakiet sparsebundle nie jest montowany w momencie, gdy rsnapshot próbuje wykonać kopię zapasową. Po stronie serwera jedyny sposób, w jaki mogę obecnie to zrobić, to usunięcie demona aftp, być może po oczekiwaniu na odmontowanie pakietu sparsebund przez klienta OSX. Wadą tego jest to, że inne offline AFP poza TimeMachine eksportuje również offline. O ile mogę stwierdzić, afpd nie zapewnia sposobu (łatwego) dodawania / usuwania eksportów - jedną z opcji jest skomplikowane przepisywanie plików konfiguracyjnych afpd w celu wyłączenia eksportu TM, ale nadal powoduje to zmniejszenie udziałów AFP na krótki czas czas.
Czy jest lepszy sposób?