skrypt do backupu dodany do crona nie dzia

Potrzebujesz pomocy z C, C++, perl, python, itp.
maxblink
Posty: 25
Rejestracja: 23 października 2008, 20:15

skrypt do backupu dodany do crona nie działa

Post autor: maxblink »

Kod: Zaznacz cały

#!/bin/bash
name="backup.`date +%s`"
tar -czvf /home/xxx/backupy/${name}.tgz /home/xxx/pvpgn/var
Witam, mam taki problem, a mianowicie mój skrypt wygląda tak, i jak daje go do crona to niby coś pakuje ale nie tak jak trzeba. Zaś jak go ręcznie uruchomię przez SH to elegancko pakuje, ma ktoś jakiś pomysł?
Awatar użytkownika
lis6502
Member
Posty: 1798
Rejestracja: 05 listopada 2008, 20:14
Lokalizacja: Miasto Szybowców

Post autor: lis6502 »

Ja też mam program dodany do crontaba by odpalał się co pół godziny, ale nie chodzi. Sprawdź czy w defaultowym runlevelu masz odpalanego crona.
gindek
Posty: 41
Rejestracja: 28 października 2008, 22:27
Lokalizacja: st±d

Post autor: gindek »

A jak wygląda twój wpis w crontab?
maxblink
Posty: 25
Rejestracja: 23 października 2008, 20:15

Post autor: maxblink »

Kod: Zaznacz cały

59 3 * * * /home/xxx/skrypty/robut.sh
tak to wyglada ale nie trybi, recznie owszem dziala ale jak przez crona pakuje to niestety...
gindek
Posty: 41
Rejestracja: 28 października 2008, 22:27
Lokalizacja: st±d

Post autor: gindek »

A tam nie trzeba podawać użytkownika oraz programu jaki będzie wykonywał skrypt (po parametrach)?
Czyli:

Kod: Zaznacz cały

59 3 * * * user  sh /home/xxx/skrypty/robut.sh 
maxblink
Posty: 25
Rejestracja: 23 października 2008, 20:15

Post autor: maxblink »

Chyba nie, na starym dedyku miałem właśnie tak i działało. Teraz jak mówię, coś niby robi ale nie da się tego rozpakować bo jest prawie pusty.
Utumno
Beginner
Posty: 432
Rejestracja: 09 listopada 2008, 13:04
Lokalizacja: Gdansk

Post autor: Utumno »

Bash potrafi byc bardzo tajemniczy 8-) Nie wiem co to moze byc, ale sam zdebugowalbym to tak:

sprobuj uproscic sytuacje, i np. stworz sobie maly plik tekstowy /home/xxx/test, scrypt

Kod: Zaznacz cały

#!/bin/sh
tar czf /home/xxx/test.tar.gz /home/xxx/test
I dodaj to do crona (uzytkownika nie trzeba, twoj crontab wg mnie jest dobrze) co minute. Zobacz czy to dziala czy nie...

Jak nie bedzie dzialalo, to bedziemy przynajmniej sie drapac w beret nad prostszym przypadkiem, a jak zadziala - badziesz mial dwa skrypty w cronie, z ktorego jeden dziala, a drugi nie i stopniowo zmniejszajac roznice pomiedzy nimi doznasz w koncu oswiecenia :mrgreen:

[Dodano: 2008-11-19, 01:01]
Aha, sprobuj jeszcze dopisac w tym skrypcie:

Kod: Zaznacz cały

 tar (...) > /home/xxx/stdout  2> /home/xxx/stderr
i zobaczysz wyjście tara - moze wyswietla jakies bledy.
maxblink
Posty: 25
Rejestracja: 23 października 2008, 20:15

Post autor: maxblink »

Próbowałem i błędów nie ma. Zadziwiające jest to, że jednego katalogu albo nie chce mi w ogóle pakować (wcześniej przed tym, tj. jak jeszcze działało, dałem wejście kumplowi na serwer dedykowany bo miał coś tam dograć).
Pytanie mam teraz takie, czy jest to możliwe, że jakoś w systemie mnie zablokował możliwość robienia kopii jednego konkretnego katalogu? Bo jak w katalogu poprzedzającym ten katalog znajdują się jeszcze 3 poza tym co mi potrzebne to tamte się pakują, a ten jeden nie jest ruszany. Co innego jak ręcznie odpalam skrypt.
brograf
Posty: 8
Rejestracja: 02 stycznia 2009, 15:16

Post autor: brograf »

W cronie zmienna PATH nie jest ustawiona, musisz podać całą ścieżkę do uruchamianego pliku.
W Twoim przypadku to /bin/tar
maxblink
Posty: 25
Rejestracja: 23 października 2008, 20:15

Post autor: maxblink »

Możesz mi opisać jak to zrobić?

Ps. A może problemem być to, że wcześniej odpalałem program z poziomu użytkownika xxx, który tworzy te pliki, a później odpaliłem przez konto roota (teraz odpalając przez XXX nie mam uprawnień to odpalam ciągle jako root), no i cron ,,ciśnie'' z roota. Może to być tego przyczyna?
ODPOWIEDZ