写在前面:
本文主要介绍linux系统下,在本机执行远程服务器命令,而不需要在输入命令之后,再输入ssh的用户名密码的方法。可以简单理解成,还像原来一样输入scp的命令,只是不需要在键入命令按下回车后再输入密码。
问题来源及背景介绍:
在工作中遇到一些情况,在某些功能中需要将一些文件远程拷贝到其他服务器上,或者执行其他服务器上的一些脚本。一般情况下,需要输入scp等命令后,会提示需要输入用户名及密码。
但如果是在某个应用中去使用,例如在做一些自动化运维的时候,往往只知道服务器的用户名密码以及文件路径还有对应的文件名之类的信息。这时候怎么通过本地脚本直接调用,而不需要再次输入用户名密码呢?
为了解决上述问题,其实不同的资料也做了很多说明,相对于expect而言
expect的安装步骤更为繁琐,需要修改编译文件等。
本文介绍的方法直接用yum install 直接安装依赖即可。
如需离线安装,请先阅读离线安装依赖包的方法
我自己的使用场景:
我自己在使用过程中,主要场景是用于Django+vue的自动化运维测试平台,对于一些工具包的远程拷贝、远程执行等。
比如我需要将一个监控性能指标的工具下发(远程拷贝)到被监测服务器上,就可以类似像scp一样,在一条命令中直接将所需参数进行替换&#