Eu só usei o Windows SFU no Windows 2008 antes, mas acredito que seja baseado no Interix. Eu brinquei com o cygwin de vez em quando, mas não uma quantidade enorme, então alguém me corrija se eu disser algo obviamente errado aqui.
- Sensação semelhante ao Unix: o Interix vence este. O ambiente parece muito mais "completo". Não sei bem como colocá-lo. O Interix é executado ao lado do subsistema win32, onde o cygwin é executado em cima dele. Portanto, o interix é um "cidadão de primeira classe" no território do kernel do Windows. Coisas como
ps
e df
funcionam bem.
- Desempenho: não tendo realizado nenhum teste de desempenho importante, acho que o Interix também ganha. Novamente, está sendo executado em um nível mais baixo. Você não está apenas executando aplicativos Win32 com uma DLL de compatibilidade POSIX vinculada.
- Pacotes / software aleatório: Cygwin vence este por dois motivos. Em primeiro lugar, o cygwin é muito mais conhecido. Muitos softwares Unixy terão suporte para suas peculiaridades. Você também pode instalar as coisas com muita facilidade a partir do instalador da GUI. Interix (eu acredito) não tem nada parecido com isso embutido nele. Claro, você pode baixar algo, compilá-lo usando o gcc (que eu acho que pode ser pré-construído) e rezar para que funcione, mas é um pouco como portar software para qualquer outra variante aleatória do Unix (como Solaris ou AIX) - alguns as coisas vão funcionar, outras vão tentar arrancar sua perna e matar seus filhos.
- Integração com aplicativos e ferramentas do Windows: Para ser sincero, os dois meio que sugam isso. Se você tem, digamos, um servidor Apache executando dentro do cygwin ou Interix, com certeza, ele será capaz de se comunicar via TCP com os programas Win32, mas isso é o mais longe possível. De dentro do interix, acredito que você pode matar os programas Win32 e listá-los usando o ps, não tenho certeza se você pode fazer isso com o cygwin. Com os dois, você pode usar o gerenciador de tarefas do Windows para matar coisas.
- Integração com VMs: abordando seu exemplo de compartilhamento de um diretório pessoal e, em seguida, sim. Você pode usar o samba para isso, e acredito que o NFS também funciona no Interix para algo mais unixy. Você não encontrará nenhuma interface gráfica agradável ou qualquer coisa para fazer o trabalho para você. Tanto o cygwin quanto o Interix permitem que você acesse seus sistemas de arquivos regulares.
- Tamanho da base de usuários: Cygwin vence aqui, eu diria. Era muito difícil encontrar coisas que haviam sido testadas e desenvolvidas para rodar no Interix, onde a maioria das coisas de código aberto parecia suportar o cygwin como uma plataforma de compilação.
Se você possui uma cópia de um sistema operacional Windows com suporte para Interix (como você disse, uma edição Enterprise, uma edição Ultimate ou uma edição Server), não há problema em tentar. É um ambiente de sentimento muito completo. Cygwin, como você disse, funciona com tudo, e é mais conhecido e com melhor suporte, mas parece um pouco para mim um truque sujo. Algumas pessoas usam regularmente embora.
/ * meta note- Detesto que os comentários sejam tão curtos * /
Eu concordo principalmente com a resposta de Andrew com alguns comentários. Substituí muitos sistemas unix pelo SUA / SFU (não, eles não são iguais, mas próximos) no Windows.
fonte
Não posso comentar a resposta de JimB, abordando-a aqui, em particular o ponto sobre a integração do Windows. O Cygwin, baseado no Win32, em vez de ser executado em seu próprio subsistema, embora mais lento, fornece uma integração muito maior ao Windows. Ele ainda permite que as APIs do Windows e UNIX sejam usadas no mesmo programa, o que permite coisas como o servidor Cygwin X ou o terminal mintty.
O 'ps' do Cygwin lista os processos do Windows se você der a opção -W e 'kill -f' os matará. Os programas Windows podem ser chamados a partir do Cygwin e conectados aos programas Cygwin usando todos os mecanismos usuais, como pipes. (Não sei se isso é possível no Interix.)
Caminhos no estilo do Windows, com barras para frente e para trás, são suportados. O Cygwin 1.7 tornou o UTF-8 o conjunto de caracteres padrão, e os nomes de arquivos UTF-16 do Windows são traduzidos automaticamente, portanto, os nomes de arquivos em qualquer idioma são exibidos corretamente no Cygwin. Não sei o que o Interix faz aqui, mas não consegui encontrar nenhuma evidência de que ele suporte Unicode.
Outros recursos de integração incluem o utilitário 'cygstart' para abrir um arquivo como se você tivesse clicado duas vezes no Explorer e o dispositivo / dev / clipboard para acessar a área de transferência do Windows.
fonte
Deixe-me compartilhar minha experiência na instalação do Interix para Windows 7.
Nossa jornada começa em uma página obscura para o Windows Server 2008.
Aqui você descobrirá que nem é mais chamado Interix, mas sim Subsistema para Aplicativos Baseados em Unix ou SUA . Em seguida, você notará apenas em um comentário do usuário que o SUA está disponível apenas para o Windows 7 Ultimate ou Enterprise. Isso não é mencionado no artigo em nenhum lugar. Depois de instalar o "subsistema", você perceberá que não são mais do que 2 atalhos no menu Iniciar.
Agora você chega ao verdadeiro mal. Clique no atalho para Download e você será direcionado para a página de download.
Aqui temos 3 arquivos disponíveis para download. Esses arquivos têm mais de 400 MB e, até o momento, foram escritos com mais de 4 anos . Além disso, não temos opções de baixar pacotes personalizados, certas partes, etc. Você perceberá que esse link é realmente para o Vista e não para o Windows 7 e precisará pesquisar na Internet para encontrar a página do Windows 7 . Nesse ponto, desisti.
Cygwin
Acesse cygwin.com . Faça o download do cygwin.com/setup-x86.exe . Este arquivo tem 714 KB . Execute uma instalação básica e você verá que leva cerca de 2 minutos .
Depois disso, você pode reutilizar o instalador para muitos outros pacotes, de acordo com sua preferência. O moral da história é que Cygwin se preocupa com o usuário .
fonte
A sensação do UNIX é bastante subjetiva. Meu voto vai com o CygWin, pois possui o servidor CygWin / X Xwindows com todos os recursos necessários. O SFU recebeu as ferramentas básicas do X11, mas era muito pouco e muito tarde. Muitos (inclusive eu) foram apresentados ao CygWin pela necessidade de ter um servidor X11. Em termos de integridade, o CygWin também está melhor posicionado, pois é de código aberto e muitos softwares licenciados pela GNU ou GPL são portados para ele. Vi alguns produtos comerciais para o CygWin, enquanto vi apenas um produto que requer os Serviços UNIX para Windows NT e nenhum desde então. YMMV.
Disponibilidade do pacoteé uma vitória clara para o CygWin influenciada por vários fatores: - menor custo de entrada: o "qualquer Windows" com CygWin versus licença de classe de servidor para SFU / SUA. Alguma funcionalidade está disponível para os sabores da área de trabalho do Windows, mas das variedades mais caras e sem os componentes do servidor; - código aberto vs. código fechado e, mais importante, documentação disponível abertamente. No passado, até a lista de comandos e as APIs fornecidas estavam disponíveis apenas para assinantes do MSDN e pouca ou nenhuma informação estava disponível no site da Microsoft. Por outro lado, o conjunto de ferramentas GNU estava bem documentado e disponível tanto online quanto como páginas de manual; - as mudanças de nome e implementação são confusas. As primeiras versões estavam usando o kit de ferramentas MKS, que mais tarde foi abandonado.
Em termos de desempenho, pode-se argumentar que o Interix está mais próximo do kernel e, portanto, desfruta de um caminho de execução de código mais curto. A verdadeira questão é quanto e isso importa? Para a maioria dos programas, a diferença é de poucos por cento e é insignificante. Um exemplo artificial com E / S pesada pode ser apresentado, é claro. Eu preferiria colocar essas cargas no UNIX nativo, pois seria mais rápido do que os complementos nativos do Windows e UNIX sobre o Windows. Muitos migraram do Windows para o UNIX com o aumento da carga, enquanto eu não conheço nenhum exemplo de conversão do CygWin para o Interix (ou vice-versa). É a compatibilidade do UNIX que é procurada, e não o desempenho do UNIX, então coloquei isso no final da lista.
fonte