4 This document is designed to provide a list of the minimum levels of
5 software necessary to run the 2.6 kernels, as well as provide brief
6 instructions regarding any other "Gotchas" users may encounter when
7 trying life on the Bleeding Edge. If upgrading from a pre-2.4.x
8 kernel, please consult the Changes file included with 2.4.x kernels for
9 additional information; most of that information will not be repeated
10 here. Basically, this document assumes that your system is already
11 functional and running at least 2.4.x kernels.
13 This document is originally based on my "Changes" file for 2.0.x kernels
14 and therefore owes credit to the same people as that file (Jared Mauch,
15 Axel Boldt, Alessandro Sigala, and countless other users all over the
18 The latest revision of this document, in various formats, can always
19 be found at <http://cyberbuzz.gatech.edu/kaboom/linux/Changes-2.4/>.
21 Feel free to translate this document. If you do so, please send me a
22 URL to your translation for inclusion in future revisions of this
25 Smotrite file <http://oblom.rnc.ru/linux/kernel/Changes.ru>, yavlyaushisya
26 russkim perevodom dannogo documenta.
28 Visite <http://www2.adi.uam.es/~ender/tecnico/> para obtener la traducción
29 al español de este documento en varios formatos.
31 Eine deutsche Version dieser Datei finden Sie unter
32 <http://www.stefan-winter.de/Changes-2.4.0.txt>.
34 Chris Ricker (kaboom@gatech.edu or chris.ricker@genetics.utah.edu).
36 Current Minimal Requirements
37 ============================
39 Upgrade to at *least* these software revisions before thinking you've
40 encountered a bug! If you're unsure what version you're currently
41 running, the suggested command should tell you.
43 Again, keep in mind that this list assumes you are already
44 functionally running a Linux 2.4 kernel. Also, not all tools are
45 necessary on all systems; obviously, if you don't have any ISDN
46 hardware, for example, you probably needn't concern yourself with
49 o Gnu C 3.2 # gcc --version
50 o Gnu make 3.79.1 # make --version
51 o binutils 2.12 # ld -v
52 o util-linux 2.10o # fdformat --version
53 o module-init-tools 0.9.10 # depmod -V
54 o e2fsprogs 1.29 # tune2fs
55 o jfsutils 1.1.3 # fsck.jfs -V
56 o reiserfsprogs 3.6.3 # reiserfsck -V 2>&1|grep reiserfsprogs
57 o xfsprogs 2.6.0 # xfs_db -V
59 o pcmcia-cs 3.1.21 # cardmgr -V
60 o quota-tools 3.09 # quota -V
61 o PPP 2.4.0 # pppd --version
62 o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep version
63 o nfs-utils 1.0.5 # showmount --version
64 o procps 3.2.0 # ps --version
65 o oprofile 0.9 # oprofiled --version
66 o udev 071 # udevinfo -V
74 The gcc version requirements may vary depending on the type of CPU in your
80 You will need Gnu make 3.79.1 or later to build the kernel.
85 Linux on IA-32 has recently switched from using as86 to using gas for
86 assembling the 16-bit boot code, removing the need for as86 to compile
87 your kernel. This change does, however, mean that you need a recent
96 DevFS has been obsoleted in favour of udev
97 (http://www.kernel.org/pub/linux/utils/kernel/hotplug/)
99 32-bit UID support is now in place. Have fun!
101 Linux documentation for functions is transitioning to inline
102 documentation via specially-formatted comments near their
103 definitions in the source. These comments can be combined with the
104 SGML templates in the Documentation/DocBook directory to make DocBook
105 files, which can then be converted by DocBook stylesheets to PostScript,
106 HTML, PDF files, and several other formats. In order to convert from
107 DocBook format to a format of your choice, you'll need to install Jade as
108 well as the desired DocBook stylesheets.
113 New versions of util-linux provide *fdisk support for larger disks,
114 support new options to mount, recognize more supported partition
115 types, have a fdformat which works with 2.4 kernels, and similar goodies.
116 You'll probably want to upgrade.
121 If the unthinkable happens and your kernel oopses, you may need the
122 ksymoops tool to decode it, but in most cases you don't.
123 In the 2.6 kernel it is generally preferred to build the kernel with
124 CONFIG_KALLSYMS so that it produces readable dumps that can be used as-is
125 (this also produces better output than ksymoops).
126 If for some reason your kernel is not build with CONFIG_KALLSYMS and
127 you have no way to rebuild and reproduce the Oops with that option, then
128 you can still decode that Oops with ksymoops.
133 A new module loader is now in the kernel that requires module-init-tools
134 to use. It is backward compatible with the 2.4.x series kernels.
139 These changes to the /lib/modules file tree layout also require that
140 mkinitrd be upgraded.
145 The latest version of e2fsprogs fixes several bugs in fsck and
146 debugfs. Obviously, it's a good idea to upgrade.
151 The jfsutils package contains the utilities for the file system.
152 The following utilities are available:
153 o fsck.jfs - initiate replay of the transaction log, and check
154 and repair a JFS formatted partition.
155 o mkfs.jfs - create a JFS formatted partition.
156 o other file system utilities are also available in this package.
161 The reiserfsprogs package should be used for reiserfs-3.6.x
162 (Linux kernels 2.4.x). It is a combined package and contains working
163 versions of mkreiserfs, resize_reiserfs, debugreiserfs and
164 reiserfsck. These utils work on both i386 and alpha platforms.
169 The latest version of xfsprogs contains mkfs.xfs, xfs_db, and the
170 xfs_repair utilities, among others, for the XFS filesystem. It is
171 architecture independent and any version from 2.0.0 onward should
172 work correctly with this version of the XFS kernel code (2.6.0 or
173 later is recommended, due to some significant improvements).
178 PCMCIAutils replaces pcmcia-cs (see below). It properly sets up
179 PCMCIA sockets at system startup and loads the appropriate modules
180 for 16-bit PCMCIA devices if the kernel is modularized and the hotplug
186 PCMCIA (PC Card) support is now partially implemented in the main
187 kernel source. The "pcmciautils" package (see above) replaces pcmcia-cs
193 Support for 32 bit uid's and gid's is required if you want to use
194 the newer version 2 quota format. Quota-tools version 3.07 and
195 newer has this support. Use the recommended version or newer
196 from the table above.
201 A driver has been added to allow updating of Intel IA32 microcode,
202 accessible as both a devfs regular file and as a normal (misc)
203 character device. If you are not using devfs you may need to:
206 mknod /dev/cpu/microcode c 10 184
207 chmod 0644 /dev/cpu/microcode
209 as root before you can use this. You'll probably also want to
210 get the user-space microcode_ctl utility to use with this.
215 If you are running v0.1.17 or earlier, you should upgrade to
216 version v0.99.0 or higher. Running old versions may cause problems
217 with programs using shared memory.
221 udev is a userspace application for populating /dev dynamically with
222 only entries for devices actually present. udev replaces devfs.
227 Needs libfuse 2.4.0 or later. Absolute minimum is 2.3.0 but mount
228 options 'direct_io' and 'kernel_cache' won't work.
236 If you have advanced network configuration needs, you should probably
237 consider using the network tools from ip-route2.
241 The packet filtering and NAT code uses the same tools like the previous 2.4.x
242 kernel series (iptables). It still includes backwards-compatibility modules
243 for 2.2.x-style ipchains and 2.0.x-style ipfwadm.
248 The PPP driver has been restructured to support multilink and to
249 enable it to operate over diverse media layers. If you use PPP,
250 upgrade pppd to at least 2.4.0.
252 If you are not using devfs, you must have the device file /dev/ppp
253 which can be made by:
255 mknod /dev/ppp c 108 0
259 If you use devfsd and build ppp support as modules, you will need
260 the following in your /etc/devfsd.conf file:
267 Due to changes in the length of the phone number field, isdn4k-utils
268 needs to be recompiled or (preferably) upgraded.
273 In 2.4 and earlier kernels, the nfs server needed to know about any
274 client that expected to be able to access files via NFS. This
275 information would be given to the kernel by "mountd" when the client
276 mounted the filesystem, or by "exportfs" at system startup. exportfs
277 would take information about active clients from /var/lib/nfs/rmtab.
279 This approach is quite fragile as it depends on rmtab being correct
280 which is not always easy, particularly when trying to implement
281 fail-over. Even when the system is working well, rmtab suffers from
282 getting lots of old entries that never get removed.
284 With 2.6 we have the option of having the kernel tell mountd when it
285 gets a request from an unknown host, and mountd can give appropriate
286 export information to the kernel. This removes the dependency on
287 rmtab and means that the kernel only needs to know about currently
290 To enable this new functionality, you need to:
292 mount -t nfsd nfsd /proc/fs/nfs
294 before running exportfs or mountd. It is recommended that all NFS
295 services be protected from the internet-at-large by a firewall where
298 Getting updated software
299 ========================
306 o <ftp://ftp.gnu.org/gnu/gcc/>
310 o <ftp://ftp.gnu.org/gnu/make/>
314 o <ftp://ftp.kernel.org/pub/linux/devel/binutils/>
321 o <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>
325 o <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/>
329 o <ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/>
333 o <ftp://rawhide.redhat.com/pub/rawhide/SRPMS/SRPMS/>
337 o <http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.29.tar.gz>
341 o <http://jfs.sourceforge.net/>
345 o <http://www.namesys.com/pub/reiserfsprogs/reiserfsprogs-3.6.3.tar.gz>
349 o <ftp://oss.sgi.com/projects/xfs/download/>
353 o <ftp://ftp.kernel.org/pub/linux/utils/kernel/pcmcia/>
357 o <http://pcmcia-cs.sourceforge.net/>
361 o <http://sourceforge.net/projects/linuxquota/>
365 o <http://nwalsh.com/docbook/dsssl/>
369 o <http://cyberelk.net/tim/xmlto/>
373 o <http://www.urbanmyth.org/microcode/>
377 o <http://powertweak.sourceforge.net/>
381 o <http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html>
385 o <http://sourceforge.net/projects/fuse>
392 o <ftp://ftp.samba.org/pub/ppp/ppp-2.4.0.tar.gz>
396 o <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/isdn4k-utils.v3.1pre1.tar.gz>
400 o <http://sourceforge.net/project/showfiles.php?group_id=14>
404 o <http://www.iptables.org/downloads.html>
408 o <ftp://ftp.tux.org/pub/net/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz>
412 o <http://oprofile.sf.net/download/>
416 o <http://nfs.sourceforge.net/>