Pages

Subscribe:

Ads 468x60px

segunda-feira, 9 de julho de 2012

Sincronizar um servidor de horário interno com uma fonte de tempo externa no Windows


Para sincronizar um servidor de horário interno windows com uma fonte de tempo externa
  1. Abra o Prompt de Comando.
  2. Digite o que aparece a seguir, onde PeerList é uma lista separada por vírgulas de nomes DNS (sistema de nomes de domínios) ou endereços IP das fontes de tempo desejadas (Eu recomendo o pool.ntp.br):
    w32tm /config /syncfromflags:manual /manualpeerlist:PeerList
  3. Digite:
    w32tm /config /update
Para visualizar os servidores de Tempo na rede e de onde se atualizam digite:
  1. w32tm /monitor

segunda-feira, 23 de janeiro de 2012

Problemas na replicação entre controladores de domínio.

Se um de seus controladores de dominio parar de replicar os arquivos do SYSVOL e você receber a mensagem abaixo no log do windows, mais precisamente na pasta "File Replication Service":

The File Replication Service has detected that the replica set "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" is in JRNL_WRAP_ERROR.
 
 Replica set name is    : "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)"
 Replica root path is   : "c:\windows\sysvol\domain"
 Replica root volume is : "\\.\C:"
 A Replica set hits JRNL_WRAP_ERROR when the record that it is trying to read from the NTFS USN journal is not found.  This can occur because of one of the following reasons.
 
 [1] Volume "\\.\C:" has been formatted.
 [2] The NTFS USN journal on volume "\\.\C:" has been deleted.
 [3] The NTFS USN journal on volume "\\.\C:" has been truncated. Chkdsk can truncate the journal if it finds corrupt entries at the end of the journal.
 [4] File Replication Service was not running on this computer for a long time.
 [5] File Replication Service could not keep up with the rate of Disk IO activity on "\\.\C:".
 Setting the "Enable Journal Wrap Automatic Restore" registry parameter to 1 will cause the following recovery steps to be taken to automatically recover from this error state.
 [1] At the first poll, which will occur in 5 minutes, this computer will be deleted from the replica set. If you do not want to wait 5 minutes, then run "net stop ntfrs" followed by "net start ntfrs" to restart the File Replication Service.
 [2] At the poll following the deletion this computer will be re-added to the replica set. The re-addition will trigger a full tree sync for the replica set.
 
WARNING: During the recovery process data in the replica tree may be unavailable. You should reset the registry parameter described above to 0 to prevent automatic recovery from making the data unexpectedly unavailable if this error condition occurs again.
 
To change this registry parameter, run regedit.
 
Click on Start, Run and type regedit.
 
Expand HKEY_LOCAL_MACHINE.
Click down the key path:
   "System\CurrentControlSet\Services\NtFrs\Parameters"
Double click on the value name
   "Enable Journal Wrap Automatic Restore"
and update the value.


Siga os procedimentos abaixo para resolver:
1. Pare o serviço FRS. (net stop ntfrs)
2. Abra o editor de registros do windows (regedit).
3. Localize a seguinte chave de registro:
   HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NtFrs\Parameters
4. Clique em Add Value,e entre com os dados abaixo :
   Value name: Enable Journal Wrap Automatic Restore
   Data type: REG_DWORD
   Radix: Hexadecimal
   Value data: 1 (Default 0)
5. Saia do editor de registros.
6. Reinicie o serviço FRS.( net start ntfrs)

Se olhar novamente o log de FRS do windows verá uma entrada com a informação abaixo:

The File Replication Service is deleting this computer from the replica set "DOMAIN SYSTEM VOLUME (SYSVOL SHARE)" as an attempt to recover from the error state,
 Error status = FrsErrorSuccess
 At the next poll, which will occur in 5 minutes, this computer will be re-added to the replica set. The re-addition will trigger a full tree sync for the replica set.


Aguarde 5 minutos e o serviço será restabelecido. Demorará uns 2 a 3 minutos para todos os arquivos serem replicados novamente, dependendo do tamanho da pasta.
Quando estiver normalizado, volta à chave de registro, criada num passo anterior, e atribua o valor "0", não sendo necessário reiniciar o serviço dessa vez.

