DebianLive/Build-HOWTO-for-the-Impatient
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
//#nomenubar
松本成司 Seiji Matsumoto (matsu AT johnen.shinshu-u.ac.jp)
wheezy用に書き直しました(2013-03-20)
このページはDebianライブシステムの構築のメモです。
Debian GNU/Linux wheezy上での作業を前提としています。
lenny用やsqueeze用の古いメモは、[[lenny用>DebianLive/Buil...
詳しくは[[本家の説明:http://live.debian.net/]] や live-bu...
感想やお気づきの点があれば松本まで連絡をいただけると幸い...
目次
#contents
* 必要なツールのインストール [#x3452cb4]
# apt-get install live-build live-boot live-config apt-c...
live-bootとlive-configはライブシステム用のpackageで、ホス...
には不要ですが、特に害もないのでインストールしておきます。
ライブ起動時のスクリプトがどうなっているのか調べるときに...
また apt-cacher-ng はプロキシソフトで、複数回ビルドすると...
# apt-get install qemu wodim
* lb config で設定 [#he3ea5ba]
まず作業ディレクトリを用意してそこに移動します。
以下の例では debian-live というディレクトリ名になっていま...
700MBくらいのイメージを作成する場合には、最低でも 4GB く...
(ハードディスクの代わりにramdiskを使えばかなり高速にビル...
$ mkdir debian-live
$ cd debian-live
このディレクトリで必要な設定を行っていきます。
といっても実際には、
$ lb config && sudo lb build
でイメージができあがってしまいます。基本的には lb config ...
lb config を実行する際には同時に複数のオプションを指定す...
まずプロキシの設定。プロキシを使わない場合は不要です。
$ lb config --apt-http-proxy "http://localhost:3142"
次にdebファイルをダウンロードするミラーサイトの設定。以下...
$ lb config --parent-mirror-bootstrap "http://ftp.jp.deb...
$ lb config --parent-mirror-binary "http://ftp.jp.debian...
$ lb config --mirror-bootstrap "http://ftp.jp.debian.org...
$ lb config --mirror-binary "http://ftp.jp.debian.org/de...
$ lb config --mirror-chroot "http://ftp.jp.debian.org/de...
ロケールやキーボードなどの設定はブート時のパラメータとし...
$ lb config --bootappend-live \
"boot=live config persistence noeject live-config....
live-config.locales=ja_JP.UTF-8 \
live-config.keyboard-model=jp106 \
live-config.keyboard-layouts=jp"
USBメモリなどにデータ(ライブイメージとの差分)を保存でき...
バイナリの形式は、デフォルトではiso-hybridになっています...
$ lb config --binary-images iso
一方、USBメモリの場合は、
$ lb config --binary-images hdd
(iso-hybrid で問題なければ、この設定は不要です)
さらにセクション (main,contrib,non-free) を指定します。
$ lb config --parent-archive-areas "main contrib non-free"
$ lb config --archive-areas "main contrib non-free"
ライブシステムに含めたいパッケージは、作業ディレクトリの...
たとえば、xfce-japanese.list.chroot というファイルに
task-japanese
task-japanese-desktop
task-xfce-desktop
nqc
g++
openssh-client
のように指定しておけばxfceを使った日本語デスクトップ環境...
gnomeやKDEの場合は、task-xfce-desktop の代りに task-gnome...
task-kde-desktop (と kde-l10n-ja) を追加しておけばよいで...
パッケージリストはいくつあってかまいません。メンテしやす...
とにかく .list.chroot という拡張子のついたファイルを conf...
ちなみに上記の task-japanese-desktop を指定しない場合には...
次にカスタマイズした設定ファイルや Debian のパッケージ管...
(デフォルトの設定のままでよい場合にはこの作業は不要です)。
例えば、現在使っている /etc/bash.bashrc や /etc/skel/ 以...
$ mkdir -p config/includes.chroot/etc/
$ cp /etc/bash.bashrc config/includes.chroot/etc/
$ cp -a /etc/skel/ config/includes.chroot/etc/
$ mkdir -p config/includes.chroot/usr/local/
$ cp -a /usr/local/bin/ config/includes.chroot/usr/local/
のような感じでコピーします。
* lb build でビルド [#w2dfaaf0]
次のコマンドを一発たたくと、それだけでディスクイメージを...
$ sudo lb build
これでDebian Liveのイメージ (binary.hybrid.iso)、あるいは...
//ちなみに、2008年9月に某ストアで12,800円で購入した激安サ...
//出来上がったディスクイメージは約400MB、作業ディレクトリ...
設定を変更して再度ビルドする際には、ビルドの前に lb clean...
ただし lb clean --all や lb clean --purge でも config/ 以...
# lb clean --all
# lb build
詳しくは man lb_clean を参照してください。
また --purge オプションをつけなければダウンロードした deb...
* qemuでテスト [#a2b72dbf]
$ qemu -cdrom binary.iso
または
$ qemu -hda binary.img
デフォルトでは qemu が使用するメモリは 128MB ですが、作業...
$ qemu -m 512 -hda binary.img
* CD や USBメモリへの書き込み [#oca7e445]
CDに書き込む場合は、例えば、
# wodim -eject binary.hybrid.iso
とします。一方USBメモリに書き込む場合は、マウントしていな...
# dd if=binary.hybrid.iso of=/dev/sdb
のように of= で書き込み先のUSBメモリのデバイス名を指定し...
このときUSBメモリ内のデータはすべて消去されてしまうので注...
(dd で bs=4M などのオプションをつければコピーのスピードが...
このイメージはパーティション情報まで含んだイメージなので...
ddでイメージを書き込むと、USBメモリには新しいパーティショ...
ユーザのデータもこのUSBメモリに保存したい場合には、
この後に home 用のパーティションを追加します。
そのためには cfdisk などのツールを使ってその空き領域に Li...
# cfdisk /dev/sdb
# mkfs.ext3 /dev/sdb2 -L persistence
さらに persistence.conf というファイルをそのボリュームと...
中身は保存したいディレクトリを指定します。例えば
# mount /dev/sdb2 /mnt
# echo "/home" > /mnt/persistence.conf
# umount /mnt
これでライブUSBメモリのできあがりです。簡単!
ちなみに /home だけでなく、/ 以下の変更をすべて保存してお...
/ union
と書いておきます。
これでイメージとの差分が保存されるので、パッケージを追加...
* その他のカスタマイズ [#o272eb32]
** インストール終了後のhook [#e7e0e415]
インストール終了後、シェルコマンドを走らせたい場合には、...
例えば、iceweaselをデフォルトのブラウザにしたい場合には
#!/bin/sh
# default browser
update-alternatives --set x-www-browser /usr/bin/iceweasel
のような中身のファイルを、 config/hooks/90-custom.sh.chro...
** 独自のリポジトリを追加 [#k1c52cda]
config/archives/以下に foo.list.chroot と foo.list.binary...
** backports も含める [#yde63fbe]
$ lb config --backports true
とした上で、config/apt/preferences に
Package: *
Pin: release n=wheezy-backports
Pin-Priority: 600
のようなエントリを入れておけばよいでしょう。
このPINの設定をしておかないと、wheezy-backportsのパッケー...
ミラーは、
$ lb config --parent-mirror-chroot-backports URL
$ lb config --parent-mirror-binary-backports URL
$ lb config --mirror-chroot-backports URL
$ lb config --mirror-binary-backports URL
として設定できますが、これらを設定しない場合には通常のwhe...
** 起動メニューをカスタマイズする [#a4b680dd]
てっとり早い方法は binary/isolinux/live.cfg や binary/sys...
そのためにはカスタマイズしたlive.cfg (あるいは menu.cfg) ...
例えば、起動時に言語を選択できるようにするためには、live....
label live-english-us
menu label ^Live English (US)
menu default
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live config live-config.locales=en_U...
label live-japanese
menu label ^Live Japanese
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live config live-config.locales=ja_J...
ただし、複数のカーネルが存在している場合(486と686-paeなど...
* 参考リンク [#d4fae620]
- http://live.debian.net/ (本家)
//- http://wiki.debian.org/DebianLive (本家の古いwiki)
//- [[Debian Live 3分クッキング:http://cliplife.jp/clip/?...
//- [[Debian Live 3分クッキング:http://cliplife.goo.ne.jp...
- [[Debian Live 3分クッキング:http://wiki.debian.org/Hide...
- http://www.nofuture.tv/linux/debianlive (のがじゅんさん)
- http://www.sakopc.info/hiki/hiki.cgi?Devian+Live (ksako...
- http://www.mathlibre.org/ (数学ソフト満載のライブシステ...
- http://www.gfd-dennou.org/arch/cc-env/live-usb-dvd/inde...
- http://tokyodebian.alioth.debian.org/pdf/debianmeetingr...
2008年10月24日からのこのページのだいたいの訪問者数:
本日&counter(today);
昨日&counter(yesterday);
合計&counter(all);
終了行:
//#nomenubar
松本成司 Seiji Matsumoto (matsu AT johnen.shinshu-u.ac.jp)
wheezy用に書き直しました(2013-03-20)
このページはDebianライブシステムの構築のメモです。
Debian GNU/Linux wheezy上での作業を前提としています。
lenny用やsqueeze用の古いメモは、[[lenny用>DebianLive/Buil...
詳しくは[[本家の説明:http://live.debian.net/]] や live-bu...
感想やお気づきの点があれば松本まで連絡をいただけると幸い...
目次
#contents
* 必要なツールのインストール [#x3452cb4]
# apt-get install live-build live-boot live-config apt-c...
live-bootとlive-configはライブシステム用のpackageで、ホス...
には不要ですが、特に害もないのでインストールしておきます。
ライブ起動時のスクリプトがどうなっているのか調べるときに...
また apt-cacher-ng はプロキシソフトで、複数回ビルドすると...
# apt-get install qemu wodim
* lb config で設定 [#he3ea5ba]
まず作業ディレクトリを用意してそこに移動します。
以下の例では debian-live というディレクトリ名になっていま...
700MBくらいのイメージを作成する場合には、最低でも 4GB く...
(ハードディスクの代わりにramdiskを使えばかなり高速にビル...
$ mkdir debian-live
$ cd debian-live
このディレクトリで必要な設定を行っていきます。
といっても実際には、
$ lb config && sudo lb build
でイメージができあがってしまいます。基本的には lb config ...
lb config を実行する際には同時に複数のオプションを指定す...
まずプロキシの設定。プロキシを使わない場合は不要です。
$ lb config --apt-http-proxy "http://localhost:3142"
次にdebファイルをダウンロードするミラーサイトの設定。以下...
$ lb config --parent-mirror-bootstrap "http://ftp.jp.deb...
$ lb config --parent-mirror-binary "http://ftp.jp.debian...
$ lb config --mirror-bootstrap "http://ftp.jp.debian.org...
$ lb config --mirror-binary "http://ftp.jp.debian.org/de...
$ lb config --mirror-chroot "http://ftp.jp.debian.org/de...
ロケールやキーボードなどの設定はブート時のパラメータとし...
$ lb config --bootappend-live \
"boot=live config persistence noeject live-config....
live-config.locales=ja_JP.UTF-8 \
live-config.keyboard-model=jp106 \
live-config.keyboard-layouts=jp"
USBメモリなどにデータ(ライブイメージとの差分)を保存でき...
バイナリの形式は、デフォルトではiso-hybridになっています...
$ lb config --binary-images iso
一方、USBメモリの場合は、
$ lb config --binary-images hdd
(iso-hybrid で問題なければ、この設定は不要です)
さらにセクション (main,contrib,non-free) を指定します。
$ lb config --parent-archive-areas "main contrib non-free"
$ lb config --archive-areas "main contrib non-free"
ライブシステムに含めたいパッケージは、作業ディレクトリの...
たとえば、xfce-japanese.list.chroot というファイルに
task-japanese
task-japanese-desktop
task-xfce-desktop
nqc
g++
openssh-client
のように指定しておけばxfceを使った日本語デスクトップ環境...
gnomeやKDEの場合は、task-xfce-desktop の代りに task-gnome...
task-kde-desktop (と kde-l10n-ja) を追加しておけばよいで...
パッケージリストはいくつあってかまいません。メンテしやす...
とにかく .list.chroot という拡張子のついたファイルを conf...
ちなみに上記の task-japanese-desktop を指定しない場合には...
次にカスタマイズした設定ファイルや Debian のパッケージ管...
(デフォルトの設定のままでよい場合にはこの作業は不要です)。
例えば、現在使っている /etc/bash.bashrc や /etc/skel/ 以...
$ mkdir -p config/includes.chroot/etc/
$ cp /etc/bash.bashrc config/includes.chroot/etc/
$ cp -a /etc/skel/ config/includes.chroot/etc/
$ mkdir -p config/includes.chroot/usr/local/
$ cp -a /usr/local/bin/ config/includes.chroot/usr/local/
のような感じでコピーします。
* lb build でビルド [#w2dfaaf0]
次のコマンドを一発たたくと、それだけでディスクイメージを...
$ sudo lb build
これでDebian Liveのイメージ (binary.hybrid.iso)、あるいは...
//ちなみに、2008年9月に某ストアで12,800円で購入した激安サ...
//出来上がったディスクイメージは約400MB、作業ディレクトリ...
設定を変更して再度ビルドする際には、ビルドの前に lb clean...
ただし lb clean --all や lb clean --purge でも config/ 以...
# lb clean --all
# lb build
詳しくは man lb_clean を参照してください。
また --purge オプションをつけなければダウンロードした deb...
* qemuでテスト [#a2b72dbf]
$ qemu -cdrom binary.iso
または
$ qemu -hda binary.img
デフォルトでは qemu が使用するメモリは 128MB ですが、作業...
$ qemu -m 512 -hda binary.img
* CD や USBメモリへの書き込み [#oca7e445]
CDに書き込む場合は、例えば、
# wodim -eject binary.hybrid.iso
とします。一方USBメモリに書き込む場合は、マウントしていな...
# dd if=binary.hybrid.iso of=/dev/sdb
のように of= で書き込み先のUSBメモリのデバイス名を指定し...
このときUSBメモリ内のデータはすべて消去されてしまうので注...
(dd で bs=4M などのオプションをつければコピーのスピードが...
このイメージはパーティション情報まで含んだイメージなので...
ddでイメージを書き込むと、USBメモリには新しいパーティショ...
ユーザのデータもこのUSBメモリに保存したい場合には、
この後に home 用のパーティションを追加します。
そのためには cfdisk などのツールを使ってその空き領域に Li...
# cfdisk /dev/sdb
# mkfs.ext3 /dev/sdb2 -L persistence
さらに persistence.conf というファイルをそのボリュームと...
中身は保存したいディレクトリを指定します。例えば
# mount /dev/sdb2 /mnt
# echo "/home" > /mnt/persistence.conf
# umount /mnt
これでライブUSBメモリのできあがりです。簡単!
ちなみに /home だけでなく、/ 以下の変更をすべて保存してお...
/ union
と書いておきます。
これでイメージとの差分が保存されるので、パッケージを追加...
* その他のカスタマイズ [#o272eb32]
** インストール終了後のhook [#e7e0e415]
インストール終了後、シェルコマンドを走らせたい場合には、...
例えば、iceweaselをデフォルトのブラウザにしたい場合には
#!/bin/sh
# default browser
update-alternatives --set x-www-browser /usr/bin/iceweasel
のような中身のファイルを、 config/hooks/90-custom.sh.chro...
** 独自のリポジトリを追加 [#k1c52cda]
config/archives/以下に foo.list.chroot と foo.list.binary...
** backports も含める [#yde63fbe]
$ lb config --backports true
とした上で、config/apt/preferences に
Package: *
Pin: release n=wheezy-backports
Pin-Priority: 600
のようなエントリを入れておけばよいでしょう。
このPINの設定をしておかないと、wheezy-backportsのパッケー...
ミラーは、
$ lb config --parent-mirror-chroot-backports URL
$ lb config --parent-mirror-binary-backports URL
$ lb config --mirror-chroot-backports URL
$ lb config --mirror-binary-backports URL
として設定できますが、これらを設定しない場合には通常のwhe...
** 起動メニューをカスタマイズする [#a4b680dd]
てっとり早い方法は binary/isolinux/live.cfg や binary/sys...
そのためにはカスタマイズしたlive.cfg (あるいは menu.cfg) ...
例えば、起動時に言語を選択できるようにするためには、live....
label live-english-us
menu label ^Live English (US)
menu default
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live config live-config.locales=en_U...
label live-japanese
menu label ^Live Japanese
linux /live/vmlinuz
initrd /live/initrd.img
append boot=live config live-config.locales=ja_J...
ただし、複数のカーネルが存在している場合(486と686-paeなど...
* 参考リンク [#d4fae620]
- http://live.debian.net/ (本家)
//- http://wiki.debian.org/DebianLive (本家の古いwiki)
//- [[Debian Live 3分クッキング:http://cliplife.jp/clip/?...
//- [[Debian Live 3分クッキング:http://cliplife.goo.ne.jp...
- [[Debian Live 3分クッキング:http://wiki.debian.org/Hide...
- http://www.nofuture.tv/linux/debianlive (のがじゅんさん)
- http://www.sakopc.info/hiki/hiki.cgi?Devian+Live (ksako...
- http://www.mathlibre.org/ (数学ソフト満載のライブシステ...
- http://www.gfd-dennou.org/arch/cc-env/live-usb-dvd/inde...
- http://tokyodebian.alioth.debian.org/pdf/debianmeetingr...
2008年10月24日からのこのページのだいたいの訪問者数:
本日&counter(today);
昨日&counter(yesterday);
合計&counter(all);
ページ名: