smbldap-groupCopy copiar grupos de user1 para user2
Publicado por Wesley Henrique Leite (última atualização em 27/03/2012)
[ Hits: 4.228 ]
Sua função é copiar todos os grupos de um usuário para outro, utilizando os recursos do pacote de ferramentas smbldap-tools.
Modo de Usar:
# smbldap-groupCopy wleite jalmeida
Copiará todos os grupos do user wleite para o user jalmeida retirando apenas o grupo "Domain Users" da lista, se segue o padrão verá que este grupo é comum a todos os users criados.
#/bin/bash # # autor: Wesley Henrique Leite # : wesleyhenrique [ - ] gmail [ ' ] com # GRUPOCOPI=$(which smbldap-groupmod) USERLIST=$(which smbldap-userlist) # # O SCRIPT NECESSITA DE PELOMENOS 2 PARAMETROS # ESTE IF CHECA EXATAMENTE ISSO, SE NAO FOR # IGUAL A 2 IMPRIMIR MODO DE USAR E SAI. # if [ $# -ne 2 ] then printf "Modo de usar\n $0 <DE> <PARA>\n\n EX::: \n $0 wleite jalmeida \n " exit fi if [ -z "$GRUPOCOPI" ] || [ -z "$USERLIST" ] then exit fi # # O SINAL DE "!" SERVER PARA NEGAR UMA CONDICAO, O -z CHECAR SE O RETORNO DO COMANDO # SERÁ VAZIO, JUNTANDO TUDO, SE NAO FOR VAZIO O RETORNO DO COMANDO 1 E (&&) SE NAO FOR VAZIO # O RETORNO DO COMANDO 2 , AMBOS OS USUÁRIOS ESTÃO NA BASE # if [ ! -z "$( $USERLIST | awk '{print $3}' | grep "^$2$" )" ] && [ ! -z "$( $USERLIST | awk '{print $3}' | grep "^$1$" )" ] then # O NOME DOS USUÁRIOS DEVEM SER DIGITADOS EXATAMENTE COMO ESTÃO NA BASE O grep IRÁ CHECAR # A ENTRADA QUE INICIE E TERMINE COMO OS DADOS DIGITADOS. # # O FOR EH BEM SIMPLES, ARMAZENA NA VARIAVEL Grupo A LISTAGEM DE GRUPOS DO USUARIO # INFORMADO NO PRIMEIRO PARAMETRO "$1", O cut LIMPA A STRING DEIXANDO SOMENTE O # NOME DOS GRUPOS O grep ELIMINA O GRUPO "Domain Users", POIS, ESTE É COMUM A TODOS # OS USUÁRIOS DA BASE DO LDAP, POR FIM ADICIONA GRUPO A GRUPO AO USUÁRIO PASSADO # NO SEGUNDO PARAMETRO "$2". # for Grupo in $( getent group | grep $1 | cut -d: -f1 | grep -v "Domain Users" ) do # # getent EH UM PROGRAMA SIMPLES QUE CAPTURA AS ENTRADAS NA BASE ADIMINISTRATIVA DO SISTEMA # MINHA LISTA DO LDAP SURGE GRACAS AO /etc/nsswitch.conf QUE SERVER PARA ORDERNAR # AS CONSULTAS NA BASE, E NELE TENHO O LDAP. # passwd: files ldap # group: files ldap # EXISTEM DIVERSAS OUTRAS, UTILIZE O MAN PAGE PARA CHECAR. # $GRUPOCOPI -m $2 $Grupo done else # # IMPRIMIR USUARIO's NAO ECONTRADO's # if [ -z "$($USERLIST | grep $1 )" ] then echo "[ NAO ENCONTRADO ] -> $1 " elif [ -z "$($USERLIST | grep $2 )" ] then echo "[ NAO ENCONTRADO ] -> $2 " fi fi
Script de instalação de pacotes
Iptables com nat, prioridade de pacotes e bloqueio de portas
Nenhum comentário foi encontrado.
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Título: Descobrindo o IP externo da VPN no Linux
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Máquinas Virtuais com IP estático acessando Internet no Virtualbox
Instalar o Microsoft Edge no Slackware 15
Instalando Brave Browser no Linux Mint 22
vídeo pra quem quer saber como funciona Proteção de Memória:
warsaw parou de funcionar após atualização do sistema (solução) (0)
Formatando cartão de memoria que nao formata[AJUDA] (13)
Desde que seja DDR3, posso colocar qualquer memória? [RESOLVIDO] (6)
crontab executar em tempos (1)
Programa duplicado no "Abrir com" e na barra de pesquisa do ... (3)