Adiciona usuário e máquinas PDC samba
Publicado por Rogério Tomassoni 01/05/2009
[ Hits: 9.917 ]
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
Comandos e estruturas básicas de shell script
Verificar se um mesmo arquivo está em dois diretórios diferentes
Informações de processador, memória e dispositivos
Nenhum coment�rio foi encontrado.
Atualizando o Passado: Linux no Lenovo G460 em 2025
aaPanel - Um Painel de Hospedagem Gratuito e Poderoso
O macete do Warsaw no Linux Mint e cia
O que você quer para sua vida ao usar o Linux?
Visualizar arquivos em formato markdown (ex.: README.md) pelo terminal
Dando - teoricamente - um gás no Gnome-Shell do Arch Linux
Teclado n~ao escreve abnt2 (2)
Olha que maravilha, Arch no C2D 7400, 2GB de RAM, vídeo onboard e no G... (4)