これは明白なエラーでなければならないと確信していますが、私は困惑しています。シェルスクリプトは、以下のデータベース・ダンプを生成し、正常にgzipsが、AWS CLIがエラーを与える:AWS CLI同期エラー - ファイルが見つかりません
warning: Skipping file /home/bar/dbsnapshots/foo-12-11-2016.sql.gz/. File does not exist.
私は、このエラーで最後のスラッシュを参照してください、それが表示されている理由を理解していない場合や、実際には、AWS何らかの理由でfoo-12-11-2016.sql.gzという名前のディレクトリを探していますか?
ls
は、期待どおりのファイルを表示します。
vi /home/bar/dbsnapshots/foo-12-11-2016.sql.gz
は、gzファイルを正常に開きます。
私はawsコマンドをパスの周りに引用符をつけずに試してみました。同じエラーです。私はコマンドラインからシェルスクリプトの外側でawsコマンドを単独で試してみましたが、同じエラーです。
/home/bar/bin/aws s3 sync "/home/bar/dbsnapshots/foo-12-11-2016.sql.gz" s3://foo
AWS CLI例えば
は、ローカル/ホーム/バー/ awscli-バンドル内のこの共有サーバー上の私のユーザーがインストールされ、構成されており、S3にバケットを作成することができました。 AWSブラウザGUIを介して確認。#!/bin/bash
TODAY=`/bin/date +"%-m-%-d-%Y"`
BU_DIR=/home/bar/dbsnapshots
LOCALFILE=$BU_DIR/foo-${TODAY}.sql
EXCLUDED_TABLES=(
membersBackupV2
transactionReferer
transpages
)
IGNORED_TABLES_STRING=''
for TABLE in "${EXCLUDED_TABLES[@]}"
do :
IGNORED_TABLES_STRING+=" --ignore-table=bar_membership.${TABLE}"
done
mysqldump --defaults-extra-file="${BU_DIR}/.my.cnf" --all-databases ${IGNORED_TABLES_STRING} > ${LOCALFILE}
/bin/gzip ${LOCALFILE}
/home/bar/bin/aws s3 sync ${LOCALFILE}.gz s3://foo
ありがとう。私はそれが明らかな誤りであることを知っていた... – jerrygarciuh