forked from team/makeuser
60 lines
1.2 KiB
Bash
60 lines
1.2 KiB
Bash
#!/bin/bash
|
|
#Common functions used for several makeuser scripts
|
|
|
|
error_exit() {
|
|
echo -e "${PROGNAME}: ${1:-"Unknown Error"}" >&2
|
|
exit 1
|
|
}
|
|
|
|
usage() {
|
|
echo -e "usage: $PROGNAME [-h|--help] <username> <email> <pubkey>"
|
|
}
|
|
|
|
sub_to_list() {
|
|
echo "From: $1 Subject: subscribe" | sudo -u $1 mail $LIST_NAME
|
|
}
|
|
|
|
remove_user()
|
|
{
|
|
echo "Unsubscribe from this list..."
|
|
echo "From: $1 Subject: unsubscribe " | sudo -u $1 mail $LIST_NAME
|
|
|
|
echo "Deleting account from system..."
|
|
sudo userdel $1
|
|
sudo rm -rf /home/$1
|
|
|
|
echo "User $1 removed from system." | sudo mail -s "User Account $1 removed from Thunix" $ADMIN_EMAIL
|
|
}
|
|
|
|
backup_user_data()
|
|
{
|
|
echo "Archiving home dir..."
|
|
sudo tar cfz $BACKUP_USER_DATA/$1.tgz /home/$1
|
|
}
|
|
|
|
#Common functions used for Databases management scripts
|
|
|
|
database_create()
|
|
{
|
|
sudo mysql -u root << _EOF
|
|
CREATE DATABASE $DATABASE;
|
|
GRANT ALL PRIVILEGES ON $DATABASE.* TO '$USER'@'localhost' IDENTIFIED BY '$PASSWORD';
|
|
FLUSH PRIVILEGES;
|
|
_EOF
|
|
}
|
|
|
|
database_backup()
|
|
{
|
|
sudo mysqldump -u root $DATABASE | gzip > /tmp/$DATABASE.sql.gz
|
|
sudo mv /tmp/$DATABASE.sql.gz $BACKUP_USER_DATA/
|
|
}
|
|
|
|
database_remove()
|
|
{
|
|
sudo mysql -u root << _EOF
|
|
DROP DATABASE $DATABASE;
|
|
REVOKE ALL PRIVILEGES ON $DATABASE.* FROM '$USER'@'localhost';
|
|
FLUSH PRIVILEGES;
|
|
_EOF
|
|
}
|