Jak mogę wykonać kopię zapasową systemu na zdalnym serwerze (udział AFP, Samba lub NFS)?

11

Oto cel: mam serwer kopii zapasowych z systemem plików ZFS z wbudowaną kompresją i migawkami. Wszystkie nasze maszyny wykonują tam kopie zapasowe co noc rsync, a następnie wykonywana jest migawka ZFS, więc mamy kopie zapasowe tego, jak każda maszyna wyglądała na koniec każdego dnia.

Problem polega na tym, że w systemie Mac OS X rozwidlenia zasobów nie są kopiowane, ponieważ zdalny komputer nie obsługuje rozwidleń zasobów. Chciałbym zrobić rsyncplik .DMG, który znajduje się na serwerze kopii zapasowych. W ten sposób uzyskałem dokładny obraz rozruchowy każdego systemu.

Jako bonus, serwer kopii zapasowej jest również serwerem NetBoot, więc to naprawdę pozwoliłoby mi na uruchomienie z mojego komputera Mac w dowolnym momencie historii.

Utworzyłem obraz dysku mojego komputera Mac i skopiowałem go na serwer zapasowy. Teraz, gdy otwieram go na komputerze Mac i uruchamiam rsync, działa przez pewien okres (czasem dłużej niż godzinę, czasem krócej), a następnie daje mi mnóstwo błędów we / wy. Obraz jest przechowywany w macierzy RAID, jestem pewien, że nie ma błędów we / wy.

Myślę, że połączenie z udziałem Samba może być przytłoczone ... Próbowałem również z AFP i otrzymuję ten sam wynik ... Co może być przyczyną i jak to rozwiązać? Lub jakieś inne pomysły na to, jak mogę zaktualizować zdalny plik DMG?

Josh
źródło
3
Zamiast ponownie wymyślać TimeMachine za pomocą narzędzi open source / unixy (które uwielbiam i uwielbiam) - czy zastanawiałeś się nad uruchomieniem bezpłatnego oprogramowania CrashPlan na obu komputerach? Rozdają oprogramowanie, które jest bardzo zaawansowane i dobrze obsługiwane, jeśli potrzebujesz od nich pomocy.
bmike
Hmmm, muszę to sprawdzić! Powodem, dla którego „ponownie zapraszam” TimeMachine, FYI, jest to, że TimeMachine wymaga dużego napędu USB dla każdej maszyny, a w naszej konfiguracji nie mamy tego, a raczej mamy ogromną macierz RAID na miejscu.
Josh
Całkowicie rozumiem twoje powody. ZFS jest świetny, a ponowne wykorzystanie istniejącej infrastruktury ma tak duży sens. Dla kilku klientów z 10 do 30 macami - ulubionym miejscem jest mini serwer Mac współdzielący jeden dysk dla wszystkich klientów Mac dla Time Machine. Ten serwer ma plan awarii dla głównego serwera dla rotacji taśmy / poza siedzibą (a pakiety sparsebaps zawierają HFS i metadane). DeployStudio obsługuje obrazy rozruchowe i przywraca sieć. Powodzenia i daj nam znać jak poszło.
bmike
Kolejna propozycja +1 do @ CrashPlan @ bmike. Używa Hadoopa pod maską i może wykonywać operacje przyrostowe, takie jak TimeMachine. Bezpłatne wypychanie kopii zapasowych na inny dysk lub komputer. Interfejs użytkownika nie jest tak przyjemny jak TimeMachine.
Ian C.
+1 za plan awaryjny. Jest to świetny darmowy program i ma tę dodatkową zaletę, że możesz łatwo dodać więcej punktów kopii zapasowej - w tym ich własne serwery za opłatą.
cregox

Odpowiedzi:

5

Skonfiguruj nowy wolumin w polu Nexenta / OS na potrzeby tworzenia kopii zapasowej i skonfiguruj go do udostępniania jako jednostki iSCSI LUN. Następnie użyj jednego z kilku inicjatorów iSCSI dla MacOS X, aby podłączyć wolumin kopii zapasowej z tyłu. Na komputerze Mac sformatuj wolumin jako HFS +. Teraz możesz używać CCC lub rsync itp. Do robienia kopii zapasowych.

