Próbuję skompresować folder ( /var/www/
) do miejsca, ~/www_backups/$time.tar
gdzie $time
jest bieżąca data.
Oto co mam:
cd /var/www && sudo tar -czf ~/www_backups $time"
Jestem całkowicie zagubiony i jestem w tym już od wielu godzin. Nie jestem pewien, czy -czf
jest poprawny. Chcę po prostu skopiować całą zawartość /var/www
do $time.tar
pliku i chcę zachować uprawnienia do wszystkich plików. Czy ktoś może mi pomóc?
$time
.Odpowiedzi:
Do
tar
igzip
folderu, składnia jest:-
Jest opcjonalne. Jeśli chcesz przejśćtar
do bieżącego katalogu, użyj,.
aby to wyznaczyć.Aby skonstruować nazwę pliku, użyj
date
narzędzia (sprawdź dostępne opcje formatu na jego stronie podręcznika). Na przykład:Utworzyłoby to plik o nazwie coś takiego
20120902-185558.tar.gz
.W systemie Linux istnieje prawdopodobieństwo, że
tar
obsługuje również kompresję BZip2 z opcjąj
zamiastz
. I ewentualnie inni. Sprawdź stronę manuala w systemie lokalnym.źródło
sudo tar -czf ~/www_backups/$time.tar /var/www/"
Wyobraź sobie, że mam plik o nazwie test.txt wewnątrz / var / www. Po zrobieniu kopii pliku tar, po rozpakowaniu zostanie on umieszczony w katalogach / var / www. Czy to ma sens? Mam nadzieję, że tak, trudno to wyjaśnić. Sprawdzę obsługę BZip2, dzięki za sugestię!cd
do katalogu, który chcesz spakować, a następnietar cf file.tar .
- to ostatnie.
zamiast określenia pełnej ścieżki spowoduje, że ścieżki wewnątrz archiwum będą względne względem bieżącego katalogu. Możesz także użyć-C
opcji tar (spójrz na stronę podręcznika).-f
(ze strony podręcznika )Read the archive from or write the archive to the specified file.The filename can be - for standard input or standard output.
sudo
był w pytaniu, nie zmieniłem tego ani nie zakwestionowałem. Ograniczenie katalogu docelowego kopii zapasowej do katalogu głównego nie jest jednak złym pomysłem.