需求描述: 在实际shell脚本的编写过程中,需要通过ssh远程执行一个命令,并返回执行的结果 简单来说,就是将命令发送到远程的主机上进行执行,但是并没有实际的登录到远程主机上.即通过 ssh的方式本地调用远程的命令. 实现方法: 通过下面脚本测试通过ssh发送命令给远程主机,并且返回执行结果: ssh username@hostname command 测试过程: 1.通过ssh发送一个命令 [mysql@redhat6 ~]$ ssh oracle@standby df -h Filesys…
ansible 和 saltstack 都是为了同时在多台主机上执行相同的命令, 但是 salt配置麻烦,ansible基本不用配置, ansible 通过ssh来连接并控制被控节点 1. 安装 第一步: 下载epel源 wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo 第二步: 安装ansible yum install -y ansible 2. 管控主机秘钥登录被控主机 ssh 秘钥登…
一句话: ssh -t -p 端口号 用户名@远程机器IP '远程机器上的命令完整路径' 例如: ssh -t -p 22 yangjunming@dev '/opt/app/deploy.sh' 注意事项: 一般先配置ssh免密码登录,然后结合这个可以实现一键远程自动部署,大概思路如下: a)先在本机build项目(ant/maven/gradle均可) b) 然后打包成tar并copy到远程机器的指定目录(最简单的方式就是用scp) c) 调用远程机器上的shell脚本,解压tar并执行no…
安装paramiko模块 /usr/local/python36/bin/pip3 install paramiko 1.获取cpu使用率 #!/usr/bin/python #coding=utf8 #target: get the cpu's used of remote linux system import paramiko def getlinux(ssh): # get the result of executing command stdin, stdout, stderr = s…
经常看到linux软件的作者在介绍安装软件时,在命令前面加一个反斜杠,不解其意,后来查阅资料才知道,这是为了取消别名的调用,使用原命令. alias是shell的内置命令,可以用来设置命令的别名,如使用alias ls='ls --color=auto'设置使用ls时以彩色输出 在命令前加上反斜杠,可以临时取消使用别名 例如:\ls 则直接调用ls的原始命令,而不会使用alias设置的带有color选项的命令 同样的事情,常常出现在安装软件的介绍上,作者为了保证你使用的命令和他使用的一致,而不是…
shell脚本中判断上一个命令是否执行成功 shell中使用符号“$?”来显示上一条命令执行的返回值,如果为0则代表执行成功,其他表示失败.结合if-else语句实现判断上一个命令是否执行成功. 示例如下: if [ $? -ne 0 ]; then echo "failed" else echo "succeed" fi 或者: if [ $? -eq 0 ]; then echo "succeed" else echo "faile…
shell脚本中判断上一个命令是否执行成功  shell中使用符号“$?”来显示上一条命令执行的返回值,如果为0则代表执行成功,其他表示失败.结合if-else语句实现判断上一个命令是否执行成功. 场景:如果clone项目成功,才进行打包工作 示例脚本: echo "clone命令" git clone -b <branchName> <gitAddress> ]; then echo "faild" else echo "succ…
ping命令不能检测端口,只能检测你和相应IP是否能连通. 本地虚拟机里安装了一个Ubuntu,使用Putty连接22端口操作时提示失败,于是查看对应端口是否开启. Windows下要检测远程主机上的某个端口是否开启,可以使用微软自带工具telnet. 1.安装telnet.win7下默认telnet功能是关闭的,在cmd下输入telnet提示没有该命令. 进入控制面板---->程序---->打开或关闭windows功能.然后等一段时间,在出来的对话框把telnet客户端和telnet服务器勾…
今天在一台使用已久的内网服务器上面帮一位新同事添加账户,添加完成之后就把账号交付于他,过了10分钟他告诉我说无法登陆,觉得很诧异 这么轻车熟路的 这么会 登陆不上去了,自己也用Xshell 登陆了一下,提示用户密钥未在远程主机上注册,于是检查了一下 用户目前下面的.ssh目录权限 700  .ssh/authorized_keys 权限为600 查看/var/log/secure 发现有如下日志 以为是用户是被锁定了,于是查看状态 准备解锁用户,命令如下: pam_tally2 --user 账…
GitHub是一个开源的大仓库,我们经常从github上下载项目进行学习和研究,下面是一个完整的步骤——往GitHub上传一个新项目. 一.注册GitHub账号 1.注册GitHub账号,地址:https://github.com 注册账户 账户选择 2.登录: 登录.png 3.登录之后的页面,是我们star其他人的一些信息,类似于QQ空间的好友状态 D2A62592-D46E-43B8-82B5-1628131CBC67.png 二.配置GitHub的SSH key 1.查看系统中是否配置过…