Linux下远程备份、上传工程,重启服务器

简介:     Linux服务器实现远程,原项目的备份、删除,新项目上传,以及远程重启服务器! 分成一个主shell调用三个shell文件步骤完成。 mainsh.sh一次按顺序执行多个脚本,将三步sh顺序完成: #!/bin/sh#此Shell一次按顺序执行多个脚本#参数:: #远程jboss服务器所在的ip IP=127.0.0.1 #服务器登录账户 userx='tskk'

    Linux服务器实现远程,原项目的备份、删除,新项目上传,以及远程重启服务器!

分成一个主shell调用三个shell文件步骤完成。

mainsh.sh一次按顺序执行多个脚本,将三步sh顺序完成:

#!/bin/sh
#此Shell一次按顺序执行多个脚本
#参数::
 #远程jboss服务器所在的ip
 IP=127.0.0.1
 #服务器登录账户
 userx='tskk'
 #服务器登录密码
 passx='sasa'
 #部署jboss远程服务器上项目war文件的全路径名称(用于备份)
 jbossfiledirname=/opt/app/jboss5/server/warset/jasmine.war 
 #备份文件的主目录
 filebackupdir=/home/tskk/backup
 #同名备份区分标识(防止不同项目文件重名备份)
 backupflag=tskk
 #本地Linux服务器(或Jenkins下项目)下文件全路径名称
 jenkinsfiledirname=/opt/app/jenkins/workspace/jasmine.war
 #jboss下服务器/bin路径(用于重启)
 jbossbinfiledir=/opt/app/jboss5/server/bin

#远程操作shell文件的全路径,也可为不同文件夹
shfiledir=/opt/app/tskk/commonsh
#远程服务器拷贝,删除,上传,重启jboss
sh $shfiledir/remotebackupdeletewar.sh $IP $userx $passx $jbossfiledirname $filebackupdir $backupflag
sh $shfiledir/remoteuploadwar.sh $IP $userx $passx $jenkinsfiledirname $jbossfiledirname
sh $shfiledir/remoterestartjboss.sh $IP $userx $passx $jbossbinfiledir

注:sh  ***.sh  parm1 parm2…,可以顺序执行多个脚本

remotebackupdeletewar.sh实现远程备份文件:

#!/bin/sh
echo "file backupdelete start………………"
#访问远程服务器ip,user,pass
IP=$1
userx=$2
passx=$3
#jboss服务器上项目war文件的全路径名称 eg:/opt/app/jboss5/server/warset/jsm.war
jbossfiledirname=$4
#dirname获取jboss上war文件路径 eg:/opt/app/jboss5/server/warset
mianjbossfiledir=`dirname $jbossfiledirname`
#basename获取jboss上war文件的名称 eg:jsm.war
jbossfilename=`basename $jbossfiledirname`
#备份文件的主目录
mainbackupdir=$5
#备份同名标识
backupflag=$6
#备份文件夹的名称 eg:tskk-jsm.war201412021439
DATE=$(date +%Y%m%d%H%M)
filename2=$backupflag-${jbossfilename}${DATE}
#sshpass登录远程服务器,进行war文件的备份和删除
sshpass -p $passx ssh -o StrictHostKeyChecking=no -tt $userx@$IP <<sshaccess
cd $mainbackupdir
mkdir $filename2
cd $mianjbossfiledir
cp -R $jbossfilename $mainbackupdir/$filename2
rm -rf $jbossfilename
exit
sshaccess
echo "file backupdelete end-ok………………"
exit 0

注:Shell命令sshpass非交互SSH有密码验证

       -tt  防止脚本调用ssh后出现Pseudo-terminal will not be allocated because stdin is not a terminal问题

       -o StrictHostKeyChecking=no 避免第一次登录出现公钥检查

remoteuploadwar.sh实现远程项目部署服务器:

#!/bin/sh
echo "file upload start………………"
#访问远程服务器ip,user,pass
IP=$1
userx=$2
passx=$3
#Jenkins下文件全路径名称
jenkinsfiledirname=$4
#获取Jenkins下文件路径
jenkinsfiledir=`dirname $jenkinsfiledirname`
#获取Jenkins上文件名称
jenkinsfilename=`basename $jenkinsfiledirname`
#jboss上war文件全路径名称
jbossfiledirname=$5
#jboss上war文件路径
jbossfiledir=`dirname $jbossfiledirname`
#jboss上war文件名称
jbossfilename=`basename $jbossfiledirname`
	#对Jenkins下jar按jboss上规范给文件命名
	#cd $jenkinsfiledir
	#mv $jenkinsfilename $jbossfilename
	#重命名后Jenkins上文件全路径名称
	#rejenkinsfiledirname=$jenkinsfiledir/$jbossfilename
