Hier der kurze Praxistest 🙂
root@visionfive2:/etc# apt install restic Reading package lists... Done Building dependency tree... Done Reading state information... Done Suggested packages: libjs-sphinxdoc sphinx-rtd-theme-common The following NEW packages will be installed: restic 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 6,899 kB of archives. After this operation, 20.8 MB of additional disk space will be used. Get:1 http://ports.ubuntu.com lunar/universe riscv64 restic riscv64 0.14.0-1 [6,899 kB] Fetched 6,899 kB in 1s (5,589 kB/s) Selecting previously unselected package restic. (Reading database ... 34675 files and directories currently installed.) Preparing to unpack .../restic_0.14.0-1_riscv64.deb ... Unpacking restic (0.14.0-1) ... Setting up restic (0.14.0-1) ... Processing triggers for man-db (2.11.2-1) ... root@visionfive2:/etc# restic version restic 0.14.0 compiled with go1.19.2 on linux/riscv64 root@visionfive2:/etc# restic self-update writing restic to /usr/bin/restic find latest release of restic at GitHub latest version is 0.15.2 download SHA256SUMS download SHA256SUMS.asc GPG signature verification succeeded download restic_0.15.2_linux_riscv64.bz2 downloaded restic_0.15.2_linux_riscv64.bz2 saved 21954560 bytes in /usr/bin/restic successfully updated restic to version 0.15.2 root@visionfive2:/etc# restic version restic 0.15.2 compiled with go1.20.3 on linux/riscv64 root@visionfive2:/etc#Restic - forget --keep-last 3 --prune
-
Die Restic Parameter
- -l, --keep-last n keep the last n snapshots
- --prune automatically run the 'prune' command if snapshots have been removed
The "prune" command checks the repository and removes data that is not
referenced and therefore not needed any more.Ordner Größe vorher
root@debian:~# du -hs /media/1TB/Restic/Home_Debian/ 43G /media/1TB/Restic/Home_Debian/
Script
restic --password-file /root/passwd -r /media/1TB/Restic/Home_Debian forget --keep-last 3 --prune
Ausgabe
root@debian:~# ./backup.sh open repository repository 8b5bd7f8 opened successfully, password is correct found 2 old cache directories in /root/.cache/restic, pass --cleanup-cache to remove them lock repository load index files using parent snapshot 61d72a7d start scan on [/home/frank] start backup on [/home/frank] scan finished in 0.800s: 13395 files, 40.221 GiB Files: 0 new, 6 changed, 13389 unmodified Dirs: 0 new, 1 changed, 0 unmodified Data Blobs: 9 new Tree Blobs: 2 new Added to the repo: 6.570 MiB processed 13395 files, 40.221 GiB in 0:01 snapshot 890c2add saved repository 8b5bd7f8 opened successfully, password is correct found 2 old cache directories in /root/.cache/restic, pass --cleanup-cache to remove them Applying Policy: keep the last 3 snapshots snapshots snapshots for (host [debian], paths [/home/frank]): keep 3 snapshots: ID Time Host Tags Reasons Paths --------------------------------------------------------------------------------- 80aa40ab 2020-01-01 21:47:29 debian last snapshot /home/frank 61d72a7d 2020-01-01 22:24:12 debian last snapshot /home/frank 890c2add 2020-01-01 22:24:45 debian last snapshot /home/frank --------------------------------------------------------------------------------- 3 snapshots remove 82 snapshots: ID Time Host Tags Paths ------------------------------------------------------------------ 547bbf63 2019-07-13 13:52:41 debian /home/frank 8c54e557 2019-07-14 21:00:04 debian /home/frank 59f2e7cd 2019-07-14 21:17:16 debian /home/frank 152b78dc 2019-07-15 16:30:01 debian /home/frank 30423779 2019-07-17 16:30:01 debian /home/frank 3c1dd11e 2019-07-18 16:30:01 debian /home/frank 3c0b0b9f 2019-07-23 16:30:01 debian /home/frank 78c9babb 2019-07-24 16:30:01 debian /home/frank 214fce77 2019-07-25 16:30:01 debian /home/frank f0413c59 2019-07-29 16:30:01 debian /home/frank 05d005ba 2019-08-01 16:30:01 debian /home/frank fdda7d9a 2019-08-05 16:30:01 debian /home/frank d19ab972 2019-08-06 16:30:01 debian /home/frank ea0070d1 2019-08-07 16:30:01 debian /home/frank bc4e7164 2019-08-08 16:30:01 debian /home/frank 55257134 2019-08-12 16:30:01 debian /home/frank 6fad57b4 2019-08-13 16:30:01 debian /home/frank 4e7d91c2 2019-08-14 16:30:01 debian /home/frank 383eb63c 2019-08-20 16:30:01 debian /home/frank 7bed05ed 2019-08-21 16:30:01 debian /home/frank d7d62461 2019-08-22 16:30:01 debian /home/frank 341729ae 2019-08-26 16:30:01 debian /home/frank 10a17d9e 2019-08-27 16:30:01 debian /home/frank 08d0c934 2019-08-28 16:30:01 debian /home/frank 39fef49d 2019-08-29 16:30:02 debian /home/frank 6a5a6c6a 2019-09-02 16:30:02 debian /home/frank 892a73e9 2019-09-03 16:30:01 debian /home/frank 1621d218 2019-09-04 16:30:01 debian /home/frank 0f13ec94 2019-09-05 16:30:01 debian /home/frank 2ab03ea2 2019-09-09 16:30:02 debian /home/frank 6e6bb1d2 2019-09-10 16:30:01 debian /home/frank d0df744f 2019-09-12 16:30:01 debian /home/frank 66d34a4c 2019-09-16 16:30:01 debian /home/frank 513e4090 2019-09-17 16:30:01 debian /home/frank 4675ef07 2019-09-18 16:30:01 debian /home/frank 75e5290e 2019-09-19 16:30:01 debian /home/frank 0a619aca 2019-09-23 16:30:01 debian /home/frank 834e50ad 2019-09-24 16:30:01 debian /home/frank 5899f401 2019-09-25 16:30:01 debian /home/frank 5ed350cf 2019-09-26 16:30:01 debian /home/frank e0848166 2019-09-30 16:30:01 debian /home/frank 148a19f8 2019-10-01 16:30:01 debian /home/frank c7aa33cd 2019-10-02 16:30:01 debian /home/frank 557ee95e 2019-10-03 16:30:02 debian /home/frank d1f9ffe3 2019-10-07 16:30:01 debian /home/frank d9464528 2019-10-08 16:30:01 debian /home/frank b7ec22d4 2019-10-14 16:30:01 debian /home/frank 1cebe876 2019-10-15 16:30:01 debian /home/frank 787f6f23 2019-10-16 16:30:01 debian /home/frank 7aeff7b5 2019-10-17 16:30:01 debian /home/frank 8aeff344 2019-10-21 16:30:01 debian /home/frank 01c9695e 2019-10-22 16:30:01 debian /home/frank 1c18211b 2019-10-23 16:30:01 debian /home/frank 5ec81cd1 2019-10-28 16:30:01 debian /home/frank d19355f6 2019-10-29 16:30:01 debian /home/frank 9c53dc9e 2019-10-30 16:30:02 debian /home/frank 9238a4f6 2019-10-31 16:30:01 debian /home/frank 47b567c7 2019-11-07 22:17:23 debian /home/frank a1c5ab4a 2019-11-18 16:30:01 debian /home/frank c566f59e 2019-11-19 16:30:01 debian /home/frank a83b4a1a 2019-11-20 16:30:02 debian /home/frank 84028c08 2019-11-21 16:30:01 debian /home/frank 6c92a4a3 2019-11-25 16:30:01 debian /home/frank 3a1df8ea 2019-11-28 16:30:01 debian /home/frank 168e08d9 2019-12-02 16:30:01 debian /home/frank 502aa14f 2019-12-03 16:30:01 debian /home/frank f2d3bf69 2019-12-04 16:30:01 debian /home/frank c1ef8f2e 2019-12-05 16:30:01 debian /home/frank c4128591 2019-12-09 16:30:01 debian /home/frank 360dbcf2 2019-12-10 16:30:01 debian /home/frank ff0369fa 2019-12-11 16:30:01 debian /home/frank 537df8a1 2019-12-12 16:30:01 debian /home/frank 4886b46e 2019-12-16 16:30:01 debian /home/frank 8f6530b2 2019-12-17 16:30:01 debian /home/frank c45d800b 2019-12-18 16:30:01 debian /home/frank f193bf67 2019-12-19 16:30:01 debian /home/frank e60a0ee7 2019-12-23 16:30:01 debian /home/frank a1a361c5 2019-12-24 16:30:01 debian /home/frank 5b72c58a 2019-12-25 16:30:01 debian /home/frank e009d9e0 2019-12-26 16:30:01 debian /home/frank c2c01520 2019-12-31 16:30:01 debian /home/frank 9c507ee2 2020-01-01 16:30:01 debian /home/frank ------------------------------------------------------------------ 82 snapshots 82 snapshots have been removed, running prune counting files in repo building new index for repo [1:10] 100.00% 9379 / 9379 packs repository contains 9379 packs (77094 blobs) with 42.730 GiB processed 77094 blobs: 0 duplicate blobs, 0 B duplicate load all snapshots find data that is still in use for 3 snapshots [0:00] 100.00% 3 / 3 snapshots found 28102 of 77094 data blobs still in use, removing 48992 blobs will remove 0 invalid files will delete 3080 packs and rewrite 1674 packs, this frees 17.605 GiB [2:16] 100.00% 1674 / 1674 packs rewritten counting files in repo [0:00] 100.00% 5121 / 5121 packs finding old index files saved new indexes as [0b4a656c 3d642b8d] remove 86 old index files [0:01] 100.00% 4754 / 4754 packs deleted done
Ordnergröße danach
root@debian:~# du -hs /media/1TB/Restic/Home_Debian/ 26G /media/1TB/Restic/Home_Debian/
wird noch überarbeitet, nur mal kurz hier reingeschmissen
-
Ich habe mich damit noch ein wenig beschäftigt, die letzten drei zu behalten, ist nicht so optimal. Da es viele Optionen bei dem Befehl gibt, hier ein Ausschnitt
Flags: -l, --keep-last n keep the last n snapshots -H, --keep-hourly n keep the last n hourly snapshots -d, --keep-daily n keep the last n daily snapshots -w, --keep-weekly n keep the last n weekly snapshots -m, --keep-monthly n keep the last n monthly snapshots -y, --keep-yearly n keep the last n yearly snapshots
habe ich das ein wenig so angepasst, das ich denke es passt für mich.
restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune
Damit behalte ich auch die jeweils eines pro Monat. Und die letzten drei. Das sieht dann so aus.
root@debian:~# ./backup2.sh repository 2f3f6147 opened successfully, password is correct Files: 38 new, 100 changed, 13268 unmodified Dirs: 0 new, 1 changed, 0 unmodified Added to the repo: 10.166 GiB processed 13406 files, 50.324 GiB in 3:24 snapshot 849f614c saved repository 2f3f6147 opened successfully, password is correct Applying Policy: keep the last 3 snapshots, 3 monthly snapshots snapshots for (host [debian], paths [/home/frank]): keep 5 snapshots: ID Time Host Tags Reasons Paths ------------------------------------------------------------------------------------ a7251cfd 2019-11-28 17:00:01 debian monthly snapshot /home/frank 283d4027 2019-12-31 17:00:01 debian monthly snapshot /home/frank ae2b96ec 2020-01-01 21:47:46 debian last snapshot /home/frank 079e00a6 2020-01-02 17:00:01 debian last snapshot /home/frank 849f614c 2020-01-03 21:08:45 debian last snapshot /home/frank monthly snapshot ------------------------------------------------------------------------------------ 5 snapshots remove 26 snapshots: ID Time Host Tags Paths ------------------------------------------------------------------ 896f16c2 2019-11-07 22:23:40 debian /home/frank b21bcf6d 2019-11-11 17:00:01 debian /home/frank f89248fb 2019-11-12 17:00:01 debian /home/frank 123ab546 2019-11-13 17:00:01 debian /home/frank b82d87d0 2019-11-18 17:00:01 debian /home/frank 040b0ab7 2019-11-19 17:00:01 debian /home/frank 7221d8ef 2019-11-20 17:00:01 debian /home/frank 84132a25 2019-11-21 17:00:01 debian /home/frank b558a52c 2019-11-25 17:00:01 debian /home/frank e5cc0c3e 2019-12-02 17:00:01 debian /home/frank 22423fa5 2019-12-03 17:00:01 debian /home/frank 39df1ab9 2019-12-04 17:00:01 debian /home/frank 98843457 2019-12-05 17:00:01 debian /home/frank b0cdd4b6 2019-12-09 17:00:01 debian /home/frank 828414f9 2019-12-10 17:00:01 debian /home/frank e34a27c3 2019-12-11 17:00:01 debian /home/frank 6e488c3b 2019-12-12 17:00:01 debian /home/frank 17898403 2019-12-16 17:00:01 debian /home/frank 1973305a 2019-12-17 17:00:01 debian /home/frank 9553bedd 2019-12-18 17:00:01 debian /home/frank fedf749d 2019-12-19 17:00:01 debian /home/frank 8e7cb876 2019-12-23 17:00:01 debian /home/frank 0bd0d102 2019-12-25 17:00:01 debian /home/frank 13d348b0 2019-12-26 17:00:01 debian /home/frank c7d960aa 2019-12-30 17:00:01 debian /home/frank f6ea9118 2020-01-01 17:00:01 debian /home/frank ------------------------------------------------------------------ 26 snapshots 26 snapshots have been removed, running prune counting files in repo building new index for repo [0:35] 100.00% 7806 / 7806 packs repository contains 7806 packs (46537 blobs) with 41.110 GiB processed 46537 blobs: 0 duplicate blobs, 0 B duplicate load all snapshots find data that is still in use for 5 snapshots [0:01] 100.00% 5 / 5 snapshots found 32654 of 46537 data blobs still in use, removing 13883 blobs will remove 0 invalid files will delete 715 packs and rewrite 752 packs, this frees 5.027 GiB [2:28] 100.00% 752 / 752 packs rewritten counting files in repo [0:01] 100.00% 6571 / 6571 packs finding old index files saved new indexes as [d137b425 f7caee99 a6e9711a] remove 35 old index files [1:13] 100.00% 1467 / 1467 packs deleted done using temporary cache in /tmp/restic-check-cache-916655151 repository 2f3f6147 opened successfully, password is correct created new cache in /tmp/restic-check-cache-916655151 create exclusive lock for repository load indexes check all packs check snapshots, trees and blobs read all data [7:47] 100.00% 6571 / 6571 items duration: 7:47 no errors were found root@debian:~#
Am Ende seht ihr noch, wie Restic alle Files testet. Mein Script sieht jetzt so aus.
#!/bin/bash # Script um mit Restic Daten automatisiert zu sichern! # Dient zum Sichern der Homepartition auf dem ROCKPro64 NAS! # Was soll gesichert werden? backup_pfad=/home/frank # Programm Start restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ backup $backup_pfad --exclude-file=excludes.txt restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ forget --keep-last 3 --keep-monthly 3 --prune # Testen restic --password-file /root/passwd -r /media/NAS_neu/Restic/Home/ check --read-data
Das dann schön mit einem Cronjob laufen lassen und die Datensicherung ist erledigt