Como desinstalar / remover completamente o cygwin do Windows 7

Respostas:

56

Os desenvolvedores dão instruções bastante detalhadas sobre como remover o software:

Como eu desinstalo todo o Cygwin?

A instalação não possui nenhum recurso de desinstalação automática. O método recomendado para remover todo o Cygwin é o seguinte:

  1. Se você tiver algum serviço Cygwin em execução, remova-o repetindo as instruções em http://cygwin.com/faq/faq.html#faq.setup.uninstall-service para todos os serviços que você instalou. Os serviços comuns que podem ter sido instalados são sshd, cron, cygserver, inetd, apache, postgresql,e assim por diante.

  2. Pare o servidor X11, se estiver em execução, e encerre os programas Cygwin que possam estar em execução em segundo plano. Saia do prompt de comando e verifique se nenhum processo Cygwin permanece. Nota: Se você deseja salvar seus pontos de montagem para uma reinstalação posterior, salve primeiro a saída mount -mconforme descrito em http://cygwin.com/cygwin-ug-net/using-utils.html#mount .

  3. Exclua a pasta raiz do Cygwin e todas as subpastas. Se você receber um erro de que um objeto está em uso, verifique se interrompeu todos os serviços e fechou todos os programas Cygwin. Se você receber um erro 'Permissão negada', precisará modificar as permissões e / ou a propriedade dos arquivos ou pastas que estão causando o erro. Por exemplo, às vezes os arquivos usados ​​pelos serviços do sistema são de propriedade da conta SYSTEM e não podem ser gravados por usuários regulares.

    A maneira mais rápida de excluir a árvore inteira se você enfrentar esse problema é alterar a propriedade de todos os arquivos e pastas da sua conta. Para fazer isso no Windows Explorer, clique com o botão direito do mouse na pasta raiz do Cygwin, escolha Propriedades e a guia Segurança. Se você estiver usando o Windows XP Home ou o Compartilhamento Simples de Arquivos, será necessário inicializar no Modo de Segurança para acessar a guia Segurança. Selecione Avançado, vá para a guia Proprietário e verifique se sua conta está listada como proprietário. Marque a caixa de seleção 'Substituir proprietário em subcontêineres e objetos' e pressione OK. Após o Explorer aplicar as alterações, você poderá excluir a árvore inteira em uma operação. Observe que você também pode conseguir isso no Cygwin digitando chown -R user /ou usando outras ferramentas como CACLS.EXE.

  4. Exclua os atalhos do Cygwin na área de trabalho e no menu Iniciar e qualquer coisa deixada por setup.exe no diretório de download. No entanto, se você planeja reinstalar o Cygwin, é uma boa idéia manter o setup.exe diretório de download, pois você pode reinstalar os pacotes deixados no cache sem fazer o download novamente.

  5. Se você adicionou o Cygwin ao caminho do sistema, remova-o, a menos que planeje reinstalar o Cygwin no mesmo local. Da mesma forma, se você definir a variável de ambiente CYGWIN em todo o sistema e não planeja reinstalar, remova-a.

  6. Por fim, se você quiser ser completo, poderá excluir a árvore de registro Software\Cygwinem HKEY_LOCAL_MACHINEe / ou HKEY_CURRENT_USER. No entanto, se você seguiu as instruções acima, já terá removido tudo o que é importante. Normalmente, apenas o diretório de instalação foi armazenado no registro.

John T
fonte
11
Originalmente, encontrei essas instruções na fonte à qual John T vinculou e as testei no Windows 7. Elas não funcionaram para mim. Alguém conseguiu que eles funcionassem no Windows 7? Não consegui excluir o C:\Cygwindiretório, mesmo depois de inicializar no modo de segurança com um prompt de comando.
Ben McCormack
Obrigado, isso funcionou para mim. A cada dois anos, chego a um ponto em que acho que o cygwin pode ser útil e que não pode ser tão inútil quanto eu me lembro (hoje eu queria fazer um pouco de hacking no Lisp). Depois de instalá-lo e desperdiçar cerca de duas horas, porque nada funciona e não há documentação, fico com essa sensação horrível de deja vu e lembro que é como um vírus na dificuldade de remover da máquina. O Ubuntu no VMWARE parece ser uma opção muito melhor.
11
Eu tive que fazer mais do que apenas alterar o proprietário para excluir, também tive que alterar as permissões para ser mais permissivo (basicamente, permitimos que todos tenham acesso total). Essa é a guia de permissões ao lado da guia do proprietário. Cygwin: nem uma vez.
mrmagooey
11
O comando que você indica ( chown -R user /) NÃO é o equivalente a alterar a propriedade da pasta Cygwin. Ele modificará a propriedade de TODOS os arquivos no sistema de arquivos.
piwi
@piwi, de dentro de um shell cygwin, a /pasta é a raiz da pasta cygwin, não o volume do sistema Windows "root". Esse comando não modificará a propriedade de todos os arquivos no sistema de arquivos do sistema Windows.
tgm1024
38

