Najszybszy i najbezpieczniejszy sposób kopiowania dużych danych z jednego dysku zewnętrznego na inny


85

Muszę być w stanie skopiować około 2 TB danych z dysku zewnętrznego (pojedynczy dysk zewnętrzny USB) na inny dysk zewnętrzny (Drobo podłączony przez Firewire).

Finder nie jest opcją. Jeśli napotka jakiś problem, zatrzymuje proces i muszę dowiedzieć się, dlaczego nie udało się, i zacząć od nowa. Przejście tego może zająć mi miesiące.

Czytałem o CP i RSYNC, ale nie jestem zbyt dobrze zaznajomiony i obawiam się, że mogę pomylić niektóre przełączniki i pominąć pliki, zepsuć daty plików lub, co najgorsze ...

Czy ktoś może zasugerować, jak mogę to osiągnąć przy minimalnym ryzyku i kosztach?


Począwszy od MacOS 10.13.4+, to faktycznie można użyć Findera do kopiowania dużych plików (i wszystkie związane z tym łączy). Właśnie próbowałem go stworzyć inny dysk kopii zapasowej Time Machine (z istniejącego) i działa szybko i pięknie. Najwyraźniej przed 10.13.4 był to błąd, ale został on naprawiony. Więcej informacji w tej odpowiedzi: apple.stackexchange.com/a/323691/261070 .
youngrrrr

Odpowiedź na to zależy od tego, jak zdefiniujesz „najszybszy”. Czy chcesz najszybszej prędkości transferu, czy najkrótszego czasu, kiedy (człowiek) zaczniesz nad tym pracować i dokończyć. Czas potrzebny Ci będzie zależeć od rzeczy jak, czy terminal cię przeraża czy nie. Idealna odpowiedź dla Ciebie będzie również zależeć od tego, czy jest to operacja jednorazowa, czy często powtarzana, a także od tego, czy chcesz wydać pieniądze, czy nie.
iconoclast

Odpowiedzi:


143

zdalna synchronizacja, rsyncto niezawodny wybór do kopiowania dużych ilości danych. Możesz przygotować polecenie i wykonać próbę przed przystąpieniem do kopiowania; dodaj, --dry-runaby zasymulować kopię.

Twoje ostateczne polecenie będzie dość proste:

sudo rsync -vaE --progress /Volumes/SourceName /Volumes/DestinationName

Flagi to:

  • v zwiększa gadatliwość.
  • a stosuje ustawienia archiwizacji, aby dokładnie odzwierciedlać pliki źródłowe, w tym dowiązania symboliczne i uprawnienia.
  • E kopiuje rozszerzone atrybuty i forki zasobów (tylko OS X).
  • progress zapewnia odliczanie i przesyłanie statystyk podczas kopiowania.

sudosłuży do zapewnienia rsyncodpowiednich praw dostępu i odczytu wszystkich plików na dysku, niezależnie od właściciela. Pozwala to również rsyncna zapisanie plików na nowym dysku i odtworzenie oryginalnych informacji o właścicielu.

rsync jest prawdopodobnie najlepszym wyborem, ponieważ można go uruchomić ponownie w przypadku problemów, oferuje szczegółowe rejestrowanie i jest tak szybki, jak to możliwe, pozostając bezpieczny.

Istnieje wiele wskazówek, jak uzyskać jak najwięcej rsync, przykłady poleceń rsync zawierają odpowiednie przykłady. Jak @GordonDavisson komentuje poniżej, uważaj na końcowe ukośniki; może to zmienić świat, jeśli twoja kopia zaczyna się od folderu.

Alternatywne narzędzia obejmują dittoi cp. Oba są rozsądnymi wyborami, ale oferują różną składnię.


5

Użyłem synchronizacji bittorrent do synchronizacji 8 TB między moim Drobo i QNAP.


bittorrent sync to również sposób na zrobienie tego. Przegłosowania nie są (moim zdaniem) naprawdę potrzebne.
CousinCocaine

6
@CousinCocaine tak, ale pytanie dotyczyło tego, jak coś zrobić, a nie jakiej aplikacji użyć.
Dillon

@Dillon: wiedza, z której aplikacji należy korzystać, to czasem 99% tego, co musisz wiedzieć, aby wiedzieć, jak to zrobić.
iconoclast

3

Jakiś czas temu odpowiedziałem na podobne pytanie . Moja odpowiedź została skopiowana poniżej.


Używam cp -Rfv sourcefile destinationfilez powodzeniem dość regularnie.

cp = kopia

R = utrzymuje hierarchie plików

f = jeśli istniejącego pliku docelowego nie można otworzyć, usuń go i spróbuj ponownie

v = pełny tryb, wyświetla pliki przesyłane w miarę postępu

sourcefile = dane, które chcesz skopiować

destinationfile = katalog / dysk, na który chcesz skopiować


9
Warto jednak zauważyć, że cp skopiuje pliki, nawet jeśli się nie zmieniły, podczas gdy rsync nie będzie marnować czasu na kopiowanie plików, które już istnieją w celu. W ten sposób możesz zrestartować od miejsca, w którym przerwałeś i / lub wykonać przyrostowe kopiowanie.
David

Można dodawać, -naby nie kopiować plików, które już istnieją, i -pzachować wszystkie uprawnienia, w tym, w miarę możliwości, rozszerzone atrybuty i forki zasobów.
spinup

3

„Najszybszym” sposobem byłoby fizyczne przeniesienie obu dysków do wewnętrznego komputera, wykonanie kopii (lub rsync), a następnie przeniesienie ich z powrotem.

Nadal używałbym rsync, ponieważ jeśli zostanie przerwany z jakiegoś powodu (kot naciska przełącznik zasilania?), Rsync nie skopiuje plików, które już się powiodły. Nie będzie również kopiować żadnych plików, które są takie same i w tym samym miejscu.


Pamiętaj, że jest to szybsze ze względu na rozmiar zestawu danych. Gdyby był o wiele mniejszy, przewaga prędkości zostałaby anulowana przez czas przenoszenia napędów.
WGroleau

Nie, szybciej dla dużej ilości danych. W przypadku niewielkiej ilości danych kopiowanie jest nadal szybsze, ale czas potrzebny na przeniesienie dysków anuluje to. Jest to jednak potencjalnie szybsze w warunkach NON-perfect, ponieważ jeśli zostanie przerwane, rsync może uniknąć ponownego kopiowania tych, które zostały wykonane przed przerwaniem.
WGroleau

Jeśli prędkość przesyłania jest większa, ale przerwa powoduje, że zaczynasz od nowa, prawdopodobnie cały proces nie będzie szybszy, a cały proces ma znaczenie. „idealne warunki” = nic nie zakłóca procesu . Z mojego doświadczenia wynika, że to bardzo powszechne na coś się wydarzy, aby spowodować problem, gdy masz do czynienia z masową transferu. Właśnie dlatego ciągły transfer nazywam „doskonałym”.
iconoclast

Jeśli używasz rsync, jak powiedziałem, przerwa nie powoduje, że zaczynasz od nowa.
WGroleau

W tym kontekście nie rozumiesz, co rozumiem przez „zacząć od nowa”. Jestem świadom tego, że rsync może odebrać gdzie to zostało przerwane w synchronizacji danych. Ale jeśli wydasz polecenie, które się nie zakończy, zaczniesz od ludzkiej interwencji, co powoduje, że cały proces trwa dłużej. Albo marnujesz swój czas na opiekę nad całym dzieckiem, albo istnieje duże opóźnienie między porażką a jej odkryciem. Liczy się człowiek jest czas całego procesu, a czas interwencji człowieka.
iconoclast

1

Jeśli chcesz dokładnie skopiować dysk A na dysk B, możesz to zrobić za pomocą Narzędzia dyskowego.


Będziemy używać funkcji przywracania Narzędzia dyskowego . Niektóre informacje na temat różnych między przywracaniem a kopiowaniem i wklejaniem:

