Устанавливаем Entware на LEDE/Openwrt

lede

Здраствуйте девочки и мальчики, дамы и господа. Сегодня я Вам расскажу сказку о LEDE и Entware. Те, кто знаком с LEDE/Openwrt сразу воcкликнут — не нужны нам пакеты Entware, свои есть. Отчасти они правы, пакеты Entware основаны на пакетах Openwrt. Давайте перед рассказом об установке и настройке Entware сравним эти две системы пакетов.

1. Установка. Систему пакетов Openwrt устанавливать не надо, она входит в прошивку. Установка Entware хоть и проста, но потребует минут 5-10, описание ниже.

2. Число пакетов. В Openwrt пакетов больше. В Entware перенесены не все. Cамые распространнее и восстребованные пакеты Openwrt перенесены в Entware. В Entware  есть свои уникальные пакеты, которых нет в Openwrt. Эти пакеты или были заброшены разработчиками Openwrt, или добавлены по просьбам трудящихся. Среди этих пакетов deluge, rtorrent, mariadb, mediainfo, mkvtoolnix, rclone, syncthing и т.д. Этих популярных пакетов в Openwrt нет. Число таких пакетов  более 250.

3. Место установки. По умолчанию пакеты Openwrt устанавливаются в свободную флеш память устройства. Она, обычно сильно ограничена. Безусловно, можно ставить и на внешний накопитель («технология extroot» — можно или всю rootfs или только overlay разместить на внешнем носителе). Extroot мощная «технология», но она требует определенных знаний и навыков. Пакеты Entware обычно устанавливаются на внешний носитель без всяких «хитростей».

4. При проблемах. Если после установки пакетов openwrt система не грузится, нужно сбрасывать настройки, загружаться в безопасном режиме и все восстанавливать. В случае проблем с Entware достаточно просто вытащить внешний накопитель.

5. Обновление прошивки. Пакеты Openwrt нужно устанвить заново после обновления. Пакеты Entware останутся на месте и будут работать.

6. Требуемые ресурсы. Пакеты Openwrt тут имеют преимущество и потребляют немного меньше памяти.

Как видим, обе системы пакетов имеют и свои преимущества и недостатки. Список можно продолжить -лучшая поддержка локалей в Entware, наличие пакетов с модулями ядра только в LEDE/Openwrt и т.д.. В конце концов никто не мешает Вам использовать обе системы пакетов одновременно.

Перед тем, как  описать установку Entware на Openwrt несколько слов о роутере, на котором это тестировалось. Использовался Asus RT-AC58U с форком LEDE от dullish (основан на форке от chunkeey).

Итак приступим. Нам потребуется носитель с файловой системой ext4, смонтированный в папку /opt. Это можно сделать черз Luci -

lede_mount

или отредактировав файл /etc/fstab. Хорошо бы включить перед установкой swap.

Мы будем ставить Entware-3x. Существуют два различных вида установки — стандартный и альтернативный. Поскольку в LEDE все файлы «редактируемы», большого смысла в альтернативной установке нет. Установка стандартного варианта производится стандартной командой

wget -O - http://entware-3x.zyxmon.org/binaries/armv7/installer/install_std.sh | sh

После установки нам нужно добавить пути бинарнков Entware и другие требуемые переменные окружения. Это можно будет сделать с помощью:

echo ". /opt/etc/profile" >> /root/.profile

Закройте ssh сессию и откройте заново. Проверьте окружение командой env. Переменная PATH должна начинаться с /opt/bin. Добавим свою таймзону, это нужно для Entware. Для Москвы это делается с помощью

ln -s /opt/share/zoneinfo/Europe/Moscow /opt/etc/localtime

Теперь нужно решить проблему с opkg. Сейчас в системе два бинарника opkg — /bin/opkg и /opt/bin/opkg. Предлагаю к первому обращаться с помощью opkg, а ко второму с помощью epkg. Сделаем это с помощью добавления псевдонимов

echo "alias opkg=\"/bin/opkg\"" >> /root/.profile
echo "alias epkg=\"/opt/bin/opkg\"" >> /root/.profile

Можете задать свои псевдонимы, как вам понравится.

Осталось обеспечить запуск служб Entware при запуске LEDE. Для этого создадим исполняемый файл скрипт /etc/init.d/entware следующего содержания

#!/bin/sh /etc/rc.common

START=99
STOP=01

