Установка Entware-3x на Android

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 19 июл 2017, 10:44

Общая информация об установке в блоге - http://www.zyxmon.org/2017/07/16/entwar ... -konspekt/
(в процессе написания).

Опробованы 2 способа: первый на внешний ext4 носитель, второй в loop (img) образ, который может быть где-угодно (встроенная флешка, внешняя флешка или карта с любой файловой системой).
Во втором случае установка Debian Jessie (запуск в среде chroot) длилась пару минут (против 30 в первом).

Два готовых образа (Entware и Entware+Jessie) скоро выложу.

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 19 июл 2017, 10:46

Вопрос к знатокам Android - как выполнить произвольные скрипты при выключении (перезагрузке) Android? Иначе есть определенные проблемы (не хочется применять костыльное решение).

Аватара пользователя
myxa781
Сообщения: 2
Зарегистрирован: 18 июл 2017, 14:42

Сообщение myxa781 » 19 июл 2017, 11:42

tasker на железке установлен ? (или это из раздела костылей) :)

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 19 июл 2017, 13:01

myxa781 писал(а):Источник цитаты tasker на железке установлен ?

Tasker проблему, скорее всего, решает. Для работы бесплатного софта не хотелось бы привлекать платный.

kaztost
Сообщения: 223
Зарегистрирован: 17 июл 2017, 00:29

Сообщение kaztost » 19 июл 2017, 13:26

Таскер платен только в Google Play. А на 4pda "бесплатен". Проверки лицензии нет. У меня таскер куплен, поэтому могу легально сделать Kid App :D . Но разницы со скачанным таскером с 4pda не будет.

А так и так без костылей не обойдешься. Tasker или Tasker Kid App с событием Device Shutdown и действием RunShell - самый простой вариант. Можно попробовать тестовый скрипт-таймер, чтобы посмотреть сколько секунд/миллисекунд на выполнение действий имеется. Еще можно развлечься экспериментом, что будет, если Run Shell выполняет скрипт (под рутом)

Код: Выделить всё

(stop; your commands)&

В этом случае девайс сам не выключается, поскольку stop убивает андроид-процесс выключения. Таскер со своим RunShell тоже вырубится, поэтому выполняем через &. Тогда у нас уйма времени и возможностей чтобы все размонтировать и выключиться самим. Правда сам андроид теоретически может пострадать.

У меня после такого безобразия (stop без всяких других команд) почему-то пошла бесконечная анимация включения по типу бутлупа. Повторный stop, посланный через энтварный ssh-сервер, эту анимацию остановил.

kaztost
Сообщения: 223
Зарегистрирован: 17 июл 2017, 00:29

Сообщение kaztost » 19 июл 2017, 14:01

О, экспериментально обнаружил. Видимо лучше в Run Shell выполнять

Код: Выделить всё

(stop; your commands; start)&

Тогда start размораживает прерванный процесс выключения и девайс (надеюсь более корректно) выключается. Но все это может зависеть от девайса и версии андроида.

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 19 июл 2017, 14:04

kaztost писал(а):Источник цитаты Tasker Kid App с событием Device Shutdown и действием RunShell

А вот про это не знал. Я вообще знаю андроид на уровне простого пользователя. Это попробую, можно будет создать приложение и со всеми поделиться
The intention is to allow people to create their own apps for fun, for sale or just to share with friends. .......
....
You are free to distribute and sell apps created by Tasker in any way you wish. No licence fees to the developer of Tasker are necessary.


Попрошу еще одну "помощь зала".
Android создает loop устройсва не в /dev, а в /dev/block. По этой причине linux утилиты не всегда правильно работают с loop устройствами. Для монтирования образа возможны варианты
1. Создать loop устройство в dev и использовать mount -o loop

Код: Выделить всё

mknod /dev/loop99 b 7 99
mount -o loop ....

2. Использовать готовое устройсво (или создать свое) в /dev/block с помощью losetup

Код: Выделить всё

losetup /dev/loopN <img>
...
mount /dev/loopN <mount point>

Оба способа рабочие, оба используются. Какое решение предпочесть?

kaztost
Сообщения: 223
Зарегистрирован: 17 июл 2017, 00:29

Сообщение kaztost » 19 июл 2017, 14:13

3. Использовать симлинки /dev/loopN->/dev/block/loopN?

Аватара пользователя
Zyxmon
Администратор
Сообщения: 1911
Зарегистрирован: 09 авг 2015, 15:33

Сообщение Zyxmon » 19 июл 2017, 14:15

kaztost писал(а):Источник цитаты 3. Использовать симлинки /dev/loopN->/dev/block/loopN?

Помню читал, что андроид сам должен это делать. Нужно попробовать ручками создать.....

kaztost
Сообщения: 223
Зарегистрирован: 17 июл 2017, 00:29

Сообщение kaztost » 19 июл 2017, 15:49

Zyxmon писал(а):Источник цитаты Это попробую, можно будет создать приложение и со всеми поделиться

Можно расширить функционал Universal Autocontrol. Если надо, могу прислать таскерный профиль (исходники типа), чтобы легче врубится.


Вернуться в «Entware на Android»

Кто сейчас на конференции

Всего 2 посетителя :: 1 зарегистрированный, 0 скрытых и 1 гость (основано на активности пользователей за последние 5 минут)
Больше всего посетителей (162) здесь было 16 ноя 2019, 18:33

Сейчас этот форум просматривают: CommonCrawl [Bot] и 1 гость