kojeg ide default route, a ako isti nije definiran, vraca CIDR\r
loopback sucelja (lo).\r
.TP\r
-\fBcp_backup_conffile\fR [\fB-n\fR] [\fB-d\fR \fIbackup_dir\fR] \fIfile\fR [\fIbackup_file\fR]\r
+\fBcp_backup_conffile\fR [\fB-n\fR] [[\fB-p\fR] \fB-d\fR \fIbackup_dir\fR] \fIfile\fR [\fIbackup_file\fR]\r
.TP\r
-\fBcp_check_and_backup\fR [\fB-n\fR] [\fB-d\fR \fIbackup_dir\fR] \fIfile\fR [\fIbackup_file\fR]\r
+\fBcp_check_and_backup\fR [\fB-n\fR] [[\fB-p\fR] \fB-d\fR \fIbackup_dir\fR] \fIfile\fR [\fIbackup_file\fR]\r
Funkcije backupiraju datoteku, kopija originala se sprema\r
u /var/backups/ direktorij sa dodanim .bak nastavkom. Po potrebi se vrsi\r
rotacija prethodno spremljenih kopija ako postoje neke razlike. Opcionalni\r
argument \fIbackup_file\fR zamjenuje ime backup datoteke u /var/backups \r
nekim drugim. Opcijom \fB-d\fR se moze podesiti alternativno odrediste, bilo \r
apsolutnom putanjom do zeljenog direktorija ili relativnom unutar /var/backups.\r
+\fB-p\fR ce automatski stvoriti odredisni direktorij ako ne postoji.\r
Opcija \fB-n\fR sprecava dodavanje .bak nastavka. Na primjer:\r
.nf\r
cp_backup_conffile config.php\r
carnet-tools-cn (2.5) sarge; urgency=low
- * Dodane -n i -d <backup_dir> opcije za cp_backup_conffile.
+ * Dodane -n, -p i -d <backup_dir> opcije za cp_backup_conffile.
-- Zoran Dzelajlija <jelly@srce.hr> Fri, 28 Oct 2005 11:54:24 +0200
cp_backup_conffile() {
[ "$CP_SCRIPT_DEBUG" ] && set -vx
- local dir ext file_bak check did
+ local dir ext file_bak check did opt_p opt_d
dir=/var/backups
ext=.bak
shift
check=1
;;
+ -p)
+ shift
+ opt_p=1
-d)
shift
- # is argument to -d full path or relative?
+ opt_d=1
+ # Is argument to -d full path or relative?
if echo "$1" |grep -q '^/'; then
dir="$1"
else
dir="$dir/$1"
fi
shift
- if [ ! -d "$dir" ]; then
- echo "cp_backup_conffile: Invalid backup directory $dir" 1>&2
- return 3
- fi
;;
-n)
shift
ext=
esac
done
+ if [ "$opt_d" ]; then
+ if [ ! -e "$dir" -a "$opt_p" ]; then
+ mkdir "$dir"
+ if [ $? -ne 0 ]; then
+ echo "cp_backup_conffile: Error creating backup directory $dir" 1>&2
+ return 3
+ fi
+ fi
+ if [ ! -d "$dir" ]; then
+ echo "cp_backup_conffile: Invalid backup directory $dir" 1>&2
+ return 3
+ fi
if [ -z "$1" ]; then
return 1
fi