segunda-feira, 16 de maio de 2011

Mover pastas compartilhadas sem perder o compartilhamento

Olá,
Depois que precisei mover a localização das pastas de arquivos de nosso Storage descobri que não existe software e nem mesmo pelo windows é possível mover pastas com compartilhamentos ativos, no mesmo servidor, sem perder tais compartilhamentos. Para migrar compartilhamentos entre servidores pode ser usado um software chamado Henya, mas para mover no mesmo servidor deve-se seguir os passos abaixo:

  1. Abra o registro do windows (regedit) e vá até a chave HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Shares
  2. Exporte a chave acima em um arquivo *.reg e salve em algum local seguro. Esse chave contém todos os compartilhamentos da máquina e sua devidas permissões.
  3. Vá no Windows Explorer e MOVA (não copie, pois a cópia não leva as permissões NTFS apenas o ato de mover sim) as pastas para o novo local (seja em outra unidade ou na mesma). O sistema irá dizer que você perderá todos os compartilhamentos, clique em sim e aguarde a conclusão da tarefa.
  4. Depois que as pastas estiverem no novo local, execute o arquivo *.reg salvo no passo 2 para escrever novamente o registro.
  5. Vá novamente na chave  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\services\LanmanServer\Shares e clique em cada chave que representa os compartilhamentos que você moveu editando a linha PATH. Coloque lá o novo caminho para chegar na pasta.
  6. Reinicie o sistema.
Após o recarregamento do registro do windows todos os compartilhamentos voltarão a funcionar novamente com todos as permissões NTFS e de compartilhamento anteriores.
O Google não mostra nenhuma resposta com essa solução então... guardem bem essa dica.

quarta-feira, 6 de abril de 2011

Event ID referente ao LOGON no Event Viewer

Nos Logs de Segurança do Windows vemos muitos eventos de Logon e Logoff. A dúvida que sempre fica é: Qual destes eventos de Logon se refere a um logon local? remoto? de sistema? etc...
Como fazemos para descobrir quem fez um logon remoto em um servidor ou estação num determinado dia ou hora?
A resposta é simples, se usarmos as informações abaixo:
Identificações de evento 528 e 540 significam um logon bem-sucedido, o evento ID 538 um logoff e todos os outros eventos nesta categoria identificam razões diferentes para uma falha de logon. Sabendo disso, filtre seu Log de Eventos procurando pelos IDs 528 e 540.
Na descrição do evento, busque pelo TIPO DE LOGON. Ele identificará qual a origem do logon, veja abaixo:
Logon Tipo 2 - Interactivo
Esse tipo de logon se dá quando o usuário faz logon usando teclado e tela locais com uma conta de domínio ou uma conta local.
Logon Tipo 3 - Rede
Ocorre quando se acessa a estação ou servidor de algum lugar da rede como por exemplo o acesso a pastas compartilhadas ou impressoras.
Logon Tipo 4 - Lote
Quando o Windows executa uma tarefa agendada, o serviço de tarefas agendadas primeiro cria uma nova sessão de logon para a tarefa para que ele possa ser executado sob a autoridade da conta do usuário especificado quando a tarefa foi criada. Quando isso ocorre tentativa de logon, o Windows registra o tipo de logon 4. Ocorre também com softwares desenvolvidos que precisam se logar no sistema por alguma razão (provavelmnete para startar alguma ação no sistema).
Logon Tipo 5 - Serviço
Semelhante a Tarefas Agendadas, cada serviço é configurado para executar com uma conta de usuário especificada. Quando um serviço é iniciado, o Windows cria primeiro uma sessão de logon para a conta do usuário especificado o que resulta em um evento de Logon / Logoff com o tipo de logon 5.
Logon Tipo 7 - Unlock
Esse tipo de logon é registrado quando o usuário desbloqueia uma estação bloqueada ou com screen saver que requer senha.
Tipo de logon 8 - NetworkCleartext
Este tipo de logon indica um logon na rede como o tipo de logon 3, mas onde a senha foi enviada pela rede em texto claro. Um exmplo prático e o mais comum desse tipo de logon é quando digitamos usuário e senha em sistemas web que utilizam autenticação básica e sem criptografia (SSL).
Tipo de logon 9 - NewCredentials
Se você usar o comando runas para iniciar um programa em uma conta de usuário diferente e especificar a opção / netonly, o Windows grava um evento de logon / logoff com o tipo de logon 9. Quando você inicia um programa com RunAs usando / netonly, o programa é executado no computador local com o usuário que estiver conectado no momento, mas como para qualquer conexão para outros computadores na rede, o Windows liga-o aos computadores usando a conta especificada no comando runas. Sem / netonly o Windows executa o programa no computador local e na rede como o usuário especificado e registra o evento de início de sessão com o tipo de logon 2.
Tipo de logon 10 - RemoteInteractive
Quando você acessar um computador através de Terminal Services, Windows Remote Desktop ou Remote Assistance registra a tentativa de logon com o tipo de logon 10, que torna mais fácil distinguir a verdadeira fonte dos logons de uma sessão do desktop remoto. Note no entanto que, antes de XP, Windows 2000 não utilizam o mesmo tipo de logon 10 e inícios de sessão de serviços de terminal são relatados como tipo de logon 2.
Tipo de logon 11 - CachedInteractive
O Windows suporta um recurso chamado cache Logons que facilitam a usuários móveis. Quando você não está conectado à rede da sua organização e tentar fazer logon no seu computador portátil com uma conta de domínio e não há nenhum controlador de domínio disponível para o portátil verificar a sua identidade. Para resolver esse problema, o Windows armazena um hash das credenciais dos últimos 10 domain logons interativos. Mais tarde, quando nenhum controlador de domínio está disponível, o Windows usa esses hashes para verificar sua identidade quando você tenta fazer logon com uma conta de domínio.
---------------------------------------------------------------------------------------------------------------------------------------

