Делаем сервер из Android-телефона
Некоторое время назад мне пришла в голову интересная идея — превратить свои старые телефоны (их скопилось немало за десять лет) в серверы, в качестве альтернативы покупке Raspberry Pi.
На то было несколько причин: во-первых, у телефонов есть батарея, что для сервера практически бесплатный мини-UPS, во-вторых, внутренняя память смартфона (UFS) работает быстрее и надёжнее, чем SD-карта. В-третьих, у телефонов имеется экран, по которому можно отслеживать состояние сервера.
Ну и в-четвёртых, мне просто было жаль их выбрасывать. Консьюмеризм в наше время предписывает каждый год-два покупать новые смартфоны, производители блокируют возможности железа, которые им невыгодны, прекращают поддержку старых моделей, оставляя людей беспомощными. Миллионы смартфонов отправляются на свалку истории каждый год, хотя каждый из них это мощный компьютер.
TL;DR: в этом посте будут разобраны вопросы установки PostmarketOS на смартфон,
поднятия на нём в качестве примера Docker и веб-приложения в нём.
Сразу хочу оговориться — я понимаю, что есть типовые решения, например Termux или UserLAnd, и спектр поддерживаемых устройств у них шире. Но все они работают как надстройки над основной системой, Android, и подвержены её ограничениям, таким как агрессивное сокращение энергопотребления или перенос задач на LITTLE-ядра при выключении экрана. Будущее Termux, например, вообще неясно из-за всё более жёстких гаек безопасности в Android 11. UserLAnd, помимо этого, работает через PRoot, который при всей своей пользе ощутимо замедляет процессы с большим количеством системных вызовов. В этой статье мы разбираем именно создание сервера на железе без Android.
Часть первая. Прошивка
Проект PostmarketOS был создан именно ради этой цели — сохранение вычислительных устройств после прекращения их поддержки производителями. Список поддерживаемых устройств можно найти здесь.
Для установки требуется телефон с разблокированным загрузчиком. В качестве примера буду использовать OnePlus One из-за простоты разлочки со стороны производителя. Для каждого производителя список шагов разный, ниже привожу обобщённые действия для смартфона 2018-2021 года выпуска:
Далее авторизуем подключение на самом телефоне
После разблокировки телефон сбросит данные снова перезагрузится в Android, перезапустите его в режим fastboot комбинацией клавиш или повторите релевантные для этого шаги 3 и 4.
Если разблокировка прошла успешно, далее можно следовать стандартной процедуре установки PmOS:
На этом этапе pmbootstrap запросит пароль и задаст довольно много вопросов о том, как сконфигурировать систему и целевое устройство. Итоговый результат будет записан в
Пару слов по поводу разных конфигураций. Здесь есть несколько важных пунктов — ядро mainline или downstream , графическая среда mate , weston и т.д., канал обновлений edge или stable . Интуиция при выборе значений должна быть такой:
- Если планируете пользоваться графикой, ставьте пароль из цифр. Некоторые графические среды поддерживают только цифровую клавиатуру на экране ввода пин-кода.
- Выбирайте edge в качестве канала обновлений. PostmarketOS разрабатывается быстро, и много опакеченного ПО ещё долго не будет в stable .
- Выбирайте ядро downstream если хотите максимум работающей «из коробки» второстепенной периферии после установки. Выбирайте ядро mainline если вам нужен OpenGL/OpenCL и современные возможности ядра, такие как контейнеризация и cgroups.
- Выбирайте графическую систему phosh , sway или plasma-mobile если у ваc ядро mainline и имеется графическое ускорение. В противном случае остановитесь на mate или xfce4 . Внимательно смотрите страницу вики для вашего устройства.
Затем с помощью pmbootstrap install сразу же начинаем сборку образа целевой системы. После сборки её предлагается установить самому, так как механизм установки варьируется от модели к модели. Пример того, как это делается стандартно, и как вышло у меня, ниже.
Есть хорошие шансы, что всё сработает как надо с первого раза. К сожалению, загрузчики и реализацию fastboot каждый производитель телефонов пишет по-своему, отчего попытки установки превращаются в смерть от тысячи иголок. В моём случае fastboot наотрез отказывался прошивать образы такого размера. Пришлось воспользоваться сторонним recovery, чтобы продвинуться дальше:
После завершения процесса sideload жмём «Reboot to system». Должен пойти процесс загрузки ядра и далее самой PostmarketOS.
Часть вторая. Настройка PostmarketOS
По сути своей, PostmarketOS построена на основе дистрибутива Linux под названием Alpine. Это позволяет создать работающую систему минимального размера, что для большого количества старых устройств с ограниченной внутренней памятью критично.
Однако, есть и подводные камни. О них ниже:
- Alpine построен на основе лаконичного libc под названием Musl. Плохая новость тут в том, что большинство других дистрибутивов работает на основе glibc, что означает невозможность установки ПО простым переносом бинарников с Raspbian или Ubuntu ARM, как позволяет, например, Golang или Rust.
- Система инициализации в дистрибутиве — OpenRC. Если вы знакомы с Gentoo, это для вас не будет озарением, но OpenRC куда ближе к прародителю sysvinit, чем к общепринятому в индустрии systemd. Имейте в виду.
- Для уменьшения размера используется Busybox, поэтому команды grep / sed / find и т.д. имеют ограниченный набор опций по умолчанию. Устанавливайте их GNU-версии и стандартный Bash-шелл отдельно, чтобы получить полный набор.
Итак, после загрузки телефона с PostmarketOS нам необходимо каким-то образом с ним взаимодействовать. Если вы ставили оболочку Phosh или Plasma Mobile, скорее всего вы сможете это сделать напрямую с тачскрина телефона. Если по каким-то причинам графический интерфейс не сработал, подключайте телефон к компьютеру USB-кабелем, PostmarketOS автоматически создаст дополнительную сеть:
После чего к телефону можно будет подключиться с именем и паролем пользователя, который вы указывали при pmbootstrap install :
Если вы видите эти строчки — значит PostmarketOS установлена верно. В противном случае попробуйте посмотреть секцию Troubleshooting для вашего устройства на вики PmOS, измените конфигурацию для pmbootstrap install или спросите мейнтейнеров в IRC или Matrix чате (все три пункта ваш покорный слуга в итоге и сделал).
Настройка сети
Если не получилось настроить WiFi сеть через графическую оболочку, ниже пример как сделать это через консоль. Предварительно подключите телефон к USB-интерфейсу вашего ПК.
Источник
Сетевое хранилище для андроид
NAS — хранилище (запоминающ ( ее ) устройств ( о ) или их массив), доступное через интернет.
NAS может служить как для загрузки на него файлов через интернет, так и для доступности/раздачи файлов другим.
Загружать туда можно бекапы, файлы с мобил.устройств, торренты или др., в т.ч. удалённым управлением (вместо «домой приду — скачаю»).
NAS может играть и другие роли серверов или дом.компов, служа, например, веб-сервером, плеером (если в нём есть видеовыход или WiFi через который можно организовать miracast или т.п. — можно коннектить с телевизором/монитором или т.п.), устройством для сёрфинга и/или др.
NAS-ы можно разделить на:
- Мощные NAS-ы — серверы или настольные (достаточно мощные) компы.
- Энергоэффективные NAS-ы, интенсивно раздающие файлы — относительно слабые компы, мощности которых достаточно. (Могут иметь пассивное охлаждение)
- NAS-ы низкого энергопотребления — собираются на одноплатниках.
- Слабые NAS-ы — собираются на слабых ARM. Самоделки, например.
Сообщение отредактировал eddddddy — 07.02.20, 21:58
Тем временем:
- Количество роутеров из которых можно сделать NAS множится (на которые прошивки есть с торрент-клиентами), но их список никто не составляет, видимо мало кому интересно
- Андроид боксы продают с аукционов в районе $20 (ebay) — ими можно заменять роутеры, делая NAS-роутеры (2в1)
- роутеров с USB и самбой также всё больше («летай» даёт в аренду), а разбитых телефонов и планшетов сейчас много как мусора — на них можно поставить торрент клиент, раздающий файлы с USB-носителя роутера (а если тел/планш с OTG — раздавать можно с otg-usb, а также заменить им роутер если купить usb-ethernet adapter)
Сообщение отредактировал eddddddy — 30.01.20, 21:41
vanes32, подкл. тел. к инету (можно даже usb-ethernet) и обеспечьте сетевой доступ к памяти вот вам и NAS. Добавьте накопитель (sd/usb-диск любой можно) по желанию. В шапке см. «слабые NAS-ы».
Сообщение отредактировал eddddddy — 06.02.20, 15:26
Источник
Один NAS, две ОС. Как это работает?
Это лето выдалось очень богатым на путешествия, поэтому почти вся техника из моих последних обзоров была испытана в самых суровых походных условиях. На этот раз я решил рассказать о сетевом хранилище, которое проехало несколько тысяч километров, отработало на двух съемочных площадках и развлекало нас в редкие минуты отдыха. А так как условия эксплуатация были необычными, то и NAS тоже был выбран необычный — сразу с двумя ОС. Мне удалось поработать с двумя моделями этого накопителя. Встречаем: QNAP TAS-168 и QNAP TAS-268.
Надо сказать, что с накопителями QNAP я знаком давно и пользуюсь ими с удовольствием: функционал и надежность вполне подходят как для дома, так и для офиса. Но эти две модели можно назвать «домашними» хотя бы за их возможности по организации развлечения. Сначала я расскажу о том, как я пришел к этому выбору, а потом о софте.
Вопрос выбора
Как я писал выше, лето выдалось насыщенным на путешествия и съемки. Снимали днем.
Встречались даже исторические персонажи.
Съемки велись на цифровую камеру с разрешением 4К сразу в двух форматах. За смену легко набегало полторы-две сотни гигабайт, поэтому жесткий диск в несколько терабайт был просто необходим. Ну и стоимость потери данных была крайне велика, поэтому все многократно дублировали.
Ну а мое рабочее место чаще всего выглядело так.
И редко когда выдавался свободный вечер, чтобы что-нибудь посмотреть. Тогда мы разворачивали экран, доставали проектор, подключали к нему комбайн-NAS и смотрели…
После первых съемок я понял масштаб беды, если данные будут утеряны и решил перейти с QNAP TAS-168 на TAS-268 из-за возможности создать еще более надежное хранилище. Надо сказать, что устройство соответствует требованиям на все 100 процентов.
В чем фишка?
В чем же кроется фишка? ответ прост- две ОС: стандартная QTS для работы сетевого накопителя и Android для работы и развлечений. Производителю удалось совместить два устройства в одном, сэкономив нам деньги и место. То есть вместо сетевого накопителя и медиаплеера для просмотра фильмов достаточно обзавестись QNAP TAS-168 или TAS-268 (первая цифра обозначает количество дисков).
Схему работы двух систем хорошо изобразил сам производитель.
Как видно и схемы, сразу обе ОС имеют доступ к файлам. Если вы уже работали с QTS, то знаете, как удобно организована работа через web-интерфейс. В последнее время QNAP взялся за софт для смартфонов, что не может не радовать. Поэтому теперь достучаться до своего личного домашнего «облака» и поработать с файлами удаленно стало еще проще. Ну а как оценить возможность поставить кино на закачку при выходе с работы, чтобы было что посмотреть за ужином?
А теперь продолжим: работать с Android нам предлагается, подключив к HDMI порту телевизор или проектор. По этому же интерфейсу передается весь звук, поэтому играть или смотреть фильмы можно с хорошим аудиосопровождением.
Как работает Android на NAS
Чтобы начать работу Android, потребуется сначала запустить его через Web-интерфейс. Занимает это не более одной минуты, а после мы видим стандартное окно запуска нового устройства.
Дальнейшие настройки не вызовут вопросов, если вам хоть раз доводилось запускать новый смартфон на Android. Интерфейс лишь немногим отличается от аналогичного у смартфонов. Но есть отдельный пункт, где собраны адаптированные и рекомендованные производителем приложения.
Никто не мешает воспользоваться PlayMarket’ом от самого Google.
Много ли пользователей видели в параметре о памяти следующую строку: Всего места 2,69 ТБ?
Если подключить проводную клавиатуру и мышь, то можно вполне комфортно почитать любимый Хабр.
А когда новые статьи закончатся, то можно запустить скачанный фильм.
В общем, Андроид работает так, как ему и положено, с той лишь разницей, что объем дискового пространства практически не ограничен, а питание никогда не закончится.
Из особенностей работы: в комплект поставки входит пульт ДУ, с которым вполне комфортно можно выполнять работу в меню или запуск фильмов. А вот серфить в сети гораздо удобнее подключив клавиатуру и мышь. К сожалению, беспроводной набор от Logitech у меня так и не завелся, поэтому пришлось пользоваться проводными аналогами и я сразу занял пару USB портов.
Нюансы
У данного устройства есть нюансы. Например, из-за того, что на устройстве крутятся сразу две ОС, из QTS убрана поддержка системы видеонаблюдения. Меж тем, на старших моделях существует возможность подключить несколько цифровых камер (1-2 бесплатно, а при большем количестве нужно докупить лицензий) и использовать сетевой накопитель еще и в качестве цифрового видеорегистратора. Вот и у нас была цифровая камера, которая писала все события со съемочной площадки на накопитель.
На картинке камеру видно обведенной красным кружком. О ней я писал в материале про солнечную электростанцию на кемпере. Как же удалось решить эту проблему?
Все оказалось довольно просто. Сетевой накопитель QNAP TAS-168 был подключен к роутеру посредством Ethernet, куда так же была подключена камера. На сетевом накопителе была создана отдельная папка, а в системе заведен отдельный пользователь с правами доступа к этой папке. Сама камера умеет сбрасывать видео частями по FTP или SMB протоколу. Таким образом удалось организовать круглосуточную запись видео даже без функции видеорегистратора — производительности накопителя хватило с запасом.
Вскрытие показало
После распаковки устройства получаем небольшую горку пакетиков и основные запчасти. В комплект входит сетевой кабель, адаптер питания, крепления жесткого диска и пульт ДУ. Все представленное верно для модели QNAP TS-168. Для модели TAS -268 креплений для жестких дисков будет 4.
Сам накопитель имеет на передней панели пару кнопок (включение и резервное копирование), порт USB 3.0, пару световых индикаторов и слот для SD карт.
На задней панели имеются 4 порта USB2.0, Ethernet 1000 Мбит/с, HDMI и разъем для подключения адаптера питания. Есть и кнопка reset для возвращения к заводским настройкам.
На нижней панели имеется винт для фиксации корпуса.
После того, как открутили винт-замок, корпус просто сдвигается для доступа к корзине для дисков.
Все настолько просто, что с установкой диска справится даже ваша бабушка.
Если обратили внимание, то рядом с SATA портом примостился дополнительный разъем. Его тайна мне открылась, когда я перешел с модели TAS-168 на TAS-268: туда ставится дополнительный разъем SATA для второго диска.
На снимке видна турбинка системы охлаждения. Подключается она 4-пиновым разъемом к плате, поэтому у нее отлично работает регулировка оборотов, так что донимать ревом в ночи она точно не будет.
Обратите внимание, как близко расположены диски в TAS-268. Но за счет того, что сам NAS ставится вертикально, а внизу и вверху есть вентиляционные зазоры, проблем с перегревом не возникает.
Понравились мне диски HGST. В последнее время предпочитаю устанавливать их: проблем замечено не было, скоростные показатели на уровне. А когда перешел на QNAP TAS-268, то поставил диски в RAID1 и перестал думать о возможной потере данных. На снимке показана безвинтовая система фиксации дисков. Порадовало наличие виброгасящих резиновых шайб — так шума еще меньше.
В конечном итоге, собранное и готовое устройство должно выглядеть так.
Нельзя было обойтись и без тестов, поэтому я запустил свежий Intel NASPT и снял показания. Это не топовое устройство и высоких скоростей передачи данных я не ждал. Гораздо важнее была надежность и функциональность.
Источник