GoGPT Best VPN GoSearch

OnWorksファビコン

supermin - クラウドでオンライン

Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーター上の OnWorks 無料ホスティング プロバイダーで supermin を実行します。

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド supermin です。

プログラム:

NAME


supermin - supermin アプライアンスを作成および構築するためのツール

SYNOPSIS


supermin --prepare -o OUTPUTDIR パッケージ [パッケージ ...]

supermin --build -o OUTPUTDIR -f chroot|ext2 INPUT [INPUT ...]

DESCRIPTION


Supermin は、Supermin アプライアンスを構築するためのツールです。 これらは小さな電化製品です(同様の)
仮想マシンに)、通常は約 100KB のサイズで、完全にインスタンス化されます。
そのうちの XNUMX つを起動する必要がある場合は、ほんの数秒で飛行します。

このプログラムは、以前は febootstrap と呼ばれていました。 このマニュアル ページでは supermin 5.x について説明しています。
これは完全に書き直されたものであり、febootstrap 2.x とはまったく異なります。 探しているなら
febootstrap 2.x ツールの場合、これは適切な場所ではありません。

BASIC OPERATION
supermin ツールは XNUMX つのモードで使用できます。 準備中 小さな Supermin アプライアンスです。
ビルドシステム上で行われます。 と 建物、これは supermin アプライアンスを取得して、
完全なブート可能なアプライアンス。これはエンド ユーザーのシステム上で実行されます。

Supermin は root として実行する必要はなく、通常は すべき root として実行する必要があります。 それ
ホスト システムやホスト システムにインストールされているパッケージには影響しません。

準備する モード

- 準備する 指定された出力ディレクトリに小さな supermin アプライアンスを作成します。 あなたがそれを与えます
インストールしたいパッケージのリストを指定すると、supermin が自動的にそのパッケージを見つけます。
依存関係。 パッケージのリストはホスト マシンにインストールする必要があります。

具体的な例を挙げますと、以下の通りです。

supermin --prepare bash coreutils -o supermin.d

「bash」および「coreutils」パッケージを含む supermin アプライアンスを作成します。
具体的には、ディレクトリにいくつかのファイルを作成します スーパーマインド。 このディレクトリ is  
スーパーミンアプライアンス。 (下記の「SUPERMIN アプライアンス」を参照)。

意図されているのは、 - 準備する このステップは中央のビルド マシンで実行され、
supermin アプライアンスはエンド ユーザーに配布されます (これは、supermin アプライアンスがあるため簡単です)
とても小さいです)。

BUILD モード

- 建てる (以前は「supermin-helper」と呼ばれる別のプログラム) 完全なアプライアンスを構築します
supermin アプライアンスから:

supermin --build --format ext2 supermin.d -o Appliance.d

これにより、以下のファイルが作成されます。 アプライアンス.d/カーネル, アプライアンス.d/root など、これは完全です
サイズの起動可能なアプライアンス。

意図されているのは、 - 建てる ステップは最後の XNUMX 秒でエンド ユーザーのマシン上で実行されます
アプライアンスが必要になる前に。 supermin アプライアンスのパッケージ (指定されたパッケージ)
supermin アプライアンスの準備時に) をエンド ユーザーのマシンにインストールする必要があります。

ビルドとキャッシュ

通常、エンド ユーザーのマシン上でアプライアンスをオンデマンドでのみ再構築する必要があります。
Supermin には、これを簡単にするための追加オプションがいくつかあります。

supermin --build \
--if-newer --lock /実行/ユーザー/`id -u`/supermin.lock \
--format ext2 supermin.d -o Appliance.d

複数のプログラムがこのコマンドを並行して実行すると、インスタンスはロックで待機します。
ファイル。 アプライアンス全体は、アプライアンスが存在しない場合、またはアプライアンスよりも古い場合にのみ再構築されます。
入力ファイルとホスト パッケージ データベース。

ロックファイルに注意してください しなければなりません の中に保管される -o ディレクトリにあります。

PACKAGES

「パッケージ」とは、RPM、Debian などのパッケージを意味します。 「coreutils」、「perl」。

どのような場合でも、supermin はディストリビューション内で同一の supermin アプライアンスのみを構築できます。
バージョンとアーキテクチャをホストに送信します。 します クロスビルドを行います。

OPTIONS


- 助けて
コマンドラインの簡単な使用法を表示して終了します。

- 建てる
supermin アプライアンスから完全なアプライアンスを構築します。 これは以前は別個のものでした
「supermin-helper」というプログラム。

--コピーカーネル
(- 建てる モードのみ)

カーネルにシンボリックリンクする代わりに、カーネル (および作成されている場合はデバイス ツリー) をコピーします。
/ブート.

これは少し遅くなりますが、アクセス許可を変更したい場合や、
カーネルまたはデバイス ツリー上の SELinux ラベル。

