BusyBox: Command Help

BusyBox: Command Help

Как мы все знаем, в гипервизоре VMware ESXi нет Service Console. Вместо неё у ESXi есть другая, урезанная, консоль на основе BusyBox.

BusyBox is a software application that provides many standard Unix tools, much like the larger (but more capable) GNU Core Utilities. BusyBox is designed to be a small executable for use with the Linux kernel, which makes it ideal for use with embedded devices. (en.wikipedia.org)

Чуть ниже приведены команды (апплеты), которые доступны в оригинальном BusyBox:

[, [[, acpid, addgroup, adduser, adjtimex, ar, arp, arping, ash,

awk, basename, beep, blkid, brctl, bunzip2, bzcat, bzip2, cal, cat,
catv, chat, chattr, chgrp, chmod, chown, chpasswd, chpst, chroot,
chrt, chvt, cksum, clear, cmp, comm, cp, cpio, crond, crontab,
cryptpw, cut, date, dc, dd, deallocvt, delgroup, deluser, depmod,
devmem, df, dhcprelay, diff, dirname, dmesg, dnsd, dnsdomainname,
dos2unix, dpkg, du, dumpkmap, dumpleases, echo, ed, egrep, eject,
env, envdir, envuidgid, expand, expr, fakeidentd, false, fbset,
fbsplash, fdflush, fdformat, fdisk, fgrep, find, findfs, flash_lock,
flash_unlock, fold, free, freeramdisk, fsck, fsck.minix, fsync,
ftpd, ftpget, ftpput, fuser, getopt, getty, grep, gunzip, gzip, hd,
hdparm, head, hexdump, hostid, hostname, httpd, hush, hwclock, id,
ifconfig, ifdown, ifenslave, ifplugd, ifup, inetd, init, inotifyd,
insmod, install, ionice, ip, ipaddr, ipcalc, ipcrm, ipcs, iplink,
iproute, iprule, iptunnel, kbd_mode, kill, killall, killall5, klogd,
last, length, less, linux32, linux64, linuxrc, ln, loadfont,
loadkmap, logger, login, logname, logread, losetup, lpd, lpq, lpr,
ls, lsattr, lsmod, lzmacat, lzop, lzopcat, makemime, man, md5sum,
mdev, mesg, microcom, mkdir, mkdosfs, mkfifo, mkfs.minix, mkfs.vfat,
mknod, mkpasswd, mkswap, mktemp, modprobe, more, mount, mountpoint,
mt, mv, nameif, nc, netstat, nice, nmeter, nohup, nslookup, od,
openvt, passwd, patch, pgrep, pidof, ping, ping6, pipe_progress,
pivot_root, pkill, popmaildir, printenv, printf, ps, pscan, pwd,
raidautorun, rdate, rdev, readlink, readprofile, realpath,
reformime, renice, reset, resize, rm, rmdir, rmmod, route, rpm,
rpm2cpio, rtcwake, run-parts, runlevel, runsv, runsvdir, rx, script,
scriptreplay, sed, sendmail, seq, setarch, setconsole, setfont,
setkeycodes, setlogcons, setsid, setuidgid, sh, sha1sum, sha256sum,
sha512sum, showkey, slattach, sleep, softlimit, sort, split,
start-stop-daemon, stat, strings, stty, su, sulogin, sum, sv,
svlogd, swapoff, swapon, switch_root, sync, sysctl, syslogd, tac,
tail, tar, taskset, tcpsvd, tee, telnet, telnetd, test, tftp, tftpd,
time, timeout, top, touch, tr, traceroute, true, tty, ttysize,
udhcpc, udhcpd, udpsvd, umount, uname, uncompress, unexpand, uniq,
unix2dos, unlzma, unlzop, unzip, uptime, usleep, uudecode, uuencode,
vconfig, vi, vlock, volname, watch, watchdog, wc, wget, which, who,
whoami, xargs, yes, zcat, zcip

Но не все выше приведенные команды (апплеты) будут выполняться в VMware ESXi. Дело в том, что в ESXi присутствует более урезанная версия BusyBox. Ниже приведен список апплетов, которые доступны в ESXi редакции BusyBox:

[, [[, addgroup, adduser, ash, awk, basename, cat, chgrp, chmod, chown, chroot, chvt, cksum, clear, cp, crond, cut, date, dd, delgroup, deluser, df, diff, dirname, du, echo, egrep, eject, env, expr, false, fdisk, fgrep, find, ftpget, ftpput, getty, grep, groupadd, groupdel, groups, gunzip, gzip, halt, head, hexdump, hostname, id, inetd, init, kill, ln, loadkmap, lockfile, logger, login, ls, md5sum, mkdir, mkfifo, mknod, mktemp, more, mount, mv, nohup, nslookup, od, passwd, poweroff, printf, readlink, reboot, reset, resize, rm, rmdir, sed, seq, setsid, sh, sha1sum, sleep, sort, stat, stty, su, sum, sync, syslogd, tail, tar, tee, test, time, touch, true, umount, uname, uniq, uptime, useradd, userdel, usermod, usleep, vi, watch, wc, wget, which, whoami, xargs, zcat

Описание выше приведенных команд (всевозможных ключей и аргументов), можно посмотреть на официальном сайте проекта BusyBox в разделе Command Help.



P.S.

При написании данного поста понадобилось мне еще раз взглянуть на то, как организована справка в BusyBox. Для этого я решил выполнить в ESXi первую попавшуюся на глаза команду (из стандартного набора команд, приведенных чуть выше). Этой командой оказалась cksum. Еще раз повторю, что данную команду я выбрал совершенно случайно.

cksum — рассчитывает количество байт и контрольную сумму (CRC) в файле по стандарту ISO/IEC 8802-3:1989. (ru.wikipedia.org)

Так вот, чтобы увидеть справку по данной программе, я по привычке добавил ключ "-h" в конце команды и нажал Enter:

cksum.jpg

И вместо справки я опять получил Segmentation fault. Почему опять, да потому что совсем недавно я уже описывал другую ситуацию, при которой у меня так же выскакивала ошибка сегментации (Segmentation fault).



P.P.S.

    Version history
    Revision #:
    1 of 1
    Last update:
    ‎05-23-2011 03:59 AM
    Updated by: