Farklı BSD'lerin ortak noktası nedir?


62

... ve aralarındaki farklar nelerdir? Sorumu, BSD Unix'in farklı lezzetleri arasındaki objektif bir kıyaslama ile değil, bir düşünce dalgasıyla ilgilenmediğimi açıkça ortaya koymak için formüle ettim. İdeal olarak, hepsinde deneyimi olan kullanıcılardan geri bildirim alabilirim.

Arka fon

Geçenlerde Unix'te sadece Linux'tan çok daha fazlası olduğunu keşfettim. Solaris'i işte kullanıyorum, gözlerimi açtı. Şimdi yeni birliklerle ilgileniyorum, yenisini denemek istiyorum ve doğal olarak BSD'leri merak ediyorum.

Sorun

Hangi BSD'nin kurulacağı konusunda tavsiye veya görüşler istemiyorum ; Aralarındaki farkları (ve ortak noktaları) bilmek istiyorum, böylece kendi kararımı verebiliyorum. Sorun, aralarında doğru karşılaştırmalar elde etmenin zor olmasıdır.

Şanslıysanız, bunun gibi aceleci bir tanım elde edersiniz:

FreeBSD = Popular all-rounder.
NetBSD = Portable (runs on a lot of platforms, including a toaster)
OpenBSD = Security above anything else.

