Skip to content

Restic - riscv64

Restic
  • Beim Rumspielen mit dem RISC-V Board VisionFive2 ist mir aufgefallen, das mein Lieblingstool nicht einwandfrei funktioniert. Installieren konnte ich das auf dem Debian Image, aber die Update Funktion war fehlerhaft.

    root@starfive:~# restic self-update
    writing restic to /usr/bin/restic
    find latest release of restic at GitHub
    

    Ok, mal nachgefragt

    Somit besteht die Möglichkeit, das es in einem der nächsten Updates funktioniert 🙂

  • Mittlerweile ist das gemerged. Sollte also im nächsten Release enthalten sein. Das Spielkind hat sich dann mal die aktuelle Version, so zum Testen, auf dem RISC-V mal mit go gebaut.

    apt install golang-go
    

    Version?

    root@starfive:~# go version
    go version go1.18.3 linux/riscv64
    

    Restic clonen

    root@starfive:~# git clone https://github.com/restic/restic
    Cloning into 'restic'...
    

    Restic bauen

    root@starfive:~# cd restic/
    root@starfive:~/restic# go run build.go
    go: downloading github.com/anacrolix/fuse v0.2.0
    go: downloading github.com/minio/sha256-simd v1.0.0
    go: downloading github.com/restic/chunker v0.4.0
    go: downloading github.com/spf13/cobra v1.6.1
    go: downloading github.com/spf13/pflag v1.0.5
    go: downloading golang.org/x/sync v0.1.0
    ....
    

    Restic Version?

    root@starfive:~/restic# ./restic version
    restic 0.15.1 (v0.15.1-5-g590eb9efd) compiled with go1.18.3 on linux/riscv64
    

    Restic Help

    root@starfive:~/restic# ./restic -h     
     
     restic is a backup program which allows saving multiple revisions of files and
     directories in an encrypted repository stored on different backends.
     
     Usage:
       restic [command]
     
     Available Commands:
       backup        Create a new backup of files and/or directories
       cache         Operate on local cache directories
       cat           Print internal objects to stdout
       check         Check the repository for errors
       copy          Copy snapshots from one repository to another
       diff          Show differences between two snapshots
       dump          Print a backed-up file to stdout
       find          Find a file, a directory or restic IDs
       forget        Remove snapshots from the repository
       generate      Generate manual pages and auto-completion files (bash, fish, zsh, powershell)
       help          Help about any command
       init          Initialize a new repository
       key           Manage keys (passwords)
       list          List objects in the repository
       ls            List files in a snapshot
       migrate       Apply migrations
       mount         Mount the repository
       prune         Remove unneeded data from the repository
       rebuild-index Build a new index
       recover       Recover data from the repository not referenced by snapshots
       restore       Extract the data from a snapshot
       rewrite       Rewrite snapshots to exclude unwanted files
       self-update   Update the restic binary
       snapshots     List all snapshots
       stats         Scan the repository and show basic statistics
       tag           Modify tags on snapshots
       unlock        Remove locks other processes created
       version       Print version information
     
     Flags:
           --cacert file                file to load root certificates from (default: use system certificates)
           --cache-dir directory        set the cache directory. (default: use system default cache directory)
           --cleanup-cache              auto remove old cache directories
           --compression mode           compression mode (only available for repository format version 2), one of (auto|off|max) (default auto)
       -h, --help                       help for restic
           --insecure-tls               skip TLS certificate verification when connecting to the repository (insecure)
           --json                       set output mode to JSON for commands that support it
           --key-hint key               key ID of key to try decrypting first (default: $RESTIC_KEY_HINT)
           --limit-download rate        limits downloads to a maximum rate in KiB/s. (default: unlimited)
           --limit-upload rate          limits uploads to a maximum rate in KiB/s. (default: unlimited)
           --no-cache                   do not use a local cache
           --no-lock                    do not lock the repository, this allows some operations on read-only repositories
       -o, --option key=value           set extended option (key=value, can be specified multiple times)
           --pack-size size             set target pack size in MiB, created pack files may be larger (default: $RESTIC_PACK_SIZE)
           --password-command command   shell command to obtain the repository password from (default: $RESTIC_PASSWORD_COMMAND)
       -p, --password-file file         file to read the repository password from (default: $RESTIC_PASSWORD_FILE)
       -q, --quiet                      do not output comprehensive progress report
       -r, --repo repository            repository to backup to or restore from (default: $RESTIC_REPOSITORY)
           --repository-file file       file to read the repository location from (default: $RESTIC_REPOSITORY_FILE)
           --tls-client-cert file       path to a file containing PEM encoded TLS client certificate and private key
       -v, --verbose n                  be verbose (specify multiple times or a level using --verbose=n, max level/times is 2)
     
     Use "restic [command] --help" for more information about a command.
    

    Das restic self-update ist immer noch kaputt, das sollte dann mit dem nächsten Release gefixt sein.

    root@starfive:~/restic# ./restic self-update
    writing restic to /root/restic/restic
    find latest release of restic at GitHub
    latest version is 0.15.1
    download SHA256SUMS
    download SHA256SUMS.asc
    GPG signature verification succeeded
    Fatal: unable to update restic: unable to find file with suffix linux_riscv64.bz2
    
  • Release ist draußen, jetzt mit riscv64

    Enh #4180: Add release binaries for riscv64 architecture on Linux

  • 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 v0.17.3 released

    Linux
    1
    0 Stimmen
    1 Beiträge
    92 Aufrufe
    Niemand hat geantwortet
  • Restic v0.17.2 released

    Restic
    1
    0 Stimmen
    1 Beiträge
    107 Aufrufe
    Niemand hat geantwortet
  • Restic v0.16.1 released

    Restic
    1
    0 Stimmen
    1 Beiträge
    127 Aufrufe
    Niemand hat geantwortet
  • Restic - Migrate

    Restic
    1
    0 Stimmen
    1 Beiträge
    212 Aufrufe
    Niemand hat geantwortet
  • Restic - Passwortübergabe

    Restic
    1
    0 Stimmen
    1 Beiträge
    174 Aufrufe
    Niemand hat geantwortet
  • Rest-Server aufsetzen

    Angeheftet Restic
    9
    0 Stimmen
    9 Beiträge
    2k Aufrufe
    M

    @FrankM

    Hallo Frank,

    vielen Dank für deine Antwort. Die Clients greifen alle via REST-Schnittstelle auf den restic-Server zu. Da der restic-Server im append-only Modus läuft, können die Clients prinzipiell keine Snapshots entfernen, ihnen fehlt das Recht.

    Derzeit teste ich ein lokales, auf dem REST-Server liegendes Skript, welches per cron ausgeführt wird. Dieses Skript stellt eine lokale Verbindung zum REPO her, also nicht über die REST-Schnittstelle. Damit würde erstmal das Löschen älterer Snapshots funktionieren. Vielleicht hat ja noch jemand eine andere Idee??

  • Restic - Mounten der Sicherung

    Restic
    2
    0 Stimmen
    2 Beiträge
    316 Aufrufe
    FrankMF

    Bedingt durch einen Hardwareumbau und einer folgenden Neuinstallation, musste ich das Gestern mal live testen. Das klappt hervorragend 🙂 Die Sicherung einbinden und dann gemütlich alles wieder zurück kopieren, was man braucht. Perfekt!

  • Restic - Backblaze B2 Cloud Storage

    Restic
    1
    0 Stimmen
    1 Beiträge
    386 Aufrufe
    Niemand hat geantwortet