live-boot -
システム起動構成要素
live-boot
はブートプロセス中
(早期ユーザ空間) に Live
システムを設定する構成要素を収録しています。
live-boot は initramfs-tools
用のフックで、例えば
live-helper(7) で作成した Live
システムをブートできる
initramfs
を生成するのに利用します。これには
Live システムの ISO
やネットワーク経由でブートするための
tar アーカイブ、USB
メモリ用のイメージ等があります。
これはブート時に root
ファイルシステム (squashfs
等圧縮ファイルシステムのイメージであることが多い)
が置かれている「/live」ディレクトリを収録する
(読み取り専用の)
メディアを検索します。見つけた場合は
aufs
を使って書き込み可能な環境を作成してシステムを起動します。
live-boot
はブートパラメータまたは設定ファイル経由で設定できます。
Live
イメージで利用されるデフォルトの
live-boot
パラメータを設定する場合は
lb_config(1)
マニュアルページの
--bootappend-live
オプションを見てください。
live-boot
はカーネルパラメータとして「boot=live」が利用された場合にのみ有効になります。
さらに、挙動に影響するブートパラメータが他にもいくつかあります。下記を見てください。
live-boot can be configured (but not activated) through configuration
files. Those files can be placed either in the root filesystem itself
(/etc/live/boot.conf, /etc/live/boot/*), or on the live media (live/boot.conf,
live/boot/*). These environment variables can only be set in the configuration
files:
-
DISABLE_CDROM=[true|false]
- Disable support for booting from CD-ROMs. If set to
'true' mkinitramfs will build an initramfs without the kernel
modules for reading CD-ROMs.
-
DISABLE_DM_VERITY=[true|false]
- Disable support for dm-verity. If set to true true'
mkinitramfs will build an initramfs without the kernel module dm-verity
and some other dm modules. Also the default mount binary is used instead
of the util-linux one.
-
DISABLE_FAT=[true|false]
- Disable support for booting from FAT file systems. If set
to ' true' mkinitramfs will build an initramfs without the kernel
module vfat and some nls_* modules.
-
DISABLE_FUSE=[true|false]
- Disable support for booting from FUSE-based file systems.
If set to ' true' mkinitramfs will build an initramfs without the
kernel module fuse and file systems that depend on it (like curlftpfs and
httpfs2).
-
DISABLE_NTFS=[true|false]
- Disable support for booting from NTFS file systems. If set
to ' true' mkinitramfs will build an initramfs without the kernel
module ntfs.
-
DISABLE_USB=[true|false]
- Disable support for booting from USB devices. If set to
'true' mkinitramfs will build an initramfs without the kernel
module sd_mod.
-
MINIMAL=[true|false]
- Build a minimal initramfs. If set to 'true'
mkinitramfs will build an initramfs without some udev scripts and without
rsync.
-
PERSISTENCE_FSCK=[true|false]
- Run fsck on persistence filesystem on boot. Will attempt to
repair errors. The execution log will be saved in /var/log/live/fsck.log.
-
FSCKFIX=[true|false]
- If PERSISTENCE_FSCK or forcefsck are set, will pass -y to
fsck to stop it from asking questions interactively and assume yes to all
queries.
live-boot
では以下のパラメータが現在有効です。
-
access=アクセス
- 物理的または視覚的に障害のあるユーザ向けのアクセシビリティレベルをセットします。アクセスに入るのは
v1、v2、v3、m1、m2
のどれかでないといけません。v1=軽度の視覚障害、
v2=中程度の視覚障害、
v3=盲目、
m1=運動神経に些細な難あり、
m2=運動神経に中程度の難あり。
-
console=TTY,速度
- 「live-getty」オプションで利用するデフォルトのコンソールをセットします。例:
「console=ttyS0,115200」
- debug
- initramfs
ブートプロセスの出力をもっと冗長にします。
debug=1 としてください
debug
に値をセットしないとメッセージは表示されないかもしれません。
-
fetch=URL
-
httpfs=URL
- 指定した URL から
squashfs
イメージをダウンロードしてネットワーク経由でブートする別のやり方で、この取得方法ではイメージを
RAM にコピーし、httpfs
を使う方法では FUSE と
httpfs2
を使ってイメージを適切な位置にマウントします。RAM
へのコピーにはさらに多くのメモリが必要で、大きなイメージでは多少時間がかかるかもしれません。しかしその後はネットワークを必要としないため正常に動作する可能性が高くなり、それ以上サーバとやりとりする必要がないためブート後はそのシステムは高速に動作します。
busybox の現在の wget 及び DNS
解決の制限のために
URL
にはホスト名を使えず、IPアドレスにしか対応していません。
機能しない:
http://example.com/path/to/your_filesystem.squashfs
機能する:
http://1.2.3.4/path/to/your_filesystem.squashfs
また、そのため httpd
の名前ベースのバーチャルホストからイメージを取得することは、httpd
のそのホストの設定で同一のIPアドレスを共有している場合は現在不可能であることにも注意してください。
また、squashfs
イメージの適切な位置にある
Live ISO
イメージも利用できます。
-
iscsi=サーバのIPアドレス[,サーバのポート];対象の名前
- LUN (Logical Unit
Number、論理ユニット番号)
が iso
またはディスクの Live
イメージを指している
iSCSI
ターゲットからのブートで、指定されたターゲットは
LUN のうち Live
メディアらしきものから検索されます。
iscsitarget
ソフトウェアを使って
iSCSI
ターゲットを判定している場合の
ietd.conf
はこのようになります:
# iscsi=
パラメータで指定したターゲットの名前
Target
<ターゲットの名前>
Lun 0 Path=<live-image.iso
のパス>,Type=fileio,IOMode=ro
#
複数のマシンのブートに使いたい場合は
# Wthreads や MaxConnections
のような一部の
#
パラメータを調整してみるのもいいかもしれません。
-
findiso=/イメージ/への/パス
- .squashfs
ファイルを通常検索する位置にある全ディスクから、指定した
ISO
ファイルを検索します
(そのため fromiso=...
で指定するデバイス名を知っている必要はありません)。
- forcefsck
- Run fsck on persistence filesystem on boot. Will attempt to
repair errors. The execution log will be saved in
/var/log/live/fsck.log.
-
fromiso=/イメージ/への/パス
- Use a filesystem from within an ISO image that's available
on live-media. The first part of the argument should be the block device
where the image is stored, followed by the path and filename (e.g.
fromiso=/dev/sda1/live/image.iso).
Alternatively, it can be used to boot from an ISO embedded into an initrd
(e.g. fromiso=/live/image.iso).
- ignore_uuid
- 検出したメディアに合う
initramfs に埋め込まれた UUID
の確認を一切行いません。initramfs
のビルド時に LIVE_GENERATE_UUID=1
を設定して UUID
を生成するように live-boot
に指示しているかもしれません。
- verify-checksums
- 指定するとブート中に
Live メディアの MD5
サムを計算し、その
Live
メディアのルートディレクトリにある
md5sum.txt
中の値と比較します。
-
ip=[デバイス]:[クライアントのIPアドレス]:[ネットマスク]:[ゲートウェイのIPアドレス]:[ネームサーバ]
[,[
デバイス]:[クライアントのIPアドレス]:[
ネットマスク]:[ゲートウェイのIPアドレス]:[ネームサーバ]]
- Let you specify the name(s) and the options of the
interface(s) that should be configured at boot time. Do not specify this
if you want to use dhcp (default). It will be changed in a future release
to mimic official kernel boot param specification (e.g.
ip=10.0.0.1::10.0.0.254:255.255.255.0::eth0,:::::eth1:dhcp).
-
ip=[読み込み元メディア]
- この変数をセットすると
dhcp
及び固定のネットワーク設定は単に飛ばされ、システムはメディアで事前に設定されている
(設定されていないといけません)
/etc/network/interfaces
を代わりに利用します。
- {live-media|bootfrom}=デバイス
- この2つは等価で、どちらかを指定すると
live-boot
はまずこのデバイスについて読み取り専用のルートファイルシステムが存在するであろう「/live」ディレクトリを検索します。それで使えそうなものが見つからない場合は通常のブロックデバイスの走査が行われます。
Instead of specifying an actual device name, the keyword 'removable' can be
used to limit the search of acceptable live media to removable type only.
Note that if you want to further restrict the media to usb mass storage
only, you can use the 'removable-usb' keyword.
-
live-media-offset=バイト数
- このようにして、上記で指定したまたは自動検出したデバイスの、指定バイト数だけずれた位置からイメージが開始することを
live-boot
に指示できます。他の
ISO
やイメージの中にある
Live システムの ISO
やイメージを見えないようにして「クリーン」なイメージを作成するのに有用かもしれません。
-
live-media-path=パス
- メディア上の Live
ファイルシステムへのパスをセットします。このデフォルト値は「/live」で、合わせてメディアを独自化していない限りこの値を変更すべきではありません。
-
live-media-timeout=秒数
- 「live-media=」により指定したデバイスがその処理をあきらめるまでの制限時間を秒数で指示します。
-
module=名前
- デフォルトとなっているオプションのファイル「filesystem.module」(以下参照)
を使う代わりに別のファイルを拡張子「.module」を外して指定することができます。これは
Live
メディアの「/live」ディレクトリに配置すべきです。
-
netboot[=nfs|cifs]
- ネットワークマウントを行うことを
live-boot
に指示します。(オプションの「nfsopts=」で)
パラメータ「nfsroot=」によりルートファイルシステムが置かれている場所を指定します。引数を付けない場合はまず
cifs
を試し、それが失敗した場合は
nfs を試します。
-
nfsopts=
- これを使って nfs
オプションを指定できます。
- nofastboot
- このパラメータは
/etc/fstab
にあるファイルシステムのチェックがデフォルトで無効化されているのを無効にします。ハードディスクに静的ファイルシステムがあり、ブート時にそれをチェックさせたい場合はこのパラメータを使ってください。使わない場合はファイルシステムのチェックは飛ばされます。
- nopersistence
- 「保持
(persistence)」機能を無効化します。ブートローダ
(syslinux のようなもの)
が保持機能を有効にしてインストールされている場合に有用です。
- noeject
- Live
メディアを取り出すかどうか確認しません。
- ramdisk-size
- This parameter defines a custom ramdisk size (it's the '-o
size' option of tmpfs mount). By default, there is no ramdisk size set, so
the default of mount applies (currently 50% of available RAM). Note that
this option has currently no effect when booting with toram.
-
overlay-size=SIZE
- The size of the tmpfs mount (used for the upperdir union
root mount) in bytes, and rounded up to entire pages. This option accepts
a suffix % to limit the instance to that percentage of your physical RAM
or a suffix k, m or g for Ki, Mi, Gi (binary kilo (kibi), binary mega
(mebi) and binary giga (gibi)). By default, 50% of available RAM will be
used.
- swap=true
- このパラメータはローカルのスワップパーティションの利用を有効にします。
- persistence
- live-boot
は保持用メディアのデバイスを調査します。このデバイスにはパーティション
(GPT (GUID Partition
Table、GUIDパーティションテーブル)
の名前を正しく指定)
やファイルシステム
(ラベルの名前を正しく指定)、イメージファイル
(ファイル名を正しく指定)
を使えます。保存先は「persistence」(
persistence.conf(5) 参照)
という名前/ラベルになります。保存先のイメージファイルは「persistence」という名前になります。
-
persistence-encryption=種類1,種類2
... 種類n
- This option determines which types of encryption that are
allowed to be used when probing devices for persistence media. If
"none" is in the list, we allow unencrypted media; if
"luks" is in the list, we allow LUKS-encrypted media. Whenever a
device containing encrypted media is probed the user will be prompted for
the passphrase. The default value is "none".
-
persistence-media={removable|removable-usb}
- 「removable」というキーワードを指定すると、live-boot
は保持用パーティションを脱着可能なメディアからのみ検索します。メディアを
USB
大容量記憶装置だけにさらに限定したい場合は「removable-usb」というキーワードを使えることに注目してください。
-
persistence-method=種類1,種類2
... 種類n
- このオプションは許可する保持用メディアの種類を決定します。「overlay」が一覧にある場合はオーバーレイと見なします
(つまり「live-rw」と「home-rw」)。デフォルト値は「overlay」です。
-
persistence-path=パス
- live-boot
は保持用ファイルをパーティションのルートディレクトリから検索します。このパラメータを使ってパスを設定すると同一のパーティションの複数のディレクトリを保持用ファイルの保管先にできます。
- persistence-read-only
- ファイルシステムの変更は保持用メディアには残されません。特にオーバーレイとネットワーク経由のブート用の
NFS
マウントは読み取り専用でマウントされます。
-
persistence-storage=種類1,種類2
... 種類n
- このオプションは保持用メディアの調査時に対象とする保持用記憶装置の種類を決定します。「filesystem」が一覧にある場合はラベルが該当するファイルシステムを利用します。「file」が一覧にある場合は全ファイルシステムについてファイル名が該当するアーカイブやイメージファイルを調査します。デフォルト値は「file,filesystem」です。
-
persistence-label=LABEL1,LABEL2 ...
LABELn
- live-boot will use the names in this list (instead of
"persistence") when searching for persistent storage. Each LABEL
can be a valid filename, partition label, or GPT name. The default is
"persistence".
- noeject
- このオプションを使うと
live-boot
はメディアを取り出さず、ブート用メディアを削除するかユーザに質問することもなくリブートします。
- showmounts
- このパラメータを使うと
live-boot
は「/」で「/lib/live」上の
(ほとんどの場合圧縮されている)
ro
ファイルシステムを提示します。これはインストール時にバイナリのパスを記憶する「mono」のようなアプリケーションで問題を起こす可能性があるためデフォルトでは有効にされていません。
- silent
- 通常の quiet
パラメータを付けてブートすると
live-boot
が出すほとんどのメッセージを非表示にします。「silent」を付けると全て非表示にします。
-
todisk=デバイス
- このパラメータを追加すると、live-boot
はルートファイルシステムをマウントする前に読み取り専用メディア全体を指定したデバイスにコピーしようとします。これには恐らく多くの
RAM
が必要となります。以後のブートではこの段階を飛ばして、今回そのデバイスで使ったのと同一の「live-media=デバイス」ブートパラメータを単に指定するようにしてください。
- toram
- このパラメータを追加すると、live-boot
はルートファイルシステムをマウントする前に読み取り専用メディア全体をそのコンピュータの
RAM
にコピーしようとします。その読み取り専用メディアで利用している容量により、これには多くの
RAM
が必要となるかもしれません。
-
union=overlay|aufs
- デフォルトで live-boot
は overlay
を利用します。このパラメータにより
aufs
に切り替えることができます。
-
dm-verity-root-hash=IMAGE:ROOTHASH,IMAGE2:ROOTHASH2
... IMAGEn:ROOTHASHn
- Explicitly specify a dm-verity root hash for a
IMAGE. Full path needs to be specified. Hashes for multiple images
can be comma separated specified.
- dm-verity-enforce-roothash-signature
- Enforces that the root hash has to be checked against a
signature.
-
dm-verity-oncorruption=ignore|panic|restart
- Sets the regarding action for the kernel if corruption
occurs on a dm-verity device.
live-boot has support for dm-verity backed root file systems. Which allows for
error detection (and correction) in the underlying image.
If for an image a file ending with
.verity in the same directory as the
image is found live-boot attempts to mount that image with dm-vertiy support.
For a given device with dm-vertiy support a root hash must be specified.
Either in a file ending with
.roothash or with the kernel command-line
option
dm-verity-root-hash. If a file ending with
.roothash.p7s
is found it is used for signature checking in dm-verity. If signature checking
should be enforced the kernel command-line option
dm-verity-enforce-roothash-signature must be set.
Forward error detection gets enabled if a file ending with
.fec and one
with
.fec.roots containing the number of roots are found.
- Example file structure:
- /live/filesystem.squashfs
/live/filesystem.squashfs.verity
/live/filesystem.squashfs.fec
/live/filesystem.squashfs.fec.roots
/live/filesystem.squashfs.roothash
/live/filesystem.squashfs.roothash.p7s
- /etc/live.conf
- 一部の変数はこの
(Live システム中の)
設定ファイルにより設定できます。
- live/filesystem.module
- この (Live
メディア内の)
オプションのファイルは「/live」ディレクトリ中のディスクイメージに対応するファイル名を空白文字または復帰文字で区切った一覧を収録します。このファイルが存在する場合はその中の一覧にあるイメージだけがルート
aufs
に統合され、その一覧の順に読み込まれます。このファイルの最初の項目が
/overlay 直下で aufs
の「最下位の」マウントポイント、この一覧の最後のファイルが
/overlay 直下で aufs
の「最上位の」マウントポイントとなります。このファイルがない場合は「/live」ディレクトリにあるイメージを英数字順に読み込みます。
- /etc/live/boot.conf
- /etc/live/boot/*
- live/boot.conf
- live/boot/*
- persistence.conf
-
persistence.conf(5)
live-build(7)
live-config(7)
live-tools(7)
More information about live-boot and the Debian Live project can be found on the
homepage at <
https://wiki.debian.org/DebianLive> and in the
manual at <
https://live-team.pages.debian.net/live-manual/>.
Bugs can be reported by submitting a bugreport for the live-boot package in the
Bug Tracking System at <
http://bugs.debian.org/> or by writing a
mail to the Debian Live mailing list at <
[email protected]>.
live-boot was originally written by Daniel Baumann <
[email protected]>. Since 2016 development has been continued
by the Debian Live team.