(Doğru olabilir, ancak gerçekten kullanışlı değil. FreeBSD'nin de taşınabilir ve güvenli olduğundan eminim ...)

Şanssızsanız, entelektüel / ahlaki zeminde bölünme, çatallanma, yeniden markalaşma gibi projelerle ilgili kaçınılmaz Unix efsanelerinden birine, Theo de Raadt'in nasıl aşırılıkçı olduğuna ve MacOS X ile FreeBSD'nin 20 yıldan fazla bir süre önce ortak bir atasına sahip olduklarına dair yakalanırsınız.

Büyüleyici, ama gerçekten bilgilendirici değil, öyle mi?

BSD'ler

İlgilendiğim BSD'ler:

  • FreeBSD
  • OpenBSD
  • NetBSD

ve isteğe bağlı olarak

  • Yusufçuk
  • Darwin
  • ...

Sorularım

Farklılıkları daha iyi anlamak için, farklı dağıtımlarla ilgili birtakım ilgili soruların bir listesi (bu terimi kullanabilir miyiz?). Cevabınızı bir tür tablo halinde veri sunuyorsanız, benim tüm zamanların kahramanımsınız!

  • Aynı çekirdeği kullanıyorlar mı?
  • Aynı kullanıcı araçları kullanıyorlar mı? (eğer varsa, farklar nelerdir?)
  • Aynı paket / kaynak yönetim sistemini kullanıyorlar mı?
  • Aynı varsayılan kabuğu kullanıyorlar mı?
  • İkili dosyalar aralarında taşınabilir mi?
  • Kaynaklar aralarında taşınabilir mi?
  • Farklı dizin ağaçları kullanıyorlar mı?
  • Toplulukları ne kadar büyük? Onlar aynı büyüklükte mi?
  • Mevcut gelişimin ne kadarı yaygın?
  • Aralarındaki başlıca uyuşmazlıklar nelerdir?

Bu soruların ne kadar kolay yanıtlandığını ve bu sorunun StackExchange formatıyla ne kadar ilgili olduğunu bilmiyorum. BSD'ler arasındaki farkları net bir şekilde listeleyen basit bir belge ile hiç karşılaşmamıştım, oldukça deneyimli kullanıcılar için kolayca bakmak ve bir seçim yapmak için faydalı oldum.


13
Bu harika bir soru, +1
n0pe

4
Ekmek kızartma makinesi
işinin

haha iyi sadece bir demo oldu. Ekranda yanık seviyesinin% 200'ün üzerinde görünmesini seviyorum.
Aki

Yanıtlar:


50

Size ve herkese mükemmel bir cevap vereceğimi sanmıyorum, ancak iş için her gün bir BSD sistemi kullanarak, size BSD dünyasında yararlı bir fikir verebileceğime eminim. NetBSD'yi hiç kullanmadım, çok fazla konuşmayacağım.

Aynı çekirdeği kullanıyorlar mı?

Hayır, tarihi çatallardan dolayı benzerlikler olsa da. Her proje ayrı ayrı gelişti.

Aynı kullanıcı araçları kullanıyorlar mı? (eğer varsa, farklar nelerdir?)

Hepsi POSIX'i takip ediyor. * BSD arasında bir takım araçlar aynı işlevselliğe sahip olmasını bekleyebilirsiniz. BSD'lerdeki süreç / ağ yönetimi araçlarında bazı belirgin farklılıklar görmek de yaygındır.

Aynı paket / kaynak yönetim sistemini kullanıyorlar mı?

Her işletim sistemi için farklı bir paketleme sistemi sağlarlar.

Aynı varsayılan kabuğu kullanıyorlar mı?

Hayır, örneğin FreeBSD csh'yi, OpenBSD ksh'yi kullanır.

İkili dosyalar aralarında taşınabilir mi?

Hayır:

(XXXX@freebsd-6 101)file `which ls`
/bin/ls: ELF 32-bit LSB executable, Intel 80386, version 1 (FreeBSD), for FreeBSD 5.5, dynamically linked (uses shared libs), stripped

Gerçekten kararlı ve hızlı ikili emülasyonu desteklemiyorlar. Ona güvenme.

Kaynaklar aralarında taşınabilir mi?

Bazıları, örneğin, çekirdek kodunu veya libc kodunu kullanmadığınız sürece (işletim sistemine sıkı bir şekilde bağlı).

Farklı dizin ağaçları kullanıyorlar mı?

Hayır, burada Linux'a çok benziyorlar. Ancak FreeBSD, üçüncü taraf yazılımın konfigürasyon dosyaları için / usr / local / etc kullanımını savunuyor. OpenBSD hepsine / etc 'i koyar ... Üçüncü tarafları / usr / local' a koyarlar, oysa Linux dağıtımı uygun gördüğü şekilde yapacaktır. Genel olarak şunu söyleyebilirsiniz: * BSD bu konuda çok muhafazakardır, işler ait oldukları yere aittir ve bu telafi edilecek bir şey değildir.

Toplulukları ne kadar büyük? Onlar aynı büyüklükte mi?

FreeBSD'ler en büyük ve en aktif olanıdır, birçok forumdan, posta listelerinden, IRC kanallarından vb. Ulaşabilirsin ... OpenBSD iyi bir topluluğa sahiptir fakat çoğunlukla IRC ve posta listelerinden görülebilir.

Aslında iyi bir topluluğa ihtiyacınız olduğunu düşünüyorsanız, FreeBSD devam etmenin yoludur. NetBSD ve OpenBSD toplulukları geliştirme etrafında odaklanır, yeni gelişmeler hakkında konuşurlar. Herkesin gelişmiş bir kullanıcı olmalarını ve herhangi bir şey sormadan önce belgeleri okuyabilmelerini bekliyorlar.

Mevcut gelişimin ne kadarı yaygın?

Projeler arasında gerçekten ücretsiz lisans kodları olduğundan, OpenBSD, kodlarını NetBSD'den sonra sık sık ekler (kaynakları ortak olduğu için), FreeBSD, OpenBSD'nin Paket Filtresi'ni vb. Alır ve birleştirir. çekirdek şeyler.

Aralarındaki başlıca uyuşmazlıklar nelerdir?

Bunlar ikili biçimde uyumlu değildirler, ancak çoğunlukla sözdizimi ve kod bakımından uyumludurlar. Kodunuzda taşınabilirlik elde etmek için buna güvenebilirsiniz. Çekirdeğe çok yakın olmadıkça (ifconfig, pfctl ...) haricinde, BSD'nin tüm lezzetlerini kolayca oluşturacak ve / ve uygulayacaktır.

İşte BSD dünyasından öğrenmenin tadını nasıl çıkarabilirsiniz:

Ev yönlendiricinizi bir openbsd kutusuyla değiştirmeyi deneyin, pf ve ağ ile oynayın. İstediğini yapmanın ne kadar kolay olduğunu göreceksin. Temiz, güvenilir ve güvenli. Bir FreeBSD'yi masaüstü olarak kullanın, çok fazla GPU'yu desteklerler, flash'ı bir dereceye kadar kullanabilirsiniz, Linux ikili dosyalarıyla bir miktar uyumluluk vardır. Özel çekirdeğinizi güvenle oluşturabilirsiniz (aslında bu önerilir). Genel olarak iyi bir öğrenme deneyimi. NetBSD'yi çok eski donanımda ve hatta ekmek kızartma makinelerinde deneyin .

Her ne kadar farklı olsalar da, her biri iyi bir işletim sistemi olmaya çalışıyor ve kullanıcılar durumlardan daha çok eşleşecek. Bir öğrenme deneyimi olarak hepsini deneyin (Net / Açık / Ücretsiz), ancak daha sonra kendinizi çoğu durumda yalnızca 1 kullanarak bulabilirsiniz (belirli bir sistemde daha bilgili olduğunuz veya topluluğa daha çok uyduğunuz için).

Diğer BSD'ler melezdir veya sadece biraz değiştirilmiş sürümlerdir, yazılım geliştirme kaynağına yakın durmayı daha iyi bulurum (OpenBSD'de paket filtresi kullanın, kendinizi FreeBSD'de masaüstünüzü yapılandırın ...).

Kişisel bir not olarak, sizin gibi bir meraklıyı gördüğüme sevindim ve umarım BSD dünyasında birçok güzel şey bulacaksınız. BSD, pencerelerden veya diğer işletim sistemlerinden nefret etmekle ilgili değildir, Unix'i beğenmekle ilgilidir.


5
Aşağı kaydırırken bunun bir Gilles cevabı olduğundan emindim. Aki olsa harika bir cevap için teşekkürler!
n0pe

2
@MaxMackie - Ne demek istediğini biliyorum, aynı şeyi düşünüyordum! :-)
Chris Down,

