InfoFAQ

InfoFAQ

sexta-feira, 29 de janeiro de 2016

Comandos de Linux

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.





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
"RU"Alias to allow previous Windows 2000
"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.



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




3. Cópia de dados do Servidor ADMINISTRACAO para o Servidor MARKETING

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.


  • 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.

Vá para primeira aba, faça a copia dos comandos e execute no CMD.



 Pronto, as senhas estarão alteradas conforme o preenchimento na planilha.



2. Alteração da descrição do usuário do AD


Comando para realizar a alteração da descrição de um (1) usuário:

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>>


5. Criação de grupos em massa


 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.




Após ter feito isso, preencher a planilha com os nomes dos grupos, depois é só copiar e executa-los no CMD.



Planilha para criação de grupos em massa: <<aqui>>

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.

 Se um dia tiverem alguma situação parecida quem sabe isso possa ajudar.

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
  • 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…