Назад | Перейти на главную страницу

Amazon S3 - автоматическое резервное копирование с использованием S3Sync, расписания Windows и файла BAT

Я пытаюсь создать автоматическую программу резервного копирования в фоновом режиме для резервного копирования всего моего веб-сайта и его тяжелых папок с фотографиями, используя облачный сервис хранения Amazon S3.

Я использую S3Sync от S3Tools и успешно протестировал фиктивную резервную копию, используя только окно командной строки. Когда я сохраняю рабочую командную строку в пакетном файле (.BAT) и вызываю ее из расписания Windows, она не работает.

Я могу только думать, что это как-то связано с локальными путями, установленными в командной строке. Если я перейду на свой сервер и открою командную строку с помощью кнопки «Пуск», командная строка будет иметь значение по умолчанию:

c:\Documents and Settings\administrators>_

Если я перейду на свой сервер, перейду в каталог c: \ windows \ system32 и открою cmd.exe, значение по умолчанию будет следующим:

c:\windows\system32>_

Что заставляет меня думать, что это проблема, я думаю, что получаю что-то подобное, когда он запускается:

c:\windows\system32c:\home\p\h\photos\private\s3sync\s3sync.exe

Каков разумный способ обойти это? Могу ли я изменить каталог по умолчанию в процессоре командной строки при его первой загрузке? Или есть способ изменить код моей пакетной команды, чтобы правильно использовать локальные пути? Может, проблема вовсе не в этом, а в другом?

Любая помощь очень ценится.

Мой код командной строки:

c:\home\p\h\photos\private\s3sync\S3Sync.exe -AWSAccessKeyId xxx -AWSSecretAccessKey xxx -SyncDirection upload -LocalFolderPath "C:\home\p\h\photos\www\assets_web2" -BucketName op-photos-web -RequestEndpoint s3-eu-west-1.amazonaws.com

Вы можете установить каталог из файла .bat: (в вашем случае) cd "C: \ home \ p \ h \ photos \ private \ s3sync \" перед вызовом S3Sync.exe. Это должно привести вас к этому пути, учитывая, что он находится на том же диске.

Если файл находится на другом диске, выдача C: \ (или любого другого диска, к которому вы хотите перейти) перед вызовом EXE приложения также изменится на этот диск.

Другие способы также включают установку стартового пути для запланированной задачи в ее свойствах в Планировщике задач:

На сервере 2003: На вкладке "Задача" отредактируйте поле ввода "Начать в" соответствующим образом.

На сервере 2008: На вкладке «Действия» отредактируйте соответствующее действие и установите соответствующий параметр «Начать через (необязательно):».

Надеюсь, поможет!