2
Haha Ben burada gerçekten aktif değilim bu yüzden Gilles kimdir bilmiyorum ama cevabını okumak için can atıyorum!
Aki

1
Büyük bir cevap için büyük bir teşekkür ederim! Özellikle son bölümden keyif aldım. Sadece FreeBSD'yi sanal bir makineye kurdum. Bakalım nasıl gidiyor ...
rahmu

6
Son cümle için +1. Ama keşke bütünüyle +2
yapabilseydim

16

(Tam bir cevap veremem, ama bu sorudan da vazgeçemiyorum, bu yüzden ... Sadece bazı noktalara değineceğim ... FreeBSD en çok kullanılan BSD idi (2005’te) , denerim "diğerleri" ile ilgili bazı ipuçları sunmak.)

  • Her şeyden önce, tek satırlık açıklamaları reddetme hakkınız vardır , OpenBSD'nin sloganı "özgür, işlevsel ve güvenli" dır ve NetBSD geliştiricileri de işlevsel bir sistem yaratmaya çalışırlar.
  • İkili uyumluluk : NetBSD'de FreeBSD ikili dosyalarını çalıştırabilirsiniz (ki bu hiç denemedim). Bu, tanıdığım BSD'ler arasındaki (ikili NetBSD'ler ve FreeBSD'ler (sınırlı) Linux ikili uyumluluğu hariç) arasındaki ikili uyumluluğun tek şeklidir.
  • portlar : NetBSD ve DragonFlyBSD portları pkgsrc, OpenBSD'ler burada , FreeBSD'ler burada . Mevcut paketleri karşılaştırmak için buna başvurabilirsiniz. İlgili ekosistemler benzer ancak aynı değildir.
    • pkgsrctaşınabilir olmasıyla öne çıkıyor, yani onu Minix 3 veya Linux ile de kullanabilirsiniz. Bu nedenle, BSD'ye ilgi duymuyor ve sonuç olarak daha fazla liman var. pkgsrc-wipkatkıda bulunmayı kolaylaştırır.
  • NetBSD kısa süre önce, otomatik testler yapmalarını sağlayan (ve ayrıca , çekirdek kodunun kullanıcı alanında test edilmesini mümkün kıldı ) mümkün kılan kapsamlı bir Otomatik Test Çerçevesi (ayrıca bakınız kyua) tanıttı rump. Ayrıca, en kapsamlı XEN desteğini de aldım. “Taşınabilirlik” görevinden bir miktar ayrılarak, üç aşamaya girdiler : “Odaklanma”, “Organik” ve “Yaşam Desteği” . Ayrıca Lua'yı ana sisteme soktular.
  • OpenBSD'nin sürüklenmesini yakalamak için , bu "bildiri" (çoğunlukla güzel slaytlar) değerli bir kaynaktır ve size OpenBSD'deki son gelişmeler hakkında fikir verir.
  • DragonFlyBSD kendi ZFS-rakip, geliştirilen HAMMER görünüşe (özellik tamamlama, ben söyleyemem olarak muhtemelen) daha az bellek-aç,.
  • @Aki’ye OpenBSD veya NetBSD’de destek olmama konusunda hemfikir değilim , hem de posta listelerine bakarken, her ikisi de yararlı topluluklar sunuyor - kendinize bir göz atın - bir manpage sayfasına başvurmak suç değildir.

Alt çizgi? Etrafınıza bir göz atın ve bir deneyin. İkili paketleri kullanarak (genellikle ikili sürümlerde sunulur, yani anlık görüntüler için değil -current), kullanılabilir bir BSD sistemi elde etmek o kadar da işe yaramaz.

Düzen Onların gezegenlerin ilginizi çekebilir: undeadly.orgOpenBSD, blogs.FreeBSDish.org FreeBSD için ve planet.netbsd.seiçin hepsini ( aşağı ? An ())


5
Güzel cevap Bence söylenecek çok şey var, bir yazı yazmayı hak edecek. OpenBSD topluluğunun faydalı olmadığını söylemek istemedim. İkili uyumluluk hakkında biraz araştırma yaptım, dahası var: netbsd.org/docs/compat.html ve OpenBSD'de net_disk. Görünüşe göre Açık, freebsd ikili uyumuna sahipti : nixdoc.net/man-pages/OpenBSD/man8/compat_freebsd.8.html . Sizin de belirttiğiniz gibi, sınırlıdır ve ben buna güvenmem.
Aki
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.