Root/Documentation/Changes

1Intro
2=====
3
4This document is designed to provide a list of the minimum levels of
5software necessary to run the 2.6 kernels, as well as provide brief
6instructions regarding any other "Gotchas" users may encounter when
7trying life on the Bleeding Edge. If upgrading from a pre-2.4.x
8kernel, please consult the Changes file included with 2.4.x kernels for
9additional information; most of that information will not be repeated
10here. Basically, this document assumes that your system is already
11functional and running at least 2.4.x kernels.
12
13This document is originally based on my "Changes" file for 2.0.x kernels
14and therefore owes credit to the same people as that file (Jared Mauch,
15Axel Boldt, Alessandro Sigala, and countless other users all over the
16'net).
17
18Current Minimal Requirements
19============================
20
21Upgrade to at *least* these software revisions before thinking you've
22encountered a bug! If you're unsure what version you're currently
23running, the suggested command should tell you.
24
25Again, keep in mind that this list assumes you are already
26functionally running a Linux 2.4 kernel. Also, not all tools are
27necessary on all systems; obviously, if you don't have any ISDN
28hardware, for example, you probably needn't concern yourself with
29isdn4k-utils.
30
31o Gnu C 3.2 # gcc --version
32o Gnu make 3.80 # make --version
33o binutils 2.12 # ld -v
34o util-linux 2.10o # fdformat --version
35o module-init-tools 0.9.10 # depmod -V
36o e2fsprogs 1.41.4 # e2fsck -V
37o jfsutils 1.1.3 # fsck.jfs -V
38o reiserfsprogs 3.6.3 # reiserfsck -V 2>&1|grep reiserfsprogs
39o xfsprogs 2.6.0 # xfs_db -V
40o squashfs-tools 4.0 # mksquashfs -version
41o btrfs-progs 0.18 # btrfsck
42o pcmciautils 004 # pccardctl -V
43o quota-tools 3.09 # quota -V
44o PPP 2.4.0 # pppd --version
45o isdn4k-utils 3.1pre1 # isdnctrl 2>&1|grep version
46o nfs-utils 1.0.5 # showmount --version
47o procps 3.2.0 # ps --version
48o oprofile 0.9 # oprofiled --version
49o udev 081 # udevinfo -V
50o grub 0.93 # grub --version
51o mcelog 0.6
52o iptables 1.4.2 # iptables -V
53
54
55Kernel compilation
56==================
57
58GCC
59---
60
61The gcc version requirements may vary depending on the type of CPU in your
62computer.
63
64Make
65----
66
67You will need Gnu make 3.80 or later to build the kernel.
68
69Binutils
70--------
71
72Linux on IA-32 has recently switched from using as86 to using gas for
73assembling the 16-bit boot code, removing the need for as86 to compile
74your kernel. This change does, however, mean that you need a recent
75release of binutils.
76
77Perl
78----
79
80You will need perl 5 and the following modules: Getopt::Long, Getopt::Std,
81File::Basename, and File::Find to build the kernel.
82
83
84System utilities
85================
86
87Architectural changes
88---------------------
89
90DevFS has been obsoleted in favour of udev
91(http://www.kernel.org/pub/linux/utils/kernel/hotplug/)
92
9332-bit UID support is now in place. Have fun!
94
95Linux documentation for functions is transitioning to inline
96documentation via specially-formatted comments near their
97definitions in the source. These comments can be combined with the
98SGML templates in the Documentation/DocBook directory to make DocBook
99files, which can then be converted by DocBook stylesheets to PostScript,
100HTML, PDF files, and several other formats. In order to convert from
101DocBook format to a format of your choice, you'll need to install Jade as
102well as the desired DocBook stylesheets.
103
104Util-linux
105----------
106
107New versions of util-linux provide *fdisk support for larger disks,
108support new options to mount, recognize more supported partition
109types, have a fdformat which works with 2.4 kernels, and similar goodies.
110You'll probably want to upgrade.
111
112Ksymoops
113--------
114
115If the unthinkable happens and your kernel oopses, you may need the
116ksymoops tool to decode it, but in most cases you don't.
117In the 2.6 kernel it is generally preferred to build the kernel with
118CONFIG_KALLSYMS so that it produces readable dumps that can be used as-is
119(this also produces better output than ksymoops).
120If for some reason your kernel is not build with CONFIG_KALLSYMS and
121you have no way to rebuild and reproduce the Oops with that option, then
122you can still decode that Oops with ksymoops.
123
124Module-Init-Tools
125-----------------
126
127A new module loader is now in the kernel that requires module-init-tools
128to use. It is backward compatible with the 2.4.x series kernels.
129
130Mkinitrd
131--------
132
133These changes to the /lib/modules file tree layout also require that
134mkinitrd be upgraded.
135
136E2fsprogs
137---------
138
139The latest version of e2fsprogs fixes several bugs in fsck and
140debugfs. Obviously, it's a good idea to upgrade.
141
142JFSutils
143--------
144
145The jfsutils package contains the utilities for the file system.
146The following utilities are available:
147o fsck.jfs - initiate replay of the transaction log, and check
148  and repair a JFS formatted partition.
149o mkfs.jfs - create a JFS formatted partition.
150o other file system utilities are also available in this package.
151
152Reiserfsprogs
153-------------
154
155The reiserfsprogs package should be used for reiserfs-3.6.x
156(Linux kernels 2.4.x). It is a combined package and contains working
157versions of mkreiserfs, resize_reiserfs, debugreiserfs and
158reiserfsck. These utils work on both i386 and alpha platforms.
159
160Xfsprogs
161--------
162
163The latest version of xfsprogs contains mkfs.xfs, xfs_db, and the
164xfs_repair utilities, among others, for the XFS filesystem. It is
165architecture independent and any version from 2.0.0 onward should
166work correctly with this version of the XFS kernel code (2.6.0 or
167later is recommended, due to some significant improvements).
168
169PCMCIAutils
170-----------
171
172PCMCIAutils replaces pcmcia-cs (see below). It properly sets up
173PCMCIA sockets at system startup and loads the appropriate modules
174for 16-bit PCMCIA devices if the kernel is modularized and the hotplug
175subsystem is used.
176
177Pcmcia-cs
178---------
179
180PCMCIA (PC Card) support is now partially implemented in the main
181kernel source. The "pcmciautils" package (see above) replaces pcmcia-cs
182for newest kernels.
183
184Quota-tools
185-----------
186
187Support for 32 bit uid's and gid's is required if you want to use
188the newer version 2 quota format. Quota-tools version 3.07 and
189newer has this support. Use the recommended version or newer
190from the table above.
191
192Intel IA32 microcode
193--------------------
194
195A driver has been added to allow updating of Intel IA32 microcode,
196accessible as a normal (misc) character device. If you are not using
197udev you may need to:
198
199mkdir /dev/cpu
200mknod /dev/cpu/microcode c 10 184
201chmod 0644 /dev/cpu/microcode
202
203as root before you can use this. You'll probably also want to
204get the user-space microcode_ctl utility to use with this.
205
206Powertweak
207----------
208
209If you are running v0.1.17 or earlier, you should upgrade to
210version v0.99.0 or higher. Running old versions may cause problems
211with programs using shared memory.
212
213udev
214----
215udev is a userspace application for populating /dev dynamically with
216only entries for devices actually present. udev replaces the basic
217functionality of devfs, while allowing persistent device naming for
218devices.
219
220FUSE
221----
222
223Needs libfuse 2.4.0 or later. Absolute minimum is 2.3.0 but mount
224options 'direct_io' and 'kernel_cache' won't work.
225
226Networking
227==========
228
229General changes
230---------------
231
232If you have advanced network configuration needs, you should probably
233consider using the network tools from ip-route2.
234
235Packet Filter / NAT
236-------------------
237The packet filtering and NAT code uses the same tools like the previous 2.4.x
238kernel series (iptables). It still includes backwards-compatibility modules
239for 2.2.x-style ipchains and 2.0.x-style ipfwadm.
240
241PPP
242---
243
244The PPP driver has been restructured to support multilink and to
245enable it to operate over diverse media layers. If you use PPP,
246upgrade pppd to at least 2.4.0.
247
248If you are not using udev, you must have the device file /dev/ppp
249which can be made by:
250
251mknod /dev/ppp c 108 0
252
253as root.
254
255Isdn4k-utils
256------------
257
258Due to changes in the length of the phone number field, isdn4k-utils
259needs to be recompiled or (preferably) upgraded.
260
261NFS-utils
262---------
263
264In 2.4 and earlier kernels, the nfs server needed to know about any
265client that expected to be able to access files via NFS. This
266information would be given to the kernel by "mountd" when the client
267mounted the filesystem, or by "exportfs" at system startup. exportfs
268would take information about active clients from /var/lib/nfs/rmtab.
269
270This approach is quite fragile as it depends on rmtab being correct
271which is not always easy, particularly when trying to implement
272fail-over. Even when the system is working well, rmtab suffers from
273getting lots of old entries that never get removed.
274
275With 2.6 we have the option of having the kernel tell mountd when it
276gets a request from an unknown host, and mountd can give appropriate
277export information to the kernel. This removes the dependency on
278rmtab and means that the kernel only needs to know about currently
279active clients.
280
281To enable this new functionality, you need to:
282
283  mount -t nfsd nfsd /proc/fs/nfsd
284
285before running exportfs or mountd. It is recommended that all NFS
286services be protected from the internet-at-large by a firewall where
287that is possible.
288
289mcelog
290------
291
292In Linux 2.6.31+ the i386 kernel needs to run the mcelog utility
293as a regular cronjob similar to the x86-64 kernel to process and log
294machine check events when CONFIG_X86_NEW_MCE is enabled. Machine check
295events are errors reported by the CPU. Processing them is strongly encouraged.
296All x86-64 kernels since 2.6.4 require the mcelog utility to
297process machine checks.
298
299Getting updated software
300========================
301
302Kernel compilation
303******************
304
305gcc
306---
307o <ftp://ftp.gnu.org/gnu/gcc/>
308
309Make
310----
311o <ftp://ftp.gnu.org/gnu/make/>
312
313Binutils
314--------
315o <ftp://ftp.kernel.org/pub/linux/devel/binutils/>
316
317System utilities
318****************
319
320Util-linux
321----------
322o <ftp://ftp.kernel.org/pub/linux/utils/util-linux/>
323
324Ksymoops
325--------
326o <ftp://ftp.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/>
327
328Module-Init-Tools
329-----------------
330o <ftp://ftp.kernel.org/pub/linux/kernel/people/rusty/modules/>
331
332Mkinitrd
333--------
334o <https://code.launchpad.net/initrd-tools/main>
335
336E2fsprogs
337---------
338o <http://prdownloads.sourceforge.net/e2fsprogs/e2fsprogs-1.29.tar.gz>
339
340JFSutils
341--------
342o <http://jfs.sourceforge.net/>
343
344Reiserfsprogs
345-------------
346o <http://www.kernel.org/pub/linux/utils/fs/reiserfs/>
347
348Xfsprogs
349--------
350o <ftp://oss.sgi.com/projects/xfs/>
351
352Pcmciautils
353-----------
354o <ftp://ftp.kernel.org/pub/linux/utils/kernel/pcmcia/>
355
356Pcmcia-cs
357---------
358o <http://pcmcia-cs.sourceforge.net/>
359
360Quota-tools
361----------
362o <http://sourceforge.net/projects/linuxquota/>
363
364DocBook Stylesheets
365-------------------
366o <http://nwalsh.com/docbook/dsssl/>
367
368XMLTO XSLT Frontend
369-------------------
370o <http://cyberelk.net/tim/xmlto/>
371
372Intel P6 microcode
373------------------
374o <http://www.urbanmyth.org/microcode/>
375
376Powertweak
377----------
378o <http://powertweak.sourceforge.net/>
379
380udev
381----
382o <http://www.kernel.org/pub/linux/utils/kernel/hotplug/udev.html>
383
384FUSE
385----
386o <http://sourceforge.net/projects/fuse>
387
388mcelog
389------
390o <ftp://ftp.kernel.org/pub/linux/utils/cpu/mce/>
391
392Networking
393**********
394
395PPP
396---
397o <ftp://ftp.samba.org/pub/ppp/>
398
399Isdn4k-utils
400------------
401o <ftp://ftp.isdn4linux.de/pub/isdn4linux/utils/>
402
403NFS-utils
404---------
405o <http://sourceforge.net/project/showfiles.php?group_id=14>
406
407Iptables
408--------
409o <http://www.iptables.org/downloads.html>
410
411Ip-route2
412---------
413o <ftp://ftp.tux.org/pub/net/ip-routing/iproute2-2.2.4-now-ss991023.tar.gz>
414
415OProfile
416--------
417o <http://oprofile.sf.net/download/>
418
419NFS-Utils
420---------
421o <http://nfs.sourceforge.net/>
422
423

Archive Download this file



interactive