Funkcja przywracania w Narzędziu dyskowym korzysta z funkcji kopiowania bloków, która może przyspieszyć proces kopiowania . Tworzy również prawie dokładną kopię urządzenia źródłowego . Kiedy mówimy „prawie dokładnie”, nie mamy na myśli sugerowania, że ​​przydatne dane mogą pozostać w tyle, ponieważ tak nie jest. Oznacza to, że kopia blokowa kopiuje wszystko z bloku danych z jednego urządzenia na drugie . Wyniki są prawie dokładną kopią oryginału. Z drugiej strony kopia pliku kopiuje plik po pliku, a mimo że dane pliku pozostają takie same, położenie pliku na urządzeniu źródłowym i docelowym prawdopodobnie będzie bardzo różne .

Korzystanie z kopiowania blokowego jest szybsze , ale ma pewne ograniczenia, które wpływają na to, kiedy można go użyć. Najważniejsze jest to, że kopiowanie blok po bloku wymaga najpierw odmontowania urządzenia źródłowego i docelowego z komputera Mac. Zapewnia to, że dane bloku nie zmieniają się podczas procesu kopiowania. Nie martw się jednak; nie musisz odmontowywać. Zajmie się tym funkcja przywracania narzędzia dyskowego. Ale to oznacza, że ani źródło, ani miejsce docelowe nie mogą być używane podczas korzystania z funkcji przywracania .

Źródło: https://www.lifewire.com/use-disk-utility-to-clone-macs-drive-4042367


Instrukcje

do kopiowania wszystkich plików z urządzenia A na urządzenie B.

OSTRZEŻENIE : Po przywróceniu jednego woluminu na drugi wszystkie pliki na woluminie docelowym zostaną usunięte. Przed przywróceniem woluminu skopiuj wszystkie pliki z woluminu docelowego, które chcesz zapisać na inny wolumin.

  1. Wybierz Widok> Pokaż wszystkie urządzenia.
  2. Wybierz wolumin na pasku bocznym, który chcesz przywrócić, a następnie kliknij przycisk Przywróć wprowadź opis zdjęcia tutajlub wybierz Edycja> Przywróć.

Jest to wolumin, który jest usuwany i staje się dokładną kopią. [Urządzenie B]

  1. Kliknij menu podręczne Przywróć, a następnie wybierz wolumin, który chcesz skopiować [Urządzenie A].
  2. Kliknij Przywróć, a następnie Gotowe.

Źródło: https://support.apple.com/guide/disk-utility/restore-a-disk-dskutl14062/mac


Kopiowanie bloków zajmuje również czas na kopiowanie wolnego miejsca i kończy się niepowodzeniem, jeśli miejsce docelowe jest o jeden blok mniejsze niż źródło. (Może zawieść w sposób, który nie zostanie natychmiast wykryty.) A jeśli miejsce docelowe jest większe, dodatkowa przestrzeń staje się bezużyteczna.
WGroleau,

@WGroleau można rozszerzyć na „dodatkowe miejsce staje się bezużyteczne”
JBis

kopia bloku obejmuje blok, który mówi, który blok jest ostatni. Jeśli miejsce docelowe jest wystarczająco duże dla danych, ale mniejsze niż źródło, system operacyjny uważa, że ​​są dostępne bloki, które nie istnieją. Jeśli miejsce docelowe jest większe, system operacyjny uważa, że ​​dodatkowe bloki nie istnieją.
WGroleau,

@WGroleau, więc rozumiem cię poprawnie, jeśli mam dysk 500 GB z pojedynczym plikiem 1 GB i blokuj kopię na dysk 1000 GB, co się stanie? Czy umiesz link do strony?
JBis

Spójrz na stronę podręcznika dla „dd”. Skopiuje 500 GB, ale większość z 499 GB będzie pusta. Część, która nie jest widoczna tylko dla systemu operacyjnego i mówi, że masz dysk 500 GB. Wyszukaj także „mapę partycji” i „mapę objętości”
WGroleau,

0

Jeśli nie chcesz iść po linii poleceń, używam aplikacji FreeFileSync rutynowo do synchronizacji 2 TB danych z zewnętrznej macierzy do lokalizacji sieciowej bez problemu. Możesz kontrolować sposób, w jaki obsługuje błędy i uzyskać dziennik po zakończeniu.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.