Jump to content

rclone: OneDrive Konfiguration bringt einen http 401 Fehler


MarkusR

Recommended Posts

Hallo Zusammen,

 

ich würde gerne meine Daten von Onedrive auf Unraid sichern. Hier habe ich rclone entdeckt. Wenn ich dieses auf Unraid, oder unter Ubuntu einrichten möchte, bekomme ich nach der Authentifizierung  folgende Fehlermeldung ausgegeben:

 

2021/05/03 21:51:36 Failed to query available drives: HTTP error 401 (401 Unauthorized) returned body: "{\"error\":{\"code\":\"InvalidAuthenticationToken\",\"message\":\"CompactToken parsing failed with error code: 8004920A\",\"innerError\":{\"date\":\"2021-05-03T19:51:36\",\"request-id\":\"xxxxxxxx\",\"client-request-id\":\"xxxxxxxxxx\"}}}"

 

Weiß jemand, was ich hier falsch mache? Bei der Konfiguration lasse ich die Client ID und das Client Secret immer leer.

Link to comment
5 hours ago, mgutt said:

Hast du eine URL aufgerufen um den Zugriff zu erlauben? Das ist ja normalerweise bei allen Clouds notwendig 

Ich hatte rclone damals mit der "Remote Setup" Methode eingerichtet.

Sprich mit einem zweiten Rechner (Ubuntu).

Hier ist beschrieben, wie man da vorgeht: Remote Setup

So hast Du dann auch die Möglichkeit, die entsprechende URL aufzurufen.

Link to comment

Hi Zusammen,

 

ich habe meinen Fehler gefunden. Ich hatte bei Onedrive "DE", anstatt "GLOBAL" ausgewählt. Hab das nochmal unter Ubuntu getestet und mich erfolgreich verbinden können. Nach der Config-Übertragung auf Unraid konnte ich mit lsd erfolgreich mein OneDrive einsehen.

 

Nochmal vielen Dank an alle 🙂

 

Jetzt muss ich nur noch schauen, wie ich die Backup-Prozesse automatisiere. Gegebenenfalls melde ich mich dann nochmal 🙂

Link to comment
2 hours ago, MarkusR said:

Wie müsste ich das unter Unraid genau angeben?

Neben den einzelnen Scripts hast Du ja die Möglichkeit, einen eigenen (Custom) Zeitplan (Schedule) festzulegen.

Dort gibst Du dann im „Cron-Format“ den gewünschten Plan an.

Hier ist eine gute Seite dazu: Crontab Guru

Dort siehst Du schon ein Beispiel von mir: Alle zwei Monate am ersten Tag des Monats um 3:00 Uhr.

Link to comment
  • 2 weeks later...

Hi Zusammen,

 

ich konnte es mit einem Skript lösen, dass ich über crontab automatisiert habe. Das LOG-Problem konnte ich ebenfalls lösen. Folgendes Statement verwende ich, falls es mal jemand brauchen sollte 😄

 

rclone sync -P <OneDrive>/ /mnt/user/<OneDrive>/ --log-file=/mnt/user/RcloneLOGs/OneDrive_log_`date +%Y%m%d%H%M`.txt --log-level INFO

 

Die spitzen Klammern sollen Platzhalter darstellen.

Edited by MarkusR
Link to comment

Falls jemand Interesse hat. 
Ich führe meine Backups über folgendes Script täglich um 03:00 Uhr automatisiert aus. 
 

Quote

#!/bin/bash

 

####### MAIN SETTINGS #######
JobName="GDrive daily upload" # choose a job name
RcloneCommand="sync" # choose your rclone command e.g. move, copy, sync
RcloneRemoteName="googledrive_encrypted" # choose your remote name
Notification=1 # Enables a notification to the Unraid WebGui
BackupRetention="30d" # How long to keep deleted sync files suffix ms|s|m|h|d|w|M|y
source_paths=(
    "backup"
    "Medien"
    "Musik"
    "Nextcloud"
)

####### Bandwidth limits #######
# specify the desired bandwidth in kBytes/s, or use a suffix b|k|M|G. Or 'off' or '0' for unlimited.  The script uses --drive-stop-on-upload-limit which stops the script if the 750GB/day limit is achieved, so you no longer have to slow 'trickle' your files all day if you don't want to e.g. could just do an unlimited job overnight.
BWLimit1Time="15:30"
BWLimit1="2048k"
BWLimit2Time="22:00"
BWLimit2="off"

 

####### Jobs per Share #######
for source_path in "${source_paths[@]}"; do
    #######  Job Settings ##########
    LocalFilesShare="/mnt/user/$source_path" # choose local location for opload files
    RcloneMountShare="Shares/$source_path/Current" # choose remote location for upload files
    BackupRemoteLocation="Shares/$source_path/Archive" # choose remote location for backup files
    
    #######  Create backup path if it doesn't already exist  ##########
    rclone mkdir $RcloneRemoteName:$BackupRemoteLocation

 

    #######  Upload files  ##########
    echo "$(date "+%d.%m.%Y %T") INFO: *** Start upload files from $LocalFilesShare to $RcloneRemoteName:$RcloneMountShare."
    rclone -v $RcloneCommand $LocalFilesShare $RcloneRemoteName:$RcloneMountShare \
    --backup-dir $RcloneRemoteName:$BackupRemoteLocation \
    --bwlimit "${BWLimit1Time},${BWLimit1} ${BWLimit2Time},${BWLimit2}" \
    --drive-stop-on-upload-limit \
    --fast-list \
    --transfers 4 \
    --checkers 8 \
    --drive-chunk-size 128M \
    --min-age 15m \
    --exclude /Filme/** \
    --exclude /Serien/**

 

    #######  Delete old synced files from archive  ##########
    echo "$(date "+%d.%m.%Y %T") INFO: *** Removing files older than ${BackupRetention} from ${BackupRemoteLocation} for ${RcloneRemoteName}."
    rclone -v delete $RcloneRemoteName:$BackupRemoteLocation --min-age $BackupRetention
    rclone -v rmdirs $RcloneRemoteName:$BackupRemoteLocation --leave-root
   
    #######  Add a notification to the Unraid WebGui  ##########
    if [ "$Notification" = "1" ]; then
        /usr/local/emhttp/webGui/scripts/notify -i normal -s "Backup done." -d "Job $JobName $LocalFilesShare successfully finished."
    fi
done
    
echo "$(date "+%d.%m.%Y %T") INFO: Script complete."

exit

 

Link to comment
1 hour ago, Anym001 said:

Removing files older than ${BackupRetention} from ${BackupRemoteLocation} for ${RcloneRemoteName}."

    rclone -v delete $RcloneRemoteName:$BackupRemoteLocation --min-age $BackupRetention

Bezieht sich "--min-age" auf das Änderungsdatum oder das Erstelldatum? Das konnte ich nicht herausfinden.

 

Man muss hier auf jeden Fall aufpassen. Manche Clouds unterstützen die Übernahme der Original Zeitstempel (was rclone dann standardmäßig auch macht) und dann hat man evtl eine Datei entfernt, die eigentlich noch im Backup drin sein sollte.

 

Da Google Drive das Änderungsdatum übernehmen sollte, dürfte sich "--min-age" auf das Erstelldatum beziehen oder?

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...