PC com Windows 10 versão 2004 não acessa compartilhamento SMB2

Olá pessoal,

No mês passado eu publiquei este post, sobre uma falha no acesso a compartilhamentos e impressoras via protocolo SMB2 que ocorria em PCs com Windows 10 que sofreram atualização para a versão 1903.

Pois bem, este mesmo erro ocorre após a atualização para a versão 2004 e para que o acesso ao recurso compartilhado em questão siga em funcionamento, você deve realizar os passos citados no post que eu citei e também, por ocasião da versão 2004 do Windows 10, editar uma chave no registro do Windows para forçar que o acesso ao compartilhamento com a conta de convidado.

Para isso execute o Editor de Registro do Windows (regedit), navegue até:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanWorkstation\Parameters]

Altere o valor de “AllowInsecureGuestAuth” de 0 para 1, ficando dessa forma:
“AllowInsecureGuestAuth”=dword:1

Após isso o acesso ao compartilhamento baseado no SMB2 será normalizado.

Até a próxima!

Windows 10 mais rápido – Desativando a execução de apps em segundo plano

Olá pessoal,

mais uma dica rápida, dessa vez para quem quer deixar seu PC/Notebook com Windows 10 com uma performance melhor. Para isso, vamos desativar a execução de aplicativos que vem nativamente no sistema e que por padrão são executados em segundo plano consumindo recursos da máquina.

Vou demonstrar como desabilitar de duas formas. Na primeira, clique no Menu Iniciar – Configurações e no campo de pesquisa digite “Aplicativos em segundo plano”

Para desativar a execução dos Aplicativos em segundo plano basta desligar a opção exibida na tela abaixo.

Aplicativos em Segundo Plano – Ativado
Aplicativos em Segundo Plano – Desativado

Também podemos desativar através de linha de comando, para isso abra o prompt como administrador e execute o comando abaixo:

Reg Add HKCU\Software\Microsoft\Windows\CurrentVersion\BackgroundAccessApplications /v GlobalUserDisabled /t REG_DWORD /d 1 /f

Talvez essa configuração não tenha uma eficácia perceptiva em computadores com hardware potentes. Mas nos computadores que possuem recursos limitados, desativar essa execução dos aplicativos em segundo plano com certeza fará uma boa diferença no que tange a performance, pois assim você abrirá os aplicativos quando necessário for sem que fiquem deixando sua máquina mais lenta.

Até a próxima!

Túnel do tempo – Citação na newsletter Springboard Series Insider – November 2013 Edition

Olá pessoal,

Mais uma direto do túnel do tempo…

Em novembro de 2013, eu tive o prazer de ter o meu perfil (@paulo_santanna) no Twitter escolhido para ser destaque na sessão TWEET ALERT da newsletter Springboard Series Insider enviado pela equipe de Windows Client da Microsoft.

Obrigado @stephenlrose e Heather Poulsen pelo convite.

Até a próxima!

Instalação/atualização para o PowerShell 7.0.3 no Windows 10

Olá pessoal,

Ao executar o PowerShell em um dos notebooks com Windows 10 que eu utilizo foi exibida uma mensagem que uma nova release 7.0.3 estava disponível. Neste caso específico, a versão do PS instalada era a 7.0.2.

A versão do PowerShell é exibida assim que a ferramenta é executada mas se você precisar descobrir remotamente a versão do PS em uma máquina ou até mesmo colocar em um script, você pode utilizar o comando abaixo para identificar a versão:

Get-Host | Select-Object Version

Identificando a versão do PowerShell

Para instalar ou atualizar para a versão mais atual do PowerShell (v7.0.3) execute o comando abaixo:

