schizoid писал(а):покажите скрипт и шапку крона
в шапке crontab
Код: Выделить всё
# /etc/crontab - root's crontab for FreeBSD
#
# $FreeBSD: src/etc/crontab,v 1.32 2002/11/22 16:13:39 tom Exp $
#
SHELL=/bin/sh
PATH=/etc:/bin:/sbin:/usr/bin:/usr/sbin
HOME=/var/log
#
#minute hour mday month wday who command
#
*/5 * * * * root /usr/libexec/atrun
#
# Save some entropy so that /dev/random can re-seed on boot.
*/11 * * * * operator /usr/libexec/save-entropy
#
# Rotate log files every hour, if necessary.
0 * * * * root newsyslog
#
# Perform daily/weekly/monthly maintenance.
1 3 * * * root periodic daily
15 4 * * 6 root periodic weekly
30 5 1 * * root periodic monthly
#
# Adjust the time zone if the CMOS clock keeps local time, as opposed to
# UTC time. See adjkerntz(8) for details.
1,31 0-5 * * * root adjkerntz -a
* * * * * root /usr/local/directadmin/dataskq
2 0-23/6 * * * root echo 'action=vacation&value=all' >> /usr/local/directadmin/data/task.queue;
5 0 * * * root /usr/sbin/quotaoff -a; /sbin/quotacheck -aug; /usr/sbin/quotaon -a;
30 0 * * * root echo 'action=tally&value=all' >> /usr/local/directadmin/data/task.queue
40 1 1 * * root echo 'action=reset&value=all' >> /usr/local/directadmin/data/task.queue
0 4 * * * root echo 'action=check&value=license' >> /usr/local/directadmin/data/task.queue
0 4 * * * root /usr/local/tools/backup/backup.daily.sh
код скрипта backup_daily.sh (путь к нему /usr/local/tools/backup/backup.daily.sh)
Код: Выделить всё
#!/bin/sh
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
###
### (c) tutorial.ru / nmind / konstantin kalachev
### -== look for more tutorials in Russian on http://tutorial.ru ==-
###
### date: 2006.03.22
###
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
BACKUP_ROOT=/backup
SCRIPT_ROOT=/usr/local/tools/backup
rm -rf ${BACKUP_ROOT}/*
sh ${SCRIPT_ROOT}/backup_list.sh /home/mysql ${BACKUP_ROOT}/mysql_data
sh ${SCRIPT_ROOT}/backup_single.sh /home/admin/domains/site.ru/public_html ${BACKUP_ROOT}/site_backup
код скрипта backup_list.sh
Код: Выделить всё
#!/bin/sh
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
###
### (c) tutorial.ru / nmind / konstantin kalachev
### -== look for more tutorials in Russian on http://tutorial.ru ==-
###
### date: 2006.03.22
###
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
DATE=`date +%Y.%m.%d`
TIME=`date "+%H.%M.%S"`
SOURCE_DIR=$1
BACKUP_MAIN_DIR=$2
BACKUP_DIR=$2/${DATE}
EXCLUDE_FILE=/usr/local/tools/backup/exclude.txt
mkdir -p ${BACKUP_DIR}
cd ${SOURCE_DIR}
FILE_LIST=`ls -1 .`
for FILE in ${FILE_LIST}; do
echo ${BACKUP_DIR}/${DATE}-${TIME}.${FILE}.tar.gz
tar -X ${EXCLUDE_FILE} -czf ${BACKUP_DIR}/${DATE}-${TIME}-${FILE}.tar.gz ${SOURCE_DIR}/${FILE}
done
код скрипта backup_single.sh
Код: Выделить всё
#!/bin/sh
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
###
### (c) tutorial.ru / nmind / konstantin kalachev
### -== look for more tutorials in Russian on http://tutorial.ru ==-
###
### date: 2006.03.22
###
### # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # # ###
DATE=`date +%Y.%m.%d`
TIME=`date "+%H.%M.%S"`
SOURCE_DIR=$1
BACKUP_MAIN_DIR=$2
BACKUP_DIR=$2/${DATE}
EXCLUDE_FILE=/usr/local/tools/backup/exclude.txt
mkdir -p ${BACKUP_DIR}
echo ${BACKUP_DIR}/${DATE}-${TIME}.tar.gz
tar -X ${EXCLUDE_FILE} -czf ${BACKUP_DIR}/${DATE}-${TIME}.tar.gz ${SOURCE_DIR}
в файле exclude.txt описаны пути к подкаталогам, кот. не надо архивировать