23 lines
398 B
Bash
23 lines
398 B
Bash
#! /bin/bash
|
|
|
|
|
|
set -eu
|
|
IFS=$'\n\t'
|
|
|
|
[ $UID -eq 0 ] || { echo "need to be root" ; exit 1 ; }
|
|
|
|
if [ $# -lt 1 ] ; then
|
|
echo "missing dir list"
|
|
exit 1
|
|
fi
|
|
|
|
bdir=/var/run/backup_$(date -I)
|
|
|
|
mkdir -p $bdir || exit 2
|
|
|
|
for dir in "$@" ; do
|
|
test -d $dir || { echo $dir dont exists ; continue ; }
|
|
dirname=$(basename $dir)
|
|
tar -cpzf ${bdir}/${dirname}.tgz $dir
|
|
echo $? > /run/${dirname}.status
|
|
done |