1. ls (lista o conteúdo de um diretório)
Exemplo: $ ls
2. ls -a (lista os diretórios, arquivos oculto e executáveis)
Exemplo: $ ls -a
3. ls -l (Lista o conteúdo de um diretório detalhadamente)
Exemplo: $ ls -l
4. pwd (mostra o diretório corrente)
Exemplo: $ pwd
5. cd (muda de diretório)
Exemplo: $ cd /etc
6. cd - (volta para o diretório anterior)
Exemplo: $ cd -
7. cd .. (volta um diretório acima)
Exemplo: $ cd ..
8. cd ~ (volta para seu diretório /home)
Exemplo: $ cd ~
9. mkdir [pasta] (cria uma pasta com o nome desejado)
Exemplo: $ mkdir programas
10. mkdir [pasta1] [pasta2] (cria pasta1 e pasta dois ao mesmo tempo)
Exemplo: $ mkdir teste1 teste2
11. mkdir -p [pasta]/[sub-pasta] (cria um diretório e um sub-diretório)
Exemplo: $ mkdir -p teste3/teste3_1
12. rm -r [pasta/arquivo] (deleta uma pasta ou arquivo)
Exemplo: $ rm -r teste3
13. mv [arquivo1] [arquivo2] (renomeia uma pasta)
Exemplo: $ mv teste teste2
14. mv [arquivo] [caminho] (move o arquivo para um determinado caminho)
Exemplo: $ mv imagem. jpg ~/t4k_slack/Wallpapers
15. cp [arquivo] [caminho] (copia um arquivo para um determinado caminho)
Exemplo: $ cp imagem.jpg ~/t4k_slack/Wallpapers
16. ln -s [caminho] [link] (cria um link)
Exemplo: $ ln -s /usr/bin/limewire limewire
17. type [executável] (busca o caminho de um executável)
Exemplo: $ type limewire
18. cat > [arquivo] (cria novo arquivo)
Exemplo: $ cat > teste.txt
19. cat [arquivo1] >> [arquivo2] (acrescenta arq.2 em arq.1)
Exemplo: $ cat teste1 >> teste2
20. touch [arquivo] (cria um arquivo)
Exemplo: $ touch teste
21. diff [arquivo1] [arquivo2] (compara os dois arquivos)
Exemplo:$ diff teste1 teste2
22. locate [arquivo] (localiza o arquivo desejado]
Exemplo:$ locate albino. jpg
23. head [-linhas] [arquivo] (mostra as primeiras linhas de um arquivo)
Exemplo:$ head -10 texto.txt
23.tail [-linhas] [arquivo] (faz exatamente o contrário do comando anterior)
Exemplo:$ tail -20 texto.txt
24. less [arquivo] (mostra o conteúdo de um diretório)
Exemplo:$ less texto.txt
25. more [arquivo] (mostra o conteúdo de um arquivo)
Exemplo:$ more texto.txt
26. nl [arquivo] (mostra quantas linhas tem no arquivo)
Exemplo:$ nl texto.txt
27. wc [arquivo] (lista número de linhas, palavras e bytes de um arquivo)
Exemplo:$ wc texto.txt
28. [comando1] | [comando2] (conecta dois processos)
Exemplo:$ vi /etc/X11/xorg.conf | more
29. sleep [tempo] && [comando] (executa um comando em um determinado tempo)
Exemplo:$ sleep 2 && pwd
30. echo [mensagem] (exibe uma mensagem em seu shell)
Exemplo:$ echo Olá Mundo
31. alias [comando/atual] [comando_novo] (muda o nome de um comando)
Exemplo:$ alias dir=ls -l
32. history (lista os últimos 500 comandos que você digitou)
Exemplo:$ history
33. su (muda para o super usuário root, precisa da senha)
Exemplo:$ su
34. su [usuário] (muda para outro usuário, também necessita da senha)
Exemplo:$ su fulano
35. shutdown (reinicia o sistema)
Exemplo:$ shutdown
36. reboot (reinicia a máquina com emergência)
Exemplo:$ reboot
37. passwd (troca sua senha)
Exemplo:$ passwd
38. uname (mostra o sistema operacional)
Exemplo:$ uname
39. uname -a (mostra o sistema operacional, nome da máquina, versão do kernel e etc)
Exemplo:$ uname -a
40. dmesg (mostra informações do sistema)
Exemplo:$ dmesg
41. top -d [segundos] (informações detalhadas dos processos)
Exemplo:$ top -d 3
42. ps (mostra os processos corrente "PID")
Exemplo:$ ps
43. killall [programa] (força o término de um programa)
Exemplo:$ killall xmms
44. xkill (transforma o ponteiro do mouse em um assassino de programa)
Exemplo:$ xkill
45. mkfs.ext2 (formata um disquete em formato Linux)
Exemplo:$ mkfs.ext2 /dev/fd0
46. superformat (formata um disquete em formato DOS)
Exemplo:$ superformat /dev/fd0
47. vmstat [-tempo] (mostra a memória swap em uso)
Exemplo:$ vmstat -2
48. arch (mostra a arquitetura do seu PC)
Exemplo:$ arch
49. lsmod (lista os módulos da sua máquina)
Exemplo:$ lsmod
50. insmod [módulo] (levanta um módulo na unha, requer root)
Exemplo:# insmod spca5x
51. adduser (adiciona um usuário no sistema, requer root)
Exemplo:# adduser
52. userdel [usuário] (deleta um usuário, requer root)
Exemplo:# userdel fulano
53. userdel -r [usuário] (deleta o usuário e sua pasta que se encontra no diretório /home,
requer root)
Exemplo:# userdel -r fulano
54. chfn [usuário] (muda informações de um usuário, requer root)
Exemplo:# chfn fulano
55. chage -M [dias] [usuário] (expira um usuário, no dia pré-determinado, requer root)
Exemplo:# chage -M 20 fulano
56. display [imagem.jpg] (mostra uma imagem no X, necessita do ImageMagick)
Exemplo:$ display imagem. jpg
57. convert [imagem.png] [imagem.jpg] (converte o formato .png para . jpg, necessita
também do ImageMagick)
Exemplo:$ convert imagem.png imagem.jpg
58. chmod (altera permissões)
Exemplo:# chmod 666 /dev/hdd
59. mount [device] (monta um dispositivo)
Exemplo:$ mount /mnt/cdrom
60. umount [device] (desmonta um dispositivo)
Exemplo:$ umount /mnt/cdrom
61. eject (abre a gaveta do cd-rom)
Exemplo:$ eject /mnt/cdrom
62. eject -t (fecha a gaveta do cdrom)
Exemplo:$ eject -t /mnt/cdrom
63. halt (desliga o PC)
Exemplo:$ halt
64. date (informa o dia e a hora)
Exemplo:$ date
65. hostname (informa o nome da máquina)
Exemplo:$ hostname
66. du [diretório] (fornece o tamanho de um diretório)
Exemplo:$ du pasta
67. du -S [sub-diretórios] (fornece o tamanho do sub-diretório)
Exemplo:$ du -S sub_pasta
68. [comando] & (inicia um processo em segundo plano e deixa o terminal livre para
trabalhar)
Exemplo:$ gkrellm &
69. cal (mostra um calendário do mês atual)
Exemplo:$ cal
70. cal [ano] (mostra os 12 meses de um determinado ano)
Exemplo:$ cal 2005
71. last [-quantidade] (mostra informações sobre os últimos logins, onde em quantidade
você indica o número de logins)
Exemplo:$ last -10
72. tar -zxvf [arquivo.tar.gz] (descompacta um arquivo em formato .tar.gz)
Exemplo:$ tar -zxvf amsn-0.94.tar.gz
73. tar -jxvf [arquivo .tar.bz2] (descompacta um arquivo no formato .tar.bz2)
Exemplo:$ tar -jxvf gkrellm-0.12.tar.bz2
74. clear (limpa a tela do shell)
Exemplo:$ clear
75. free (mostra detalhes sobre a memória RAM)
Exemplo:$ free
76. time [comando] (mede o tempo gasto para abrir um programa)
Exemplo:$ time limewire
77. uptime (mostra o tempo desde do último boot)
Exemplo:$ uptime
78. lsattr [arquivo/diretório] (lista atributos de um arquivo ou diretório)
Exemplo:$ lsattr arquivo
79. whereis [executável/comando] (localiza o caminho de um executável/comando)
Exemplo:$ whereis limewire
80. who (mostra quem está conectado ao sistema nesse momento)
Exemplo:$ who
81. wget -c [URL] (faz download de arquivo na internet)
Exemplo:$ wget -c http://www.lugar.do.download
82. whoami (mostra quem se logou primeiro no sistema)
Exemplo:$ whoami
Essa dica é simples, mas também é legal para mostrar a força que o pinguim tem em modo
"linha de comando". Às vezes nós queremos ver somente uma foto ou uma imagem e não
precisamos abrir nenhum navegador para poder fazer isto! Basta abrir um console, ir até o
diretório onde se encontra a imagem e dar o seguinte comando:
$ display nome_da_imagem. jpg
Redes:
O smbclient serve para verificar os compartilhamentos:
# smbclient -L máquina -U guest
Agora é só montar:
# mount -t smbfs -o username=usuário,password=senha //máquina/compartilhamento
/pontodemontagem
Não esqueça de criar uma pasta como ponto de montagem que pode ser assim:
# mkdir /mnt/nome_da_máquina
E assim você já pode acessar seus arquivos bem rápido!
Criar usuários:
Para adicionar novos usuários no Samba é importante saber que ele precisa estar
previamente criado no Linux. Isso pode ser feito da seguinte forma:
# adduser usuario
A partir daí, para criar o usuário no Samba:
# smbpasswd -a usuario
E para excluir:
# smbpasswd -x usuário
Backup de arquivos:
Vamos aprender como fazer um script que faz o backup diário e para cada dia, coloca a
data completa com um nome. Veja como é simples:
Acesse o Linux e acesse uma console. Vamos criar um diretório para guardar os arquivos
nele:
# mkdir /backup
Para que o backup já fique automático para todos os dias às 04:02 da manhã, faça assim:
# vi /etc/cron.daily/backup
Digite este conteúdo:
# Criando variável para o diretório de backup
folderbak=/backup
# Nome do arquivo de backup que será gerado.
# Observe que o nome será etc_a data completa
name=$folderbak/etc_`date +%Y%m%d-%H%M`.tar.gz
# Loga início de backup para você verificar os erros
echo `date`":Backup iniciado" >> $folderbak/backup.log
# Muda de diretório
cd /etc
# Realiza backup
tar cvfz $name *
Saia e salve.
Transformando o arquivo em executável:
# chmod +x /etc/cron.daily/backup
Testando:
# cd /etc/cron.daily
# ./backup
Se tudo está correto, acesse o diretório:
# cd /backup
# ls
Backup em fita dat:
Criar um backup:
# tar -cvf /dev/st0 <arquivos>
Adicionar arquivos/diretórios:
# tar -rvf /dev/st0 <arquivos>
Restaurar:
# tar -xvf /dev/st0 <arquivos>
Visualizar arquivos:
# tar -tvf /dev/st0
NOTA: /dev/st0 é o dispositivo onde se encontra instalado sua unidade de fita DAT.
Para descobrir seu ip no provedor:
Para descobrir o seu número IP, que é fornecido pelo provedor quando você se conecta,
basta executar o seguinte comando:
/sbin/ifconfig
Copiar cd sem cd virgem:
Você pode muito bem copiar um CD (criar uma imagem ISO do CD) para o computador e
usá-lo normalmente como se já tivesse gravado.
1 - Criar a imagem do CD.
Use o comando:
# dd if=/dev/cdrom of=copiadocd.iso
2 - Feita a cópia, basta montar o arquivo na pasta "/mnt/cdrom" ou "/cdrom" conforme sua
distribuição.
Use o comando:
# mount -t iso9660 -o ro,loop=/dev/loop0 copiadocd.iso /mnt/cdrom
OBS: Talvez seja necessário dar o comando como usuário root.
3 - Pronto, você verá o conteúdo do CD na pasta de montagem dele (/mnt/cdrom) como se
fosse um CD de verdade.
Copiar cd pelo linux:
Se você tem um gravador configurado para sua máquina funcionando e não quer digitar
aqueles argumentos gigantescos do cdrecord (não são tão gigantescos assim), você pode
utilizar o dd:
# dd if=/dev/cdrom of=imagem.iso
O parâmetro if (input file) especifica o arquivo de entrada (no caso, o drive de cdrom, isso
se o link /dev/cdrom aponta para seu dispositivo). O parâmetro of (output file) especifica o
arquivo de saída (no caso, um arquivo de nome imagem.iso na pasta de onde eu rodei o
programa).
ATENÇÃO: Ter uma extensão .iso não garante que o arquivo seja uma imagem. Ele será
uma imagem porque o dd faz uma cópia exata do conteúdo do arquivo de entrada. Como o
arquivo de entrada é um CD, gravado com o sistema de arquivos iso9660, o arquivo de
saída será uma imagem .iso. Você pode nomear a imagem com qualquer nome, mas dê
preferência à extensões de imagem, tipo .raw, .iso.
Agora que você gerou a imagem, grave um CD com o mesmo comando, trocando os
argumentos:
# dd if=imagem.iso of=/dev/cdrom
(se seu cdrom for um gravador de CD, óbvio, se você tiver colocado um CD vazio na
gravadora)
Esse comando é bom para reproduzir cópias fiéis de CDs. Caso não queira arriscar
gravando com o comando dd, utilize o cdrecord, mas a imagem pode ser feita
tranquilamente com o dd.
Duvidas? Deixe seu comentário.
Possui alguma dúvida a respeito de Infraestrutura de TI? Tire todas as suas dúvidas com nosso FAQ.
InfoFAQ
sexta-feira, 29 de janeiro de 2016
Conceder permissões para usuário restrito em serviços do Windows
Neste artigo irei mostrar como conceder permissões para usuário restrito em serviços do Windows
Muitas
vezes enfrentamos situações que não queremos deixar o usuário como
Administrator Local.
Cenário:
Usuário Lab, está no grupo Domain Users e no grupo local Remote Desktop Users,
para acesso remoto.
O usuário
LAB não possui permissão para fazer exatamente nada que esteja fora do seu
perfil, como exemplo iremos pegar o Service.Lab, quando o usuário Lab acessa o
services.msc e tenta manipular o serviço “Service.Lab” ele nota que não possui
permissão nem mesmo para fazer um stop/start no serviço.
Muitos
administradores de redes simplesmente acrescentam o usuário no grupo local de
Administrators pensando que irão resolver o problema, que na verdade irão, mas
podem causar muitos problemas no futuros.
Ex:
Vírus, deleção acidental e entre outros.
1.
Primeiro passo é descobrir quais permissões o nosso serviço possui, pois na
hora de definir as permissões para o usuário teremos que manter a antiga.
2.
Iniciar > Executar > cmd > OK
3.
Lembrando que é necessário executar o CMD como Administrator.
4. Digite: sc sdshow “nome do serviço”.
A saída
do comando será algo parecido com isso:
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCR
RC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
Essas são
as permissões que o serviço já possui.
Vamos
pegar esse trecho “D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)” para entender como funciona
a nomenclatura das permissões.
D:-
Discretionary ACL (DACL), Controle de permissões.
A:- Allow
– Aqui você passa parâmetros que está liberando as permissões de controle e de
grupos/usuários.
CCLCSWRPWPDTLOCRRC
= São as permissões que está liberado para o usuário trabalhar com o serviço. Ex: stop/start do serviço.
CC - SERVICE_QUERY_CONFIG - ask the SCM for
the service"s current configuration
DC - Delete All Child Objects LC - SERVICE_QUERY_STATUS - ask the SCM for the service"s current status
SW - SERVICE_ENUMERATE_DEPENDENTS - list dependent services
RP - Read all properties
WP - SERVICE_STOP - stop the service
DT - SERVICE_PAUSE_CONTINUE - pause / continue the service
LO - SERVICE_INTERROGATE - ask the service its current status
CR - SERVICE_USER_DEFINED_CONTROL - send a service control defined by the service"s authors
SD - Delete
RC - READ_CONTROL - read the security descriptor on this service.
WD - Modify permissions
WO - Modify owner
BA- Built-in administrators
Abaixo algumas siglas nos quais podemos usar para dar permissão por grupo:
"AO"Account operators
"AN"Anonymous logon
"AU"Authenticated users
"BA"Built-in administrators
"BG"Built-in guests
"BO"Backup operators
"BU"Built-in users
"CA"Certificate server administrators
"CG"Creator group
"CO"Creator owner
"DA"Domain administrators
"DC"Domain computers
"DD"Domain controllers
"DG"Domain guests
"DU"Domain users
"EA"Enterprise administrators
"ED"Enterprise domain controllers
"WD"Everyone
"PA"Group Policy administrators
"IU"Interactively logged-on user
"LA"Local administrator
"LG"Local guest
"LS"Local service account
"SY"Local system
"NU"Network logon user
"NO"Network configuration operators
"NS"Network service account
"PO"Printer operators
"PS"Personal self
"PU"Power users
"RS"RAS servers group
"RD"Terminal server users
"RE"Replicator
"RC"Restricted code
"SA"Schema administrators
"SO"Server operators
"SU"Service logon user
Lembrando
que podemos ser mais restritivo e dar a permissão por SID do usuário.
Para
pegar o SID de um usuário use o comando dsget em seu Active Directory:
Exp: dsget user “CN=Lab,OU=Users,DC=lab,DC=local” –sid
5. Agora
vamos setar a permissão apenas para o usuário Lab
Sintaxe:
sc sdget “nome do serviço” <permissões>
Sc sdget
“Service.Lab” D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCR
RC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
Notem que
estamos mantendo as permissões antigas e agora iremos dar a permissão para o
usuário Lab.
Sc sdget
“Service.Lab” D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCR
RC;;;IU)(A;;CCLCSWLOCRRC;;;SU)S:(AU;FA;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;WD)
(A;;CCLCSWRPWPDTLOCRRC;;; S-1-5-21-1607579371-585640051-1745129182-1147)
Duvidas? Deixe seu comentário.
Instalação .NET Windows 2012
Procedimento para instalação de .NET 3.5 E 2.0 para Windows 2012
Se
for maquina Virtual deve ser emulada a imagem via Vcenter, caso seja maquina
física pode copiar os arquivos de instalação ou colocar a mídia do DVD na
maquina Física.
No
painel inferior clique com botão direito no Icone do Power Shell e execeute
“Run as Administrator”.
Na
tela do Power Shell entre com comando abaixo.
Add-WindowsFeature NET-Framework-Core -Source
E:\sources\sxs
Considerando
o E:\ sendo o diretório onde esta o CD-ROM emulado.
Após
concussão pode validar através das Features instaladas.
Duvidas? Deixe seu comentário.
quinta-feira, 28 de janeiro de 2016
Resolvendo problemas com o ActiveX
Em diversos casos quando temos integração de componentes da Microsoft via browser há a necessidade de fazermos uma configuração específica (que varia de acordo com a necessidade do usuário) ou retornarmos ao padrão do Internet Explorer.
Um dos componentes que mais incomodam desenvolvedores é o ActiveX. Abaixo um resumo de como podemos fazer para retornar as opções padrão.
1. Entre no IE e acesse ferramentas depois em opções da Internet.
2. Na aba avançado clique em redefinir.
Um dos componentes que mais incomodam desenvolvedores é o ActiveX. Abaixo um resumo de como podemos fazer para retornar as opções padrão.
1. Entre no IE e acesse ferramentas depois em opções da Internet.
2. Na aba avançado clique em redefinir.
3. Clique em Ok feche o IE e entre novamente. Pronto! Esta simples alteração resolve 90% dos casos de incompatibilidade ou falha de execução dos componentes, principalmente ActiveX.
Duvidas? Deixe seu comentário.
Robocopy - Copiando dados
Robust File Copy para Windows, mais conhecido como Robocopy
É uma ferramenta de linha de comando que realiza a cópia de dados de uma forma eficiente e segura.
Para aqueles que trabalham com administração de servidores, de vez em quando precisam realizar a migração de dados entre servidores. Muitos ainda fazem a copia de dados manualmente, que além de ser mais lenta não temos log.
O Robocopy realiza a copia de diretórios e arquivos de um jeito simples, rápido e funcional, transferindo inclusive os atributos e permissões NTFS dos dados copiados, gerando logs com toda a informação sobre a cópia.
Cenário: Migrar os dados entre dois servidores de arquivos, sabemos que nese caso alem da copia de dados também precisamos que seja mantida as permissões NTFS.
Sintaxe do comando:
Robocopy origem destino [opções do comando]
1. A Cópia do diretório Share armazenado na unidade D para o diretório Backup na unidade I na mesma maquina:
robocopy.exe d:\share i:\backup
2. A copia do mesmo diretório Share e dos sub-diretórios para o diretório Backup, utilizando a opção /e
A partir do servidor MARKETING rodar o seguinte comando, com o usuário administrator:
Robocopy \\administracao\d$\ D:\ /MT:80 /COPYALL /MIR /SEC /R:1 /W:1 /NP /LOG:server.txt
O que o Robocopy está fazendo:
/MT:80 - Permite cópia mult-thread de 80 arquivos em paralelo ( e não um arquivo por vez).
/COPYALL – copia todos os atributos dos arquivos como data/hora, segurança
/MIR - Cuidado com esse parâmetro pois ele espelha todo o conteúdo, inclusive pastas/subpastas. Se na pasta origem, por exemplo, você tem 10 arquivos a pasta destino terá os mesmo 10 arquivos. Se você copiar algum arquivo extra no destino e rodar o comando novamente esse arquivo extra será apagado.
/SEC - copiar ficheiros com segurança.
/R:n :: número de Tentativas em cópias falhadas: a predefinição ‚ de 1 milhão
/W:n :: Tempo de espera entre tentativas: a predefinição ‚ de 30 segundos.
/NP :: Sem Progresso – não apresentar percentagem copiada.
/LOG:ficheiro :: enviar estado para ficheiro de REGISTO (substituir registo existente).
Outra forma para verificar a sintaxe do comando Robocopy, seria digitando o comando com a opção /?
Duvidas? Deixe seu comentário.
quarta-feira, 27 de janeiro de 2016
Dicas e truques sobre Active Directory
Trago neste post algumas dicas que podem facilitar e muito a vida de quem precisa retirar relatórios de objetos do AD.

