Użyj tar
:
tar -cf my_big_folder.tar /my/big/folder
Przywróć archiwum za pomocą tar -xf my_big_folder.tar -C /
-C przejdzie do katalogu głównego, aby przywrócić archiwum, ponieważ utworzone powyżej archiwum zawiera ścieżki bezwzględne.
EDYCJA : Ze względu na stosunkowo duży rozmiar archiwum najlepiej byłoby wysłać go [bezpośrednio] do jego ostatecznej lokalizacji, używając SSH lub punktu montowania zasobu / folderu w chmurze. Na przykład, jak sugeruje Cole Johnson :
tar -cf /network/mount/point/my_big_folder.tar /my/big/folder
lub
tar -c /my/big/folder | ssh example.com "cat > my_big_folder.tar"
EDYCJA : Jak sugeruje również Blacklight Shining , jeśli chcesz unikać ścieżek bezwzględnych, możesz przejść do rodzica dużego folderu, a tar
stamtąd:
tar -cf /network/mount/point/my_big_folder.tar \
-C /my/big/folder/location the_big_folder
lub
tar -cC /my/big/folder/location the_big_folder | \
ssh example.com "cat > my_big_folder.tar"
Refleksje osobiste
To, czy uwzględnić ścieżki względne czy bezwzględne, jest kwestią osobistych preferencji.
Zdarzają się przypadki, że ścieżki bezwzględne są oczywiste, np. W przypadku przywracania w przypadku odzyskiwania po awarii. W przypadku lokalnych projektów lub kolekcji archiwizowanie drzewa katalogów od rodzica wybranego folderu jest powszechne, aby uniknąć zaśmiecania bieżącego katalogu, na wypadek, gdyby archiwum zostało przypadkowo rozpakowane na miejscu. Jeśli big_folder leży gdzieś głęboko w standardowej hierarchii * NIX , sensowne może być rozpoczęcie archiwizowania pierwszego niestandardowego folderu, z którego odchodzi big_folder, i stamtąd jego drzewo katalogów.
Wreszcie - przechodząc tutaj pedantycznie - tar
członkowie archiwum są zawsze względni, ponieważ a) można je przywrócić w dowolnym katalogu ib) tar
usuwa wiodące /
podczas tworzenia archiwum. Osobiście zwykle używam -C podczas rozpakowywania archiwum.
tar
w Linuksie jest polecenie.tar -cf long.file.tar folder