Move your files from a drive to another one
Is there anyway that you can move file from a drive to another one?
If the files are not large or just a small batch, just do it manually.
But what about if you have 1 TB, or even 10TB, and almost every file is small, 4KB for each, for example?
Let’s be brutally honest: if you try to use native desktop clients (like OneDrive or Google Drive for Desktop) to sync millions of 4KB files, your machine will likely crash. Native desktop apps rely on local caching (Local Cache) and the operating system’s file provider framework. They will download the files, eat up your local SSD space, destroy your disk write lifespan (TBW, Terabytes Written), and eventually freeze the OS due to millions of local I/O operations.
The only professional, zero-BS way to handle this is Rclone. It is an open-source command-line tool that streams data directly from cloud to cloud via your computer’s RAM (In-Memory Buffering). Nothing touches your local hard drive. Better yet, it supports a massive ecosystem—likely over 70 different cloud storage providers, including AWS S3, Dropbox, Box, and OneDrive.
Step 1: Ditch the Public APIs (Always Create Your Own Client ID)
While this guide specifically highlights creating your own Google Drive Client ID due to Google’s notorious rate limits, the golden rule applies universally to almost any cloud provider.
If Rclone allows you to create a custom API key or OAuth Client ID for your target drive (such as OneDrive or Dropbox), you should always do it. Rclone provides default API keys out of the box for convenience, but those default keys are shared by millions of users globally. Using the shared keys means you are sharing bandwidth and rate limits with everyone else, which practically guarantees HTTP 429 Too Many Requests bans when transferring large volumes of data. Go to your provider’s developer console and generate your own private tunnel.
Step 2: Optimize for High-Concurrency (The Small Files Command)
For tiny files, you need to maximize parallel transfers while strictly limiting API transaction rates to avoid bans.
1
rclone copy od: gd:backup_folder -P --transfers 32 --checkers 64 --fast-list --tpslimit 10
--transfers 32: Moves 32 files simultaneously. Essential for tiny files where connection latency, not bandwidth, is the primary bottleneck.--checkers 64: Scans 64 files in parallel to compare source and destination hashes rapidly.--fast-list: This is critical. It drastically reduces API calls by loading the entire directory tree into memory at once, rather than asking the server for folder contents one by one.--tpslimit 10: Hard-caps Rclone to 10 Transactions Per Second. This acts as a necessary throttle. Steady and continuous transfer is always faster than getting banned for 24 hours due to API spam.
The Alternative: Migrating Massive Files
If your 10TB consists of massive 4K video files instead of tiny 4KB chunks, the bottleneck flips from API limits to raw network throughput. You must lower the concurrency and increase the RAM buffers.
1
rclone copy od: gd:backup_folder -P --transfers 4 --buffer-size 256M --drive-chunk-size 128M
--buffer-size 256M: Allocates 256MB of RAM per file to absorb network jitter.--drive-chunk-size 128M: Uploads data to Google Drive in 128MB chunks (the default is 8MB). This slashes API handshakes and forces the transfer to saturate your maximum upload bandwidth.
Stop relying on bulky GUI applications for enterprise-level data migrations. Keep your machine awake, connect to a stable network, and let Rclone handle the routing purely in RAM. If your connection drops, simply run the exact same command again. Rclone will verify the hashes and resume exactly where it left off, avoiding duplicate files automatically.