加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

[Linux] PHP程序员玩转Linux系列-自动备份与SVN

发布时间:2020-12-15 07:19:26 所属栏目:安全 来源:网络整理
导读:我的代码经常在开发修改,为了代码的安全性,比如哪天误删了文件,或者哪天改错东西了,可以恢复回来,我要搞代码备份.备份代码,我先做最简单的,使用linux的定时机制加shell命令打包文件,每天按日期保存,保存最近7天的备份. 前期准备的命令 date命令,打印当前系统

我的代码经常在开发修改,为了代码的安全性,比如哪天误删了文件,或者哪天改错东西了,可以恢复回来,我要搞代码备份.备份代码,我先做最简单的,使用linux的定时机制加shell命令打包文件,每天按日期保存,保存最近7天的备份.

前期准备的命令

date命令,打印当前系统时间,加个参数+%F,打印格式化的全日期,date +%F. 命令替换符``,获取到里面命令的返回值.

字符串中使用变量${变量名},例如echo "hi ${name}"

打包命令tar -czf 包名称 *,c是create创建,z是gzip压缩,f是file使用文件形式,例如: tar -czf 1.tar.gz * 把当前目录的所有文件打包到1.tar.gz中

解压命令tar -xf 包名称,x是extract提取,例如:?tar -xf 1.tar.gz?

查找命令find / -mtime +10?-exec rm {} ; mtime是?modified time修改时间,单位是天,+10是10天以前;-exec是执行命令,-exec 命令 {} ;大括号会被当前查找的结果替换,是固定的转义用的.例如:?find /root -mtime +10 -exec wc -l {} ; 统计10天前文件的行数

最终的脚本

开启定时

编辑/etc/crontab文件

?*/1 * * * * root sh /root/shell/backup.sh ?

分钟 小时 天 月 周几 用户 命令,*/是每的意思

搭建SVN服务端

现在代码可以按时自己打包保存一份,都是全部代码一块备份,现在我要搭建SVN服务器,可以按修改版本保留代码,更加智能化.

安装?svn,使用命令,一句话?yum install subversion.

安装完成以后需要创建一个代码仓库,使用这个命令svnadmin create svnrepos/ 会在当前目录创建一个svnrepos的目录,这个就是仓库的目录.

配置SVN

仓库建好了,现在去配置svn的用户,进入到svnrepos/conf/目录,这里有三个配置文件authz,passwd,svnserve.conf

1.配置svnserve.conf

authz-db = authz

password-db = passwd

按字面意思理解吧,应该是开启验证使用这两个文件

2.配置authz

一组用户,这组用户可以读写[groups]svn_users=shihan1,shihan2[/]@svn_users= rw

3.配置passwd

这个是配置密码

[users]shihan1=aaabbbcccshihan2=aaabbb

开启SVN服务

使用命令svnserve -d -r?svnrepos/ ?-d是后台服务 ?-r是使用目录

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读