... e quais são as diferenças entre eles? Formulei minha pergunta assim para deixar claro que não estou interessado em uma guerra de opiniões, mas em uma comparação objetiva entre os diferentes sabores do BSD Unix. Idealmente, eu poderia receber feedback de usuários com experiência em todos eles.
fundo
Descobri recentemente que o Unix tem muito mais do que apenas o Linux. Eu uso Solaris no trabalho, isso abriu meus olhos. Agora estou interessado em novos departamentos, quero experimentar um novo e naturalmente tenho curiosidade sobre BSDs.
O problema
Não estou pedindo conselhos ou opiniões sobre o que o BSD instalar ; Quero conhecer as diferenças (e pontos comuns) entre eles para que eu possa decidir. O problema é que é difícil obter comparações adequadas entre eles.
Se você tiver sorte, terá uma definição apressada como esta:
FreeBSD = Popular all-rounder.
NetBSD = Portable (runs on a lot of platforms, including a toaster)
OpenBSD = Security above anything else.
(Pode ser verdade, mas não é realmente útil. Tenho certeza que o FreeBSD também é portátil e seguro ...)
Se você é azarado, é pego em uma daquelas inevitáveis lendas do Unix sobre projetos de divisão, bifurcação, mudança de nome por motivos intelectuais / morais, como Theo de Raadt é um extremista e como o MacOS X e o FreeBSD tinham um ancestral comum há mais de 20 anos.
Fascinante, mas não realmente informativo, é?
Os BSDs
Os BSDs nos quais estou interessado são:
- FreeBSD
- OpenBSD
- NetBSD
e opcionalmente
- Libélula
- Darwin
- ...
Minhas perguntas
Para entender melhor as diferenças, aqui está uma lista de perguntas um pouco relacionadas às diferentes distribuições (podemos usar esse termo?). Se você apresentar sua resposta sob alguma forma de dados tabulares, você é meu herói de todos os tempos!
- Eles usam o mesmo kernel?
- Eles usam as mesmas ferramentas da terra do usuário? (quais são as diferenças, se houver?)
- Eles usam o mesmo sistema de gerenciamento de pacotes / fontes?
- Eles usam o mesmo shell padrão?
- Os binários são portáteis entre eles?
- As fontes são portáteis entre elas?
- Eles usam árvores de diretório diferentes?
- Qual o tamanho de suas respectivas comunidades? Eles são da mesma ordem de magnitude?
- Quanto do desenvolvimento atual é comum?
- Quais são as principais incompatibilidades entre eles?
Não sei como essas perguntas são fáceis de responder e quão relevante para o formato StackExchange é realmente essa pergunta. Eu nunca encontrei um documento simples listando as diferenças entre BSDs de uma maneira clara, útil para usuários razoavelmente experientes olharem e fazerem uma escolha facilmente.
fonte
Respostas:
Eu não acho que darei a você e a todos a resposta perfeita, no entanto, usando um sistema BSD todos os dias para trabalhar, tenho certeza de que posso fornecer uma visão útil do mundo BSD. Eu nunca usei o NetBSD, não vou falar muito sobre isso.
Não, embora haja semelhanças devido aos garfos históricos. Cada projeto evoluiu separadamente.
Todos seguem o POSIX. Você pode esperar que um conjunto de ferramentas tenha a mesma funcionalidade entre * BSD. Também é comum ver algumas diferenças óbvias nas ferramentas de gerenciamento de processo / rede nos BSDs.
Eles fornecem um sistema de empacotamento, diferente para cada sistema operacional.
Não, por exemplo, o FreeBSD usa csh, o OpenBSD usa ksh.
Não:
Eles realmente não suportam emulação binária estável e rápida. Não confie nisso.
Alguns sim, desde que você não use o código do kernel ou o código libc (que está intimamente ligado ao sistema operacional), por exemplo.
Não, eles são muito semelhantes ao Linux aqui. No entanto, o FreeBSD defende o uso de / usr / local / etc para arquivos de configuração de software de terceiros. O OpenBSD coloca tudo em / etc ... Eles colocam todos os terceiros em / usr / local, enquanto a distribuição Linux faz o que bem entender. Em geral, você pode dizer que * o BSD é muito conservador quanto a isso, as coisas pertencem a onde elas pertencem, e isso não é algo para compensar.
O FreeBSD é o maior e mais ativo, você pode acessá-lo através de diversos fóruns, listas de discussão, canais de IRC e outros ... O OpenBSD tem uma boa comunidade, mas é visível principalmente através de listas de IRC e de discussão.
Na verdade, se você acha que precisa de uma boa comunidade, o FreeBSD é o caminho a seguir. As comunidades NetBSD e OpenBSD estão centradas no desenvolvimento, conversam sobre novas melhorias, etc. Eles realmente não gostam de fazer publicidade ou suporte básico ao usuário. Eles esperam que todos sejam usuários avançados do Unix e capazes de ler a documentação antes de perguntar qualquer coisa.
Como o código de licenças realmente gratuito pode fluir entre os projetos, o OpenBSD geralmente corrige seu código seguindo o NetBSD (como suas fontes têm muito em comum), o FreeBSD pega e integra o Packet Filter do OpenBSD, etc. É obviamente mais difícil quando se trata de drivers e outros coisas do kernel.
Eles não são compatíveis em formato binário, mas são principalmente compatíveis em sintaxe e código. Você pode confiar nisso para obter portabilidade no seu código. Ele criará ou executará facilmente em todos os tipos de BSD, exceto se você estiver muito perto do kernel (ifconfig, pfctl ...).
Veja como você pode aprender com o mundo do BSD:
Tente substituir o seu roteador doméstico por uma caixa openbsd, brinque com o pf e a rede. Você verá como é fácil fazer o que deseja. É limpo, confiável e seguro. Use um FreeBSD como desktop, eles suportam muitas GPUs, você pode usar o flash até certo ponto, há alguma compatibilidade com os binários do Linux. Você pode construir com segurança seu kernel personalizado (na verdade, isso é recomendado). No geral, é uma boa experiência de aprendizado. Experimente o NetBSD em hardware muito antigo ou até em torradeiras .
Embora sejam diferentes, cada um deles tenta ser um bom sistema operacional e combina mais com os usuários do que com as situações. Como uma experiência de aprendizado, experimente todos (Net / Open / Free), mas mais tarde você poderá usar apenas 1 na maioria das situações (já que possui mais conhecimento em um sistema específico ou se encaixa mais na comunidade).
Os outros BSDs são híbridos ou apenas versões ligeiramente modificadas, acho melhor ficar perto da fonte do desenvolvimento do software (use filtro de pacotes no OpenBSD, configure sua área de trabalho no FreeBSD, ...).
Como nota pessoal, fico feliz em ver um entusiasta como você, e espero que você encontre muitas coisas boas no mundo do BSD. O BSD não é sobre odiar janelas ou outros sistemas operacionais, é sobre gostar do Unix.
fonte
(Eu não posso dar uma resposta completa, mas também não posso me afastar desta questão, então ... vou abordar alguns pontos ... O FreeBSD foi o BSD mais usado (em 2005) , então tento para oferecer algumas dicas sobre "os outros".)
pkgsrc
, o OpenBSD está aqui , o FreeBSD está aqui . Você pode consultar isso para comparar os pacotes disponíveis. Os respectivos ecossistemas são semelhantes, mas não idênticos.pkgsrc
se destaca por ser feito para ser portátil, ou seja, você também pode usá-lo com o Minix 3 ou Linux. Portanto, não há interesse não-BSD e (talvez como conseqüência) há mais portas.pkgsrc-wip
facilita a contribuição.kyua
), permitindo que eles executem testes automatizados (e hárump
, possibilitando que o código do kernel seja testado no espaço do usuário). Também tem o suporte XEN mais completo, eu acho. Partindo um pouco da busca pela "portabilidade", eles introduziram três níveis: "Focus", "Organic" e "Life Support" . Eles também introduziram Lua no sistema base.Bottom line? Dê uma olhada e experimente. Usando pacotes binários (geralmente oferecidos com uma liberação binária, ou seja, não para instantâneos de
-current
), não é muito trabalho obter um sistema BSD utilizável.Editar Você pode estar interessado em seus planetas:
undeadly.org
para OpenBSD, blogs.FreeBSDish.org para o FreeBSD eplanet.netbsd.se
para todos eles ( baixo ? No momento ())fonte