2 # For a description of the syntax of this configuration file,
3 # see scripts/kbuild/config-language.txt.
6 menu "Linux System Utilities"
8 config BUSYBOX_CONFIG_DMESG
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 BUSYBOX_CONFIG_FEATURE_DMESG_PRETTY
21 bool "pretty dmesg output"
23 depends on BUSYBOX_CONFIG_DMESG
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 "<#>".
28 With this option you will see:
30 Linux version 2.6.17.4 .....
31 BIOS-provided physical RAM map:
32 BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
34 Without this option you will see:
36 <5>Linux version 2.6.17.4 .....
37 <6>BIOS-provided physical RAM map:
38 <6> BIOS-e820: 0000000000000000 - 000000000009f000 (usable)
40 config BUSYBOX_CONFIG_FBSET
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.
49 config BUSYBOX_CONFIG_FEATURE_FBSET_FANCY
50 bool "Turn on extra fbset options"
52 depends on BUSYBOX_CONFIG_FBSET
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
59 config BUSYBOX_CONFIG_FEATURE_FBSET_READMODE
60 bool "Turn on fbset readmode support"
62 depends on BUSYBOX_CONFIG_FBSET
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.
68 config BUSYBOX_CONFIG_FDFLUSH
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
80 config BUSYBOX_CONFIG_FDFORMAT
84 fdformat is used to low-level format a floppy disk.
86 config BUSYBOX_CONFIG_FDISK
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.
95 config BUSYBOX_CONFIG_FDISK_SUPPORT_LARGE_DISKS
96 bool "support over 4GB disks"
98 depends on BUSYBOX_CONFIG_FDISK
100 Enable this option to support large disks > 4GB.
102 config BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
105 depends on BUSYBOX_CONFIG_FDISK
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.
111 config BUSYBOX_CONFIG_FEATURE_AIX_LABEL
112 bool "Support AIX disklabels"
114 depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
116 Enabling this option allows you to create or change AIX disklabels.
117 Most people can safely leave this option disabled.
119 config BUSYBOX_CONFIG_FEATURE_SGI_LABEL
120 bool "Support SGI disklabels"
122 depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
124 Enabling this option allows you to create or change SGI disklabels.
125 Most people can safely leave this option disabled.
127 config BUSYBOX_CONFIG_FEATURE_SUN_LABEL
128 bool "Support SUN disklabels"
130 depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
132 Enabling this option allows you to create or change SUN disklabels.
133 Most people can safely leave this option disabled.
135 config BUSYBOX_CONFIG_FEATURE_OSF_LABEL
136 bool "Support BSD disklabels"
138 depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
140 Enabling this option allows you to create or change BSD disklabels
141 and define and edit BSD disk slices.
143 config BUSYBOX_CONFIG_FEATURE_FDISK_ADVANCED
144 bool "Support expert mode"
146 depends on BUSYBOX_CONFIG_FDISK && BUSYBOX_CONFIG_FEATURE_FDISK_WRITABLE
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.
153 config BUSYBOX_CONFIG_FREERAMDISK
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
164 config BUSYBOX_CONFIG_FSCK_MINIX
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
175 config BUSYBOX_CONFIG_MKFS_MINIX
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.
183 comment "Minix filesystem support"
184 depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
186 config BUSYBOX_CONFIG_FEATURE_MINIX2
187 bool "Support Minix fs v2 (fsck_minix/mkfs_minix)"
189 depends on BUSYBOX_CONFIG_FSCK_MINIX || BUSYBOX_CONFIG_MKFS_MINIX
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.
195 config BUSYBOX_CONFIG_GETOPT
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.
206 config BUSYBOX_CONFIG_HEXDUMP
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.
213 config BUSYBOX_CONFIG_HWCLOCK
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.
222 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_LONG_OPTIONS
223 bool "Support long options (--hctosys,...)"
225 depends on BUSYBOX_CONFIG_HWCLOCK && BUSYBOX_CONFIG_GETOPT_LONG
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.
231 config BUSYBOX_CONFIG_FEATURE_HWCLOCK_ADJTIME_FHS
232 bool "Use FHS /var/lib/hwclock/adjtime"
234 depends on BUSYBOX_CONFIG_HWCLOCK
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.
241 http://www.pathname.com/fhs/pub/fhs-2.3.html#VARLIBHWCLOCKSTATEDIRECTORYFORHWCLO
243 config BUSYBOX_CONFIG_IPCRM
246 select BUSYBOX_CONFIG_FEATURE_SUID
248 The ipcrm utility allows the removal of System V interprocess
249 communication (IPC) objects and the associated data structures
252 config BUSYBOX_CONFIG_IPCS
255 select BUSYBOX_CONFIG_FEATURE_SUID
257 The ipcs utility is used to provide information on the currently
258 allocated System V interprocess (IPC) objects in the system.
260 config BUSYBOX_CONFIG_LOSETUP
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.
268 config BUSYBOX_CONFIG_MDEV
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
277 config BUSYBOX_CONFIG_FEATURE_MDEV_CONF
278 bool "Support /etc/mdev.conf"
280 depends on BUSYBOX_CONFIG_MDEV
282 The mdev config file contains lines that look like:
284 hd[a-z][0-9]* 0:3 660
286 That's device name (with regex match), uid:gid, and permissions.
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.)
292 config BUSYBOX_CONFIG_FEATURE_MDEV_EXEC
293 bool "Support command execution at device addition/removal"
295 depends on BUSYBOX_CONFIG_FEATURE_MDEV_CONF
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:
301 hdc root:cdrom 660 *ln -s $MDEV cdrom
303 The $MDEV environment variable is set to the name of the device.
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.
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.
313 config BUSYBOX_CONFIG_MKSWAP
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.
326 config BUSYBOX_CONFIG_FEATURE_MKSWAP_V0
327 bool "version 0 support"
329 depends on BUSYBOX_CONFIG_MKSWAP
330 # depends on MKSWAP && BUSYBOX_CONFIG_DEPRECATED
332 Enable support for the old v0 style.
333 If your kernel is older than 2.1.117, then v0 support is the
336 config BUSYBOX_CONFIG_MORE
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.
346 config BUSYBOX_CONFIG_FEATURE_USE_TERMIOS
347 bool "Use termios to manipulate the screen"
349 depends on BUSYBOX_CONFIG_MORE
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.
357 config BUSYBOX_CONFIG_MOUNT
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
368 config BUSYBOX_CONFIG_FEATURE_MOUNT_NFS
369 bool "Support mounting NFS file systems"
371 depends on BUSYBOX_CONFIG_MOUNT
372 depends on BUSYBOX_CONFIG_FEATURE_HAVE_RPC
373 select BUSYBOX_CONFIG_FEATURE_SYSLOG
375 Enable mounting of NFS file systems.
377 config BUSYBOX_CONFIG_FEATURE_MOUNT_CIFS
378 bool "Support mounting CIFS/SMB file systems"
380 depends on BUSYBOX_CONFIG_MOUNT
382 Enable support for samba mounts.
384 config BUSYBOX_CONFIG_FEATURE_MOUNT_FLAGS
385 depends on BUSYBOX_CONFIG_MOUNT
386 bool "Support lots of -o flags in mount"
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.
394 config BUSYBOX_CONFIG_FEATURE_MOUNT_FSTAB
395 depends on BUSYBOX_CONFIG_MOUNT
396 bool "Support /etc/fstab and -a"
399 Support mount all and looking for files in /etc/fstab.
401 config BUSYBOX_CONFIG_PIVOT_ROOT
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'.
410 Note: This is for initrd in linux 2.4. Under initramfs (introduced
411 in linux 2.6) use switch_root instead.
413 config BUSYBOX_CONFIG_RDATE
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
422 config BUSYBOX_CONFIG_READPROFILE
426 This allows you to parse /proc/profile for basic profiling.
428 config BUSYBOX_CONFIG_SETARCH
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...).
437 config BUSYBOX_CONFIG_SWAPONOFF
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
448 config BUSYBOX_CONFIG_SWITCH_ROOT
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.)
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.
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.
467 config BUSYBOX_CONFIG_UMOUNT
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'.
476 config BUSYBOX_CONFIG_FEATURE_UMOUNT_ALL
477 bool "umount -a option"
479 depends on BUSYBOX_CONFIG_UMOUNT
481 Support -a option to unmount all currently mounted filesystems.
483 comment "Common options for mount/umount"
484 depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
486 config BUSYBOX_CONFIG_FEATURE_MOUNT_LOOP
487 bool "Support loopback mounts"
489 depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
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.
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".)
502 config BUSYBOX_CONFIG_FEATURE_MTAB_SUPPORT
503 bool "Support for the old /etc/mtab file"
505 depends on BUSYBOX_CONFIG_MOUNT || BUSYBOX_CONFIG_UMOUNT
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.)
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.)
522 About the only reason to use this is if you've removed /proc from