• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Bash - Wykonywanie backupu co określony czas.

Object Storage Arubacloud
0 głosów
1,249 wizyt
pytanie zadane 31 stycznia 2017 w Systemy operacyjne, programy przez Sebastian Białek Początkujący (270 p.)

Dzień dobry,

Dostałem zadanie napisać skrypt do backupu. Treść zadania poniżej

"Napisz skrypt do tworzenia kopii zapasowej wybranego katalogu co podany czas, jeżeli jakiś plik w tym katalogu zmienił zawartość."

Poniżej przesyłam mój aktualny stan:

!/bin/bash

SOURCE="/var/www/my_web/load/"
BACKUP="/home/your_user/load/"
LBACKUP="/home/your_user/load/latest-full/"

DATE=$(date +%Y-%m-%d-%T)

DESTINATION="$BACKUP"/"$DATE"-diff/

rsync -av --compare-dest="$LBACKUP" "$SOURCE" "$DESTINATION"

cd "$DESTINATION"
find . -depth -type d -empty -delete

 

Program co prawda wykonuje kopie zapasowe natomiast tylko wtedy kiedy ja go uruchomię, potrzebuję sposobu aby wykonywał się samoczynnie co określony czas. Jakby ktoś mógł pomóc, to byłbym bardzo wdzięczny.

Z wyrazami szacunku,
Sebastian

1 odpowiedź

+4 głosów
odpowiedź 31 stycznia 2017 przez Benek Szeryf (91,010 p.)
edycja 31 stycznia 2017 przez Benek
 
Najlepsza

Musisz się zapoznać z programem crontab, który służy właśnie do tego typu działań. Utwórz specjalny plik wsadowy dla programu crontab. W tym celu wpisujesz:

crontab -e

Otworzy Ci się domyślny edytor tekstu do którego możesz wpisywać swoją tabelę.

crontab -r
crontab -l

Powyższe polecenia odpowiednio usuwają plik z tabelą i listują go na ekranie.

PLIK Z TABELĄ

Tabela może uruchamiać wiele zadań jednocześnie o dowolnej porze. Tabela musi mieć co najmniej jeden wiersz (uruchamiać jedno polecenie), by jej istnienie miało sens. Każdy wiersz składa się z 6 pól. 5 pierwszych odpowiada za moment uruchomienia, ostatnie to polecenie.

minuty godziny dni miesiące dzień_w_tyg polecenie

Na przykład jeśli chcesz, by Twój skrypt uruchamiał się każdego dnia o 10:00, to zastosuj zapis:

0 10 * * * bezwzgledna/sciezka/do/skryptu/skrypt.sh

Gwiazdka oznacza wszystkie wystąpienia. Jeszcze jeden przykład:

30 9 * 2-4 1 echo "I'm watching you ^_^"

W tym przypadku w każdy poniedziałek lutego, marca i kwietnia o godzinie 9:30 zostanie wypisane polecenie "I'm watching you".

komentarz 31 stycznia 2017 przez Sebastian Białek Początkujący (270 p.)
Dzięki, wszystko działa jak należy.

Podobne pytania

0 głosów
1 odpowiedź 298 wizyt
pytanie zadane 22 stycznia 2018 w Ogłoszenia, zlecenia przez jjanek Użytkownik (630 p.)
0 głosów
0 odpowiedzi 1,897 wizyt
+1 głos
1 odpowiedź 1,821 wizyt
pytanie zadane 24 marca 2017 w Python przez niezalogowany

92,575 zapytań

141,424 odpowiedzi

319,649 komentarzy

61,960 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...