Utracony plik na moim Linuksie nie może go zlokalizować

1

Próbuję utworzyć skrypt bash, aby wykonać kopię zapasową całego systemu. To jest moja próba bashu, więc oczywiście coś pomieszałem!

#!/bin/bash

mybackupname="backup-fullsys-$(date +%Y-%m-%d).tar.gz"
logfile="backup-system.log"

echo Backup Started `date` >> ${logfile}

tar -cpzvf ${mybackupname} --exclude=/${mybackupname} --exclude=/proc --exclude=/lost+found --exclude=/sys --exclude=/mnt --exclude=/media --exclude=/dev / >> ${logfile}

ls -gh ${mybackupname} >> ${logfile}

mv -v ${mybackupname} backups/filesystem/ >> ${logfile}

echo Backup Completed `date` >> ${logfile}

sendEmail -v -f @gmail.com -s smtp.gmail.com:587 -xu user -xp pass -t mail@mail.ge -o tls=yes -u Tittle Full Backup -m Server Reports -a ${logfile}

exit

Uruchomiono go za pomocą crona.

I na mój e-mail otrzymałem to:

-rw-r--r-- 1 root 965M Jul 13 16:11 backup-fullsys-2012-07-13.tar.gz
`backup-fullsys-2012-07-13.tar.gz' -> `backups/filesystem/'
Backup Completed Fri Jul 13 16:11:14 GET 2012

Teraz zabawne jest to, że myślałem, że skrypt bash będzie działał z mojego katalogu domowego. Tak więc ścieżka, którą zawarłem w skrypcie, to kopie zapasowe / system plików /. Ten folder istnieje w katalogu / home / me / backups / filesystem /, a skrypt bash znajduje się w /home/me/bash.bash

Nie mogę znaleźć pliku tar ani dziennika! Próbowałem cd do folderu, nic.

Próbowałem zlokalizować / znaleźć.

Kiedy robię df-h, chociaż widzę, że coś zajmuje miejsce. Moja oryginalna partycja miała 2 GB, teraz jest 4 GB, więc plik gdzieś tam jest.


źródło

Odpowiedzi:

1

W wiadomości e-mail właścicielem pliku wydaje się być „root”, więc sprawdź folder „/ root” zamiast folderu domowego, aby sprawdzić, czy coś tam jest.

Flinth
źródło
1 pytanie, dlaczego nie dostałem informacji o niepowodzeniu komendy mv? ponieważ oczywiście katalog kopii zapasowej folderu głównego nie istnieje.
Przekierowujesz standardowe wyjście do pliku dziennika, aby przekierować wyjście błędu, którego użyłeśmv -v ${mybackupname} backups/filesystem/ 2>>${logfile}
Flinth
1
... i do przekierowania zarówno do pliku dziennika mv -v ${mybackupname} backups/filesystem/ 2>&1 >>${logfile}( 2>&1środki: przekierować stderr do stdout, a następnie >>${logfile}przekierować zarówno razem mają być dołączone do pliku dziennika)
Izzy
@Izyzy: Kolejność powinna być odwrotna:mv ... >> $logfile 2>&1
Dennis Williamson
1

Czy jest jakiś powód, dla którego decydujesz się na wdrożenie własnego mechanizmu tworzenia kopii zapasowych zamiast korzystania z czegoś takiego? Istnieje kilka ładnych narzędzi do tworzenia kopii zapasowych, które kompresują, przechowują w różnych miejscach, obsługują pełne / przyrostowe, obsługują czyszczenie starych kopii zapasowych itp.

Na przykład Duplicity ... http://duplicity.nongnu.org/

Tylko myśl ... Nigdy nie lubię wymyślać koła, chyba że jest to do celów edukacyjnych: ^)

pcm
źródło
tak, cele edukacyjne. Nie pisałbym serwera WWW, ale dla prostych aplikacji lubię je robić samemu, aby móc się czegoś nauczyć.