1.0.16 VERSION - en to ja translation catalogue (261 entries)

note: type: Attribute 'lang' of: <book>
en: en
ja: ja

note: type: Content of: <book><title>
en: Debian Linux Kernel Handbook
ja: Debian Linux カーネルハンドブック

note: type: Content of: <book><bookinfo><legalnotice><para>
en: This handbook is free software; you may redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2, or (at your option) any later version.
ja: このハンドブックはフリーソフトウェアです。フリーソフトウェア財団発行の GNU 一般公有使用許諾書 (GPL) バージョン 2 かそれ以降が規定する条件の下で使用できます。

note: type: Content of: <book><bookinfo><legalnotice><para>
en: This is distributed in the hope that it will be useful, but <emphasis>without any warranty</emphasis>; without even the implied warranty of merchantability or fitness for a particular purpose.  See the GNU General Public License for more details.
ja: この文章は有用であるという期待の下に配布されていますが、<emphasis>無保証</emphasis>です。販売に、あるいは特定の目的に適するという保証は、明示されているか否かを問わず一切存在しません。詳しくは GNU 一般公有使用許諾書をご覧下さい。

note: type: Content of: <book><bookinfo><legalnotice><para>
en: A copy of the GNU General Public License is available as <filename>/usr/share/common-licenses/GPL</filename> in the Debian GNU/Linux distribution or on the World Wide Web at <ulink url="https://www.gnu.org/copyleft/gpl.html">the GNU General Public Licence</ulink>.  You can also obtain it by writing to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
ja: GNU一般公有使用許諾書のコピーは、Debian GNU/Linux ディストリビューションでは <filename>/usr/share/common-licenses/GPL</filename> として、World Wide Web では <ulink url="https://www.gnu.org/copyleft/gpl.html"> the GNU General Public Licence </ulink>として入手可能です。また、 Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. に請求しても手に入ります。

note: type: Content of: <chapter><title>
en: Package maintainer scripts and hooks
ja: メンテナスクリプトとフック

note: type: Content of: <chapter><para>
en: The following policy applies to Debian GNU/Linux.  Some parts may be applicable to kernels other than Linux, but this policy does not set any requirements for them.
ja: 以下のポリシーが Debian GNU/Linux に適用されます。これらのなかには、 Linux 以外のカーネルに対して適用可能なものもありますが、このポリシーにはそれらのための要件を設定していません。

note: type: Content of: <chapter><section><title>
en: Kernel hooks
ja: Kernel フック

note: type: Content of: <chapter><section><para>
en: The maintainer scripts in Linux kernel packages must use <command>run-parts</command> to invoke hook scripts in the corresponding subdirectory of <filename>/etc/kernel</filename>, e.g.  the <literal>postinst</literal> script must invoke scripts in <filename>/etc/kernel/postinst.d</filename>.
ja: Linux カーネルパッケージ内のメンテナスクリプトは、 <filename>/etc/kernel</filename> の対応したサブディレクトリに配置されたフックスクリプトを起動する際に <command>run-parts</command> を使用しなければなりません。例えば、<literal>postinst</literal> スクリプトは <filename>/etc/kernel/postinst.d</filename> 内のスクリプトを起動します。

note: type: Content of: <chapter><section><para>
en: The arguments given to all kernel hook scripts are the kernel ABI version (the string that <command>uname -r</command> reports) and, optionally, the absolute path to the kernel image.  If the second argument is missing then the path is either <filename>/boot/vmlinuz-<replaceable>version</replaceable></filename> or <filename>/boot/vmlinux-<replaceable>version</replaceable></filename>, according to architecture convention.  The environment variable <envar>DEB_MAINT_PARAMS</envar> will contain the arguments given to the kernel maintainer script, possibly single-quoted.  In a shell script, this variable can be parsed using:
ja: 全てのカーネルフックスクリプトには、カーネルの ABI バージョン (<command>uname -r</command> コマンドが応答する文字列) と、 必要であれば、カーネルイメージへの絶対パスを引数として渡します。2 つ目の引数が無い場合アーキテクチャの慣例に従い、パスは<filename>/boot/vmlinuz-<replaceable>version</replaceable></filename> か <filename>/boot/vmlinux-<replaceable>version</replaceable></filename> になります。カーネルのメンテナスクリプトに与えられる引数は、環境変数 <envar>DEB_MAINT_PARAMS</envar> に格納されます。これは、単一引用符で囲まれている場合があります。シェルスクリプト内では、この変数は次のようにパースできます：

note: type: Content of: <chapter><section><para>
en: Kernel hook scripts may be run under debconf.  In this case they must not use stdin and stdout, and should send all output to stderr (fd 2).  A shell script can ensure that it does this using:
ja: カーネルフックスクリプトは debconf の下で実行することもできます。その場合、stdin と stdout は使用せず、全て stderr (fd 2) に出力しなければなりません。シェルスクリプトで確実にそうするには、次のように書きます：

note: type: Content of: <chapter><section><title>
en: Kernel hooks required for boot loaders
ja: ブートローダに必要なカーネルフック

note: type: Content of: <chapter><section><para>
en: Packages for boot loaders that need to be updated whenever the files they load are modified (i.e.  those that store a block list) must install hook scripts in <filename>/etc/kernel/postinst.d</filename> and <filename>/etc/kernel/postrm.d</filename>.
ja: ブートローダがロードするファイルが変更された場合、必ず更新しなければならないブートローダ用のパッケージ (ブロックリストを保存しているものなど) は <filename>/etc/kernel/postinst.d</filename> と <filename>/etc/kernel/postrm.d</filename> にフックスクリプトをインストールしなければなりません。

note: type: Content of: <chapter><section><para>
en: Since these boot loaders should be updated as the last step during installation/upgrade and removal, hook scripts for boot loaders must be named using the prefix <literal>zz-</literal> and no other packages may use this prefix or one that sorts later by the rules used by <command>run-parts</command>.  A postrm hook script should warn but exit with code 0 if the boot loader configuration file still refers to the kernel image that has been removed.
ja: これらのブートローダはインストール/アップグレード/削除の最終段階で更新されるべきものです。したがって、ブートローダのフックスクリプトに <literal>zz-</literal> のプレフィックスを持たせて他のパッケージはこのプレフィックスを使わないようにするか、後で <command>run-parts</command> で使用されるルールを使用して並び替えなければなりません。ブートローダの設定ファイルが、削除されたカーネルイメージを参照している場合、postrm フックスクリプトは警告すべきですが、終了コードは 0 を返さなければなりません。

note: type: Content of: <chapter><section><para>
en: These boot loader packages must be installable on the filesystem in a disabled state where they will not write to the boot sector or other special storage.  While a boot loader is disabled, any kernel hooks it includes must do nothing except (optionally) printing a warning that the boot loader is disabled, and must exit successfully.
ja: これらのブートローダパッケージは、ブートセクタや特殊なストレージに書き込まないように、無効化された状態でファイルシステムにインストール可能でなければなりません。ブートローダが無効になっている間、カーネルフックは (任意で) ブートローダが無効になっているという警告を出力する以外は何もせず、成功裏に終了しなければなりません。

note: type: Content of: <chapter><section><para>
en: Packages for boot loaders that can provide a menu of kernel versions should install kernel hook scripts in order to update that menu.
ja: カーネルバージョンのメニューを提供することができるブートローダ用のパッケージは、メニューを更新するためにカーネルフックスクリプトをインストールするべきです。

note: type: Content of: <chapter><section><title>
en: Initramfs hooks
ja: Initramfs フック

note: type: Content of: <chapter><section><para>
en: Packages for boot loaders that need to be updated whenever the files they load are modified must also install hook scripts in <filename>/etc/initramfs/post-update.d</filename>.  Initramfs builders must call these scripts using <command>run-parts</command> after they create, update or delete an initramfs.  The arguments given to these hook scripts are the kernel ABI version and the absolute path to the initramfs image.
ja: ブートローダがロードするファイルが変更された場合、必ず更新しなければならないブートローダ用のパッケージは、<filename>/etc/initramfs/post-update.d</filename> にフックスクリプトをインストールしなければなりません。initramfs ビルダーは initramfs を作成、更新、または削除した後にこのスクリプトを <command>run-parts</command> から呼び出します。これらのフックスクリプトに与えられる引数は、カーネルの ABI バージョンと、initramfs イメージへの絶対パスです。

note: type: Content of: <chapter><section><para>
en: While a boot loader is disabled, any initramfs hook it includes must do nothing except (optionally) printing a warning that the boot loader is disabled, and must exit successfully.
ja: ブートローダが無効になっている間、initramfs フックは (任意で) ブートローダが無効になっているという警告を出力する以外は何もせず、成功裏に終了しなければなりません。

note: type: Content of: <chapter><section><title>
en: Kernel hooks required for initramfs builders
ja: initramfs ビルダーは Kernel フックに依存します。

note: type: Content of: <chapter><section><para>
en: Initramfs builders must install hook scripts in <filename>/etc/kernel/postinst.d</filename> and <filename>/etc/kernel/postrm.d</filename>, to create/update and delete the corresponding initramfs images.  The postinst hook script must complete its work before returning.
ja: Initramfs ビルダーは、対応する initramfs イメージを作成/更新/削除するために、<filename>/etc/kernel/postinst.d</filename> と <filename>/etc/kernel/postrm.d</filename> にフックスクリプトをインストールしなければなりません。postinst フックスクリプトは return する前にその処理を終えている必要があります。

note: type: Content of: <chapter><section><title>
en: Optimising boot loader updates
ja: ブートローダの更新を最適化する

note: type: Content of: <chapter><section><para>
en: During a kernel package installation, upgrade or removal, various boot loader hooks may be invoked (in this order):
ja: カーネルパッケージのインストール、更新、または削除中に、様々なブートローダ hook が (次の順で) 起動します:

note: type: Content of: <chapter><section><orderedlist><listitem><para>
en: A <literal>postinst_hook</literal> or <literal>postrm_hook</literal> command set by the user or the installer in <filename>/etc/kernel-img.conf</filename>
ja: <literal>postinst_hook</literal> または <literal>postrm_hook</literal> ユーザかインストーラによる <filename>/etc/kernel-img.conf</filename> 内のコマンドセット

note: type: Content of: <chapter><section><orderedlist><listitem><para>
en: A hook script in <filename>/etc/initramfs/post-update.d</filename>
ja: <filename>/etc/initramfs/post-update.d</filename>内のフックスクリプト

note: type: Content of: <chapter><section><orderedlist><listitem><para>
en: A hook script in <filename>/etc/kernel/postinst.d</filename> or ...<filename>/postrm.d</filename>
ja: <filename>/etc/kernel/postinst.d</filename> または <filename>/postrm.d</filename> 内のフックスクリプト

note: type: Content of: <chapter><section><para>
en: To avoid unnecessary updates, the hooks invoked at steps 1 and 2 may check whether <envar>$DPKG_MAINTSCRIPT_PACKAGE</envar> begins with <literal>linux-image-</literal> and do nothing in this case.
ja: 不要な更新を避けるには、ステップ 1 と ステップ 2 で呼び出されるフックは、<envar>$DPKG_MAINTSCRIPT_PACKAGE</envar> が <literal>linux-image-</literal> で始まるかどうかをチェックし、その場合は何もしないようにすると良いでしょう。

note: type: Content of: <chapter><section><title>
en: Deprecated features
ja: 非推奨の機能

note: type: Content of: <chapter><section><para>
en: Kernel packages must not invoke boot loaders or initramfs builders except via hooks.  If <filename>/etc/kernel-img.conf</filename> contains <literal>do_bootloader = yes</literal> or equivalent, maintainer scripts that previously acted on this must warn that they are ignoring it.  <package>linux-base</package> must also warn on upgrade that the default has changed.
ja: カーネルパッケージはブートローダまたはinitramfsをフックを経由する以外の方法で起動してはいけません。もし、<filename>/etc/kernel-img.conf</filename> に <literal>do_bootloader = yes</literal> または同等のオプションが設定されている場合、以前これに作用したメンテナスクリプトはこのオプションを無視することを警告しなければなりません。<package>linux-base</package> もまた、アップデート時にデフォルトが変更されたことを警告しなければなりません。

note: type: Content of: <chapter><section><title>
en: Initial configuration by the installer
ja: インストーラによる初期設定

note: type: Content of: <chapter><section><para>
en: The installer must not define <literal>do_bootloader</literal>, <literal>postinst_hook</literal> or <literal>postrm_hook</literal> in <filename>/etc/kernel-img.conf</filename>.
ja: インストーラは <filename>/etc/kernel-img.conf</filename> 内の<literal>do_bootloader</literal>、<literal>postinst_hook</literal> または <literal>postrm_hook</literal> オプションを設定してはいけません。

note: type: Content of: <chapter><title>
en: Managing the initial ramfs (initramfs) archive
ja: 起動用RAMイメージ (initramfs) アーカイブの管理

