Naar de inhoud
Helpcentrum

Categorieën

Zoeken in het HelpcentrumCtrl K
Op deze pagina

Een back-up van een Synology-NAS maken in Drime met rclone

Kopieer en synchroniseer de mappen van je Synology-NAS naar Drime met de officiële Drime-backend van rclone, in Docker en volgens schema in DSM.

Bijgewerkt Web

Deze handleiding volgt de officiële documentatie van rclone en Synology: Drime-backend van rclone, rclone met Docker, Synology Task Scheduler en SSH bij Synology.

rclone heeft een officiële Drime-backend, dus een Synology-NAS kan zijn mappen volgens een schema naar Drime kopiëren: rclone draait in Docker op de NAS, en de Task Scheduler van DSM start het. De bestanden komen in Drime aan als gewone bestanden die je kunt openen, delen en downloaden.

Geen enkele officiële pagina beschrijft deze hele opzet: deze handleiding brengt de twee documentaties samen. Drime biedt geen ondersteuning voor rclone of DSM zelf: hulp daarbij vind je in hun eigen documentatie.

#Wat je nodig hebt

  • Een Synology-NAS met DSM 7 en een beheerdersaccount.

  • Het Docker-pakket van Synology: Container Manager op DSM 7.2 en hoger, Docker op DSM 7.1 en eerder.

  • SSH-toegang, alleen als je liever de interactieve configuratie van rclone gebruikt.

  • Een Drime-account met genoeg vrije opslagruimte voor wat je wilt back-uppen.

  • Een API-token van Drime, dat je in het volgende onderdeel maakt.

#Een API-token maken

  1. Klik in de webapp van Drime op je avatar en daarna op Instellingen > Ontwikkelaars.

  2. Klik bij API-toegangstokens op Token maken.

  3. Geef het token de naam van de NAS, bijvoorbeeld “Synology NAS”, en laat de rechten op Alles staan.

    rclone moet kunnen uploaden, weergeven en verwijderen. Met een token met Alleen-lezen kan rclone alleen downloaden.

    Het venster Nieuw token maken met een tokennaam en de tabbladen onder Rechten
  4. Klik op Aanmaken, kopieer het token en klik daarna op Klaar.

    Het token wordt maar één keer getoond: houd het bij de hand voor de volgende stap, of bewaar het in een wachtwoordbeheerder.

    Het nieuwe token, dat maar één keer wordt getoond, met de knop Kopiëren en de waarschuwing om het op een veilige plek te bewaren

Alle opties voor tokens vind je in Een API-token maken.

#De opdrachten in deze handleiding

Elke opdracht start de officiële Docker-image van rclone, zoals de documentatie van rclone dat laat zien. Vervang de plaatshouders in hoofdletters:

Plaatshouder

Vervangen door

Voorbeeld

CONFIG_FOLDER

Een map op de NAS voor de instellingen van rclone

/volume1/docker/rclone

NAS_FOLDER

De map op de NAS waarvan je een back-up maakt, of waarin je terugzet

/volume1/photo

DRIME_FOLDER

De map in Drime die de back-up ontvangt

NAS-backup/photo

YOUR_API_TOKEN

Je API-token van Drime

Gebruik volledige paden op de NAS, die beginnen met /volume. In Docker ziet rclone CONFIG_FOLDER als /config/rclone en NAS_FOLDER als /data.

#rclone configureren op de NAS

#Met Container Manager, zonder SSH

  1. Open in DSM Control Panel (configuratiescherm) > Task Scheduler (taakplanner).

    Klik op Create (maken) en daarna op Scheduled Task (geplande taak) > User-defined script (door de gebruiker gedefinieerd script).

  2. Geef de taak een naam, bijvoorbeeld “rclone instellen”, en kies de gebruiker root.

  3. Plak in Task Settings (taakinstellingen) de configuratieopdracht onder Run command (opdracht uitvoeren).

    docker run --rm \
        --volume CONFIG_FOLDER:/config/rclone \
        --user $(id -u):$(id -g) \
        rclone/rclone \
        config create drime drime access_token YOUR_API_TOKEN

    Deze opdracht downloadt de officiële image van rclone en maakt een remote met de naam drime.

  4. Sla de taak op, selecteer die in de lijst en klik daarna op Run (uitvoeren).

  5. Verwijder de taak daarna: die bevat je token.

#Met SSH

Als je liever de interactieve configuratie van rclone gebruikt:

  1. Open in DSM Control Panel > Terminal & SNMP > Terminal en vink Enable SSH service (SSH-service inschakelen) aan.

    Synology waarschuwt dat het inschakelen van SSH beveiligingsrisico's met zich mee kan brengen: schakel het weer uit als je klaar bent.

  2. Maak vanaf je computer via SSH verbinding met de NAS en voer daarna sudo -i uit.

    Om via SSH in te loggen heb je een account in de lokale beheerdersgroep nodig, en sudo -i vraagt om het wachtwoord van dat account.

  3. Start de interactieve configuratie van rclone.

    docker run --rm -it \
        --volume CONFIG_FOLDER:/config/rclone \
        --user $(id -u):$(id -g) \
        rclone/rclone \
        config
  4. Beantwoord de vragen van rclone om de remote drime te maken.

    Typ n voor een nieuwe remote, de naam drime en het opslagtype drime, en plak daarna je API-token bij access_token.

