Linux · 1 min read · Jan 06, 2026

SystemImagerを使用してLinuxシステムのイメージを作成する

SystemImagerを使用してLinuxシステムのイメージを作成する

バージョン 1.0
著者: Falko Timme

完璧なシステムを設定したことがあり、その後に変更を加える前にこのシステムをバックアップしたいと思ったことはありませんか?そうすれば、変更が満足できない場合に元の状態に戻すことができます。または、大企業のシステム管理者で、同じソフトウェアを実行する数百台のLinuxマシンを維持しなければならず、各マシンを手動でインストールするのにうんざりしているのですか?または、Linuxベースのハードウェアアプライアンスを開発し、異なるハードウェアプラットフォーム(つまり、異なるハードディスクなど、異なるプロセッサアーキテクチャではない!)で大量に販売したいが、各プラットフォームのイメージを維持する必要がないのですか?または、このソリューションを海外のリセラーに配布したいので、高価なハードウェアを出荷せず、リセラーが自分のハードウェアを販売できるようにしたいのですか?これがSystemImagerが登場する場面です!

SystemImagerのウェブサイトから:

“SystemImagerは、Linuxのインストール、ソフトウェア配布、および生産展開を自動化するソフトウェアです。

SystemImagerは、自動インストール(クローン)、ソフトウェア配布、コンテンツまたはデータ配布、構成変更、およびLinuxマシンのネットワークへのオペレーティングシステムの更新を簡単に行うことができます。Linuxのリリースバージョン間での更新も可能です!

また、安全な生産展開を確保するためにも使用できます。新しい生産イメージに更新する前に現在の生産イメージを保存することで、高度に信頼性のある緊急対策メカニズムを持つことができます。新しい生産環境に欠陥が見つかった場合は、単純な更新コマンドで最後の生産イメージにロールバックするだけです!

一般的な環境には、インターネットサーバーファーム、データベースサーバーファーム、高性能クラスター、コンピュータラボ、および企業デスクトップ環境が含まれます。”

SystemImagerを使用すると、インストールのイメージを作成できます。そのためには、イメージサーバー(イメージを保存するための十分なディスクスペースが必要)と、いわゆるゴールデンクライアント(つまり、イメージを作成したい「完璧なシステム」)が必要です。これは、SystemImagerを実行するために、イメージサーバーとゴールデンクライアントの両方にソフトウェアをインストールする必要があることを意味します。SystemImagerは、Debianパッケージと、RedHat、Fedora、SUSE、またはMandrakeなどのrpmベースのディストリビューション用のrpmパッケージを提供します。この例では、私のイメージサーバーとゴールデンクライアントの両方がDebianで実行されています。

このハウツーは実用的なガイドとして意図されており、理論的な背景はカバーしていません。それらはウェブ上の他の多くの文書で扱われています。

この文書には、いかなる種類の保証もありません!

これは、私が働いている会社で行っていることです。私たちは、スパムフィルターアプライアンスのイメージをインターネットを通じてリセラーに配布し、彼らが自分のハードウェアプラットフォームにインストールして販売できるようにしています。興味がある方は、[email protected]までご連絡ください。

重要:

新しいSystemImagerのバージョン(3.4から始まると思います)では、すべてのコマンドの前に文字列”si_“を追加する必要があります。したがって、getimagesi_getimageになり、prepareclientsi_prepareclientになり、mkautoinstalldiskettesi_mkautoinstalldisketteになります。

1 イメージサーバーにSystemImagerをインストールする

deb http://download.systemimager.org/debian stable main/etc/apt/sources.listに追加し、apt-get updateを実行します。

SystemImagerサーバーをインストールするには、単にapt-get install systemimager-serverを実行します。

2 ゴールデンクライアントにSystemImagerをインストールする

deb http://download.systemimager.org/debian stable main/etc/apt/sources.listに追加し、apt-get updateを実行します。

SystemImagerクライアントをインストールするには、単にapt-get install systemimager-clientを実行します。

3 ゴールデンクライアントのイメージをイメージサーバーに作成する

私のイメージサーバーのIPアドレスが192.168.0.2で、ゴールデンクライアントのIPアドレスが192.168.0.100だと仮定しましょう。

ゴールデンクライアントからイメージを取得するには、ゴールデンクライアントのファイアウォールをシャットダウンするか、少なくともポート873 TCP(rsync)への接続を許可する必要があります。次に、ゴールデンクライアントで次のコマンドを実行します:

prepareclient –server 192.168.0.2

次に、イメージサーバーで次のコマンドを実行します:

getimage -golden-client 192.168.0.100 -image my_golden_client -ip-assignment replicant

ここで、my_golden_clientは作成したいイメージの名前です。-ip-assignmentは次の4つの値のいずれかを持つことができます(man getimageを参照):

