Rob Sullivan sent in some cleanups, which I beat on slightly.
[oweals/busybox.git] / util-linux / Config.in
1 #
2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
4 #
5
6 menu "Linux System Utilities"
7
8 config CONFIG_DMESG
9         bool "dmesg"
10         default n
11         help
12           dmesg is used to examine or control the kernel ring buffer.  When the
13           Linux kernel prints messages to the system log, they are stored in
14           the kernel ring buffer.  You can use dmesg to print the kernel's ring
15           buffer, clear the kernel ring buffer, change the size of the kernel
16           ring buffer, and change the priority level at which kernel messages
17           are also logged to the system console.  Enable this option if you
18           wish to enable the 'dmesg' utility.
19
20 config CONFIG_FBSET
21         bool "fbset"
22         default n
23         help
24           fbset is used to show or change the settings of a Linux frame buffer
25           device.  The frame buffer device provides a simple and unique
26           interface to access a graphics display.  Enable this option
27           if you wish to enable the 'fbset' utility.
28
29 config CONFIG_FEATURE_FBSET_FANCY
30         bool "  Turn on extra fbset options"
31         default n
32         depends on CONFIG_FBSET
33         help
34           This option enables extended fbset options, allowing one to set the
35           framebuffer size, color depth, etc.  interface to access a graphics
36           display.  Enable this option if you wish to enable extended fbset
37           options.
38
39 config CONFIG_FEATURE_FBSET_READMODE
40         bool "  Turn on fbset readmode support"
41         default n
42         depends on CONFIG_FBSET
43         help
44           This option allows fbset to read the video mode database stored by
45           default as /etc/fb.modes, which can be used to set frame buffer
46           device to pre-defined video modes.
47
48 config CONFIG_FDFLUSH
49         bool "fdflush"
50         default n
51         help
52           fdflush is only needed when changing media on slightly-broken
53           removable media drives.  It is used to make Linux believe that a
54           hardware disk-change switch has been actuated, which causes Linux to
55           forget anything it has cached from the previous media.  If you have
56           such a slightly-broken drive, you will need to run fdflush every time
57           you change a disk.  Most people have working hardware and can safely
58           leave this disabled.
59
60 config CONFIG_FDFORMAT
61         bool "fdformat"
62         default n
63         help
64           fdformat is used to low-level format a floppy disk.
65
66 config CONFIG_FDISK
67         bool "fdisk"
68         default n
69         help
70           The fdisk utility is used to divide hard disks into one or more
71           logical disks, which are generally called partitions.  This utility
72           can be used to list and edit the set of partitions or BSD style
73           'disk slices' that are defined on a hard drive.
74
75 config FDISK_SUPPORT_LARGE_DISKS
76         bool "  support over 4GB disks"
77         default y
78         depends on CONFIG_FDISK
79         help
80           Enable this option to support large disks > 4GB.
81
82 config CONFIG_FEATURE_FDISK_WRITABLE
83         bool "  Write support"
84         default y
85         depends on CONFIG_FDISK
86         help
87           Enabling this option allows you to create or change a partition table
88           and write those changes out to disk.  If you leave this option
89           disabled, you will only be able to view the partition table.
90
91 config CONFIG_FEATURE_AIX_LABEL
92         bool "  Support AIX disklabels"
93         default n
94         depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
95         help
96           Enabling this option allows you to create or change AIX disklabels.
97           Most people can safely leave this option disabled.
98
99 config CONFIG_FEATURE_SGI_LABEL
100         bool "  Support SGI disklabels"
101         default n
102         depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
103         help
104           Enabling this option allows you to create or change SGI disklabels.
105           Most people can safely leave this option disabled.
106
107 config CONFIG_FEATURE_SUN_LABEL
108         bool "  Support SUN disklabels"
109         default n
110         depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
111         help
112           Enabling this option allows you to create or change SUN disklabels.
113           Most people can safely leave this option disabled.
114
115 config CONFIG_FEATURE_OSF_LABEL
116         bool "  Support BSD disklabels"
117         default n
118         depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
119         help
120           Enabling this option allows you to create or change BSD disklabels
121           and define and edit BSD disk slices.
122
123 config CONFIG_FEATURE_FDISK_ADVANCED
124         bool "  Support expert mode"
125         default n
126         depends on CONFIG_FDISK && CONFIG_FEATURE_FDISK_WRITABLE
127         help
128           Enabling this option allows you to do terribly unsafe things like
129           define arbitrary drive geometry, move the beginning of data in a
130           partition, and similarly evil things.  Unless you have a very good
131           reason you would be wise to leave this disabled.
132
133 config CONFIG_FREERAMDISK
134         bool "freeramdisk"
135         default n
136         help
137           Linux allows you to create ramdisks.  This utility allows you to
138           delete them and completely free all memory that was used for the
139           ramdisk.  For example, if you boot Linux into a ramdisk and later
140           pivot_root, you may want to free the memory that is allocated to the
141           ramdisk.  If you have no use for freeing memory from a ramdisk, leave
142           this disabled.
143
144 config CONFIG_FSCK_MINIX
145         bool "fsck_minix"
146         default n
147         help
148           The minix filesystem is a nice, small, compact, read-write filesystem
149           with little overhead.  It is not a journaling filesystem however and
150           can experience corruption if it is not properly unmounted or if the
151           power goes off in the middle of a write.  This utility allows you to
152           check for and attempt to repair any corruption that occurs to a minix
153           filesystem.
154
155 config CONFIG_MKFS_MINIX
156         bool "mkfs_minix"
157         default n
158         help
159           The minix filesystem is a nice, small, compact, read-write filesystem
160           with little overhead.  If you wish to be able to create minix filesystems
161           this utility will do the job for you.
162
163 comment "Minix filesystem support"
164     depends on CONFIG_FSCK_MINIX || CONFIG_MKFS_MINIX
165
166 config CONFIG_FEATURE_MINIX2
167         bool "  Support Minix fs v2 (fsck_minix/mkfs_minix)"
168         default y
169         depends on CONFIG_FSCK_MINIX || CONFIG_MKFS_MINIX
170         help
171           If you wish to be able to create version 2 minix filesystems, enable this.
172           If you enabled 'mkfs_minix' then you almost certainly want to be using the
173           version 2 filesystem support.
174
175 config CONFIG_GETOPT
176         bool "getopt"
177         default n
178         help
179           The getopt utility is used to break up (parse) options in command
180           lines to make it easy to write complex shell scripts that also check
181           for legal (and illegal) options.  If you want to write horribly
182           complex shell scripts, or use some horribly complex shell script
183           written by others, this utility may be for you.  Most people will
184           wisely leave this disabled.
185
186 config CONFIG_HEXDUMP
187         bool "hexdump"
188         default n
189         help
190           The hexdump utility is used to display binary data in a readable
191           way that is comparable to the output from most hex editors.
192
193 config CONFIG_HWCLOCK
194         bool "hwclock"
195         default n
196         help
197           The hwclock utility is used to read and set the hardware clock
198           on a system.  This is primarily used to set the current time on
199           shutdown in the hardware clock, so the hardware will keep the
200           correct time when Linux is _not_ running.
201
202 config CONFIG_FEATURE_HWCLOCK_LONGOPTIONS
203         bool "  Support long options (--hctosys,...)"
204         default n
205         depends on CONFIG_HWCLOCK
206         help
207           By default, the hwclock utility only uses short options.  If you
208           are overly fond of its long options, such as --hctosys, --utc, etc)
209           then enable this option.
210
211 config CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
212         bool "  Use FHS /var/lib/hwclock/adjtime"
213         default y
214         depends on CONFIG_HWCLOCK
215         help
216           Starting with FHS 2.3, the adjtime state file is supposed to exist
217           at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish 
218           to use the FHS behavior, answer Y here, otherwise answer N for the
219           classic /etc/adjtime path.
220
221           http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
222
223 config CONFIG_IPCRM
224         bool "ipcrm"
225         default n
226         select CONFIG_FEATURE_SUID
227         help
228           The ipcrm utility allows the removal of System V interprocess
229           communication (IPC) objects and the associated data structures
230           from the system.
231
232 config CONFIG_IPCS
233         bool "ipcs"
234         default n
235         select CONFIG_FEATURE_SUID
236         help
237           The ipcs utility is used to provide information on the currently
238           allocated System V interprocess (IPC) objects in the system.
239
240 config CONFIG_LOSETUP
241         bool "losetup"
242         default n
243         help
244           losetup is used to associate or detach a loop device with a regular
245           file or block device, and to query the status of a loop device.  This
246           version does not currently support enabling data encryption.
247
248 config CONFIG_MKSWAP
249         bool "mkswap"
250         default n
251         help
252           The mkswap utility is used to configure a file or disk partition as
253           Linux swap space.  This allows Linux to use the entire file or
254           partition as if it were additional RAM, which can greatly increase
255           the capability of low-memory machines.  This additional memory is
256           much slower than real RAM, but can be very helpful at preventing your
257           applications being killed by the Linux out of memory (OOM) killer.
258           Once you have created swap space using 'mkswap' you need to enable
259           the swap space using the 'swapon' utility.
260
261 config CONFIG_MORE
262         bool "more"
263         default n
264         help
265           more is a simple utility which allows you to read text one screen
266           sized page at a time.  If you want to read text that is larger than
267           the screen, and you are using anything faster than a 300 baud modem,
268           you will probably find this utility very helpful.  If you don't have
269           any need to reading text files, you can leave this disabled.
270
271 config CONFIG_FEATURE_USE_TERMIOS
272         bool "  Use termios to manipulate the screen"
273         default y
274         depends on CONFIG_MORE
275         help
276           This option allows utilities such as 'more' and 'top' to determine
277           the size of the screen.  If you leave this disabled, your utilities
278           that display things on the screen will be especially primitive and
279           will be unable to determine the current screen size, and will be
280           unable to move the cursor.
281
282 config CONFIG_PIVOT_ROOT
283         bool "pivot_root"
284         default n
285         help
286           The pivot_root utility swaps the mount points for the root filesystem
287           with some other mounted filesystem.  This allows you to do all sorts
288           of wild and crazy things with your Linux system and is far more
289           powerful than 'chroot'.
290
291           Note: This is for initrd in linux 2.4.  Under initramfs (introduced
292           in linux 2.6) use switch_root instead.
293
294 config CONFIG_SWITCH_ROOT
295         bool "switch_root"
296         default n
297         help
298           The switch_root utility is used from initramfs to select a new
299           root device.  Under initramfs, you have to use this instead of
300           pivot_root.  (Stop reading here if you don't care why.)
301
302           Booting with initramfs extracts a gzipped cpio archive into rootfs
303           (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved
304           or unmounted*, pivot_root will not work from initramfs.  Instead,
305           switch_root deletes everything out of rootfs (including itself),
306           does a mount --move that overmounts rootfs with the new root, and
307           then execs the specified init program.
308
309           * Because the Linux kernel uses rootfs internally as the starting
310           and ending point for searching through the kernel's doubly linked
311           list of active mount points.  That's why.
312
313 config CONFIG_RDATE
314         bool "rdate"
315         default n
316         help
317           The rdate utility allows you to synchronize the date and time of your
318           system clock with the date and time of a remote networked system using
319           the RFC868 protocol, which is built into the inetd daemon on most
320           systems.
321
322 config CONFIG_READPROFILE
323         bool "readprofile"
324         default n
325         help
326           This allows you to parse /proc/profile for basic profiling.
327
328 config CONFIG_SWAPONOFF
329         bool "swaponoff"
330         default n
331         help
332           This option enables both the 'swapon' and the 'swapoff' utilities.
333           Once you have created some swap space using 'mkswap', you also need
334           to enable your swap space with the 'swapon' utility.  The 'swapoff'
335           utility is used, typically at system shutdown, to disable any swap
336           space.  If you are not using any swap space, you can leave this
337           option disabled.
338
339 config CONFIG_MOUNT
340         bool "mount"
341         default n
342         help
343           All files and filesystems in Unix are arranged into one big directory
344           tree.  The 'mount' utility is used to graft a filesystem onto a
345           particular part of the tree.  A filesystem can either live on a block
346           device, or it can be accessible over the network, as is the case with
347           NFS filesystems.  Most people using BusyBox will also want to enable
348           the 'mount' utility.
349
350 config CONFIG_FEATURE_MOUNT_NFS
351         bool "  Support mounting NFS file systems"
352         default n
353         depends on CONFIG_MOUNT
354         help
355          Enable mounting of NFS file systems.
356
357 config CONFIG_UMOUNT
358         bool "umount"
359         default n
360         help
361           When you want to remove a mounted filesystem from its current mount point,
362           for example when you are shutting down the system, the 'umount' utility is
363           the tool to use.  If you enabled the 'mount' utility, you almost certainly
364           also want to enable 'umount'.
365
366 comment "Common options for mount/umount"
367         depends on CONFIG_MOUNT || CONFIG_UMOUNT
368
369 config CONFIG_FEATURE_MOUNT_LOOP
370         bool "  Support loopback mounts"
371         default n
372         depends on CONFIG_MOUNT || CONFIG_UMOUNT
373         help
374           Enabling this feature allows automatic mounting of files (containing
375           filesystem images) via the linux kernel's loopback devices.  The mount
376           command will detect you are trying to mount a file instead of a block
377           device, and transparently associate the file with a loopback device.
378           The umount command will also free that loopback device.
379           
380           You can still use the 'losetup' utility (to manually associate files
381           with loop devices) if you need to do something advanced, such as
382           specify an offset or cryptographic options to the loopback device.
383           (If you don't want umount to free the loop device, use "umount -D".)
384
385 config CONFIG_FEATURE_MTAB_SUPPORT
386         bool "  Support for the old /etc/mtab file"
387         default n
388         depends on CONFIG_MOUNT || CONFIG_UMOUNT
389         help
390           Historically, Unix systems kept track of the currently mounted
391           partitions in the file "/etc/mtab".  These days, the kernel exports
392           the list of currently mounted partitions in "/proc/mounts", rendering
393           the old mtab file obsolete.  (In modern systems, /etc/mtab should be
394           a symlink to /proc/mounts.)
395
396           The only reason to have mount maintain an /etc/mtab file itself is if
397           your stripped-down embedded system does not have a /proc directory.
398           If you must use this, keep in mind it's inherently brittle (for
399           example a mount under chroot won't update it), can't handle modern
400           features like separate per-process filesystem namespaces, requires
401           that your /etc directory be writeable, tends to get easily confused
402           by --bind or --move mounts, and so on.  (In brief: avoid.)
403
404 endmenu
405