OnWorks Linux i Windows Online WorkStation

logo

Darmowy hosting online dla stacji roboczych

<Poprzedni | Spis treści | Następne>

Chociaż Linux jest jednym z najbezpieczniejszych istniejących systemów operacyjnych i nawet jeśli został zaprojektowany z myślą o ciągłej pracy, dane mogą zostać utracone. Utrata danych jest najczęściej konsekwencją błędów użytkownika, ale czasami przyczyną jest awaria systemu, na przykład awaria zasilania lub dysku, dlatego zawsze dobrze jest zachować dodatkową kopię wrażliwych i/lub ważnych danych.


obraz

9.1.1. Przygotowanie danych


9.1.1.1. Archiwizacja za pomocą tar


W większości przypadków najpierw zbierzemy wszystkie dane do utworzenia kopii zapasowej w jednym pliku archiwum, który później skompresujemy. Proces archiwizacji polega na połączeniu wszystkich wymienionych plików i usunięciu niepotrzebnych spacji. W Linuksie zwykle robi się to za pomocą smoła dowództwo. smoła został pierwotnie zaprojektowany do archiwizacji danych na taśmach, ale może także tworzyć archiwa, tzw tarballs.


tar ma wiele opcji, najważniejsze z nich są przytoczone poniżej:


-v: gadatliwy

-t: test, pokazuje zawartość archiwum tar

-x: wyodrębnij archiwum

-c: utwórz archiwum

-f urządzenie archiwalne: użyj urządzenia archiwalnego jako źródła/miejsca docelowego dla archiwum, domyślnym urządzeniem jest pierwsze urządzenie taśmowe (zwykle /dev/st0 lub coś podobnego)

-j: przefiltrować bzip2, patrz Sekcja 9.1.1.2


Często pomija się przedrostek myślnika smoła opcji, jak widać na poniższych przykładach.


obrazUżyj GNU tar dla kompatybilności

Archiwum wykonane z zastrzeżeniem własności smoła wersja na jednym systemie może być niekompatybilna z smoła w innym, autorskim systemie. Może to powodować wiele problemów, na przykład w przypadku konieczności odzyskania archiwum


w systemie, którego już nie ma. Skorzystaj z GNU smoła wersję na wszystkich systemach, aby zapobiec płaczowi administratora systemu. Linux zawsze używa tar GNU. Podczas pracy na innych komputerach z systemem UNIX wpisz smoła --help aby dowiedzieć się, której wersji używasz. Jeśli nie widzisz gdzieś słowa GNU, skontaktuj się z administratorem systemu.

W poniższym przykładzie archiwum jest tworzone i rozpakowywane.


Gabi:~> obrazy/

ja+tux.jpg nimf.jpg


Gabi:~> tar cvf obrazy-w-katalogu.tar obrazy/

obrazy/images/nimf.jpg obrazy/me+tux.jpg


Gabi:~> obrazy płyt


gaby:~/images> tar cvf obrazy-bez-katalogu.tar *.jpg

ja+tux.jpg nimf.jpg


gaby:~/images> cd


Gabi:~> ls */*.tar

obrazy/obrazy-bez-katalogu.tar


Gabi:~> ls *.tar

obrazy-w-katalogu.tar


Gabi:~> tar xvf obrazy-w-katalogu.tar

obrazy/images/nimf.jpg obrazy/me+tux.jpg


Gabi:~> tar tvf obrazy/obrazy-bez-katalogu.tar

-rw-r--r-- gaby/gaby 42888 1999-06-30 20:52:25 me+tux.jpg

-rw-r--r-- gaby/gaby 7578 2000-01-26 12:58:46 nimf.jpg


Gabi:~> tar xvf obrazy/obrazy-bez-katalogu.tar

ja+tux.jpg nimf.jpg


Gabi:~> ls *.jpg

ja+tux.jpg nimf.jpg

Gabi:~> obrazy/

ja+tux.jpg nimf.jpg


Gabi:~> tar cvf obrazy-w-katalogu.tar obrazy/

obrazy/images/nimf.jpg obrazy/me+tux.jpg


Gabi:~> obrazy płyt


gaby:~/images> tar cvf obrazy-bez-katalogu.tar *.jpg

ja+tux.jpg nimf.jpg


gaby:~/images> cd


Gabi:~> ls */*.tar

