shell+crontab+gitlab实现ecs服务器文件的web展示

本文涉及的产品
云服务器 ECS,每月免费额度280元 3个月
云服务器ECS,u1 2核4GB 1个月
简介: 本文通过把ecs服务器上的文件定时上传至gitlab,实现文件的页面可视化和修改历史。技术点:shell、crontab、gitlab。

一:实现过程概述
通过在linux系统里配置crontab定时任务,定时执行shell脚本将指定目录的文件上传至gitlab,最后web页面查看文件的历史版本。

# git push file ,add in 20240218 from cupli
*/5 * * * * cd /opt/script  && /bin/bash   git_push_file.sh  >> /tmp/git_push_file.log

二:脚本详情

#!/bin/bash

echo "#####doing in `date "+%Y-%m-%d_%H:%M:%S"` #####################################"

#拉取服务器的配置文件
mkdir -p  /tmp/linshi/2024/from-ecs-task/task001  && cd  /tmp/linshi/2024/from-ecs-task/task001  && scp root@10.0.10.228:/etc/supervisord.d/*.ini  .
mkdir -p  /tmp/linshi/2024/from-ecs-task/task002  && cd  /tmp/linshi/2024/from-ecs-task/task002  && scp root@10.0.10.239:/etc/supervisord.d/*.ini  .
cd /tmp/linshi/2024 &&  rm -rf supervisor

#重新拉取git仓库,记得hosts里改为内网地址
git clone ssh://git@git.iamcup.com:2229/yunwei/supervisor.git && tree

#把服务器的文件覆盖到git目录,并提交。
cd /tmp/linshi/2024/supervisor/ && \cp  -R  ../from-ecs-task/*  .
#git push file 
git status
git config --global user.name "iam-yunwei-script"
git config --global user.email "iam-yunwei-script@notsend.com"
git add .
git add *
git commit -m "iam-yunwei-script update in `date "+%Y-%m-%d_%H:%M:%S"` "
git status
git push origin  main

三:页面展示

通过gitlab的提交记录,可以看到文件的历史版本,达到历史审计的目的。

image.png

相关实践学习
一小时快速掌握 SQL 语法
本实验带您学习SQL的基础语法,快速入门SQL。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
20天前
|
弹性计算 Shell Perl
ecs服务器shell常用脚本练习(二)
【4月更文挑战第1天】shell代码训练(二)
103 1
|
30天前
|
Linux Shell 网络安全
【Shell 命令集合 网络通讯 】Linux 与SMB服务器进行交互 smbclient命令 使用指南
【Shell 命令集合 网络通讯 】Linux 与SMB服务器进行交互 smbclient命令 使用指南
40 1
|
9天前
|
存储 弹性计算 Shell
ecs服务器shell常用脚本练习(十)
【4月更文挑战第11天】shell代码训练(十)
137 0
|
9天前
|
弹性计算 Shell Go
ecs服务器shell常用脚本练习(九)
【4月更文挑战第10天】shell代码训练(八)
126 0
|
13天前
|
弹性计算 Shell Linux
ecs服务器shell常用脚本练习(六)
【4月更文挑战第4天】shell代码训练(六)
108 0
|
18天前
|
弹性计算 Shell 应用服务中间件
ecs服务器shell常用脚本练习(四)
【4月更文挑战第4天】shell代码训练(四)
96 0
|
30天前
|
网络协议 安全 Shell
【Shell 命令集合 系统设置 】Linux 从远程时间服务器获取当前日期和时间 rdate命令 使用指南
【Shell 命令集合 系统设置 】Linux 从远程时间服务器获取当前日期和时间 rdate命令 使用指南
33 0
|
30天前
|
存储 Shell Linux
【Shell 命令集合 系统设置 】Linux定时任务 crontab命令 使用指南
【Shell 命令集合 系统设置 】Linux定时任务 crontab命令 使用指南
35 0
|
30天前
|
Shell Linux 网络安全
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 httpd命令 使用指南
29 0
|
30天前
|
Shell Linux Apache
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
【Shell 命令集合 网络通讯 】Linux 管理Apache HTTP服务器 apachectl命令 使用教程
158 1

热门文章

最新文章