· *static_dhcp – DHCPサーバーは、このイメージでインストールされたクライアントに毎回同じ静的アドレスを割り当てます。この場合、DHCPサーバーは対応するホスト名も割り当てます。したがって、static dhcpを使用する場合、dhcpd.confファイルの1つの値を変更することで、マシンのホスト名とIPアドレスを変更することが可能です。これを望む人もいるかもしれません。mkdhcpstaticコマンドも参照してください。

· *dynamic_dhcp – DHCPサーバーは、このイメージでインストールされたクライアントに動的にIPアドレスを割り当てます。dynamic dhcpでは、マシンのIPアドレスが変更される可能性がありますが、同じホスト名を保持したいと考えています。したがって、ホスト名はマシン自体によって設定されます。毎回異なるアドレスが割り当てられる可能性があります。

· *static – 自動インストール中にクライアントが使用するIPアドレスは、そのクライアントに永久に割り当てられます。

· *replicant – このイメージのネットワーク設定を変更しないでください。私はこれを単一のマシンのバックアップおよび迅速な復元メカニズムとして使用しています。

4 ブートディスクを作成する

SystemImagerを使用すると、何もインストールされていないシステムにイメージをインストールできます。しかし、そのようなシステムにイメージを取得する場所を指示する必要があります。これはブートディスク(新しいシステムにはIDEフロッピードライブが必要で、USBフロッピードライブでは動作しません)を使用して行うことができます。ブートディスクを作成するには、イメージサーバーに空のディスクを挿入し、mkautoinstalldisketteを実行します。これにより、標準のブートディスクが作成されます。次に、local.cfgという構成ファイルを作成する必要があります:

| HOSTNAME=www DOMAINNAME=example.com DEVICE=eth0 IPADDR=192.168.0.100 NETMASK=255.255.255.0 NETWORK=192.168.0.0 BROADCAST=192.168.0.255 GATEWAY=192.168.0.1 GATEWAYDEV=eth0 IMAGESERVER=192.168.0.2 IMAGENAME=my_golden_client |

新しいマシンの希望するネットワーク設定を含める必要があります。DEVICEおよびGATEWAYDEVは、ネットワークカードのLinuxデバイス名である必要があります。IMAGESERVERはイメージサーバーのIPアドレスであり、IMAGENAMEは取得するイメージの名前である必要があります。

このファイルをブートディスクに保存します。Windowsワークステーションでもこれを行うことができますが、UNIXの改行でファイルを保存することを確認してください!


ブートディスクを作成する別の方法は次のとおりです:

イメージサーバー上に/var/lib/systemimager/my_golden_client.local.cfgというファイルを作成します。/var/lib/systemimager/my_golden_client.local.cfgには、上記のlocal.cfgと同じ内容を記入する必要があります。次に、mkautoinstalldiskette -config /var/lib/systemimager/my_golden_client.local.cfgを実行します。これにより、local.cfgが含まれたブートディスクが作成されます!


ブートディスクを作成する3つ目の方法は次のとおりです:このブートディスクイメージをダウンロードし、ディスクに書き込みます。Linuxシステムでは、次のコマンドを使用してこれを行うことができます:

dd if=systemimager-floppy-image.img of=/dev/fd0

Windowsでは、RawWriteのようなツールを使用してこれを実現できます。その後、最初の方法で説明したように、ディスク上にlocal.cfgを作成する必要があります。

5 新しいシステムにイメージをインストールする

イメージサーバーで次のコマンドを実行します:

/etc/init.d/systemimager-server start
または
/etc/init.d/systemimager-server-rsyncd start(SystemImagerのバージョンによります)

ポート873 TCPが外部からアクセスできることを確認してください(ファイアウォール!)。

新しいシステムにブートディスクを挿入し、ディスクからブートします。新しいシステムは自動的にイメージmy_golden_clientをインストールし、完了です!

6 イメージを更新する

ゴールデンクライアントに重要な変更を加えたとしましょう。以前に作成したイメージmy_golden_clientを更新したいと思います。手順は段落3と同じです:

ゴールデンクライアントで次のコマンドを実行します:

prepareclient –server 192.168.0.2

(ファイアウォールに注意してください!)

イメージサーバーで次のコマンドを実行します:

getimage -golden-client 192.168.0.100 -image my_golden_client -ip-assignment replicant

7 イメージを削除する

イメージサーバー上のイメージを削除したい場合は、単に次のコマンドを実行します:

rmimage my_golden_client

my_golden_clientは削除するイメージの名前に置き換えてください。)

リンク

SystemImager: http://www.systemimager.org/

この文書の元の場所:

http://www.falkotimme.com/howtos/systemimager/

Share: X/Twitter LinkedIn

新しい投稿を受信箱で受け取る

スパムはありません。いつでも購読を解除できます。