Busybox linux что это такое

BusyBox — Для чего нужно это приложение?

Busybox по сути является набором консольных утилит Linux систем. Необходим, например, для работы app2sd или программ для разгона или чего-нибудь подобного, что требует подключения сторонних модулей ядра. В большинстве кастомных прошивок он уже встроен.

Для функционирования программы необходимы права root пользователя.

Мини-FAQ по программе

Как с помощью этой программы разогнать процессор?
-Никак. Busybox нужен для некоторых программ, выполняющих разгон. Вопросы по разгону задавайте в топике своего аппарата.

-Как узнать установлен ли Busybox и какая версия?
-Устанавливаем Android Terminal Emulator, пишем в нем busybox, если он установлен, то будет написана версия и выйдет краткая справка по коммандам.

— Для чего нужны команды busybox и что такое «Терминал»
— Если вы не в курсе, что это такое, то вам это не нужно, поверьте на слово. Но для развития полезно. Android Terminal Emulator. Для более продвинутых — Better Terminal — освоить сложней, но больше полезностей. Есть еще терминал основанный на собственном методе Кевина Бона, использующий не busybox, а kbox, никому пока ранее неизвестный автор сделал нечто новое и привлекательное, так как его терминал работает на девайсах без рута. По поводу команд. Если вы новичок, то стоит заглянуть в гугл-поиск и вбить — «команды терминала linux» или android. Команды нужны исключительно для удобства управления системой и если вы обычный пользователь, вам это не нужно в повседневной жизни. Но сам busybox необходим в основном программам требующих рут права, для правильного функционирования.

— Можно ли удалить приложение после установки busybox?
-Да.

Внимание!
1) В CyanogenMod и MIUI BusyBox уже установлен.
2) Почти во всех кастомных прошивках BusyBox уже установлен. В редких случаях обновление busybox может убить прошивку или привести к неработоспособности некоторых функций, программ.
3) Убедительно советую перед установкой делать android бэкап системного раздела.
4) Прочитать перед установкой:

Требования

Должно быть 3 мегабайта свободного места в каталоге /system
Если вы не в курсе, не делаете этого, так как вам это 100% не нужно!
Этот busybox исключительно для профи.

Чистая установка или если программа уже стоит

0. Удалить на карте файлы: «busybox-stericson» «toolbox-stericson», stericson-ls если есть. Зайти в приложения/управление/сделать остановку программы/удалить данные.
1. Установите программу busybox по ссылке внизу или если имеется более новую. Сам инсталлятор.
2. Положите busybox на карту памяти в любое, удобное для вас место. Запустите программу и дождитесь окончания сканирования.
3. Выберите кастомную установку и укажите путь у файлу.
4. Выберите обязательно каталог /system/bin
5. Поставьте галочку на чеке: Clean Mode
6. Выберите Install, а затем Smart install
7. Дождитесь конца установки и перезагрузите аппарат
8. Зайдите снова в программу и дождитесь окончания сканирования.
9. Поставьте галочку на чеке: Replace All
10. Выберите Install, а затем Smart install.
11. Перезагрузить телефон. И удалить лишнее руками (профи знают)

Простая установка

1. Установите программу busybox из шапки или если имеется более новую. Сам инсталлятор.
2. Положите busybox на карту памяти в любое, удобное для вас место.
3. Запустите программу и дождитесь окончания сканирования.
4. Выберите кастомную установку и укажите путь у файлу
5. Выберите Install, а затем Normal install
6. Нужные аплеты добавить в командной строке или рут эксплорером создать симлинки.

Что такое симлинк?

Симлинк это — символическая ссылка на указанный файл, то есть ярлык для выполнения команд системы. Как выглядит симлинк на busybox ? — смотрим скриншот, если заглянуть в папку system/xbin у файлов есть стрелка вправо указывающая на busybox — это и есть симлинк.

Какие симлинки должны быть в папке system/bin и как их восстановить?

Раз у многих стоят проблемные моды, проверяем наличие основных команд toolbox в папке system/bin Если нет симлинка, восстанавливаем командой:

ln -s toolbox /system/bin/ симлинк

в adb или через терминал на телефоне. Пример:

ln -s toolbox /system/bin/chown

Если вам не удобно удалять лишние симлинки busybox руками, это можно сделать, так же командой:

Читайте также:  Windows 2012 поддерживает процессоры

rm /system/xbin/ симлинк

смотрим путь. В данном случае симлинк удаляется из папки xbin. Можно в команде изменить путь на bin.
Так же, напоминаю тем, кто не знает: Команды busybox не должны повторять команды toolbox. Это означает, что если команда busybox имеется, то ее надо удалить. Основные команды прошивок читайте или спрашивайте в темах своей модели аппарата.

