Skip to content

Instantly share code, notes, and snippets.

@mingyu-kwak
Last active June 28, 2016 05:36
Show Gist options
  • Select an option

  • Save mingyu-kwak/619c7ab48e97ee27a769bd5298b20cc1 to your computer and use it in GitHub Desktop.

Select an option

Save mingyu-kwak/619c7ab48e97ee27a769bd5298b20cc1 to your computer and use it in GitHub Desktop.
#!/bin/sh
while [ 1 ]
do
echo "Input command[ 1,2,3,q ]...."
echo "1 ----- Create Group"
echo "2 ----- Create User"
echo "3 ----- Backup User Directory"
echo "4 ----- Auto-backup User Directory everyday at 12:00PM"
echo "q ----- Quit"
read answer
case $answer in
1)
echo "Enter Group Name"
read gname
egrep "^$gname:" /etc/group > /dev/null
if [ $? -eq 0 ]
then
echo "Already exited group name."
continue
fi
gstr="groupadd $gname"
eval $gstr
echo "$gname group added";;
2)
echo "Enter User Name"
read uname
egrep "^$uname:" /etc/passwd > /dev/null
if [ $? -eq 0 ]
then
echo "Already exited user name."
continue
fi
egrep "^$gname:" /etc/group > /dev/null
if [ $? -eq 0 ]
then
ustr="useradd -g $uname $uname"
eval $ustr
else
ustr="useradd $uname"
eval $ustr
fi
echo "$uname user added";;
3)
fname="/home/userbackup/"
if [ ! -e $fname ]
then
mkdir -p /home/userbackup
chmod 777 /home/userbackup
echo "Create Backup Directory!"
fi
echo "Enter User Name to backup"
read dbp
egrep "^$dbp:" /etc/passwd > /dev/null
if [ $? -ne 0 ]
then
echo "User not found"
continue
else
srcdir="/home/$dbp/"
filename=$dbp-$(date +%-Y%-m%-d).tar.gz
tar zcvf $fname$filename $srcdir
fi
ls -l /home/userbackup/
;;
4)
fname="/home/userbackup/"
if [ ! -e $fname ]
then
mkdir -p /home/userbackup
chmod 777 /home/userbackup
echo "Create Backup Directory!"
fi
echo "Enter User Name to auto-backup"
read dbp
egrep "^$dbp:" /etc/passwd > /dev/null
if [ $? -ne 0 ]
then
echo "User not found"
continue
else
srcdir="/home/$dbp/"
filename=$dbp-auto-backup.tar.gz
crontab -lu $dbp >> autobackup.tmp
echo "0 12 * * * tar zcvf $fname$filename $srcdir" >> autobackup.tmp
crontab -u $dbp autobackup.tmp
rm -rf autobackup.tmp
crontab -lu $dbp
fi
;;
q)
echo "BYE!!"
exit 0;;
*)
echo "Commend not found."
esac
done
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment