Skocz do zawartości

Tar Do Tworzenia Archiwum


Ravczy

Rekomendowane odpowiedzi

Zrobilem sobie taki prosty skrypcik, ktory w nocy zrzuca najwazniejsze katalogi z serwera linux na inny dysk.

Część kodu wygląda następująco

 

echo "Tworzenie kopii katalogu DB/MYSQL"

tar -czf /db/backup_system/backups_$DATA/db_backup.tar.gz /db/mysql

 

Katalog z bazą danych zajmuje około 6,3GB. Podejrzewam ze tar nie radzi sobie z tak dużymi plikami, ale to tylko moje domniemanie :)

Czy ktoś wie może jak rozwiązać ten problem?

Odnośnik do komentarza
Udostępnij na innych stronach

Podejrzewam ze tar nie radzi sobie z tak dużymi plikami
Bez przesady, to nie jest duża baza i z całą pewnością nie jest to pojedynczy plik tej wielkości ;)

Czy ktoś wie może jak rozwiązać ten problem?
Zacznij od dodania argumentu "v" do opcji tara i zrzucenia wyjścia (w tym wyjścia błędów do pliku) do pliku.

- Pytanie podstawowe czy ten skrypt kiedykolwiek zadziałał czy nie działał nigdy?

- Sprawdziłeś czy nie masz literówki w ścieżkach?

- A może /db/mysql nie jest fizycznym katalogiem a tylko linkiem symbolicznym?

- Piszesz, że zrzucasz z serwera linux na inny dysk, ale wygląda, że działasz w obrębie tego samego filesystemu (początek ścieżki źródłowej i docelowej "/db/"), więc pytanie czy jesteś pewien tego co napisałeś?

- Gdzie przekazujesz wartość do zmiennej DATA?

 

Najlepiej pokaż cały skrypt i podaj przykładowe wywołanie (parametry).

Jeśli skrypt jest dłuższy niż 15 linijek, to wstaw go pomiędzy znaczniki [codebox][/codebox] a nie pomiędzy [code][/code]

 

Odnośnik do komentarza
Udostępnij na innych stronach

Zrobilem sobie taki prosty skrypcik, ktory w nocy zrzuca najwazniejsze katalogi z serwera linux na inny dysk.

 

Czy nie lepiej zrobić to jakimś cywilizowanym sposobem? mysqldump --alldatabases > backup.sql

 

Jak w trakcie tarowania tamte bazy się zmienią to niezbyt to będzie można nazwać archiwizacją.

 

Odnośnik do komentarza
Udostępnij na innych stronach

Pytanie podstawowe czy ten skrypt kiedykolwiek zadziałał czy nie działał nigdy?

- Sprawdziłeś czy nie masz literówki w ścieżkach?

- A może /db/mysql nie jest fizycznym katalogiem a tylko linkiem symbolicznym?

- Piszesz, że zrzucasz z serwera linux na inny dysk, ale wygląda, że działasz w obrębie tego samego filesystemu (początek ścieżki źródłowej i docelowej "/db/"), więc pytanie czy jesteś pewien tego co napisałeś?

- Gdzie przekazujesz wartość do zmiennej DATA?

 

Moje odpowiedzi:

 

- Skrypt działał i miał się dobrze

- /db/mysql jest katalogiem

- archiwizuje /db/mysql do katalogu /db/backup - zawsze tak działało i było ok

- przedstawilem część skryptu. Wartość data obliczana jest na początku skryptu.

 

Jak w trakcie tarowania tamte bazy się zmienią to niezbyt to będzie można nazwać archiwizacją.

 

- serwer działa w intranecie - skrypt odpala sie w nocy - wtedy nic sie nie dzieje z bazą danych (wyłącza się przed zrobieniem zrzutu katalogów).

Odnośnik do komentarza
Udostępnij na innych stronach

No to pozostaje dodanie opcji "v" i przekierowanie wyjścia 1 i 2 do pliku. Może czegoś się dowiesz. Zastanów się co się zmieniło w systemie od czasu, gdy skrypt działał. Bo coś się zmienić musiało, nie przestał przecież działać ot tak sobie dla kaprysu ;)

Odnośnik do komentarza
Udostępnij na innych stronach

- archiwizuje /db/mysql do katalogu /db/backup - zawsze tak działało i było ok

Ja widzę w pierwszym poście, że chcesz wrzucać do /db/backup_system/..., a tu piszesz, że do /db/backup

może po prostu masz utworzony ten katalog (backup), a nie ten, który masz wpisany w skrypcie (backup_system).

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
×
×
  • Dodaj nową pozycję...