Основные команды андройда — Симлинки

cat
chmod
chown
cmp
date
dd
df
dmesg
getevent
getprop
hd
id
ifconfig
iftop
insmod
ioctl
ionice
kill
ln
log
ls
lsmod
mkdir
mount
mv
nandread
netstat
newfs_msdos
notify
printenv
ps
reboot
renice
rm
rmdir
rmmod
route
schedtop
sendevent
setconsole
setprop
sleep
smd
start
stop
sync
top
umount
vmstat
watchprops
wipe

Основные команды для работы с BusyBox

Команды для работы с файлами

pwd – показать текущий каталог ( каталог в котором находится пользователь)
ls – вывести список файлов и каталогов
ls -al – форматированный список со скрытыми каталогами и файлами
cd /etc – сменить директорию на /etc
cd – сменить на домашний каталог
mkdir mydir – создать каталог mydir
rm file.txt – удалить file.txt
rm -r mydir – удалить рекурсивно каталог mydir
rm -f file.txt – удалить форсированно file.txt
rm -rf mydir – удалить форсированно каталог с подкаталогами mydir
cp file1 file2.txt – скопировать file1 в file2.txt
cp -r dir mydir – скопировать dir в mydir; создаст каталог mydir, если он не существует
mv file2.txt file2 – переименовать или переместить file2.txt в file2.
Если file2 существующий каталог — перемещает file2.txt в каталог file2
ln -s file filelink – создать символическую ссылку filelink к файлу file
touch myfile – создать файл myfile
cat > file.txt – направить стандартный ввод в файл file.txt
cat file.txt — вывести содержимое файла file.txt
more file.txt – вывести содержимое файла file.txt
head file.txt – вывести первые 10 строк файла file.txt на консоль
tail file.txt – вывести последние 10 строк файла file.txt на консоль
tail -f file.txt – вывести содержимое файла file.txt по мере его роста, начинает с последних 10 строк
> — Перенаправление с одного места в другое, например:
Выведем последние 10строк с файла test и вставим их в файл oktest, для этого выполним такую команду:
tail test > oktest
Если файл oktest не существовал, то он создастся.

Управление процессами в BusyBox

ps – вывести текущие пользовательские активные процессы
top – показать все запущенные процессы и краткую информацию о ресурсах системы
kill pid – убить процесс id которого pid
killall proces – убить все процессы с именем proces
bg – список остановленных и фоновых задач; продолжить выполнение остановленной задачи в фоне
fg – выносит на передний план последние задачи
fg n – вынести задачу n на передний план

Права доступа на файлы в BusyBox

chmod 640 file – замена прав доступа файла file на 640. Права назначаются раздельно для пользователя,
группы и для всех остальных сложением:
4 – чтение ®
2 – запись (w)
1 – исполнение (x)

chmod 777 – чтение, запись, исполнение для всех пользователей
chmod 751 – чтение, запись, исполнение для владельца; чтение, исполнение для группы;
и только исполнение для остальных пользователей.

Дополнительные опции можно посмотреть набрав команду — man chmod

Системная информация в BusyBox

date – вывести текущую дату и время роутера
cal – вывести календарь на текущий месяц
uptime – показать текущий аптайм (время работы системы с момента её загрузки)
w – показать пользователей онлайн
whoami – имя, под которым вы залогинены
finger user – показать информацию о пользователе user
uname -a – показать информацию о ядре
cat /proc/cpuinfo – информация о процессоре
cat /proc/meminfo – информация о памяти
man command – показать мануал для команды command
df – показать информацию о использовании дисков
du dir – вывести “вес” каталога dir
free – использование памяти и swap
whereis app – возможное расположение программы app
which app – какая app будет запущена по умолчанию

Использование SSH в BusyBox

ssh user@host – подключится к host как пользователь user
ssh -p port user@host – подключится к узлу host на порт port как пользователь user
ssh-copy-id user@host – добавить ваш ключ на узел host для пользователя user чтобы включить вход
логина без пароля и по ключам

Читайте также:  Eviews для windows 10

Как осуществляется поиск в BusyBox

grep pattern files – искать pattern в файле files
grep -r pattern dir – искать рекурсивно pattern в директории dir
command | grep pattern – искать pattern в выводе command
locate file – найти все файлы с именем file

Процессы архивации при наличии установленных tar и gzip пакетах в BusyBox

