smbldap-groupCopy copiar grupos de user1 para user2
Publicado por Wesley Henrique Leite (última atualização em 27/03/2012)
[ Hits: 4.243 ]
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
Comparando conteúdo de pastas...
Script de controle do serviço TFTP
Atualizar o Firefox do Linux Educacional 3
Nenhum comentário foi encontrado.
Instalar e Configurar o Slackware Linux em 2025
Como configurar os repositórios do apt no Debian 12 em 2025
Passkeys: A Evolução da Autenticação Digital
Instalação de distro Linux em computadores, netbooks, etc, em rede com o Clonezilla
Configurando o Conky para iniciar corretamente no sistema
3 configurações básicas que podem melhorar muito a sua edição pelo editor nano
Como colorir os logs do terminal com ccze
Instalação Microsoft Edge no Linux Mint 22
Como configurar posicionamento e movimento de janelas no Lubuntu (Openbox) com atalhos de teclado
Suporte a Markdown ou BBCODE para o VOL (3)
Ubuntu 24 [ Wireless sendo atacada ] (9)
Como atribuir corretamente o CNES final baseado nas regras de certific... (2)