1.nginx日志切割
vi /var/log/nginx/cut_nginx_log.sh #!/bin/bash date=$(date +%F -d -1day) cd /var/log/nginx/ if [ ! -d cut ] ; then mkdir cut fi mv access.log cut/access_$(date +%F -d -1day).log mv error.log cut/error_$(date +%F -d -1day).log /usr/sbin/nginx -s reload tar -jcvf cut/$date.tar.bz2 cut/* rm -rf cut/access* && rm -rf cut/error* find -type f -mtime +10 | xargs rm -rf 计划任务加入开机计划任务 cat >>/var/spool/cron/root<<eof 00 00 * * * /bin/sh /var/log/nginx/cut_nginx_log.sh >/dev/null 2>&1 Eof chmod a+x /var/log/nginx/cut_nginx_log.sh 不记录不需要的访问日志 location ~ .*\.(js|jpg|JPG|jpeg|JPEG|css|bmp|gif|GIF)$ { access_log off; } 3. 设置访问日志的权限 chown -R root.root /var/log/nginx chmod -R 700 /var/log/nginx
2.数据库备份脚本记录
vim /etc/my.cnf 最后写入一下内容 [mysqldump] user=root password=123456 vi databackup.sh cat databackup.sh #!/bin/bash export LANG=en_US.UTF-8 savedir=/var/backup/ cd "$savedir" time="$(date +"%Y-%m-%d")" mysqldump -A > all-"$time".sql scp all-"$time".sql root@192.168.42.251:/opt/backup/ && rm -rf all-*
数据库上创建导出数据库的文件夹
chmod 700 databackup.sh
mkdir /var/backup
监控主机上创建备份文件夹
mkdir /opt/backup
3.网站程序备份
cat webbak.sh #!/bin/bash time="$(date +"%Y-%m-%d")" tar -zcf /root/web-"$time".tar.gz /wwwdir scp /root/web-* root@192.168.42.251:/opt/backup && rm -rf web-* [root@nfs65 ~]# chmod 700 webbak.sh [root@nfs65 ~]# sh webbak.sh tar: Removing leading `/' from member names web-2018-10-30.tar.gz
启动任务开启
crontab -e
30 * * * * /usr/sbin/ntpdate time.nuri.net
0 3 * * * /root/webbak.sh