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!

Ogłoszenie

Prosimy o pomoc dla małej Julki — przekaż 1% podatku na Fundacji Dzieciom zdazyć z Pomocą.
Więcej informacji na dug.net.pl/pomagamy/.

#26  2020-12-11 18:03:50

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

morfik napisał(-a):

Poza tym, daj status usługi i timer'a. Bo tam pisze czemu nie został uruchomiony.

Proszę

Kod:

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!

Kod:

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ł.

Kod:

$ 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

 

#27  2020-12-11 18:21:25

  samu - Stały bywalec

samu
Stały bywalec
Skąd: ~/.linux/dug
Zarejestrowany: 2011-06-15

Re: Pomoc przy budowie skryptu {SOLVED]

invalid or excess argument(s)

Pokaż skrypt

borgback.sh


https://www.debian.org/logos/button-mini.png

Offline

 

#28  2020-12-11 19:08:35

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

samu napisał(-a):

invalid or excess argument(s)

Pokaż skrypt

borgback.sh

Proszę

Kod:

#!/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

 

#29  2020-12-11 21:00:52

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: Pomoc przy budowie skryptu {SOLVED]

A jak zamiast ~/.borg_log/karta/ dasz /home/marek/.borg_log/karta/ to też nie trybi?

Offline

 

#30  2020-12-11 21:48:38

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

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:

Kod:

[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:

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.
[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?

Kod:

$ 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

 

#31  2020-12-12 00:04:07

  samu - Stały bywalec

samu
Stały bywalec
Skąd: ~/.linux/dug
Zarejestrowany: 2011-06-15

Re: Pomoc przy budowie skryptu {SOLVED]

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


https://www.debian.org/logos/button-mini.png

Offline

 

#32  2020-12-12 12:19:24

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

#33  2020-12-12 12:20:02

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

#34  2020-12-12 12:40:11

  jawojx - Użytkownik

jawojx
Użytkownik
Zarejestrowany: 2012-10-11

Re: Pomoc przy budowie skryptu {SOLVED]

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.

Kod:

systemctl edit nazwa_usługi.service

i wkleić dla przykładu takie coś.

Kod:

[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

 

#35  2020-12-12 13:53:37

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

#36  2020-12-13 11:31:11

  jawojx - Użytkownik

jawojx
Użytkownik
Zarejestrowany: 2012-10-11

Re: Pomoc przy budowie skryptu {SOLVED]

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]

Kod:

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

 

#37  2020-12-13 12:14:36

  morfik - Cenzor wirtualnego świata

morfik
Cenzor wirtualnego świata
Skąd: ze WSI
Zarejestrowany: 2011-09-15
Serwis

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

#38  2020-12-13 14:01:59

  jawojx - Użytkownik

jawojx
Użytkownik
Zarejestrowany: 2012-10-11

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

#39  2020-12-14 17:07:50

  mark - Użytkownik

mark
Użytkownik
Zarejestrowany: 2020-09-09

Re: Pomoc przy budowie skryptu {SOLVED]

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

 

Stopka forum

Powered by PunBB
© Copyright 2002–2005 Rickard Andersson
Nas ludzie lubią po prostu, a nie klikając w przyciski ;-)