iex “& { $(irm https://aka.ms/install-powershell.ps1) } -UseMSI”

Será feito o download dos pacotes e em seguida exibido o assistente de instalação. Basta seguir os passos descritos na sequência de imagens abaixo:

Feito isso, temos a versão mais recente do PowerShell no PC/Notebook com Windows 10.

Até a próxima!

Ambiente legado – Definindo frequência de sincronismo no Dir-Sync entre AD On-premise com Office 365

Olá pessoal,

eu sempre venho comentando que devemos olhar para ambientes novos com as metodologias ágeis, as clouds e os microserviços, mas sem esquecer os ambientes legados. A quantidade de empresas com ambientes baseados em servidores com Windows Server 2008/2008R2 é enorme. A dica de hoje vai para quem tem Office 365 e faz o sincronismo de diretório com o Active Directory da sua empresa utilizando a ferramenta Windows Azure Active Directory Sync tool, também conhecida como DirSync.

Por padrão, o sincronismo ocorre a cada 3 horas. No caso de ambientes com muitas alterações de usuários e senhas esse tempo pode não ser o adequado.

Podemos mudar essa frequência de sincronização editando o valor “SyncTimeInterval” no arquivo Microsoft.Online.DirSync.Scheduler.exe.Config que fica no diretório C:\Program Files\Windows Azure Active Directory Sync

Por padrão o valor vem “SyncTimeInterval” value=”3:0:0″ que corresponde a 3 horas. Se você quiser mudar, por exemplo para 1 hora, altere o valor para “1:0:0”

Caso queira para 40 minutos defina o valor para “0:40:0”

Feito isso salve o arquivo e reinicie o serviço Windows Azure Active Directory Sync Service para isso abra um prompt de comando (cmd) e execute:

net stop MSOnlineSyncScheduler

net start MSOnlineSyncScheduler

Até a próxima!

Desativando definitivamente a assistente Cortana no Windows 10 via Registro

Olá pessoal,

A Cortana, assistente virtual inteligente, desenvolvida pela Microsoft, vem instalada por padrão no Windows 10. Com a Cortana é possível, por exemplo, realizar as tarefas abaixo:

  • Gerenciar seu calendário e manter sua agenda atualizada.
  • Participar de uma reunião no Microsoft Teams ou descobrir com quem será a sua próxima reunião.
  • Criar e gerenciar listas.
  • Configurar alarmes e lembretes.
  • Localizar dados, definições e informações.
  • Abrir aplicativos no computador.

Caso você opte por não utilizar a Cortana, podemos desabilitar a mesma, até mesmo para otimizar recursos do sistema. Segue abaixo o procedimento para desativar de forma definitiva a assistente via Registro do Windows.

Primeiro pressione Win+R no seu teclado. Em executar digite regedit e cliquem em OK.

Cortana01

Navegue até HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows

Cortana02

Agora clique com o Botão direito em Windows, Novo e depois Chave. Coloque o nome Windows Search.

Clique com o Botão Direito em Windows Search, Novo e depois Valor DWORD (32 bits). Coloque o nome AllowCortana

Vamos desligar o Cortana clicando duas vezes em AllowCortana e definindo o valor para 0.

Cortana03

Reinicie o computador e a Cortana estará desativada. Para reativar, basta mudar o valor de AllowCortana para 1 ou simplesmente apagar a chave Windows Search criada neste procedimento.

Essa dica pode ser útil tanto para os que não querem utilizar este recurso bem como aqueles que possuem equipamentos com recursos de hardware limitados e precisam de mais performance.

Até a próxima!

Identificando o tipo de disco no Windows e no Mac via linha de comando

Olá pessoal,

você já recebeu um equipamento para manutenção e precisa saber se o disco instalado na máquina é um HD convencional ou SSD? Sim, existem diversas ferramentas gráficas que podem fazer esse tipo de consulta, mas como obter essa informação via linha de comando sem a necessidade de instalar qualquer programa de terceiros?

Vou demonstrar como fazer no Windows e no macOS.

No Windows:

Abra o Powershell e execute o comando Get-PhysicalDisk

WINDOWS_SSD_POWERSHELL_3

Para o obter as informações de forma mais resumida, execute Get-PhysicalDisk | Select FriendlyName, MediaType

WINDOWS_SSD_POWERSHELL_4

No macOS:

Abra o Terminal e execute o comando diskutil info disk0 (considerando que tem apenas um disco em seu Mac. Se houverem mais basta mudar a numeração, 1, 2 e assim por diante.

MAC_SSD_TERMINAL_2

Até a próxima!

Event ID 5012 – Erro 9026 – Falha na Replicação DFS no Windows Server

Olá pessoal,

fui acionado por cliente que informou que estava tendo problemas na replicação DFS após criar um namespace novo, ou seja, criava arquivos ou pastas em um servidor e não era replicado para o outro. Verifiquei o log de eventos e encontrei o ID 5021, com erro 9026 (conexão inválida) que realmente informava falha de conectividade e consequentemente sincronismo entre os parceiros de um determinado grupo de replicação.

DFS1

Para corrigir este problema, vamos registrar novamente a Replicação do DFS no Provedor WMI e reiniciar o serviço executando os os seguintes passos:

Execute o prompt de comando e acesse o diretório C:\Windows\system32\wbem\
Em seguida,  execute os comandos abaixo na sequência:
mofcomp dfsrprovs.mof
net stop winmgmt
net start winmgmt
net start iphlpsvc
net stop dfsr
net start dfsr

Verifique no Log de Eventos se a Replicação DFS entre os parceiros foi restabelecida. conforme imagem abaixo.

DFS2

Até a próxima!

Definindo as configurações do Windows Update através do sconfig no Windows Server 2016

Olá pessoal,

fui acionado por um cliente que reportou que um servidor Hyper-V baseado no Windows Server 2016 reiniciou bem cedo, pouco antes do inicio do expediente. O Servidor levando bastante tempo para ficar online novamente, com isso as VMs com os sistemas não subiram e o inicio da operação da empresa acabou prejudicado.

Pois bem, eu acessei o servidor e identifiquei no log, através do Evento 1074,  que o próprio sistema realizou a instalação de um service pack e ao final reiniciou o servidor. Vejam abaixo:

Win16Up01

O cliente solicitou que as atualizações não sejam mais feitas de forma automática e sim manualmente, conforme janela a ser definida. Essa configuração poderia ser feita através de uma Política de Grupo (GPO) no Active Directory, porém como se trata de um servidor Standalone, vamos demonstrar como definir esta configuração diretamente na própria máquina, localmente.

Primeiramente abra o PowerShell como Administrador execute o comando sconfig

Após isso, selecione a opção 5, Configurações do Windows Update e defina a opção (M) Manuais. A mensagem abaixo será exibida. Clique em OK.

Win16Up02_nova

Pronto, desta forma as atualizações do Windows Update serão feitas manualmente.

Win16Up03

Até a próxima!

Hyper-V: Shutdown em todas as VMs via PowerShell

Olá pessoal,

WindowsPowerShellDe tempos em tempos eu preciso instalar as atualizações do Windows Update em um host Hyper-V baseado em Windows Server 20126 de um cliente. Antes de iniciar o processo eu desligo as máquinas virtuais (VMs) utilizando um script que eu vou compartilhar aqui com vocês. Com as VMs desligadas eu faço a atualização e em seguida reinicio o Host.

Antes de mais nada, execute o PowerShell no servidor e verifique o status das máquinas virtuais que estão rodando neste servidor utilizando o cmdlet abaixo:

Get-VM

Em seguida, utilize o script abaixo para desligar todas as máquinas virtuais que estejam ligadas:

[cmdletbinding()]
Param($vmhost = ‘NOME_DO_HOST’)
$runningVM = Get-VM -ComputerName $vmhost| where state -eq ‘running’
foreach ($cn in $runningVM)
{Stop-VM $cn.name -asjob}

Cole o código acima em um bloco de notas, substitua NOME_DO_HOST, pelo nome do seu servidor, e salve como por exemplo, Shutdown_VMs.ps1

Após isso execute o arquivo criado no PowerShell.

Será criado um job de desligamento por vm, no meu caso são 8 VMs neste servidor:

HyperV_PS_ShutdownVMs_1

Após isso execute novamente o cmdlet Get-VM para verificar o status das VMs:

HyperV_PS_ShutdownVMs_2

Podemos verificar também o status através do Gerenciador do Hyper-V, conforme imagem abaixo:

HyperV_PS_ShutdownVMs_3.1

Até a próxima!

Windows Server – Verificando a versão do schema do Active Directory

Olá pessoal,

Como eu sempre falo em minhas palestras e eventos, apesar de vivermos uma explosão de incentivos, ofertas e conteúdos voltados para os serviços em nuvem, o mundo on premise, ou seja a infraestrutura local, interna nas empresas segue demandando e exigindo muitos dos profissionais e consultores de TI.

Com o fim do suporte ao Windows Server 2008 R2 por parte da Microsoft em 14 de janeiro de 2020 as empresas já estão se movimentando para atualizar seus ambientes. Vejo grandes oportunidades de negócio, inclusive no ano passado eu publiquei um vídeo sobre.

Sem dúvida já existe uma demanda enorme para migração de ambientes Active Directory baseados no Windows Server 2008 R2 e em momentos de migração ou upgrade é necessário saber a versão do schema de forma a fazer o planejamento adequado da versão correta do Windows Server a ser instalada.

Vejam abaixo a relação de sistemas operacionais e suas respectivas versões do AD.

AD_SCHEMA_VERSOES

Mas como fazer para identificar a versão do schema do AD do seu ambiente? Vou listar 3 maneiras abaixo:

1 – Através do Registro (regedit) do Windows, navegando em Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\NTDS\Parameters e verifique a entrada Schema Version, no exemplo abaixo versão 47, ou seja, Windows Server 2008 R2.

AD_SCHEMA_VERSOES_REGEDIT

2 – Via CMD, utilizando o comando dsquery, substitua “nomedominio” e “corp” pelo nome do domínio a ser pesquisado:

dsquery * cn=schema,cn=configuration,dc=nomedominio,dc=corp -scope base -attr objectVersion

3 – Via PowerShell:

Get-ADObject (Get-ADRootDSE).schemaNamingContext -Property objectVersion

Espero ter ajudado! Boas migrações!

PowerShell – Identificando os servidores Controladores de domínio utilizados pelo Exchange Server

WindowsPowerShellOlá pessoal,

Durante uma migração de Active Directory em um cliente, foi necessário verificar e garantir que o servidor Exchange Server estava pesquisando e utilizando os servidores Controladores de domínio e Global Catalog corretos para autenticação.

Para obter essa informação via PowerShell vamos executar o comando abaixo:

Get-ExchangeServer -Identity “servidor” -status | fl

Substitua “servidor” pelo nome do seu servidor Exchange Server nas versões 2007, 2010, 2013 ou 2016.

Até a próxima!

Exchange Server – Alguns comandos PowerShell para gerência dos databases

Olá pessoal,

WindowsPowerShellHoje eu compartilho com vocês alguns comandos PowerShell bastante úteis para gerencia e suporte em ambientes com Exchange Server na rede.

Para obter informações sobre cada mailbox existente em todos os databases em um servidor Exchange, execute:

Get-MailboxStatistics

Para saber a quantidade exata de mailboxes criadas no Exchange Server execute, substituindo SERVIDOR, pelo nome do seu servidor:

Get-Mailbox -Server SERVIDOR | Measure-Object

Para identificar a quantidade de maiboxes criadas em cada database existente no Exchange, execute:

Get-Mailbox | Group-Object -Property:Database | Select-Object Name,Count | Sort-Object Name | Format-Table -Aut

Até a próxima!

GAB 2019 – Material da apresentação sobre Azure File Share

Olá pessoal,

conforme prometido eu compartilho com vocês o material sobre Azure File Share que eu utilizei na apresentação que eu fiz no Global Azure Bootcamp em Uberlândia/MG no último dia 27/04.

Aos que participaram, eu espero que tenham gostado e saibam que eu caso de dúvidas eu estou à disposição, podem entrar em contato.

Então, divulguem, compartilhem e bons estudos!

27/04 – Global Azure Bootcamp 2019 – Uberlândia/MG

Olá pessoal,

pelo segundo ano consecutivo terei o prazer de participar da edição em Uberlãndia/MG do Global Azure Bootcamp. O evento está sendo organizado pelo meu amigo Bruno Maestro e acontecerá no próximo sábado (27/04), a partir das 8:30, no Senac Uberlândia, localizado na Avenida Belo Horizonte, 525.

Profissionais de Infra e Dev receberão conteúdo relevante e de qualidade.

As inscrições podem ser realizadas em http://bit.ly/bootcamp2019udia

Aguardo todos vocês lá! Até sábado!

GLOBALAZURE2019_UBERLÂNDIA

Live Migration de máquina virtual no Hyper-V via PowerShell

WindowsPowerShellOlá pessoal,

Devido a necessidade de um cliente eu precisei automatizar o processo de Live Migration de máquinas virtuais baseadas no Hyper-V/Windows Server. Para isso utilizei os comandos PowerShell abaixo:

Primeiro devemos importar o módulo do Failover Cluster no equipamento onde os comandos serão executados:

Import-Module FailoverClusters

Após isso, para realizar o Live Migration de uma VM utilize:

Get-Cluster “Nome_do_Cluster” | Move-ClusterVirtualMachineRole -Name “Nome_da_máquina_virtual” -Node “Nome_do_nó_do Cluster”

Vejam o exemplo: Get-Cluster SRVCLUS01 | Move-ClusterVirtualMachineRole -Name SRV01 -Node SRVHV01

Será exibida uma barra de status do processo no prompt do PowerShell. Aguarde todo o processo e verifique no nó de destino se o processo ocorreu com sucesso e a máquina virtual está ok.

Até a próxima!

Realizando teste de conexão com um database SQL Server

Olá pessoal,

dica rápida para quem precisa validar/testar as credenciais de acesso a um banco de dados baseado no SQL Server.

A partir do PC/Notebook/Servidor com sistema operacional Windows, de onde será feito o teste de conexão, crie um arquivo txt sem conteúdo com nome, por exemplo, testedeconexao.txt

Renomeie este arquivo *.txt criado para a extensão *.udl, no exemplo então renomeie para testedeconexao.udl

Execute o arquivo testedeconexao.udl e será exibida a tela abaixo.

SQLTest1

Selecione o servidor para o qual deseja realizar o teste, defina as credenciais de acesso e para qual banco a tentativa de acesso será realizada. Após isso clique em Testar conexão.

SQLTest2

Até a próxima!

 

DHCP – Buscando reservas de IP via Mac Address

Olá pessoal,

estamos de volta após um intervalo de muito trabalho, eventos e atividades.

PromptComandoImaginem o seguinte cenário. Preciso descobrir se um determinado notebook possui reserva no servidor DHCP com Windows Server 2008 R2.

Como proceder?

Opção 1: Visualizar cada uma das inúmeras reservas criadas em busca do Mac Address do equipamento em questão.

Opção 2: Executar o comando abaixo no prompt do servidor DHCP:

netsh dhcp server dump | find /i”Endereço_Mac”

Exemplo: netsh dhcp server dump | find /i”681401a5b907″

Será feita uma consulta no servidor em busca de uma reserva, se houver será exibida, se não houver nada será mostrado.

Para obter a lista de todas as reservas criadas no servidor DHCP execute:

netsh dhcp server dump

Para facilitar a pesquisa e também documentar as reservas jogue o resultado para um arquivo através do comando abaixo:

netsh dhcp server dump >reservasdhcp.txt

Espero ter ajudado com mais uma dica útil para o nosso dia a dia de suporte e administração de servidores.

Até a próxima!

Windows 10 – Alterando o perfil de rede de pública para privado via PowerShell

Olá pessoal,

um cliente estava tendo problemas de conectividade entre um notebook com Windows 10 e um computador com Windows 7. Verifiquei o notebook e a conexão de rede estava definida como pública conforme imagem abaixo:

W10ProfileRede01

Para alterar para rede privada, abra o Power Shell como administrador (elevado) e execute o comando Get-NetConnectionProfile para exibir as características da conexão e obter o valor do parâmetro InterfaceIndex, no caso desta interface de rede o valor é 16 conforme imagem a seguir. Notem também que o parâmetro NetworkCategory está definido como Public.

W10ProfileRede02

Para definir a conexão como privada digite o comando abaixo, considerando o parâmetro InterfaceIndex 16, da conexão em questão, execute o comando:

Set-NetConnectionProfile -InterfaceIndex 16 -NetworkCategory Private

Em seguida execute novamente Get-NetConnectionProfile e verifique o parâmetro NetworkCategory agora como Private.

W10ProfileRede03

WSUS Setup Not Completed! Error 0x80070643

Olá pessoal,

Um cliente solicitou uma instalação de WSUS e disponibilizou um servidor Windows Server 2008 R2 para esta demanda. Pois bem, ativei a role, iniciei o setup e ocorreu o erro 0x80070643 impedindo o término do processo.

WSUSSetup1

Verificando o arquivo de log descrito acima identifiquei que o erro acontecia durante o setup do Windows Internal Database.

WSUSSetup2.png

Levantei o histórico da máquina em questão e descobri já havia sido feita uma instalação anterior, ou seja, o Windows Internal Database não foi removido corretamente. Para remover abra um prompt de comando e execute:

  • Em sistemas 32-bits: msiexec /x {CEB5780F-1A70-44A9-850F-DE6C4F6AA8FB} callerid=ocsetup.exe
  • Em sistemas 64-bits: msiexec /x {BDD79957-5801-4A2D-B09E-852E7FA64D01} callerid=ocsetup.exe

Além disso, desinstale se houver alguma versão do .NET Framework 4.6 ou superior.

Após realizar os procedimentos acima, reinicie o servidor e habilite a role do WSUS que desta vez ocorrerá com sucesso.