web-dev-qa-db-ja.com

異なるBSDの共通点は何ですか?

...そしてそれらの違いは何ですか?私はこのような質問を作成して、BSD Unixのさまざまなフレーバー間の客観的な比較ではなく、意見の大戦争に興味がないことを明確にしました。理想的には、すべての経験を持つユーザーからフィードバックを得ることができます。

背景

最近、Unixには単なるLinuxよりもはるかに多くの機能があることを発見しました。私は仕事でSolarisを使用しています。今、私は新しいユニックスに興味があります、私は新しいものを試したいと思っています、そして私は自然にBSDに興味があります。

問題

インストールするBSDについてアドバイスや意見を求めているのではありません;両者の違い(と共通点)を知りたいので、自分で決心することができます。問題は、それらを適切に比較することが難しいことです。

運が良ければ、次のような急いで定義を取得できます。

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

(それは本当かもしれませんが、実際には役に立ちません。FreeBSDも移植可能で安全だと確信しています...)

運が悪いと、プロジェクトの分割、分岐、知的/道徳的根拠によるブランド変更、Theo de Raadtの過激派、およびMacOS XとFreeBSDの共通祖先が20年以上前にどのように変わったかについて、UNIXの伝説に巻き込まれます。

魅力的ですが、実際には有益ではありませんか?

BSD

私が興味を持っているBSDは次のとおりです。

  • FreeBSD
  • OpenBSD
  • NetBSD

そしてオプションで

  • トンボ
  • ダーウィン
  • ...

私の質問

違いをよりよく理解するために、さまざまなディストリビューションに関するいくぶん関連する質問のリストを次に示します(この用語を使用できますか?)。表形式のデータの形で答えを提示すると、あなたは私の史上最高のヒーローです!

  • 同じカーネルを使用していますか?
  • 同じユーザーランドツールを使用していますか? (もしあれば、違いは何ですか?)
  • 彼らは同じパッケージ/ソース管理システムを使用していますか?
  • 同じデフォルトのシェルを使用していますか?
  • バイナリはそれらの間で移植可能ですか?
  • それらの間でソースを移植できますか?
  • 彼らは異なるディレクトリツリーを使用していますか?
  • それぞれのコミュニティの大きさは?それらは同じ大きさですか?
  • currentの開発のどの程度が一般的ですか?
  • それらの間の主な非互換性は何ですか?

これらの質問への回答がどれほど簡単か、そしてこの質問が実際にStackExchange形式にどれほど関連しているかはわかりません。 BSDの違いを明確にリストした簡単なドキュメントに出くわしたことはありません。かなり経験豊富なユーザーが見て簡単に選択を行うのに役立ちます。

63
rahmu

私はあなたやみんなに完璧な答えを与えるとは思いませんが、仕事のために毎日BSDシステムを使用しているので、BSDの世界で有用な洞察をあなたに与えることができると確信しています。私は今までNetBSDを使用したことがないので、それについてはあまり話しません。

同じカーネルを使用していますか?

いいえ、歴史的なフォークのために類似点はありますが。各プロジェクトは個別に進化しました。

同じユーザーランドツールを使用していますか? (もしあれば、違いは何ですか?)

それらはすべてPOSIXに従います。一連のツールが* BSD間で同じ機能を持つことが期待できます。 BSD内のプロセス/ネットワーク管理ツールに明らかな違いがあることもよくあります。

彼らは同じパッケージ/ソース管理システムを使用していますか?

これらは、OSごとに異なるパッケージングシステムを提供します。

同じデフォルトのシェルを使用していますか?

いいえ、たとえば、FreeBSDはcshを使用し、OpenBSDはkshを使用します。

バイナリはそれらの間で移植可能ですか?

番号:

(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

安定した高速のバイナリエミュレーションを実際にはサポートしていません。それに依存しないでください。

それらの間でソースを移植できますか?

たとえば、カーネルコードやlibcコード(OSに密接に結びついている)を使用しない限り、一部はそうです。

彼らは異なるディレクトリツリーを使用していますか?

いいえ、ここではLinuxとよく似ています。ただし、FreeBSDでは、サードパーティソフトウェアの構成ファイルに/ usr/local/etcを使用することを推奨しています。 OpenBSDはすべてを/ etcに配置します...彼らはサードパーティをすべて/ usr/localに配置しますが、Linuxディストリビューションは必要に応じて行います。一般に、* BSDはそれについて非常に保守的であり、物事はそれらが属する場所に属し、それを構成するものではないと言えます。

それぞれのコミュニティの大きさは?それらは同じ大きさですか?

FreeBSDは最大かつ最もアクティブであり、さまざまなフォーラム、メーリングリスト、IRCチャネルなど)を介して到達できます。OpenBSDには良いコミュニティがありますが、IRCおよびメーリングリスト。

実際、良いコミュニティが必要だと思うなら、FreeBSDが最適です。 NetBSDとOpenBSDのコミュニティーは、開発を中心としており、新しい改善点などについて話します。基本的なユーザーサポートや宣伝はあまり好きではありません。彼らは誰もがUNIXの上級ユーザーであり、何かを尋ねる前にドキュメントを読むことができると期待しています。