--dtb ワイルドカード
(- 建てる モードのみ)

指定した場合、選択したカーネルと互換性のあるデバイス ツリーを検索します。
指定されたワイルドカードに一致する名前。 次のようなワイルドカードを使用できます。
「vexpress-*a9*.dtb」は一致します vexpress-v2p-ca9.dtb.

注意:

· ワイルドカードが拡張されないようにするために、ワイルドカードを引用符で囲む必要がある場合があります。
シェル。

· いいえの場合 --dtb オプションが指定されている場合、デバイス ツリーは検索されません。

· デバイス ツリーが必要なのは、ARM や PowerPC などのアーキテクチャでのみ必要です。
彼ら。 他のアーキテクチャでは、このオプションを使用しないでください。

· このオプションを使用し、互換性のあるデバイス ツリーが見つからない場合、supermin は
エラーで終了します。

-f FORMAT
- フォーマット FORMAT
(- 建てる モードのみ)

アプライアンス全体の出力形式を選択します。

デフォルトはありません。 使用するとき - 建てる を指定する必要があります。 - フォーマット オプションを選択します。

可能な形式は次のとおりです。

chroot
ホスト ファイルシステム内のディレクトリ ツリー。

ファイルシステムツリーは次の場所に書き込まれます。 出力DIR (すなわち、 -o オプション)。

これは文字通り「chroot」と呼ばれます。 chroot(1)これに
その後、ディレクトリを作成します。ただし、コンテナー技術を使用することをお勧めします。
(LXCなど)。

このモードではカーネル、initrd、dtb は生成されません。
ホスト カーネルを使用してアプライアンスを実行します。

ext2
ext2 ファイルシステムのディスクイメージ。

出力カーネルは次のように書き込まれます。 OUTPUTDIR/カーネル、デバイス ツリー (使用している場合)
出力DIR/dtb、アプライアンスをマウントできる小さな initramfs
OUTPUTDIR/initrd、ext2 ファイルシステムイメージを OUTPUTDIR/ルート。 (どこ
出力DIR によって指定されます -o オプション)。

ファイルシステム (OUTPUTDIR/ルート) のデフォルト サイズは 4 GB (「 - サイズ
オプション)。

--ホスト-CPU CPU
(- 建てる モードのみ)

ホストCPUを指定します(例:「i686」、「x86_64」)。 これは、次の場合に部分文字列の一致として使用されます。
互換性のあるカーネルを検索しています。 指定しない場合は、デフォルトでホスト CPU が使用されます。
supermin がコンパイルされました。

--新しい場合
(- 建てる モードのみ)

出力ディレクトリを確認すると、 必要がない限り再構築されます。

これは、ホスト パッケージ データベースの日付を調べることによって行われます (/var/lib/rpm 等)、
入力 supermin ファイルと出力ディレクトリ。 操作は実行されるだけです
ホスト パッケージ データベースまたは入力 supermin ファイルのいずれかが、
出力ディレクトリ。

参照 - ロック を参照してください。

"--include-packagelist
(- 建てる モードのみ)

加える /パッケージリスト 生成された chroot または ext2 ファイルシステム内のファイル。
アプライアンスの構築に使用されるすべてのパッケージのソートされたリスト。

デバッグに最も役立ちます。たとえば、どのバージョンの
パッケージがアプライアンスにコピーされました。

--リストドライバー
supermin にコンパイルされたパッケージ マネージャー ドライバーをリストし、対応するかどうかを確認します。
パッケージ マネージャーが現在のシステムで検出されました。

- ロック ロックファイル
(- 建てる モードのみ)

supermin を複数並行して実行して完全なアプライアンスを構築する必要がある場合は、次のように使用できます。
  - ロック お互いを踏みつけないようにするためのオプションです。

ロック ファイルは相互排他を提供するために使用されるため、supermin のインスタンスは XNUMX つだけになります。
一度に実行されます。

ロックファイルに注意してください しなければなりません 出力ディレクトリ内に保存されます。

-o 出力DIR
出力ディレクトリを選択します。

使用時 - 準備する、これは supermin アプライアンスが配置されるディレクトリです
書かれた。 使用するとき - 建てる、これは完全なアプライアンス、カーネルが格納されるディレクトリです。
などが書かれます。

任意 中身 of   出力 ディレクトリにジョブを開始します。   削除された、および新しい出力ディレクトリ
創造された。

出力ディレクトリは、一時ディレクトリを構築することによって (ほぼ) アトミックに作成されます。
のようなディレクトリ OUTPUTDIR.abc543、古い出力の名前を変更します
ディレクトリ (存在する場合) を削除してから、一時ディレクトリの名前を次のように変更します。
出力DIR。 このオプションを組み合わせることで、 - ロック 複数の並列を確実に行うことができます
supermin の実行は互いに競合しません。