Ter controle hoort dezelfde opdracht met listremotes in plaats van config de remote drime: te tonen.

#Een eerste kopie maken

Begin met rclone copy: dat voegt bestanden toe aan Drime en verwijdert daar nooit iets. Maak een taak zoals hierboven, met de gebruiker root en deze opdracht:

docker run --rm \
    --volume CONFIG_FOLDER:/config/rclone \
    --volume NAS_FOLDER:/data:shared \
    --user $(id -u):$(id -g) \
    rclone/rclone \
    copy /data drime:DRIME_FOLDER

Voer de taak uit en controleer daarna het resultaat in Drime.

#Drime gelijk houden met sync

rclone sync zorgt ervoor dat de map in Drime overeenkomt met de map op de NAS.

Voer dit één keer uit en lees de uitvoer van de taak:

docker run --rm \
    --volume CONFIG_FOLDER:/config/rclone \
    --volume NAS_FOLDER:/data:shared \
    --user $(id -u):$(id -g) \
    rclone/rclone \
    sync /data drime:DRIME_FOLDER --dry-run

Haal --dry-run weg zodra de lijst is wat je verwacht. Bestanden die rclone in Drime verwijdert, gaan naar je prullenbak in Drime. Met de geavanceerde optie hard_delete van rclone worden ze in plaats daarvan definitief verwijderd.

#De back-up plannen

  1. Maak in Control Panel > Task Scheduler een Scheduled Task met de gebruiker root.

    Kies User-defined script.

  2. Kies op het tabblad Schedule (schema) de dagen en het tijdstip, bijvoorbeeld elke nacht.

  3. Plak in Task Settings je opdracht met copy of sync onder Run command.

    Je kunt DSM ook de details van elke uitvoering laten mailen, of alleen als het script abnormaal eindigt.

#Je bestanden controleren in Drime

Open de webapp van Drime: DRIME_FOLDER bevat je bestanden met hun gewone namen. Ze tellen mee voor je opslag in Drime, net als elk ander bestand.

Goed om te weten, volgens de Drime-documentatie van rclone:

  • Wijzigingen worden herkend aan de grootte. Drime geeft rclone geen wijzigingstijden of hashes, dus een bestand dat is bewerkt zonder dat de grootte veranderde, wordt niet opnieuw gekopieerd.

  • Bestandsnamen mogen maximaal 255 bytes lang zijn (in UTF-8).

  • Werkruimtes: met de geavanceerde optie workspace_id van rclone komt de back-up in een werkruimte terecht in plaats van in je eigen bestanden.

  • Tijden in de uitvoer van rclone staan in UTC: de container van rclone gebruikt UTC, tenzij de variabele TZ is ingesteld.

#Bestanden terugzetten

Kopieer de bestanden met rclone copy in omgekeerde richting terug uit Drime. Gebruik een lege map op de NAS als NAS_FOLDER, bijvoorbeeld /volume1/restore:

docker run --rm \
    --volume CONFIG_FOLDER:/config/rclone \
    --volume NAS_FOLDER:/data:shared \
    --user $(id -u):$(id -g) \
    rclone/rclone \
    copy drime:DRIME_FOLDER /data

Je kunt losse bestanden ook downloaden in de webapp van Drime.

#Als het niet werkt

Wat je ziet

Wat je kunt doen

rclone meldt dat het de sectie drime niet in zijn configuratiebestand heeft gevonden

De opdracht gebruikt niet dezelfde CONFIG_FOLDER als de configuratie. Gebruik in elke opdracht dezelfde map.

rclone vindt /data niet, of kopieert niets

NAS_FOLDER klopt niet. Gebruik het volledige pad van de map, beginnend met /volume.

De taak mislukt meteen met een Docker-fout

Controleer of Container Manager (of Docker op DSM 7.1) is geïnstalleerd en of de taak als root draait.

rclone maakt geen verbinding meer met Drime

Het token is misschien verwijderd of ingetrokken: de Drime-API antwoordt dan met 401 en Unauthenticated. Maak een nieuw token en voer daarna de configuratieopdracht uit met config update drime access_token YOUR_API_TOKEN in plaats van config create drime drime access_token YOUR_API_TOKEN.

rclone kan weergeven en downloaden, maar niet uploaden

Het token heeft misschien Alleen-lezen. Maak een token met Alles en vervang het op dezelfde manier (config update).

Uploads mislukken als je opslag bijna vol is

Je opslag in Drime is misschien vol. Zie Opslagruimte controleren en vrijmaken. Leeg na een sync ook de prullenbak van Drime.

Tweestapsverificatie staat aan voor je Drime-account

Je hoeft niets te veranderen: rclone gebruikt het API-token, niet je wachtwoord.

Een bestand met een heel lange naam wordt niet gekopieerd

De naam is langer dan 255 bytes. Maak hem korter op de NAS.

#Volgende stappen

Was dit nuttig?