0f219d70e244a298208634bd7f17b41aec8e6b3f
[openwrt.git] / package / busybox / config / 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 BUSYBOX_CONFIG_DMESG
9         bool "dmesg"
10         default y
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 BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY
21         bool "pretty dmesg output"
22         default y
23         depends on BUSYBOX_CONFIG_DMESG
24         help
25           If you wish to scrub the syslog level from the output, say 'Y' here.
26           The syslog level is a string prefixed to every line with the form "<#>".
27
28           With this option you will see:
29             # dmesg
30             Linux version 2.6.17.4 .....
31             BIOS-provided physical RAM map:
32              BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
33
34           Without this option you will see:
35             # dmesg
36             <5>Linux version 2.6.17.4 .....
37             <6>BIOS-provided physical RAM map:
38             <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
39
40 config BUSYBOX_CONFIG_FBSET
41         bool "fbset"
42         default n
43         help
44           fbset is used to show or change the settings of a Linux frame buffer
45           device.  The frame buffer device provides a simple and unique
46           interface to access a graphics display.  Enable this option
47           if you wish to enable the 'fbset' utility.
48
49 config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
50         bool "Turn on extra fbset options"
51         default n
52         depends on BUSYBOX_CONFIG_FBSET
53         help
54           This option enables extended fbset options, allowing one to set the
55           framebuffer size, color depth, etc.  interface to access a graphics
56           display.  Enable this option if you wish to enable extended fbset
57           options.
58
59 config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
60         bool "Turn on fbset readmode support"
61         default n
62         depends on BUSYBOX_CONFIG_FBSET
63         help
64           This option allows fbset to read the video mode database stored by
65           default n /etc/fb.modes, which can be used to set frame buffer
66           device to pre-defined video modes.
67
68 config BUSYBOX_CONFIG_FDFLUSH
69         bool "fdflush"
70         default n
71         help
72           fdflush is only needed when changing media on slightly-broken
73           removable media drives.  It is used to make Linux believe that a
74           hardware disk-change switch has been actuated, which causes Linux to
75           forget anything it has cached from the previous media.  If you have
76           such a slightly-broken drive, you will need to run fdflush every time
77           you change a disk.  Most people have working hardware and can safely
78           leave this disabled.
79
80 config BUSYBOX_CONFIG_FDFORMAT
81         bool "fdformat"
82         default n
83         help
84           fdformat is used to low-level format a floppy disk.
85
86 config BUSYBOX_CONFIG_FDISK
87         bool "fdisk"
88         default n
89         help
90           The fdisk utility is used to divide hard disks into one or more
91           logical disks, which are generally called partitions.  This utility
92           can be used to list and edit the set of partitions or BSD style
93           'disk slices' that are defined on a hard drive.
94
95 config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS
96         bool "support over 4GB disks"
97         default y
98         depends on BUSYBOX_CONFIG_FDISK
99         help
100           Enable this option to support large disks > 4GB.
101
102 config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
103         bool "Write support"
104         default n
105         depends on BUSYBOX_CONFIG_FDISK
106         help
107           Enabling this option allows you to create or change a partition table
108           and write those changes out to disk.  If you leave this option
109           disabled, you will only be able to view the partition table.
110
111 config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
112         bool "Support AIX disklabels"
113         default n
114         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
115         help
116           Enabling this option allows you to create or change AIX disklabels.
117           Most people can safely leave this option disabled.
118
119 config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
120         bool "Support SGI disklabels"
121         default n
122         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
123         help
124           Enabling this option allows you to create or change SGI disklabels.
125           Most people can safely leave this option disabled.
126
127 config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
128         bool "Support SUN disklabels"
129         default n
130         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
131         help
132           Enabling this option allows you to create or change SUN disklabels.
133           Most people can safely leave this option disabled.
134
135 config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
136         bool "Support BSD disklabels"
137         default n
138         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
139         help
140           Enabling this option allows you to create or change BSD disklabels
141           and define and edit BSD disk slices.
142
143 config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
144         bool "Support expert mode"
145         default n
146         depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
147         help
148           Enabling this option allows you to do terribly unsafe things like
149           define arbitrary drive geometry, move the beginning of data in a
150           partition, and similarly evil things.  Unless you have a very good
151           reason you would be wise to leave this disabled.
152
153 config BUSYBOX_CONFIG_FREERAMDISK
154         bool "freeramdisk"
155         default n
156         help
157           Linux allows you to create ramdisks.  This utility allows you to
158           delete them and completely free all memory that was used for the
159           ramdisk.  For example, if you boot Linux into a ramdisk and later
160           pivot_root, you may want to free the memory that is allocated to the
161           ramdisk.  If you have no use for freeing memory from a ramdisk, leave
162           this disabled.
163
164 config BUSYBOX_CONFIG_FSCK_MINIX
165         bool "fsck_minix"
166         default n
167         help
168           The minix filesystem is a nice, small, compact, read-write filesystem
169           with little overhead.  It is not a journaling filesystem however and
170           can experience corruption if it is not properly unmounted or if the
171           power goes off in the middle of a write.  This utility allows you to
172           check for and attempt to repair any corruption that occurs to a minix
173           filesystem.
174
175 config BUSYBOX_CONFIG_MKFS_MINIX
176         bool "mkfs_minix"
177         default n
178         help
179           The minix filesystem is a nice, small, compact, read-write filesystem
180           with little overhead.  If you wish to be able to create minix filesystems
181           this utility will do the job for you.
182
183 comment "Minix filesystem support"
184     depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
185
186 config BUSYBOX_CONFIG_FEATURE_MINIX2
187         bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
188         default n
189         depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
190         help
191           If you wish to be able to create version 2 minix filesystems, enable this.
192           If you enabled 'mkfs_minix' then you almost certainly want to be using the
193           version 2 filesystem support.
194
195 config BUSYBOX_CONFIG_GETOPT
196         bool "getopt"
197         default n
198         help
199           The getopt utility is used to break up (parse) options in command
200           lines to make it easy to write complex shell scripts that also check
201           for legal (and illegal) options.  If you want to write horribly
202           complex shell scripts, or use some horribly complex shell script
203           written by others, this utility may be for you.  Most people will
204           wisely leave this disabled.
205
206 config BUSYBOX_CONFIG_HEXDUMP
207         bool "hexdump"
208         default y
209         help
210           The hexdump utility is used to display binary data in a readable
211           way that is comparable to the output from most hex editors.
212
213 config BUSYBOX_CONFIG_HWCLOCK
214         bool "hwclock"
215         default n
216         help
217           The hwclock utility is used to read and set the hardware clock
218           on a system.  This is primarily used to set the current time on
219           shutdown in the hardware clock, so the hardware will keep the
220           correct time when Linux is _not_ running.
221
222 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS
223         bool "Support long options (--hctosys,...)"
224         default n
225         depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG
226         help
227           By default, the hwclock utility only uses short options.  If you
228           are overly fond of its long options, such as --hctosys, --utc, etc)
229           then enable this option.
230
231 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
232         bool "Use FHS /var/lib/hwclock/adjtime"
233         default n
234         depends on BUSYBOX_CONFIG_HWCLOCK
235         help
236           Starting with FHS 2.3, the adjtime state file is supposed to exist
237           at /var/lib/hwclock/adjtime instead of /etc/adjtime.  If you wish
238           to use the FHS behavior, answer Y here, otherwise answer N for the
239           classic /etc/adjtime path.
240
241           http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
242
243 config BUSYBOX_CONFIG_IPCRM
244         bool "ipcrm"
245         default n
246         select BUSYBOX_CONFIG_FEATURE_SUID
247         help
248           The ipcrm utility allows the removal of System V interprocess
249           communication (IPC) objects and the associated data structures
250           from the system.
251
252 config BUSYBOX_CONFIG_IPCS
253         bool "ipcs"
254         default n
255         select BUSYBOX_CONFIG_FEATURE_SUID
256         help
257           The ipcs utility is used to provide information on the currently
258           allocated System V interprocess (IPC) objects in the system.
259
260 config BUSYBOX_CONFIG_LOSETUP
261         bool "losetup"
262         default n
263         help
264           losetup is used to associate or detach a loop device with a regular
265           file or block device, and to query the status of a loop device.  This
266           version does not currently support enabling data encryption.
267
268 config BUSYBOX_CONFIG_MDEV
269         bool "mdev"
270         default y
271         help
272           mdev is a mini-udev implementation: call it with -s to populate
273           /dev from /sys, then "echo /sbin/mdev > /proc/sys/kernel/hotplug" to
274           have it handle hotplug events afterwards.  Device names are taken
275           from sysfs.
276
277 config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
278         bool "Support /etc/mdev.conf"
279         default y
280         depends on BUSYBOX_CONFIG_MDEV
281         help
282           The mdev config file contains lines that look like:
283
284             hd[a-z][0-9]* 0:3 660
285
286           That's device name (with regex match), uid:gid, and permissions.
287
288           Config file parsing stops on the first matching line.  If no config
289           entry is matched, devices are created with default 0:0 660.  (Make
290           the last line match .* to override this.)
291
292 config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
293         bool "Support command execution at device addition/removal"
294         default n
295         depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
296         help
297           This adds support for an optional field to /etc/mdev.conf, consisting
298           of a special character and a command line to run after creating the
299           corresponding device(s) and before removing, ala:
300
301             hdc root:cdrom 660  *ln -s $MDEV cdrom
302
303           The $MDEV environment variable is set to the name of the device.
304
305           The special characters and their meanings are:
306             @ Run after creating the device.
307             $ Run before removing the device.
308             * Run both after creating and before removing the device.
309
310           Commands are executed via system() so you need /bin/sh, meaning you
311           probably want to select a default shell in the Shells menu.
312
313 config BUSYBOX_CONFIG_MKSWAP
314         bool "mkswap"
315         default n
316         help
317           The mkswap utility is used to configure a file or disk partition as
318           Linux swap space.  This allows Linux to use the entire file or
319           partition as if it were additional RAM, which can greatly increase
320           the capability of low-memory machines.  This additional memory is
321           much slower than real RAM, but can be very helpful at preventing your
322           applications being killed by the Linux out of memory (OOM) killer.
323           Once you have created swap space using 'mkswap' you need to enable
324           the swap space using the 'swapon' utility.
325
326 config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0
327         bool "version 0 support"
328         default n
329         depends on BUSYBOX_CONFIG_MKSWAP
330 #       depends on MKSWAP && BUSYBOX_CONFIG_DEPRECATED
331         help
332           Enable support for the old v0 style.
333           If your kernel is older than 2.1.117, then v0 support is the
334           only option.
335
336 config BUSYBOX_CONFIG_MORE
337         bool "more"
338         default n
339         help
340           more is a simple utility which allows you to read text one screen
341           sized page at a time.  If you want to read text that is larger than
342           the screen, and you are using anything faster than a 300 baud modem,
343           you will probably find this utility very helpful.  If you don't have
344           any need to reading text files, you can leave this disabled.
345
346 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
347         bool "Use termios to manipulate the screen"
348         default n
349         depends on BUSYBOX_CONFIG_MORE
350         help
351           This option allows utilities such as 'more' and 'top' to determine
352           the size of the screen.  If you leave this disabled, your utilities
353           that display things on the screen will be especially primitive and
354           will be unable to determine the current screen size, and will be
355           unable to move the cursor.
356
357 config BUSYBOX_CONFIG_MOUNT
358         bool "mount"
359         default y
360         help
361           All files and filesystems in Unix are arranged into one big directory
362           tree.  The 'mount' utility is used to graft a filesystem onto a
363           particular part of the tree.  A filesystem can either live on a block
364           device, or it can be accessible over the network, as is the case with
365           NFS filesystems.  Most people using BusyBox will also want to enable
366           the 'mount' utility.
367
368 config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
369         bool "Support mounting NFS file systems"
370         default y
371         depends on BUSYBOX_CONFIG_MOUNT
372         depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC
373         select BUSYBOX_CONFIG_FEATURE_SYSLOG
374         help
375           Enable mounting of NFS file systems.
376
377 config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS
378         bool "Support mounting CIFS/SMB file systems"
379         default y
380         depends on BUSYBOX_CONFIG_MOUNT
381         help
382           Enable support for samba mounts.
383
384 config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS
385         depends on BUSYBOX_CONFIG_MOUNT
386         bool "Support lots of -o flags in mount"
387         default y
388         help
389           Without this, mount only supports ro/rw/remount.  With this, it
390           supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
391           noatime, diratime, nodiratime, loud, bind, move, shared, slave,
392           private, unbindable, rshared, rslave, rprivate, and runbindable.
393
394 config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
395         depends on BUSYBOX_CONFIG_MOUNT
396         bool "Support /etc/fstab and -a"
397         default y
398         help
399           Support mount all and looking for files in /etc/fstab.
400
401 config BUSYBOX_CONFIG_PIVOT_ROOT
402         bool "pivot_root"
403         default y
404         help
405           The pivot_root utility swaps the mount points for the root filesystem
406           with some other mounted filesystem.  This allows you to do all sorts
407           of wild and crazy things with your Linux system and is far more
408           powerful than 'chroot'.
409
410           Note: This is for initrd in linux 2.4.  Under initramfs (introduced
411           in linux 2.6) use switch_root instead.
412
413 config BUSYBOX_CONFIG_RDATE
414         bool "rdate"
415         default y
416         help
417           The rdate utility allows you to synchronize the date and time of your
418           system clock with the date and time of a remote networked system using
419           the RFC868 protocol, which is built into the inetd daemon on most
420           systems.
421
422 config BUSYBOX_CONFIG_READPROFILE
423         bool "readprofile"
424         default n
425         help
426           This allows you to parse /proc/profile for basic profiling.
427
428 config BUSYBOX_CONFIG_SETARCH
429         bool "setarch"
430         default n
431         help
432           The linux32 utility is used to create a 32bit environment for the
433           specified program (usually a shell).  It only makes sense to have
434           this util on a system that supports both 64bit and 32bit userland
435           (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
436
437 config BUSYBOX_CONFIG_SWAPONOFF
438         bool "swaponoff"
439         default n
440         help
441           This option enables both the 'swapon' and the 'swapoff' utilities.
442           Once you have created some swap space using 'mkswap', you also need
443           to enable your swap space with the 'swapon' utility.  The 'swapoff'
444           utility is used, typically at system shutdown, to disable any swap
445           space.  If you are not using any swap space, you can leave this
446           option disabled.
447
448 config BUSYBOX_CONFIG_SWITCH_ROOT
449         bool "switch_root"
450         default y
451         help
452           The switch_root utility is used from initramfs to select a new
453           root device.  Under initramfs, you have to use this instead of
454           pivot_root.  (Stop reading here if you don't care why.)
455
456           Booting with initramfs extracts a gzipped cpio archive into rootfs
457           (which is a variant of ramfs/tmpfs).  Because rootfs can't be moved
458           or unmounted*, pivot_root will not work from initramfs.  Instead,
459           switch_root deletes everything out of rootfs (including itself),
460           does a mount --move that overmounts rootfs with the new root, and
461           then execs the specified init program.
462
463           * Because the Linux kernel uses rootfs internally as the starting
464           and ending point for searching through the kernel's doubly linked
465           list of active mount points.  That's why.
466
467 config BUSYBOX_CONFIG_UMOUNT
468         bool "umount"
469         default y
470         help
471           When you want to remove a mounted filesystem from its current mount point,
472           for example when you are shutting down the system, the 'umount' utility is
473           the tool to use.  If you enabled the 'mount' utility, you almost certainly
474           also want to enable 'umount'.
475
476 config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
477         bool "umount -a option"
478         default y
479         depends on BUSYBOX_CONFIG_UMOUNT
480         help
481           Support -a option to unmount all currently mounted filesystems.
482
483 comment "Common options for mount/umount"
484         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
485
486 config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
487         bool "Support loopback mounts"
488         default y
489         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
490         help
491           Enabling this feature allows automatic mounting of files (containing
492           filesystem images) via the linux kernel's loopback devices.  The mount
493           command will detect you are trying to mount a file instead of a block
494           device, and transparently associate the file with a loopback device.
495           The umount command will also free that loopback device.
496
497           You can still use the 'losetup' utility (to manually associate files
498           with loop devices) if you need to do something advanced, such as
499           specify an offset or cryptographic options to the loopback device.
500           (If you don't want umount to free the loop device, use "umount -D".)
501
502 config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
503         bool "Support for the old /etc/mtab file"
504         default n
505         depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
506         help
507           Historically, Unix systems kept track of the currently mounted
508           partitions in the file "/etc/mtab".  These days, the kernel exports
509           the list of currently mounted partitions in "/proc/mounts", rendering
510           the old mtab file obsolete.  (In modern systems, /etc/mtab should be
511           a symlink to /proc/mounts.)
512
513           The only reason to have mount maintain an /etc/mtab file itself is if
514           your stripped-down embedded system does not have a /proc directory.
515           If you must use this, keep in mind it's inherently brittle (for
516           example a mount under chroot won't update it), can't handle modern
517           features like separate per-process filesystem namespaces, requires
518           that your /etc directory be writeable, tends to get easily confused
519           by --bind or --move mounts, won't update if you rename a directory
520           that contains a mount point, and so on.  (In brief: avoid.)
521
522           About the only reason to use this is if you've removed /proc from
523           your kernel.
524
525 endmenu
526