tar cf file1.tar files1 – создать tar-архив с именем file1.tar содержащий файл files1
tar xf file1.tar – распаковать архив file1.tar
tar czf file1.tar.gz files1 – создать архив file1.tar.gz со сжатием Gzip
tar xzf file1.tar.gz – распаковать архив tar с Gzip сжатием
tar cjf file1.tar.bz2 – создать архив file1.tar.bz2 со сжатием Bzip2
tar xjf file1.tar.bz2 – распаковать архив tar с Bzip2 сжатием
gzip file1 – сжать file1 и переименовать в file1.gz
gzip -d file1.gz – разжать file1.gz в file1

Настройка сети в BusyBox

ifconfig – показать настройки найденных сетевых интерфейсов
ping host – пропинговать узел host и вывести результат
whois domain – получить информацию whois для домена domain
dig domain – получить DNS информацию для домена domain
dig -x host – реверсивно искать информацию DNS об узле host
wget file – скачать файл file
wget -c file – продолжить остановленную или оборванную закачку файла file

Установка\удаление программ из пакетов в BusyBox

/opt/bin/ipkg-opt install название программы/пакета (установка)
/opt/bin/ipkg-opt remove название программы/пакета (удаление)
dpkg -i pkg.deb – установка пакета (Debian)
rpm -Uvh pkg.rpm – установка пакета (RPM)

Установка из исходников

cd application-1.0.2
./configure
make
make install

Быстрые короткие команды

Ctrl+C – завершить текущую команду
Ctrl+Z – остановить текущую команду, продолжть с fg на переднем плане или bg в фоне
Ctrl+D – разлогиниться, тоже самое, что и exit
Ctrl+W – удалить одно слово в текущей строке
Ctrl+U – удалить строку
!! — повторяет выполнение последней введенной команды.
exit – выход, то есть разлогинивание.
Это чтобы по интернету не шариться в поисках.

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

BusyBox

BusyBox
  • Linux на встроенных системах
  • Linux для мобильных устройств
Создатели: Брюс Перенс
Разработчики: Эрик Андерсен, Роб Лендли, Денис Власенко и другие
Выпущена: 4 November 1999 года ; 21 years ago ( 1999-11-04 )
Состояние разработки: Действующий
Написана на: C
Операционная система: Unix-подобные
Размер дистрибутива: 2.1 MB
Тип ПО:
Лицензия: GNU GPL (General Public License) (versions 1.2.3 or later)
Веб-сайт www .busybox .net

BusyBox — набор UNIX-утилит командной строки, используется в качестве основного интерфейса во встраиваемых операционных системах. Преимуществами этого приложения являются малый размер и низкие требования к аппаратуре. Оно представляет собой единый файл (это позволяет сэкономить дисковое пространство).

Содержание

Особенности проекта

Начало проекту BusyBox было положено в средине 90‑х гг. прошлого века Брюсом Перенсом (Bruce Perens). Первоначально утилита использовалась в загрузочных дискетах с ОС Linux. Применение BusyBox как программного инструмента встраиваемых систем началось в 1998 г. с проекта легковесного маршрутизатора на основе Linux (Linux Router Project, LRP). Последняя версия 1.26.0 (20 декабря 2016 ), а основным его разработчиком является Денис Власенко. Распространяется программа в рамках свободной лицензии GNU GPL версии 2. Утилита BusyBox оптимизирована с учетом ограниченных ресурсов среды выполнения. Модульная структура позволяет добавлять или удалять команды и опции на этапе компиляции, что позволяет «кастомизировать» встроенную систему по собственному вкусу. Разумеется, BusyBox предоставляет меньше функциональности, чем полновесные GNU-аналоги, реализуя лишь самые распространенные опции и поведение традиционного окружения Unix. Однако приведенный на странице помощи список встроенных в исполняемый файл утилиты команд (в терминологии BusyBox — апплетов) весьма большой. В Linux релизы BusyBox совместимы с библиотеками UClibc (начиная с версии 0.9.27) и Glibc (начиная с версии 2.2) . Стандартная библиотека языка С glibs (GNU C Library) обеспечивает системные вызовы и основные функции программирования UNIX-приложений. Проект uClibc — легковесная альтернатива glibc, предназначенная для встраиваемых систем (используется в BusyBox по умолчанию). Утилита BusyBox ориентирована на Linux, однако большая часть кода является независимой от платформы, что, в принципе, позволяет «портировать» программу в другие UNIX-подобные ОС. С ядром Linux версии 2.6.х апплеты BusyBox могут быть «собраны» для любой аппаратной архитектуры, которую поддерживает компилятор GCC (GNU Compiler Collection).

Читайте также:  Обновление с помощью утилиты windows 10 upgrade assistant

Настройка, компиляция и установка

