2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
6 menu "Linux System Utilities"
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.
20 config FEATURE_DMESG_PRETTY
21 bool "Pretty dmesg output"
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
29 With this option you will see:
31 Linux version 2.6.17.4 .....
32 BIOS-provided physical RAM map:
33 BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
35 Without this option you will see:
37 <5>Linux version 2.6.17.4 .....
38 <6>BIOS-provided physical RAM map:
39 <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
45 fbset is used to show or change the settings of a Linux frame buffer
46 device. The frame buffer device provides a simple and unique
47 interface to access a graphics display. Enable this option
48 if you wish to enable the 'fbset' utility.
50 config FEATURE_FBSET_FANCY
51 bool "Turn on extra fbset options"
55 This option enables extended fbset options, allowing one to set the
56 framebuffer size, color depth, etc. interface to access a graphics
57 display. Enable this option if you wish to enable extended fbset
60 config FEATURE_FBSET_READMODE
61 bool "Turn on fbset readmode support"
65 This option allows fbset to read the video mode database stored by
66 default as /etc/fb.modes, which can be used to set frame buffer
67 device to pre-defined video modes.
73 fdflush is only needed when changing media on slightly-broken
74 removable media drives. It is used to make Linux believe that a
75 hardware disk-change switch has been actuated, which causes Linux to
76 forget anything it has cached from the previous media. If you have
77 such a slightly-broken drive, you will need to run fdflush every time
78 you change a disk. Most people have working hardware and can safely
85 fdformat is used to low-level format a floppy disk.
91 The fdisk utility is used to divide hard disks into one or more
92 logical disks, which are generally called partitions. This utility
93 can be used to list and edit the set of partitions or BSD style
94 'disk slices' that are defined on a hard drive.
96 config FDISK_SUPPORT_LARGE_DISKS
97 bool "Support over 4GB disks"
101 Enable this option to support large disks > 4GB.
103 config FEATURE_FDISK_WRITABLE
108 Enabling this option allows you to create or change a partition table
109 and write those changes out to disk. If you leave this option
110 disabled, you will only be able to view the partition table.
112 config FEATURE_AIX_LABEL
113 bool "Support AIX disklabels"
115 depends on FDISK && FEATURE_FDISK_WRITABLE
117 Enabling this option allows you to create or change AIX disklabels.
118 Most people can safely leave this option disabled.
120 config FEATURE_SGI_LABEL
121 bool "Support SGI disklabels"
123 depends on FDISK && FEATURE_FDISK_WRITABLE
125 Enabling this option allows you to create or change SGI disklabels.
126 Most people can safely leave this option disabled.
128 config FEATURE_SUN_LABEL
129 bool "Support SUN disklabels"
131 depends on FDISK && FEATURE_FDISK_WRITABLE
133 Enabling this option allows you to create or change SUN disklabels.
134 Most people can safely leave this option disabled.
136 config FEATURE_OSF_LABEL
137 bool "Support BSD disklabels"
139 depends on FDISK && FEATURE_FDISK_WRITABLE
141 Enabling this option allows you to create or change BSD disklabels
142 and define and edit BSD disk slices.
144 config FEATURE_FDISK_ADVANCED
145 bool "Support expert mode"
147 depends on FDISK && FEATURE_FDISK_WRITABLE
149 Enabling this option allows you to do terribly unsafe things like
150 define arbitrary drive geometry, move the beginning of data in a
151 partition, and similarly evil things. Unless you have a very good
152 reason you would be wise to leave this disabled.
159 This is similar to the findfs program that is part of the e2fsprogs
160 package. However, the e2fsprogs version only support ext2/3. This
161 version supports those in addition to FAT, swap, and ReiserFS.
163 With all submodules selected, it will add ~8k to busybox.
169 Linux allows you to create ramdisks. This utility allows you to
170 delete them and completely free all memory that was used for the
171 ramdisk. For example, if you boot Linux into a ramdisk and later
172 pivot_root, you may want to free the memory that is allocated to the
173 ramdisk. If you have no use for freeing memory from a ramdisk, leave
180 The minix filesystem is a nice, small, compact, read-write filesystem
181 with little overhead. It is not a journaling filesystem however and
182 can experience corruption if it is not properly unmounted or if the
183 power goes off in the middle of a write. This utility allows you to
184 check for and attempt to repair any corruption that occurs to a minix
191 The minix filesystem is a nice, small, compact, read-write filesystem
192 with little overhead. If you wish to be able to create minix
193 filesystems this utility will do the job for you.
195 comment "Minix filesystem support"
196 depends on FSCK_MINIX || MKFS_MINIX
198 config FEATURE_MINIX2
199 bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
201 depends on FSCK_MINIX || MKFS_MINIX
203 If you wish to be able to create version 2 minix filesystems, enable
204 this. If you enabled 'mkfs_minix' then you almost certainly want to
205 be using the version 2 filesystem support.
211 The getopt utility is used to break up (parse) options in command
212 lines to make it easy to write complex shell scripts that also check
213 for legal (and illegal) options. If you want to write horribly
214 complex shell scripts, or use some horribly complex shell script
215 written by others, this utility may be for you. Most people will
216 wisely leave this disabled.
222 The hexdump utility is used to display binary data in a readable
223 way that is comparable to the output from most hex editors.
225 config FEATURE_HEXDUMP_REVERSE
226 bool "Support -R, reverse of 'hexdump -Cv'"
230 The hexdump utility is used to display binary data in an ascii
231 readable way. This option creates binary data from an ascii input.
232 NB: this option is non-standard. It's unwise to use it in scripts
233 aimed to be portable.
240 hd is an alias to hexdump -C.
246 The hwclock utility is used to read and set the hardware clock
247 on a system. This is primarily used to set the current time on
248 shutdown in the hardware clock, so the hardware will keep the
249 correct time when Linux is _not_ running.
251 config FEATURE_HWCLOCK_LONG_OPTIONS
252 bool "Support long options (--hctosys,...)"
254 depends on HWCLOCK && GETOPT_LONG
256 By default, the hwclock utility only uses short options. If you
257 are overly fond of its long options, such as --hctosys, --utc, etc)
258 then enable this option.
260 config FEATURE_HWCLOCK_ADJTIME_FHS
261 bool "Use FHS /var/lib/hwclock/adjtime"
265 Starting with FHS 2.3, the adjtime state file is supposed to exist
266 at /var/lib/hwclock/adjtime instead of /etc/adjtime. If you wish
267 to use the FHS behavior, answer Y here, otherwise answer N for the
268 classic /etc/adjtime path.
270 http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
277 The ipcrm utility allows the removal of System V interprocess
278 communication (IPC) objects and the associated data structures
286 The ipcs utility is used to provide information on the currently
287 allocated System V interprocess (IPC) objects in the system.
293 losetup is used to associate or detach a loop device with a regular
294 file or block device, and to query the status of a loop device. This
295 version does not currently support enabling data encryption.
301 mdev is a mini-udev implementation for dynamically creating device
302 nodes in the /dev directory.
304 For more information, please see docs/mdev.txt
306 config FEATURE_MDEV_CONF
307 bool "Support /etc/mdev.conf"
311 Add support for the mdev config file to control ownership and
312 permissions of the device nodes.
314 For more information, please see docs/mdev.txt
316 config FEATURE_MDEV_RENAME
317 bool "Support subdirs/symlinks"
319 depends on FEATURE_MDEV_CONF
321 Add support for renaming devices and creating symlinks.
323 For more information, please see docs/mdev.txt
325 config FEATURE_MDEV_RENAME_REGEXP
326 bool "Support regular expressions substitutions when renaming device"
328 depends on FEATURE_MDEV_RENAME
330 Add support for regular expressions substitutions when renaming
333 config FEATURE_MDEV_EXEC
334 bool "Support command execution at device addition/removal"
336 depends on FEATURE_MDEV_CONF
338 This adds support for an optional field to /etc/mdev.conf for
339 executing commands when devices are created/removed.
341 For more information, please see docs/mdev.txt
343 config FEATURE_MDEV_LOAD_FIRMWARE
344 bool "Support loading of firmwares"
348 Some devices need to load firmware before they can be usable.
350 These devices will request userspace look up the files in
351 /lib/firmware/ and if it exists, send it to the kernel for
352 loading into the hardware.
358 The mkswap utility is used to configure a file or disk partition as
359 Linux swap space. This allows Linux to use the entire file or
360 partition as if it were additional RAM, which can greatly increase
361 the capability of low-memory machines. This additional memory is
362 much slower than real RAM, but can be very helpful at preventing your
363 applications being killed by the Linux out of memory (OOM) killer.
364 Once you have created swap space using 'mkswap' you need to enable
365 the swap space using the 'swapon' utility.
367 config FEATURE_MKSWAP_V0
368 bool "Version 0 support"
371 # depends on MKSWAP && DEPRECATED
373 Enable support for the old v0 style.
374 If your kernel is older than 2.1.117, then v0 support is the
381 more is a simple utility which allows you to read text one screen
382 sized page at a time. If you want to read text that is larger than
383 the screen, and you are using anything faster than a 300 baud modem,
384 you will probably find this utility very helpful. If you don't have
385 any need to reading text files, you can leave this disabled.
387 config FEATURE_USE_TERMIOS
388 bool "Use termios to manipulate the screen"
390 depends on MORE || TOP
392 This option allows utilities such as 'more' and 'top' to determine
393 the size of the screen. If you leave this disabled, your utilities
394 that display things on the screen will be especially primitive and
395 will be unable to determine the current screen size, and will be
396 unable to move the cursor.
399 bool "Routines for detecting label and uuid on common filesystems"
404 config FEATURE_VOLUMEID_EXT
405 bool "Ext filesystem"
411 config FEATURE_VOLUMEID_REISERFS
412 bool "Reiser filesystem"
418 config FEATURE_VOLUMEID_FAT
419 bool "fat filesystem"
425 config FEATURE_VOLUMEID_HFS
426 bool "hfs filesystem"
432 config FEATURE_VOLUMEID_JFS
433 bool "jfs filesystem"
439 ### config FEATURE_VOLUMEID_UFS
440 ### bool "ufs filesystem"
442 ### depends on VOLUMEID
446 config FEATURE_VOLUMEID_XFS
447 bool "xfs filesystem"
453 config FEATURE_VOLUMEID_NTFS
454 bool "ntfs filesystem"
460 config FEATURE_VOLUMEID_ISO9660
461 bool "iso9660 filesystem"
467 config FEATURE_VOLUMEID_UDF
468 bool "udf filesystem"
474 config FEATURE_VOLUMEID_LUKS
475 bool "luks filesystem"
481 config FEATURE_VOLUMEID_LINUXSWAP
482 bool "linux swap filesystem"
488 ### config FEATURE_VOLUMEID_LVM
491 ### depends on VOLUMEID
495 config FEATURE_VOLUMEID_CRAMFS
496 bool "cramfs filesystem"
502 ### config FEATURE_VOLUMEID_HPFS
503 ### bool "hpfs filesystem"
505 ### depends on VOLUMEID
509 config FEATURE_VOLUMEID_ROMFS
510 bool "romfs filesystem"
516 config FEATURE_VOLUMEID_SYSV
517 bool "sysv filesystem"
523 ### config FEATURE_VOLUMEID_MINIX
524 ### bool "minix filesystem"
526 ### depends on VOLUMEID
530 ### These only detect partition tables - not used (yet?)
531 ### config FEATURE_VOLUMEID_MAC
532 ### bool "mac filesystem"
534 ### depends on VOLUMEID
538 ### config FEATURE_VOLUMEID_MSDOS
539 ### bool "msdos filesystem"
541 ### depends on VOLUMEID
545 config FEATURE_VOLUMEID_OCFS2
546 bool "ocfs2 filesystem"
552 ### config FEATURE_VOLUMEID_HIGHPOINTRAID
553 ### bool "highpoint raid"
555 ### depends on VOLUMEID
559 ### config FEATURE_VOLUMEID_ISWRAID
560 ### bool "intel raid"
562 ### depends on VOLUMEID
566 ### config FEATURE_VOLUMEID_LSIRAID
569 ### depends on VOLUMEID
573 ### config FEATURE_VOLUMEID_VIARAID
576 ### depends on VOLUMEID
580 ### config FEATURE_VOLUMEID_SILICONRAID
581 ### bool "silicon raid"
583 ### depends on VOLUMEID
587 ### config FEATURE_VOLUMEID_NVIDIARAID
588 ### bool "nvidia raid"
590 ### depends on VOLUMEID
594 ### config FEATURE_VOLUMEID_PROMISERAID
595 ### bool "promise raid"
597 ### depends on VOLUMEID
601 config FEATURE_VOLUMEID_LINUXRAID
612 All files and filesystems in Unix are arranged into one big directory
613 tree. The 'mount' utility is used to graft a filesystem onto a
614 particular part of the tree. A filesystem can either live on a block
615 device, or it can be accessible over the network, as is the case with
616 NFS filesystems. Most people using BusyBox will also want to enable
619 config FEATURE_MOUNT_FAKE
620 bool "Support option -f"
624 Enable support for faking a file system mount.
626 config FEATURE_MOUNT_VERBOSE
627 bool "Support option -v"
631 Enable multi-level -v[vv...] verbose messages. Useful if you
632 debug mount problems and want to see what is exactly passed
635 config FEATURE_MOUNT_HELPERS
636 bool "Support mount helpers"
640 Enable mounting of virtual file systems via external helpers.
641 E.g. "mount obexfs#-b00.11.22.33.44.55 /mnt" will in effect call
642 "obexfs -b00.11.22.33.44.55 /mnt"
643 Also "mount -t sometype [-o opts] fs /mnt" will try
644 "sometype [-o opts] fs /mnt" if simple mount syscall fails.
645 The idea is to use such virtual filesystems in /etc/fstab.
647 config FEATURE_MOUNT_LABEL
648 bool "Support specifiying devices by label or UUID"
653 This allows for specifying a device by label or uuid, rather than by
654 name. This feature utilizes the same functionality as findfs.
656 config FEATURE_MOUNT_NFS
657 bool "Support mounting NFS file systems"
660 select FEATURE_HAVE_RPC
661 select FEATURE_SYSLOG
663 Enable mounting of NFS file systems.
665 config FEATURE_MOUNT_CIFS
666 bool "Support mounting CIFS/SMB file systems"
670 Enable support for samba mounts.
672 config FEATURE_MOUNT_FLAGS
674 bool "Support lots of -o flags in mount"
677 Without this, mount only supports ro/rw/remount. With this, it
678 supports nosuid, suid, dev, nodev, exec, noexec, sync, async, atime,
679 noatime, diratime, nodiratime, loud, bind, move, shared, slave,
680 private, unbindable, rshared, rslave, rprivate, and runbindable.
682 config FEATURE_MOUNT_FSTAB
684 bool "Support /etc/fstab and -a"
687 Support mount all and looking for files in /etc/fstab.
693 The pivot_root utility swaps the mount points for the root filesystem
694 with some other mounted filesystem. This allows you to do all sorts
695 of wild and crazy things with your Linux system and is far more
696 powerful than 'chroot'.
698 Note: This is for initrd in linux 2.4. Under initramfs (introduced
699 in linux 2.6) use switch_root instead.
705 The rdate utility allows you to synchronize the date and time of your
706 system clock with the date and time of a remote networked system using
707 the RFC868 protocol, which is built into the inetd daemon on most
714 This allows you to parse /proc/profile for basic profiling.
720 Enter a system sleep state until specified wakeup time.
726 The script makes typescript of terminal session.
732 The linux32 utility is used to create a 32bit environment for the
733 specified program (usually a shell). It only makes sense to have
734 this util on a system that supports both 64bit and 32bit userland
735 (like amd64/x86, ppc64/ppc, sparc64/sparc, etc...).
741 This option enables both the 'swapon' and the 'swapoff' utilities.
742 Once you have created some swap space using 'mkswap', you also need
743 to enable your swap space with the 'swapon' utility. The 'swapoff'
744 utility is used, typically at system shutdown, to disable any swap
745 space. If you are not using any swap space, you can leave this
748 config FEATURE_SWAPON_PRI
749 bool "Support priority option -p"
753 Enable support for setting swap device priority in swapon.
759 The switch_root utility is used from initramfs to select a new
760 root device. Under initramfs, you have to use this instead of
761 pivot_root. (Stop reading here if you don't care why.)
763 Booting with initramfs extracts a gzipped cpio archive into rootfs
764 (which is a variant of ramfs/tmpfs). Because rootfs can't be moved
765 or unmounted*, pivot_root will not work from initramfs. Instead,
766 switch_root deletes everything out of rootfs (including itself),
767 does a mount --move that overmounts rootfs with the new root, and
768 then execs the specified init program.
770 * Because the Linux kernel uses rootfs internally as the starting
771 and ending point for searching through the kernel's doubly linked
772 list of active mount points. That's why.
778 When you want to remove a mounted filesystem from its current mount
779 point, for example when you are shutting down the system, the
780 'umount' utility is the tool to use. If you enabled the 'mount'
781 utility, you almost certainly also want to enable 'umount'.
783 config FEATURE_UMOUNT_ALL
784 bool "Support option -a"
788 Support -a option to unmount all currently mounted filesystems.
790 comment "Common options for mount/umount"
791 depends on MOUNT || UMOUNT
793 config FEATURE_MOUNT_LOOP
794 bool "Support loopback mounts"
796 depends on MOUNT || UMOUNT
798 Enabling this feature allows automatic mounting of files (containing
799 filesystem images) via the linux kernel's loopback devices.
800 The mount command will detect you are trying to mount a file instead
801 of a block device, and transparently associate the file with a
802 loopback device. The umount command will also free that loopback
805 You can still use the 'losetup' utility (to manually associate files
806 with loop devices) if you need to do something advanced, such as
807 specify an offset or cryptographic options to the loopback device.
808 (If you don't want umount to free the loop device, use "umount -D".)
810 config FEATURE_MTAB_SUPPORT
811 bool "Support for the old /etc/mtab file"
813 depends on MOUNT || UMOUNT
814 select FEATURE_MOUNT_FAKE
816 Historically, Unix systems kept track of the currently mounted
817 partitions in the file "/etc/mtab". These days, the kernel exports
818 the list of currently mounted partitions in "/proc/mounts", rendering
819 the old mtab file obsolete. (In modern systems, /etc/mtab should be
820 a symlink to /proc/mounts.)
822 The only reason to have mount maintain an /etc/mtab file itself is if
823 your stripped-down embedded system does not have a /proc directory.
824 If you must use this, keep in mind it's inherently brittle (for
825 example a mount under chroot won't update it), can't handle modern
826 features like separate per-process filesystem namespaces, requires
827 that your /etc directory be writeable, tends to get easily confused
828 by --bind or --move mounts, won't update if you rename a directory
829 that contains a mount point, and so on. (In brief: avoid.)
831 About the only reason to use this is if you've removed /proc from