--packager-config 構成ファイル
(- 準備する モードのみ)

パッケージマネージャーの設定ファイルを設定します。 これにより、指定できるようになります
代替ソフトウェア リポジトリ。

ArchLinux の場合、これにより pacman 構成ファイルが設定されます (デフォルト /etc/pacman.conf).
詳細はこちら: パックマン.confとします。

Yum/RPM ディストリビューションの場合、これにより yum 構成ファイルが設定されます (デフォルト
/etc/yum.conf)。 見る yum.confとします。

- 準備する
supermin アプライアンスを準備します。

--使用インストール済み
(- 準備する モードのみ)

パッケージがすでにインストールされている場合は、(ローカル ファイル システムの) コンテンツを使用します。
ダウンロードする代わりに。

ローカル ファイルが変更されている場合、アプライアンスが不正な形式になる可能性があることに注意してください。
元々パッケージに入っていたもの。 これは特に構成上の問題です
ファイル。

ただし、このオプションは、いくつかの制御された状況で役立ちます。たとえば、
新しくインストールした chroot 内の supermin、またはネットワークにアクセスできない場合
ビルド。

- サイズ サイズ
(- 建てる モードのみ)

出力 ext2 ファイルシステムのサイズを選択します。サイズは次のコマンドを使用して指定できます。
「32G」(32ギガバイト)などの一般的な名前。

サイズが指定されていない場合は、デフォルト サイズの 4 GB が使用されます。

サイズをバイト単位で指定するには、数字の後に小文字を続ける必要があります b、例:
"--サイズ 10737418240b".

-v
-詳細
詳細メッセージを有効にします。

このオプションを複数回指定すると、さらに多くのメッセージを有効にすることができます。

-v ステージ全体のデバッグ。

-v -v
各ステージ内の詳細情報。

-v -v -v
大量のデバッグ (通常の使用には多すぎますが、
supermin のバグを診断しようとしています)。

-V
- バージョン
パッケージ名とバージョン番号を出力して終了します。

スーパーミン アプライアンス


Supermin アプライアンスは、アプライアンスを構築するのに十分な情報で構成されています
ホスト OS と同じオペレーティング システム (Linux バージョン、ディストリビューション、リリースなど) が含まれています。
ホストとアプライアンスは次のような多くの共通ファイルを共有するため、 /bin/bash   /lib/libc.so
これらのファイルをアプライアンスに含める必要はありません。 それらは単に次から読み取ることができます。
アプライアンスの起動時にオンデマンドでホストされます。 したがって、スペースを節約するために、単に
ホストから取得したいパッケージの名前を取得し、それらのパッケージ (および依存関係) を次の場所にコピーします。
ビルド時間。

この方法でホストからコピーすることができないファイルもあります。 これらには以下が含まれます
ホスト管理者が編集した可能性のある構成ファイル。 ということで、リストと一緒に、
ホスト ファイルに加えて、これらのファイルとアウトラインを含むスケルトン ベース イメージも保存します。
ディレクトリ構造。

したがって、supermin アプライアンスは通常、少なくとも XNUMX つの制御ファイル (パッケージ
  Base.tar.gz).

パッケージ
ホストからコピーされるパッケージのリスト。 依存関係が解決される
自動的に。

ファイルはプレーン テキストで、XNUMX 行に XNUMX つのパッケージ名が含まれています。

ベース.tar
Base.tar.gz
この tar ファイル (圧縮されている場合もあります) には、スケルトン ファイルシステムが含まれています。 ほとんどそれ
ディレクトリといくつかの設定ファイルが含まれています。

tar ファイル内のすべてのパスは、アプライアンスのルート ディレクトリに対する相対パスである必要があります。

ホストファイル
ホストからコピーされるその他のファイル。 これはプレーンテキストファイルです。
XNUMX 行に XNUMX つのパス名。

パスには、アプライアンスの作成時に展開されるワイルドカードを含めることができます。例:

/etc/yum.repos.d/*.repo

すべてをコピーします *.repo ファイルをアプライアンスに転送します。

ファイル内の各パス名は「/」文字で始まる必要があります。

Supermin 自体はホストファイルを作成しません (ただし、バージョン 5 より前では、これは
完全なアプライアンスを作成するために使用されるメイン メカニズム)。 ただし、XNUMX つ以上をドロップすることはできます
ランダムにコピーしたい場合は、これらのファイルを supermin アプライアンスのディレクトリにコピーします。
パッケージ化されていないファイルを完全なアプライアンスに取り込みます。

除外ファイル
除外されるファイル名、ディレクトリ名、または先頭に「-」が付いたワイルドカードのリスト
最終的なアプライアンスから。

これは単に要素を削除するだけなので、かなり残酷であり、パッケージを破壊する可能性があります。
ただし、最終的なサイズを最小限に抑える便利な方法として使用できます。
アプライアンス。

Supermin 自体は除外ファイルを作成しません。 ただし、次のうち XNUMX つ以上をドロップすることもできます。
これらのファイルを supermin アプライアンスのディレクトリに配置して、パッケージ化されたファイルが保存されないようにする
アプライアンス全体にコピーされます。

上記の名前は単なる提案であることに注意してください。 任意の名前を使用できます。
supermin は、アプライアンスを再構築するときに各ファイルの内容を検出します。 あなたはできる
各タイプのファイルも複数存在します。

再構築中 アプライアンス
別のモード「supermin --build」は、supermin からアプライアンスを再構築するために使用されます。
アプライアンスのファイル。

実際、このプログラムは、渡されたファイルとディレクトリを再帰的に繰り返します。 あ
一般的なレイアウトは次のようになります。

スーパーミン.d/
supermin.d/base.tar.gz
supermin.d/extra.tar.gz
supermin.d/パッケージ
supermin.d/zz-hostfiles

このようにして、別の tar ファイルを作成するだけで、追加のファイルをアプライアンスに追加できます。
(extra.tar.gz 上の例では)それをディレクトリにドロップし、さらに
ホスト ファイルを追加できます (zz-ホストファイル 上の例では)。 アプライアンスが
構築すると、余分なファイルがアプライアンスに表示されます。

最小化 スーパーミン アプライアンス
supermin アプライアンスを「最小化」して、時間とスペースを節約することもできます。
インスタンス化されます。 通常、ドキュメント、情報ファイル、マニュアルページを削除する必要があるかもしれません。
そしてロケール。

これを行うには、ファイル、ディレクトリ、またはワイルドカードをリストする excludefile を作成します。
含めたくないもの。 完全なアプライアンスが構築されるとき、これらはスキップされます。

-/ boot /*
-/lib/モジュール/*
-/usr/share/doc/*
-/usr/共有/情報/*
-/ usr / share / man /*

ファイルが正しく動作するために必要な場合があるため、削除するものには注意してください。
アプライアンス。

カーネル そして カーネル モジュール
通常、カーネルとカーネルモジュールは次のとおりです。 supermin アプライアンスに含まれています。

完全なアプライアンスが構築されると、ホストからカーネル モジュールがコピーされ、
ホスト カーネルを使用して起動されます。

使用する A CUSTOM カーネル そして カーネル モジュール

Supermin は、アプライアンスの起動に使用できる最適なホスト カーネルを選択できます。 しかし
環境変数を設定することでこれを上書きできます (「環境変数」を参照)
下)。

カスタム カーネルを構築する場合 (ソースから Linux をコンパイルするなど)、次のようにする必要があります。
このようなもの:

mkdir /tmp/kmods
bzImage を作る
モジュールを作る
make modules_install INSTALL_MOD_PATH=/tmp/kmods

SUPERMIN_KERNEL=/path/to/linux.git/arch/x86/boot/bzImage をエクスポート
エクスポート SUPERMIN_MODULES=/tmp/kmods/lib/modules/3.xx.yy

supermin --build -f ext2 [etc]

強制する 可用性 OF PACKAGES
Supermin は、以下にリストされているパッケージをコピーしてアプライアンスを構築します。 パッケージ。 このためには
これらのパッケージが利用可能でなければなりません。 通常、要件を追加することでこれを強制します
supermin アプライアンスを使用するパッケージ上の (例: RPM "Requires:" 行)。
パッケージは、依存パッケージをプルしなければインストールできません。
パッケージは supermin が使用できるようにインストールされます。

ENVIRONMENT 変数


スーパーミンカーネル
この環境変数が設定されている場合、カーネルは自動的に選択されます。
バイパスされ、このカーネルが使用されます。

環境変数はカーネル ファイルを指す必要があります。 /boot/vmlinuz-3.0.x86_64

SUPERMIN_MODULES
これは、使用するカーネル モジュール ディレクトリを指定します。

環境変数はモジュール ディレクトリを指す必要があります。
/lib/モジュール/3.0.x86_64/

スーパーミン_DTB
指定されたデバイス ツリー ファイルを強制的に使用します。

SUPERMIN_KERNEL_VERSION
非 x86 アーキテクチャでは、スーパーミンの場合にこの環境変数を設定する必要がある場合があります。
ファイルを見ただけでは「SUPERMIN_KERNEL」のカーネル バージョンを判断できません。

onworks.net サービスを使用してオンラインで supermin を使用する


無料のサーバーとワークステーション

Windows と Linux のアプリをダウンロード

Linuxコマンド

Ad




×
Advertisement
❤️ここでショッピング、予約、購入してください。料金はかかりません。これにより、サービスが無料で維持されます。