4.9.3 Приложения для встраиваемого Linux

Предыдущая  Содержание  Следующая V*D*V

Теперь обсудим некоторые популярные дистрибутивы и приложения, используемые в системах на встраиваемом Linux.

 

Busybox

 

Программа Busybox является программой, поддерживающей мультивызов. Это означает, что в одном небольшом исполняемом файле реализованы некоторые часто используемые во встроенных системах программы. Busybox нацелена на использование во встраиваемых системах. Она также имеет механизм конфигурирования, с помощью которого на этапе сборки могут быть выбраны только необходимые для системы программы. Busybox может быть загружена с http://busybox.net. Busybox содержит следующие основные программы, известные в терминологии Busybox как апплеты (минипрограммы):

 

Оболочки, такие как ash, lash, hush и другие

Основные утилиты, такие как cat, chmod, cp, dd, mv, ls, pwd, rm и другие

Утилиты управления процессами и мониторинга, такие как ps, kill и другие

Утилиты для загрузки модулей, такие как lsmod, rmmod, modprobe, insmod и depmod

Системные программы, такие как reboot, init и другие

Сетевые утилиты, такие как ifconfig, route, ping, tftp, httpd, telnet, wget, udhcpc (клиент dhcp) и другие

Утилиты для входа в систему и управления паролями, такие как login, passwd, adduser, deluser и другие

Утилиты для архивирования, такие как ar, cpio, gzip, tar и другие

Утилиты для ведения системных журналов, такие как syslogd

 

Сборка Busybox делится на два этапа:

 

Конфигурирование: для выбора апплетов, которые вы хотите собрать, дайте команду make menuconfig.

Сборка Busybox: для сборки исполняемого файла busybox дайте команду make.

 

Следующим шагом является установка Busybox на целевой платформе. Это достигается вызовом Busybox с опцией в --install в сценарии запуска системы (например, скрипте rc).

 

busybox mount -n -t proc /proc /proc

busybox --install –s

 

Команда install Busybox создаёт мягкие ссылки всех апплетов, выбранных во время процесса конфигурации. Например, выполнение после установки ls -l в каталоге /bin даёт вывод, показанный ниже:

 

-rwxr-xr-x   1 0      0   1065308 busybox

lrwxrwxrwx   1 0      0         7 init -> busybox

lrwxrwxrwx   1 0      0        12 ash -> /bin/busybox

lrwxrwxrwx   1 0      0        12 cat -> /bin/busybox

lrwxrwxrwx   1 0      0        12 chmod -> /bin/busybox

lrwxrwxrwx   1 0      0        12 cp -> /bin/busybox

lrwxrwxrwx   1 0      0        12 dd -> /bin/busybox

lrwxrwxrwx   1 0      0        12 echo -> /bin/busybox

 

Как видно, для каждого выбранного апплета install Busybox создал мягкую ссылку по имени этого апплета на себя. Когда вызывается какая-либо программа (скажем chmod), Busybox получает название программы из первого аргумента командной строки и вызывает соответствующую функцию.

 

Tinylogin

 

Tinylogin является программой, поддерживающей мультивызов, схожей с Busybox, и используется для реализации UNIX-подобного входа в систему и доступа к приложениям. Ниже приводится список функциональных возможностей, реализуемых Tinylogin.

 

Добавление и удаление пользователей

Приложения login и getty

Приложение для изменения пароля passwd

 

Tinylogin может быть загружена с www.tinylogin.org.

 

Ftp сервер

 

FTP сервер полезен для копирования файлов на и из встроенной системы. Доступны два FTP сервера, стандартный сервер wu-ftpd и более популярный сервер proftpd, который легко конфигурируется. Они могут быть загружены с www.wu-ftpd.org и www.proftpd.org, соответственно.

 

Веб сервер

 

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

 

BOA: встраиваемый однозадачный HTTP сервер, доступный на http://www.boa.org/

mini_httpd: небольшой веб-сервер, предназначенный для небольшого и среднего веб-трафика. Он может быть загружен с http://www.acme.com/

GoAhead: этот популярный веб-сервер с открытым кодом предназначен для встраиваемых систем и может быть загружен с http://www.goahead.com

 

Предыдущая  Содержание  Следующая