GNU/Linux >> Linux の 問題 >  >> Linux

異なるBsdsには何が共通していますか?

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

背景

最近、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が過激派である方法、MacOSXとFreeBSDが20年以上前に共通の祖先を持っていた方法に関するUnixの避けられない伝説の1つに巻き込まれます。

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

BSD

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

  • FreeBSD
  • OpenBSD
  • NetBSD

およびオプションで

  • ドラゴンフライ
  • ダーウィン

私の質問

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

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

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

承認された回答:

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

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

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

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

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

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

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

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

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

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

いいえ:

([email protected] 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のパケットフィルターなどを取り統合します。ドライバーなどに関しては明らかに困難です。カーネルのもの。

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

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

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

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

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

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

関連:Linux – zramを使用する場合のvm.swappinessの適切な値は?

個人的なメモとして、私はあなたのような愛好家に会えてうれしいです、そしてあなたがBSDの世界でたくさんの良いものを見つけることを願っています。 BSDは、Windowsや他のOSを嫌うことではなく、Unixを好むことです。


Linux
  1. nologin ユーザーのシェルとしての /bin/false と /sbin/nologin の違い

  2. DNS サーバーの種類とは

  3. プロセスが持つことができるさまざまな UID のそれぞれの目的は何ですか?

  1. Cのstrtok_rとstrtok_sの違いは何ですか?

  2. arm64 と armhf の違いは何ですか?

  3. fsck と e2fsck の違いは何ですか?

  1. ls と l はどう違いますか?

  2. 「su -」と「su --login」の違いは何ですか?

  3. プロセスは所有者を持つことができますか?どういう意味ですか?