Я сделал такой скрипт:
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
У меня настроены ssh-ключи от user-1@local
до user-1@IP-1
, я настроил visudo для перезапуска службы, и все отлично работает, если я запускаю скрипт с использованием user-1
.
Я хочу, чтобы любой other_user
в group-1
мог запускать этот скрипт, но ssh-ключ не работает таким образом, он пытается сгенерировать другой ключ. Чего мне не хватает, чтобы сделать это?
Или я должен использовать другой подход? Я видел, что я могу использовать rsync для перемещения файлов, но как насчет перезапуска службы?
Спасибо вам всем.