Мой Android стал мощнейшим домашним сервером — теперь ПК даже не нужен! Вот как это изменило всё

Логотип Python поверх Termux, на котором запущена программа

Хобби с домашним сервером способно затянуть всерьёз — и ведь совсем не обязательно тратить на железо десятки или сотни тысяч. Для меня это всегда был способ поиграть с технологиями, протестировать что-то новое, научиться разным фишкам и в IT, и в личных проектах.

Порой достаточно простого смартфона, который всегда со мной (или любого из старых Android-девайсов, что валяются без дела), чтобы открыть для себя кучу новой информации, поднабраться опыта и создать реально полезные штуки. В этом году я твёрдо захотел освоить новый язык программирования и перестать заниматься «кодингом ради настроения».

Хотя я свободно работаю с HTML5 и CSS, Python всегда казался мне неизведанным полем. Я стартовал с уроков на W3 Schools, заглянул в старые книги, а ещё обратился к знакомому, который прекрасно разбирается в Python. Разобравшись с основами и освоившись в Termux, я буквально собрал карманный сервер на простых, но мощных Python-скриптах — прямо на телефоне.

Вот несколько недавних примеров — теперь мой Samsung Z Fold 5 стал настоящей мини-лабораторией для Python!

Как управляю Raspberry Pi с Android — навсегда забыл о проводах и мониторах

Больше не нужно включать компьютер ради одной команды для Pi!

Локальный веб-сервер прямо со смартфона

Самый удобный способ передавать файлы без проводов

Простой сервер с помощью http.server на Python

Я обожаю истории про self-hosting и терпеть не могу возиться с проводами. Благодаря локальному веб-серверу на Python быстрая передача файлов теперь у меня всегда под рукой. Обычно я перекидываю на телефон фотки или скачиваю видео — раньше для этого приходилось искать USB-кабель, разрешать подключение и всё копировать вручную.

Конечно, можно было отослать файлы себе на email, залить в Google Drive, Dropbox или воспользоваться WeTransfer. Все эти способы работают, но хотелось сделать что-то своё! Отличный повод попробовать на практике домашний сервер на Python.

Как я развернул сервер через http.server

Всё элементарно: выбрал порт и набрал одну команду

Сетевой шкаф с проводами

Запустить сервер оказалось проще простого. Для начала я узнал IP-адрес смартфона — его видно в настройках, либо можно спросить у Termux командой.

Для экспериментов создал на Samsung отдельную папку.

В Python уже есть модуль для TCP-сервера: после запуска он становится доступен в домашней сети по выбранному порту. Потом хочу заморочиться собственным сервером на Python, а пока что этот способ — идеальный вариант для быстрой передачи файлов по домашней сети. Пользуюсь почти каждый день — не думаю, что когда-нибудь перестану.

Автоматическая сортировка музыки

Я сделал для своих музыкальных файлов настоящего «цифрового архивариуса»

Органайзер музыки на Python на Termux

Следующий мини-проект на Python — скрипт, который самостоятельно наводит порядок в музыке, скачанной из Internet Archive. Тут пригодились стандартные модули OS и Shutil — почти все начинают работать с файлами в Python именно через них, потому что они максимально просты и удобны.

В Termux я завёл файл organizer.py, указал в нём библиотеки, прописал путь к музыкальной папке — и задал простой принцип: если файл заканчивается на .mp3, Shutil перекидывает его в папку «tunes».

Последняя команда shutil.move(source_path, target_path) — и музыка мигрирует из загрузок прямиком в архив. Всё работает без сбоев: теперь у меня настоящий цифровой архивариус, который сам всё раскладывает по папкам.

Plex бесконечно глючил с проигрыванием — я полностью перешёл на клёвую open-source альтернативу

Plex надоел, теперь использую Jellyfin — свободный аналог с отличным функционалом.

Проверка открытых портов (сокетов)

Один скрипт — и я сразу вижу, какие порты открыты

Python-скрипт проверки портов в Termux

Я много проектов стараюсь делать простыми и по-настоящему полезными. Скрипт для проверки портов — именно такая штука. Теорию рассказывать не буду (на Python этого полно), ведь главное — удобство.

Мне важно быстро выяснить, открыт ли нужный мне порт — особенно когда настраиваю FreshRSS или Jellyfin. Для этого использовал модуль socket и функцию connect_ex().

Оказалось, что порты RSS и сервера по-прежнему закрыты — значит, лишний трафик не проходит и сервисы остаются защищёнными. Мне этого вполне достаточно для домашней безопасности.

Кстати, http.server в Python предназначен только для чтения, а если нужно что-то большее (например, доступ с других устройств), проще использовать Flask или запускать вот так: python -m http.server --bind 0.0.0.0.

Лёгкий мониторинг системы со смартфона

Теперь следить за процессами — проще простого

В этом эксперименте я подключил Termux API, с которым давно знаком — через него легко управлять функциями смартфона прямо из терминала. Решил сделать скрипт, который сам выдаёт статус батареи: вызвал termux-battery-status из Python в виде подпроцесса. Так как я использую адаптивное энергопотребление, слежу за зарядом особенно внимательно.


Подпишитесь и получайте подробные инструкции по Python на смартфоне и настройке домашнего сервера

В самом скрипте просто прописал все нужные параметры — вывод через print(), и всё нужное сразу появляется в терминале.

Стоит запустить python status.py — и уже через пару секунд вижу всю информацию по батарее, никакие дополнительные приложения не нужны. Удобно, всегда под рукой, и скоро хочу сделать что-то похожее и для других параметров системы.

Python запускается везде — с любого смартфона, планшета и даже с Raspberry Pi!

Работайте с Python-кодом где угодно, особенно если Raspberry Pi подключён к вашей сети.

Android кажется «закрытой крепостью», но Python с Termux реально открывают все двери!

Смешной скрипт на Python, написанный в nano

В первый раз, когда я запустил Python в терминале, ради веселья вывел на экран текст песни Фрэнка Заппы. За этот год я настолько продвинулся, что теперь могу автоматизировать загрузки, писать любые скрипты и находить кучу нестандартных решений.

Все эти маленькие проекты стали для меня не только отличной практикой, но и настоящим удовольствием. Python привнёс море новых идей в моё хобби с домашним сервером. Теперь вдохновения хватает на любые смелые эксперименты, а мысль «сделаю просто потому что могу» стала девизом для новых проектов на смартфоне!

61PhnlzlYdL._AC_SL1500_

Samsung Galaxy S25 FE

Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!

Премиум подписка — это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!

Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь

Также подписывайтесь на нас в:

Алекс Бежбакин
Оцените автора
Добавить комментарий