Skip to content
Snippets Groups Projects
Commit 3fabc98a authored by Thiago Abdo's avatar Thiago Abdo
Browse files

Add skeleton to adduser


Signed-off-by: default avatarThiago Abdo <tja14@inf.ufpr.br>
parent 26610c6d
No related branches found
No related tags found
No related merge requests found
hdd/adduser.sh 100644 → 100755
......@@ -17,44 +17,97 @@
# 21 Tentar adicionar usuario no range do servidor sem flag
# 22 Tentar sobreescrever usuario de servidor
# 22 Tentar sobreescrever usuario global ou do sistema
# 23 Usuario de servidor ja existe
# 24 Tenta adicionar usuario com a flag de servidor mas fora da range
# 31 Usuario local ja existe
# 32 Usuario local fora do range do local_accounts
# 41 Usuario de pendrive nao valido
add (){
#checa se nao exite usuario com mesmo id
#checa se nao existe usuario com mesmo nome
#checa se nao existe grupo com mesmo id
#checa se nao existe grupo com mesmo nome
#adiciona no passwd
#cria home
#copia home-exemplo
#chown na home inteira
}
#This script can only be executed by a root/sudoer user
#if [ ("$(usr/bin/id -r -u 0)" != "0") ]; then
#echo $0 ": Você não possue as permissoes necessárias para realizar essa operação"
#exit ?
#fi
#if server_user
#if flag_server
#add
#exit 0
#fi
#fi
#if local_user
#if unique
#add
#exit 0
#fi
#fi
#if pen_user
#if is valid(range de id certo)
#if !unique
#removes other
#fi
#add
#exit 0
#fi
if [ ("$(usr/bin/id -r -u 0)" != "0") ]; then
echo $0": Você não possue as permissoes necessárias para realizar essa operação"
exit ?
fi
passwd=$1
group=$2
shadow=$3
globalFlag=$4
username=$( echo $passwd | cut -d':' -f1 )
uID=$( echo $passwd | cut -d':' -f3 )
globalID=$( echo $uID | grep -e "^3....$" )
localID=$( echo $uID | grep -e "^2....$" -e "^1....$" )
#globalUser
#if not(globalFlag) && globalID
if [ "$globalFlag" != "global" ] && [ -n "$globalID" ]; then
exit 21
fi
#if globalFlag && not(globalID)
if [ "$globalFlag" = "global" ] && [ -z "$globalID" ]; then
exit 24
fi
#if globalFlag && globalID
if [ "$globalFlag" = "global" ] && [ -n "$globalID" ]; then
#add user global
echo $0": Usuário global adicionado corretamente"
exit 0
fi
#Uma vez que não possui id global, se nao possuir id local esta fora do range
if [ -z "$localID" ]; then
echo $0": Usuario fora do range do local accounts"
exit 32
fi
#See if exist the username that we are tryng to add with non local ID
checkNotLocalName=$( cat /etc/passwd | cut -d':' -f1,3 | grep -v -e ":2....$" -e ":1....$" | grep -e "^$username:" )
if [ -z "$checkNotLocalName" ]; then
echo $0": Usuario não local com mesmo username"
exit 22
fi
checkName=$( cat /etc/passwd | cut -d':' -f1-3 | grep -e "^$username:" )
if [ -z "$checkName" ]; then
echo $0": econtrei outro usuario local com o mesmo nome, devo remove-lo"
fi
checkID=$( cat /etc/passwd | cut -d':' -f1-3 | grep -e ":$uID$" )
if [ -z "$checkID" ]; then
echo $0": entrei outro usuario local com o mesmo id, devo remove-lo"
fi
#adicionar verificacao de nome e id para group?
#add local user
echo $0": Usuario local adicionado corretamente"
exit 0
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment