Narzędzie kompresji / archiwizacji, które przechowuje najwięcej metadanych?

1

Niedawno zrobiłem kopię zapasową dysku FAT32, który zawierał wiele różnych danych. Zawiera wiele plików multimedialnych, wiele dużych plików binarnych i jak zwykle w systemie FAT32, ma wszystkie rodzaje nieparzystych (ale potencjalnie ważnych) uprawnień dla wszystkich tych różnych plików. Cały katalog tej kopii zapasowej waży kilkaset GB. Chciałbym mieć skompresowane archiwum tej kopii zapasowej, ale mam kilka wymagań od dowolnego narzędzia archiwizującego, którego używam:

  • Musi zachować rozszerzone atrybuty
  • Musi zachować znaczniki czasu
  • Musi zachować uprawnienia
  • Chciałbym, żeby zachował jak najwięcej metadanych

Wiem, że istnieje wiele różnych narzędzi archiwizujących, które pasują przynajmniej do niektórych moich potrzeb, ale chciałbym wiedzieć, który z nich pasuje do wszystkich. To znaczy, który z nich może zachować najwięcej metadanych, a także (korzystnie) ma dobry współczynnik kompresji dla zróżnicowanego zestawu danych.

GDP2
źródło
1
Co jest złego w prostym kliknięciu prawym przyciskiem myszy & gt; Kompresować?
Tetsujin
FAT32 nie rozumie tradycyjnych uprawnień uniksowych ani list ACL. To, co widzisz w Finderze, to magia jądra, w której wszystkie bity uprawnień dla właściciela, grupy i innych są ustawiane, a właściciel plików / folderów jest ustawiony na _unknown użytkownika. Znaczniki czasu nie przetrwają dobrze między systemami plików HFS + i FAT32. Rozszerzone atrybuty miałyby postać formatu AppleDouble, w którym dane są przechowywane w jednym pliku, a atrybuty w innym pliku.
fd0
@ fd0 Dzięki za informacje. Czy to oznacza, że ​​prawie każde narzędzie do kompresji / archiwizacji utraci metadane znacznika czasu i potencjalnie inne rodzaje metadanych (takich jak atrybuty rozszerzone)?
GDP2
@ fd0 Listy ACL i wszystkie inne nietrywialne metadane są przechowywane w atrybutach rozszerzonych, które są zachowane w plikach AppleDouble (._). Jeśli nosisz pliki dot, zachowujesz większość metadanych. Własność nigdy nie jest ustawiona nieznany użytkownik, kiedy. pliki są obecne.
boris42
@ boris42 Hmm, dzięki za dodatkowe informacje. Będę musiał wziąć to, co oboje mówicie i dowiedzieć się, jak dokładnie ma to zastosowanie w mojej sytuacji.
GDP2

Odpowiedzi:

1

Zachować wszystko Mac widzi na woluminie Sugeruję utworzenie skompresowanego obrazu dysku za pomocą Narzędzia dyskowego. Uruchom Narzędzie dyskowe, wybierz głośność zewnętrzną i wybierz Plik / nowy obraz z „Tom” lub Plik / Nowy obraz z folderu i wybierz sprężony format obrazu. Na pewno zapisze wszystko i jest to ten sam mechanizm, z którego korzysta Time Machine podczas tworzenia kopii zapasowej w miejscu docelowym sieci.

boris42
źródło
Narzędzie dyskowe z pewnością nie wydaje się złym rozwiązaniem dla tego, czego chcę. Jak dobry jest współczynnik kompresji? Ponadto, jaki algorytm kompresji jest używany? Użyłem tego wcześniej z dość dobrymi wynikami, ale chciałbym wiedzieć, jak to się ma do 7zip, co sugeruje inna odpowiedź.
GDP2
@ GDP2 Disk Utility (lub hdiutil) używa UDZO (zlib) i UDBZ (bzip2). Przeprowadziłem testy z folderem 300 MB z filmami. 7zip wykonał najmniejszy plik (223Mb), następnie UDBZ (263Mb), a następnie zip (278Mb), a następnie UDZO (282Mb).
boris42
Dzięki za testy i statystyki. Będę musiał trochę się zastanowić i zobaczyć, który uważam za najlepszy. Prawdopodobnie przetestuję zarówno Narzędzie dyskowe, jak i 7zip i zobaczę, czy różnice między nimi są znaczące.
GDP2
Dwie rzeczy do rozważenia - czas na wykonanie kopii zapasowej i łatwość pełnego lub częściowego przywrócenia. W powyższych testach 7z i UDBZ zajmowały mniej więcej ten sam czas (bit ponad 1 minutę), zip i UDZO są mniej więcej takie same (10-15 sekund). Wyodrębnianie z 7z lub zip do częściowego przywracania jest albo nudne z linii poleceń, ale wymaga aplikacji interfejsu użytkownika innej firmy, podczas gdy można zamontować skompresowany obraz dysku i natychmiast wykorzystać całą jego zawartość jako wolumin bez konieczności posiadania wolnego miejsca na wyodrębnione pliki . Dla mnie jest to wyraźna wygrana. Używam UDZO od lat i UDBZ, gdzie przestrzeń oszczędza na rzeczy (przez e-mail itp.)
boris42
Dzięki, Boris. Myślę, że ta opcja jest najlepsza dla tego, o co prosiłem. Korzystanie z Narzędzia dyskowego lub hdiutil wydaje się być ścieżką najmniejszego oporu, chociaż współczynnik kompresji może być gorszy. 7z wymaga tarballa do przechowywania metadanych, co nie jest złe, ale wydaje się nieco mniej niezawodne. Może to tylko paranoja z mojej strony.
GDP2
1

Jeśli jest to FAT32, użyj 7zip. Włącz opcje „wolniejsze, ale bardziej skuteczne”, które używają większego słownika. Wyniki mogą być spektakularne; Używam go do przenoszenia kopii zapasowych baz danych wokół komputerów i często uzyskuję 96% kompresji.

Maury Markowitz
źródło
Dla OS X, p7zip wydaje się być jedyną opcją. Byłoby dobrze, z wyjątkiem tego, że użycie jest trochę skomplikowane, a także widzę zastrzeżenia na stronie man tak jak to. Czy masz jakieś przemyślenia na temat najlepszego wykorzystania p7zip i czy te zastrzeżenia są ważne dla mojej sytuacji?
GDP2
Poszedłem do przodu i zaakceptowałem odpowiedź @ boris42 tylko dlatego, że jest nieco bardziej wiarygodna niż 7z. Myślę jednak, że mogę skończyć na 7z z powodu lepszego współczynnika kompresji. Jednak za to, o co pytałem, myślę, że Narzędzie dyskowe / hdiutil wydaje się być nieco bardziej niezawodną strategią tworzenia kopii zapasowych niż archiwum 7-spakowane. To może być po prostu paranoja z mojej strony.
GDP2