shell脚本远程部署
在两台linux服务器上使用脚本实现远程部署
创建shell脚本
1.在本机服务器上创建.sh文件
编写shell脚本
1.shell脚本以#!/bin/bash开头
2.写入需执行的linux命令,常规来说Linux命令能执行的在脚本中都可以运行,排除路径不正确的问题
运行shell脚本
ssh user@host ‘bash -s’ < 1.sh
该执行方法为本地执行脚本到远程,一定要记住!这时可以直接执行到远程服务器上的脚本!
问题与解决方法
1.文件或路径未找到
可能的原因有以下几种:1)少了/或多了/
2)因为执行脚本的方法不是直接./运行shell脚本,是本地执行分发到远程服务器,所以一开始执行scp命令是把host加在了远程服务器上,其实这时候的路径在远程服务器上,所以scp的host应加在本地的服务器上面
2.路径一直显示/r
该原因是因为一开始脚本是在notepad上面写的,回车换行符:/r/n在Linux系统中编码不一样,无法显示/n,只会显示/r,这时需要改变文件编码。百度90%的方法都是下载dos2unix/unix2dos,但是我尝试了很多次下载了这两个,也无法运行dos2unix命令