tegbains
źródło
2
To fantastyczny pomysł. Spróbuję tego po zakończeniu pracy na cały dzień!
Josh
1
+1 - Myślałem o sposobie użycia iSCSI, aby dostać się tam i enkapsulować dane specyficzne dla komputerów Mac. Im mniej kroków, tym lepiej.
bmike
Bah! Tylko jak pisałem, że to działa świetnie, połączenie zostało utracone. Ale wciąż mam nadzieję na to rozwiązanie ...
Josh
@Josh: Czy wiesz, dlaczego połączenie zostało utracone (fizyczne odłączenie itp.). Czy masz także oddzielną kartę sieciową dla połączenia iSCSI?
tegbains
Nie wiem, co powoduje utratę połączenia, ale ponieważ dzieje się to teraz ze wszystkimi protokołami, AFP, CIFS, NFS i iSCSI, jest to problem z serwerem. Myślę, że transfer danych po prostu przytłacza maszynę wirtualną i przestaje odpowiadać ... ale zadam inne pytanie, prawdopodobnie dotyczące wymiany stosów unix i linux.
Josh
3

Czy zastanawiałeś się nad użyciem Carbon Copy Cloner ? Używam tego do ręcznej kopii zapasowej mojego dysku SSD na dysk sieciowy raz na miesiąc i tak działa bezbłędnie. Wiem, że robi to przyrostowe kopie zapasowe i nie miałem problemu z zrzuceniem dysku na gigabitowy Ethernet.

alampros
źródło
Niestety, gdy używam CCC do tworzenia przyrostowej kopii zapasowej, po prostu działa rsynci otrzymuję ten sam wynik :-(
Josh
Kiedy zrzucasz dysk na dysk sieciowy, co obsługuje dysk sieciowy? OS X? Linux? Jak się łączysz? Samba? AFP? Czy używasz CCC bezpośrednio na dysku sieciowym, czy też wybierasz się do DMG na dysku sieciowym?
Josh
@Josh: Możesz CCC na zamontowanym
obrazie
Właśnie to robiłem - a CCC działało rsynci otrzymywałem te same błędy we / wy :-(
Josh
2

Nie jest to dokładna odpowiedź na twoje pytanie, ale możesz także rsync rozwidlać zasoby. Oto naprawdę fajne artykuły na temat:

ps: czy używasz solaris czy freebsd?

Więc co próbowałem teraz:

Mam zdalny system operacyjny (nie Mac) i wymazałem go za pomocą fuse / sshfs (przez wolny ADSL).

sshfs [email protected]:/path/to/dir /Users/me/Mount/myfs -oauto_cache,reconnect,volname=MyFs

Na moim Macbooku wpisałem to:

/usr/bin/rsync -avE /Users/me/tmp/bk /Users/me/Mount/myfs/tmp/test

(/ tmp / test już istnieje na komputerze zdalnym)

i dostałem to:

building file list ... done
bk/
._bk
bk/.DS_Store
bk/._.DS_Store
bk/Icon\#015
bk/._Icon\#015
bk/test.rtfd/
bk/test.rtfd/.LSOverride
bk/test.rtfd/TXT.rtf

sent 311127 bytes  received 186 bytes  15186.00 bytes/sec
total size is 6874  speedup is 0.02

Jak widać, widelce zasobów są konwertowane na pliki dot_underscore i kopiowane do zdalnej lokalizacji. (na przykład ikona niestandardowa również dla katalogu bk).

Dlatego nie rozumiem, dlaczego nie możesz rsyncować do zdalnych ZFS?

jm666
źródło
1
Bez względu na to, co próbowałem, nie mogę zmusić rsync do skopiowania wideł do zasobów, myślę, że ponieważ system ZFS ich nie obsługuje ... Nie jestem pewien. Najpierw próbowałem z serwerem Debian kBSD, ale przełączyłem się na Nexenta (jądro OpenSolaris + jądro Debiana), ponieważ ma on obsługę NFS i Netatalk.
Josh
A trzeci link? (które pokazują niezależne rozwiązanie OS / FS)
jm666
1
bardzo mnie to interesuje. Oto kolejny link do zfs + timemachine. blogs.oracle.com/constantin/entry/zfs_and_mac_os_x
jm666
Ach, rozumiem, montujesz katalog i rsynclokalnie! Próbowałem zsynchronizować rsync z komputera Mac na serwer! Spróbuję tego i skontaktuję się z tobą.
Josh
0

Nie wiem dlaczego , ale połączenie z serwerem zostało zerwane podczas kopiowania pliku i zakładam, że było tak, ponieważ duża ilość danych przesyłanych z tak dużą prędkością była większa niż serwer zapasowy mógł znieść; na krótki czas przestanie odpowiadać, a Mac wymusi odłączenie DMG, a tworzenie kopii zapasowej zakończy się niepowodzeniem.

Znalazłem rozwiązanie: przed utworzeniem kopii zapasowej w Preferencjach systemowych obniżyłem prędkość mojej karty Ethernet z 1000 Mb / s do 100 Mb / s. Następnie kopia zapasowa działała bezbłędnie, ponieważ szybkość przesyłania danych była ograniczona, a serwer kopii zapasowych nie został przytłoczony.

Josh
źródło