40 西 Debian
西 Debian
2010 10 24
40 西 Debian 2010 10
1 Introduction
Debian JP
西 Debian 勉強 Debian GNU/Linux のさ (新し Debian 特有
Debian です
的との三えてす。
ML 掲示なく顔をる事報交
期的れる
料の
れでしいお楽下さ
1
西Debian
1 Introduction 1
2 近の Debian 関係ベン 3
3 前課 4
4 initramfs つい 7
5 近の Debian Live 11
6 後の 17
2
40 西 Debian 強会 2010 10
2 Debian
Debian JP
2.1 39 西 Debian
回の西 Debian 強会 9 26 () (ASTEM)
*
1
のご力の タイ
いうましんにウマ dwm
xmonad の解 (!!) よる awesome に濃
たのさん このら、書いらうきだ?(by nogajun)りま
加者ん楽頂けではうか?
強会後は同じ会場ビアというこで、ピザとビール歓談しましたちなみにその KOF タイ
が決前やさんれまり、西毎度飲み事がみた ()
2.2 2010 OSS OSS
IPA 2010 日本 OSS OSS
*
2
Debian JP Project
り、 さん OSS 、岩 んが OSS しい
2.3 69 Debian
10 16 日に Debian 強会。特 俺の Debian 一日事前
ていす。常に味深ので
*
3
*
4
. OSC の報 Debconf10 告、川さ
によ Debian した
Debian Miniconf in Japan われす。
Debconf する/本に致すために、ずは Miniconf の開から始めう、いう計画す。興味
勉強ご覧またある週木され IRC ング加し
如何?
*
5
*
1
http://www.astem.or.jp/
*
2
http://www.ipa.go.jp/about/press/20101015_2.html
*
3
http://tokyodebian.alioth.debian.org/pdf/debianmeetingresume201010.pdf
*
4
的には、室文さん生活がうらやしすぎる...
*
5
IRC ーバ: irc.debian.or.jp:6667、チンネ #debianjp、文字コ: UTF-8 です
3
40 西 Debian 強会 2010 10
3
Debian JP
回は課題しま
スキー用とインストール用途を除く、ラブシステムを使用する状況や用途をえて (は考えて)
ださ
加者んに答はの通
3.1 Ipv6waterstar
, インルし Debian テムを変に別テム試しなど.
3.2 dictoss ( )
共スに設パソのブ使用す.
うすると OS やアプリの設を勝手にえられても再起動すれば直ため, OS 修復の手間がける. (
ークといある, ブシムはドア起動, )
3.3
1FD Linux HDD い古 PC 動か, 動後クレだから静穏とか言まし.
に使. うの. はいんな境をかえ試す. トのト環とし
. (のだ)
3.4
り物 PC 定の使 PC 使ため
, 使. 37 西 Debian @OSC2010 Kyoto
とか OSM JOSM 使
3.5
1. ーテンがて拡必要. (れも?)
2. 分の持ちいと.
4
3.6 @tetsu koba
例え, 同僚 日は一日外出するのでデスクト PC は使わない」とす. その PC ライ CD で起動し
distcc サーかす. にそ PC CPU 借りコンする.
れがにで使.
3.7
丸君, USB メモでもキン環境歩けはな
3.8
ータ
wipe-out よう, に特ライテムます.
ドホ
時接続の切れたと, 即席のルータを構築し凌いだことがあり. ような時, ユーザデータや余計な
イブが便いま. Knoppix Hacks , MySQL タベ席構
まし (, このもレうで)
3.9 西
uuuu
*
6
YouTube 講義生す, PC 内蔵 HDD 不調, netboot
イブ環境を使ています. プログラムのテス環境にも使いたいのですが, ータベースを使うもの場合, リ不
厳しです.
3.10
下の実施とはませ, 可能と思場面定しです.
育用 ()
ミナンズ行う, 受講共通境を.
規シ等の討用 ()
規シや新トウを事, 討す使用. ,
PC Debian ールそうかを PC 使 Live CD 起動てみ.
3.11 takuya.1st
ンクント?
んな PC テムを作?
ちろ, ソフトウアのデモ用に使えますよね. KOF ような展示会 PC を毎回作なくても CD 意し
OK
*
6
http://www.cuzic.com/undefineduniversityuponustream
5
3.12 lurdan
も速だし, んらラウージ HOME とし組み, シンルなント
してたりるん.
3.13
, ンズオン形式実習/ 教育機関での算機習などで, 受講者の環境揃えために使しま (の時には,
CentOS Debian dual boot , DebianLive ートのがに助頂き).
3.14
くな PC にライブシスムを組み込みンテナンスフリーシステムを作まし. かにはネトワーク
ートイブムでいこないと思.
6
40 西 Debian 強会 2010 10
4 initramfs
西山 
4.1 initrd/initramfs ?
Linux 使 root
の中 root ルシテム (real root) をマント
体は gzip cpio
ext2 のデ
gzip 代わ lzma もあ (casper/initrd.lz )
4.2 Linux
4.2.1 USB/HDD ら起
BIOS (動順 USB/HDD )
MBR (grub どのロー)
vmlinuz () + initrd ( /init)
real root (/dev/sda1 ) /sbin/init (MD, LVM2, LUKS OK)
/etc/inittab 処理
4.2.2 ドラから
BIOS (動順学ドブが)
El Torito (isolinux のブーダ)
vmlinuz () + initrd ( /init)
real root (filesystem.squashfs + aufs ) /sbin/init
/etc/inittab 処理
4.2.3 起動
BIOS (動順 NIC )
PXE boot (pxelinux )
vmlinuz () + initrd ( /init)
real root (NFS ) /sbin/init
/etc/inittab 処理
7
4.2.4 real root
ーネ root=UUID=xxx 指定
ーカ (root=/dev/sda1 )
学ド (root=/dev/hdc )
NFS (nfsroot=192.168.0.1:/path/to/nfsroot )
4.2.5 /proc/cmdline
ーネマンン引
ーネメー
動後 /proc/cmdline もの
grub どで vmlinuz
initramfs 処理使もの
ーネが処もの
real root する使、カ initramfs 使ない
うに
4.2.6 /proc/cmdline 使
quiet
動中ソー出力らす
ro / rw
initramfs 中で real root readonly mount
init=/path/to/real init
/sbin/init 代わ行すグラ指定
acpi=off apm=off
ーネ
text
/etc/init.d/gdm3 grep -wqs text /proc/cmdline
root=/path/to/blockdevice
ートてマするイス
boot=local / boot=nfs / boot=casper / boot=live
real root mount 使
4.3 initramfs
4.3.1 update-initramfs
initramfs ケー中身
update-initramfs コマンドで生成や更新 (カーネルの ケージのインストール時などは dpkg-trigger で遅延
)
/usr/share/initramfs-tools/ /etc/initramfs-tools/ 元に
sudo up date-initramfs -u -k all
8
4.3.2 initramfs 調べ
mkdir -p /tmp/initrd && (cd /tmp/initrd && { zcat /boot/initrd.img-* | cpio -idm; })
# initramfs-tools(8)
mkdir tmp/initramfs
cd tmp/initramfs
gunzip -c /boot/initrd.img-2.6.18-1-686 | \
cpio -i -d -H newc --no-absolute-filenames
# linux-2.6/Documentation/initrd.txt
mkdir /tmp/imagefile
cd /tmp/imagefile
gzip -cd /boot/imagefile.img | cpio -imd --quiet
どの展開 (レクリにかれ展開は注)
4.3.3 initramfs 中身
./init
ーネ行すグラ
Debian の場 /bin/sh
Redhat の場前確とき nash
./scripts
./init ら読れたされするラム
./bin ./sbin
busybox
./conf ./etc
定フ
./lib ./usr
イブカーール
4.4 initramfs
/etc/initramfs-tools/ 下の、フ
Debian Live /usr/share/initramfs-tools/
4.4.1 /etc/initramfs-tools
initramfs.conf, update-initramfs.conf
update-initramfs mkinitramfs 定フ
modules
initramfs 中でする (ればのは /etc/modules 使)
conf.d/
initramfs conf/conf.d/ 入る
hooks/
/usr/share/initramfs-tools/hooks/ 同様 initramfs に実る。
scripts/
/usr/share/initramfs-tools/scripts/ 一緒 initramfs scripts/
4.4.2 hooks/
/usr/share/initramfs-tools/hook-functions 数で initramfs
9
copy exec 追加してきたいバイナをコピー (ldd わかる範内で使ているラブラリをめてコピ
)
manual add modules でモ
の他除な
4.5 scripts/
スタする
live のが (BOOT=live 使)
live
live-bottom/
live-functions
live-helpers
live-premount/
4.6 ./init
“Loading, please wait. . . から initramfs 処理
initramfs レクの準
initramfs /dev udev
で起ルスリプのたいくル変環境
conf
./conf/initramfs.conf
./conf/conf.d/
ーネマンン引 (/proc/cmdline)
noresume netconsole 処理
maybe break top
(scripts/functions 中で maybe break panic run scripts )
run scripts /scripts/init-top
./conf/modules 書いモジ
. /scripts/${BOOT} mountroot real root (
./script/local )
初のウン sysfs proc root イル (real root)
ロセ ID 1 init ログ存在ンを
init 不要変数 unsetenv
real root 移行
10
40 西 Debian 勉強 2010 10
5 Debian Live
がた
2009 6 西 Debian Debian Live Debian Live
たのまとまし
5.1 Debian Live ()
めて Debian Live を説明すると、書込み (ードオンリー) メデアなから動す Debian シスムで
Debian Live を作成するに live-build 使い、ラブシステムの起動補助 live-boot live-config 組み
んだムをます
5.2 Debian Live 1.x 2.x/3.x
Debian Live の解説が干変たことに気づいたはいでしうか。こでは Debian Live 1.x(Lenny)
Debian Live 2.x(Squeeze)/3.0(Whizzy)
本的方法 Debian Live 1.x Debian Live 使書い
あるを変だけシピでき
5.2.1 Debian Live 成ツ live-helper live-build 変更
きな一つ Debian Live live-helper live-build
live-helper live-helper lh config
ように頭 lh がつたコマンドを接実行していしたが、 live-build debhelper7 よう lb コマンドにコ
ドに呼びに変れま
内部的にはかなりの変更がありましたが、通常使用するには変わていないので、以前のレシピがある人 lh 」を
lb に置える問題使えま
live-helper live-build
lh config lb config
lh build lb build
lh clean lb clean
5.2.2 live-initramfs live-boot live-config
きな二つ live-initramfs live-boot live-config た。
1.x 系で使われる live-initramfs Debian Live 時にライブシステム特有の設定をおこなうスリプトですが
11
2.x/3.x れ、ライアにイル
をおこな live-boot と、イブシステムでデーモなどの起動設をおこな live-config に新たに書きされ
た。
分けられた理由としては、 live-initramfs の見通の悪さと起動の遅さがありまし live-initramfs はもとも
ubuntu した casper 能をが、 Debian Live る様から
が考ていてい通してきまし
そして、 live-initramfs initrd の中でおこなわなくてもよいデーモンの起動設定などの処理を initrd の中でおこ
時間ていした
れらからえらので結果しがり起速化とにした
の高速化では Squeeze 降デーモンの並列起動化と insserv 導入もあ相乗効果でかり早くなりました
(Squeeze Live Alpha2 ノー 1 54 うに
ます)
live-initramfs init の対でし live-boot init ubuntu 使てい upstart fedora
使われ systemd
–bootappend-live てで、大に変 live-boot live-config man 参照
て書る必りま例と本語ードするおき
live-helper live-build
kmodel=jp106 keyb=jp keyboard-model=jp106 keyboard-layouts=jp
オプ –bootappend-live オプ する live-boot live/boot.conf
live/boot.d/以下 live-config 場合 live/config.conf live/config.d/下にプシ書い置く
動時込まうにまし
config/binary local-includes/live/config.conf
bootappend-live ンのがなのです。
LIVE_LOCALES=ja_JP.UTF-8
LIVE_TIMEZONE=Asia/Tokyo
LIVE_UTC=no
LIVE_KEYBOARD_MODEL=jp106
LIVE_KEYBOARD_LAYOUTS=jp
プシ man 寧にある度読くとう。
5.2.3 の指が変した
Debian Live してるパわりた。
1.x 系で config/chroot local-packageslists/ケージリストのイルを置き、–packages-lists オプンで
置いたリストフイルの名前を列挙していましたが、 2.x/3.x 系からは config/chroot local-packageslists/に拡張子
.list()をつけでれるなり
live-helper live-build
config/chroot local-packageslists/examplelist
lh config –packages-lists ”examplelist”
config/chroot local-packageslists/examplelist.list
5.2.4 ISO HDD のバリイを作オプ
まで live-helper ISO メー (iso) ハードデクイメー (usb-hdd) ちらかのイメージしか作成でき
live-build らは–binary-images ンに iso-hybrid ISO,HDD にも
12
プシ
のよ iso-hybrid dd USB に書で使がです。
$ lb --binary-image iso-hybrid
$ sudo lb build
$ dd if=binary-hybrid.iso of=/dev/sdX bs=1M
5.2.5 ンの/定が enabled/disabled true/false
かい更でが、 live-build プシ/指定法が enabled/disabled true/false
。以までーが (デフ使) のでけま
live-helper live-build
–apt-recommends disabled –apt-recommends false
5.2.6 化スプトレク scripts から auto
も細な変です動化クリトをリが scripts auto レクリにわりした
はデだけ OK
5.2.7 化スプト出し noautoconfig noauto
auto に置自動クリから出す noautoconfig noauto 変わりま
。以までープるのつくます
live-helper live-build
lh config noautoconfig lb config noauto
5.2.8 ンをする–categories オプ–archive-areas
main contrib どのケー–categories オプンが–archive-areas 変わ。こ
らも lb config たとラーのでくとます
live-helper live-build
lh config –categories ”main contrib non-free” lb config –archive-areas ”main contrib non-free”
5.3 Debian Live
Debian Live ます
5.3.1 live-installer live-install-launcher
live-installer Debian Installer 使 Debian Live する d-i
定方単で–debian-installer live を指て作ば使す。
$ lb config --debian-installer live
live-installer トとては Debian トー単にとがれま
live-installer 使たインストールでは、ライブメデアに保存したパケージを使てインストールを行うので
トワークの設定 DHCP にまかせると、ユーザーと root 設定とパーテンの設定以外することがありませ
13
(apt-line Live 使) りおなの一度みてい。
live-install-launcher は、 Debian Live Debian Installer を起動するランーです。ようやく GUI ンター
ース d-i が動ましたが安定してンストーするにはだ時間がかりそうと思ていら、 Debian Live
メー Daily Build は外しまた。
5.3.2 live-build-cgi,live-studio
live-build-cgi live-studio live-build web インターースで、ブラウザから設定して Debian Live の作成
ができます。この 2 つについてですが、まだチクできておらず Debian Live サイトにあるものを試してみただけ
す。
live-build-cgi は、 live-build 感じます使難し
いま
live-studio django Web ターす。定項は少くパので
GUI インターース live-magic せてあるせいか日語環境に適した設ができないので、ちらもまだま
微妙でし
5.4 Debian Live tips
こで Debian Live 使 Tips 述べ
5.5 Tips 1: Debian Live
前は語環必要ンスルすはパケーリス
作ら aptitude tasksel を使日本に必でイールす。
設定方法は–tasksel オプシ ンに aptitude」、–tasks オプシンに aptitude のタスク (例で言うなら japanese
japanese-desktop) を指す。
$ lb config --tasksel aptitude --tasks "japanese japanese-desktop"
GNOME を使う場合は japanese-gnome-desktop KDE を使う場合 japanese-kde-desktop も合わせて指定し
くとう。
定で tasksel-data ジに/usr/share/tasksel/debian-tasks.desc てい
す。
5.6 Tips 2:Debian Live
Debian Live CD/DVD USB メモリなどのバイス以に、 PXE トと NFS 用してネワーク越
起動ともす。
Debian Live のイメージを置くサーバーの設定は、ネトワーク越し Debian インストーラを起動する設とほぼ同
なのにしさい
*
7
5.6.1 Debian Live の作
本的は通 Debian Live 成と–binary-images net–net-root-server
ンに Debian Live メーを置サーのアレス–net-root-path オプンに Debian Live メーのパ
指定成し
$ lb config -b net --net-root-server "192.168.0.3" --net-root-path "/srv/debian-live"
*
7
4.5. TFTP トブート用フルの: http://www.debian.org/releases/testing/i386/ch04s05.html.ja
14
ルド binary-net.tar.gz いうカイ
5.6.2 用サをイール
Debian Live イメ DHCP TFTP サー
後本ウンため NFS が必るのストます
# aptitude install dhcp3-server tftpd-hpa nfs-kernel-server
ストール後、/srv レクリが出来ているので、この下に作成 Debian Live メー binary-net.tar.gz
展開
# cd /srv/
# tar xvfj binary-net.tar.gz
5.6.3 DHCP バー
/etc/dhcp/dhcpd.conf 尾あにに IP の範を書
subnet 192.168.100.0 netmask 255.255.255.0 {
range 192.168.100.51 192.168.100.61; dhcp を配布するレ
option routers 192.168.100.1; ゲートウ
option domain-name-servers 192.168.100.100; ネームサーバ
option broadcast-address 192.168.100.255; ブロード
option subnet-mask 255.255.255.0; サブットマ
filename "pxelinux.0"; ブートするフイル
}
/etc/default/isc-dhcp-server DHCP 使ース書き
INTERFACES="eth0" インターェースを書
DHCP ーバ起動
# service isc-dhcp-server restart
5.6.4 TFTP バー
/etc/default/tftpd-hpa 設定しま
TFTP_DIRECTORY="/srv/tftpboot" デフルトでは"/srv/tftp"にないるのを変更
TFTP ーバ起動
# service tftp-hpa restart
5.6.5 NFS ーバ
/etc/exports 開し Debian Live
/srv/debian-live *(ro,async,no_root_squash,no_subtree_check)
定をせま
# exportfs -rv
5.6.6 イアマシ
ライマシ BIOS をネにししま
15
5.6.7 NFS に差存す ()
Debian Live 本体 NFS 使てマ領域 NFS
言えます
保存するには lb config –net-cow-server オプンに保存サーバーのアドレス–net-cow-path オプンに保存
バー Live の起 nfscow=():()
ます
$ lb config --net-cow-server "192.168.0.3" --net-cow-path "/srv/live-rw"
すが試してみたところ NFS 域を aufs マウントするとカーネルがエラーメージをバカバカ吐いて死んでし
うの
5.7 Squeeze Debian Live
直なわかん。
Squeeze てい live-install-launcher Squeeze
ズにに合ず、か前 autobuild イメジにていたもも外れた Whizzy なる
思わ
Syslinux の起 debconf で提てい
Debian ゴにまし
のこ Squeeze Debian Live Lenny テムリリなるす。
5.8
回の基本ころバーかな
Debian Live がこの先どうなるかわかりません (Squeeze 安定する前 次は 3.0 でいくぜ!なんて言うぐらいだ
)みなの助ればす。
16
40 西 Debian 勉強 2010 10
6
Debian JP
6.1 西 Debian
回の西 Debian 会は西ープ 2010 + 西演目
びあ むと Squeeze ? /͡
: 13:00 (50 min) [ 会場 : 9F セミール 2 ]
GPG ーサーテ
: 11/6 17:00 (50 min) [ 会場 : 9F セミルー 3 ]
てい
*
8
GPG キーインパーに参加する場合には事登録が必要です。前登録サイト
*
9
アクセスし、公開鍵を録し
下さ しくしま
*
8
トにこのイトルでるの...Orz
*
9
http://www.math.kyoto-u.ac.jp/ uwabami/ksp-kof2010/
17
18
西Debian
Debian
2010 10 24 1
西 Debian
19