このようなスクリプトを作成しました。
sync.sh
#!/bin/bash
#1st backup the file
scp user-1@ip-1:/directory/file1 /backup/location/
#2nd sync/overwrite my file to that server
scp /local/file2 user-1@ip-1:/directory/file1
#3rd restart service associated with that file
ssh -t user-1@IP-1 << EOF
sudo systemctl restart some.service
EOF
スクリプトの許可と特権は次のとおりです。
-rwxr-x--x. 1 user-1 group-1 ~/sync.sh
からの間user-1@local
にssh-keysが構成されてuser-1@IP-1
います。サービスを再起動するようにvisudoを構成しましたuser-1
。
私はしたいother_user
では、group-1
このスクリプトを実行することができますが、この方法では動作しませんのssh-keyは、それが別のキーを生成しようとします。これを行うために何が欠けていますか?
または、別のアプローチを使用する必要がありますか?ファイルの移動にrsyncを使用できることを見てきましたが、サービスの再起動はどうですか?
皆さん、ありがとうございました。