Commit 840f6690 authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by Jonathan Corbet

Documentation/Changes: convert it to ReST markup

- Fix chapter identation inconsistencies;
- Convert table to ReST format;
- use the right tag for bullets;
- Fix bold emphasis;
- mark blocks with :: tags;
- use verbatim font for files;
- make Sphinx happy
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
Signed-off-by: default avatarJonathan Corbet <corbet@lwn.net>
parent 330ae7e9
Minimal requerements to compile the Kernel
++++++++++++++++++++++++++++++++++++++++++
Intro Intro
===== =====
...@@ -10,9 +13,9 @@ Axel Boldt, Alessandro Sigala, and countless other users all over the ...@@ -10,9 +13,9 @@ Axel Boldt, Alessandro Sigala, and countless other users all over the
'net). 'net).
Current Minimal Requirements Current Minimal Requirements
============================ ****************************
Upgrade to at *least* these software revisions before thinking you've Upgrade to at **least** these software revisions before thinking you've
encountered a bug! If you're unsure what version you're currently encountered a bug! If you're unsure what version you're currently
running, the suggested command should tell you. running, the suggested command should tell you.
...@@ -21,34 +24,38 @@ running a Linux kernel. Also, not all tools are necessary on all ...@@ -21,34 +24,38 @@ running a Linux kernel. Also, not all tools are necessary on all
systems; obviously, if you don't have any ISDN hardware, for example, systems; obviously, if you don't have any ISDN hardware, for example,
you probably needn't concern yourself with isdn4k-utils. you probably needn't concern yourself with isdn4k-utils.
o GNU C 3.2 # gcc --version ====================== =============== ========================================
o GNU make 3.80 # make --version Program Minimal version Command to check the version
o binutils 2.12 # ld -v ====================== =============== ========================================
o util-linux 2.10o # fdformat --version GNU C 3.2 gcc --version
o module-init-tools 0.9.10 # depmod -V GNU make 3.80 make --version
o e2fsprogs 1.41.4 # e2fsck -V binutils 2.12 ld -v
o jfsutils 1.1.3 # fsck.jfs -V util-linux 2.10o fdformat --version
o reiserfsprogs 3.6.3 # reiserfsck -V module-init-tools 0.9.10 depmod -V
o xfsprogs 2.6.0 # xfs_db -V e2fsprogs 1.41.4 e2fsck -V
o squashfs-tools 4.0 # mksquashfs -version jfsutils 1.1.3 fsck.jfs -V
o btrfs-progs 0.18 # btrfsck reiserfsprogs 3.6.3 reiserfsck -V
o pcmciautils 004 # pccardctl -V xfsprogs 2.6.0 xfs_db -V
o quota-tools 3.09 # quota -V squashfs-tools 4.0 mksquashfs -version
o PPP 2.4.0 # pppd --version btrfs-progs 0.18 btrfsck
o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep version pcmciautils 004 pccardctl -V
o nfs-utils 1.0.5 # showmount --version quota-tools 3.09 quota -V
o procps 3.2.0 # ps --version PPP 2.4.0 pppd --version
o oprofile 0.9 # oprofiled --version isdn4k-utils 3.1pre1 isdnctrl 2>&1|grep version
o udev 081 # udevd --version nfs-utils 1.0.5 showmount --version
o grub 0.93 # grub --version || grub-install --version procps 3.2.0 ps --version
o mcelog 0.6 # mcelog --version oprofile 0.9 oprofiled --version
o iptables 1.4.2 # iptables -V udev 081 udevd --version
o openssl & libcrypto 1.0.0 # openssl version grub 0.93 grub --version || grub-install --version
o bc 1.06.95 # bc --version mcelog 0.6 mcelog --version
iptables 1.4.2 iptables -V
openssl & libcrypto 1.0.0 openssl version
bc 1.06.95 bc --version
====================== =============== ========================================
Kernel compilation Kernel compilation
================== ******************
GCC GCC
--- ---
...@@ -64,16 +71,16 @@ You will need GNU make 3.80 or later to build the kernel. ...@@ -64,16 +71,16 @@ You will need GNU make 3.80 or later to build the kernel.
Binutils Binutils
-------- --------
Linux on IA-32 has recently switched from using as86 to using gas for Linux on IA-32 has recently switched from using ``as86`` to using ``gas`` for
assembling the 16-bit boot code, removing the need for as86 to compile assembling the 16-bit boot code, removing the need for ``as86`` to compile
your kernel. This change does, however, mean that you need a recent your kernel. This change does, however, mean that you need a recent
release of binutils. release of binutils.
Perl Perl
---- ----
You will need perl 5 and the following modules: Getopt::Long, Getopt::Std, You will need perl 5 and the following modules: ``Getopt::Long``,
File::Basename, and File::Find to build the kernel. ``Getopt::Std``, ``File::Basename``, and ``File::Find`` to build the kernel.
BC BC
-- --
...@@ -93,7 +100,7 @@ and higher. ...@@ -93,7 +100,7 @@ and higher.
System utilities System utilities
================ ****************
Architectural changes Architectural changes
--------------------- ---------------------
...@@ -115,7 +122,7 @@ well as the desired DocBook stylesheets. ...@@ -115,7 +122,7 @@ well as the desired DocBook stylesheets.
Util-linux Util-linux
---------- ----------
New versions of util-linux provide *fdisk support for larger disks, New versions of util-linux provide ``fdisk`` support for larger disks,
support new options to mount, recognize more supported partition support new options to mount, recognize more supported partition
types, have a fdformat which works with 2.4 kernels, and similar goodies. types, have a fdformat which works with 2.4 kernels, and similar goodies.
You'll probably want to upgrade. You'll probably want to upgrade.
...@@ -125,54 +132,57 @@ Ksymoops ...@@ -125,54 +132,57 @@ Ksymoops
If the unthinkable happens and your kernel oopses, you may need the If the unthinkable happens and your kernel oopses, you may need the
ksymoops tool to decode it, but in most cases you don't. ksymoops tool to decode it, but in most cases you don't.
It is generally preferred to build the kernel with CONFIG_KALLSYMS so It is generally preferred to build the kernel with ``CONFIG_KALLSYMS`` so
that it produces readable dumps that can be used as-is (this also that it produces readable dumps that can be used as-is (this also
produces better output than ksymoops). If for some reason your kernel produces better output than ksymoops). If for some reason your kernel
is not build with CONFIG_KALLSYMS and you have no way to rebuild and is not build with ``CONFIG_KALLSYMS`` and you have no way to rebuild and
reproduce the Oops with that option, then you can still decode that Oops reproduce the Oops with that option, then you can still decode that Oops
with ksymoops. with ksymoops.
Module-Init-Tools Module-Init-Tools
----------------- -----------------
A new module loader is now in the kernel that requires module-init-tools A new module loader is now in the kernel that requires ``module-init-tools``
to use. It is backward compatible with the 2.4.x series kernels. to use. It is backward compatible with the 2.4.x series kernels.
Mkinitrd Mkinitrd
-------- --------
These changes to the /lib/modules file tree layout also require that These changes to the ``/lib/modules`` file tree layout also require that
mkinitrd be upgraded. mkinitrd be upgraded.
E2fsprogs E2fsprogs
--------- ---------
The latest version of e2fsprogs fixes several bugs in fsck and The latest version of ``e2fsprogs`` fixes several bugs in fsck and
debugfs. Obviously, it's a good idea to upgrade. debugfs. Obviously, it's a good idea to upgrade.
JFSutils JFSutils
-------- --------
The jfsutils package contains the utilities for the file system. The ``jfsutils`` package contains the utilities for the file system.
The following utilities are available: The following utilities are available:
o fsck.jfs - initiate replay of the transaction log, and check
- ``fsck.jfs`` - initiate replay of the transaction log, and check
and repair a JFS formatted partition. and repair a JFS formatted partition.
o mkfs.jfs - create a JFS formatted partition.
o other file system utilities are also available in this package. - ``mkfs.jfs`` - create a JFS formatted partition.
- other file system utilities are also available in this package.
Reiserfsprogs Reiserfsprogs
------------- -------------
The reiserfsprogs package should be used for reiserfs-3.6.x The reiserfsprogs package should be used for reiserfs-3.6.x
(Linux kernels 2.4.x). It is a combined package and contains working (Linux kernels 2.4.x). It is a combined package and contains working
versions of mkreiserfs, resize_reiserfs, debugreiserfs and versions of ``mkreiserfs``, ``resize_reiserfs``, ``debugreiserfs`` and
reiserfsck. These utils work on both i386 and alpha platforms. ``reiserfsck``. These utils work on both i386 and alpha platforms.
Xfsprogs Xfsprogs
-------- --------
The latest version of xfsprogs contains mkfs.xfs, xfs_db, and the The latest version of ``xfsprogs`` contains ``mkfs.xfs``, ``xfs_db``, and the
xfs_repair utilities, among others, for the XFS filesystem. It is ``xfs_repair`` utilities, among others, for the XFS filesystem. It is
architecture independent and any version from 2.0.0 onward should architecture independent and any version from 2.0.0 onward should
work correctly with this version of the XFS kernel code (2.6.0 or work correctly with this version of the XFS kernel code (2.6.0 or
later is recommended, due to some significant improvements). later is recommended, due to some significant improvements).
...@@ -180,7 +190,7 @@ later is recommended, due to some significant improvements). ...@@ -180,7 +190,7 @@ later is recommended, due to some significant improvements).
PCMCIAutils PCMCIAutils
----------- -----------
PCMCIAutils replaces pcmcia-cs. It properly sets up PCMCIAutils replaces ``pcmcia-cs``. It properly sets up
PCMCIA sockets at system startup and loads the appropriate modules PCMCIA sockets at system startup and loads the appropriate modules
for 16-bit PCMCIA devices if the kernel is modularized and the hotplug for 16-bit PCMCIA devices if the kernel is modularized and the hotplug
subsystem is used. subsystem is used.
...@@ -200,17 +210,20 @@ A driver has been added to allow updating of Intel IA32 microcode, ...@@ -200,17 +210,20 @@ A driver has been added to allow updating of Intel IA32 microcode,
accessible as a normal (misc) character device. If you are not using accessible as a normal (misc) character device. If you are not using
udev you may need to: udev you may need to:
mkdir /dev/cpu ::
mknod /dev/cpu/microcode c 10 184
chmod 0644 /dev/cpu/microcode mkdir /dev/cpu
mknod /dev/cpu/microcode c 10 184
chmod 0644 /dev/cpu/microcode
as root before you can use this. You'll probably also want to as root before you can use this. You'll probably also want to
get the user-space microcode_ctl utility to use with this. get the user-space microcode_ctl utility to use with this.
udev udev
---- ----
udev is a userspace application for populating /dev dynamically with
only entries for devices actually present. udev replaces the basic ``udev`` is a userspace application for populating ``/dev`` dynamically with
only entries for devices actually present. ``udev`` replaces the basic
functionality of devfs, while allowing persistent device naming for functionality of devfs, while allowing persistent device naming for
devices. devices.
...@@ -218,10 +231,10 @@ FUSE ...@@ -218,10 +231,10 @@ FUSE
---- ----
Needs libfuse 2.4.0 or later. Absolute minimum is 2.3.0 but mount Needs libfuse 2.4.0 or later. Absolute minimum is 2.3.0 but mount
options 'direct_io' and 'kernel_cache' won't work. options ``direct_io`` and ``kernel_cache`` won't work.
Networking Networking
========== **********
General changes General changes
--------------- ---------------
...@@ -245,7 +258,9 @@ upgrade pppd to at least 2.4.0. ...@@ -245,7 +258,9 @@ upgrade pppd to at least 2.4.0.
If you are not using udev, you must have the device file /dev/ppp If you are not using udev, you must have the device file /dev/ppp
which can be made by: which can be made by:
mknod /dev/ppp c 108 0 ::
mknod /dev/ppp c 108 0
as root. as root.
...@@ -260,23 +275,25 @@ NFS-utils ...@@ -260,23 +275,25 @@ NFS-utils
In ancient (2.4 and earlier) kernels, the nfs server needed to know In ancient (2.4 and earlier) kernels, the nfs server needed to know
about any client that expected to be able to access files via NFS. This about any client that expected to be able to access files via NFS. This
information would be given to the kernel by "mountd" when the client information would be given to the kernel by ``mountd`` when the client
mounted the filesystem, or by "exportfs" at system startup. exportfs mounted the filesystem, or by ``exportfs`` at system startup. exportfs
would take information about active clients from /var/lib/nfs/rmtab. would take information about active clients from ``/var/lib/nfs/rmtab``.
This approach is quite fragile as it depends on rmtab being correct This approach is quite fragile as it depends on rmtab being correct
which is not always easy, particularly when trying to implement which is not always easy, particularly when trying to implement
fail-over. Even when the system is working well, rmtab suffers from fail-over. Even when the system is working well, ``rmtab`` suffers from
getting lots of old entries that never get removed. getting lots of old entries that never get removed.
With modern kernels we have the option of having the kernel tell mountd With modern kernels we have the option of having the kernel tell mountd
when it gets a request from an unknown host, and mountd can give when it gets a request from an unknown host, and mountd can give
appropriate export information to the kernel. This removes the appropriate export information to the kernel. This removes the
dependency on rmtab and means that the kernel only needs to know about dependency on ``rmtab`` and means that the kernel only needs to know about
currently active clients. currently active clients.
To enable this new functionality, you need to: To enable this new functionality, you need to:
::
mount -t nfsd nfsd /proc/fs/nfsd mount -t nfsd nfsd /proc/fs/nfsd
before running exportfs or mountd. It is recommended that all NFS before running exportfs or mountd. It is recommended that all NFS
...@@ -287,8 +304,8 @@ mcelog ...@@ -287,8 +304,8 @@ mcelog
------ ------
On x86 kernels the mcelog utility is needed to process and log machine check On x86 kernels the mcelog utility is needed to process and log machine check
events when CONFIG_X86_MCE is enabled. Machine check events are errors reported events when ``CONFIG_X86_MCE`` is enabled. Machine check events are errors
by the CPU. Processing them is strongly encouraged. reported by the CPU. Processing them is strongly encouraged.
Getting updated software Getting updated software
======================== ========================
...@@ -298,114 +315,141 @@ Kernel compilation ...@@ -298,114 +315,141 @@ Kernel compilation
gcc gcc
--- ---
o <ftp://ftp.gnu.org/gnu/gcc/>
- <ftp://ftp.gnu.org/gnu/gcc/>
Make Make
---- ----
o <ftp://ftp.gnu.org/gnu/make/>
- <ftp://ftp.gnu.org/gnu/make/>
Binutils Binutils
-------- --------
o <ftp://ftp.kernel.org/pub/linux/devel/binutils/>
- <ftp://ftp.kernel.org/pub/linux/devel/binutils/>
OpenSSL OpenSSL
------- -------
o <https://www.openssl.org/>
- <https://www.openssl.org/>
System utilities System utilities
**************** ****************
Util-linux Util-linux
---------- ----------
o <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>
- <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>
Ksymoops Ksymoops
-------- --------
o <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/>
- <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/>
Module-Init-Tools Module-Init-Tools
----------------- -----------------
o <ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/>
- <ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/>
Mkinitrd Mkinitrd
-------- --------
o <https://code.launchpad.net/initrd-tools/main>
- <https://code.launchpad.net/initrd-tools/main>
E2fsprogs E2fsprogs
--------- ---------
o <http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.29.tar.gz>
- <http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.29.tar.gz>
JFSutils JFSutils
-------- --------
o <http://jfs.sourceforge.net/>
- <http://jfs.sourceforge.net/>
Reiserfsprogs Reiserfsprogs
------------- -------------
o <http://www.kernel.org/pub/linux/utils/fs/reiserfs/>
- <http://www.kernel.org/pub/linux/utils/fs/reiserfs/>
Xfsprogs Xfsprogs
-------- --------
o <ftp://oss.sgi.com/projects/xfs/>
- <ftp://oss.sgi.com/projects/xfs/>
Pcmciautils Pcmciautils
----------- -----------
o <ftp://ftp.kernel.org/pub/linux/utils/kernel/pcmcia/>
- <ftp://ftp.kernel.org/pub/linux/utils/kernel/pcmcia/>
Quota-tools Quota-tools
---------- -----------
o <http://sourceforge.net/projects/linuxquota/>
- <http://sourceforge.net/projects/linuxquota/>
DocBook Stylesheets DocBook Stylesheets
------------------- -------------------
o <http://sourceforge.net/projects/docbook/files/docbook-dsssl/>
- <http://sourceforge.net/projects/docbook/files/docbook-dsssl/>
XMLTO XSLT Frontend XMLTO XSLT Frontend
------------------- -------------------
o <http://cyberelk.net/tim/xmlto/>
- <http://cyberelk.net/tim/xmlto/>
Intel P6 microcode Intel P6 microcode
------------------ ------------------
o <https://downloadcenter.intel.com/>
- <https://downloadcenter.intel.com/>
udev udev
---- ----
o <http://www.freedesktop.org/software/systemd/man/udev.html>
- <http://www.freedesktop.org/software/systemd/man/udev.html>
FUSE FUSE
---- ----
o <http://sourceforge.net/projects/fuse>
- <http://sourceforge.net/projects/fuse>
mcelog mcelog
------ ------
o <http://www.mcelog.org/>
- <http://www.mcelog.org/>
Networking Networking
********** **********
PPP PPP
--- ---
o <ftp://ftp.samba.org/pub/ppp/>
- <ftp://ftp.samba.org/pub/ppp/>
Isdn4k-utils Isdn4k-utils
------------ ------------
o <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/>
- <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/>
NFS-utils NFS-utils
--------- ---------
o <http://sourceforge.net/project/showfiles.php?group_id=14>
- <http://sourceforge.net/project/showfiles.php?group_id=14>
Iptables Iptables
-------- --------
o <http://www.iptables.org/downloads.html>
- <http://www.iptables.org/downloads.html>
Ip-route2 Ip-route2
--------- ---------
o <https://www.kernel.org/pub/linux/utils/net/iproute2/>
- <https://www.kernel.org/pub/linux/utils/net/iproute2/>
OProfile OProfile
-------- --------
o <http://oprofile.sf.net/download/>
- <http://oprofile.sf.net/download/>
NFS-Utils NFS-Utils
--------- ---------
o <http://nfs.sourceforge.net/>
- <http://nfs.sourceforge.net/>
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment