オレオレDebian サーバをセットアップする#3

もう一度 Simple-CDD を使ってみる実験

とりあえず再実行

preseed.cfgの編集

長いので省略.こんな感じ

CDの作成のテスト
$ mkdir ~/work/my-simple-cdd
$ cd ~/work/my-simple-ccd
$ build-simple-cdd
追加パッケージ

これだけでは普通のインストールとあまり大差ないので,初期インストールするパッケージを追加してみます.

$ cd ~/work/my-simple-ccd
$ mkdir profiles
$ cp ~/work/preseed.cfg profiles/mylenny.preseed
$ for p in openssh-server build-essential postfix sudo; do echo $p >> profiles/mylenny.packages; done
CDの作成のテスト

この状態でCDを作成してみます.

$ build-simple-cdd --profiles mylenny

設定した preseed どおりに進むことを確認.

ローカルパッケージをダウンロード

次は Ruby Enterprise Edition は Ubuntu 用のパッケージ*1を使います.
他にも追加したいところですが,実験なのでこれだけに.

$ cd ~/source
$ wget http://rubyforge.org/frs/download.php/55510/ruby-enterprise_1.8.6-20090421_i386.deb
CDの再作成

ローカルパッケージを指定してインストールCDを作成します.

$ rm -rf images/ tmp/
$ build-simple-cdd --profiles mylenny --local-packages "/home/ogawa/source/ruby-enterprise_1.8.6-20090421_i386.deb"

ところがこれは失敗します.どうやら REE package の Pre-Depends/Suggests などが影響を与えているようなので,これを削除します.

deb パッケージの記述変更

一旦パッケージを展開して,記載し直します.

$ cd ~/source/
$ mkdir ruby-enterprise
$ dpkg-deb -x ruby-enterprise_1.8.6-20090421_i386.deb ruby-enterprise/
$ mkdir ruby-enterprise/DEBIAN
$ echo "1.0" > ruby-enterprise/DEBIAN/compat
$ echo '#!/bin/sh
' > ruby-enterprise/DEBIAN/postinst
$ echo '#!/bin/sh
' > ruby-enterprise/DEBIAN/prerm
$ chmod a+x ruby-enterprise/DEBIAN/postinst ruby-enterprise/DEBIAN/prerm
$ dpkg-deb -I ruby-enterprise_1.8.6-20090421_i386.udeb > ruby-enterprise/DEBIAN/control
$ vim ruby-enterprise/DEBIAN/control
$ dpkg-deb -b ruby-enterprise

これで ruby-enterprise.deb ファイルのできあがり.

CDの再々作成

先ほど作成したパッケージを使います.また自動インストールされるように設定もします.

$ cd ~/work/my-simple-ccd
$ echo "ruby-enterprise" >> profiles/mylenny.packages
$ build-simple-cdd --profiles mylenny --local-packages "/home/ogawa/source/ruby-enterprise.deb"

これで /opt/ruby-enterprise/bin/ruby がプリインストールされたオレオレ Debian インストール CDができましたー.まずは一段落.

*1:Ubuntu Linuxをクリック