LinuxカーネルはGRUBなどのブートローダーから渡される起動オプションを解釈し機能を有効/無効にしたりデフォルトとは異なる設定で起動出来ます。その主なオプションは以下の通りです。
起動オプション | 説明 |
loglevel=数 | ログレベルを指定した数に設定する。 |
quiet | ログレベルを2 ( KERN_CRIT ) に設定する |
debug | ログレベルを10に設定する。 ( 全てのカーネルメッセージをコンソールに出力 |
mem=数 | メモリーサイズを指定した値に設定する。 例:512mだと512Mバイト、2gだと2Gバイト。 |
root=デバイスなど | ルートファイルシステムを指定したデバイスに設定する。 |
console=デバイス | コンソールを指定したデバイスに設定する。 |
printk.time=1 | カーネルメッセージの出力にタイムスタンプを付加する ( 0だと付加しない ) |
init=プログラム | /sbin/initの代わりに指定したプログラムを起動する。 |
initcall_debug | 初期化時の関数呼び出しの情報をカーネルメッセージに出力する |
disable_ipv6=1 | IPv6を無効にする ( 0だと無効 ) |
ip=dhcpなど | IPアドレスをDHCPなどに設定する |
nosmp | SMPを無効にする |
nr_cpus=数 | 指定した数のCPUを使用する |
nousb | USBを使わない |
single | シングルユーザモードでシステムを起動する |
emergency | 緊急モードでシステムを起動する。 |
text | テキストモードでシステムを起動する。 |
オプションとしては基本的にルートファイルシステムやモードなど、システム起動時に必要な設定やメモリーサイズなど、動的に変更できない設定が用意されています。起動オプションは「/proc/cmdline」ファイルを参照することで確認できます。
# cat /proc/cmdline ro root=UUID=70e00c95-33ae-441d-a143-9f56cab9cda2 rd_NO_LUKS rd_NO_MD \ crashkernel=129M@0M KEYBOARDTYPE=pc KEYTABLE=jp106 LANG=ja_JP.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet |
起動オプションを変更するにはまず起動時にGRUBメニューを表示します。起動可能なカーネル一覧が表示されたら起動したいカーネルにカーソルを合わせて編集のためにeキーを押します。そしてkernelで始まる行を選択してさらにeボタンを押下し、起動オプションを自由に書き換えれば良いわけです。例えばシングルユーザモードで起動するにはその行の最後にsingleを追加すればOKです。編集が完了すればエンターキーで編集を完了し、bボタンでブートします。
これらの起動オプションの変更はそのときだけに限られます。恒久的に変更したい場合は/boot/grub/grub.confを編集し保存すればOKです。