From: Jeff R. <jr...@op...> - 2011-08-02 21:23:17
|
Putting a new server on-line and wanted to sync my remote backup files from S3 to the new server. I'm using Python 2.7.1 (r271:86832, Jul 29 2011, 17:22:08) [GCC 4.2.1 20070719 ] on openbsd5 Trying to sync from remote to local I'm getting this: Problem: OSError: [Errno 22] Invalid argument: '/backup/s3/1/cvs.gz.aaa' S3cmd: 1.0.1 Traceback (most recent call last): File "/usr/local/bin/s3cmd", line 2006, in <module> main() File "/usr/local/bin/s3cmd", line 1950, in main cmd_func(args) File "/usr/local/bin/s3cmd", line 1213, in cmd_sync return cmd_sync_remote2local(args) File "/usr/local/bin/s3cmd", line 1029, in cmd_sync_remote2local raise e OSError: [Errno 22] Invalid argument: '/backup/s3/1/cvs.gz.aaa' --dry-run works just fine, with the filenames and path I expect. INFO: Compiling list of local files... INFO: Retrieving list of remote files for s3://2.heinlein.openvistas.net/ ... INFO: Found 31 remote files, 0 local files INFO: Applying --exclude/--include INFO: Verifying attributes... INFO: Summary: 31 remote files to download, 0 local files to delete download: s3://2.heinlein.openvistas.net/cvs.gz.aaa -> /backup/s3/2/cvs.gz.aaa download: s3://2.heinlein.openvistas.net/home.gz.aaa -> /backup/s3/2/home.gz.aaa download: s3://2.heinlein.openvistas.net/home.gz.aab -> /backup/s3/2/home.gz.aab download: s3://2.heinlein.openvistas.net/home.gz.aac -> /backup/s3/2/home.gz.aac download: s3://2.heinlein.openvistas.net/home.gz.aad -> /backup/s3/2/home.gz.aad download: s3://2.heinlein.openvistas.net/home.gz.aae -> /backup/s3/2/home.gz.aae download: s3://2.heinlein.openvistas.net/home.gz.aaf -> /backup/s3/2/home.gz.aaf download: s3://2.heinlein.openvistas.net/home.gz.aag -> /backup/s3/2/home.gz.aag download: s3://2.heinlein.openvistas.net/home.gz.aah -> /backup/s3/2/home.gz.aah download: s3://2.heinlein.openvistas.net/home.gz.aai -> /backup/s3/2/home.gz.aai download: s3://2.heinlein.openvistas.net/home.gz.aaj -> /backup/s3/2/home.gz.aaj download: s3://2.heinlein.openvistas.net/home.gz.aak -> /backup/s3/2/home.gz.aak download: s3://2.heinlein.openvistas.net/home.gz.aal -> /backup/s3/2/home.gz.aal download: s3://2.heinlein.openvistas.net/home.gz.aam -> /backup/s3/2/home.gz.aam download: s3://2.heinlein.openvistas.net/home.gz.aan -> /backup/s3/2/home.gz.aan download: s3://2.heinlein.openvistas.net/home.gz.aao -> /backup/s3/2/home.gz.aao download: s3://2.heinlein.openvistas.net/home.gz.aap -> /backup/s3/2/home.gz.aap download: s3://2.heinlein.openvistas.net/home.gz.aaq -> /backup/s3/2/home.gz.aaq download: s3://2.heinlein.openvistas.net/home.gz.aar -> /backup/s3/2/home.gz.aar download: s3://2.heinlein.openvistas.net/home.gz.aas -> /backup/s3/2/home.gz.aas download: s3://2.heinlein.openvistas.net/home.gz.aat -> /backup/s3/2/home.gz.aat download: s3://2.heinlein.openvistas.net/openvistas.sql.gz.aaa -> /backup/s3/2/openvistas.sql.gz.aaa download: s3://2.heinlein.openvistas.net/openvistas.sql.gz.aab -> /backup/s3/2/openvistas.sql.gz.aab download: s3://2.heinlein.openvistas.net/openvistas.sql.gz.aac -> /backup/s3/2/openvistas.sql.gz.aac download: s3://2.heinlein.openvistas.net/root.gz.aaa -> /backup/s3/2/root.gz.aaa download: s3://2.heinlein.openvistas.net/var.gz.aaa -> /backup/s3/2/var.gz.aaa download: s3://2.heinlein.openvistas.net/var.log.gz.aaa -> /backup/s3/2/var.log.gz.aaa download: s3://2.heinlein.openvistas.net/var.log.gz.aab -> /backup/s3/2/var.log.gz.aab download: s3://2.heinlein.openvistas.net/var.qmail.bin.gz.aaa -> /backup/s3/2/var.qmail.bin.gz.aaa download: s3://2.heinlein.openvistas.net/var.qmail.queue.gz.aaa -> /backup/s3/2/var.qmail.queue.gz.aaa download: s3://2.heinlein.openvistas.net/var.www.gz.aaa -> /backup/s3/2/var.www.gz.aaa WARNING: Exitting now because of --dry-run Here's the whole script: #!/bin/sh # --dry-run \ LEVEL=0 while [ $LEVEL -ne 8 ] ; do mkdir -p /backup/s3/$LEVEL/ logger starting s3cmd download! /usr/local/bin/s3cmd --config=/etc/scripts/.s3cfg \ --verbose sync \ s3://$LEVEL.heinlein.openvistas.net/ /backup/s3/$LEVEL/ let LEVEL=$LEVEL+1 done echo "Done!" Thanks, Jeff Ross |