DSQUERY USER -SAMID usuario1| DSMOD USER -DESC empresa
Para a criação de grupo em massa vamos ter um pouco mais de trabalho. Vamos precisar alterar a planilha conforme a estrutura do AD.
Planilha para criação de grupos em massa: <<aqui>>
Empresas de grande porte, podem e provavelmente terão "milhões" de grupos criados no AD e nesses "milhões" de grupos há também muitos usuários em diferentes grupos. Volta e meia, algum coordenador solicita a infra que envie os usuários que fazem parte de "tal" grupo. Você abre o grupo e verifica que nele há mais de 100 usuários. Seus problemas acabaram, nada de enviar print da tela, ou copiar os usuários no braço. Apresento-lhes o "Usuário x Grupos".
Esse é o Script (em vermelho o que você precisa alterar):
------------------------
On Error Resume Next
Diretorio= "C:\temp" (aqui você escolhe o local onde será gerado o .txt)
grupo= InputBox("Digite o nome do grupo a gerar o relatório dos usuários")
file= grupo & ".txt"
Set oFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objFolder = oFSO.CreateFolder(Diretorio)
Set Dir=oFSO.GetFolder(Diretorio)
Set arqtxt = Dir.CreateTextFile(file, True)
Set rootDSE = GetObject("LDAP://RootDSE")
domainContainer = rootDSE.Get("defaultNamingContext")
Set conn = CreateObject("ADODB.Connection")
conn.Provider = "ADSDSOObject"
conn.Open "ADs Provider"
LDAPStr = "<LDAP://" & DomainContainer & ">;(&(objectclass=group)(objectCategory=group)(samaccountname=" & grupo & "));adspath;subtree"
Set rs = conn.Execute(LDAPStr)
If rs.RecordCount = 1 Then
Set oGroup = GetObject(rs.Fields(0).Value)
End If
for each strMember in oGroup.member
Spmember = Split(strMember, ",")
member= Spmember(0)
arqtxt.WriteLine Mid (member,4)
Next
iGroupCount = 0
For each strMember in oGroup.member
If Len(strMember) = 0 Then
wscript.echo "Grupo sem nenhum membro ou não existente!"
Else
iGroupCount = iGroupCount + 1
End If
Next
arqtxt.WriteLine("Número total de usuarios neste grupo = ") & iGroupCount
arqtxt.Close
WScript.echo "O relatório foi gerado na pasta USUARIOS no desktop."
wscript.quit
----------------------------
<<Download do VBS>>
Duvidas? Deixe seu comentário.
Até mais!!!
- Alteração de senha em massa.
- Alteração da descrição do usuário no AD.
- Bloqueio e remoção de usuários em massa.
- Bloqueio e remoção de computadores.
- Criação de grupos em massa.
- Criação de usuários em massa.
- Extração de membros de um grupo.
1. Alteração de senha em massa
Comando para realizar a alteração de senha de um (1) usuário:
DSQUERY USER -SAMID usuario | DSMOD USER -PWD senha@123 Planilha para alteração em massa: <<aqui>> Após preencher a planilha com os dados. |
DSQUERY USER -SAMID usuario1| DSMOD USER -DESC empresa
Planilha para alteração em massa: <<aqui>>
Da mesma forma como a anterior, preencha a planilha e execute os comandos no CMD.
3. Bloqueio e remoção de usuários em massa
Comando para realizar o bloqueio de um (1) usuário:
DSQUERY USER -SAMID usuario | DSMOD USER -DISABLED YES
Comando para realizar a remoção de um (1) usuário
DSQUERY USER -SAMID usuario | DSRM -NOPROMPT
Planilha para bloqueio e remoção de usuários em massa: <<aqui>>
Como já sabemos, apenas preenchemos a planilha com os usuários do AD e colamos os comandos no CMD para execução.
4. Bloqueio e remoção de computadores
Comando para realizar o bloqueio de um (1) computador:
DSQUERY COMPUTER -NAME computador1 | DSMOD COMPUTER -DISABLED YES
Comando para realizar a remoção de um (1) computador:
DSQUERY COMPUTER -NAME computador1 | DSRM -NOPROMPT
Planilha para bloqueio e remoção de computadores: <<aqui>>
Da mesma forma como a anterior, preencha a planilha e execute os comandos no CMD.
3. Bloqueio e remoção de usuários em massa
Comando para realizar o bloqueio de um (1) usuário:
DSQUERY USER -SAMID usuario | DSMOD USER -DISABLED YES
Comando para realizar a remoção de um (1) usuário
DSQUERY USER -SAMID usuario | DSRM -NOPROMPT
Planilha para bloqueio e remoção de usuários em massa: <<aqui>>
Como já sabemos, apenas preenchemos a planilha com os usuários do AD e colamos os comandos no CMD para execução.
4. Bloqueio e remoção de computadores
Comando para realizar o bloqueio de um (1) computador:
DSQUERY COMPUTER -NAME computador1 | DSMOD COMPUTER -DISABLED YES
Comando para realizar a remoção de um (1) computador:
DSQUERY COMPUTER -NAME computador1 | DSRM -NOPROMPT
Planilha para bloqueio e remoção de computadores: <<aqui>>
5. Criação de grupos em massa
Após ter feito isso, preencher a planilha com os nomes dos grupos, depois é só copiar e executa-los no CMD.
6. Criação de usuários em massa
Para a criação de usuários em massa vamos seguir na linha de grupos, alterando na planilha conforme a estrutura do seu AD.
O comando para criação de usuário, assim que a planilha estiver devidamente preenchida, irá ficar da seguinte forma:
dsadd user CN="Gustavo Miguel","OU=USUARIOS,OU=COMERCIAL,OU=CWB,OU=BR,DC=CONTOSO,DC=LOCAL" -samid gustavo.miguel -upn gustavo.miguel@contoso.local -pwd senha@123 -desc "Empresa corporativa" -iptel "00000000" -display "Gustavo Miguel" -disabled no -mustchpwd yes -fn "Gustavo" -ln "Miguel"
Você irá precisar preencher as seguintes colunas:
Planilha para criação de usuários em massa: <<aqui>>
7. Extração de membros de um grupo
Empresas de grande porte, podem e provavelmente terão "milhões" de grupos criados no AD e nesses "milhões" de grupos há também muitos usuários em diferentes grupos. Volta e meia, algum coordenador solicita a infra que envie os usuários que fazem parte de "tal" grupo. Você abre o grupo e verifica que nele há mais de 100 usuários. Seus problemas acabaram, nada de enviar print da tela, ou copiar os usuários no braço. Apresento-lhes o "Usuário x Grupos".
Esse é o Script (em vermelho o que você precisa alterar):
------------------------
On Error Resume Next
Diretorio= "C:\temp" (aqui você escolhe o local onde será gerado o .txt)
grupo= InputBox("Digite o nome do grupo a gerar o relatório dos usuários")
file= grupo & ".txt"
Set oFSO = WScript.CreateObject("Scripting.FileSystemObject")
Set objFolder = oFSO.CreateFolder(Diretorio)
Set Dir=oFSO.GetFolder(Diretorio)
Set arqtxt = Dir.CreateTextFile(file, True)
Set rootDSE = GetObject("LDAP://RootDSE")
domainContainer = rootDSE.Get("defaultNamingContext")
Set conn = CreateObject("ADODB.Connection")
conn.Provider = "ADSDSOObject"
conn.Open "ADs Provider"
LDAPStr = "<LDAP://" & DomainContainer & ">;(&(objectclass=group)(objectCategory=group)(samaccountname=" & grupo & "));adspath;subtree"
Set rs = conn.Execute(LDAPStr)
If rs.RecordCount = 1 Then
Set oGroup = GetObject(rs.Fields(0).Value)
End If
for each strMember in oGroup.member
Spmember = Split(strMember, ",")
member= Spmember(0)
arqtxt.WriteLine Mid (member,4)
Next
iGroupCount = 0
For each strMember in oGroup.member
If Len(strMember) = 0 Then
wscript.echo "Grupo sem nenhum membro ou não existente!"
Else
iGroupCount = iGroupCount + 1
End If
Next
arqtxt.WriteLine("Número total de usuarios neste grupo = ") & iGroupCount
arqtxt.Close
WScript.echo "O relatório foi gerado na pasta USUARIOS no desktop."
wscript.quit
----------------------------
<<Download do VBS>>
Duvidas? Deixe seu comentário.
Até mais!!!
Uso de memoria elevado - VM Red Hat Linux
Uma equipe aqui da empresa estava reportando que algumas VMs com Linux
estavam ocupando toda memoria, sem nada rodando ou nada que justificasse
ocupar 98% da memoria.
Issue
- Unable to account for memory usage on a RHEL
VMware guest :
- $ cat free
- total
used
free shared buffers
cached
- Mem: 7927536
6071588 1855948
0 22428 209132
- -/+ buffers/cache: 5840028
2087508
- Swap:
12582896
92 12582804
- System shows high memory usage even though
applications are not allocating that much memory :
- $ ps aux | tr -s ' ' | awk 'BEGIN{sum=0}{ sum+=$6 }END{print sum}'
- 709340
Environment
- Red Hat Enterprise Linux
- Vmware ESX server
Resolution
- Unload the vmmemctl module.
- The module is loaded by /etc/init.d/vmware-tools.
Edit /etc/init.d/vmware-tools and change following line :
if [ "$vmdb_answer_VMMEMCTL_CONFED" = 'yes' ];
thento
if [ "$vmdb_answer_VMMEMCTL_CONFED" = 'no' ];
then
- Unload the module :
# rmmod vmmemctl
- and then restart the service :
# /etc/init.d/vmware-tools restart
- Uninstalling vmware-tools is another option.
- Consulting VMware on this will give more
details on this module and it's functionality.
Root Cause
- This behaviour is caused by the vmmemctl
module.
filename:
/lib/modules/2.6.18-92.el5/misc/vmmemctl.ko
author: VMware, Inc.
description: VMware Memory Control Driver
author: VMware, Inc.
description: VMware Memory Control Driver
- In some situations, such as heavy memory load
in ESX Server, the ESX Server will control the vmmemctl module to allocate
guest memory and pin them in "physical" memory.
- Those "physical" memory can then be
reclaimed by ESX Server. This function is called "ballooning".
Inflating the balloon increases memory pressure, and the kernel may page
out memory pages to the swap space when its memory is scarce. The vmmemctl
module does not have an external interface within the guest OS , it only
communicates with the ESX Server via a private channel. Therefore, the
memory which is allocated by vmmemctl cannot be counted from the guest OS.
Tela gráfica usando SSH – Xming + Putty
Apresento para que ainda não conhece o Xming, o Xming é um software que possibilita a transferência do que seria exibido na variável DISPLAY na sua tela, desde que o servidor Linux onde o Oracle será instalado tenha algum ambiente X configurado (Gnome, KDE, Xterm e outros).
Para instalar no seu Windows segue o link downoad:
A instalação é bem fácil , é aquele tipo NEXT, NEXT and FINISH! e apos a instalação, clique no ícone do programa em X sera exibido próximo ao relógio!
Agora usaremos um programinha chamado Putty, que pra que não conhece, é um client de SSH que acessa servidores Linux e Unix. Segue abaixo o Link para download:
Basta mudarmos a opção de redirecionamento do X default do Putty aqui:
- Connection
- SSH
- X11
- (HABILITE) Enable X11 forwarding
Depois disso só vai lá em cima em session e salve a default ou as que você quiser o redirecionamento se já fizer uso do Putty.
Esse eu tenho certeza que vai ser útil…
Assinar:
Postagens (Atom)




