About Kernel Documentation Linux Kernel Contact Linux Resources Linux Blog

Documentation / Changes

Based on kernel version 2.6.26. Page generated on 2008-07-16 21:12 EST.

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

Information is copyright its respective author. All material is available from the Linux Kernel Source distributed under a GPL License. This page is provided as a free service by mjmwired.net.