obrazy/obrazy-bez-katalogu.tar


Gabi:~> ls *.tar

obrazy-w-katalogu.tar


Gabi:~> tar xvf obrazy-w-katalogu.tar

obrazy/images/nimf.jpg obrazy/me+tux.jpg


Gabi:~> tar tvf obrazy/obrazy-bez-katalogu.tar

-rw-r--r-- gaby/gaby 42888 1999-06-30 20:52:25 me+tux.jpg

-rw-r--r-- gaby/gaby 7578 2000-01-26 12:58:46 nimf.jpg


Gabi:~> tar xvf obrazy/obrazy-bez-katalogu.tar

ja+tux.jpg nimf.jpg


Gabi:~> ls *.jpg

ja+tux.jpg nimf.jpg

Ten przykład ilustruje także różnicę pomiędzy katalogiem tarowanym a grupą plików tarowanych. Zaleca się kompresowanie tylko katalogów, aby pliki nie rozsypały się po całym dysku podczas rozpakowywania archiwum (które może znajdować się w innym systemie, gdzie możesz nie wiedzieć, które pliki już tam były, a które pochodzą z archiwum).


Kiedy napęd taśmowy jest podłączony do twojego komputera i skonfigurowany przez administratora systemu, nazwy plików kończące się na .smoła są zastępowane nazwą urządzenia taśmowego, na przykład:


smoła cvf /dev/poczta na taśmie/


Katalog Poczta a wszystkie zawarte w nim pliki są kompresowane do pliku, który jest natychmiast zapisywany na taśmie. Wyświetlana jest lista treści, ponieważ użyliśmy opcji pełnej.


obraz


9.1.1.2. Przyrostowe kopie zapasowe za pomocą tar


Połączenia smoła Narzędzie wspiera tworzenie przyrostowych kopii zapasowych, wykorzystując plik -N opcja. Dzięki tej opcji możesz określić datę i smoła sprawdzi czas modyfikacji wszystkich określonych plików względem tej daty. Jeśli pliki zostały zmienione później niż data, zostaną uwzględnione w kopii zapasowej. W poniższym przykładzie jako wartość daty wykorzystano znacznik czasu z poprzedniego archiwum. Najpierw tworzone jest początkowe archiwum i wyświetlany jest znacznik czasu początkowego pliku kopii zapasowej. Następnie tworzony jest nowy plik, na którym wykonujemy nową kopię zapasową zawierającą tylko ten nowy plik:


Jimmy: ~> tar cvpf /var/tmp/javaproggies.tar java/*.java

java/btw.java java/error.java java/hello.java java/income2.java java/income.java java/inputdevice.java java/input.java java/master.java java/method1.java java/mood.java java/moodywaitress.java java/test3.java java/TestOne.java java/TestTwo.java java/Vehicle.java


Jimmy: ~> ls -l /var/tmp/javaproggies.tar

-rw-rw-r-- 1 jimmy jimmy 10240 21 stycznia 11:58 /var/tmp/javaproggies.tar jimmy:~> dotknij java/newprog.java

Jimmy: ~> tar -N /var/tmp/javaproggies.tar \

-cvp /var/tmp/inkrementalny1-javaproggies.tar java/*.java 2> /dev/null

java/newprog.java Jimmy:~> płyta CD /var/tmp/

Jimmy: ~> tar xvf przyrostowy1-javaproggies.tar

java/newprog.java

Jimmy: ~> tar cvpf /var/tmp/javaproggies.tar java/*.java

java/btw.java java/error.java java/hello.java java/income2.java java/income.java java/inputdevice.java java/input.java java/master.java java/method1.java java/mood.java java/moodywaitress.java java/test3.java java/TestOne.java java/TestTwo.java java/Vehicle.java


Jimmy: ~> ls -l /var/tmp/javaproggies.tar

-rw-rw-r-- 1 jimmy jimmy 10240 21 stycznia 11:58 /var/tmp/javaproggies.tar jimmy:~> dotknij java/newprog.java

Jimmy: ~> tar -N /var/tmp/javaproggies.tar \

-cvp /var/tmp/inkrementalny1-javaproggies.tar java/*.java 2> /dev/null

java/newprog.java Jimmy:~> płyta CD /var/tmp/

Jimmy: ~> tar xvf przyrostowy1-javaproggies.tar

java/newprog.java

Błędy standardowe są przekierowywane do / dev / null. Jeśli tego nie zrobisz, smoła wypisze komunikat dla każdego niezmienionego pliku, informując, że nie zostanie on zrzucony.


Ten sposób pracy ma tę wadę, że sprawdza znaczniki czasu plików. Załóżmy, że pobierasz archiwum do katalogu zawierającego Twoje kopie zapasowe, a archiwum zawiera pliki utworzone dwa lata temu. Porównując znaczniki czasu tych plików ze znacznikami czasu w pierwotnym archiwum, nowe pliki będą w rzeczywistości sprawiać wrażenie starych smołai nie zostaną uwzględnione w przyrostowej kopii zapasowej utworzonej przy użyciu metody -N opcja.


Lepszym wyborem byłby tzw -g opcję, która utworzy listę plików do kopii zapasowej. Podczas tworzenia przyrostowych kopii zapasowych pliki są sprawdzane na podstawie tej listy. Tak to działa:


Jimmy: ~> tar cvpf work-20030121.tar -g snapshot-20030121 work/

praca/praca/plik1 praca/plik2 praca/plik3


Jimmy: ~> plik migawki-20030121

Jimmy: ~> tar cvpf work-20030121.tar -g snapshot-20030121 work/

praca/praca/plik1 praca/plik2 praca/plik3


Jimmy: ~> plik migawki-20030121


migawka-20030121: ASCII XNUMX Następnego dnia użytkownik Jimmy Prace nad file3 jeszcze trochę i tworzy file4. Na koniec dnia tworzy nową kopię zapasową:


Jimmy: ~> tar cvpf work-20030122.tar -g snapshot-20030121 work/

praca/praca/plik3 praca/plik4

Jimmy: ~> tar cvpf work-20030122.tar -g snapshot-20030121 work/

praca/praca/plik3 praca/plik4

Oto kilka bardzo prostych przykładów, ale możesz także użyć tego rodzaju polecenia w zadaniu cron (patrz sekcja 4.4.4), które określa na przykład plik migawki dla cotygodniowej kopii zapasowej i jeden dla codziennej kopii zapasowej.

W takim przypadku pliki migawek należy zastąpić podczas tworzenia pełnych kopii zapasowych. Więcej informacji można znaleźć w smoła dokumentacja.

obrazPrawdziwe rzeczy

Jak zapewne zauważyłeś, smoła jest w porządku, gdy mówimy o prostym katalogu, zestawie plików, które należą do siebie. Istnieją jednak narzędzia, którymi łatwiej zarządzać, gdy chcesz archiwizować całe partycje lub dyski lub większe projekty. Po prostu wyjaśniamy smoła tutaj, ponieważ jest to bardzo popularne narzędzie do dystrybucji archiwów. Dość często będzie się zdarzać, że trzeba będzie zainstalować oprogramowanie dostępne w formacie

tak zwany „skompresowany plik tar”. Aby zapoznać się z łatwiejszym sposobem regularnego tworzenia kopii zapasowych, zobacz sekcję 9.3.


obraz

9.1.1.3. Kompresowanie i rozpakowywanie za pomocą programu gzip lub bzip2


Dane, łącznie z plikami tar, można kompresować za pomocą narzędzi zip. The gzip polecenie doda przyrostek .gz do nazwy pliku i usunie oryginalny plik.


Jimmy: ~> ls -la | grep tar

-rw-rw-r-- 1 jimmy jimmy 61440 6 czerwca 14:08 obrazy-bez-dir.tar jimmy:~> gzip obrazy-bez-katalogu.tar

Jimmy: ~> ls -la obrazy-bez-katalogu.tar.gz

-rw-rw-r-- 1 jimmy jimmy 50562 6 czerwca 14:08 obrazy-bez-dir.tar.gz

Jimmy: ~> ls -la | grep tar

-rw-rw-r-- 1 jimmy jimmy 61440 6 czerwca 14:08 obrazy-bez-dir.tar jimmy:~> gzip obrazy-bez-katalogu.tar

Jimmy: ~> ls -la obrazy-bez-katalogu.tar.gz

-rw-rw-r-- 1 jimmy jimmy 50562 6 czerwca 14:08 obrazy-bez-dir.tar.gz

Rozpakuj pliki spakowane gzimem za pomocą rozszerzenia -d opcja.


bzip2 działa w podobny sposób, ale wykorzystuje ulepszony algorytm kompresji, tworząc w ten sposób mniejsze pliki. Więcej informacji znajdziesz na stronach informacyjnych bzip2.


Pakiety oprogramowania dla systemu Linux są często dystrybuowane w spakowanych plikach tar. Rozsądną rzeczą do zrobienia po rozpakowaniu tego rodzaju archiwów jest znalezienie pliku README i przeczytaj to. Ogólnie będzie zawierać wytyczne dotyczące instalacji pakietu.


GNU smoła polecenie rozpoznaje pliki spakowane gzipem. Użyj polecenia


smoła zxvf plik.tar.gz


do rozpakowywania i rozpakowywania .tar.gz or . Tgz akta. Używać


smoła plik jxvf.tar.bz2


do rozpakowania smoła archiwa, które zostały skompresowane bzip2.


obraz


9.1.1.4. Archiwa Javy


Projekt GNU zapewnia nam słoik narzędzie do tworzenia archiwów Java. Jest to aplikacja Java, która łączy wiele plików w jeden plik archiwum JAR. Będąc jednocześnie narzędziem do archiwizacji i kompresji ogólnego przeznaczenia, opartym na formacie kompresji ZIP i ZLIB, słoik został zaprojektowany głównie w celu ułatwienia pakowania kodu Java, apletów i/lub aplikacji w jednym pliku. Połączone w jednym archiwum komponenty aplikacji Java można pobrać znacznie szybciej.


w odróżnieniu smoła, słoik kompresuje domyślnie, niezależnie od innych narzędzi - ponieważ jest to w zasadzie wersja Java zamek błyskawiczny. Dodatkowo umożliwia podpisanie poszczególnych wpisów w archiwum przez autora, co pozwala na uwierzytelnienie pochodzenia.


Składnia jest prawie identyczna jak w przypadku smoła polecenie, do którego się odwołujemy Informacje słoik dla konkretnych różnic.


obraztar, jar i dowiązania symboliczne

Jedną z godnych uwagi funkcji, o której tak naprawdę nie wspomina się w standardowej dokumentacji, jest to słoik będzie podążać za dowiązaniami symbolicznymi. Dane, do których prowadzą te linki, zostaną uwzględnione w archiwum. Domyślnie w smoła polega na utworzeniu kopii zapasowej tylko dowiązania symbolicznego, ale to zachowanie można zmienić za pomocą -h do smoła.


obraz

9.1.1.5. Transport Twoich danych


Najlepsze przetwarzanie w chmurze dla systemu operacyjnego w OnWorks: