Adiciona usuário e máquinas PDC samba
Publicado por Rogério Tomassoni 01/05/2009
[ Hits: 10.127 ]
Homepage: www.my.opera.com/tomassoni
Script para manipulação de contas de usuário e máquina no Linux mais Samba como PDC.
Testado no Red Hat el5 instalação default.
#!/bin/bash
# Script para adicionar usuarios e máquinas no Samba ( PDC ).
# Rogério Tomassoni
clear
userAdd (){
echo -ne " Nome de usuario: "
read userName
if [ -z $userName ]; then
echo -e "{FONTE}33[40;32mNao e permitido nome em branco.{FONTE}33[m"
sleep 2
menu
fi
echo -ne " Login do usuario: "
read userLogin
if [ -z $userLogin ]; then
echo -e "{FONTE}33[40;32mNao e permitido login em branco.{FONTE}33[m"
sleep 2
menu
fi
echo -e " Qual grupo o usuário pertence? "
echo -ne " Listar grupos ? (s/n) -> "
read opListGrupo
if [ $opListGrupo = "s" ]; then
listGrupos
fi
echo -ne "{FONTE}33[40;32mGrupo: {FONTE}33[m"
read nameGrp
if [ -z $nameGrp ]; then
echo -e "{FONTE}33[40;32mNao foi informado um grupo.{FONTE}33[m"
sleep 2
menu
else
echo -ne " Adicionando usuario "$userName" no sistema e no grupo "$nameGrp"... \n"
/usr/sbin/useradd -g $nameGrp -c $userName $userLogin
sleep 1
echo -ne " Adicionando usuario no SAMBA \n"
smbpasswd -a $userLogin
sleep 1
echo -ne " Criando arvore de diretorios e profile do usuario "$userName"... \n"
sleep 1
mkdir /home/profiles/$userName
sleep 1
chown -Rf $userName.$nameGrp /home/profiles/$userName
echo -e "{FONTE}33[40;32mUsuario "$userName" adicionado com sucesso.{FONTE}33[m"
fi
menu
}
pcAdd () {
echo -ne " Nome do computador: "
read pcName
if [ -z pcName ]; then
echo -e "{FONTE}33[40;32mNao foi informado um nome.{FONTE}33[m"
sleep 2
menu
else
echo -ne " Adicionando maquina "$pcName" no sistema ...\n"
useradd -g maquinas -d /dev/null -m -s /bin/false $pcName"$"
passwd -l $pcName"$"
echo -ne " Adicionando maquina "$pcName" no SAMBA ...\n"
smbpasswd -a -m $pcName
sleep 1
echo -ne "Maquina "$pcName" adicionada com sucesso ...\n"
fi
menu
}
listGrupos (){
echo -e "{FONTE}33[40;32mGrupos existentes.{FONTE}33[m"
cat /etc/group | awk 'BEGIN{ FS=":" } { if ($3 >= 500 && $3 != 65534) printf $1 "\t"}' | sort
echo -e ""
echo -ne "{FONTE}33[40;32mGrupo: {FONTE}33[m"
}
menu()
{
clear
echo -ne " {FONTE}33[40;32mAdministrar usuários\n{FONTE}33[m"
echo -ne " 1 - Adicionar usuarios \n"
echo -ne " 2 - Adicionar maquinas ( Win2k/Xp/2k3 ) \n"
echo -ne " 3 - Sair \n"
echo -ne " -> "
read opcao
case $opcao in
1) userAdd
;;
2) pcAdd
;;
3) clear; exit 1
;;
*) echo -ne "Opcao INVALIDA."
Menu
;;
esac
}
menu
Instalação de programas no Ubuntu Linux
Acesse seus host por vncviewer
Firewall simples para desktops
Nenhum comentário foi encontrado.
Trabalhando Nativamente com Logs no Linux
Jogando Daikatana (Steam) com Patch 1.3 via Luxtorpeda no Linux
LazyDocker – Interface de Usuário em Tempo Real para o Docker
Linux Mint: Zram + Swapfile em Btrfs
O widget do Plasma 6 Área de Notificação
Quando vocês pararam de testar distros? (16)
Quero instalar, configurar, setar tamanho do rsyslog. (5)









