Nie jesteś zalogowany.
Jeśli nie posiadasz konta, zarejestruj je już teraz! Pozwoli Ci ono w pełni korzystać z naszego serwisu. Spamerom dziękujemy!
Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.
morfik napisał(-a):
Poza tym, daj status usługi i timer'a. Bo tam pisze czemu nie został uruchomiony.
Proszę
sudo journalctl -b -u borgback.service --no-pager -l [sudo] hasło użytkownika marek: -- Logs begin at Fri 2020-12-11 17:35:32 CET, end at Fri 2020-12-11 17:45:26 CET. -- gru 11 17:35:33 marek systemd[1]: Starting backup_borg... gru 11 17:35:33 marek borgback[589]: /home/marek/.skrypty/mmcblk0/borgback.sh: 5: /home/marek/.skrypty/mmcblk0/borgback.sh: cannot create ~/.borg_log/karta/11-12: Directory nonexistent gru 11 17:35:33 marek systemd[1]: borgback.service: Main process exited, code=exited, status=2/INVALIDARGUMENT gru 11 17:35:33 marek systemd[1]: borgback.service: Failed with result 'exit-code'. gru 11 17:35:33 marek systemd[1]: Failed to start backup_borg.
"Directory nonexistent": tego nie rozumiem przecież ścieżka jest prawidłowa bez literówki!
sudo journalctl -b -u borgback.timer --no-pager -l -- Logs begin at Fri 2020-12-11 17:35:32 CET, end at Fri 2020-12-11 17:52:55 CET. -- gru 11 17:35:33 marek systemd[1]: Started Daily_borg_backup.
"Started Daily_borg_backup": owszem wystartował być może lecz niczego nie dokonał.
$ borg list /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg 01-12 Tue, 2020-12-01 18:00:01 [5fe7047869f8ae3511c028d4097823791a4daebd6c5f33209c2a453148ca14f1] 02-12 Wed, 2020-12-02 18:39:02 [cefac327308fb2df0122f5f61a1405ef80774f063a5fa06bd907d866c4d6d5c1] 03-12 Thu, 2020-12-03 18:00:01 [4f9f727d60658376ba8d67c8489c5dee97278c7a131a9fca1d7d533799d9ed56] 04-12 Fri, 2020-12-04 18:00:01 [3608a1d8467ddc62bd5e6359db456c91f1facc4b0a70caa986be086217b78a42] 05-12 Sat, 2020-12-05 17:14:01 [5cc803c60377d081c0e362b1cf82ef41a3f60d77452b39b229b187bed5f47259] 07-12 Mon, 2020-12-07 19:20:34 [cdbdc7ca083cae1351a8b51730cc9e6a22bcf397b8ef87556872452d0e7d7bea] 09-12 Wed, 2020-12-09 17:02:43 [9ddf9f14b04e7dbaf6194738e2152523a6fde6554306540b30393092e13f0457] 10-12 Thu, 2020-12-10 21:04:10 [ef1f5851002e217725fe54859c7cc6f187d4cb01758b2a1a6d46df8a7b1a8d40]
"Thu, 2020-12-10 21:04:10": wczoraj zrobiłem ręcznie wywołując skrypt terminalem.
Offline
invalid or excess argument(s)
Pokaż skrypt
borgback.sh
Offline
samu napisał(-a):
invalid or excess argument(s)
Pokaż skrypt
borgback.sh
Proszę
#!/bin/sh NOW=$(date +"%d-%m") FILE="$NOW" borg create --compression zstd,15 \ --one-file-system \ --stats /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg/::"$NOW" \ --patterns-from /home/marek/.skrypty/mmcblk0/backup-home-file-list 2>> ~/.borg_log/karta/"$NOW" \ && borg prune --list \ --stats \ --keep-last 9 /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg/ \ && find /home/marek/.borg_log/karta/* \ -maxdepth 1 \ -type f \ -ctime +8 \ -exec rm -rfv {} \;
Ten skrypt wywołany terminalem robi kopię backup bez problemu.
Dodatkowo montuję teraz kartę pamięci wraz ze startem systemu, dodałem do fstab, przez co unikam sytuacji w której karta mogłaby być nie zamontowana w pierwszych sekundach od rozruchu co z kolei blokowało skryptowi ścieżkę dostępu.
Ostatnio edytowany przez mark (2020-12-11 19:15:32)
Offline
morfik napisał(-a):
A jak zamiast ~/.borg_log/karta/ dasz /home/marek/.borg_log/karta/ to też nie trybi?
Czyli dla systemd muszą być zawsze ścieżki bezwzględne? Teraz timer niby zatrybił ale to już niczego nie rozumiem, zobacz:
[marek@marek ~]$ systemctl list-timers -l --no-pager --all NEXT LEFT LAST PASSED UNIT ACTIVATES Fri 2020-12-11 21:48:57 CET 14min left n/a n/a systemd-tmpfiles-clean.timer systemd-tmpfiles-clean.service Fri 2020-12-11 22:32:23 CET 57min left Fri 2020-12-11 21:32:30 CET 2min 20s ago anacron.timer anacron.service Sat 2020-12-12 00:00:00 CET 2h 25min left Fri 2020-12-11 17:35:33 CET 3h 59min ago logrotate.timer logrotate.service Sat 2020-12-12 00:00:00 CET 2h 25min left Fri 2020-12-11 17:35:33 CET 3h 59min ago man-db.timer man-db.service Sat 2020-12-12 06:22:36 CET 8h left Fri 2020-12-11 17:35:33 CET 3h 59min ago apt-daily-upgrade.timer apt-daily-upgrade.service Sat 2020-12-12 10:01:44 CET 12h left Fri 2020-12-11 17:35:33 CET 3h 59min ago borgback.timer borgback.service Sat 2020-12-12 10:15:36 CET 12h left Fri 2020-12-11 21:27:35 CET 7min ago apt-daily.timer apt-daily.service 7 timers listed. [marek@marek ~]$ borg list /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg Repository /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg does not exist.
Po zmianie ścieżki borg całkiem zgłupiał. Zobacz mój poprzedni post ten sam wynik był prawidłowy. Teraz nie.
I jeszcze to:
$ journalctl -b -u borgback.service --no-pager -l Hint: You are currently not seeing messages from other users and the system. Users in the 'systemd-journal' group can see all messages. Pass -q to turn off this notice. No journal files were opened due to insufficient permissions. [marek@marek ~]$ journalctl -b -u borgback.timer --no-pager -l Hint: You are currently not seeing messages from other users and the system. Users in the 'systemd-journal' group can see all messages. Pass -q to turn off this notice. No journal files were opened due to insufficient permissions.
Po zmianie sposobu montowania karty pamięci (wrzuciłem do fstab), zmieniła się również ścieżka dostępu - już bez UUID. Nie wiem czy zmieniły się także uprawnienia do katalogu? To chyba o to chodzi?
$ ls -l /media/marek/ drwxr-xr-x 3 marek 1001 4096 lis 15 13:43 backup drwx------ 2 marek 1001 16384 paź 6 17:19 lost+found $ ls -l /media/marek/backup/ drwxrwx--- 3 marek marek 4096 gru 11 17:53 borg
Ostatnio edytowany przez mark (2020-12-11 22:06:10)
Offline
Nie znam dobrze systemd, więc gdybym miał skorzystać z borga do tworzeniu kopii zapasowej, skorzystałbym z poniższego skryptu :p
https://gitlab.mpcdf.mpg.de/szucs/borg-backup-scripts
Offline
samu napisał(-a):
Nie znam dobrze systemd, więc gdybym miał skorzystać z borga do tworzeniu kopii zapasowej, skorzystałbym z poniższego skryptu :p
https://gitlab.mpcdf.mpg.de/szucs/borg-backup-scripts
Może tak ale ja wolę mieć pełną kontrolę nad opcjami backup`u. Taki gotowiec skrypt jest na pewno bardzo zaawansowany w swojej kreatywności i dopasowując "pod siebie" znowu wisiałbym na Forum jak co zrobić.
Taka forma skryptu z borgiem, którą mam jest OK i do tej pory sprawdzała się. Schody zaczęły się gdy podpiąłem skrypt pod systemd. Z początku zdawało się zatrybić ale tylko zdawało. morfik uświadomił mi, że ścieżki dostępu MUSZĄ być bezwzględne jesli backup działa za pośrednictwem systemd. Później jeszcze wystąpił konflikt uprawnień po podpięciu karty pamięci, docelowego miejsca zrzutu backupu, oraz zmodyfikowała się ścieżka dostępu. Nie od razu zajarzyłem w czym rzecz stąd moje dopytywanie w kolejnych postach.
Aby wyeliminować niespodzianki usunąłem wszystko z karty pamięci i od nowa zainicjowałem nowy folder zrzutu borga z pierwszą kopią.
Offline
mark napisał(-a):
Czyli dla systemd muszą być zawsze ścieżki bezwzględne?
Jeśli chodzi o ścieżki do binarek to tak. W przypadku pozostałych ścieżek to niekoniecznie ale znaczek ~ rozwiązywany jest na katalog domowy użytkownika, z którego prawami jest uruchamiana usługa. Jeśli teraz uruchamiasz usługę jako root, a nie swój zwykły user, to być może dlatego nie znajduje tej ścieżki.
mark napisał(-a):
I jeszcze to:
Kod:
$ journalctl -b -u borgback.service --no-pager -l Hint: You are currently not seeing messages from other users and the system. Users in the 'systemd-journal' group can see all messages. Pass -q to turn off this notice. No journal files were opened due to insufficient permissions.
No bo twój zwykły user nie jest w grupie systemd-journal i nie możesz w pełni nim podglądać logów. Jeśli chcesz w pełni podglądać logi, to albo dodaj swojego user'a do tej grupy albo loguj się na root'a.
mark napisał(-a):
Po zmianie ścieżki borg całkiem zgłupiał. Zobacz mój poprzedni post ten sam wynik był prawidłowy. Teraz nie.
...
Po zmianie sposobu montowania karty pamięci (wrzuciłem do fstab), zmieniła się również ścieżka dostępu - już bez UUID.
No jak zmieniłeś ścieżkę montowania, to borg nie znajdzie repozytorium w tym starym katalogu. Musisz zmienić ścieżkę w poleceniu, bo borg czyta ustawienia repo z konkretnego katalogu. Więc zamiast /media/marek/684b9242-9105-4eaa-b33b-b491549b2420/backup/borg daj /media/marek/backup/borg .
Ostatnio edytowany przez morfik (2020-12-12 12:22:14)
Offline
mark napisał(-a):
...
gru 11 17:35:33 marek borgback[589]: /home/marek/.skrypty/mmcblk0/borgback.sh: 5: /home/marek/.skrypty/mmcblk0/borgback.sh: cannot create ~/.borg_log/karta/11-12: Directory nonexistent
Dalej nie zrobiłeś zależności, że usługa uruchamia się gdy jest zamontowana pamięć.
Żeby usługa czekała, w tym przypadku na zamontowaną pamięć, trzeba zrobić dodatkowy wpis, dla przykładu w pliku zależnym, dla danej usługi. I zmienić cykl timera, by uruchamiał usługę ponownie do momentu wykonania, kiedy to pamięć będzie zamontowana. Dostałeś przecież stronę z manuałem od morfika, może być z takim parametrem. Z root-a, lub z użyciem sudo.
systemctl edit nazwa_usługi.service
i wkleić dla przykładu takie coś.
[Unit] ConditionPathIsMountPoint=/punkt/montowania/nazwa_pamięci_lub_UUID(jak nie ma nazwy)
To zrobi katalog od nazwy usługi nazwa.service.d i w nim plik override.conf
Teraz restart
systemctl daemon-reload
I usługa nie ruszy bez punktu montowania, ustaw timer na powtórzenie, albo całkiem zmień koncepcje i z czasu uruchamiania lokalnego, na po uruchamianiu komputera.
Ostatnio edytowany przez jawojx (2020-12-12 12:45:17)
Offline
jawojx napisał(-a):
Dalej nie zrobiłeś zależności, że usługa uruchamia się gdy jest zamontowana pamięć.
Nie zrobiłem tego lecz zamiast podmontowałem kartę w fstab. Myślałem, że wystarczy. xD
Offline
mark napisał(-a):
Nie zrobiłem tego lecz zamiast podmontowałem kartę w fstab. Myślałem, że wystarczy. xD
Wystarczyłoby, ale ty masz ciągle ten sam problem, usługa uruchamia się za wcześnie. Dodaj do timer-a w sekcji [Unit]
After=graphical.target
Jak masz tam środowisko graficzne to będzie wystarczająco późno, a jak nie to uzależnij od czegoś innego po zamontowaniu pamięci.
Offline
Ale ta usługa nie uruchamia się przy starcie systemu, więc żadne "after" nie są potrzebne. Ona jest wywoływana przez timer. Jak komp zostanie uruchomiony to najpierw montuje wszystkie potrzebne rzeczy, a dopiero potem weryfikuje i odpala timer'y. Jak nośnik ma być dokładany w trakcie to warunek powinien zostać dodany.
Offline
morfik napisał(-a):
Ale ta usługa nie uruchamia się przy starcie systemu, więc żadne "after" nie są potrzebne. Ona jest wywoływana przez timer.
A ja nie pisałem by dodawać to do usługi, tylko do timer-a.
morfik napisał(-a):
Jak komp zostanie uruchomiony to najpierw montuje wszystkie potrzebne rzeczy, a dopiero potem weryfikuje i odpala timer'y. Jak nośnik ma być dokładany w trakcie to warunek powinien zostać dodany.
Powinien, ale timer nie czeka na wszystko, a jak się doda to poczeka. Co to przeszkadza dodać.
Offline
Z zadowoleniem mogę powiedzieć, że wykorzystanie funkcji timer`a sprawdza się dobrze. Trzecia zrzutka backup borg pod rząd i zdaje się śmigać bez zarzutu.
Myślę, że mogę zakończyć temat chyba, że ktoś ma potrzebę kontynuacji.
Offline