現在の開発のどの程度が一般的ですか?

本当に無料のライセンスコードがプロジェクト間を流れる可能性があるため、OpenBSDは多くの場合、NetBSDに続いてコードにパッチを適用します(ソースには多くの共通点があるため)、FreeBSDはOpenBSDのパケットフィルターなどを採用して統合します。ドライバーなどに関しては明らかに困難ですカーネルのもの。

それらの間の主な非互換性は何ですか?

これらはバイナリ形式では互換性がありませんが、構文とコードではほとんど互換性があります。これを利用して、コードの移植性を実現できます。カーネルに近づきすぎている場合(ifconfig、pfctl ...)を除き、すべての種類のBSDで簡単にビルドまたは実行できます。

BSDの世界から学ぶことを楽しむ方法は次のとおりです。

ホームルーターをopenbsdボックスに置き換えて、pfとネットワークで遊んでみてください。あなたが望むものを作ることがいかに簡単かがわかります。クリーンで信頼性が高く、安全です。デスクトップとしてFreeBSDを使用します。それらは多くのGPUをサポートしています。ある程度フラッシュを使用できます。Linuxバイナリとの互換性があります。カスタムカーネルを安全に構築できます(実際にはこれをお勧めします)。それは全体的に良い学習体験です。非常に古いハードウェアまたは トースター でもNetBSDを試してください。

それらは異なりますが、それぞれが優れたOSになるように努めており、状況よりもユーザーに一致します。学習体験として、それらすべてを試してみてください(Net/Open/Free)が、後でほとんどの状況で1つだけを使用していることに気付くかもしれません(特定のシステムに精通しているか、コミュニティにもっと慣れているため)。

他のBSDはハイブリッドまたはわずかに変更されたバージョンです。ソフトウェア開発のソースの近くに留まる方が良いと思います(OpenBSDでパケットフィルターを使用し、FreeBSDでデスクトップを自分で構成するなど)。

個人的なメモとして、私はあなたのような愛好家に会えてうれしいです、そしてあなたがBSDの世界で多くの良いものを見つけてくれることを望みます。 BSDはウィンドウや他のOSを嫌うことではなく、Unixを好きになることです。

51
Aki

(私は完全な答えを与えることはできませんが、この質問から離れることもできないので、私はいくつかの点に取り組みます... FreeBSDが最も使用されたBSD(2005年)でした) なので、「その他」に関する手がかりをいくつか提供するようにしています。)

  • まず第一に、あなたは一行の説明を却下する権利があります。OpenBSDのモットーは「無料、機能的、安全」であり、NetBSD開発者も機能的なシステムの作成に努めています。
  • バイナリ互換性:NetBSD(私が試したことがありません)でFreeBSDバイナリを実行できるようです。これは、私が知っているBSD間のバイナリ互換の唯一の形式です(NetBSDとFreeBSDの(限定された)Linuxバイナリ互換性は別として)。
  • ports:NetBSDおよびDragonFlyBSDのポートは pkgsrc を使用し、OpenBSDは here 、FreeBSDは here を使用します。これを参照して、利用可能なパッケージを比較できます。それぞれのエコシステムは似ていますが、同一ではありません。
    • pkgsrcは、移植可能に作成されているため目立ちます。つまり、Minix 3またはLinuxでも使用できます。そのため、非BSDに関心があり、(結果として)ポートが増えています。 pkgsrc-wip は、貢献を容易にします。
  • NetBSD最近導入された完全な Automatic Testing Framework (また参照 kyua )自動テストを実行できるようにします(そして- rump 、ユーザー空間でカーネルコードをテストできるようにします)。 XENのサポートも十分に受けていると思います。彼らは「移植性」の探求から少し離れて、導入しました つの層:「フォーカス」、「オーガニック」、「ライフサポート」 。また、Luaをベースシステムに導入しました。
  • OpenBSDのドリフトを捉えるために、 これらの「論文」(主にニースのスライド) は貴重なリソースであり、OpenBSDの最近の開発に関する洞察を提供します。
  • DragonFlyBSD独自のZFS候補 [〜#〜] hammer [〜#〜] を開発しました。これは明らかにメモリ消費量がはるかに少ない(おそらく機能が完全ではない)わかりません)。
  • 私はサポートの欠如で@Akiに同意しません== OpenBSDまたはNetBSDで、メーリングリストを見て、どちらも役立つコミュニティを提供しています a look自分自身 -マンページを参照しても問題ありません。

ボトムライン?周りを見て、彼らに試してみてください。バイナリパッケージ(通常はバイナリリリースで提供されます。つまり、-currentからのスナップショット用ではありません)を使用すると、使用可能なBSDシステムを取得するのはそれほど難しくありません。

編集あなたは彼らの惑星に興味があるかもしれません: undeadly.org OpenBSDの場合 blogs.FreeBSDish.org FreeBSDの場合 planet.netbsd.se forすべてdown現時点(?))

16
sr_