Outra causa para o sistema cliente AD é respostas DC lentas, comumente observadas em configurações com acesso DC remoto. A DLL do Cygwin consulta informações sobre cada grupo em que você está para preencher o cache local na inicialização. Você pode acelerar um pouco esse processo colocando em cache suas próprias informações em arquivos locais. Execute estes comandos em um terminal Cygwin com acesso de gravação para /etc
:
getent passwd $(id -u) > /etc/passwd
getent group $(id -G) > /etc/group
Além disso, defina /etc/nsswitch.conf da seguinte forma:
passwd: files db
group: files db
Isso limitará a necessidade de o Cygwin entrar em contato com o controlador de domínio do AD (DC) enquanto ainda permite que informações adicionais sejam recuperadas do DC, como ao listar diretórios remotos.
Além do item anterior ou em vez disso, você pode executar cygserver como um serviço de cache local para acelerar as solicitações de DC.
Programas Cygwin irá verificar com cygserver antes de tentar consultar o DC diretamente.
Uma opção menos preferível é criar um cache estático somente leitura dos dados de autenticação. Este é o método antiquado de fazer com que o Cygwin se integre ao AD, o único método disponível em versões anteriores a 1.7.34. Para fazer isso, execute mkpasswd e mkgroup , em seguida, coloque o seguinte em /etc/nsswitch.conf
para fazer com que o Cygwin trate esses arquivos como as únicas fontes de informações de usuários e grupos:
passwd: files
group: files
Deixando de fora o db
opção, estamos dizendo a DLL do Cygwin para nem tentar fazer pesquisas de AD. Se seus servidores do AD estiverem lentos, esse cache local acelerará as coisas. A desvantagem é que você se abre para o problema de cache obsoleto : sempre que os bancos de dados do AD forem alterados, o cache local ficará desatualizado até você atualizar os arquivos manualmente.