結論
AWS CLI で RequestTimeTooSkewed が出たら ntpdate
で時刻を修正する
手順
下記を実行する
sudo apt install ntpdate
sudo ntpdate ntp.nict.jp
著者の環境
- Windows11 + WSL2(Ubuntu 22.04)
- AWS-CLI2
起こったこと
ある日 aws s3 sync
をしようとしたら下記のメッセージとともにエラー終了した。
An error occurred (RequestTimeTooSkewed) when calling the ListObjectsV2 operation: The difference between the request time and the current time is too large.
date
コマンドでUbuntuが認識している現在時刻を確認すると、実時刻から20分ほど遅れていた。
調べると hwclock
というコマンドでハードウェアクロックとシステム時計を同期できるらしいが、自分の環境では hwclock
が使用できなかった。
(書いている途中に、もう一度エラーメッセージを見るために実行すると Permission denied
だったので sudo
をつけたら実行できた。)
システム時計が実時刻とずれているのが原因らしいとわかったので、同期する方法を調べて ntpdate
を試したら直った。