最小のLinux実装は何ですか?[閉まっている]


21

Linux OSが機能するための最低限のコンポーネントは何ですか?また、Linuxを学び、理解とニーズが成長するにつれて、拡張と改善のベースとして使用できるものは何ですか?

回答:



9

学びたいなら、Gentooは良い選択肢です-最小限のGentooインストールはルートシェルとパッケージマネージャーであり、そこからシステムの残りを構築します。Gentooはパッケージのアップストリームにもかなり近いので、自分でいくつかのパッケージをダウンロードしてビルドしたい場合、あまり多くの問題に遭遇することはありません(実際、/ etc / portage / package.providedファイルに追加できます)インストールした後、依存関係として使用してください!)

可能な限り最小のLinuxシステムを探している場合は、独自のカーネルを構築し、使用する予定のないドライバーと機能をすべて削除してから、同様に最小化されたBusyboxのビルドを含むinitramfsを追加します。その結果、単一の実行可能ファイルで完全にブート可能なLinuxシステム(ブートローダーを指すことができます)で、試用することなく10 MB未満に収めることができます。


あなたの最後のパラ-それは開始するのに良い場所だと思います。それから、そこに何があるのか​​、なぜそこにあるのかを知り、それを成長の基盤として使用します。
スラッシュマイス

10MB?おそらく1MB未満で実行できます
ファルマーリ

8

Archlinuxは最小限のインストールのためにファイルのベースグループを使用します。

システム開発を行う場合は、ベース開発グループと一緒に。


3
正しい方向には、まだ多くのパッケージが含まれていますが、物が壊れるまで、彼らが提供するものを使用してパッケージをカットできます。
スラッシュマイス

Archのインストールは2010年よりもはるかにモジュール化されました-メモリから言うと/新規インストールを起動することなく、「pacstrap」ユーティリティは「base」のみを含む、またはまったく何も使用しないグループを選択できます(ただし、 baseにはシステムのものが含まれていると思います)。さらに一歩進んで、少なくとも漠然と一般的に使用されているディストリビューションが必要な場合は、おそらくSlackwareが最適です。
djvs

Archのインストールは、am64 arch、initのsystemdのみなどを公式にサポートしているだけなので、以前よりもはるかに少ないモジュールです。しかし、私もSlackwareをお勧めします。
ルーカスラマージュ

8

Linuxシステムの最低限の機能だけが必要な場合は、ルーターなどの組み込みシステム用のディストリビューションを試してみてください。通常、これらは最小限のソフトウェアのみを搭載しており、グラフィカルユーザーインターフェイスが一般的に不足しているため、コマンドラインに慣れる必要があります。欠点の1つは、これらのシステムが通常のLinuxディストリビューションの規則に違反することが多いことです。たとえば、珍しい場所にソフトウェアをインストールしたり、単純化されたinitシステムを使用したりすることです。

試してみたい場合は、例えば仮想マシンでopenwrtを試してみてください。


参照用にOpenWrtを使用できます。他のそのようなサイトを指摘できれば嬉しいです。すでにVirtualBoxを使用しており、OpenWrtをインストールするためのnoddy-guideがあります。
スラッシュマイス

組み込みのDebian:emdebian.org
fschmitt


8

単一の実行可能なrootfs

Single Application Linuxで/init説明したように、絶対最小システムは単一のプログラムを実行します| スーパーユーザー

最小限のLinux Live

https://github.com/ivandavidov/minimal

より興味深いインタラクティブシステムの場合、これは次のような(ほとんど教育的な)小さなスクリプトです。

  • カーネルとbusyboxのソースをダウンロードします
  • それらをコンパイルします
  • それらでブート可能な8Mb ISOを生成します

ISOを使用すると、busyboxを備えた最小限のシェルになります。

QEMUを使用すると、システムを簡単に起動できます。

カーネルソースディレクトリから実行できるように変更しました:https : //github.com/cirosantilli/runlinux

使用法:

git clone https://github.com/ivandavidov/minimal
cd minimal/src
./build_minimal_linux_live.sh
# Wait.
# Install QEMU.
# minimal_linux_live.iso was generated
./qemu64.sh

新しい最小システムを備えたQEMUウィンドウ内に残ります。驚くばかり。

小さいので、ソースを読んで何が起こっているのかを理解するのに適したオプションです。

Ubuntu 16.04でテスト済み。

ビルドルート

https://buildroot.org/

