Я пытаюсь установить BusyBox поверх ArchLinux, Fedora или Ubuntu. Так что, когда я telnet, я могу получить что-то вроде этого:

Но как мне начать? Просто установить Busybox поверх моего существующего дистрибутива? Это обернет все мои внешние сторонние библиотеки?

$ telnet 192.168.0.198 23
Trying 192.168.0.198...
Connected to 192.168.0.198.
Escape character is '^]'.

(none) login: root
Password: 


BusyBox v1.1.2 (2008.07.18-08:25+0000) Built-in shell (ash)
Enter 'help' for a list of built-in commands.

Welcome to HiLinux.
-sh: nfsroot: not found
~ $ help

Built-in commands:
-------------------
        . : alias bg break cd chdir command continue echo eval exec exit
        export false fg getopts hash help jobs kill let local pwd read
        readonly return set shift times trap true type ulimit umask unalias
        unset wait
~ $ man alias
-sh: man: not found

Следовать за:

Для эксперимента я попробовал на полномасштабную установленную единицу:

0) бэкэнд операционной системы это Arch, Ubuntu, Fedora, CentOS

1) установить занятое окно на все

2) запустить busybox

$ busybox
BusyBox v1.17.1 (Ubuntu 1:1.17.1-10ubuntu1) multi-call binary.
Copyright (C) 1998-2009 Erik Andersen, Rob Landley, Denys Vlasenko
and others. Licensed under GPLv2.
See source distribution for full notice.

Usage: busybox [function] [arguments]...
   or: function [arguments]...

    BusyBox is a multi-call binary that combines many common Unix
    utilities into a single executable.  Most people will create a
    link to busybox for each function they wish to use and BusyBox
    will act like whatever it was invoked as.

Currently defined functions:
    [, [[, adjtimex, arping, ash, awk, basename, blockdev, brctl, bunzip2, bzcat,
    bzip2, cal, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cpio, cut,
    date, dc, dd, deallocvt, df, dirname, dmesg, dnsdomainname, dos2unix, du,
    dumpkmap, dumpleases, echo, egrep, env, expr, false, fgrep, find, fold, free,
    ftpget, ftpput, getopt, grep, gunzip, gzip, head, hexdump, hostid, hostname,
    httpd, id, ifconfig, ionice, ip, ipcalc, kill, killall, klogd, last, length,
    ln, loadfont, loadkmap, logger, logname, logread, losetup, ls, lzcat, lzma,
    md5sum, mdev, mkdir, mkfifo, mknod, mktemp, more, mount, mt, mv, nameif, nc,
    netstat, nslookup, od, openvt, patch, pidof, ping, ping6, printf, ps, pwd,
    rdate, readlink, realpath, renice, reset, rev, rm, rmdir, route, rpm, rpm2cpio,
    run-parts, sed, setkeycodes, sh, sha1sum, sha256sum, sha512sum, sleep, sort,
    start-stop-daemon, static-sh, strings, stty, swapoff, swapon, sync, sysctl,
    syslogd, tac, tail, tar, tee, telnet, test, tftp, time, top, touch, tr,
    traceroute, traceroute6, true, tty, udhcpc, udhcpd, umount, uname, uncompress,
    uniq, unix2dos, unlzma, unxz, unzip, uptime, usleep, uudecode, uuencode, vi,
    watch, watchdog, wc, wget, which, who, whoami, xargs, xz, xzcat, yes, zcat

1 ответ1

2

«BusyBox - это двоичный файл с несколькими вызовами, который объединяет множество общих утилит Unix в один исполняемый файл».

Сам BusyBox не может быть запущен, как вы просите в заголовке. BusyBox не такой пользовательский интерфейс, как MythTV или XBMC. Не уверен, что вы подразумеваете под установкой "поверх" уже установленного дистрибутива, так как исполняемый файл BusyBox может быть установлен в файловой системе вместе со всеми другими утилитами. Только тогда, когда вы начнете заменять стандартные утилиты символическими ссылками на версию BusyBox, вы будете прервать установку.

Так что, когда я telnet, я могу получить что-то вроде этого:

Если вы хотите использовать версию BusyBox по телнету вместо версию дистрибутива в телнете, то вам придется редактировать скрипты (уровня запуска или конфигурацию Inetd) использовать BusyBox телнет, Telnetd вместо Telnetd дистрибутива.

Для быстрого эксперимента проверьте, запущены ли в вашей системе какие-либо демоны telnet или inet , перечислив все процессы:

$ ps -A | grep net

Если есть демон telnetd или inetd, вам придется остановить службу или убить демон. Если демонов telnetd или inetd нет, то вы можете вручную запустить демон telnetd BusyBox с помощью (возможно, придется вводить предисловие с помощью sudo):

$ busybox telnetd 

Конечно, после того, как вы подключите telnet к ПК, оболочка все равно, вероятно, будет вызывать утилиты дистрибутива в соответствии с PATH, а не с версиями BusyBox. Вам придется либо установить символические ссылки, либо явно использовать

$ busybox [function] [arguments]...

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .