写这篇博客之前,我google了一堆相关文章,大都是说修改/etc/sudoers,然后NOPASSWD:指定的cmd,但是真心不管用,没有远程虚拟终端这个方法就是浮云,ubuntu10.04 server 亲测!!

ssh执行远程操作命令格式

ssh -p $port $user@$p 'cmd'

$port : ssh连接端口号

$user: ssh连接用户名

$ip:ssh连接的ip地址

cmd:远程服务器需要执行的操作

准备工作

基于公私钥认证或者用户名密码认证能确保登录到远程local2服务器(有点基本运维知识的人做这个事情都不是问题)

cmd如果是脚本,注意绝对路径问题(相对路径在远程执行时就是坑)

不足

这个命令可以满足我们大多数的需求,但是通常运维部署很多东西的时候需要root权限,但是有几处限制:

远程服务器local2禁止root用户登录

在远程服务器脚本里转换身份用expect需要send密码,这样不够安全

ssh的-t参数

-t      Force pseudo-tty allocation.  This can be used to execute arbitrary screen-based programs on a remote machine, which can be very useful, e.g. when implementing menu services.  Multiple -t options force tty allocation, even if ssh has no local tty.

中文翻译一下:就是可以提供一个远程服务器的虚拟tty终端,加上这个参数我们就可以在远程服务器的虚拟终端上输入自己的提权密码了,非常安全

命令格式

ssh -t -p $port $user@$ip  'cmd'

示例脚本

#!/bin/bash

#变量定义

ip_array=("192.168.1.1" "192.168.1.2" "192.168.1.3")

user="test1"

remote_cmd="/home/test/1.sh"

#本地通过ssh执行远程服务器的脚本

for ip in ${ip_array[*]}

do

if [ $ip = "192.168.1.1" ]; then

port="7777"

else

port="22"

fi

ssh -t -p $port $user@$ip "remote_cmd"

done

这个方法还是很方便的,-t虚拟出一个远程服务器的终端,在多台服务器同时部署时确实节约了不少时间啊!

ssh远程执行python本地脚本_ssh远程执行命令方法和Shell脚本实例相关推荐

  1. linux远程执行本地脚本,ssh远程执行命令方法和Shell脚本实例

    写这篇博客之前,我google了一堆相关文章,大都是说修改/etc/sudoers,然后NOPASSWD:指定的cmd,但是真心不管用,没有远程虚拟终端这个方法就是浮云,ubuntu10.04 ser ...

  2. linux远程脚本事例,ssh远程执行命令方法和Shell脚本实例

    写这篇博客之前,我google了一堆相关文章,大都是说修改/etc/sudoers,然后NOPASSWD:指定的cmd,但是真心不管用,没有远程虚拟终端这个方法就是浮云,ubuntu10.04 ser ...

  3. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter17-ChapterB )

    十七.创建函数 bash shell 提供了用户自定义函数功能,可以将 shell 脚本代码放入函数中封装起来. 函数是一个脚本代码块,你可以为其命名并在脚本中的任何位置重用它.每当需要在脚本中使用该 ...

  4. Linux命令行与shell脚本编程大全:第2版

    <Linux命令行与shell脚本编程大全:第2版> 基本信息 作者: (美)布卢姆(Blum,R.) 布雷斯纳汉(Bresnahan.C.) [作译者介绍] 译者: 武海峰 丛书名: 图 ...

  5. 《Linux命令行与Shell脚本编程大全第2版.布卢姆》pdf

    下载地址:网盘下载 内容简介  · · · · · · 本书是一本关于Linux 命令行与shell 脚本编程的全面教程.全书分为四部分:第一部分介绍Linuxshell 命令行:第二部分介绍shel ...

  6. 《Linux命令行与shell脚本大全》笔记

    初识Linux Shell 什么是Linux Linux可划分为以下四部分: Linux内核 GNU工具 图形化桌面环境 应用软件 深入探究Linux内核 内核主要负责以下四种功能: 系统内存管理 软 ...

  7. 【Shell 脚本速成】01、编程语言与 Shell 脚本介绍

    目录 一.编程语言介绍 二.shell介绍 1.shell介绍 2.bash shell基本特性 2.1 命令和文件自动补全 2.2 常见的快捷键 3.shell脚本介绍 准确来说: 3.1 案例演示 ...

  8. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-Chapter16-脚本控制

    十六.脚本控制 Linux 利用信号与系统中的进程进行通信. 重温 Linux 信号 Linux 系统和应用程序可以产生超过 30 个信号.在 shell 脚本编程时会遇到的最常见的 Linux 系统 ...

  9. 【Linux】《Linux命令行与shell脚本编程大全 (第4版) 》笔记-汇总 ( Chapter1-Chapter16 )

    一.初识 Linux shell Linux 系统可划分为以下 4 部分. Linux 内核 GNU 工具 图形化桌面环境 应用软件 内核主要负责以下 4 种功能. 系统内存管理 内核通过硬盘上称为交 ...

最新文章

  1. 码农技术炒股之路——配置管理器、日志管理器
  2. 并发 线程交替执行_并发与并行的区别
  3. Girton College Info Session Abstract
  4. golang代理转发基础
  5. unsigned long long 溢出 乘_Java整数相加溢出怎么办?Java8一步搞定
  6. 微信查询订单API与商派ecstore订单状态对接
  7. 脱离极域电子教室软件控制策略(实测有效)
  8. Bootstrap学习心得
  9. 【落谷1957】口算练习题题解
  10. 什么是云桌面?云桌面的三大基本架构组成部分
  11. mysql populate_BeanUtils.populate 的作用
  12. DownloadSDKServer.exe 是什么,DownloadSDKServer.exe 内存占用高怎么办
  13. 台式电脑键盘错乱会出现计算机模式怎么办,电脑键盘按键错乱怎么回事
  14. 数据库(mysql)基本概念
  15. 骚年,看我如何把 PhantomJS 图片的 XSS 升级成 SSRF/LFR
  16. 仿热血江湖帮战客方血帮战 开始对战记时器结束事件
  17. linux 防火墙 功能点,功能点(Funciton Point FP)估算法(三) 调整因子
  18. Matlab2018b 破解错误License Manager Error -8 ..... Licensing error: -8523
  19. Nginx通过GeoIP模块获取IP所在地理位置
  20. 转载和积累系列 - HTTPS原理和HTTP缓存机制

热门文章

  1. 十二生肖VS十二星座性情大比拼
  2. 如何对类别变量进行独热编码
  3. 微服务-数据库的拆分
  4. 更多查询模式--mysql学习笔记
  5. matlab修改txt文档内容
  6. Java语言特点与学习
  7. oracle xe 简介
  8. 流量回放工具之 Goreplay 安装及初级使用
  9. android手机跑分测试,性能跑分测试与测试总结
  10. 寺库发布2019年第一季度财报,奢侈品电商还将增长多久?