This article explains how to rapidly migrate objects between OCI Object Storage regions using Rclone’s native OCI provider, eliminating common S3‑compatible pitfalls and ensuring reliable, high‑speed transfers.
1. Overview
This guide covers high-speed migration using the Native OCI Provider for Rclone. This method is superior to the S3‑compatible method as it uses the ~/.oci/config file, avoiding “SignatureDoesNotMatch” errors and Home Region authentication issues.
2. Prerequisites
- Server: Server with Rclone installed
- OCI CLI Config: Ensure
~/.oci/configand your.pemkey are present and working. - Namespace:
- Compartment OCID:
3. Verified Configuration
Edit ~/.config/rclone/rclone.conf with this exact structure:
[oci-dubai]
type = oracleobjectstorage
namespace = <namespace>
compartment = <compartment-oci>
region = me-dubai-1
config_file = ~/.oci/config
config_profile = DEFAULT
[oci-riyadh]
type = oracleobjectstorage
namespace = <namespace>
compartment = <compartment-oci>
region = me-riyadh-1
config_file = ~/.oci/config
config_profile = DEFAULT
4. Migration Command
rclone copy oci-dubai:source-bucket-name oci-riyadh:destination-bucket-name \
--transfers 150 \
--checkers 150 \
--no-traverse \
--size-only \
--progress \
--log-file=migration_final.log
5. Tips for Large Buckets
--no-traverse: Prevents Rclone from trying to index all 7.9M files before starting. Starts the copy immediately.--size-only: Massive time-saver; checks if the file exists based on size rather than doing heavy checksums.- Monitoring: Use
tail -f migration_final.logto watch for any specific 404 or 403 errors.
By following the steps above, you can achieve high‑throughput, reliable migrations between OCI regions while minimizing errors and monitoring progress effectively.
