Commit 7ca01f96 authored by Vitaly Lipatov's avatar Vitaly Lipatov

add rooter/add_group.sh

parent 902f3a4a
#!/bin/sh
# Добавляет пользователя на указанном хосте и копирует ему ключ.
# Если указан ID контейнера, то добавляет внутри указанного контейнера
# Args; username host [VEID | -l]
docmd()
{
echo "\$ $@"
"$@"
}
fatal()
{
echo -e "Error: $@" >&2
exit 1
}
USERNAME=$1
HOST=$2
VEID=$3
GROUP=$4
Help="Usage: $0 USERNAME HOST {VEID | -l} GROUP\nHOST - from yours ssh alias\nVEID - container ID or 0 for host system"
if [ "$USERNAME" = "-h" ]; then
echo -e "$Help"
exit
fi
if [ -z "$USERNAME" ] || [ -z "$HOST" ] || [ -z "$VEID" ]; then
fatal "$Help"
fi
ssh $HOST echo || fatal "Host $HOST is not sshed"
SUDO=
[ "$UID" = 0 ] || SUDO="sudo"
HOSTSUDO=$SUDO
SSHOPT=""
HSSH=/home/$USERNAME/.ssh
add_group_cmd()
{
echo "$SUDO usermod $USERNAME -a -G $GROUP"
}
# copy key in host system
if [ -z "$VEID" ] || [ "$VEID" = 0 ] ; then
# FIXME: не работает на CentOS
docmd ssh $SSHOPT $HOST "$(add_group_cmd)"
exit
fi
SUDO=
ssh $SSHOPT $HOST "$HOSTSUDO vzctl exec $VEID \"$(add_group_cmd)\""
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment