Question: What is the easiest way to duplicate an entire Amazon S3 bucket to a bucket in a different account? Ideally, we'd like to duplicate the bucket nightly to a different account in Amazon's European data center for backup purposes.

Answer: 
One thing to consider is that you might want to have whatever is doing this running in an Amazon EC2 VM. If you have your backup running outside of Amazon's cloud then you pay for the data transfer both ways. If you run in an EC2 VM, you pay no bandwidth fees (although I'm not sure if this is true when going between the North American and European stores) - only for the wall time that the EC2 instance is running (and whatever it costs to store the EC2 VM, which should be minimal I think).
*Note: this doesn't work for cross-account syncing, but this works for cross-region on the same account.*

For simply copying everything from one bucket to another, you can use the AWS CLI (<https://aws.amazon.com/premiumsupport/knowledge-center/move-objects-s3-bucket/>): `aws s3 sync s3://SOURCE_BUCKET_NAME s3://NEW_BUCKET_NAME`

In your case, you'll need the `--source-region` flag: <https://docs.aws.amazon.com/cli/latest/reference/s3/sync.html>

If you are moving an enormous amount of data, you can optimize how quickly it happens by finding ways to split the transfers into different groups: <https://aws.amazon.com/premiumsupport/knowledge-center/s3-large-transfer-between-buckets/>

There are a variety of ways to run this nightly. One is example is the AWS instance-schedule (personally unverified) <https://docs.aws.amazon.com/solutions/latest/instance-scheduler/appendix-a.html>