note: type: Content of: <chapter><para>
en: The booting in Debian is a two-stage process, involving the initial RAM filesystem (initramfs for short, sometimes it is also referred to as initrd, which stands for initial RAM disk).  First, the bootloader loads the kernel and initramfs into memory, and passes the execution control to the kernel.  After basic initialization the kernel extracts the initramfs archive and mounts it as a temporary root filesystem.  initramfs contains kernel modules and userspace programs required to initialize the physical or logical device(s) containing the real root filesystem.  The <command>init</command> script on the initramfs loads modules and performs other necessary initialization steps.  At the end of this stage <command>run-init</command> deletes the initramfs from memory, mounts the real root filesystem and passes control to the <command>/sbin/init</command> program on it.
ja: Debian の起動は、初期 RAM ファイルシステム (initramfs または 初期 RAM ディスク の意で、initrd と呼ばれることもあります。）を含めて 2 段階のプロセスを踏みます。まず、ブートローダがカーネルと initramfs をメモリに読み込み、実行制御をカーネルに渡します。基本的な初期化が終了すると、カーネルが initramfs アーカイブを展開し、一時的なルートファイルシステムとしてマウントします。initramfs にはカーネルモジュールと、物理デバイスまたは論理デバイスの初期化を必要とするユーザ空間プログラムが含まれています。本物のルートファイルシステムもここに含まれます。initramfs の <command>init</command> スクリプトがモジュールをロードし、その他の初期化処理を行います。このステージの最後に、<command>run-init</command> が initramfs をメモリから消去し、本物のルートファイルシステムをロードします。そして本物のルートファイルシステム上の<command>/sbin/init</command> プログラムに制御を渡します。

note: type: Content of: <chapter><para>
en: Two major goals are achieved with such setup: the kernel size is kept under control by allowing most of the drivers to be compiled as modules (in a initramfs-less setup the drivers necessary for the boot-time initialization of the root device must be compiled into it) and allow the setups which require initialization which cannot be done in-kernel, but is performed by userspace utilities.
ja:  この仕組みを採用することによって、 2 つの大きな目的を達成しています。まず、ドライバをモジュールとしてコンパイルすることでカーネルのサイズを抑えること。 (initramfs がない場合、ルートデバイスを起動し初期化するために必要なドライバは、 あらかじめカーネルに組込まれていなければなりません。） そして、カーネルで行うことができないユーザ空間のユーティリティで実行される初期化が必要な設定の実行を可能にすることです。

note: type: Content of: <chapter><section><title>
en: Initramfs generation tools
ja: initramfs 生成ツール

note: type: Content of: <chapter><section><para>
en: Since initramfs usually needs to be customized for the particular hardware/device configuration and kernel version, they are not included as a part of any package, but are generated on the fly at kernel installation time.  Currently there are two tools in Debian capable of generating an initramfs: <command>update-initramfs</command> provided by <package>initramfs-tools</package> (default) and <command>dracut-update-initramfs</command> provided by the <package>dracut</package> package (experimental).
ja: 通常、initramfs は特定のハードウェア/デバイス構成とカーネルのバージョン毎にカスタマイズする必要があるので、パッケージの一部としては提供されず、カーネルのインストール時にその場で生成されます。今のところ、 Debian で initramfs を生成できるツールは 2 つあります。<package>initramfs-tools</package> によって提供される <command>update-initramfs</command> (デフォルト) と <package>dracut</package> パッケージによって提供される <package>dracut-update-initramfs</package> (実験的) です。

note: type: Content of: <chapter><section><title>
en: Regenerating the initramfs
ja: initramfs の再生成

note: type: Content of: <chapter><section><para>
en: If changes are desired after the corresponding <package>linux-image</package> has been installed, the initramfs needs to be regenerated.  This is achieved by the command
ja: 適切な <package>linux-image</package> をインストールした後に、その変更をしたい場合は initramfs を再生成しなければなりません。これは次のコマンドにより実現可能です：

note: type: Content of: <chapter><section><para>
en: where <package>linux-image-3.2.0-2-686-pae</package> is the name of the kernel package for which the initramfs regeneration is requested.
ja: <package>linux-image-3.2.0-2-686-pae</package> は initramfs の生成を必要としているカーネルパッケージの名前です。

note: type: Content of: <chapter><section><title>
en: Examining the initramfs contents
ja: Initramfs の中身を検査する

note: type: Content of: <chapter><section><para>
en: Occasionally it is useful to examine the contents of initramfs to diagnose a problem or for educational purposes.  They are compressed <literal>cpio</literal> archives, which may be extracted using the command
ja: 学習のためや、問題を分析するために initramfs の中身を調べることが時として訳に立ちます。initramfs は <literal>cpio</literal> アーカイブとして圧縮されており、展開には

note: type: Content of: <chapter><section><para>
en: It will unpack the contents of the initramfs into the current directory.
ja: コマンドを使用します。このコマンドでカレントディレクトリに initramfs の中身が展開されます。

note: type: Content of: <chapter><section><para>
en: It is also possible to list the contents of an initramfs using the <command>cpio</command> <option>-t</option> option or the command
ja: initramfs の中身の一覧を取得するために、<command>cpio</command> <option>-t</option>オプションか、

note: type: Content of: <chapter><title>
en: Reporting and handling bugs
ja: バグの報告と対処

note: type: Content of: <chapter><section><title>
en: Bug handling policy for the kernel team
ja: カーネルチームのバグ対処ポリシー

note: type: Content of: <chapter><section><section><title>
en: Required information
ja: 要求される情報

note: type: Content of: <chapter><section><section><para>
en: Submitters are expected to run <command>reportbug</command> or other tool that runs our <systemitem role="package">bug</systemitem> script under the kernel version in question.  The response to reports without this information should be a request to follow-up using <command>reportbug</command>.  If we do not receive this information within a month of the request, the bug may be closed.
ja: 報告者は問題のあるカーネルバージョンの環境下で <command>reportbug</command> か、それ以外の <systemitem role="package">bug</systemitem> スクリプトを実行するツールを使用することを期待されます。この情報のない報告に対する回答は、<command>reportbug</command> を使用したフォローアップの要求でなくてはなりません。要求があってから 1 ヶ月以内にこれらの情報を私達が受け取らなかった場合、バグは閉じられる場合がります。

note: type: Content of: <chapter><section><section><para>
en: Exceptions:
ja: 例外:

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: If the kernel does not boot or is very unstable, instead of the usual system information we need the console messages via <ulink url="https://www.kernel.org/doc/html/latest/networking/netconsole.html">netconsole</ulink>, <ulink url="https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html">serial console</ulink>, or a photograph.
ja: カーネルが起動しなかったりとても不安定な場合は通常のシステム情報ではなく <ulink url="https://www.kernel.org/doc/html/latest/networking/netconsole.html">netconsole</ulink>、 <ulink url="https://www.kernel.org/doc/html/latest/admin-guide/serial-console.html">serial console</ulink>、 または写真でコンソールメッセージを提出してください。

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: If the report is relaying information about a bug acknowledged upstream, we do not need system information but we do need specific references (<ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink> or <command>git</command> commit id).
ja: もし報告がアップストリームの認識しているバグに関するものであればシステムに関する情報は必要ありませんが、参照先を明確にしてください。(<ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink> や <command>git</command> のコミット ID など。)

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: If the bug is clearly not hardware-specific (e.g.  packaging error), we do not need system information.
ja: バグが明らかにハードウェア依存でなければ （例えばパッケージングのエラーなど）システムに関する情報は必要ありません。

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: If the bug is reported against a well-defined model, we may not need device listings.
ja: 特定のモデルに対するバグを報告する場合は、デバイスを列挙しなくてもよい場合があります。

note: type: Content of: <chapter><section><section><title>
en: Severities
ja: 深刻度

note: type: Content of: <chapter><section><section><para>
en: Many submitters report bugs with the wrong severity.  We interpret the criteria as follows and will adjust severity as appropriate:
ja: 多くの報告者がバグの深刻度合いを間違えてバグ報告をします。私たちは次のように基準を解釈し、必要に応じて深刻度を調整しています。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><term>
en: critical: makes unrelated software on the system (or the whole system) break...
ja: critical: システム上の無関係のソフトウェア (またはシステム全体) を破壊する

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: The bug must make the kernel unbootable or unstable on common hardware or all systems that a specific flavour is supposed to support.  There is no 'unrelated software' since everything depends on the kernel.
ja: 特定のハードウェア上で、またはあるフレーバがサポートしているはずのシステム上で、カーネルが起動不可能な状態になったり、あるいは不安定な状態になるようなバグです。「関係の無いソフトウェア」 は存在しません。なぜなら全てカーネルに依存しているからです。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><term>
en: grave: makes the package in question unusable or mostly so...
ja: grave: 疑いのあるパッケージが使用不能、またはほとんどの場合使用不能になる

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: If the kernel is unusable, this already qualifies as critical.
ja: カーネルが使用不能な状態であれば、この基準を満たしています。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><term>
en: grave: ...or causes data loss...
ja: grave: ...またはデータ損失を引き起こす...

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: We exclude loss of data in memory due to a crash.  Only corruption of data in storage or communication, or silent failure to write data, qualifies.
ja: クラッシュすることでメモリ内のデータが失われる場合を除きます。ストレージ内や、通信中のデータロス、またはデータ書き込み時のサイレント障害があてはまります。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: We include lack of support for new hardware that is generally available.
ja: 一般的に利用可能であるべきハードウェアがサポートされていない場合などがあてはまります。

note: type: Content of: <chapter><section><section><title>
en: Tagging
ja: タグ付け

note: type: Content of: <chapter><section><section><para>
en: We do not use user-tags.  In order to aid bug triage we should make use of the standard tags and <literal>forwarded</literal> field defined by the BTS.  In particular:
ja: 私達はユーザタグを使用しません。バグのトリアージを支援するために、私達は BTS で定義された標準のタグと、<literal>forwarded</literal> フィールドを使用するべきです。とりわけ：

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Add <literal>moreinfo</literal> whenever we are waiting for a response from the submitter and remove it when we are not
ja: 提出者からの返答を待っている場合 <literal>moreinfo</literal> タグを追加し、そうでない時は削除する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Do not add <literal>unreproducible</literal> to bugs that may be hardware-dependent
ja: ハードウェア依存のバグには <literal>unreproducible</literal> タグを追加しない

note: type: Content of: <chapter><section><section><title>
en: Analysis by maintainers
ja: メンテナによる解析

note: type: Content of: <chapter><section><section><para>
en: Generally we should not expect to be able to reproduce bugs without having similar hardware.  We should consider:
ja: 一般的には、よく似たハードウェアを所有していない限りバグの再現はあまり期待できません。次のことを考慮すべきです：

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Searching <ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink> (including closed bugs) or other relevant bug tracker
ja: <ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink> などの関係しそうな他のバグトラッカーを探す (クローズされているバグも含めて)

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Searching kernel mailing lists
ja: カーネルのメーリングリストを検索する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><para>
en: Of the many archives, <ulink url="http://news.gmane.org">news.gmane.org</ulink> seems to suck least
ja: 多くのアーカイブの中で、<ulink url="http://news.gmane.org">news.gmane.org</ulink> が最もましなようです

note: type: Content of: <chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><para>
en: Patches submitted to some lists are archived at <ulink url="https://patchwork.kernel.org">patchwork.kernel.org</ulink>
ja: メーリングリストに投稿されたパッチは <ulink url="https://patchwork.kernel.org">patchwork.kernel.org</ulink> にアーカイブされています

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Viewing git commit logs for relevant source files
ja: 関連するソースファイルの git コミットログを参照する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><para>
en: In case of a regression, from the known good to the bad version
ja: リグレッションが発生した場合は、問題の無いバージョンから問題が発生したバージョンまでを調べましょう

note: type: Content of: <chapter><section><section><itemizedlist><listitem><itemizedlist><listitem><para>
en: In other cases, from the bad version forwards, in case the bug has been fixed since
ja: それ以外の場合は、バグが修正されている場合があるため、問題が発生したバージョンから最新のバージョンを調べましょう

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Matching the machine code and registers in an 'oops' against the source and deducing how the impossible happened (this doesn't work that often but when it does you look like a genius ;-)
ja: 'oops' に対してソースのマシーンコードとレジスタ値を比較し、どのように逸脱状態が発生したのかを調べる (この方法がうまくいくことは稀ですが、うまくいった時は天才になった気分を味わえます ;-)

note: type: Content of: <chapter><section><section><title>
en: Testing by submitter
ja: 報告者によるテスト

note: type: Content of: <chapter><section><section><para>
en: Depending on the technical sophistication of the submitter and the service requirements of the system in question (e.g.  whether it's a production server)  we can request one or more of the following:
ja: 報告者の技術的な洗練度と、疑いのあるシステムに要求されるサービスの度合い (例えばそれが製品のサーバである等) によって、私たちは次のいずれかのリクエストをすることができます。

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Gathering more information passively (e.g.  further logging, reporting contents of files in procfs or sysfs)
ja: 受け身でさらに多くの情報を集める (例えば、さらにログを取ったり procfs や sysfs の中身の報告を求めるなど)

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Upgrading to the current stable/stable-proposed-updates/stable-security version, if it includes a fix for a similar bug
ja: 最新の stable/stable-proposed-updates/stable-security に同様の不具合に対する修正があった場合、最新のバージョンへのアップグレードを要求する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Adding debug or fallback options to the kernel command line or module parameters
ja: カーネルのコマンドラインやモジュールパラメータにデバッグやフォールバックオプションの追加を要求する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Installing the unstable or backports version temporarily
ja: unstable か backports バージョンの一時的な利用を要求する

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Rebuilding and installing the kernel with a specific patch added (the script <command>debian/bin/test-patches</command> should make this easy)
ja: 特定のパッチを適用したカーネルのリビルドを要求する (<command>debian/bin/test-patches</command> スクリプトで簡単にできます)

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: Using <command>git bisect</command> to find a specific upstream change that introduced the bug
ja: <command>git bisect</command> でバグの原因となった特定のアップストリームの変更を探すよう要求する

note: type: Content of: <chapter><section><section><para>
en: When a bug occurs in what upstream considers the current or previous stable release, and we cannot fix it, we ask the submitter to report it upstream at <ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink> under a specific Product and Component, and to tell us the upstream bug number.  We do not report bugs directly because follow-up questions from upstream need to go to the submitter, not to us.  Given the upstream bug number, we mark the bug as forwarded.  <command>bts-link</command> then updates its status.
ja: 特定の製品やコンポーネントで、アップストリームにとっての現行または以前の stable リリースでバグが発生し、わたしたちには修正できない場合は、報告者に<ulink url="https://bugzilla.kernel.org">bugzilla.kernel.org</ulink>でアップストリームにバグを報告し、わたしたちにアップストリームのバグ番号を報告するようお願いします。わたしたちがバグを直接報告することはありません。アップストリームからのフォローアップの質問はわたしたちではなく、報告者に行くべきだからです。アップストリームのバグ番号の報告をもって、わたしたちはバグを forwarded としてマークします。<command>bts-link</command> とそのステータスの更新

note: type: Content of: <chapter><section><section><title>
en: Keeping bugs separate
ja: バグを切り分ける

note: type: Content of: <chapter><section><section><para>
en: Many submitters search for a characteristic error message and treat this as indicating a specific bug.  This can lead to many 'me too' follow-ups where, for example, the message indicates a driver bug and the second submitter is using a different driver from the original submitter.
ja: 多くのバグ報告者が特徴的なエラーメッセージを探し出し、これを特定のバグであるかのように扱います。これは多くの 'me too' follow-ups の原因になっています。例えば、ドライバのバグを示すメッセージがある場合、2番目の報告者が別のドライバを使用しているようなケースです。

note: type: Content of: <chapter><section><section><para>
en: In order to avoid the report turning into a mess of conflicting information about two or more different bugs:
ja: 報告が複数の異なるバグに関する情報で溢れないように、

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: We should try to respond to such a follow-up quickly, requesting a separate bug report
ja: そのような返信に素早く対応し、別のバグ報告を送るようにお願いしなければなりません

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: We can use the BTS <literal>summary</literal> command to improve the description of the bug
ja: バグの説明を向上させるために、BTS <literal>summary</literal> コマンドを使用することができます

note: type: Content of: <chapter><section><section><itemizedlist><listitem><para>
en: As a last resort, it may be necessary to open new bugs with the relevant information, set their submitters accordingly, and close the original report
ja: 最後の手段として、報告者毎に関連する情報とともに新たなバグ報告を作成し、オリジナルのバグ報告をクローズする必要があるかもしれません

note: type: Content of: <chapter><section><section><para>
en: Where the original report describes more than one bug ('...and other thing...'), we should clone it and deal with each separately.
ja: オリジナルのバグ報告に 1 つよりも多くのバグについて説明されている場合は('...and other thing...' )、クローンしてそれぞれ個別に対応すべきです。

note: type: Content of: <chapter><section><section><title>
en: Applying patches
ja: パッチの適用

note: type: Content of: <chapter><section><section><para>
en: Patches should normally be reviewed and accepted by the relevant upstream maintainer (aside from necessary adjustments for an older kernel version)  before being applied.
ja: パッチは通常であれば、適用される前に (古いバージョンのカーネルに対して必要な調整については別にして) 関係している上流のメンテナによってレビューされ、受け入れられます。

note: type: Content of: <chapter><section><section><title>
en: Talking to submitters
ja: 報告者との対話

note: type: Content of: <chapter><section><section><para>
en: We should always be polite to submitters.  Not only is this implied by the <ulink url="https://www.debian.org/social_contract">Social Contract</ulink>, but it is likely to lead to a faster resolution of the bug.  If a submitter overrated the severity, quietly downgrade it.  If a submitter has done something stupid, request that they undo that and report back.  'Sorry' and 'please' make a big difference in tone.
ja: 報告者に対しては常に丁寧に対応すべきです。これは、<ulink url="https://www.debian.org/social_contract">社会契約</ulink>で示唆されているだけではなく、バグを迅速に解決することにも繋がる場合があります。報告者が深刻度を過剰にしてしまった場合は、静かにダウングレードしましょう。報告者が何か愚かなことをしてしまった場合は、それを取り消して報告し直すよう要求しましょう。'Sorry' と 'please' を付けるだけで、印象が大きく変わります。

note: type: Content of: <chapter><section><section><para>
en: We will maintain general advice to submitters at <ulink url="https://wiki.debian.org/DebianKernelReportingBugs">https://wiki.debian.org/DebianKernelReportingBugs</ulink>.
ja: 報告者への一般的なアドバイスは <ulink url="https://wiki.debian.org/DebianKernelReportingBugs">https://wiki.debian.org/DebianKernelReportingBugs</ulink> でメンテされています。

note: type: Content of: <chapter><section><title>
en: Filing a bug against a kernel package
ja: カーネルパッケージに対してバグ報告を行う

note: type: Content of: <chapter><section><para>
en: Debian kernel team keeps track of the kernel package bugs in the Debian Bug Tracking System (BTS).  For information on how to use the system see <ulink url="https://bugs.debian.org">https://bugs.debian.org</ulink>.  You can also submit the bugs by using the <command>reportbug</command> command from the package with the same name.  Please note that kernel bugs found in distributions derived from Debian (such as Knoppix, Mepis, Progeny, Ubuntu, Xandros, etc.) should <emphasis>not</emphasis> be reported to the Debian BTS (unless they can be also reproduced on a Debian system using official Debian kernel packages).  Derived distributions have their own policies and procedures regarding kernel packaging, so the bugs found in them should be reported directly to their bug tracking systems or mailing lists.
ja: Debian kernel チームはカーネルパッケージのバグを Debian Bug Tracking System (BTS) で管理しています。このシステムの利用方法については、 <ulink url="https://bugs.debian.org"> http://bugs.debian.org</ulink> を参照してください。バグは、<command>reportbug</command>というパッケージと同名のコマンドを使用して送信することができます。Debian から派生したディストリビューション (Knoppix、Mepis、Progeny、Ubuntu、Xandros など) に関するバグは Debian BTS に報告し<emphasis>ない</emphasis>で下さい。(公式の Debian カーネルパッケージを利用して、Debian システム上で再現可能である場合を除きます。)派生ディストリビューションにはカーネルのパッケージングに関して独自のポリシーと手順があります。そこで発見されたバグは、彼らのバグ追跡システムやメーリングリストに直接報告されるべきです。

note: type: Content of: <chapter><section><para>
en: Nothing in this chapter is intended to keep you from filing a bug against one of the Debian kernel packages.  However, you should recognize that the resources of the Debian kernel team are limited, and efficient reaction to a bug is largely determined by the amount and quality of the information included in the bug report.  Please help us to do a better job by using the following guidelines when preparing to file the bug against kernel packages:
ja: この章の内容は、あなたが Debian カーネルパッケージに対してバグ報告を行うことを避けることを意図したものではありません。しかし、Debian カーネルチームのリソースが限られていることは覚えておいてください。 バグに効率的に反応できるかどうかは、バグレポートの情報の品質に左右されています。カーネルパッケージに対してバグ報告する場合は次のガイドラインを参考にして、私たちがより良い作業ができるよう手助けしてください。

note: type: Content of: <chapter><section><itemizedlist><listitem><para>
en: <emphasis>Do the research.</emphasis> Before filing the bug search the web for the particular error message or symptom you are getting.  As it is highly unlikely that you are the only person experiencing a particular problem, there is always a chance that it has been discussed elsewhere, and a possible solution, patch, or workaround has been proposed.  If such information exists, always include the references to it in your report.  Check the <ulink url="https://bugs.debian.org/cgi-bin/pkgreport.cgi?src=linux">current bug list</ulink> to see whether something similar has been reported already.
ja: <emphasis>調査する</emphasis> バグ報告を行う前に特定のエラーメッセージや症状に関して web 上で検索を行いましょうあなただけがある問題に遭遇しているというのは極めて稀なケースです。常に、すでにどこかで議論されており、解決策や回避策やパッチが既に提示されている可能性が高いと考えるべきです。もし、そのような情報が存在する場合は、常にバグレポート内に参照先を示すようにしましょう。すでに同様の報告がされているかどうかについては、<ulink url="https://bugs.debian.org/cgi-bin/pkgreport.cgi?src=linux">current bug list</ulink> を確認してください。

note: type: Content of: <chapter><section><itemizedlist><listitem><para>
en: <emphasis>Collect the information.</emphasis> Please provide enough information with your report.  At a minimum, it should contain the exact version of the official Debian kernel package, where the bug is encountered, and steps to reproduce it.  Depending on the nature of the bug you are reporting, you might also want to include the output of <command>dmesg</command> (or portions thereof), output of the <command>lspci -vn</command>.  <command>reportbug</command> will do this automatically.  If applicable, include the information about the latest known kernel version where the bug is not present, and output of the above commands for the working kernel as well.  Use common sense and include other relevant information, if you think that it might help in solving the problem.
ja: <emphasis>情報を収集する</emphasis> バグレポートには充分な情報を提供してください。レポートには最低限でも、バグに遭遇したDebian 公式カーネルパッケージのバージョンと、再現方法を記載してください。あなたが報告するバグの性質によっては、<command>dmesg</command> の出力(または、その一部) と <command>lspci -vn</command> の出力も報告してください。<command>reportbug</command> は、これを自動で行います。あてはまる場合には、知りうる限りバグが発生しない最新のカーネルバージョンと、動作しているカーネルに対する上記のコマンド出力も報告してください。common sense を使って、あなたが問題の解決の手助けになると思う情報を付加してください。

note: type: Content of: <chapter><section><itemizedlist><listitem><para>
en: <emphasis>Try to reproduce the problem with "vanilla" kernel.</emphasis> If you have a chance, try to reproduce the problem by building the binary kernel image from the "vanilla" kernel source, available from <ulink url="https://www.kernel.org">https://www.kernel.org</ulink> or its mirrors, using the same configuration as the Debian stock kernels.  For more information on how to do this, look at <xref linkend="s-common-building"/>.  If there is convincing evidence that the buggy behavior is caused by the Debian-specific changes to the kernel, the bug will usually be assigned higher priority by the kernel team.  If the bug is not specific for Debian, check out the upstream <ulink url="https://bugzilla.kernel.org">kernel bug database</ulink> to see if it has been reported there.  If you are sure that it is an upstream problem, you can also report your bug there (but submit it to Debian BTS anyway, so that we can track it properly).
ja: <emphasis> "vanilla" カーネルで再現させる</emphasis> 機会があれば、"vanilla" カーネルからビルドした バイナリカーネルイメージで再現できるか試してみてください。vanilla カーネルのソースは <ulink url="https://www.kernel.org">https://www.kernel.org</ulink> か、そのミラーから入手することができます。Debian の stock カーネルと同じ設定を使用してください。このやり方についての詳しい情報は、<xref linkend="s-common-building"/> を参照して下さい。もしバグがカーネルに対して行なわれた Debian 特有の変更が原因であるという説得力のある証拠があれば、バグはカーネルチームによってより高い優先度をつけられます。もしバグが Debian 特有のものでない場合は、すでにアップストリームで報告済みでないか <ulink url="http://bugzilla.kernel.org">kernel bug database</ulink>を確認してください。 アップストリームの問題であることが明確な場合は、そちらにもバグ報告をすることができます。(いずれにせよ、その問題を追跡できるように Debian BTS には報告してください。)

note: type: Content of: <chapter><section><itemizedlist><listitem><para>
en: <emphasis>Use the correct package to report the bug against.</emphasis> Please file bugs against the package containing the kernel version where the problem occurs (e.g.  <systemitem role="package">linux-image-3.2.0-2-686-pae</systemitem>), not a metapackage (e.g.  <systemitem role="package">linux-image-686-pae</systemitem>).
ja: <emphasis>正しいパッケージに対してバグ報告をする</emphasis>: バグ報告は、問題が発生したカーネルのバージョン番号を持つパッケージ (例えば <systemitem role="package">linux-image-3.2.0-2-686-pae</systemitem>) に対して行いメタパッケージ (例えば <systemitem role="package">linux-image-686-pae</systemitem>) には報告しないでください。

note: type: Content of: <chapter><section><itemizedlist><listitem><para>
en: <emphasis>Bugs involving tainted kernels.</emphasis> If a kernel crashes, it normally prints out some debugging information, indicating, among other things, whether the running kernel has been tainted.  The kernel is referred to as tainted if at the time of the crash it had some binary third-party modules loaded.  As kernel developers do not have access to the source code for such modules, problems involving them are notoriously difficult to debug.  It is therefore strongly recommended to try and reproduce the problem with an untainted kernel (by preventing the loading of binary modules, for example).  If the problem is due to the presence of such modules, there is not much the kernel community can do about it and it should be reported directly to their authors.
ja: <emphasis>tainted カーネルに関連するバグ</emphasis> カーネルがクラッシュした場合、通常はデバッグ情報を出力します。これには、動作中だったカーネルが taint (汚染) されたかも含まれています。クラッシュ時にサードパーティ製のバイナリモジュールがロードされていたカーネルは tainted (汚染された) と表現されます。カーネル開発者がソースコードを見ることができないので、そのようなモジュールが絡んだ問題はデバッグが非常に困難になります。そのような事情から、(例えばバイナリモジュールをロードしないようにするなどして) untainted (汚染されていない) カーネルで再現できるか試してみることを強くおすすめします。問題がそのようなモジュールの内部に起因するものであれば、カーネルコミュニティができることはあまりありませんので、直接モジュールの作成者に報告すると良いでしょう。

note: type: Content of: <chapter><section><section><title>
en: Bisecting (finding the upstream version that introduced a bug)
ja: Bisecting (バグを作り込んだアップストリームのバージョンを特定する)

note: type: Content of: <chapter><section><section><para>
en: When a bug is easy to reproduce locally but hard to get developers to reproduce (as is often true of workflow- or hardware-dependent bugs), it can be useful to compile and test a few versions to narrow down what changes introduced the regression.
ja: ローカル環境でバグが簡単に再現できても、開発者が再現できない場合 (このような場合の多くはワークフローかハードウェアに依存したバグです)、いくつかのバージョンでコンパイルとテストを行い、どの変更がリグレションの原因になったのかを絞り込むと役に立ちます。

note: type: Content of: <chapter><section><section><para>
en: To start, recreate the problem with a vanilla kernel:
ja: まずは vanilla カーネルで問題を再現させましょう:

note: type: Content of: <chapter><section><section><para>
en: The above commands acquire a vanilla kernel.  Configure, build and test a binary package as explained in <xref linkend="s-common-building"/>:
ja: 上記のコマンドで vanilla カーネルを取得します。<xref linkend="s-common-building"/>で説明されている、バイナリパッケージの設定、ビルド、テストを行います:

note: type: Content of: <chapter><section><section><screen>
en: <prompt>$</prompt> <userinput>make localmodconfig</userinput>  <lineannotation># minimal configuration</lineannotation>
    <prompt>$</prompt> <userinput>scripts/config --disable DEBUG_INFO</userinput>  <lineannotation># to keep the build reasonably small</lineannotation>
    <prompt>$</prompt> <userinput>make bindeb-pkg</userinput>
    <prompt>#</prompt> <userinput>dpkg -i ../linux-image-3.5.0_3.5.0-1_i386.deb</userinput>  <lineannotation># substitute package name from the previous command</lineannotation>
    <prompt>#</prompt> <userinput>reboot</userinput>
ja: <prompt>$</prompt> <userinput>make localmodconfig</userinput>  <lineannotation>#最低限の設定</lineannotation>
    <prompt>$</prompt> <userinput>scripts/config --disable DEBUG_INFO</userinput>  <lineannotation>#ビルドサイズを適度なサイズにおさえる</lineannotation>
    <prompt>$</prompt> <userinput>make bindeb-pkg</userinput>
    <prompt>#</prompt> <userinput>dpkg -i ../linux-image-3.5.0_3.5.0-1_i386.deb</userinput>  <lineannotation>#パッケージ名は適当なもに置き換える</lineannotation>
    <prompt>#</prompt> <userinput>reboot</userinput>

note: type: Content of: <chapter><section><section><para>
en: If the bug doesn't show up, try again with the official configuration file from /boot.  (If it still doesn't show up after that, declare victory and celebrate.)
ja: もしバグが再現できない場合は、/boot 内の公式な設定ファイルで試してみましょう。(それでも再現できない場合は勝利宣言をし祝杯を挙げましょう。)

note: type: Content of: <chapter><section><section><para>
en: Initialize the bisection process by declaring which versions worked and did not work:
ja: bisection (二分探索) を開始するにはまず、どのバージョンが動作してどのバージョンが動作しなかったかを宣言します:

note: type: Content of: <chapter><section><section><screen>
en: <prompt>$</prompt> <userinput>cd linux</userinput>
    <prompt>$</prompt> <userinput>git bisect start</userinput>
    <prompt>$</prompt> <userinput>git bisect good v3.0</userinput>  <lineannotation># or whichever was known to be good</lineannotation>
    <prompt>$</prompt> <userinput>git bisect bad</userinput>  <lineannotation># current version is bad</lineannotation>
ja: <prompt>$</prompt> <userinput>cd linux</userinput>
    <prompt>$</prompt> <userinput>git bisect start</userinput>
    <prompt>$</prompt> <userinput>git bisect good v3.0</userinput>  <lineannotation>#問題ないことがわかっているバージョン (good)</lineannotation>
    <prompt>$</prompt> <userinput>git bisect bad</userinput>  <lineannotation>#現在のバージョンは問題がある (bad)</lineannotation>

note: type: Content of: <chapter><section><section><para>
en: Now git checks out a version half-way in between to test.  Build it, reusing the prepared configuration.
ja: git が中間バージョンをテストするためにチェックアウトします。準備しておいた設定を再利用し、ビルドしましょう。

note: type: Content of: <chapter><section><section><para>
en: Install the package, reboot, and test.
ja: パッケージをインストールし、再起動させ、テストします。

note: type: Content of: <chapter><section><section><screen>
en: <prompt>$</prompt> <userinput>git bisect good</userinput>  <lineannotation># if this version doesn't exhibit the bug</lineannotation>
    <prompt>$</prompt> <userinput>git bisect bad</userinput>  <lineannotation># if it does</lineannotation>
    <prompt>$</prompt> <userinput>git bisect skip</userinput>  <lineannotation># if some other bug makes it hard to test</lineannotation>
ja: <prompt>$</prompt> <userinput>git bisect good</userinput>  <lineannotation>#このバージョンではバグが無い </lineannotation>
    <prompt>$</prompt> <userinput>git bisect bad</userinput>   <lineannotation>#バグが存在する </lineannotation>
    <prompt>$</prompt> <userinput>git bisect skip</userinput>  <lineannotation>#他のバグがあるためテストが難しい</lineannotation>

note: type: Content of: <chapter><section><section><para>
en: And on to the next iteration:
ja: そして次のイテレーションに移ります:

note: type: Content of: <chapter><section><section><para>
en: At the end of the process, the name of the "first bad commit" is printed, which is very useful for tracking down the bug.  Narrowing down the regression range with a few rounds is useful even if you don't get that far; in that case, run <command>git bisect log</command> to produce a log.  If you are the visual sort of person, <command>git bisect visualize</command> with the <package>gitk</package> package installed can show what is happening between steps.
ja: プロセスの最後に、"first bad commit" の名前が出力されます。これはバグを追うのに役立ちます。特定には至らなくても、何度かプロセスを繰り返しリグレッションの範囲を絞り込むことは有用です。その場合、<command>git bisect log</command> コマンドを実行し、ログを出力します。 もし可視化したければ、<command>git bisect visualize</command> を <package>gitk</package> パッケージをインストールした状態で使用することで、ステップ間で何が起きたかを見ることができます。

note: type: Content of: <chapter><section><section><para>
en: See Christian Couder's article "Fighting regressions with git bisect" from <ulink url="https://www.kernel.org/pub/software/scm/git/docs/git-bisect-lk2009.html">kernel.org</ulink> or <ulink url="file:///usr/share/doc/git-doc/git-bisect-lk2009.html">the git-doc package</ulink> for details.
ja: Christian Couder の文章、「git bisect でリグレッションと戦う」 に詳細な説明があります。<ulink url="https://www.kernel.org/pub/software/scm/git/docs/git-bisect-lk2009.html">kernel.org</ulink> から入手することができます。または、<ulink url="file:///usr/share/doc/git-doc/git-bisect-lk2009.html">git-doc package</ulink> を参照してください。

note: type: Content of: <chapter><title>
en: Managing the kernel modules
ja: カーネルモジュールの管理

note: type: Content of: <chapter><para>
en: Linux device drivers come in the form of kernel modules - object files which may be loaded into the running kernel to extend its functionality.  The list of currently loaded kernel modules can be obtained using the <command>lsmod</command> command, modules may be loaded using <command>modprobe</command>, and removed using <command>modprobe -r</command>.  The <command>depmod</command> command may be used to regenerate the list of available modules (after installation of the new modules, for example), even though it is pretty unlikely that you will ever need to invoke it by hand.
ja: Linux デバイスドライバはカーネルモジュール形式 - 機能拡張のために動作中のカーネルにロード可能なオブジェクトファイル - で配布されます。現在カーネルにロードされているモジュールの一覧は <command>lsmod</command> コマンドで取得できます。モジュールは <command>modprobe</command> コマンドでロードし、<command>modprobe -r</command> コマンドで取り外すことができます。<command>depmod</command> コマンドは、手動で起動する必要はほとんどありませんが、利用可能なモジュール一覧の再生成 (例えば新しいモジュールをインストールした直後など) に使用することができます。

note: type: Content of: <chapter><para>
en: Normally, the devices are detected and necessary kernel modules are loaded by <command>udev</command> during boot time.  Occasionally, one may need finer control over the loading of kernel modules, for example to pass the additional parameters to the module, force loading of some modules on startup, or prevent certain module(s) from being loaded.
ja: 通常、起動時にデバイスが検出され必要なカーネルモジュールが <command>udev</command> によってロードされます。稀に、カーネルモジュールのロードをより細かくコントロールする必要のある人がいます。例えば、追加のパラメータをモジュールに渡したり、スタートアップ時にいくつかのモジュールをロードしたり、特定のモジュールがロードされないようにしたり、などです。

note: type: Content of: <chapter><para>
en: If some modules are not loaded automatically by <command>udev</command>, but you would like them to be loaded during boot, it is possible to force it by listing the names of the modules in <filename>/etc/modules</filename>.  This will be scanned for the names of the modules (one name per line), which will then be loaded using <command>modprobe</command>.  For example, a typical <filename>/etc/modules</filename> might look like:
ja: もし、<command>udev</command> で自動的にロードされないモジュールを、起動時にロードしたければ、そのモジュールを<filename>/etc/modules</filename>に列挙することで、強制的にロードさせることも可能です。このファイルの各行ごとにモジュール名をスキャンし (各行に 1 モジュール) 、 <command>modprobe</command> でそのモジュールがロードされます。例えば、典型的な <filename>/etc/modules</filename> は次のように書かれています。

note: type: Content of: <chapter><para>
en: To find out what parameters are accepted by a given module, you can use the <command>modinfo</command> command, for example:
ja: 与えられたモジュールに対して有効なパラメータを知りたい場合は、<command>modinfo</command> コマンドを使います。以下に例を示します。

note: type: Content of: <chapter><para>
en: To add custom arguments to the modules loaded by <command>udev</command> early in the boot process, you need to create a custom configuration file for <command>modprobe</command>, which <command>udev</command> uses to load the modules.  For example, to pass an <literal>atapi_enabled=1</literal> argument to the <literal>libata</literal> kernel module, create <filename>/etc/modprobe.d/local.conf</filename> file with the following line:
ja: ブートプロセスの初期段階で<command>udev</command>によってロードされるモジュールに特別な引数を渡すには、<command>udev</command>がモジュールのロードに使用する <command>modprobe</command> 用のカスタム設定ファイルを作らなければなりません。例えば、引数 <literal>atapi_enabled=1</literal> を <literal>libata</literal> カーネルモジュールへ渡すには、以下の行を含む<filename>/etc/modprobe.d/local</filename>ファイルを作成します。

note: type: Content of: <chapter><para>
en: You can use any name ending in <literal>.conf</literal> for the configuration files in <filename>/etc/modprobe.d</filename> and put multiple <literal>options</literal> lines in the same file.
ja: <filename>/etc/modprobe.d</filename> 内の設定ファイルには、任意の名前を使用でき、複数の <literal>options</literal> 行を同一ファイル内に記述できます。

note: type: Content of: <chapter><para>
en: Sometimes two different modules claim support for the same device, usually because two slightly different versions of the device exist, requiring different kernel modules to operate.  In such situation <command>udev</command> loads both kernel modules, with unpredictable results.  To avoid this problem, you can prevent any module (let's say, <literal>tulip</literal>) from loading by creating a file containing the line:
ja: 時として、2 つの異なるモジュールが同じデバイスのサポートを宣言していることがあります。たいていの場合、2 つのやや異なるバージョンのデバイスが存在し、動作に異なるカーネルモジュールを要求していることが原因です。そのような状況では、<command>udev</command> が両方のカーネルモジュールをロードし、予期しない結果になります。この問題を避けるため、任意のモジュール (例えば <literal>tulip</literal> だとしましょう) のロードを防ぐには、任意のファイルを作成し、

note: type: Content of: <chapter><para>
en: in <filename>/etc/modprobe.d</filename> directory.  See the <command>modprobe</command> manual page (<command>man modprobe</command>) for much more information on configuring and using modprobe.
ja: と書いて、<filename>/etc/modprobe.d</filename> ディレクトリに配置します。modprobe の使い方や設定方法に関するより詳しい情報は、<command>modprobe</command> のマニュアルページ (<command>man modprobe</command>) を参照してください。

note: type: Content of: <chapter><title>
en: Version numbers and ABIs
ja: バージョン番号と ABI

note: type: Content of: <chapter><section><title>
en: The different types of version
ja: 異なるバージョンのタイプ

note: type: Content of: <chapter><section><variablelist><varlistentry><term>
en: Upstream version
ja: アップストリームバージョン

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: The version that Linus or a stable series maintainer uses for a release.  Currently Linus will use the version format: 4.<replaceable>x</replaceable>[-rc<replaceable>y</replaceable>].  Stable series maintainers use the version format: 4.<replaceable>x</replaceable>.<replaceable>y</replaceable>.
ja: Linus や安定版のメンテナがリリースに使用するバージョンです。現在 Linus はバージョンナンバに 4.<replaceable>x</replaceable>[-rc<replaceable>y</replaceable>] というフォーマットを使用しています。安定版のメンテナはバージョンナンバに 4.<replaceable>x</replaceable>.<replaceable>y</replaceable> というフォーマットを使用しています。

note: type: Content of: <chapter><section><variablelist><varlistentry><term>
en: Package version
ja: パッケージバージョン

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: The version used in a Debian package.  Following Debian policy, it should follow the format <replaceable>upstreamversion</replaceable>-<replaceable>debianrevision</replaceable>.  However, for an upstream release candidate, the string '-rc' must be replaced with '~rc' so that it will be recognised as an earlier version than the following release.
ja: Debian パッケージで使用されるバージョンナンバDebian ポリシーによると、<replaceable>アップストリームのバージョン</replaceable>-<replaceable>Debian のリビジョン</replaceable> というフォーマットに従う必要がります。しかし、アップストリームのリリース候補版で使用される 「-rc」 は 「~rc」 で置き換える必要があります。これ以降にリリースされるバージョンよりも前のバージョンであると認識させるためです。

note: type: Content of: <chapter><section><variablelist><varlistentry><term>
en: Kernel version
ja: カーネルバージョン

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This is the version that appears in kernel messages, filenames, package names and the output of 'uname -r'.  In official kernel packages it follows the format <replaceable>upstreamversion</replaceable>[-<replaceable>abiname</replaceable>][-<replaceable>featureset</replaceable>]-<replaceable>flavour</replaceable>.  It is not changed for every new package version.  The <replaceable>abiname</replaceable> is changed as explained below.
ja: カーネルメッセージ、ファイル名、パッケージ名、「uname -r」 コマンドで出力されるバージョンナンバです。公式のカーネルパッケージでは<replaceable>upstreamversion</replaceable>[-<replaceable>abiname</replaceable>][-<replaceable>featureset</replaceable>]-<replaceable>flavour</replaceable> というフォーマットに従います。これは全ての新しいパッケージバージョンで変わるものではありません。<replaceable>abiname</replaceable>は以下のルールに従い変更されます。

note: type: Content of: <chapter><section><para>
en: Many programs parse the kernel version string reported by the <command>uname</command> system call or command and expect to find at least 3 version components separated by dots.  For compatibility, the official kernel packages currently add '.0' to the upstream version.
ja: 多くのプログラムがカーネルバージョンを<command>uname</command>システムコールかコマンドからパースしますが、最低でも 3 つのバージョンの部位がドットで区切られていることが前提となっています。互換性のために、公式のカーネルパッケージは現在アップストリームバージョンに「.0」を付けています。

note: type: Content of: <chapter><section><title>
en: The kernel ABI
ja: カーネルの ABI

note: type: Content of: <chapter><section><para>
en: An ABI (Application Binary Interface) is an interface between two software components, considered at the level of register allocation and memory layout.  The ABI between the kernel and user-space is generally maintained carefully, and is not a concern here.  However, the ABI between the kernel and its modules is not.  In order to support out-of-tree modules, the kernel version should be changed when the ABI between the kernel and modules changes.
ja: ABI (Application Binary Interface) はレジスタの割り当てやメモリのレイアウトのレベルで考慮されているソフトウェアコンポーネント間のインタフェースです。カーネルとユーザ空間の間の ABI は定常的に注意深くメンテナンスされているため、ここでは考慮する必要はありません。しかし、カーネルとカーネルモジュール間の ABI はその限りではありません。ツリー外のモジュールをサポートするためには、 カーネルとモジュール間の ABI に変更があるたびにカーネルバージョンを変更しなければなりません。

note: type: Content of: <chapter><section><section><title>
en: The ABI name
ja: ABI 名

note: type: Content of: <chapter><section><section><para>
en: In official kernel packages, we change the <replaceable>abiname</replaceable> part of the kernel version to mark ABI changes that aren't due to a new upstream version.  This part comes from the <literal>abiname</literal> setting in <filename>debian/config/defines</filename>.  We use either a number or 'trunk' (for experimental), but for a custom package it should be some other string.
ja: 公式のカーネルパッケージでは、私達はカーネルバージョン名の一部である<replaceable>abiname</replaceable>を変更します。これは、新しいアップストリームバージョンに起因しない ABI の変更をマークするためです。この部分は <filename>debian/config/defines</filename> 中の <literal>abiname</literal> の設定で管理されています。私達は、この部分に 「trunk」(experimental 用) か番号を使用しますが、カスタムパッケージにはそれ以外の文字列を使うべきです。

note: type: Content of: <chapter><section><section><title>
en: Maintaining and updating the ABI
ja: ABI の管理と更新

note: type: Content of: <chapter><section><section><para>
en: In order to avoid the need for users to rebuild out-of-tree modules frequently, we try to avoid changing the kernel ABI during updates to a Debian stable or oldstable release.  Most importantly, we avoid making such changes without changing the ABI name, except where it appears that out-of-tree modules do not depend on that part of the ABI.
ja: 私達は、ユーザがツリー外のモジュールを頻繁にビルドする必要が無いよう、Debian 安定版や旧安定版に対するアップデートでは、カーネルの ABI を変更しません。最も重要なことは、ツリー外のモジュールが ABI のある部分に依存していないと思われる場合を除き、ABI 名を変更せずにそのような変更を行うことを避けるということです。

note: type: Content of: <chapter><section><section><para>
en: Bug fixes or configuration changes to the kernel may alter the ABI.  If an exported function is conditional on <symbol>CONFIG_<replaceable>FOO</replaceable></symbol>, or it uses a type whose definition depends on <symbol>CONFIG_<replaceable>FOO</replaceable></symbol>, then turning <symbol>CONFIG_<replaceable>FOO</replaceable></symbol> on or off changes the ABI of that function, and thus of the kernel as a whole.  Enabling or changing the configuration of a single driver usually doesn't change the ABI, because most drivers don't export anything.
ja: カーネルへのバグ修正や設定の変更は ABI の変更をともなう場合があります。もしエクスポートされた関数が <symbol>CONFIG_<replaceable>FOO</replaceable></symbol> を条件としているか、もしくは型定義が <symbol>CONFIG_<replaceable>FOO</replaceable></symbol> に依存するものを使用している場合、<symbol>CONFIG_<replaceable>FOO</replaceable></symbol> の有効無効によってその関数の ABI、ひいてはカーネル全体の ABI が変更になります。1 つのドライバの設定を有効化したり、変更したりする場合、たいてい ABI は変更しません。ほとんどのドライバは何もエクスポートしないからです。

note: type: Content of: <chapter><section><section><para>
en: The kernel build process generates a 'symbol version' for each exported function or variable.  This is a hash of the definitions that it depends on, and should change whenever the function's ABI changes.  The kernel module loader detects incompatible modules by comparing symbol versions.  The whole set of symbol versions represents the kernel ABI.
ja: カーネルのビルドプロセスによって 、それぞれのエクスポートされた関数や変数用に「シンボルバージョン」が生成されます。これは自身が依存している定義のハッシュで、関数の ABI が変更された場合は必ず変更しなければなりません。シンボルバージョンを比較することで、カーネルモジュールローダは非互換のモジュールを検出します。シンボルバージョンの完全なセットはカーネル ABI で表現されます。

note: type: Content of: <chapter><section><section><para>
en: We collect the symbol versions for previously uploaded packages under the directory <filename>debian/abi</filename> and then compare the new kernel with those.  If the ABI name is unchanged but the ABI itself is changed - except for additions, or changes that we have marked as acceptable - then the build is aborted.
ja: 私達は以前アップロードした<filename>debian/abi</filename>ディレクトリ以下のパッケージのシンボルバージョンを修正し、新しいカーネルのものと比較します。もし ABI 名が変更さないにも関わらず ABI そのものに変更がある場合は、ビルドを中止します。

note: type: Content of: <chapter><section><section><para>
en: If the kernel ABI has changed you must then change the ABI name in <filename>debian/config/defines</filename>.  Then run the command
ja: カーネル ABI が変更された場合は、<filename>debian/config/defines</filename> の ABI 名を変更しなければなりません。そして次のコマンドを実行します：

note: type: Content of: <chapter><section><section><para>
en: to regenerate the package definitions for this ABI name.
ja: このコマンドで ABI に対応したパッケージ定義を再生成することができます。

note: type: Content of: <chapter><title>
en: Debian kernel source
ja: Debian カーネルソース

note: type: Content of: <chapter><section><title>
en: Changes to the pristine kernel source
ja: 素のカーネルソースへの変更

note: type: Content of: <chapter><section><para>
en: The kernels in Debian are distributed in binary form, built from the Debian kernel source.  It is important to recognize that Debian kernel source may be (and in most cases is) different from the upstream (or "pristine") kernel source, distributed from <ulink url="https://www.kernel.org">www.kernel.org</ulink> and its mirrors.  Due to licensing restrictions, unclear license information, or failure to comply with the Debian Free Software Guidelines (DFSG), parts of the kernel are removed in order to distribute the source in the <literal>main</literal> section of the Debian archive.  Such removal produces <filename>linux_<replaceable>version</replaceable>.orig.tar.xz</filename> tarball, which serves as the original upstream source.  <replaceable>version</replaceable> is the actual upstream version.
ja: Debian のカーネルはバイナリ形式で配布されており、 Debian カーネルソースからビルドされます。Debian カーネルソースは （大抵の場合）<ulink url="https://www.kernel.org">www.kernel.org</ulink>とそのミラーで配布されているアップストリームの (または "素" の) カーネルソースとは異なる可能性があるということを認識しておきましょう。ライセンスの制約により、不明確なライセンス情報や Debian フリーソフトウェアガイドライン (DFSG) に合致しないカーネルのパーツは Debian アーカイブの <literal>main</literal> セクションから除外されます。この除外プロセスを経て <filename>linux_<replaceable>version</replaceable>.orig.tar.xz</filename> の tarball ができます。これはオリジナルのアップストリームソースとして提供されます。<replaceable>version</replaceable> は実際のアップストリームのバージョンです。

note: type: Content of: <chapter><section><para>
en: The guidelines for firmware removal were set by the <ulink url="https://www.debian.org/vote/2006/vote_007">Handling source-less firmware in the Linux kernel</ulink> General Resolution and the <ulink url="https://lists.debian.org/debian-kernel/2006/10/msg00541.html">position statement</ulink> by the release managers.  As of version 2.6.31-1, all known sourceless firmware has been removed from the Debian package, but much of it is included in the <ulink url="https://packages.debian.org/source/firmware-nonfree">firmware-nonfree</ulink> package.  Additional information about firmware licensing and removals may be found at the <ulink url="https://wiki.debian.org">Debian Wiki</ulink> page <ulink url="https://wiki.debian.org/KernelFirmwareLicensing">KernelFirmwareLicensing</ulink>.
ja: ファームウェアを除外するガイドラインが一般決議: <ulink url="https://www.debian.org/vote/2006/vote_007">"Linux Kernel のソースが無いファームウェアの扱いについて</ulink>  で採択され、 リリースマネージャによって <ulink url="http://lists.debian.org/debian-kernel/2006/10/msg00541.html">基本方針表明</ulink> が行われました。バージョン 2.6.31-1 以降、ソースが無いファームウェアは全て Debian パッケージから削除されましたが、多くは <ulink url="https://packages.debian.org/source/firmware-nonfree">firmware-nonfree</ulink> パッケージに収録されています。ファームウェアのライセンス情報と、削除に関連した追加の情報は <ulink url="https://wiki.debian.org">Debian Wiki</ulink> の <ulink url="http://wiki.debian.org/KernelFirmwareLicensing">KernelFirmwareLicensing</ulink> の項目を参照して下さい。

note: type: Content of: <chapter><section><title>
en: Debian kernel patches
ja: Debian カーネルパッチ

note: type: Content of: <chapter><section><para>
en: The source from which the Debian binary kernels are built is obtained by taking the source from <filename>linux_<replaceable>version</replaceable>.orig.tar.xz</filename> (that is, pristine kernel source with problematic parts removed) and applying a set of Debian patches.  These patches typically implement essential fixes for serious bugs and security holes.  The Debian version of the kernel packages has the form <replaceable>version</replaceable><literal>-</literal><replaceable>revision</replaceable> where <replaceable>version</replaceable> is the upstream version of the kernel (like 3.2.20) and <replaceable>revision</replaceable> determines the patchlevel.  For example, the packages with version 3.2.20-1 are built from the <filename>linux_3.2.20.orig.tar.xz</filename> source, patched up to patchlevel 1.  Certain packages include extra 'featuresets' not included in the upstream source, such as <literal>rt</literal>.
ja: Debian のバイナリ形式のカーネルをビルドするためのソースは<filename>linux_<replaceable>version</replaceable>.orig.tar.xz</filename>から入手したソース (このソースは問題のある箇所を除外した素のカーネルソースです) にDebian パッチを当てることで手に入ります。  これらのパッチは深刻なバグやセキュリティホールに対する必須の修正が実装されているものがほとんどです。Debian の カーネルパッケージは <replaceable>version</replaceable><literal>-</literal><replaceable>revision</replaceable> というフォーマットになっており、この<replaceable>version</replaceable>はアップストリームのカーネルバージョン (例えば 3.2.20等) を、<replaceable>revision</replaceable>はパッチレベルをあらわします。たとえば、3.2.20-1 というバージョンナンバは <filename>linux_3.2.20.orig.tar.xz</filename> のソースにパッチレベル 1 のパッチが当たっているという意味になります。特定のパッケージには、アップストリームのソースには入っていない <literal>rt</literal> のようなオプション機能が組込まれている場合があります。

note: type: Content of: <chapter><section><title>
en: Policy for patch acceptance
ja: パッチ受入れのポリシー

note: type: Content of: <chapter><section><para>
en: The general policy of the Debian kernel team is that a patch must either fix a bug or add hardware support, and must be based on a change already accepted by the upstream kernel maintainers.  The change does not need to have been included in an upstream release yet.  This policy allows the team to drop most patches when moving to a new upstream version, rather than having to maintain an increasing series of Debian-specific patches.  The recommended procedure for inclusion of patches introducing optional features is to submit to the upstream maintainer.
ja: Debian カーネルチームの基本となるポリシーは、パッチはバグを修正するものかハードウェアのサポートを追加するものでなければならないことと、アップストリームのカーネルメンテナによってすでに受入れられた変更にもとづいていなければならないことです。ただし、この変更はアップストリームのリリースに含まれている必要はありません。このポリシーにより、次のアップストリームバージョンへ移行する際に、増え続ける Debian 特有のパッチをメンテナンスし続けることなく、ほとんどのパッチを捨てることができます。オプション機能を提供するパッチを取込んでもらうためには、まずアップトリームのメンテナにパッチを投げてみましょう。

note: type: Content of: <chapter><title>
en: Common kernel-related tasks
ja: カーネル関連の一般的な作業手順

note: type: Content of: <chapter><section><title>
en: Obtaining the Debian kernel source
ja: Debian カーネルソースを取得する

note: type: Content of: <chapter><section><para>
en: To get the Debian kernel source at the current maximum patchlevel, it is sufficient to install the latest <package>linux-source-<replaceable>version</replaceable></package> package and unpack the source, for example:
ja: <package>linux-source-<replaceable>version</replaceable></package> パッケージをインストールしてソースを展開するだけで Debian のカーネルソースを最新のパッチレベルで取得することができます。例えば:

note: type: Content of: <chapter><section><para>
en: The unpacked source tree then will be available in <filename>linux-source-4.3</filename> directory.
ja: ソースツリーが<filename>linux-source-4.3</filename>ディレクトリに展開されます。

note: type: Content of: <chapter><section><title>
en: Rebuilding official Debian kernel packages
ja: 公式の Debian カーネルパッケージをリビルドする

note: type: Content of: <chapter><section><para>
en: You can build all or selected kernel packages by following these instructions.  You may be asked to do this in order to test a potential bug fix.
ja: 全ての、または任意のカーネルパッケージは、以下の手順でビルドできます。潜在的なバグの修正をテストするために、リビルドが必要になる場合があります。

note: type: Content of: <chapter><section><section><title>
en: Preparation
ja: 準備

note: type: Content of: <chapter><section><section><para>
en: Run the following commands:
ja: 次のコマンドを実行します:

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: This will install the packages required by the kernel build process.
ja: カーネルのビルド時に要求されるビルド依存がインストールされます。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: This will download and unpack the <package>linux</package> source package, making the tree available in the <filename>linux-<replaceable>version</replaceable></filename> directory.  As always, the revision part of the version of this package (for example, 1 in 3.2.19-1)  will determine its patchlevel with respect to the original upstream kernel source.
ja: <package>linux</package> ソースパッケージをダウンロードし、<filename>linux-<replaceable>version</replaceable></filename>ディレクトリにツリー展開します。このパッケージのバージョン名のリビジョンの部分 (例えば、3.2.19-1 の 1 にあたる部分) は、常にオリジナルのアップストリームカーネルに対するパッチレベルをあらわしています。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: Enter the source directory.
ja: ソースディレクトリに入ります。

note: type: Content of: <chapter><section><section><section><title>
en: Disk space requirements
ja: 必要なディスクの空きスペース

note: type: Content of: <chapter><section><section><section><para>
en: Building binary packages for a single kernel flavour with debug info enabled (currently true for the <literal>686-pae</literal>, <literal>amd64</literal>, <literal>rt-686-pae</literal>, <literal>rt-amd64</literal> and <literal>s390x</literal> configurations) requires up to 10 GB space in the package directory and 300 MB in <filename>/tmp</filename> (or <envar>$TMPDIR</envar>).
ja: 1 つのカーネルフレーバをデバッグ情報を有効にした状態でビルドするには (現在、<literal>686-pae</literal>、<literal>amd64</literal>、<literal>rt-686-pae</literal>、<literal>rt-amd64</literal>、<literal>s390x</literal> の設定で true になっています) パッケージディレクトリに最大で 10 GB 程度以上、<filename>/tmp</filename> (または <envar>$TMPDIR</envar>) に 300 MB 程度以上の空き容量が必要です。

note: type: Content of: <chapter><section><section><section><para>
en: Building with debug info disabled requires about 2 GB and 25 MB respectively.  You can disable debug info by changing the value of <literal>debug-info</literal> to <literal>false</literal> in <filename>debian/config/<replaceable>arch</replaceable>/defines</filename>.
ja: デバッグ情報を無効にした場合は、それぞれ約 2GB と 25 MB 以上必要です。デバッグ情報は <filename>debian/config/<replaceable>arch</replaceable>/defines</filename>の <literal>debug-info</literal>の値を<literal>false</literal>にすることで無効にできます。

note: type: Content of: <chapter><section><section><section><para>
en: Building all binary packages for i386 or amd64 currently requires about 20 GB space in the package directory.  Other architectures with no debug info or fewer drivers will require less space.
ja: i386 または amd64 のバイナリパッケージをビルドするには、今のところ約 20 GB の空き容量がパッケージディレクトリに必要です。デバッグ情報がなかったりドライバが少ない他のアーキテクチャに必要な空き容量はこれよりも少ないでしょう。

note: type: Content of: <chapter><section><section><title>
en: Simple patching and building
ja: 簡単なパッチ適用とビルド実行

note: type: Content of: <chapter><section><section><para>
en: The source package includes a script to simplify the process of building with extra patches.  You can use this by running commands such as:
ja: ソースパッケージには、追加のパッチを適用してビルドのプロセスを簡略化するためのスクリプトが含まれます。このスクリプトは次のコマンドで実行します：

note: type: Content of: <chapter><section><section><para>
en: This script has options to control the flavour, featureset, etc.  For a summary of the options, run:
ja: このスクリプトにはフレーバやフィーチャセットの制御が可能なオプションが指定できます。オプションの概要を見るには、次のコマンドを実行して下さい:

note: type: Content of: <chapter><section><section><para>
en: You may then need to build the linux-base package as well:
ja: 場合によっては、linux-base パッケージもビルドする必要があるかもしれません:

note: type: Content of: <chapter><section><section><para>
en: However, if you need to change the configuration or make other changes, you should not use this script and should follow the instructions below.
ja: もし設定を変えたり変更を加えたりする必要がある場合、このスクリプトは使用せずに、次に説明する手順に従ってください。

note: type: Content of: <chapter><section><section><title>
en: Applying patches or configuration changes
ja: パッチの適用や設定の変更

note: type: Content of: <chapter><section><section><para>
en: It is possible to apply extra patches to the source before starting the build.  In the <package>linux</package> source package, the default (non-featureset)  patches are automatically applied in the top level directory.
ja: ビルドを開始する前に追加のパッチをソースに適用することができます。<package>linux</package> ソースパッケージには、トップディレクトリにデフォルト (フィーチャセットが無い状態) のパッチが自動的に適用されます。

note: type: Content of: <chapter><section><section><para>
en: The patched source appears in the following directories.
ja: パッチを適用したソースは次のディレクトリに格納されます。

note: type: Content of: <chapter><section><section><variablelist><varlistentry><term>
en: default source:
ja: デフォルトのソース:

note: type: Content of: <chapter><section><section><variablelist><varlistentry><listitem><para>
en: top level
ja: 最上位の階層

note: type: Content of: <chapter><section><section><variablelist><varlistentry><term>
en: source with featureset:
ja: フィーチャセットを含むソース:

note: type: Content of: <chapter><section><section><para>
en: You should apply the extra patches in the appropriate directory.  In the <package>linux</package> source package you can use the <command>quilt</command> utility to do this.
ja: 追加のパッチは適切なディレクトリにそれぞれ適用してください。<package>linux</package> ソースパッケージでは、この作業に <command>quilt</command> を使用することができます。

note: type: Content of: <chapter><section><section><para>
en: To change the configuration before building, for example for the 686-pae flavour on i386, run the commands:
ja: 設定をビルドする前に変更するには、例えば i386 の 686-pae フレーバの場合は次のコマンドを実行します:

note: type: Content of: <chapter><section><section><para>
en: If the patches or configuration changes alter type definitions for the kernel, you may need to change the ABI name; see <xref linkend="s-abi-name"/>.
ja: パッチまたは変更した設定が、カーネルの型定義を変更する場合、 ABI 名を変更する必要があるかもしれません。<xref linkend="s-abi-name"/>を参照して下さい。

note: type: Content of: <chapter><section><section><title>
en: Building many packages
ja: パッケージを一度にビルドする

note: type: Content of: <chapter><section><section><para>
en: To build all possible packages for this architecture, run:
ja: 可能な全てのアーキテクチャ用にパッケージをビルドする場合は次のコマンドを実行して下さい:

note: type: Content of: <chapter><section><section><para>
en: To build all architecture-dependent packages, run:
ja: アーキテクチャ依存の全てのパッケージをビルドする場合は次のコマンドを実行して下さい:

note: type: Content of: <chapter><section><section><para>
en: To build all architecture-independent packages, run:
ja: 全てのアーキテクチャ非依存のパッケージをビルドする場合は次のコマンドを実行して下さい:

note: type: Content of: <chapter><section><section><title>
en: Building packages for one flavour
ja: 特定のフレーバのためにパッケージをビルドする

note: type: Content of: <chapter><section><section><para>
en: For example, to build only the binary packages for 686-pae flavour on i386 architecture, use the following commands:
ja: 例えば、 i386アーキテクチャで 686-pae フレーバだけのバイナリパッケージをビルドする場合は次のコマンドを実行して下さい:

note: type: Content of: <chapter><section><section><para>
en: The target in this command has the general form of <literal><replaceable>target</replaceable>_<replaceable>arch</replaceable>_<replaceable>featureset</replaceable>_<replaceable>flavour</replaceable></literal>.  Replace the <literal><replaceable>featureset</replaceable></literal> with <literal>none</literal> if you do not want any of the extra featuresets.  This command will build the linux image and kernel headers packages.  You may also need the <package>linux-headers-<replaceable>version</replaceable>-common</package> binary package, which can be built using the commands:
ja: このコマンドのターゲットは次の書式で汎化されています: <literal><replaceable>target</replaceable>_<replaceable>arch</replaceable>_<replaceable>featureset</replaceable>_<replaceable>real</replaceable></literal>フィーチャセットが不要な場合、<literal><replaceable>featureset</replaceable></literal> を <literal>none</literal> に置き換えます。このコマンドは linux イメージとカーネルヘッダパッケージをビルドします。場合によっては <package>linux-headers-<replaceable>version</replaceable>-common</package> バイナリパッケージも必要かもしれません。次のコマンドでビルドできます：

note: type: Content of: <chapter><section><section><para>
en: The target in this command has the general form of <literal><replaceable>target</replaceable>_<replaceable>arch</replaceable>_<replaceable>featureset</replaceable>_<replaceable>real</replaceable></literal>
ja: このコマンドのターゲットは次の書式で汎化されています: <literal><replaceable>target</replaceable>_<replaceable>arch</replaceable>_<replaceable>featureset</replaceable>_<replaceable>real</replaceable></literal>

note: type: Content of: <chapter><section><title>
en: Building a development version of the Debian kernel package
ja: Debian カーネルパッケージの開発用バージョンをビルドする

note: type: Content of: <chapter><section><para>
en: To build a kernel image based on the kernel team's unreleased development version:
ja: カーネルチームがまだリリースしていない開発バージョンのカーネルイメージをビルドするには、次のコマンドを実行します:

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: The last two commands will install the build dependencies required by the kernel build process.
ja: 最後の 2 つのコマンドはカーネルのビルドプロセス中に必要なビルド依存をインストールします。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This will check out the Debian packaging.  <replaceable>dist</replaceable> is normally the distribution codename such as <literal>wheezy</literal> or <literal>sid</literal> (unstable).  For the very latest version, usually based on an upstream release candidate, use <literal>master</literal>.  Note that this will download several hundred megabytes of data.
ja: Debian パッケージをチェックアウトします。<replaceable>dist</replaceable> には、<literal>wheezy</literal> や <literal>sid</literal> (unstable) などのディストリビューションのコードネームが入ります。アップストリームのリリース候補版をベースにした最新のバージョンを入手したい場合は<literal>trunk</literal>からチェックアウトして下さい。数百メガバイトのデータをダウンロードするのでご注意ください。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This will download the <package>linux</package> upstream source (and the last released Debian patches).  Depending on which version you are trying to build, you might need to override APT's version selection or download a tarball from <ulink url="https://people.debian.org">people.debian.org</ulink> instead.
ja: <package>linux</package> のアップストリームのソース (と最新の Debian パッチ) をダウンロードします。ビルドしようとしているバージョンによって APT のバージョン選択を上書きするか、かわりに<ulink url="https://people.debian.org">people.debian.org</ulink>から tarball をダウンロードする必要があります。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This unpacks the upstream source and merges it with the Debian packaging.
ja: アップストリームのソースを展開し、Debian のパッケージとマージします。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This generates a Debian package control file based on the current definitions of the various kernel flavours which can be built.
ja: 現在ビルドすることができる様々なカーネルフレーバの定義にもとづいて、Debian パッケージの control ファイルを生成します。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: Finally, build binary packages as explained in <xref linkend="s-common-official"/>.
ja: <xref linkend="s-common-official"/> で説明したバイナリパッケージをビルドします。

note: type: Content of: <chapter><section><title>
en: Generating orig tarball from newer upstream
ja: orig tarball をより新しいアップストリームの tarball からビルドする

note: type: Content of: <chapter><section><para>
en: First you must add a changelog entry for the new upstream version.  If the new version is a release candidate, change the string <literal>-rc</literal> to <literal>~rc</literal>.  (In Debian package versions, a suffix beginning with <literal>~</literal> indicates a pre-release.)
ja: まず、新しいアップストリームバージョンの変更履歴を追加します。新しいバージョンがリリース候補版なら、バージョン文字列の <literal>-rc</literal> を <literal>~rc</literal> に変更して下さい。(Debian のパッケージでは、サフィックス<literal>~</literal>がプレリリース用に使われています )

note: type: Content of: <chapter><section><para>
en: The 'orig' tarball is generated by the <command>genorig.py</command> script.  It takes either a tarball and optional patch from kernel.org, or a git repository.  First ensure you have the necessary tools installed:
ja: 'orig'  tarball は<command>genorig.py</command>スクリプトによって生成されます。このスクリプトは tarball、オプションのパッチ、または kernel.org の git リポジトリへのパスを引数にとります。まず、必要なツールがインストールされているか確認します：

note: type: Content of: <chapter><section><para>
en: Then if you have a tarball, run a command such as:
ja: tarball が手元にある場合は次のようなコマンドを実行します:

note: type: Content of: <chapter><section><para>
en: Or if you have a git repository, pass the name of its directory:
ja: git リポジトリが手元にある場合は、そのディレクトリ名を引数に渡します:

note: type: Content of: <chapter><section><para>
en: Either of these will generate a file such as <filename>../orig/linux_3.5~rc1.orig.tar.xz</filename>.  You can then combine this tarball with the Debian packaging by running:
ja: どちらを実行した場合も、<filename>../orig/linux_3.5~rc1.orig.tar.xz</filename> のようなファイルが生成されるでしょう。この tarball を次のコマンドで Debian パッケージに統合にします：

note: type: Content of: <chapter><section><title>
en: Building a custom kernel from Debian kernel source
ja: Debian カーネルソースからカスタムカーネルをビルドする

note: type: Content of: <chapter><section><para>
en: This section describes the simplest possible procedure to build a custom kernel the "Debian way".  It is assumed that user is somewhat familiar with kernel configuration and build process.  If that's not the case, it is recommended to consult the kernel documentation and many excellent online resources dedicated to it.
ja: このセクションでは "Debian way" でカスタムカーネルをビルドするための可能な限りシンプルな手順を紹介します。カーネルの設定やビルドプロセスにある程度の知識があることを前提とします。もし、そうでない場合はカーネルドキュメンテーションと素晴らしいオンラインのリソースに目を通しましょう。

note: type: Content of: <chapter><section><para>
en: The easiest way to build a custom kernel (the kernel with the configuration different from the one used in the official packages) from the Debian kernel source is to use the <package>linux-source</package> package and the <command>make bindeb-pkg</command> target.  First, prepare the kernel tree:
ja: Debian カーネルのソースからカスタムカーネル (オフィシャルパッケージで使われている設定とは違う設定のカーネル) をビルドするための最も簡単な方法は <package>linux-source</package> パッケージと <command>make bindeb-pkg</command> ターゲットを使うことです。まず、カーネルツリーを準備します：

note: type: Content of: <chapter><section><para>
en: The kernel now needs to be configured, that is you have to set the kernel options and select the drivers which are going to be included, either as built-in, or as external modules.  The kernel build infrastructure offers a number of targets, which invoke different configuration frontends.  For example, one can use console-based menu configuration by invoking the command
ja: 次に、カーネルの設定が必要になります。つまり、カーネルのオプションを設定しどのドライバを含めるか、ビルトインにするか外部モジュールにするか、などを決めなければなりません。カーネルのビルド機構は多くのターゲットに対応しており、異なる設定用フロントエンドを起動することができます。たとえばコンソールベースのメニュー形式の設定画面は、次のコマンドで起動でます：

note: type: Content of: <chapter><section><para>
en: Instead of <literal>nconfig</literal> one can use <literal>config</literal> (text-based line-by-line configuration frontend) or <literal>xconfig</literal> (graphical configuration frontend).  It is also possible to reuse your old configuration file by placing it as a <filename>.config</filename> file in the top-level directory and running one of the configuration targets (if you want to adjust something) or <command>make oldconfig</command> (to keep the same configuration).  Note that different frontends may require different additional libraries and utilities to be installed to function properly.  For example, the <literal>nconfig</literal> frontend requires the <literal>ncurses</literal> library, which at time of writing is provided by the <package>libncurses5-dev</package> package.
ja: <literal>nconfig</literal> のかわりに <literal>config</literal> (テキストベースの 1 行ずつ設定を行うフロントエンド) や、 <literal>xconfig</literal> (グラフィカルな設定フロントエンド) なども利用できます。古い設定ファイルは <filename>.config</filename> ファイルとしてトップディレクトリに配置し、設定するターゲットの起動コマンドを実行するか (なにかを設定し直す場合)、<command>make oldconfig</command> コマンドを実行する (設定を保持する場合) ことで再利用できます。フロントエンドによっては、正常に動作するためにライブラリやユーティリティをインストールする必要があるかもしれないことに注意して下さい。例えば、<literal>menuconfig</literal>フロントエンドは執筆時点では <package>libncurses5-dev</package> パッケージとして提供されている <literal>ncurses</literal> ライブラリが必要です。

note: type: Content of: <chapter><section><para>
en: The build will use less disk space if the <symbol>CONFIG_DEBUG_INFO</symbol> option is disabled (see <xref linkend="s-common-size"/>).  Debuginfo is only needed if you plan to use binary object tools like crash, kgdb, and SystemTap on the kernel.
ja: <symbol>CONFIG_DEBUG_INFO</symbol> オプションが無効化されている場合は (<xref linkend="s-common-size"/> 参照) ビルドに必要な空きディスクスペースは少なく済みます。デバッグ情報は、crash、kgbd、SystemTap のようなカーネル上のバイナリオブジェクトツールを使わない場合は不要です。

note: type: Content of: <chapter><section><para>
en: After the configuration process is finished, the new or updated kernel configuration will be stored in <filename>.config</filename> file in the top-level directory.  The build is started using the commands
ja: 設定プロセスの終了後、変更または新規に作成されたカーネルの設定は トップレベルディレクトリの <filename>.config</filename> ファイルとして保存されます。ビルドは次のコマンドで開始します：

note: type: Content of: <chapter><section><para>
en: As a result of the build, a custom kernel package <filename>linux-image-3.2.19_3.2.19-1_i386.deb</filename> (name will reflect the version of the kernel and build number) will be created in the directory one level above the top of the tree.  It may be installed using <command>dpkg</command> just as any other package:
ja: 生成されたカスタムカーネルパッケージ <filename>linux-image-3.2.19_3.2.19-1_i386.deb</filename> (ファイル名にはカーネルのバージョンとビルド番号が反映されます) がツリーのトップレベルの 1 つ上の階層に生成されます。このファイルは他のパッケージと同様に、 <command>dpkg</command> コマンドでインストールできます：

note: type: Content of: <chapter><section><para>
en: This command will unpack the kernel, generate the initrd if necessary (see <xref linkend="ch-initramfs"/> for details), and configure the bootloader to make the newly installed kernel the default one.  If this command completed without any problems, you can reboot using the
ja: このコマンドはカーネルを展開し、もし必要であれば initrd を生成し (詳細は <xref linkend="ch-initramfs"/> を参照)、 新規でインストールしたカーネルがデフォルトとなるようにブートローダを設定します。このコマンドが問題無く完了したら、

note: type: Content of: <chapter><section><para>
en: command to boot the new kernel.
ja: コマンドで再起動すると新しいカーネルで起動します。

note: type: Content of: <chapter><section><para>
en: For much more information about bootloaders and their configuration please check their documentation, which can be accessed using the commands <command>man lilo</command>, <command>man lilo.conf</command>, <command>man grub</command>, and so on.  You can also look for documentation in the <filename>/usr/share/doc/<replaceable>package</replaceable></filename> directories, with <replaceable>package</replaceable> being the name of the package involved.
ja: ブートローダとその設定方法に関しての詳細は <command>man lilo</command>、<command>man lilo.conf</command>、<command>man grub</command>、などのコマンドでそれぞれのドキュメントを参照してください。ドキュメントは <filename>/usr/share/doc/<replaceable>package</replaceable></filename> ディレクトリから探すこともできます。<replaceable>package</replaceable>には関連するパッケージ名を指定してください。

note: type: Content of: <chapter><section><title>
en: Building a custom kernel from the "pristine" kernel source
ja: 素のカーネルソースからカスタムカーネルをビルドする

note: type: Content of: <chapter><section><para>
en: Building a kernel from the "pristine" (also sometimes called "vanilla") kernel source, distributed from <ulink url="https://www.kernel.org">www.kernel.org</ulink> and its mirrors, may be occasionally useful for debugging or in the situations when a newer kernel version is desired.  The procedure differs only in obtaining the kernel source: instead of unpacking the kernel source from Debian packages, the "pristine" source is downloaded using your favourite browser or using wget, as follows:
ja: <ulink url="https://www.kernel.org">www.kernel.org</ulink>とそのミラーで配布されている 素 ("pristine" = 訳注: 原始の、汚されていない、の意) ("vanilla" と呼ばれることもあります) のカーネルソースからビルドすることは、デバッグやより新しいカーネルのバージョンが必要な場面で役に立ちます。その方法は、カーネルソースの入手方法のみが違います。Debian パッケージからカーネルソースを入手するかわりに、素のカーネルソースをブラウザでダウンロードしてくるか、wget で次のように取得します： follows:

note: type: Content of: <chapter><section><para>
en: The integrity of the downloaded archive may be verified by fetching the corresponding cryptographic signature
ja: アーカイブの整合性はそれぞれの暗号化シグネチャを検証することで確認できます。

note: type: Content of: <chapter><section><para>
en: and running this command (<package>gnupg</package> package must be installed):
ja: コマンドを実行し、次のコマンドを実行してください。(<package>gnupg</package> パッケージがインストールされていなければなりません)

note: type: Content of: <chapter><section><para>
en: Successful verification results in output similar to the one below:
ja: 検証に成功した場合、次に示すような出力を得ることができます。

note: type: Content of: <chapter><section><para>
en: After that the archive may be unpacked using
ja: 検証が済んだら、次のコマンドでアーカイブを展開しましょう。

note: type: Content of: <chapter><section><para>
en: The unpacked kernel tree (in <filename>linux-4.3</filename> now has to be configured.  The existing configuration file may be used as a starting point
ja: 展開されたカーネルツリー (<filename>linux-3.4</filename>ディレクトリ) の設定をする準備ができました。手始めに、すでにある設定ファイルを使うと良いでしょう。

note: type: Content of: <chapter><section><para>
en: After the configuration with one of the configuration frontends (invoked by <command>make oldconfig</command>, <command>make config</command>, <command>make nconfig</command>, etc) is completed, the build may be started using <command>make bindeb-pkg</command> target as described above.
ja: 設定フロントエンドのどれかを使い (<command>make oldconfig</command>、<command>make config</command>、<command>make nconfig</command>、などで起動します) 設定が完了したら、すでに説明した <command>make bindeb-pkg</command> ターゲットを使い、ビルドを開始できます。

note: type: Content of: <chapter><section><title>
en: Building out-of-tree kernel modules
ja: ツリーの外にあるカーネルモジュールをビルドする

note: type: Content of: <chapter><section><para>
en: Some kernel modules are not included in the upstream or Debian kernel source, but are provided as third-party source packages.  For some of the most popular out-of-tree modules, the binary Debian packages with modules built against the stock Debian kernels are provided.  For example, if you are running stock Debian kernel <literal>3.2.0-2-686-pae</literal> (use the <command>uname -r</command> command to verify the version) from the <package>linux-image-3.2.0-2-686-pae</package> package, and would like to use the squash filesystem, all you need to do is install <package>squashfs-modules-3.2.0-2-686-pae</package> binary package, which provides the necessary binary kernel modules.
ja: カーネルモジュールのなかには、アップストリームや Debian カーネルソースには含まれずに、サードパーティのソースパッケージとして提供されているものがあります。ツリー外のカーネルモジュールの中でも特に有名なものは、Debian カーネル用にビルドしたモジュールの、バイナリの Debian パッケージが提供されている場合があります。例えば <package>linux-image-3.2.0-2-686-pae</package> パッケージからインストールした、Debian カーネル <literal>3.2.0-2-686-pae</literal> を使っていて (<command>uname -r</command> コマンドでバージョンの確認ができます) squashファイルシステムを使いたくなった場合は、そのために必要なバイナリのカーネルモジュールを提供している <package>squashfs-modules-3.2.0-2-686-pae</package> パッケージをインストールするだけで利用可能になります。

note: type: Content of: <chapter><section><para>
en: If you are not so lucky, and there are no binary module packages in the archive, there is a fair chance that the Debian archive contains the packaged <replaceable role="strong">source</replaceable> for the kernel modules.  Names of such packages typically end in <literal>-source</literal>, for example <package>squashfs-source</package>, <package>thinkpad-source</package>, <package>rt2x00-source</package> and many others.  These packages contain debianized source code of the kernel modules, suitable for building using the <command>module-assistant</command> (or <command>m-a</command>) script from the <package>module-assistant</package> package.  Typical sequence to build a custom binary module package, matching a kernel <literal>3.2.0-2-686-pae</literal> (as returned by <command>uname -r</command>)  from the debianized source consists of the following steps:
ja: 残念ながら使いたいモジュールのバイナリパッケージがアーカイブにない場合でも、 カーネルモジュールの<replaceable role="strong">ソース</replaceable>パッケージが Debian アーカイブにある可能性もあります。 パッケージ名の最後に <literal>-source</literal> とついているパッケージは、このようなパッケージの典型例です。例えば<package>squashfs-source</package>、<package>thinkpad-source</package>、<package>rt2x00-source</package>などがありますが、他にも多数あります。これらのパッケージには、 Debian 化したカーネルモジュールのソースコードが含まれています。ビルドには <package>module-assistant</package> パッケージの<command>module-assistant</command> (または <package>m-a</package>) スクリプトを使うと便利です。Debian 化したソースからカーネル <literal>3.2.0-2-686-pae</literal> (<command>uname -r</command>コマンドの返答値) 用のカスタムバイナリモジュールパッケージをビルドする場合の大まかな流れを説明します。

note: type: Content of: <chapter><section><para>
en: Install a set of kernel headers, matching the kernel for which the modules are going to be built:
ja: まず、ビルドしたいモジュールに適切なカーネルヘッダをインストールします。

note: type: Content of: <chapter><section><para>
en: Install the package containing the source:
ja: ソースを含んでいるパッケージをインストールします。

note: type: Content of: <chapter><section><para>
en: Invoke <command>module-assistant</command> (aka <command>m-a</command>) to do the heavy lifting:
ja: <command>module-assistant</command> (または <command>m-a</command>) を実行し、ビルドをします。

note: type: Content of: <chapter><section><para>
en: As a result, a Debian package is going to be built and placed in <filename>/usr/src</filename>.  It can be installed the usual way, using <command>dpkg -i</command>.  Two last steps (building and installation) may be combined using the invocation
ja: その結果、Debian パッケージがビルドされ、<filename>/usr/src</filename> に配置されます。いつも通り <command>dpkg -i</command> でインストールすることもできます。最後の 2 つのステップ (ビルドとインストール) は次のコマンドで 1 つにまとめることもできます：

note: type: Content of: <chapter><section><para>
en: Check out the <command>module-assistant</command> documentation (<command>man module-assistant</command>) for other options and much more information on how to use it.
ja: で 1 つにまとめることもできます。その他のオプションと使い方について、もっと詳しく知りたい場合は、<command>module-assistant</command> のドキュメント (<command>man module-assistant</command>) を参照してください。

note: type: Content of: <chapter><section><para>
en: Finally, in some rare circumstances, you might need to build the kernel modules from the upstream source packages.  In that case, follow the documentation included with the package to build the modules.  If the build process will require you to specify the directory with the kernel headers, matching the currently running kernel, for stock Debian kernels this directory is <filename>/usr/src/linux-headers-<replaceable>uname</replaceable></filename>, provided by the <package>linux-headers-<replaceable>uname</replaceable></package> package.  Here <replaceable>uname</replaceable> is the output of the <command>uname -r</command> command.  If you are building and running your own custom kernels, it is a good idea to keep the original build tree around, as it also can be used for out-of-tree module building.
ja: とても稀なケースではありますが、カーネルモジュールのパッケージをアップストリームのソースからビルドする必要があるかもしれません。その場合、モジュールをビルドするためのパッケージに付属しているドキュメントの指示に従って下さい。もしビルドプロセスの途中で現在使用中のカーネルに合わせたカーネルヘッダを含むディレクトリを指定しなければならない場合、Debian の 素のカーネルのディレクトリは <filename>/usr/src/linux-headers-<replaceable>uname</replaceable></filename> で、<package>linux-headers-<replaceable>uname</replaceable></package> パッケージによって提供されます。ここでの <replaceable>uname</replaceable> は <command>uname -r</command> コマンドの出力結果です。もし独自でカスタマイズしたカーネルを使っている場合は、オリジナルのビルドツリーを手元に置いておくと良いでしょう。ビルドツリー外にあるモジュールをビルドする際にも役立ちます。

note: type: Content of: <chapter><title>
en: About this handbook
ja: このハンドブックについて

note: type: Content of: <chapter><section><title>
en: Scope
ja: 扱う範囲

note: type: Content of: <chapter><section><para>
en: The main goal of this handbook is to serve as a single access point to all kernel-related documentation.  It contains the information about the Debian packaging of Linux kernel for Debian 7 (wheezy), 8 (jessie), and 9 (stretch, under development).  The latest released version is always available from <ulink url="https://kernel-team.pages.debian.net/kernel-handbook/">https://kernel-team.pages.debian.net/kernel-handbook/</ulink>.  Note that this is a work in progress, and some information is inaccurate.
ja: このハンドブックの主な目標は、カーネル関係の全ドキュメントに対する唯一のポインタとなることです。この文書には、Debian 7(wheezy)、8(jessie)、9(開発中のstretch) の Linux カーネルパッケージの作り方に関する情報が含まれています。最新のリリースバージョンは常に <ulink url="https://kernel-team.pages.debian.net/kernel-handbook">https://kernel-team.pages.debian.net/kernel-handbook/</ulink> から入手できます。本書はまだ作業段階のものであり、ここに書かれていることが必ずしも正しいとは限りません。

note: type: Content of: <chapter><section><para>
en: Some of the commands mentioned in the text must be executed with superuser privileges, either by becoming the <literal>root</literal> user or by using <command>sudo</command>.  To distinguish between commands which may be executed by an unprivileged user and those requiring superuser privileges, commands are prepended by <prompt>$</prompt> or <prompt>#</prompt> respectively.  This symbol is not a part of the command.
ja: 本書で説明するコマンドの実行にはスーパーユーザ権限が必要です。<literal>root</literal> ユーザになるか <command>sudo</command> コマンドを使いましょう。非特権ユーザでも実行可能なコマンドは <prompt>$</prompt> を、特権ユーザ権限を必要とするコマンドは <prompt>#</prompt> を、それぞれのコマンドの前に付記して区別します。これらの記号はコマンドの一部ではありません。

note: type: Content of: <chapter><section><title>
en: Authors and Contributors
ja: 著者と貢献者達

note: type: Content of: <chapter><section><para>
en: This handbook is maintained within the <ulink url="https://salsa.debian.org/kernel-team/kernel-handbook">kernel-handbook</ulink> project on <ulink url="https://salsa.debian.org">Salsa</ulink>.  The SGML source of the book may be checked out from the Debian <ulink url="https://salsa.debian.org/kernel-team/kernel-handbook.git">git repository</ulink>.  It is intended as a community project, thus all proposals for improvements and contributions are welcome.  The preferred way to submit a contribution is to send it to the <email>debian-kernel@lists.debian.org</email> mailing list.  When submitting a contribution please clearly identify its copyright holder and include the licensing statement.  Note that to be accepted the contribution must be licensed under the same license as the rest of the document, namely GPL version 2 or later.  Below is the list of current contributors:
ja: このハンドブックは<ulink url="https://salsa.debian.org">Salsa</ulink>上の <ulink url="https://salsa.debian.org/kernel-team/kernel-handbook">kernel-handbook</ulink> でメンテナンスされています。SGML ファイルのソースは Debian <ulink url="https://salsa.debian.org/kernel-team/kernel-handbook.git">git リポジトリ</ulink>からチェックアウトできます。このプロジェクトはコミュニティ・プロジェクトです。改善のための提案と協力は全て歓迎します。協力いただける場合は、<email>debian-kernel@lists.debian.org</email> のメーリングリスト宛に連絡して下さい。寄稿をする場合は著作権保持者を明示しライセンスの宣言文を一緒に送って下さい。寄稿を本書に取り入れるためには他の文書と同じライセンスを宣言しなければなりません。具体的には、GPL version 2 or later になります。以下は現在の貢献者の一覧です。(敬称略)

note: type: Content of: <chapter><title>
en: Debian kernel packages
ja: Debian カーネルパッケージ

note: type: Content of: <chapter><section><title>
en: Source package
ja: ソースパッケージ

note: type: Content of: <chapter><section><para>
en: To ensure that the latest kernel version, containing all the essential bug and security fixes is available on as many architectures as possible, starting with 2.6.12 the kernel team introduced a new packaging scheme.  In it most of the kernel-related binary packages are built from a single source package <package>linux</package>.  The <package>linux</package> source package supports building of kernel images and headers for all currently supported architectures.  Subsequent sections of this chapter document the naming and contents of the binary packages built from the <package>linux</package> source package.
ja: バグやセキュリティフィックス等、必須の修正が入った最新のカーネルバージョンが可能な限り全てのアーキテクチャで利用可能であることを担保するために、カーネルチームは 2.6.12 から新しいパッケージング方法を採用しています。 新しい方法では、ほぼ全てのカーネル関連のバイナリパッケージは、<package>linux</package>という唯一のソースパッケージからビルドされます。<package>linux</package> ソースパッケージは、現在サポートしている全てのアーキテクチャに対するカーネルイメージとカーネルヘッダのビルドを支援します。この章の次のセクションからは、<package>linux</package> ソースパッケージからビルドされるバイナリパッケージの命名規則とその内容について説明します。

note: type: Content of: <chapter><section><title>
en: Architecture-independent packages
ja: アーキテクチャ非依存パッケージ

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains the Debian kernel source tarball.  The patchlevel of the source is determined by the Debian revision of the package, for example the version 4.2.5-1 of the package <package>linux-source-4.2</package> contains the version 4.2.5 of the Debian kernel source patched to patchlevel 1.  Once the package is installed, the source tarball is available at <filename>/usr/src/linux-source-<replaceable>version</replaceable>.tar.xz</filename>.
ja: このパッケージには Debian カーネルソースの tarball が含まれています。ソースのパッチレベルは、パッケージの Debian リビジョンによって決定されます。例えば、4.2.5-1 というバージョンの <package>linux-source-4.2</package> パッケージは、 パッチレベル 1 のパッチが適用されたバージョン 4.2.5 の Debian カーネルソースを含んでいます。パッケージがインストールされると、tarball 化されたソースが <filename>/usr/src/linux-source-<replaceable>version</replaceable>.tar.xz</filename> に配置され利用可能になります。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains the manual pages for the functions, constituting the kernel API.  These pages are installed into <filename>/usr/share/man/man9/</filename>, and are accessible with the standard <command>man</command> command.  Due to filename conflicts, only one <package>linux-manual</package> package may be installed at any given time.
ja: このパッケージにはカーネルの API を含めた関数へのマニュアルページが含まれています。これらは、<filename>/usr/share/man/man9/</filename> にインストールされ、 標準の <command>man</command> コマンドで参照できます。ファイル名が衝突してしまうため、インストール可能な <package>linux-manual</package> パッケージは どれか 1 つに限定されます。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains the rest of the kernel documentation in various formats.  It is installed in <filename>/usr/share/doc/linux-doc-<replaceable>version</replaceable></filename>.
ja: このパッケージは、上記以外のカーネル関連のドキュメントを様々なフォーマットで収録しています。<filename>/usr/share/doc/linux-doc-<replaceable>version</replaceable></filename> にインストールされます。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains the support files for building of out-of-tree modules for given version and abiname.
ja: このパッケージは、パッケージ名の version と abiname のツリー用にモジュールをビルドするための支援ファイルが含まれています。

note: type: Content of: <chapter><section><title>
en: Architecture-dependent packages
ja: アーキテクチャ依存パッケージ

note: type: Content of: <chapter><section><para>
en: The kind of hardware the particular kernel package is designed for is uniquely identified by the <emphasis>architecture</emphasis>, <emphasis>featureset</emphasis>, and <emphasis>flavour</emphasis>.  Kernels for all architectures are built from the same Debian kernel source tree, which is obtained using the procedure described in <xref linkend="ch-source"/>.  Each architecture usually has multiple flavours of the binary kernel images.  Different flavours correspond to different kernel configuration files, used to build the binary images from the <emphasis role="strong">same</emphasis> kernel tree.
ja: あるカーネルパッケージを特定のハードウェア向けにデザインしたものは、<emphasis>アーキテクチャ</emphasis>、<emphasis>フィーチャセット</emphasis>、 <emphasis>フレーバ</emphasis>で、一意に識別されます。全てのアーキテクチャ向けのカーネルは、<xref linkend="ch-source"/> で説明されている手順で取得した、同一の Debian カーネルソースツリーからビルドされます。それぞれのアーキテクチャには普通、複数のフレーバのバイナリカーネルイメージがあります。異なるフレーバは<emphasis role="strong">同一の</emphasis>カーネルツリーからビルドされますが、バイナリイメージをビルドする際に使用されるカーネルの設定ファイルが異なります。

note: type: Content of: <chapter><section><para>
en: In order to build a working kernel with an extra featureset not provided by the upstream source, additional changes to the Debian kernel source are required.  Again, multiple flavours of binary images may be built from the featureset tree.  For example, the <literal>i386</literal> architecture has a number of different flavours, such as <literal>486</literal>, <literal>686-pae</literal> and <literal>amd64</literal>, built from the common Debian kernel source.  It also contains the <literal>rt</literal> featureset.  The source tree for building the kernels for each of these featuresets is obtained by applying additional patches to the Debian kernel source.  It may be used to build the <literal>rt-686-pae</literal> binary image flavours.  The names of the Debian binary packages incorporate the name of the flavour and, if necessary, the name of the featureset (there is no need to worry about the name of the architecture, since Debian tools will only allow installation of the packages with "correct" architecture).  If the arch does not have any featuresets, the featureset part is omitted from the name, as indicated by the square brackets below.
ja: アップストリームで提供されていない追加のフィーチャセットが動作するカーネルをビルドするには、Debian カーネルソースに追加の設定をする必要があります。この場合もやはり、複数のフレーバのバイナリイメージがフィーチャセットのツリーからビルドできます。例えば <literal>i386</literal> アーキテクチャには、共通の Debian カーネルソースからビルドされた<literal>486</literal>、<literal>686-pae</literal>、 <literal>amd64</literal>などの複数の異なるフレーバがあります。また、<literal>rt</literal> フィーチャセットも含んでいます。これらのフィーチャセットが動作するカーネルをビルドするためのソースツリーは、Debian カーネルソースに追加のパッチを当てることで取得できます。このソースツリーは例えば <literal>rt-686-pae</literal> バイナリイメージフレーバをビルドするのに使われます。Debian バイナリパッケージの名前にはフレーバと、必要であればフィーチャセットの名前が含まれています。 (アーキテクチャ名については気にする必要がありません。Debian tools は "正しい” アーキテクチャのパッケージしかインストールを許可しないからです。）もしアーキテクチャに何もフィーチャセットが無い場合は、以下の説明にある、角かっこ( [ ] )内のフィーチャセットの部分が名前から省略されます。

note: type: Content of: <chapter><section><para>
en: Package names also include the <emphasis>abiname</emphasis>, a small integer, which identifies the kernel's binary compatibility level.  The kernels with different abinames are binary incompatible, so upgrading to a kernel with a different abiname will most likely require recompilation of third-party binary modules against the new kernel.  The list of architecture-dependent packages together with a short description is given below.
ja: パッケージ名には <emphasis>abiname</emphasis> が含まれます。これは、カーネルのバイナリ互換レベルを識別するための小さな整数です。abiname が異なるカーネルにはバイナリ互換性がありません。異なる abiname のカーネルにアップグレードする場合、サードパーティ製のバイナリモジュールを新しいカーネル用にコンパイルし直さなければならない可能性が高くなります。アーキテクチャ依存のパッケージのリストと簡単な説明を以下に示します。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains a common set of kernel headers for a particular featureset (or arch, if featureset is empty).  Together with the flavour-specific <package>linux-headers</package> package it provides a full set of kernel headers, suitable for building of out-of-tree modules.  This package should not normally be installed directly, but only as a dependency of the flavour-specific headers package (see next description).  It unpacks into the <filename>/usr/src/linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>-common[-<replaceable>featureset</replaceable>]</filename> directory.
ja: このパッケージは、特定のフィーチャセット (もしフィーチャセットが空の場合はアーキテクチャ） のための共通のカーネルヘッダが含まれています。フレーバ固有の <package>linux-headers</package> パッケージと合わせることでカーネルヘッダのフルセットとなるため、ツリーの外のモジュールのビルドに最適です。このパッケージは通常の場合直接インストールができないパッケージで、あるフレーバ固有のヘッダパッケージの依存パッケージとしてのみインストールできます。（次の説明を読んで下さい。）<filename>/usr/src/linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>-common[-<replaceable>featureset</replaceable>]</filename> ディレクトリに配置されます。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package provides flavour-specific header files.  It depends on the corresponding <package>linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>-common[-<replaceable>featureset</replaceable>]</package> package, and sets up symbolic links into its directory tree in such a way that the directory <filename>/usr/src/linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>[-<replaceable>featureset</replaceable>]-<replaceable>flavour</replaceable></filename> appears to contain a full set of headers, required for building of out-of-tree kernel modules.  For more information on this check out <xref linkend="s-common-out-of-tree"/>.  A complete set of kernel headers matching the currently running official kernel may be installed with a command
ja: このパッケージはフレーバ固有のヘッダファイルを提供します。これは対応する <package>linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>-common[-<replaceable>featureset</replaceable>]</package> パッケージに依存しており、シンボリックリンクをディレクトリツリー中に設定します。そうすることで、<filename>/usr/src/linux-headers-<replaceable>version</replaceable>-<replaceable>abiname</replaceable>[-<replaceable>featureset</replaceable>]-<replaceable>flavour</replaceable></filename> がツリー外のモジュールをビルドするために必要なフルセットのヘッダーを持っているように見えます。さらに詳しく知りたい場合は、<xref linkend="s-common-out-of-tree"/> を参照して下さい。現在実行中の公式カーネルに対応したカーネルヘッダの完全なセットは次のコマンドでインストールすることができます:

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: These virtual packages provide (via dependencies) the latest binary image and matching set of header files (respectively) for a particular flavour.  Example: <package>linux-image-rt-686-pae</package>
ja: これらの仮想パッケージは (依存関係を経由して)、 特定のフレーバ用の最新のバイナリイメージとそれに対応する (それぞれの) ヘッダファイルを提供します。例: <package>linux-image-rt-686-pae</package>

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package contains the binary kernel image and pre-built binary modules for a particular arch/featureset/flavour combination.  Names of the files installed by this package are architecture-dependent.  Typical locations of essential files for the <literal>i386</literal> architecture are:
ja: このパッケージには、特定の アーキテクチャ/フィーチャセット/フレーバ を組み合わせたバイナリ の kernel イメージとビルド済みのバイナリモジュールが含まれています。このパッケージによってインストールされたファイルの名前は、アーキテクチャに依存します。<literal>i386</literal> アーキテクチャに必須のファイルは、典型的に以下のディレクトリに配置されています：

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><variablelist><varlistentry><listitem><para>
en: The binary (compressed) kernel image.
ja: バイナリ (圧縮された) kernel イメージです。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><variablelist><varlistentry><listitem><para>
en: Initial RAM filesystem (initramfs) image.  Note, that this file is automatically generated in the installation process and is <emphasis role="strong">not</emphasis> shipped as a part of the package.  See <xref linkend="ch-initramfs"/> for more details.
ja: 初期 RAM ファイルシステム (initramfs) イメージです。このファイルはインストール中に自動的に生成されたものです。パッケージの一部として提供されているものでは<emphasis role="strong">ない</emphasis>ことに注意して下さい。 詳細は <xref linkend="ch-initramfs"/> を参照して下さい。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><variablelist><varlistentry><listitem><para>
en: The kernel configuration file used to build this particular kernel.  May be used to rebuild the kernel from source, if necessary.
ja: この特定のカーネルをビルドするために使用されるカーネルの設定ファイルです。必要であれば、カーネルをソースから再構築するために利用できます。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><variablelist><varlistentry><listitem><para>
en: Directory containing the pre-built binary kernel modules.
ja: ディレクトリには、ビルド済みのバイナリカーネルモジュールが含まれています。

note: type: Content of: <chapter><section><variablelist><varlistentry><listitem><para>
en: This package provides Linux kernel headers for use by userspace programs, such as GNU glibc and other system libraries.
ja: このパッケージは GNU glibc や、その他のシステムライブラリなどのユーザ空間プログラムによって使用される Linux カーネルヘッダを提供します。
