每周定时备份linux 文件内容 到 远端主机

find . -name $LSNRNAME.log.[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].gz -mtime +$CLEAN_DAYS -exec rm {} ; 2>/dev/null

TODAY=`date +%Y%m%d`

CUT_FILE=${LOG_FILE}.${TODAY}


find ./ -mtime +20 -name ‘’*.tar.gz‘’ -exec rm -rf {} rm -rf {} ;
含义:删除改文件夹下超过20天的文件(天数可以根据条件来决定。)


https://www.xslds.com/post/15.html

例子2:

每周星期天早上五点执行

0 5 * * sun root command

* 23 * * 1-6 root ls
每周的周一到周六二十三点以root执行ls命令

mkdir /usr/local/zabbix/orabbix/zabconfbak

cd /backup/script/
mkdir bakzab
cd /backup/script/bakzab
vi bakzab.sh

##the purpos is backup file
PATH=/usr/local/bin:/usr/bin:$PATH:.
export $PATH
back_dir=/usr/local/zabbix/orabbix/zabconfbak
TODAY=`date +%Y%m%d`


cd /usr/local/zabbix/orabbix/conf
cp query.props /usr/local/zabbix/orabbix/zabconfbak/query_${TODAY}.props
#cp query_dg.props /usr/local/zabbix/orabbix/zabconfbak/query_dg_`date -d "today" +"%Y%m%d_%H%M%S"`.props
cp query_dg.props /usr/local/zabbix/orabbix/zabconfbak/query_dg_${TODAY}.props

##clean 200day old file
cd $back_dir
find $back_dir -mtime +200 -name "query_[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].props" -exec rm {} ;
find $back_dir -mtime +200 -name "query_dg_[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9].props" -exec rm {} ;
##end


crontab -e
###backup orabbix config to /usr/local/zabbix/orabbix/zabconfbak
40 17 * * 1 sh /backup/script/bakzab/bakzab.sh > /tmp/bakzab.log


sample 2:

cd /backup
cd script
cd /backup/script
vi bak.sh

##the purpos is backup file
PATH=/usr/local/bin:/usr/bin:$PATH:.
export $PATH
back_dir=/usr/local/zabbix/orabbix/zabconfbak
TODAY=`date +%Y%m%d`


##for oracle crontab
scp /crbank/scripts/v1/passwd/passwd.sh cradmin@yum-server:/dbsoft/bak/oracle
scp /crbank/scripts/v1/tablespace/tablespace.sh cradmin@yum-server:/dbsoft/bak/oracle
scp /crbank/scripts/v1/shell/del_arc.sh cradmin@yum-server:/dbsoft/bak/oracle
scp /crbank/scripts/v1/tablespace/tablespace_est.sh cradmin@yum-server:/dbsoft/bak/oracle
scp /crbank/scripts/v1/perl/my_to_oracle/* cradmin@yum-server:/dbsoft/bak/oracle/my_to_oracle
scp /crbank/scripts/tools/dg_checking/* cradmin@yum-server:/dbsoft/bak/oracle/dg_checking
scp /crbank/scripts/tools/db_parameter_checking/script/* cradmin@yum-server:/dbsoft/bak/oracle/db_parameter_checking


##for root crontab
scp /backup/python/mysql_table.sh cradmin@yum-server:/dbsoft/bak/cradmin
scp /backup/python/oracle_topsql.sh cradmin@yum-server:/dbsoft/bak/cradmin

###backup shell to 56.18.99.206 /dbsoft/bak
40 17 * * 1 sh /backup/script/bak.sh > /tmp/bak.log


mkdir /dbsoft/bak/oracle/db_parameter_checking
mkdir /dbsoft/bak/oracle/dg_checking

linux 自动定时备份文件夹及备份脚本实例
李梅 5年前 (2015-11-02) 分类:Linux 阅读(18834) 评论(0)

为了防止数据意外丢失,特别是不可避免的灾难,让让linux系统定时备份文件目录是个不错的方案,本文我们来谈谈阿里云linux服务器定时备份的步骤。
服务器:阿里云

需求:对www目录,每天凌晨1点执行备份,以当天日期命名文件夹


在 alidata 文件夹里建立 wwwbak 目录 和 bakwww.sh 文件,操作如下:

新建 wwwbak 文件夹,执行如下命令:
# mkdir wwwbak
# chmod -R 777 wwwbak

再新建 bakwww.sh 的文件,执行如下命令
# vi bakwww.sh

文件内容如下:
cp -af /alidata/www/ /alidata/wwwbak/$(date -d "today" +"%Y%m%d_%H%M%S")/

此行含义: 将 /alidata/www/ 复制到 /alidata/wwwbak/ 目录下, 并以当前日期命名文件夹的名称


按Esc 输入 :wq 保存

让 bakwww.sh 有执行的权限,执行如下命令:
# chmod -R 777 bakwww.sh


--------------------------------------------


切换到 etc 目录,执行如下命令:
# vi crontab

在最后一行输入:
0 1 * * * root /alidata/bakwww.sh

此行含义: 每天凌晨1点执行 bakwww.sh 文件


最后重启crontab服务
# service crond restart

到这里就结束了.


以上要注意的是: bakwww.sh 文件一定要有执行的权限!

LINUX 自动备份脚本文件

首先我在/root/backup 目录下建立一个文件夹,

  #mkdir /root/backup/mysqlbackup

  以后在每天五点钟,就会有一个文件保存在这里.

  接着新建文件

  #vim /root/mysqlautobak

  输入:

  filename=` date +%Y%m%d `

  mysqldump --all-databases -uroot -p(mysql密码)> /root/backup/mysqlbackup/mysql$file.sql

  

  保存退出!

  让它可以执行

  #chomd +X /root/mysqlautobak

  接着开始完crontab了

  #vi /etc/crontab

  

  添加一行

  

  01 5 * * * root /root/mysqlautobak

  保存退出.

  重新启动你的crond服务进程

  # /etc/rc.d/init.d/crond restart

原文地址:https://www.cnblogs.com/feiyun8616/p/13049074.html