我完全清楚这个问题已被多次询问,但我无法找到满足我要求的任何解决方案。
任务 - > 我需要将文件从机器A传输到machineB并远程执行机器B上的脚本。由于我的限制,我无法能够使用keygen,期望实用程序或任何其他需要安装包的实用程序。要传输文件,我需要输入密码,我想在网址中提供密码。因为这将在bash脚本中运行,不需要用户干预。
我的调查 - 我想过使用scp但是意识到,在命令提示符下无法提供密码。所以我想知道,如果rsync还有其他选择。
以下是小尝试
#!/bin/bash
PATH=/usr/bin:/usr/sbin:/bin:/sbin
USER="bob"
RSYNC_PASSWORD="blue"
MACHINE_B="192.168.200.2"
if ping -c 1 -W 1 $MACHINE_B
then
echo "There is machine b as well"
echo " cheking to transfer file to machine b"
rsync lol.sh 192.168.200.2:/home/bob/
fi
谢谢和问候, 萨姆
答案 0 :(得分:1)
我已尝试过上面提到的各种选项,但不幸的是,它们都不适用于我的情况。但是我要感谢大家帮助我,当然我也学到了很多新东西,特别是rsync。 在我的情况下,我必须依靠ssh键才能使它工作。
答案 1 :(得分:0)
来自rsync手册页:
Some modules on the remote daemon may require authentication. If so, you will receive a password prompt when you connect. You can avoid the password
prompt by setting the environment variable RSYNC_PASSWORD to the password you want to use or using the --password-file option. This may be useful
when scripting rsync.