次を管理するMakefileスクリプトの大規模なセット:

  • GCCクロスコンパイルツールチェーン
  • カーネルのコンパイル
  • ブートローダーのコンパイル
  • rootfsの生成
  • GTKのような複雑なものを含め、ソースツリーに大量のパッケージダウンロード/ビルドレシピがあります。依存関係システムがあります。

最小限の例:

git clone git://git.buildroot.net/buildroot
cd buildroot
git checkout 2016.05
make qemu_x86_defconfig
# Can't use -jN, use `BR2_JLEVEL=2` instead.
BR2_JLEVEL=2 make
# Wait.
# cat board/qemu/x86_64/readme.txt
qemu-system-x86_64 -M pc -kernel output/images/bzImage -drive file=output/images/rootfs.ext2,if=virtio,format=raw -append root=/dev/vda -net nic,model=virtio -net user
# You are now in a shell with BusyBox utilities.

X11をゼロから構築するためのレシピさえあります:自分のLinux BuildrootシステムにX11をインストールする方法は?

一部の大企業で使用されている専門的な戦闘テスト済みのもの。

Alpine Linux

https://github.com/gliderlabs/docker-alpine

Webサイトからプリコンパイルされたバイナリを提供するパッケージマネージャーを使用した組み込みディストリビューション。

こちらもご覧ください


1
私は最終的にLFSルートに行きました。これをメモし、近日中に調査します
スラッシュマイズ

6

誰もtomsrtbtに言及していないのはどうですか?(単一の1.44 "フロッピー上のLinux)


正しいと思う-リンク?
スラッシュマイス

心配しないで-それを見つけた
スラッシュマイス

4
最近フロッピードライブを持っているのは誰ですか?;)
p-static

1
私は今一つを見ています。しかし、私はPCを持っている年に一度だけそれを使用しました。
ランクロ

3
@ p-static:古いボックスをプリントサーバーとして使用しています-まだ8 1/4インチのフロッピードライブがあり、20年前のフロッピーでテストしました-驚いたことに、フロッピーはまだ大丈夫です!破損していないデータも含まれます(学生時代のターボパスカルv3コード)。
スラッシュマイス

4

Slackware linuxを試すことができます。メニュー方式のインストールでは、最小限のシステムをインストールできます。X11、Tcl、Emacsのマニュアルページは簡単に省略できます。これは最上位レベルのインストールからのものです。インストールに飛び込み、最小限のパッケージのみをインストールできます。

その後、インストールしたマシン専用にカーネルを再コンパイルします。

Slackwareは依然としてデフォルトでLiloブートマネージャーを使用するため、ブートセクター、ブート可能としてマークされているパーティション、initrdに含まれるものなどについて、Grubでブートされたディストリビューションの場合よりも少し知りたい場合があります。


3

私にとって、Damn Small Linuxは「最小のLinuxディストリビューション」の名前を取得しました!しかし、私はそれが一種の中止であると聞いた。また、このwikiページで同様のディストリビューション(「Mini Linux」と呼ばれる)のリストを見ることができます

スペースがあなたの目的でない場合、GentooまたはArch Linuxをお勧めします。どちらもベースシステムをインストールします。ニーズの拡大に応じて、使用するパッケージを選択してインストールします。


スペースではなく、Linuxを学習します。私はそれらのほとんどとLFSを見てきましたが、LFSを使うと何かを追加したり追加したりすることができます。
スラッシュマイス

3
学びたいなら、Archlinuxは本当に良いです。アーチのWikiはありALOT明確に、参考になった情報のを。
ステファン

あなたがあなたのショットを発射した後にターゲットをシフトしたようです、申し訳ありません:o
slashmais

2

必要なことは、kernel.orgから最新のカーネルをダウンロードmake menuconfigし、オプションを確認して、調査と調査の開始点として使用することです。あなたは多くを学びます。


「時間は私の敵です。」-本当ではありませんが、あなたの提案を確実に検討します。
スラッシュマイス

0

Puppy Linuxを見ることができます。最小ではないかもしれませんが、小さいという評判があります。

ただし、小さくすることを目的としたLinuxのdistrtoは、一般に小さく留まる傾向があります。Linuxを学ぶには、どこかでライブのDebianを使います。.I debianカーネルソース、bashソース、grubソースをクロスコンパイルしてインストールします。次に、クロスコンパイルで、エディター、apt、およびgccをインストールします。次に、debian liveからパッケージのリストを生成します。各パッケージのソースをインストールし、コンパイルしてインストールします。次に、Xを追加し、選択したWmを追加すると、何をしたいかの基礎ができます。

PS:apt-get sourceは、debianパッケージのソースを取得します。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.