Skip to content

Restic UI - Migrate

Restic UI
  • Da man ja seit Restic Version v0.14.0 nun Kompression hat gibt es dafür eine neues Repo Format mit Namen V2. Es gibt dazu auch Migrations Tools, die müssen dann jetzt auch ins Restic UI.

    Das Menü

    cb86e016-a023-4c7a-8bdc-97524ec3b968-image.png

    Teil 1 Migrate check

    Als erstes, wenn der Test erfolgreich war.

    9165e95e-6845-4eac-816d-7f8a9f4521d6-image.png

    Test nicht erfolgreich

    f33d2b78-7895-458f-a310-adad4213fe6a-image.png

    Teil 2 Migrate Update

    Ok, es wird komplizierter, da wird zweimal eine Passwortabfrage erwartet.... Hirn einschalten und grübeln....

    [frank-ms7c92 ~]# restic migrate upgrade_repo_v2 -r /mnt/Backup/Datensicherung_Home_Restic_UI/
    enter password for repository: 
    repository 50a2a753 opened (repository version 1) successfully, password is correct
    checking repository integrity...
    using temporary cache in /tmp/restic-check-cache-3584864968
    enter password for repository: 
    repository 50a2a753 opened (repository version 1) successfully, password is correct
    created new cache in /tmp/restic-check-cache-3584864968
    load indexes
    check all packs
    check snapshots, trees and blobs
    [0:05] 100.00%  13 / 13 snapshots
    no errors were found
    applying migration upgrade_repo_v2...
    migration upgrade_repo_v2: success
    
  • Yeah 🙂

    545cb6ac-d241-453b-8a08-00f6dd81fe1b-image.png

  • Hier die Lösung für das Problem.

    So sieht mein normaler Aufruf aus

    args = [restic,
            'migrate',
            '-r',
            'rest:https://%s:%s@%s:%s/%s' % (backup_data[row].rest_user,
                                             backup_data[row].rest_password,
                                             backup_data[row].rest_domain,
                                             backup_data[row].rest_port,
                                             backup_data[row].rest_folder)]
    
    result = subprocess.run(args,
                            input=pass_word.pw[0],
                            check=True,
                            capture_output=True,
                            text=True)
    

    Dabei wird halt einmal das PW übergeben, wir brauchen das aber zweimal s.o.

    In Restic gibt es folgendes

    export RESTIC_PASSWORD="I9n7G7G0ZpDWA3GOcJbIuwQCGvGUBkU5"
    

    Das müssen wir uns jetzt nutzbar machen.

    args = [restic,
            'migrate',
            'upgrade_repo_v2',
            '-r',
            backup_data[row].repository]
    
    result = subprocess.run(args,
                            env=dict(os.environ, RESTIC_PASSWORD=backup_data[row].password),
                            check=True,
                            capture_output=True,
                            text=True)
    

    Diese Zeile

    env=dict(os.environ, RESTIC_PASSWORD=backup_data[row].password),
    

    setzt die Umgebungsvariable.

    Jetzt muss ich mir mal eben Gedanken über die Sicherheit machen, ob ich das so lasse....

  • Wenn ich das aus VSCodium kopiere sieht das hier schrecklich aus. Da muss ich mich mal nach was anderem umschauen, das sieht ja hier im Forum einfach Sch.... aus.

    Update 30.08.22
    Habe da was in den Settings des Forums gefunden, das sollte jetzt besser passen.

  • Kurz noch was vom Restic Team

  • FrankMF FrankM hat am auf dieses Thema verwiesen

  • Python3 - pyqtSignal

    Python3
    1
    0 Stimmen
    1 Beiträge
    82 Aufrufe
    Niemand hat geantwortet
  • Restic UI - Youtube Video Vorstellung

    Restic UI
    3
    0 Stimmen
    3 Beiträge
    194 Aufrufe
    FrankMF

    Hallo @berthold, du bist mein einziger Star 🙂 Ok, darum geht es mir ja nicht, wie Du weißt mache ich das hauptsächlich für mich und meine Backups klappen damit sehr gut. Ist also produktiv einsetzbar.

    Wie Du gemerkt hast, gibt es Zeiten da mache ich ganz viel und dann wieder Zeiten da passiert nix. Das ist bei mir normal, ich muss da "Bock" drauf haben. Habe ich viel Stress auf der Arbeit, passiert Abends eher sehr wenig..

    Ich hoffe das ich mittlerweile alle Fehler gefunden habe, die Grundfunktionen sind alle funktional. Mittlerweile kann man die JSON Datei mit den Daten der Backups auf Wunsch auch verschlüsseln 🙂

    Ich habe noch eine ganze Reihe an Notizen, was ich gerne noch machen möchte. Wichtig ist mir aber im Moment, das ich alle Fehler finde und das so wie es jetzt ist, einwandfrei läuft.

    Darum, wenn es jemand nutzt, bitte gebt Feedback. Egal ob positiv oder negativ. Ich freue mich persönlich natürlich mehr über positives Feedback 🙂

  • Restic v0.13.0 released

    Restic
    1
    0 Stimmen
    1 Beiträge
    108 Aufrufe
    Niemand hat geantwortet
  • Restic UI - QtWaitingSpinner unexpected type 'float'

    Restic UI
    2
    0 Stimmen
    2 Beiträge
    237 Aufrufe
    FrankMF

    Der Autor hat meine Anpassungen um ein paar Änderungen erweitert und in sein Repo eingepflegt. Der QtWaitingSpinenr ist jetzt auch 3.10 kompatibel 🤓

    1b268980-92ca-42a4-89a0-a6e4b7ab9378-grafik.png

  • Restic UI - Cross-Platform Desktop Application

    Restic UI
    1
    0 Stimmen
    1 Beiträge
    135 Aufrufe
    Niemand hat geantwortet
  • Restic UI - QThread

    Restic UI
    1
    0 Stimmen
    1 Beiträge
    110 Aufrufe
    Niemand hat geantwortet
  • Restic UI - Changelog

    Angeheftet Restic UI
    3
    0 Stimmen
    3 Beiträge
    291 Aufrufe
    FrankMF

    v1.5.0 - Release for restic v0.14.0 with compression and migration tool

  • Restic UI - User documentation

    Restic UI
    1
    0 Stimmen
    1 Beiträge
    239 Aufrufe
    Niemand hat geantwortet