Не знаю как Вас, а меня очень бесит тот факт, что телефон с хорошим железом начинает с каждым годом работать все хуже и хуже и наконец уходит в коробку к своим братьям по несчастью, хотя технически он способен еще на очень многое.
Translation to English is here. Также, основной канал в telegram.
В сентябре я начал первую подготовку к написанию данной статьи:
Заключается она в том, что на телефон нужно установить минимально необходимый Android 7, который был необходим, а в наличии был только 5, и я описывал как это было.
Любой смартфон или коммуникатор (старое название) — это полноценный компьютер с установленной на него операционной системой. Когда мы думаем, что телефон стал совсем старым и уже не годится для выполнения повседневных задач, то на самом деле не знаем в чем причина, а их может быть огромное количество. Телефон может тормозить из-за проблем в железе, проблем в плате из-за падения, да даже из-за старой или плохой новой батарейки. Но, есть и вторая проблема, это программы, которые установлены в нашем смартфоне. Например, планшет 10-летней давности после сброса работает хорошо лишь до момента входа в google-аккаунт, дальше все сервисы обновляются и все ресурсы планшета уходят только на их работу в фоне, такая же история и с телефонами того времени. Есть два варианта решения проблемы с этими прожорливыми сервисами, первый - не входить в свой аккаунт и ставить все приложения самому или из стороннего магазина, второй - перепрошить телефон на что-то простое кастомное, где сервисы ненужные вырезаны и нужно установить только тот пакет, который нам нужен, например синхронизатор контактов, календаря и google play. Правда это не спасет нас от кривых приложений в google play, которые тестируются на современных телефонах, а некоторые, судя по всему, вообще не тестируют.
Так или иначе, на руках у меня сейчас, для начала, 2 подопытных телефона, это:
1. Jiayu S3 2015 г.в. на процессоре 2014г. MediaTek MT6752, 64-bit, 28 nm, 8 ядер ARM Cortex-A53, 1,7Ггц, 3Гб ОЗУ (она же оперативка) 16Гб ПЗУ (она же flash)
2. Xiaomi Redmi note 2 2015 г.в. на процессоре 2014г. MediaTek MT6795, 64-bit, 28 nm, 8 ядер ARM Cortex-A53, 2,2Ггц, 2Гб ОЗУ (она же оперативка) 16Гб ПЗУ (она же flash)
Каждый из них, по характеристикам, лучше, чем Raspberry Pi 3b, которую нам пытаются сейчас продать за несовместимые с здравым смыслом деньги (13100Р на время публикации), а тут лежат такие монстры... Но, к сожалению, сравнить их между собой в лоб нельзя. На RPi3B+ есть и порты и gpio и самое главное - отточенные сборки ОС, а на смартфоны выше - ничего, но если запустить на них Linux, то они сгодятся еще на многое. К сожалению, Linux эти телефоны никто не выпустил, но он есть, например на ваш аппарат может существовать Kali Linux. С другой стороны, Android уже работает на Linux...
Мысль о использовании старых телефонов мне пришла в голову давно и тогда же я познакомился с Termux. Рекомендую почитать Habr на эту тему
Termux — это Android приложение под свободной GPL3+ лицензией: эмулятор терминала для среды GNU/Linux, которое работает напрямую без необходимости рутирования. Минимальный базовый функционал устанавливается автоматически, расширенные возможности подтягиваются с помощью менеджера пакетов и установкой стороннего ПО с git, а продвинутая деятельность на телефоне достигается за счёт рут-прав пользователя и установкой proot дистрибутивов GNU/Linux.
До прочтения статьи на хабре, я зашел в google play и скачал termux, но у меня ничего толком не вышло. Я расстроился и подзабил на это все. Но, 15 сентября мне на глаза попадается эта статья на mysku. Автор в этой статье ответил на мой главный вопрос, почему же у меня не получилось. Привожу ответ с Хабра:
Скачиваем и устанавливаем приложение Termux из магазина приложений F-droid. Termux в магазине приложений GP больше не поддерживается и не обновляется с осени 2020 года, вся разработка осуществляется на Github, а релизы выкладываются в F-droid/Git. Причины с рекурсией описаны здесь.
Установив версию с GitHub наконец все заработало! F-droid я тоже поставил, крайне интересный магазин и там есть дополнения к termux хорошие и удобные.
Экран аппарата у меня разбит, я писал про это, но методами кручения верчения/отладки нам нужно ввести несколько команд (Подсмотрено в теме termux на 4PDA тут и тут) вводим в телефоне с экранной клавиатуры:
1. Обновляем репозитории, иногда появляются сообщения с ругательствами, что нет доступа, но происходит поиск зеркал и в итоге все начинает работать:
apt update
2. Теперь логично, что нужно обновить все пакеты, ведь в них исправили старые ошибки и недочеты и уже наделали новых☺. На все вопросы отвечаем Y
apt upgrade
3. Нам же надоело вводить все с клавиатуры и на компьютере это все намного удобнее. Ставим SSH сервер. На все вопросы отвечаем Y:
pkg install openssh
4. Теперь у нас есть ssh сервер и было бы неплохо к нему подключиться, для этого с телефона задаем пароль командой:
passwd
вводим дважды одинаковый пароль
5. Последний штрих, если не знаем куда подключаться, то вводим команду, позволяющую получить наш ip-адрес:
ifconfig
На всякий случай напомню, что для подключения к телефону с компьютера, они оба должны быть в одной сети
6. Все готово, запускаем сервер командой:
sshd
и подключаемся к телефону с компьютера, наслаждаемся удобством работы.
Теперь с компьютера выполним несколько команд:
1. Знакомое нам обновление всего и вся:
apt update && apt upgrade -y
2. Установим минимальный набор пакетов:
pkg install curl wget git micro openssl python nano tsu cronie grep coreutils lsof android-tools gawk nodejs -y
Если в процессе установки на какой-нибудь пакет у нас выходит ошибка, то убираем его из строки выше и повторяем, такое бывает.
Изначально, список пакетов в рекомендациях был больше, но я убрал нерабочие пакеты (те, которые у меня не устанавливались по разным причинам), конечно же можно и добавить свои, если вы о них в курсе... Минимальный набор пакетов — это набор рекомендаций и никак не обязателен к установке, скорее всего вы сделаете это позже все равно. Поэтому в теории, пункт выше можно пропустить, но... я бы не стал.
Есть еще и такая рекомендация с 4pda:
У кого есть root, выполняем:
pkg install tsu
Цитата по команде с хабра:
Сначала надо прорутить телефон, потом в /system/bin/ положить su и поставить у него SUID бит в правах. Для того чтоб порутить телефон - надо качать хакерские программки, потому что получение рута на андроиде не предусмотрено. Да и приложение сбера у вас перестанет работать =)
Есть еще и такая рекомендация с 4pda:
Эмуляция рут прав:
pkg install fakeroot
fakeroot
Закончив все описанное выше, запуском приложения termux на телефоне и превращаем его в совершенно другое устройство. Возможности, которые нам открывает termux - просто грандиозные! В будущем я покажу, как ставить на мобилки разные программы, например уже сейчас на обоих аппаратах успешно крутится ha. А еще, что не маловажно, в телефоне есть аккумулятор, да он старый и убитый, но он позволит нашему серверу умного дома пережить непредвиденное отключение электричества. Еще один бонус — это возможность процессоров МТК на указанных телефонах. Он умеет включать и выключать телефон по расписанию. Поставив выключение на 3:05, а включение на 3:10, например мы сразу позволяем автоматом перезагружать сервер, на случай если он вдруг зависнет, а он далеко от Вас, или если электричество отключили надолго, и батарейка сядет, то, когда питание вернется, то он зарядится, а в 3:10 телефон сам включится. Для дальнего "умного сарая/гаража" - самый лимонад.
В следующих статьях я буду описывать различное использование этого телефона, а вернее двух, т.к. проверяю одни и те же команды и на том, и на другом. На Jiayu 3/16, Android 8 и один чип, на Xiaomi 2/16, Android 7 и другой чип.
Ну и не забываем про написанное ниже↓, всем добра и с наступающим новым годом! ☺
Мой блог является некоммерческим, поэтому позитивный комментарий, лайк или репост поможет публикациям выходить чаще и развивать канал☺.
Также публикации можно найти на других площадках: Instagram, telegram (RU, EN, DE), Medium, LiveJournal, YouTube, Reddit