SUDO_ASKPASS 不起作用

SUDO_ASKPASS 不起作用

我想创建一个简单的脚本来通过 ssh 下载和安装程序。

#!/bin/bash
echo "Welcher Rechner?"
read nummer
echo "Verbinde zu APC "$nummer
apc=apc$nummer.local
sshpass -f .pass_file scp $HOME/autoconfig/.filius_update.sh dvadmin@$apc:$HOME/
sshpass -f .pass_file scp $HOME/autoconfig/filiusurl dvadmin@$apc:$HOME/
sshpass -f .pass_file scp $HOME/autoconfig/.pass_file.sh dvadmin@$apc:$HOME/.pass_file.sh
sshpass -f .pass_file ssh dvadmin@$apc 'export SUDO_ASKPASS=${HOME}/.pass_file.sh; sudo -A chmod +x ./.filius_update.sh && ./.filius_update.sh'
sshpass -f .pass_file ssh dvadmin@$apc 'export SUDO_ASKPASS=${HOME}/.pass_file.sh; sudo -A rm ./.pass_file.sh && rm filius.deb && rm filiusurl && rm .filius_update.sh'

但是终端向我发送一个错误,我必须配置 askpass:

sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper
sudo: A password is required
sudo: a terminal is required to read the password; either use the -S option to read from standard input or configure an askpass helper
sudo: A password is required

我不明白我做错了什么。

谢谢您的建议。

答案1

现在我用

sshpass -f .pass_file ssh dvadmin@$apc '$HOME/.pass_file.sh | sudo -S chmod +x ./.filius_update.sh && ./.filius_update.sh'

最后终于成功了:) 我不知道为什么我的老方法不再起作用了,但是我有一个解决方案,现在我必须编辑我的其他脚本:/

相关内容