#sshpass远程上传文件到jboss服务器
sshpass -p $passx scp -o StrictHostKeyChecking=no $jenkinsfiledirname $userx@$IP:$jbossfiledir <<sshpassupload
exit
sshpassupload
echo "file upload end-ok………………"
exit 0

remoterestartjboss.sh实现远程服务器重启:

#!/bin/sh
echo "jboss restart start………………"
#获取jboss服务器的连接信息ip,user,pass
IP=$1
userx=$2
passx=$3
#获取jboss服务器的/bin目录
jbossbindir=$4
sshpass -p $passx ssh -tt -o StrictHostKeyChecking=no $userx@$IP <<jbossrestart
cd $jbossbindir
sudo -u jboss5 ./shutdown.sh
sudo -u jboss5 ./start.sh
exit
jbossrestart
echo "jboss restart ok………………"
exit 0

实现了,备份、上传、重启的功能,但做了三次对服务器的连接断开!

 

 



 

目录
相关文章
|
8天前
|
运维 监控 Linux
推荐几个不错的 Linux 服务器管理工具
推荐几个不错的 Linux 服务器管理工具
W9
|
2月前
|
运维 关系型数据库 MySQL
轻松管理Linux服务器的5个优秀管理面板
Websoft9 应用管理平台,github 2k star 开源软件,既有200+的优秀开源软件商店,一键安装。又有可视化的Linux管理面板,文件、数据库、ssl证书方便快捷管理。
W9
114 1
|
2月前
|
缓存 Ubuntu Linux
Linux环境下测试服务器的DDR5内存性能
通过使用 `memtester`和 `sysbench`等工具,可以有效地测试Linux环境下服务器的DDR5内存性能。这些工具不仅可以评估内存的读写速度,还可以检测内存中的潜在问题,帮助确保系统的稳定性和性能。通过合理配置和使用这些工具,系统管理员可以深入了解服务器内存的性能状况,为系统优化提供数据支持。
49 4
|
2月前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
2月前
|
运维 监控 Linux
服务器管理面板大盘点: 8款开源面板助你轻松管理Linux服务器
在数字化时代,服务器作为数据存储和计算的核心设备,其管理效率与安全性直接关系到业务的稳定性和可持续发展。随着技术的不断进步,开源社区涌现出众多服务器管理面板,这些工具以其强大的功能、灵活的配置和友好的用户界面,极大地简化了Linux服务器的管理工作。本文将详细介绍8款开源的服务器管理面板,包括Websoft9、宝塔、cPanel、1Panel等,旨在帮助运维人员更好地选择和使用这些工具,提升服务器管理效率。
|
1月前
|
存储 Oracle 安全
服务器数据恢复—LINUX系统删除/格式化的数据恢复流程
Linux操作系统是世界上流行的操作系统之一,被广泛用于服务器、个人电脑、移动设备和嵌入式系统。Linux系统下数据被误删除或者误格式化的问题非常普遍。下面北亚企安数据恢复工程师简单聊一下基于linux的文件系统(EXT2/EXT3/EXT4/Reiserfs/Xfs) 下删除或者格式化的数据恢复流程和可行性。
|
2月前
|
安全 Linux API
Linux服务器安全
人们常误认为服务器因存于数据中心且数据持续使用而无需加密。然而,当驱动器需维修或处理时,加密显得尤为重要,以防止数据泄露。Linux虽有dm-crypt和LUKS等内置加密技术,但在集中管理、根卷加密及合规性等方面仍存不足。企业应选择具备强大验证、简单加密擦除及集中管理等功能的解决方案,以弥补这些缺口。
32 0
|
2月前
|
监控 Ubuntu Linux
使用VSCode通过SSH远程登录阿里云Linux服务器异常崩溃
通过 VSCode 的 Remote - SSH 插件远程连接阿里云 Ubuntu 22 服务器时,会因高 CPU 使用率导致连接断开。经排查发现,VSCode 连接根目录 ".." 时会频繁调用"rg"(ripgrep)进行文件搜索,导致 CPU 负载过高。解决方法是将连接目录改为"root"(或其他具体的路径),避免不必要的文件检索,从而恢复正常连接。
|
3月前
|
弹性计算 Linux 数据库
阿里云国际版如何迁移Linux云服务器系统盘中的数据
阿里云国际版如何迁移Linux云服务器系统盘中的数据

热门文章

最新文章