web-dev-qa-db-ja.com

単一のアプリケーションを実行しているLinuxOS

1つのアプリケーション専用にカスタムメイドされ、完全に軽量で、最小限のシステムリソースを使用するLinuxベースのOSを構築したいと考えています。どうすればこれを行うことができますか?

Ubuntuなどの既存のOSを削除するのは良い考えですか?

3
sreeraag

コンピュータが動作するために必要なものだけを実行するLinuxベースのOSをビルドしたい場合は、そのための時間があれば、見てください。 LFSで。
http://www.linuxfromscratch.org/
Linuxカーネルのコンパイルについて知っておくべきことをすべて説明した本です。もちろん、かなりの時間がかかりますが、最終的には見てみるのは良い考えです。カスタムLinuxディストリビューションを作成したら、BLFS(Beyond Linux From Scratch)を読んで、いくつかのアプリケーションを追加できます。
Linuxディストリビューションを作成する過程で、起動時にアプリケーションを起動する方法がわかります。

ちなみに、Ubuntuをフォークすることはこれまでで最悪のアイデアです。それは絶対に軽くはなく、起動時にたくさんのアプリケーションを実行します。 Archlinuxをお勧めします。 Ubuntuよりもはるかに軽量です。それが役に立てば幸い。

Archlinuxリンク: https://www.archlinux.org/ タイトルが示すように、これは軽量ディストリビューションであり、まさにあなたが探しているものかもしれません。独自のディストリビューションを構築する代わりに、Archを試して、起動時にアプリケーションを実行するだけです。それほど複雑ではありません。

2
Depado

大きなアプリケーションには常に解決すべきバグや脆弱性があるため、ブラウザのようにセキュリティで失敗する可能性のある多くの方法があるので、私もそれについて考えてきました。

仮想マシンエミュレーターのカーネル、その特定のビデオカードのドライバー、1枚のイーサカードのドライバー、シャドウパスワードの必要なし、usbサポート、Bluetooth、wirelesドライバー、ファイルシステム、その他すべてのエキゾチックなもののコンパイルを開始する必要があると思います。 。

また、システムを起動するには、最小量の/ bin// sbin// usr /とディレクトリ階層ファイルが必要です。

したがって、完全なLinuxシステムにあるような複雑さのない非常に薄いシステムを作成することになります。

実はこのようなディストリビューションを必要としている人はたくさんいて、更新し続けるのはとても簡単だと思います。私は間違いなくそのようなプロジェクトにお金で貢献したいと思います。

大きくて危険なアプリケーションをメインシステムから分離し、VM上で分離して実行します。

一番下のシステムは、OpenBSDやFreeBSDなどのよりセキュリティが厳密なシステムである可能性があります。

さらに、Qemuを使用してOpenBSDでこのポケットLinuxディストリビューションを実行するためのWORKSTATION OpenBSDディストリビューション(サーバーOpenBSDディストリビューションではない)もあればいいのにと思います。

なぜ?! OpenBSDの基本システムは監査されており、Linuxコードは監査されていないため、ほとんどの場合(完全にはわかりません)。

Gimp、libreoffice、あらゆる種類のブラウザ(オープンソースとクローズドソース)、Java ides、あらゆる種類のp2pアプリ、他の多く。

もう1つのことは、ベースディストリビューションをqemuイメージとして、または他のすべてのタイプのVMディスクイメージ形式、およびアプリケーションイメージとともに、その特定のアプリケーションを実行するために必要なすべてのものとともに配布できることです。画像のようにも。

このようにして、カーネル、ベースのLinuxファイルシステムイメージ、および多くのアプリケーションイメージが作成され、それらはすべて個別に更新できます。

ディストリビューションには、1つの仮想ドライブにベースLinuxディストリビューション用の1つのイメージ、別の仮想ディスクドライブにアプリイメージをロードして、ボイラーをロードできます。

サンドボクシング、ジェイル、あらゆる種類のアプリケーションの安全な実行!

1
cabonamigo

基本的な考え方は、アプリケーションをinitとして開始することです(ただし、プロセス1 isは非常に特殊です)。おそらく、ミニディストリビューションの1つから始めて、そこから作業しますか?または、必要なものを使用してinitramfsを設定し、それを離れないでください。

また、最小限のユーザーランドを利用できないことによる節約が、トラブルシューティング/調整の絶対的な不可能性に値するかどうかも慎重に検討してください。

0
vonbrand

これは一種の反対の答えかもしれません。

DSL(Damn Small Linux) を見てください。これはあなたが必要とするものかもしれません。これは実際には、低メモリなどの低ハードウェア構成のシステムで使用するために構築されています。 vimおよびnanoエディター、ブラウザー、リモートデスクトップビューアー、その他の基本機能などの基本的なコンポーネントが付属しています。チェックアウト このwikiリンク 詳細については。

0
mtk