UNSLUNG=’/opt/etc/init.d/rc.unslung’

start() {
if [ -x $UNSLUNG ]; then
$UNSLUNG start
fi
}

stop() {
if [ -x $UNSLUNG ]; then
$UNSLUNG stop
fi
}

«Включим» его  командой

/etc/init.d/entware enable

На этом всё! Установка Entware завершена.

PS Для процессоров Qualcomm IPQ8064 и IPQ8065  (NETGEAR R7500v1 и R7800) пользователем  Voxel собран репозиторий Entware оптимизированный для Cortex-a15 с Neon-VFPv4. (Asus RT-AC58U на Cortex-a7, совмесим с Cortex-a15). Включение операций с плавающей запятой и оптимизация под эти процессоры дает существенную прибавку к производительности бинарников Entware. Результаты сравнения приведены на форуме. Для установки этого форка Entware используйте команду

wget -O - http://cortex-a15.zyxmon.org/binaries/cortex-a15-3x/installer/install_std.sh | sh

PPS Entware по стандартной инструкции можно установить и на стоковую прошивку RT-AC58U от Asus.

PPPS После обновления прошивки LEDE/Openwrt нужно заново создать root/.profile и /etc/init.d/entware.

PPPPS Выше приведен пример установки на железку с архитектурой armv7. Репозитории entware-3x собраны для armv5, mips, mipsel и x64. Смотрите сюда - http://entware-3x.zyxmon.org/binaries/. Замените url для скрипта установки, если используете другую архитектуру.

Список пакетов можно посмотреть по ссылкам (есть сортировка и поиск)

http://entware-3x.zyxmon.org/binaries/armv5/Packages.html

http://entware-3x.zyxmon.org/binaries/armv7/Packages.html

http://entware-3x.zyxmon.org/binaries/mips/Packages.html

http://entware-3x.zyxmon.org/binaries/mipsel/Packages.html

http://entware-3x.zyxmon.org/binaries/x64/Packages.html

8 Комментарии в“Устанавливаем Entware на LEDE/Openwrt”

  1. Alex
    17.08.2017 в 15:42 #

    Привет! А что должно быть в /opt/etc/profile ?
    после wget -O — http://entware-3x……..
    и echo «. /opt/etc/profile» >> /root/.profile
    файла /opt/etc/profile нет.
    И после закрытия/открытия ssh у меня вылезает ошибка
    -ash: .: line 1: can’t open ‘/opt/etc/profile’
    и по env в PATH= нет /opt/bin
    Спасибо.

  2. Zyxmon
    17.08.2017 в 15:48 #

    Значит были ошибки при установке. Удалите содержимое /opt и запустите установку заново.
    Опубликуйте лог установки на https://pastebin.com/ (регистрация не нужна).

    А еще лучше создайте тему на форуме http://forums.zyxmon.org (приблизительное название — проблема с установкой Entware-3x на openwrt). Подозреваю что или
    (1) Вы выбрали установщик из папки с неподходящей архитектурой
    или
    (2) Носитель, на который идет установка не поддерживает символические ссылки. Нужна файловая система ext2/3/4.

    • Zyxmon
      17.08.2017 в 16:50 #

      Как я вижу бинарник opkg не работает для вашей mips железки. К сожалению проверить и пофиксить это не смогу. Да и «специализируюсь» я на arm и intel. Что это за аппарат?
      Попробуйте запустить `ldd /opt/bin/opkg`. Выхлоп сюда (скорее всего ругань).

  3. Alex
    17.08.2017 в 19:52 #

    root@LEDE:~# ldd /opt/bin/opkg
    ldd: /opt/bin/opkg: Not a valid dynamic program
    ZBT WG3526
    https://pastebin.com/Hw8a536S

  4. Alex
    17.08.2017 в 19:59 #

    Эээ, простите, но на ZBT WG3526 можно скомпилить Padavan-a и там Entaware-ng работает

    • Zyxmon
      17.08.2017 в 20:20 #

      Если Вы это знаете, то должны были сразу mipsel ставить. Padavan не делал прошивки для mips. Об ошибке с архитектурой я Вам на форуме ответил.

      • Alex
        17.08.2017 в 20:28 #

        Спасибо большое все получилось с mipsel на ZBT WG3526

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

(Required)

Можно использовать следующие HTML-теги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Автор темы: www.gopiplus.com, перевел WP-Templates.ru, поддержка SearchTimes.ru.