Mati120 0 Zgłoś post Napisano Kwiecień 27, 2014 Witam chciałem zmienić ten skrypt : #!/bin/bash #Zmienne ile=`ls -lt /data | wc -l` ostatni=`ls -lt /data/ | tail -n 1 | awk '{ print $8 }'` data=`date -R | awk -F" " '{print $2 $3 $4" "}'| cut -c1-9` co="/home/bartek/Praca/CV /home/bartek/Pulpit /var/log/syslog" logger OOOOOOOOOOOOOOOOOOOOOOOO logger zaczynam wykonywac kopie #Skrypt if [ $ile = 6 ] then echo bede kasowac $ostatni logger skasowalem $ostatni rm -rf /data/$ostatni else echo "nie masz jeszcze 5 kopii" logger nie masz jeszcze 5 kopii fi mkdir /data/$data tar -zcf /tmp/kopia.tar.gz $co mv /tmp/kopia.tar.gz /data/$data/ #Koniec logger zakonczylem prace programu logger dostepne kopie po zakonczeniu pracy programu logger `ls /data` logger OOOOOOOOOOOOOOOOOOOOOOOO Tak aby tworzyło tylko folder w datą a w nim żeby znajdował się plik : ts3server.sqlitedb dokładna lokalizacja : /root/serwer/ts3server.sqlitedb Plik żeby był zapisywany do /root/serwer/backup Lecz chciałbym aby zostało to że przetrzymuje 5 folderów, jeśli folder jest starszy niech usunie i zastąpi nowym. Udostępnij ten post Link to postu Udostępnij na innych stronach
Rbit 15 Zgłoś post Napisano Kwiecień 27, 2014 (edytowany) #!/bin/bash ##Zmienne script_name="TS-Backup" #Zmienna używana przy logowaniu z_file="/root/serwer/ts3server.sqlitedb" #plik lub folder do backupu z_backup_folder="/root/serwer/backup" #folder w którym trzymamy backup, musi byc utworzony wczesniej z_archive_backup=5 #ile archiwalnych plików wstecz trzymamy #Zmienne funkcyjne - nie ruszaj!! z_date=`date +%Y%m%d` check_backup_directory () { if [ ! -d "$z_backup_folder" ]; then echo "Backup folder "$z_backup_folder" doesn't exist" logger "$script_name - [fail] backup folder "$z_backup_folder" doesn't exist" exit 1 fi } delete_oldest_file () { oldest_file=$(find "$z_backup_folder"/* -type d -printf "%p\n" | sort -n | head -n1) rm -Rf $oldest_file logger "$script_name - $oldest_file was removed" } backup_file_count () { backup_file_count=$(ls -1 $z_backup_folder | wc -l) } delete_old_archive () { backup_file_count while [ $backup_file_count -gt $z_archive_backup ]; do delete_oldest_file backup_file_count done } make_backup () { mkdir "$z_backup_folder"/"$z_date" &> /dev/null rsync -avh --checksum $z_file "$z_backup_folder"/"$z_date"/ &> /dev/null logger "$script_name - making backup $z_date" } main () { echo "Rozpoczynam backup" logger "$script_name - [start] backup" check_backup_directory make_backup delete_old_archive logger "$script_name [done] backup" } main http://pastebin.com/J2ZmmAYh Trochę na kolanie pisany ale powinien działać. tylko utwórz najpierw "/root/serwer/backup" Edytowano Kwiecień 27, 2014 przez Rbit (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Mati120 0 Zgłoś post Napisano Kwiecień 27, 2014 Tworzy folder lecz nie ma w nim tego pliku dlaczego ? Udostępnij ten post Link to postu Udostępnij na innych stronach
Rbit 15 Zgłoś post Napisano Kwiecień 27, 2014 Tworzy folder lecz nie ma w nim tego pliku dlaczego ? Napewno masz ten pliczek w ścieżce "/root/serwer/ts3server.sqlitedb"? Oraz czy masz zainstalowanego rsynca? Udostępnij ten post Link to postu Udostępnij na innych stronach
Mati120 0 Zgłoś post Napisano Kwiecień 27, 2014 (edytowany) Skrypt działa, okazało się że nie z niewiadomych przyczyn plik mi się usunął. Czyli będzie skrypt, będzie tworzyć 5 folderów i gdy będzie już 5 to usunie ostatni i zrobi nowy ? Edytowano Kwiecień 27, 2014 przez Mati120 (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Rbit 15 Zgłoś post Napisano Kwiecień 27, 2014 (edytowany) Dokładnie tak jak piszesz. Zawsze w folderze będzies miał 5 plików. Edytowano Kwiecień 27, 2014 przez Rbit (zobacz historię edycji) Udostępnij ten post Link to postu Udostępnij na innych stronach
Mati120 0 Zgłoś post Napisano Kwiecień 28, 2014 Sprawdzałem właśnie logi i jest coś takiego : -- MARK -- /USR/SBIN/CRON[7502]: (smmsp) CMD (test -x /etc/init.d/sendmail && /usr/share/sendmail/sendmail cron-msp) /USR/SBIN/CRON[7526]: (root) CMD (cd / && run-parts --report /etc/cron.hourly) -- MARK -- O co w tym chodzi ? Udostępnij ten post Link to postu Udostępnij na innych stronach
Rbit 15 Zgłoś post Napisano Kwiecień 28, 2014 Nie jest to związane ze skryptem. Każda linia w syslogu związana z backupem zaczyna się od "TS-Backup" Udostępnij ten post Link to postu Udostępnij na innych stronach
Mati120 0 Zgłoś post Napisano Kwiecień 28, 2014 Ok dziękuję, temat można zamknąć. Udostępnij ten post Link to postu Udostępnij na innych stronach