- PVSM.RU - https://www.pvsm.ru -
Бывает такое, что смартфон становится ненужным — например, на нём разбивается экран или он просто старенький, тормозит даже браузер. Что делать с таким гаджетом, не выбрасывать же его? В самом деле, американцы летали на Луну с компьютерами, у которых характеристики много хуже, чем в вашем старом смартфоне. Скорее всего, в нём 4−8 процессорных ядер, 2−4 гигабайта оперативной памяти, блок бесперебойного питания с аккумулятором. Не слабее, чем некоторые компьютеры.
Попробуем найти этому смартфону полезное применение.
Первый вариант, который приходит в голову — установить на телефон Linux-окружение и какой-нибудь полезный софт, который будет работать в «фоновом режиме» на пользу домашнему хозяйству. Что это может быть?
Ясно, что телефон не сможет работать как медиасервер и обрабатывать видеопотоки, для этого у него слишком слабый процессор.
Теоретически можно подключить к нему внешний HDD (тоже остался от сломанного ноутбука, для него куплен специальный корпус-переходник с интерфейсом USB). Даже на ёмкой карте microSD он вполне может работать как файловое хранилище или сервер для бэкапов, места хватит. Правда, карты microSD вряд ли можно посоветовать как надёжное хранилище, они часто выходят из строя.
Если поднимать на телефоне сервер для бэкапов или файловый сервер, то самый простой вариант — это установить программу Syncthing [1].
Syncthing выполняет непрерывную синхронизацию файлов между двумя или более компьютерами в режиме реального времени. В таком варианте синхронизации отсутствует центральный сервер, а все компьютеры участвуют в синхронизации как бы peer-to-peer. Синхронизация идёт по дате изменения файла, ещё имеется поддержка синхронизации на уровне блоков, т.е. при небольших изменениях в файле, будут синхронизированы только изменившиеся блоки, а не весь файл сразу. Трафик шифруется по TLS (transport layer security). Опять же, программа с открытым исходным кодом [2], что говорит в пользу надёжности и безопасности такого решения.
В любом случае для персональных компьютеров и ноутбуков в доме нужно резервное хранилище, так что это вполне подходящий вариант.
Syncthing выпускается под все распространённые операционные системы: Linux, Windows, macOS, FreeBSD, OpenBSD, NetBSD, Dragonfly BSD, Illumos, Solaris. Ну и Android, конечно. То есть можно выполнять синхронизацию файлов между всеми этими устройствами, если поставить клиент на каждое из них. Затем в программе на компьютере добавляем ID устройства — и они синхронизируются.
Syncthing на компьютере
Затем остаётся выбрать папки для синхронизации на компьютере и телефоне.
Syncthing на телефоне
Потом программа может постоянно работать в фоновом режиме. Как вариант, можно установить конкретные условия, при которых она выполняется.
Можно поставить более серьёзную программу — UrBackup [3]. Это опенсорсный сервер для резервного копирования. Он может работать по такому же принципу, что и Syncthing — постоянно в фоновом режиме отслеживать папки, которые требуется сохранять в резервной копии, но это более серьёзное решение, которое предпочтительно при управлении бэкапами в сети из десятка компьютеров. Система кроссплатформенная и поддерживает дистрибутивы Linux, Windows и Mac OS.
Веб-интерфейс UrBackup
Чтобы заработал UrBackup, нужно установить Linux-окружение. Тут у нас есть два варианта:
Первый вариант более сложный. Но теоретически он позволяет более эффективно использовать ресурсы системы.
Обязательное требование — рутованный смартфон (для рутования можно использовать инструмент, например, такой Magisk [6]).
Итак, алгоритм примерно такой, судя по инструкции [7] от Ханны Ли, которая и реализовала этот план.
Поэтому для повышения надёжности лучше использовать USB-хаб, в котором есть microUSB для выхода на телефон и стандартный USB для подключения HDD, плюс дополнительный разъём для питания.
В идеале нужно покупать хаб с адаптером Ethernet. Сервер может работать и по WiFi, но кабельное подключение надёжнее.
USB-хаб с разъёмом Ethernet и выходом microUSB
mounts
— и он будет монтироваться при каждой загрузке. После примонтирования его уже не получится форматировать, да это обычно и не нужно. Лучше монтировать его как логический диск, а не физическое устройство, потому что в последнем случае его имя (/dev/block/sdX
) может измениться после перезагрузки, а это нежелательно. Если примонтировать его как логический диск (/dev/sdX
), то имя не изменится.
Найти подключённый HDD, то есть узнать его имя в системе, можно командой lsblk
.
START
— и на телефоне Android загружается нормальный Linux. Например, Debian.
wget https://hndl.urbackup.org/Server/2.4.13/urbackup-server_2.4.13_arm64.deb
apt install -f ./urbackup-server_2.4.13_arm64.deb
http://YOUR_SERVER_IP:55414
.
Возможно, всё это можно сделать без рутования, с использованием Linux-окружения Termux [5]. Проверим, так ли это.
Termux — это бесплатный эмулятор консоли и Linux-окружение под Android, которое устанавливается как обычное приложение и не требует рутового доступа, включает в себя множество пакетов операционной системы Linux. В базовом формате там установлен минимум, дополнительные пакеты можно организовать при помощи диспетчера пакетов «pkg» (аналоге apt). Это самый удобный способ запустить на Android практически любые линуксовые программы. Лучше устанавливать его с F-Droid, а не из Google Play.
Изначально Termux устанавливается в виде «голого» эмулятора. При первом запуске загружается небольшая базовая система, а все нужные пакеты можно установить с помощью менеджера пакетов apt
, стандартного для Debian и Ubuntu. Но его тоже нужно будет установить с помощью встроенного пакетного менеджера pkg
.
В нашем случае можно сразу установить apt:
pkg install apt
Затем с его помощью установить wget, ну или использовать родную команду pkg
:
pkg install wget
Потом можно установить тот же UrBackup, другой файл-сервер или сервер резервного копирования на свой выбор.
К примеру, можем поставить веб-сервер nginx:
pkg install nginx
После этого запускаем веб-сервер:
nginx
Если открыть браузер на смартфоне и набрать localhost:8080
, то мы увидим работающий веб-сервер:
Теперь можно скопировать в рабочую директорию nginx файлы HTML — и на телефоне будет полноценный сайт, который можно открыть для общего доступа через интернет. Тогда у нас будет собственный сервер и собственный
Конечно, для надёжного
Вывод: Таким образом, даже из старого смартфона Android можно сделать адекватный, полнофункциональный многоядерный Linux-сервер на ARM-архитектуре. Если подключить внешний HDD/SDD, то он будет работать как хранилище файлов, сервер резервного копирования для домашней сети или веб-сервер, для ваших личных нужд.
— 15% на все тарифы VDS [12] (кроме тарифа Прогрев) — HABRFIRSTVDS.
— 20% на выделенные серверы AMD Ryzen и Intel Core [13]— HABRFIRSTDEDIC.
Доступно до 31 декабря 2021 г.
Автор:
1shaman
Источник [14]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/nginx/369555
Ссылки в тексте:
[1] Syncthing: https://syncthing.net/
[2] с открытым исходным кодом: https://github.com/syncthing/syncthing
[3] UrBackup: https://www.urbackup.org/index.html
[4] Linux Deploy: https://github.com/meefik/linuxdeploy
[5] Termux: https://termux.com/
[6] Magisk: https://topjohnwu.github.io/Magisk/install.html
[7] инструкции: https://www.hannahtech.co/post/turn-your-old-cracked-android-phone-into-a-backup-server-urbackup-linux-deploy-tutorial-part-i
[8] Linux Deploy: https://github.com/meefik/linuxdeploy/releases/tag/2.6.0
[9] BusyBox: https://github.com/meefik/busybox/releases/
[10] UrBackup: https://www.urbackup.org/download.html
[11] хостинг: https://www.reg.ru/?rlink=reflink-717
[12] 15% на все тарифы VDS: https://firstvds.ru/?utm_source=habr&utm_medium=article&utm_campaign=product&utm_content=vds15exeptprogrev
[13] 20% на выделенные серверы AMD Ryzen и Intel Core : https://1dedic.ru/?utm_source=habr&utm_medium=article&utm_campaign=product&utm_content=coreryzen20#server_configurator
[14] Источник: https://habr.com/ru/post/586910/?utm_source=habrahabr&utm_medium=rss&utm_campaign=586910
Нажмите здесь для печати.