Для установки BusyBox из исходных кодов необходимо скачать с сайта проекта архив с последней версией программы и распаковать его. На первом этапе следует в установочном каталоге запустить интерактивное меню настройки параметров компиляции (рис. 1) после завершения которой будет создан файл конфигурации (.config):
#make menuconfig

Существует также несколько предопределенных сценариев запуска меню. Например, базовая конфигурация со всеми отключенными опциями, позволяющая добавить то, что необходимо (make allnoconfig). Или конфигурация, реализующая обратный подход: по умолчанию включено все — требуется закомментировать лишние пункты (make defconfig). На втором этапе непосредственно для компиляции нужно выполнить команду make:
# make
Существуют различные варианты установки и использования программы . Можно непосредственно вызывать апплеты, указывая их первым аргументом исполняемого файла busybox, например:
# busybox ls -l
Полноценная инсталляция программы подразумевает создание символьных или «жестких» ссылок на файл busybox, имена которых совпадают с именами доступных апплетов. При этом требуется, чтобы все файлы размещались в каталогах, указанных в переменной окружения PATH. Такой подход позволяет вызывать апплеты, указывая их имена сразу после приглашения командной строки:

Структура каталогов, в которые инсталлируется BusyBox и ссылки, типична для Linux (/bin, /sbin, /usr/bin, /usr/sbin). Префикс установки определяется параметром CONFIG PREFIX конфигурационного файла .config. Для использования символьных ссылок нужно исполнить команду make с параметром install, для «жестких» — installhardlinks. Существует также альтернативный вариант установки ссылок с помощью бинарного файла busybox: для «жестких» ссылок нужно использовать ключ «—install», для символьных — «—install -s». Для указания целевой аппаратной платформы и настройки кросскомпиляции предназначены параметры arch и cross_compile на этапе настройки (то есть совместно с параметрами menuconfig, defconfig и т. п.). Еще одна важная опция config_static файла .config определяет способ подключения стандартных функций: статический (весь необходимый код размещается в ис- полняемом файле) и динамический (библиотечные функции располагаются в отдельных файлах). В первом случае не требуется установки дополнительных библиотек, во вто- ром случае бинарный файл имеет более компактный размер.

Использование BusyBox

Получить список всех апплетов, включенных в данную сборку BusyBox, можно с помощью ключа «—list»:
# busybox —list
Встроенная справка вызывается ключом «—help»:
# busybox —help

Как упоминалось выше, апплеты имеют ограниченный набор параметров по сравнению с «полновесными» аналогами. Для получения помощи по аргументам конкретного апплета следует указать его имя вместе с «—help» (рис. 2).
Основу консольной среды BusyBox составляет командный интерпретатор (shell) ash (Almquist shell), в частности, используемый по умолчанию большинством BSD (Berkeley Software Distribution). Присутствует и альтернативный вариант — интерпретатор hush (hyper utility shell).
Вторым важным компонентом любой UNIX-подобной системы является так называемый пакет базовых утилит [[GNU Core Utilities]], включающий средства работы с файлами, текстом и программы, расширяющие возможности интерпретатора. В BusyBox реализованы аналоги многих базовых утилит: для работы с файлами и каталогами (cp, mkdir, mv, rm, rmdir, touch, mkfifo, mknod, sync, pwd и т. д.), текстовыми файлами (cat, cut, split, sort, tail, head, uniq, wc и т. д.), символьными и «жесткими» ссылками (ls, ln), управления правами (chgrp, chmod, chown), переменными окружения (env, printenv), просмотра свободного места на диске (du) и т. д.
Работа с архивами и сжатие данных обеспечивается в BusyBox аналогами отдельных GNU- утилит: cpio, tar, gzip. Для управления задачами по расписанию используется реализация под- системы cron; для управления процессами — ps, kill, nice; модулями ядра — lsmod, insmod, rmmod; для управления дисками и файловыми системами — fdisk, mkfs, mount и т. д.
Среди возможностей BusyBox следует отметить разностороннюю поддержку сети, что существенно упрощает управление сетевым оборудованием, в основе системного ПО которого лежит ядро Linux. В утилиту включены аналоги традиционных команд управления сетевой подсистемой и ее мониторинга: arp, ifconfig, route, ifup, ifdown, netstat, ping, traceroute; команда ip из пакета iproute для расширенной настройки сети; команда vconfig для управления виртуальными локальными сетями. Существуют также простые реализации клиентов и серверов основных сетевых и прикладных служб, таких как DNS (dnsd), FTP (ftpd), Веб (httpd), Telnet (telnetd), TFTP (tftpd), DHCP (udhcpd)

Источник

Оцените статью