⚡ 15 строк кода = полный контроль над производительностью
Эй, повелитель серверов!
Надоело переключаться между htop, df и free? Сейчас соберём свой монитор системы, который покажет всё важное одной командой. Bash + Python = твоя личная панель управления.
📌 Что получишь:
- CPU, RAM и диск в одном месте
- JSON-формат для интеграции
- Легко расширить под свои нужды
🔧 Шаг 1: Python-сборщик данных
Создай
🔧 Шаг 2: Bash-обработчик
Создай
🚀 Запускаем:
Результат:
💡 Прокачай скрипт:
- Добавь алерты при превышении порогов
- Логируй данные для графиков
- Отправляй метрики в Telegram при критических значениях
Теперь один скрипт заменяет кучу утилит. А главное — ты можешь допилить его под свои задачи!
____________________
Дополнительный материал:
🧠 - Мастер-класс по выключению и перезагрузке Linux с помощью команды shutdown
🧠 - Прозрачность systemd: Освещаем теневые уголки системных процессов в Linux
🧠 - Управление питанием в Linux: Искусство выключения с помощью systemctl
#Linux_Mastery #Linux #Monitoring #Python #Bash #DevOps #Performance
Эй, повелитель серверов!
Надоело переключаться между htop, df и free? Сейчас соберём свой монитор системы, который покажет всё важное одной командой. Bash + Python = твоя личная панель управления.
📌 Что получишь:
- CPU, RAM и диск в одном месте
- JSON-формат для интеграции
- Легко расширить под свои нужды
🔧 Шаг 1: Python-сборщик данных
Создай
monitor.py:import psutil
import json
def get_system_stats():
stats = {
"cpu": psutil.cpu_percent(interval=1),
"memory": psutil.virtual_memory().percent,
"disk": psutil.disk_usage('/').percent
}
return json.dumps(stats)
if __name__ == "__main__":
print(get_system_stats())
🔧 Шаг 2: Bash-обработчик
Создай
monitor.sh:#!/bin/bash
# Получаем данные от Python
stats=$(python3 monitor.py)
# Парсим JSON через jq
cpu=$(echo $stats | jq -r '.cpu')
memory=$(echo $stats | jq -r '.memory')
disk=$(echo $stats | jq -r '.disk')
# Красивый вывод
echo "CPU Usage: $cpu%"
echo "Memory Usage: $memory%"
echo "Disk Usage: $disk%"
🚀 Запускаем:
# Делаем исполняемым
chmod +x monitor.sh
# Смотрим магию
./monitor.sh
Результат:
CPU Usage: 12.3%
Memory Usage: 45.6%
Disk Usage: 67.8%
💡 Прокачай скрипт:
- Добавь алерты при превышении порогов
- Логируй данные для графиков
- Отправляй метрики в Telegram при критических значениях
Теперь один скрипт заменяет кучу утилит. А главное — ты можешь допилить его под свои задачи!
____________________
Дополнительный материал:
🧠 - Мастер-класс по выключению и перезагрузке Linux с помощью команды shutdown
🧠 - Прозрачность systemd: Освещаем теневые уголки системных процессов в Linux
🧠 - Управление питанием в Linux: Искусство выключения с помощью systemctl
#Linux_Mastery #Linux #Monitoring #Python #Bash #DevOps #Performance
Telegram
Linux Skill - Освой Linux c нуля до DevOps
🌙⏲️ "Мастер-класс по выключению и перезагрузке Linux с помощью команды shutdown" 💤🖥️
Привет, ночные стражи цифрового мира и дневные планировщики задач! Сегодня мы погрузимся в управление системой Linux и научимся использовать команду shutdown для выключения…
Привет, ночные стражи цифрового мира и дневные планировщики задач! Сегодня мы погрузимся в управление системой Linux и научимся использовать команду shutdown для выключения…
🔥9👍6
🔐 Забудь про Nginx для тестов: вот решение проще
Эй, мастер быстрых решений!
Знаешь трюк с HTTP сервером на Python для передачи файлов? А что если нужен HTTPS для тестов, но лень возиться с Nginx? Показываю способ поднять защищённый сервер за минуту.
Классика для HTTP
## Апгрейд до HTTPS
Генерируем самоподписный сертификат:
Создаём файл
Запускаем HTTPS сервер:
Проверяем:
Что получаем:
- Полноценный HTTPS сервер для тестов
- Файловый браузер по умолчанию
- Или веб-страница, если есть index.html
- Никаких конфигов и лишней возни
💡 Где пригодится:
- Тестирование приложений, требующих HTTPS
- Быстрая передача файлов по защищённому каналу
- Временный сервер для демо
- Проверка SSL/TLS настроек
Совет: сохрани скрипт в
____________________
Дополнительный материал:
🧠 - Открываем тайны Linux: Почему скрыть файлы от пользователя root невозможно?
🧠 - Как Создать Идеальный Dockerfile: Секреты Эффективности и Лаконичности
🧠 - Ускоряем YouTube и обходим блокировки на Linux: Ваше руководство
#Linux_Mastery #webserver #python #https #quickfix #sysadmin
Эй, мастер быстрых решений!
Знаешь трюк с HTTP сервером на Python для передачи файлов? А что если нужен HTTPS для тестов, но лень возиться с Nginx? Показываю способ поднять защищённый сервер за минуту.
Классика для HTTP
# python3 -m http.server 8000
## Апгрейд до HTTPS
Генерируем самоподписный сертификат:
# openssl req -new -x509 -keyout localhost.pem -out localhost.pem -days 365 -nodes
Создаём файл
webserver.py:import http.server, ssl
server_address = ('172.20.0.210', 8000)
httpd = http.server.HTTPServer(server_address, http.server.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(httpd.socket,server_side=True,certfile='localhost.pem',ssl_version=ssl.PROTOCOL_TLSv1_2)
httpd.serve_forever()
Запускаем HTTPS сервер:
# python3 webserver.py
Проверяем:
# Открываем в браузере
https://172.20.0.210:8000
Что получаем:
- Полноценный HTTPS сервер для тестов
- Файловый браузер по умолчанию
- Или веб-страница, если есть index.html
- Никаких конфигов и лишней возни
💡 Где пригодится:
- Тестирование приложений, требующих HTTPS
- Быстрая передача файлов по защищённому каналу
- Временный сервер для демо
- Проверка SSL/TLS настроек
Совет: сохрани скрипт в
/usr/local/bin/ и используй как команду для быстрого запуска HTTPS где угодно.____________________
Дополнительный материал:
🧠 - Открываем тайны Linux: Почему скрыть файлы от пользователя root невозможно?
🧠 - Как Создать Идеальный Dockerfile: Секреты Эффективности и Лаконичности
🧠 - Ускоряем YouTube и обходим блокировки на Linux: Ваше руководство
#Linux_Mastery #webserver #python #https #quickfix #sysadmin
Telegram
Linux Skill - Освой Linux c нуля до DevOps
#Linux_Mastery
🚀🐧 Открываем тайны Linux: Почему скрыть файлы от пользователя root невозможно? 🛡️🔍
Привет, исследователи Linux и стражи цифровой безопасности! Сегодня мы раскроем одну из самых интересных особенностей Linux - почему невозможно скрыть файлы…
🚀🐧 Открываем тайны Linux: Почему скрыть файлы от пользователя root невозможно? 🛡️🔍
Привет, исследователи Linux и стражи цифровой безопасности! Сегодня мы раскроем одну из самых интересных особенностей Linux - почему невозможно скрыть файлы…
👍14🔥3
Media is too big
VIEW IN TELEGRAM
🐧 Linux-администратор: с чего начать и куда расти
👋 Привет, покоритель пингвинов!
Анатолий, ведущий системный администратор с 10-летним опытом, отвечает на главные вопросы: как войти в профессию, нужно ли программировать, стоит ли ставить Linux дома и почему самообразование в IT — это навсегда.
🔗 Источник: https://www.youtube.com/
#linux #sysadmin #карьера #ansible #python #bash #devops
👋 Привет, покоритель пингвинов!
Анатолий, ведущий системный администратор с 10-летним опытом, отвечает на главные вопросы: как войти в профессию, нужно ли программировать, стоит ли ставить Linux дома и почему самообразование в IT — это навсегда.
🔗 Источник: https://www.youtube.com/
#linux #sysadmin #карьера #ansible #python #bash #devops
Помните, мы разбирали, как мессенджер MAX сканирует сеть и наличие VPN? Энтузиасты провели реверс-инжиниринг протокола и выкатили полностью открытый бэкенд.
Сегодня у нас на разборе проект OpenMAX - эмулятор сервера для мессенджеров MAX и TamTam. Разберем архитектуру, посмотрим в исходники и учимся разворачивать независимую инфраструктуру.
Проект написан на Python 3.12+ с активным использованием асинхронности (asyncio). Разработчик под ником Alexey Polyakov проделал огромную работу по реверсу официального API (api.oneme.ru и api.tamtam.chat).
Стек технологий выглядит привычно и надежно для любого сисадмина:
- Сетевое взаимодействие строится на websockets и TCP.
- Для упаковки и сжатия трафика применяются msgpack и lz4.
- В качестве базы данных поддерживаются MySQL, MariaDB и легкий SQLite (через aiosqlite).
Судя по дампу SQL-таблиц, сервер локально хранит профили пользователей, токены авторизации, чаты, контакты и сами сообщения в формате JSON-объектов.
Интересная деталь: автор проекта жестко выступает против современных трендов вайбкодинга. В правилах проекта (CODE_OF_CONDUCT.md) прямо указано, что OpenMAX не принимает правки и Pull Requests, написанные с использованием искусственного интеллекта и нейросетей. Только ручной хардкор.
Как переключить на свой сервер?
Просто скачать официальное приложение из стора и вбить IP-адрес не выйдет. Сервер требует модификации клиента.
У вас есть два пути:
1. Использовать пропатченный мобильный клиент MAX для Android или iOS (в репозитории есть раздел с инструкциями по патчингу IPA и APK).
2. Собрать открытый клиент Komet из исходного кода, жестко заменив адреса серверов на свои локальные.
Развертывание и настройка
Проект пока находится на ранней стадии и не рекомендуется для сурового продакшена, но для тестирования закрытого корпоративного контура подходит.
Для старта серверу обязательно требуются SSL-сертификаты. Если у тебя нет валидных сертификатов от Let's Encrypt, можно сгенерировать самоподписанные прямо в терминале.# Генерация самоподписанного сертификата X.509 на 365 дней
openssl req -x509 -newkey rsa:2048 -nodes -keyout key.pem -out cert.pem -days 365
Далее нужно настроить переменные окружения. Сервер слушает сразу несколько портов для совместимости с разными клиентами.# Пример минимальной конфигурации .env файла
host = "0.0.0.0"
oneme_tcp_port = "443"
tamtam_tcp_port = "4433"
oneme_ws_port = "81"
tamtam_ws_port = "82"
log_level = "debug"
db_type = "sqlite"
db_file = "openmax.db"
certfile = "cert.pem"
keyfile = "key.pem"
Что делать, если хочется попробовать?
Авторы сами предупреждают в README: проект находится на ранней стадии разработки, вероятно полон багов и категорически не рекомендован для профессиональной среды. На данный момент у сервера нет опубликованных релизов, стабильных версий и changelog-ов.
Под капотом:
- Весь код написан на Python и лежит в директории `src/`.
- Реализован собственный TCP/WS-стек через модули `oneme_tcp`, `tamtam_tcp` и `tamtam_ws`.
- Конфигурация задается через файл `.env` (шаблон доступен в `.env.example`).
- Схема базы данных описана в файле `tables.sql`.
Уже этого набора характеристик достаточно, чтобы понять: пускать этот код в контур, где критична безопасность, нельзя.
Вердикт: используйте проект исключительно как локальную песочницу в закрытой сети с тестовыми данными. Если очень хочется развернуть сервер — прячьте его в изолированный контейнер без доступа к боевым базам и вашей основной внутренней сети.
👉 Рубрика: #News@LinuxSkill
#MAX #OpenSource #Python #Security #SelfHosted #ReverseEngineering
Please open Telegram to view this post
VIEW IN TELEGRAM
👍17👎2👀1