Na verdade, foi bastante ... fácil. Apenas faça isso ...

takeown /f C:\cygwin /r /d y
icacls c:\cygwin /t /grant everyone:F
del c:\cygwin

clique com o botão direito do mouse em excluí-lo. isso se foi.

Luigi Mackenzie C. Brito
fonte
11
Meus dois centavos: - Esses comandos devem ser executados com privilégios administrativos ("Executar como Administrador"). - Se alguns arquivos não puderem ser excluídos, use uma ferramenta como o Unlocker para se livrar deles. - No final, use uma ferramenta de limpeza do Registro (por exemplo, CCleaner) para remover as entradas residuais do Registro.
Igor Gorjanc 15/05
Também C: \ cygwin64 para a versão de 64 bits
Drakes
14

Siga os passos abaixo.

  1. C:\>takeown /r /d y /f cygwin
  2. C:\>icacls cygwin /t /grant Everyone:F
  3. C:\cygwin\bin>.\cygrunsrv.exe -E sshd
  4. C:\cygwin\bin>.\cygrunsrv.exe -R sshd

Em seguida, exclua a pasta c:\cygwine todas as suas subpastas. Essa abordagem funcionou para mim.

Esteja ciente de que comandos do Windows como takeown dependem do local, ou seja, a opção /d yfunciona apenas em sistemas em inglês. No sistema alemão, é preciso usar /d jpara trabalhar (sem dica na ajuda em inglês, * facepalm microsoft) *

Radhakrishna
fonte
11
Também a apenas icacls cygwin /t /grant Jeder:Ftrabalhou para mim no meu sistema alemão
jhasse
5

Eu fiz isso no Win 7 depois de tentar todo o possível a partir do Win 7 (note ... Consegui desativar os rootkits mais facilmente do que excluir o CygWin !!)

  1. C:\>takeown /r /d y /f cygwin

    Só funcionou para uma pasta ('var' eu acho)

  2. C:\>icacls cygwin /t /grant Everyone:F

    trabalhou

  3. C:\>takeown /r /d y /f cygwin

    repetir este comando funcionou após o comando (segundo) acima !!

  4. C:\cygwin\bin>.\cygrunsrv.exe -E sshd

    deu acesso negado

  5. C:\cygwin\bin>.\cygrunsrv.exe -R sshd

deu acesso negado

MAS, em seguida, fui para o Windows Explorer e excluí (reciclou) a pasta C: \ Cygwin e funcionou. Se foi completamente.

Graças ao post acima! Espero que isso ajude alguém.

Peter
fonte
1

Eu tive problemas ao excluir a pasta Cygwin e percorri toda a estrutura de diretórios e excluí cada subpasta. Isso é realmente doloroso, mas não há outra escolha.

CHEMBETI ARAVIND
fonte
1

Além da resposta de Luigi ,

icacls c:\cygwin /t /grant everyone:F

No Windows localizado, não há grupo de segurança com o nome "todos", você deve substituir um nome de grupo por um SID correspondente:

icacls cygwin /t /grant "*S-1-1-0":F

Mais SIDs estão aqui .

Vladislav Alexeev
fonte
1

Inicie o instalador do Cygwin e vá para empacotar o visualizador e selecione a visualização como uma categoria e o tipo de instalação como desinstalação ... Concluído.

Chaitanya Lohith Bollapragada
fonte
11
Bem-vindo ao Super Usuário! Por favor, leia a pergunta novamente com atenção. Sua resposta não responde à pergunta original. Isso desinstala apenas pacotes e não todo o cygwin.
DavidPostill
0

Não o vi mencionado aqui, mas se alguém ainda não conseguir remover a pasta C: \ cygwin porque está em uso, verifique o serviço 'Servidor' no seu computador. Não faz parte do Cygwin, mas vi que ele é usado para compartilhamento de pipe nomeado e pude excluir a pasta Cygwin quando a interrompi.

Just FYI

Isaac
fonte
0

Bem, nada disso funcionou, então aqui está o que eu fiz:

  1. Defina o proprietário para qualquer usuário que você seja, conforme descrito acima.
  2. Exclua todos os usuários das permissões de pasta no Security-Edit.
  3. Adicione novamente seu usuário e defina as permissões de controle total.
  4. Vá para Avançado e marque as duas caixas de seleção na parte inferior (Incluir permissões herdáveis ​​..., Substitua todas as permissões de objeto filho ..., blahblahblah).
  5. Aplique as alterações.
  6. Simplesmente exclua a pasta. Deveria trabalhar.
user267389
fonte
Você pode formatar sua pergunta? Seria uma pergunta útil extremamente difícil de ser lida em uma pergunta útil.
Ramhound