Por enquanto é só...
Rutenio Dantas

Report Viewer 2010 em servidor remoto (sem instalação)

Após fazer o upload de seu site que estava rodando normalmente na sua estação de desenvolvimento, se depara com o seguinte erro nas suas páginas de relatórios:

Could not load file or assembly 'Microsoft.ReportViewer.ProcessingObjectModel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.

A solução para esse problema é copiar as DLLs do Report Viewer para a pasta Bin da sua solução, mas a pasta padrão C:\Program Files\Microsoft Visual Studio 10.0\ReportViewer não contém todas as DLLs necessárias. A dll Microsoft.ReportViewer.ProcessingObjectModel.dll não está lá e é dificil de encontrá-la. Para copiar essa DLL siga o procedimento abaixo:

  1. Abra o prompt de comando com permissões de administrador.
  2. Vá até a pasta C:\Windows\assembly\GAC_MSIL\Microsoft.ReportViewer.ProcessingObjectModel\ e escolha a versão que deseja (no nosso caso a 10), abra a pasta e lá estará a bendita DLL.
  3. Copie o arquivo para a pasta Bin usando o COPY e depois faça o upload para seu site remoto.

Isso resolverá o problema acima com essa dll. Outras DLLs também podem ser encontradas nessa mesma pasta. Claro que se você tiver acesso ao servidor, é muito mas facil instalar o pacote do Report Viewer 2010.

quinta-feira, 31 de março de 2011

Carregar DropDownList com tag SELECTED em um item específico

Para carregar o DropDownList setando um item como selecionado a partir de um valor específico, utilize o código abaixo no evento "onload" da página, por exemplo.

DropDownList.SelectedIndex = DropDownList.Items.IndexOf(DropDownList.Items.FindByValue(VALOR))
para buscar por um valor de um item ou:

DropDownList.SelectedIndex = DropDownList.Items.IndexOf(DropDownList.Items.FindByText(TEXTO))

para buscar por um texto de um item.

Como exibir um elemento de uma query Linq pelo seu índice

Para conseguirmos exibir um elemento localizado em um determinado índice (index) de uma coleção usando Linq é preciso adicionar o .ToList ao final da query, senão obteremos o erro:
The query operator 'ElementAtOrDefault' is not supported

Por exemplo:

Dim fotos = (From f In db.FOTOs  Select f).ToList
Dim temp as Integer = fotos(4).ID
Pegando assim o valor do ID do quarto elemento da coleção.