Gentoo Linuxな生活​/遊んでみよう

Page Top

ベースとなる設定ファイル例 anchor.png

/usr/share/doc/catalyst-X.X.X/examples/配下に定義ファイルの見本が入っております。これをベースに行うのが吉。

Page Top

まずは準備 anchor.png

作業フォルダを作ります。

# mkdir -p /var/tmp/catalyst/build

次。gentooミラーサイトから、Stage3tarballを落としてきます。それを上のフォルダに置きます。

Page Top

それでは順番に anchor.png

Page Top

catalystの設定 anchor.png

/etc/catalyst/catalyst.confという設定ファイルがあります。こいつらをいじってやります。コメントみながらやってね。コメントは長いので削除。

distdir="/usr/portage/distfiles"             ダウンロードしたソースtarballがある場所
options="pkgcache kerncache distcc"   catalyst動作モード。ここではdistccを追加してまーす
sharedir="/usr/lib/catalyst"                 catalyst実行スクリプトの場所。変える必要無し 
envscript="/root/catalyst/catalyst.env" catalyst実行中の環境変数定義ファイル

で、最後のcatalyst.envはmake.confに書く環境変数のコトです。おいちゃんはこんな感じにしてみた。

export MAKEOPTS="-j6"
export LINGUAS="ja"
export CHOST="i686-pc-linux-gnu"
Page Top

snapshot作成 anchor.png

gentooミラーサイトに置いてある、portageのスナップショット相当を作成します。まずはsnapshot作成用のサンプルファイルsnapshot_template.specを持ってきて、編集します。

# cp /usr/share/doc/catalyst-X.X.X/examples/snapshot_template.spec /root/catalyst/snapshot.spec

編集します。中身

target: snapshot                           ←snapshot作成を指示
version_stamp: 20050603             ←タイムスタンプは適当に決める
#portdir_overlay:                         ←portage上書き設定がある場合はこれに書く

で、以下を実行する

# catalyst -f snapshot.spec

すると、/var/tmp/catalyst/snapshots配下に、snapshot-<version_stamp>.tar.bz2ができあがります。

Page Top

livecd-stage1 anchor.png

今度はlivecdのルートイメージ作成。まずはlivecd-stage1用のサンプルファイルlivecd-stage1_template.specをもってきます

# cp /usr/share/doc/catalyst-X.X.X/examples/livecd-stage1_template.spec /root/catalyst/livecd-stage1.spec

中身を編集します。

#コンパイルするアーキテクチャ指定。gccの-marchと同等だね。athlonもよし、pentium4もよし
subarch: x86
#タイムスタンプ
version_stamp: 20050605
#livecd-stage1作成を指示
target: livecd-stage1
# リリースタイプ。デフォルトで問題なし
rel_type: default
# プロファイル。/usr/portage/profilesの下のどれを使うか
profile: default-linux/x86/2005.0
# どのsnapshotを使用するか。上で作ったスナップショットのversion_stamp部分を書く
snapshot: 20050603
# どのstage3イメージを使うか。/var/tmp/catalyst/buildsの下に置いたtar.bz2をのぞいたstage3イメージ名
source_subpath: stage3-x86-2005.0
# distccを使用する場合のホスト。別になくてもよい
distcc_hosts: 192.168.1.1 192.168.1.2 192.168.1.3
# portageの動きを制御するpackage.xxxファイルがおいてある場所
portage_confdir: /etc/portage
# USEフラグの指定。今回はXが起動するlivecdを作ろうとしてる
livecd/use: ipv6 socks5 livecd fbcon ncurses readline ssl X kde \
                 alsa a52 aac cdda cddb dts dvd stream nptl nptlonly \
                 ithreads ffmpeg unicode wxwindows
# 入れ込むパッケージ。好きなもん指定して。デフォルトだとlivecdと同じ物ができる
livecd/packages: livecd-tools dhcpcd acpid apmd gentoo-sources kudzu-knoppix hotplug \
                        coldplug fxload  gpm syslog-ng parted links raidtools dosfstools nfs-utils \
                        jfsutils xfsprogs e2fsprogs reiserfsprogs ntfsprogs screen iputils \
                        hwdata-knoppix hwsetup lvm2 evms vim mdadm ethtool xorg-x11 \
                        kde vlc ethereal nessus quagga tcpreplay kde-i18n iptables vconfig \
                        ebtables rp-pppoe openvpn rp-l2tp freeradius radiusclient ipsec-tools \

出来たら以下を実行

# catalyst -f livecd-stage1.spec

ここからごりごりごりごりごりごりごりごりごりコンパイルがスタートする。/var/tmp/catalyst/tmp/default/livecd-stage1-<version_stamp>ディレクトリにイメージが作られる。このディレクトリ配下がpackageをemergeした後の状態になる。

Page Top

livecd-stage2 anchor.png

今度はlivecdのISOイメージ作成。まずはlivecd-stage2用のサンプルファイルlivecd-stage2_template.specをもってきます

# cp /usr/share/doc/catalyst-X.X.X/examples/livecd-stage2_template.spec /root/catalyst/livecd-stage2.spec

中身を編集します。めんどい~

#livecd-stage1といっしょ
subarch: x86
#livecd-stage1といっしょ
version_stamp:20050606
#livecd-stage2作成を指示
target: livecd-stage2
#livecd-stage1といっしょ
rel_type: default
#livecd-stage1といっしょ
profile: default-linux/x86/2005.0
#livecd-stage1といっしょ
profile:snapshot: 20050603
#livecd-stage1といっしょ
distcc_hosts: 192.168.1.1 192.168.1.2 192.168.1.3
#livecd-stage1といっしょ
portage_confdir: /etc/portage
#squashfsが一番圧縮率が良いらしい。確実に1/2のサイズになる
livecd/cdfstype: squashfs
#デフォルトのまま
livecd/archscript: /usr/lib/catalyst/livecd/runscript/x86-archscript.sh
#デフォルトのまま
livecd/runscript: /usr/lib/catalyst/livecd/runscript/default-runscript.sh
#デフォルトのまま
livecd/cdtar: /usr/lib/catalyst/livecd/cdtar/isolinux-2.13-memtest86+-cdtar.tar.bz2
#このファイル名でisoファイルができる
livecd/iso: /tmp/livecd-x86-minimal.iso
#LiveCDみたいなsplashイメージ使いたい場合は
livecd/splash_type: gensplash
#LiveCDみたいなsplashイメージ使いたい場合は
livecd/splash_theme: livecd-2005.0
#genkernelのオプション
livecd/gk_mainargs: --lvm2 --dmraid
#作成するCDのタイプ
livecd/type: gentoo-livecd
#起動メッセージだしたければメッセージ書き込んだファイルを指定
livecd/motd:
#ハードウェア自動認識時組み込んでほしくないモジュール
livecd/modblacklist:
#起動時に起動しておいてほしいサービス。init.dの下にあるシェルを指定する
livecd/rcadd:
#起動時に起動してほしくないサービス。init.dの下にあるシェルを指定する
livecd/rcdel:
#livecd-stage1といっしょ
livecd/overlay:
#上書きしたいルートイメージ
livecd/root_overlay:
#/dev配下のファイルシステム。ここではudevを指定
livecd/devmanager: udev
#Xを起動するときに使用するxinitrc
livecd/xinitrc: /root/catalyst/xinitrc
#gamecdを作りたいときの指定
gamecd/conf:
#カーネルイメージ名
boot/kernel: gentoo
#カーネル構築に使用するカーネルソースツリー
boot/kernel/gentoo/sources: gentoo-sources
#カーネル構築に使用するカーネル設定ファイル
boot/kernel/gentoo/config: /root/catalyst/2.6.11-smp.config
#なんだろう?
boot/kernel/gentoo/gk_kernargs:
#livecd-stage2で使用するUSEフラグ
boot/kernel/gentoo/use: pcmcia usb X
#なんだろう?
boot/kernel/gentoo/extraversion:
#デフォルトのまま。splashテーマ出したいから指定してる
boot/kernel/gentoo/postconf: splashutils splash-themes-livecd
#追加インストールするパッケージ
boot/kernel/gentoo/packages: pcmcia-cs speedtouch slmodem globespan-adsl hostap-driver \
                                            hostap-utils ipw2100 ipw2200 fritzcapi fcdsl cryptsetup
#ISOイメージ作るときに抜いてしまうパッケージ
livecd/unmerge: acl attr autoconf automake bin86 binutils libtool m4 bison ld.so make perl \
                       patch linux-headers man-pages sash bison flex gettext texinfo ccache distcc \
                       addpatches man groff lib-compat miscfiles rsync sysklogd bc lcms libmng \
                       genkernel diffutils libperl gnuconfig gcc-config gcc bin86 cpio cronbase ed \
                       expat grub lilo help2man libtool gentoo-sources
#ISOイメージ作成時に空にするディレクトリ
livecd/empty: /var/tmp /var/cache /var/db /var/empty /var/lock /var/log /var/run \
                    /var/spool /var/state /tmp /usr/portage /usr/share/man /usr/share/info \
                    /usr/share/unimaps /usr/include /usr/share/zoneinfo /usr/share/dict \
                    /usr/share/doc /usr/share/ss /usr/share/state /usr/share/texinfo  \
                    /usr/lib/python2.2 /usr/lib/portage /usr/share/gettext /usr/share/i18n \
                    /usr/share/rfc /usr/lib/X11/config /usr/lib/X11/etc /usr/lib/X11/doc /usr/src \
                    /usr/share/doc /usr/share/man /root/.ccache /etc/cron.daily /etc/cron.hourly \
                    /etc/cron.monthly /etc/cron.weekly /etc/logrotate.d /etc/rsync \
                    /usr/lib/awk /usr/lib/ccache /usr/lib/gcc-config /usr/lib/nfs /usr/local 
                    /usr/diet/include /usr/diet/man /usr/share/consolefonts/partialfonts \
                    /usr/share/consoletrans /usr/share/emacs /usr/share/gcc-data \
                    /usr/share/genkernel /etc/bootsplash/gentoo \ 
                    /etc/bootsplash/gentoo-highquality /etc/splash/gentoo /etc/splash/emergence \
                    /usr/share/gnuconfig /usr/share/lcms /usr/share/locale /etc/skel
#ISOイメージ作成時に消してしまうファイル
livecd/rm: /lib/*.a /usr/lib/*.a /usr/lib/gcc-lib/*/*/libgcj* /etc/dispatch-conf.conf \
               /etc/etc-update.conf /etc/*- /etc/issue* /etc/make.conf /etc/man.conf \
               /etc/*.old /root/.viminfo /usr/sbin/bootsplash* /usr/sbin/fb* /usr/sbin/fsck.cramfs \
               /usr/sbin/fsck.minix /usr/sbin/mkfs.minix /usr/sbin/mkfs.bfs /usr/sbin/mkfs.cramfs \
               /lib/security/pam_access.so /lib/security/pam_chroot.so /lib/security/pam_debug.so \
               /lib/security/pam_ftp.so /lib/security/pam_issue.so /lib/security/pam_mail.so \
               /lib/security/pam_motd.so /lib/security/pam_mkhomedir.so \
               /lib/security/pam_postgresok.so /lib/security/pam_rhosts_auth.so \
               /lib/security/pam_userdb.so /usr/share/consolefonts/1* /usr/share/consolefonts/7* \
               /usr/share/consolefonts/8* /usr/share/consolefonts/9* /usr/share/consolefonts/A* \
               /usr/share/consolefonts/C* /usr/share/consolefonts/E* /usr/share/consolefonts/G* \
               /usr/share/consolefonts/L* /usr/share/consolefonts/M* /usr/share/consolefonts/R* \
               /usr/share/consolefonts/a* /usr/share/consolefonts/c* /usr/share/consolefonts/dr* \
               /usr/share/consolefonts/g* /usr/share/consolefonts/i* /usr/share/consolefonts/k* \
               /usr/share/consolefonts/l* /usr/share/consolefonts/r* /usr/share/consolefonts/s* \
               /usr/share/consolefonts/t* /usr/share/consolefonts/v* /etc/splash/livecd-2005.0/16* \
              /etc/splash/livecd-2005.0/12* /etc/splash/livecd-2005.0/6* /etc/splash/livecd-2005.0/8*\
              /etc/splash/livecd-2005.0/images/silent-16* /etc/splash/livecd-2005.0/images/silent-12* \
              /etc/splash/livecd-2005.0/images/silent-6* /etc/splash/livecd-2005.0/images/silent-8* \
              /etc/splash/livecd-2005.0/images/verbose-16* /etc/splash/livecd-2005.0/images/verbose-12* \
              /etc/splash/livecd-2005.0/images/verbose-6* etc/splash/livecd-2005.0/images/verbose-8* \
              /etc/make.conf.example /etc/make.globals /etc/resolv.conf

で、以下を実行

# catalyst -f livecd-stage2.spec

すると、先ほどlivecd-stage1で作ったフォルダをrsyncで/var/tmp/catalyst/tmp/default/livecd-stage2-<version_stamp>と言うフォルダにコピーして、ISOイメージを作ってくれます。


Front page   Freeze Diff Backup Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 3300, today: 2, yesterday: 3
Princeps date: 2009-08-19 (Wed) 02:11:45
Last-modified: 2009-08-19 (Wed) 02:15:07 (JST) (4088d) by maruo
ページ内検索

ログイン

ユーザー名:


パスワード:





パスワード紛失

メインメニュー

サブメニュー
自宅鯖計画

Gentoo Linuxな生活

玄箱HGにGentoo格闘記

航空ショーへ行こう

モータースポーツな世界

奥深き写真の世界への誘い

我思う ゆえに我あり



携帯用QRコード