blob: c76b02d940946a70d9ef713388dba41b1b2333f9 [file] [log] [blame]
Mauro Carvalho Chehab609d99a2016-09-19 08:07:56 -03001.. _changes:
2
Jonathan Corbet9b4ebd92016-10-26 16:34:09 -06003Minimal requirements to compile the Kernel
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -03004++++++++++++++++++++++++++++++++++++++++++
5
Linus Torvalds1da177e2005-04-16 15:20:36 -07006Intro
7=====
8
9This document is designed to provide a list of the minimum levels of
Bruno Moreira-Guedes5a5866c2022-04-19 11:48:52 -030010software necessary to run the current kernel version.
Linus Torvalds1da177e2005-04-16 15:20:36 -070011
12This document is originally based on my "Changes" file for 2.0.x kernels
13and therefore owes credit to the same people as that file (Jared Mauch,
14Axel Boldt, Alessandro Sigala, and countless other users all over the
15'net).
16
Linus Torvalds1da177e2005-04-16 15:20:36 -070017Current Minimal Requirements
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030018****************************
Linus Torvalds1da177e2005-04-16 15:20:36 -070019
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030020Upgrade to at **least** these software revisions before thinking you've
Linus Torvalds1da177e2005-04-16 15:20:36 -070021encountered a bug! If you're unsure what version you're currently
22running, the suggested command should tell you.
23
Linus Torvalds5adaf852011-07-11 16:48:38 -070024Again, keep in mind that this list assumes you are already functionally
25running a Linux kernel. Also, not all tools are necessary on all
Arnd Bergmann9c3c0c22019-04-18 22:43:36 +020026systems; obviously, if you don't have any PC Card hardware, for example,
27you probably needn't concern yourself with pcmciautils.
Linus Torvalds1da177e2005-04-16 15:20:36 -070028
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030029====================== =============== ========================================
30 Program Minimal version Command to check the version
31====================== =============== ========================================
Nick Desaulniers76ae8472021-09-10 16:40:38 -070032GNU C 5.1 gcc --version
Nathan Chancellordf05c0e2021-11-29 09:57:58 -070033Clang/LLVM (optional) 11.0.0 clang --version
Miguel Ojedad07479b2021-07-03 17:23:16 +020034Rust (optional) 1.62.0 rustc --version
35bindgen (optional) 0.56.0 bindgen --version
Masahiro Yamada0715fdb2022-10-02 05:28:35 +090036GNU make 3.82 make --version
Masahiro Yamadada4288b2022-06-08 10:11:00 +090037bash 4.2 bash --version
Borislav Petkov0aa78b12020-03-26 17:01:02 +090038binutils 2.23 ld -v
Masahiro Yamada033dba22017-12-10 01:02:29 +090039flex 2.5.35 flex --version
40bison 2.0 bison --version
Arnaldo Carvalho de Melo333b11e2021-11-19 15:56:03 -030041pahole 1.16 pahole --version
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030042util-linux 2.10o fdformat --version
Randy Dunlap934193a2018-07-01 19:46:06 -070043kmod 13 depmod -V
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030044e2fsprogs 1.41.4 e2fsck -V
45jfsutils 1.1.3 fsck.jfs -V
46reiserfsprogs 3.6.3 reiserfsck -V
47xfsprogs 2.6.0 xfs_db -V
48squashfs-tools 4.0 mksquashfs -version
49btrfs-progs 0.18 btrfsck
50pcmciautils 004 pccardctl -V
51quota-tools 3.09 quota -V
52PPP 2.4.0 pppd --version
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030053nfs-utils 1.0.5 showmount --version
54procps 3.2.0 ps --version
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030055udev 081 udevd --version
56grub 0.93 grub --version || grub-install --version
57mcelog 0.6 mcelog --version
58iptables 1.4.2 iptables -V
59openssl & libcrypto 1.0.0 openssl version
60bc 1.06.95 bc --version
Akira Yokosawa6d6a8d62021-11-10 18:16:48 +090061Sphinx\ [#f1]_ 1.7 sphinx-build --version
Bruno Moreira-Guedes69ef0922022-04-19 11:48:15 -030062cpio any cpio --version
Ahmed S. Darwishfe56f502023-05-15 19:32:17 +020063gtags (optional) 6.6.5 gtags --version
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030064====================== =============== ========================================
Jan Engelhardt7a922632009-12-14 14:52:10 +010065
Mauro Carvalho Chehab81f10d12016-09-19 08:07:43 -030066.. [#f1] Sphinx is needed only to build the Kernel documentation
Linus Torvalds1da177e2005-04-16 15:20:36 -070067
68Kernel compilation
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -030069******************
Linus Torvalds1da177e2005-04-16 15:20:36 -070070
71GCC
72---
73
74The gcc version requirements may vary depending on the type of CPU in your
Andrew Mortona1365642006-01-08 01:04:09 -080075computer.
Linus Torvalds1da177e2005-04-16 15:20:36 -070076
Nick Desaulniers3519c4d2020-08-26 12:15:55 -070077Clang/LLVM (optional)
78---------------------
79
80The latest formal release of clang and LLVM utils (according to
81`releases.llvm.org <https://releases.llvm.org>`_) are supported for building
82kernels. Older releases aren't guaranteed to work, and we may drop workarounds
83from the kernel that were used to support older versions. Please see additional
84docs on :ref:`Building Linux with Clang/LLVM <kbuild_llvm>`.
85
Miguel Ojedad07479b2021-07-03 17:23:16 +020086Rust (optional)
87---------------
88
89A particular version of the Rust toolchain is required. Newer versions may or
90may not work because the kernel depends on some unstable Rust features, for
91the moment.
92
93Each Rust toolchain comes with several "components", some of which are required
94(like ``rustc``) and some that are optional. The ``rust-src`` component (which
95is optional) needs to be installed to build the kernel. Other components are
96useful for developing.
97
98Please see Documentation/rust/quick-start.rst for instructions on how to
99satisfy the build requirements of Rust support. In particular, the ``Makefile``
100target ``rustavailable`` is useful to check why the Rust toolchain may not
101be detected.
102
103bindgen (optional)
104------------------
105
106``bindgen`` is used to generate the Rust bindings to the C side of the kernel.
107It depends on ``libclang``.
108
Linus Torvalds1da177e2005-04-16 15:20:36 -0700109Make
110----
111
Masahiro Yamada0715fdb2022-10-02 05:28:35 +0900112You will need GNU make 3.82 or later to build the kernel.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700113
Masahiro Yamadada4288b2022-06-08 10:11:00 +0900114Bash
115----
116
117Some bash scripts are used for the kernel build.
118Bash 4.2 or newer is needed.
119
Linus Torvalds1da177e2005-04-16 15:20:36 -0700120Binutils
121--------
122
Borislav Petkov0aa78b12020-03-26 17:01:02 +0900123Binutils 2.23 or newer is needed to build the kernel.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700124
Randy Dunlap4ab3b802018-06-28 16:39:50 -0700125pkg-config
126----------
127
128The build system, as of 4.18, requires pkg-config to check for installed
129kconfig tools and to determine flags settings for use in
Masahiro Yamadafd65465b2018-08-31 18:34:55 +0900130'make {g,x}config'. Previously pkg-config was being used but not
Randy Dunlap4ab3b802018-06-28 16:39:50 -0700131verified or documented.
132
Masahiro Yamada033dba22017-12-10 01:02:29 +0900133Flex
134----
135
136Since Linux 4.16, the build system generates lexical analyzers
137during build. This requires flex 2.5.35 or later.
138
139
140Bison
141-----
142
143Since Linux 4.16, the build system generates parsers
144during build. This requires bison 2.0 or later.
145
Arnaldo Carvalho de Melo333b11e2021-11-19 15:56:03 -0300146pahole:
147-------
148
149Since Linux 5.2, if CONFIG_DEBUG_INFO_BTF is selected, the build system
150generates BTF (BPF Type Format) from DWARF in vmlinux, a bit later from kernel
151modules as well. This requires pahole v1.16 or later.
152
153It is found in the 'dwarves' or 'pahole' distro packages or from
154https://fedorapeople.org/~acme/dwarves/.
155
Jose Luis Perez Diez08219622009-06-17 16:26:30 -0700156Perl
157----
158
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300159You will need perl 5 and the following modules: ``Getopt::Long``,
160``Getopt::Std``, ``File::Basename``, and ``File::Find`` to build the kernel.
Jose Luis Perez Diez08219622009-06-17 16:26:30 -0700161
Alan221069b2014-05-19 14:02:17 +0100162BC
163--
164
165You will need bc to build kernels 3.10 and higher
166
Jose Luis Perez Diez08219622009-06-17 16:26:30 -0700167
David Howells3f1d44a2015-08-27 11:13:36 +0100168OpenSSL
169-------
170
171Module signing and external certificate handling use the OpenSSL program and
172crypto library to do key creation and signature generation.
173
174You will need openssl to build kernels 3.7 and higher if module signing is
175enabled. You will also need openssl development packages to build kernels 4.3
176and higher.
177
Ahmed S. Darwishfe56f502023-05-15 19:32:17 +0200178gtags / GNU GLOBAL (optional)
179-----------------------------
180
181The kernel build requires GNU GLOBAL version 6.6.5 or later to generate
182tag files through ``make gtags``. This is due to its use of the gtags
183``-C (--directory)`` flag.
David Howells3f1d44a2015-08-27 11:13:36 +0100184
Linus Torvalds1da177e2005-04-16 15:20:36 -0700185System utilities
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300186****************
Linus Torvalds1da177e2005-04-16 15:20:36 -0700187
188Architectural changes
189---------------------
190
191DevFS has been obsoleted in favour of udev
Alexander A. Klimove7b43112020-06-21 15:36:30 +0200192(https://www.kernel.org/pub/linux/utils/kernel/hotplug/)
Linus Torvalds1da177e2005-04-16 15:20:36 -0700193
19432-bit UID support is now in place. Have fun!
195
196Linux documentation for functions is transitioning to inline
197documentation via specially-formatted comments near their
Mauro Carvalho Chehabff41c4192017-05-14 11:50:11 -0300198definitions in the source. These comments can be combined with ReST
199files the Documentation/ directory to make enriched documentation, which can
200then be converted to PostScript, HTML, LaTex, ePUB and PDF files.
201In order to convert from ReST format to a format of your choice, you'll need
202Sphinx.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700203
204Util-linux
205----------
206
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300207New versions of util-linux provide ``fdisk`` support for larger disks,
Linus Torvalds1da177e2005-04-16 15:20:36 -0700208support new options to mount, recognize more supported partition
209types, have a fdformat which works with 2.4 kernels, and similar goodies.
210You'll probably want to upgrade.
211
212Ksymoops
213--------
214
Jesper Juhl62a07e62005-11-07 01:01:03 -0800215If the unthinkable happens and your kernel oopses, you may need the
216ksymoops tool to decode it, but in most cases you don't.
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300217It is generally preferred to build the kernel with ``CONFIG_KALLSYMS`` so
Linus Torvalds5adaf852011-07-11 16:48:38 -0700218that it produces readable dumps that can be used as-is (this also
219produces better output than ksymoops). If for some reason your kernel
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300220is not build with ``CONFIG_KALLSYMS`` and you have no way to rebuild and
Linus Torvalds5adaf852011-07-11 16:48:38 -0700221reproduce the Oops with that option, then you can still decode that Oops
222with ksymoops.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700223
Linus Torvalds1da177e2005-04-16 15:20:36 -0700224Mkinitrd
225--------
226
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300227These changes to the ``/lib/modules`` file tree layout also require that
Linus Torvalds1da177e2005-04-16 15:20:36 -0700228mkinitrd be upgraded.
229
230E2fsprogs
231---------
232
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300233The latest version of ``e2fsprogs`` fixes several bugs in fsck and
Linus Torvalds1da177e2005-04-16 15:20:36 -0700234debugfs. Obviously, it's a good idea to upgrade.
235
236JFSutils
237--------
238
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300239The ``jfsutils`` package contains the utilities for the file system.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700240The following utilities are available:
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300241
242- ``fsck.jfs`` - initiate replay of the transaction log, and check
Linus Torvalds1da177e2005-04-16 15:20:36 -0700243 and repair a JFS formatted partition.
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300244
245- ``mkfs.jfs`` - create a JFS formatted partition.
246
247- other file system utilities are also available in this package.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700248
249Reiserfsprogs
250-------------
251
252The reiserfsprogs package should be used for reiserfs-3.6.x
253(Linux kernels 2.4.x). It is a combined package and contains working
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300254versions of ``mkreiserfs``, ``resize_reiserfs``, ``debugreiserfs`` and
255``reiserfsck``. These utils work on both i386 and alpha platforms.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700256
257Xfsprogs
258--------
259
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300260The latest version of ``xfsprogs`` contains ``mkfs.xfs``, ``xfs_db``, and the
261``xfs_repair`` utilities, among others, for the XFS filesystem. It is
Linus Torvalds1da177e2005-04-16 15:20:36 -0700262architecture independent and any version from 2.0.0 onward should
263work correctly with this version of the XFS kernel code (2.6.0 or
264later is recommended, due to some significant improvements).
265
Dominik Brodowski5085cb22005-06-27 16:28:45 -0700266PCMCIAutils
267-----------
268
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300269PCMCIAutils replaces ``pcmcia-cs``. It properly sets up
Dominik Brodowski5085cb22005-06-27 16:28:45 -0700270PCMCIA sockets at system startup and loads the appropriate modules
271for 16-bit PCMCIA devices if the kernel is modularized and the hotplug
272subsystem is used.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700273
Linus Torvalds1da177e2005-04-16 15:20:36 -0700274Quota-tools
275-----------
276
277Support for 32 bit uid's and gid's is required if you want to use
278the newer version 2 quota format. Quota-tools version 3.07 and
279newer has this support. Use the recommended version or newer
280from the table above.
281
282Intel IA32 microcode
283--------------------
284
285A driver has been added to allow updating of Intel IA32 microcode,
Greg Kroah-Hartman890fbae2005-06-20 21:15:16 -0700286accessible as a normal (misc) character device. If you are not using
Jonathan Corbet1b49ecf2016-09-20 18:46:36 -0600287udev you may need to::
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300288
289 mkdir /dev/cpu
290 mknod /dev/cpu/microcode c 10 184
291 chmod 0644 /dev/cpu/microcode
Linus Torvalds1da177e2005-04-16 15:20:36 -0700292
293as root before you can use this. You'll probably also want to
294get the user-space microcode_ctl utility to use with this.
295
Linus Torvalds1da177e2005-04-16 15:20:36 -0700296udev
297----
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300298
299``udev`` is a userspace application for populating ``/dev`` dynamically with
300only entries for devices actually present. ``udev`` replaces the basic
Jan Engelhardt03a67a42006-11-30 05:32:19 +0100301functionality of devfs, while allowing persistent device naming for
Greg Kroah-Hartman890fbae2005-06-20 21:15:16 -0700302devices.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700303
Miklos Szeredi909021e2005-09-27 21:45:20 -0700304FUSE
305----
306
307Needs libfuse 2.4.0 or later. Absolute minimum is 2.3.0 but mount
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300308options ``direct_io`` and ``kernel_cache`` won't work.
Miklos Szeredi909021e2005-09-27 21:45:20 -0700309
Linus Torvalds1da177e2005-04-16 15:20:36 -0700310Networking
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300311**********
Linus Torvalds1da177e2005-04-16 15:20:36 -0700312
313General changes
314---------------
315
316If you have advanced network configuration needs, you should probably
317consider using the network tools from ip-route2.
318
319Packet Filter / NAT
320-------------------
321The packet filtering and NAT code uses the same tools like the previous 2.4.x
322kernel series (iptables). It still includes backwards-compatibility modules
323for 2.2.x-style ipchains and 2.0.x-style ipfwadm.
324
325PPP
326---
327
328The PPP driver has been restructured to support multilink and to
329enable it to operate over diverse media layers. If you use PPP,
330upgrade pppd to at least 2.4.0.
331
Greg Kroah-Hartman890fbae2005-06-20 21:15:16 -0700332If you are not using udev, you must have the device file /dev/ppp
Jonathan Corbet1b49ecf2016-09-20 18:46:36 -0600333which can be made by::
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300334
335 mknod /dev/ppp c 108 0
Linus Torvalds1da177e2005-04-16 15:20:36 -0700336
337as root.
338
Linus Torvalds1da177e2005-04-16 15:20:36 -0700339NFS-utils
340---------
341
Linus Torvalds5adaf852011-07-11 16:48:38 -0700342In ancient (2.4 and earlier) kernels, the nfs server needed to know
343about any client that expected to be able to access files via NFS. This
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300344information would be given to the kernel by ``mountd`` when the client
345mounted the filesystem, or by ``exportfs`` at system startup. exportfs
346would take information about active clients from ``/var/lib/nfs/rmtab``.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700347
348This approach is quite fragile as it depends on rmtab being correct
349which is not always easy, particularly when trying to implement
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300350fail-over. Even when the system is working well, ``rmtab`` suffers from
Linus Torvalds1da177e2005-04-16 15:20:36 -0700351getting lots of old entries that never get removed.
352
Linus Torvalds5adaf852011-07-11 16:48:38 -0700353With modern kernels we have the option of having the kernel tell mountd
354when it gets a request from an unknown host, and mountd can give
355appropriate export information to the kernel. This removes the
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300356dependency on ``rmtab`` and means that the kernel only needs to know about
Linus Torvalds5adaf852011-07-11 16:48:38 -0700357currently active clients.
Linus Torvalds1da177e2005-04-16 15:20:36 -0700358
Jonathan Corbet1b49ecf2016-09-20 18:46:36 -0600359To enable this new functionality, you need to::
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300360
Robert P. J. Daye4121712006-09-11 12:39:19 -0400361 mount -t nfsd nfsd /proc/fs/nfsd
Linus Torvalds1da177e2005-04-16 15:20:36 -0700362
363before running exportfs or mountd. It is recommended that all NFS
364services be protected from the internet-at-large by a firewall where
365that is possible.
366
Andi Kleen172d8992009-04-28 23:37:02 +0200367mcelog
368------
369
Paul Bollec8c3f7d2014-07-12 09:54:52 -0700370On x86 kernels the mcelog utility is needed to process and log machine check
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300371events when ``CONFIG_X86_MCE`` is enabled. Machine check events are errors
372reported by the CPU. Processing them is strongly encouraged.
Andi Kleen172d8992009-04-28 23:37:02 +0200373
Mauro Carvalho Chehab81f10d12016-09-19 08:07:43 -0300374Kernel documentation
375********************
376
377Sphinx
378------
379
Federico Vagaf77af632018-11-21 01:35:19 +0100380Please see :ref:`sphinx_install` in :ref:`Documentation/doc-guide/sphinx.rst <sphinxdoc>`
Mauro Carvalho Chehabb8b07b52017-07-14 13:41:17 -0300381for details about Sphinx requirements.
Mauro Carvalho Chehab81f10d12016-09-19 08:07:43 -0300382
Miguel Ojedad07479b2021-07-03 17:23:16 +0200383rustdoc
384-------
385
386``rustdoc`` is used to generate the documentation for Rust code. Please see
387Documentation/rust/general-information.rst for more information.
388
Linus Torvalds1da177e2005-04-16 15:20:36 -0700389Getting updated software
390========================
391
392Kernel compilation
393******************
394
Andrew Mortona1365642006-01-08 01:04:09 -0800395gcc
396---
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300397
398- <ftp://ftp.gnu.org/gnu/gcc/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700399
Nick Desaulniers3519c4d2020-08-26 12:15:55 -0700400Clang/LLVM
401----------
402
403- :ref:`Getting LLVM <getting_llvm>`.
404
Miguel Ojedad07479b2021-07-03 17:23:16 +0200405Rust
406----
407
408- Documentation/rust/quick-start.rst.
409
410bindgen
411-------
412
413- Documentation/rust/quick-start.rst.
414
Linus Torvalds1da177e2005-04-16 15:20:36 -0700415Make
416----
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300417
418- <ftp://ftp.gnu.org/gnu/make/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700419
Masahiro Yamadada4288b2022-06-08 10:11:00 +0900420Bash
421----
422
423- <ftp://ftp.gnu.org/gnu/bash/>
424
Linus Torvalds1da177e2005-04-16 15:20:36 -0700425Binutils
426--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300427
SeongJae Park3bdadc862017-03-27 22:05:34 +0900428- <https://www.kernel.org/pub/linux/devel/binutils/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700429
Masahiro Yamada033dba22017-12-10 01:02:29 +0900430Flex
431----
432
433- <https://github.com/westes/flex/releases>
434
435Bison
436-----
437
438- <ftp://ftp.gnu.org/gnu/bison/>
439
David Howells3f1d44a2015-08-27 11:13:36 +0100440OpenSSL
441-------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300442
443- <https://www.openssl.org/>
David Howells3f1d44a2015-08-27 11:13:36 +0100444
Linus Torvalds1da177e2005-04-16 15:20:36 -0700445System utilities
446****************
447
448Util-linux
449----------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300450
SeongJae Park3bdadc862017-03-27 22:05:34 +0900451- <https://www.kernel.org/pub/linux/utils/util-linux/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700452
Randy Dunlap934193a2018-07-01 19:46:06 -0700453Kmod
454----
455
456- <https://www.kernel.org/pub/linux/utils/kernel/kmod/>
457- <https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git>
458
Linus Torvalds1da177e2005-04-16 15:20:36 -0700459Ksymoops
460--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300461
SeongJae Park3bdadc862017-03-27 22:05:34 +0900462- <https://www.kernel.org/pub/linux/utils/kernel/ksymoops/v2.4/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700463
Linus Torvalds1da177e2005-04-16 15:20:36 -0700464Mkinitrd
465--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300466
467- <https://code.launchpad.net/initrd-tools/main>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700468
469E2fsprogs
470---------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300471
Randy Dunlap599e6f82020-01-29 15:15:15 -0800472- <https://www.kernel.org/pub/linux/kernel/people/tytso/e2fsprogs/>
473- <https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700474
475JFSutils
476--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300477
478- <http://jfs.sourceforge.net/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700479
480Reiserfsprogs
481-------------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300482
Randy Dunlap599e6f82020-01-29 15:15:15 -0800483- <https://git.kernel.org/pub/scm/linux/kernel/git/jeffm/reiserfsprogs.git/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700484
485Xfsprogs
486--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300487
Randy Dunlap599e6f82020-01-29 15:15:15 -0800488- <https://git.kernel.org/pub/scm/fs/xfs/xfsprogs-dev.git>
489- <https://www.kernel.org/pub/linux/utils/fs/xfs/xfsprogs/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700490
Dominik Brodowski5085cb22005-06-27 16:28:45 -0700491Pcmciautils
492-----------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300493
SeongJae Park3bdadc862017-03-27 22:05:34 +0900494- <https://www.kernel.org/pub/linux/utils/kernel/pcmcia/>
Dominik Brodowski5085cb22005-06-27 16:28:45 -0700495
Linus Torvalds1da177e2005-04-16 15:20:36 -0700496Quota-tools
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300497-----------
498
499- <http://sourceforge.net/projects/linuxquota/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700500
Martin Waitz8b0c2d92005-05-01 08:59:27 -0700501
Linus Torvalds1da177e2005-04-16 15:20:36 -0700502Intel P6 microcode
503------------------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300504
505- <https://downloadcenter.intel.com/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700506
Linus Torvalds1da177e2005-04-16 15:20:36 -0700507udev
508----
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300509
Alexander A. Klimove7b43112020-06-21 15:36:30 +0200510- <https://www.freedesktop.org/software/systemd/man/udev.html>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700511
Miklos Szeredi909021e2005-09-27 21:45:20 -0700512FUSE
513----
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300514
Martin Kepplinger86afad72018-03-27 14:59:50 +0200515- <https://github.com/libfuse/libfuse/releases>
Miklos Szeredi909021e2005-09-27 21:45:20 -0700516
Andi Kleen172d8992009-04-28 23:37:02 +0200517mcelog
518------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300519
520- <http://www.mcelog.org/>
Andi Kleen172d8992009-04-28 23:37:02 +0200521
Bruno Moreira-Guedes69ef0922022-04-19 11:48:15 -0300522cpio
523----
524
525- <https://www.gnu.org/software/cpio/>
526
Linus Torvalds1da177e2005-04-16 15:20:36 -0700527Networking
528**********
529
530PPP
531---
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300532
Randy Dunlap599e6f82020-01-29 15:15:15 -0800533- <https://download.samba.org/pub/ppp/>
534- <https://git.ozlabs.org/?p=ppp.git>
535- <https://github.com/paulusmack/ppp/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700536
Linus Torvalds1da177e2005-04-16 15:20:36 -0700537NFS-utils
538---------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300539
540- <http://sourceforge.net/project/showfiles.php?group_id=14>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700541
542Iptables
543--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300544
Randy Dunlap599e6f82020-01-29 15:15:15 -0800545- <https://netfilter.org/projects/iptables/index.html>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700546
547Ip-route2
548---------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300549
550- <https://www.kernel.org/pub/linux/utils/net/iproute2/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700551
552OProfile
553--------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300554
555- <http://oprofile.sf.net/download/>
Linus Torvalds1da177e2005-04-16 15:20:36 -0700556
557NFS-Utils
558---------
Mauro Carvalho Chehab840f6692016-09-19 08:07:42 -0300559
560- <http://nfs.sourceforge.net/>
Mauro Carvalho Chehab81f10d12016-09-19 08:07:43 -0300561
562Kernel documentation
563********************
564
565Sphinx
566------
567
Alexander A. Klimove7b43112020-06-21 15:36:30 +0200568- <https://www.sphinx-doc.org/>