Cygwin e TCP/IP Services 02/Sep/2005
Uso imenso o Cygwin, para poder executar diversas soluções GNU em Windows que de outra forma só seria possível se usasse o coLinux, ou o Bochs ou outros equivalentes. No entanto, desde que instalei diversas outras aplicações no Windows XP, fiquei sem conseguir correr aplicações TCP/IP tais como o rlogin, telnet ou ftp.
O problema afinal tem uma explicação simples:
- Verifiquei que o ficheiro (soft-link) /etc/services apontava para $SYSTEMROOT/system32/drivers/etc/services. Aproveitei para executar o dos2unix sobre o ficheiro original da Microsoft, mas só isso não resultou.
- Verifiquei que o meu sistema fazia a atribuição correcta da variável $SYSTEMROOT. Neste caso, o valor correcto é “C:WINDOWS”.
- Mesmo assim, continuava a não conseguir correr nenhuma das aplicações, que terminavam sempre com erro de xxx/tcp: unknown service. Após pesquisar no Google, cheguei à lista gmane.os.cygwin, onde li diversas respostas que explicaram por fim o problema.
- Alguma das aplicações Windows que tinha instalado tinham alterado a variável DataBasePath, em HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpipParameters, do tipo REG_EXPAND_SZ para REG_SZ. Sendo do tipo REG_SZ e como o seu valor continha a variável de sistema %SYSTEMROOT% (em vez de estar hard-coded, o que também não seria correcto) o Windows não expandia o valor final. Após apagar esta chave e criar uma nova do tipo REG_EXPAND_SZ com o valor %SYSTEMROOT%System32driversetc as aplicações Cygwin voltaram a funcionar.
Deixo aqui registrado a minha experiência, que só solucionou o problema graças à comunidade Open-Source, à Mailing List gmane.os.cygwin, ao motor de pesquisa Google e aos meus conhecimentos rudimentares sobre o Cygwin.
- Posted in : doHosting
- Author : José Carlos Monteiro
Comments»
no comments yet - be the first?