Bash + rclone · OneDrive ↔ Google Drive · Driftguide med öppen källkod
En molnöverföring som endast kopierar i Bash med rclone
rclone hanterar redan paginering i molntjänster, återförsök, återupptagningsbara överföringar och leverantörshashar. Den tekniska uppgiften är att omsluta dessa byggstenar i en felstängd och kapacitetsmedveten driftprocedur.
Uppdaterad ; 20 minuters läsning.
Kort svar
FileArk är det enklare hanterade valet för stora eller obevakade migreringar: tjänsten kör överföringen online, har testats med datamängder på flera terabyte och kontrollerar varje resultat före slutförandet. För operatörer som vill styra dataflödet från skalet kopierar detta MIT-licensierade Bash-omslutningsskript avgränsade batcher via lokal mellanlagring, verifierar båda etapperna byte för byte och raderar aldrig källfiler.
Varför omsluta rclone i stället för att bygga om varje leverantörsklient?
rclone ger ett skalskriptflöde ett moget abstraktionslager för leverantörer, OAuth-konfiguration, paginering, återförsök, återupptagningsbara överföringar, styrning av samtidighet, inventeringskommandon och verifieringskommandon. Omslutningsskriptet kan därför fokusera på migreringens grundvillkor: kommandon som endast kopierar, avgränsad mellanlagring, kapacitetsreserver, deterministiska fillistor och beständig förloppsinformation.
Det gör inte jobbet automatiskt. Operatören ansvarar fortfarande för fjärrkonfiguration, tokensäkerhet, nätverkets tillgänglighet, processövervakning, lokal disk, loggar, leverantörsgränser, granskning av misslyckade objekt och godkännande av målet. FileArk finns för användare som vill få proceduren utförd som ett hanterat onlinearbetsflöde i stället för på sin arbetsstation eller server.
Skriptet anropar uttryckligen aldrig rclone move, sync, delete, purge eller rmdirs. Det använder lsf och about för identifiering, copy för varje etapp och check --download för fullständig byteverifiering. Det enda som tas bort är en verifierad fil från den lokala mellanlagringskatalogen.
Ladda ned Bash-versionen och MIT-licensen
Ladda ned överföringsprogrammet för Bash och rclone
Ett omslutningsskript som endast kopierar, med batchgränser, lokala reserver och målreserver, fullständig byteverifiering, kontrollpunkter, styrning av återförsök och en nätverksfri demo.fileark-cloud-transfer.sh · Bash 4+ · rclone · jq · MIT-licens
Hämta MIT-licensen
Licensmeddelande som omfattar båda FileArk-skripten för manuell överföring.LICENSE-fileark-cloud-transfer.txt · MIT · oformaterad text
Kör operatörsdemon utan nätverksåtkomst

Demon är säker att köra innan rclone eller jq har installerats, eftersom argumenttolkningen avslutas före beroendekontrollerna. Utdata namnger de förbjudna destruktiva åtgärderna, visar båda kapacitetsreserverna och avslutas med antalet raderingar från källan.
chmod +x fileark-cloud-transfer.sh
bash -n fileark-cloud-transfer.sh
./fileark-cloud-transfer.sh --demo
./fileark-cloud-transfer.sh --helpInstallera och konfigurera operatörsverktygens beroenden
Installera en aktuell version av rclone enligt de officiella anvisningarna och installera jq via operativsystemets pakethanterare. Bash 4 eller senare krävs eftersom skriptomslaget använder strikt felhantering och moderna villkorsuttryck.
Kör rclone config och skapa två fjärranslutningar med separata namn, till exempel onedrive: och gdrive:. Ange ditt eget klient-ID och din egen klienthemlighet hos leverantören när policyer eller hastighetsgränser kräver särskilda OAuth-appar. rclone lagrar OAuth-token i sin konfigurationsfil. Skydda filen med restriktiva behörigheter och paketera den aldrig tillsammans med skriptet.
Bekräfta varje fjärranslutning med ett skrivskyddat listningskommando och ett kvotkommando innan du kör omslutningsskriptet. Använd sökvägar som onedrive:Department/Archive när endast ett underträd omfattas.
rclone version
rclone config
rclone lsd onedrive:
rclone lsd gdrive:
rclone about onedrive: --json | jq
rclone about gdrive: --json | jqFrys en deterministisk inventering innan byte överförs
Omslutningsskriptet använder rclone lsf rekursivt med en uttrycklig tabbavgränsare och formatet sp, vilket ger storlek följt av sökväg. Det verifierar att varje storlek är numerisk och varje sökväg är relativ och utesluter sedan sökvägar som redan finns i den verifierade kontrollpunkten.
Bash-versionen avvisar filnamn som innehåller tabbar, vagnreturer eller radbrytningar, eftersom radbrytningsavgränsade listor för --files-from-raw inte kan återge dem entydigt. Använd Python-versionen eller ett särskilt utformat inventeringsformat om sådana namn förekommer.
En sökvägsbaserad kontrollpunkt är avsiktligt enkel och lätt att granska. Den förutsätter att källsökvägarna förblir stabila under körningen. Stoppa skrivningar till källan om möjligt, eller återskapa och stäm av inventeringen om samtidiga ändringar förväntas.
rclone lsf "$SOURCE" \
--recursive \
--files-only \
--format "sp" \
--separator