Топ питань
Часова шкала
Чат
Перспективи
BusyBox
З Вікіпедії, вільної енциклопедії
Remove ads
BusyBox — набір UNIX-утиліт командного рядка (у вигляді одного файлу), котрий є майже повним POSIX-середовищем для вбудованих та інших систем з невеликим обсягом доступного місця. Переваги — малий розмір та низькі вимоги до апаратури. Автори називали його "швейцарським ножем вбудованого Linux",[2] оскільки один виконуваний файл заміняє понад 300 загальних команд. Випущений як вільне програмне забезпечення на умовах GNU General Public License.[3]
BusyBox працює на великому числі різних POSIX-середовищ, таких як Linux (включаючи Android),[4][5][6] FreeBSD[7] і на різних власницьких ядрах, хоча багато з цих інструментів з набору спроєктовані для роботи з інтерфейсом ядра Linux.
Розробка BusyBox була розпочата в 1996 Брюсом Перенсом з метою оптимізації розміру і з урахуванням обмежених ресурсів. У той же час система є досить гнучкою і модульною (в момент компіляції можна включити/виключити всі необхідні компоненти). Проєкт повільно рухається до повної реалізації Single UNIX Specification V3[8], яка поки не досягнута. Також проєкт зацікавлений у проходженні тесту Linux Test Project.[9]
Модульний характер BusyBox дає можливість сформувати один уніфікований виконуваний файл, що містить в собі довільний набір реалізованих у пакеті утиліт (кожна утиліта доступна у формі символічного посилання на даний файл). Розмір, склад і функціональність колекції утиліт можна варіювати залежно від потреб і можливостей вбудованої платформи, для якої здійснюється складання. Пакет самодостатній, при статичному складанні з uclibc для створення робочої системи поверх ядра Linux потрібно лише створити декілька файлів-пристроїв у теці /dev і підготувати файли конфігурації.
Remove ads
Команди
- ash[en] — командна оболонка
- awk — мова обробки рядків за шаблонами
- cat — прочитати файл
- chmod — змінити права
- cp — копіювати
- date — поточні дата та/або час
- dd — копіювати файл з конвертацією і форматуванням
- df — вивести статистику використання файлової системи
- dmesg — вивід буфера повідомлень ядра
- echo — вивести рядок
- egrep — grep з підтримкою розширених регулярних виразів
- fgrep — grep з оптимізованим пошуком фіксованого рядка
- grep — шукати по шаблону в кожному файлі або стандартному вводі
- gunzip — розпакувати з gzip
- gzip — упакувати в gzip
- kill — завершити процес
- init
- ln — створити link з назвою LINK_NAME або DIRECTORY прив'язаний до вказаного TARGET.
- login — почати нову сесію у системі
- ls — список файлів і тек
- mdu
- mdev — akin to udev
- mkdir — створити теку
- more — переглянути файл або стандартний вивід на одному екрані за раз, а не довгим списком зі скролом
- mount — змонтувати файлову систему
- mv — перемістити файл
Remove ads
Цікаві факти
BusyBox є основним інструментом у боротьбі з порушенням GPL у прошивках. Організації Software Freedom Conservancy (SFC) і Software Freedom Law Center (SFLC) від особи розробників BusyBox як через суд, так і шляхом укладення позасудових угод неодноразово успішно впливала на компанії, що не надають доступ до початкового коду GPL-програм.
Для виробників, які не бажають відкривати початкові тексти модифікованих компонентів, у рамках проєкту Toybox розвивається аналог BusyBox, поширюваний під ліцензією BSD (2 clause). За можливостями Toybox поки відстає від BusyBox.
Remove ads
Виноски
Посилання
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads