Отказоустойчивый системный раздел на Ubuntu

Привет, товарищь! Решил поделиться опытом, как я настраивал отказоустойчивость на своём сервере. После скоропостижной смерти M2 SSD со всеми конфигами домашней лаборатории мне пришлось начать собрать её заново. Так что если у тебя тоже есть два одинаковых SSD и ты хочешь, чтобы система продолжала работать при отказе одного из них, этот гайд про то как сразу делать по уму точно для тебя. Почему я выбрал mdadm Есть два основных пути: mdadm и LVM RAID. Я остановился на mdadm. Для нашей задачи это проще и прозрачнее. LVM даёт крутую гибкость в управлении томами, но если нужна именно защита от смерти диска, mdadm справляется лучше. Восстановление после сбоя понятнее, мониторинг проще, и меньше шансов запутаться в конфигурации. ...

04.03.2026 17:34 · 6 минут · Стороженко Евгений Владимирович

Что такое setuid биты?

Setuid (Set User ID) — это специальный атрибут прав доступа в Linux/Unix, который позволяет пользователю выполнять программу с правами владельца этой программы, а не с правами самого пользователя. Простая аналогия: Представьте, что в офисе есть сейф, который может открывать только начальник. Обычным сотрудникам вход запрещен. Но начальник дает секретарю особый пропуск (setuid-бит), с помощью которого секретарь может открыть сейф, хотя сам не является начальником. Для чего нужны setuid биты? Основные случаи использования: Смена пароля (/usr/bin/passwd) ...

15.02.2026 21:32 · 3 минуты · Стороженко Евгений Владимирович

Исправление ошибок в Hugo сайте

Проблема При запуске команды hugo server возникала ошибка: 1 ERROR html/template:_partials/head.html:153:13: no such template "_internal/google_analytics.html" Решение 1. Исправление ошибки с Google Analytics В новых версиях Hugo внутренний шаблон _internal/google_analytics.html был удален. Необходимо заменить его использование на частичный шаблон из темы PaperMod: 1 2 3 4 5 <!-- Было --> {{- template "_internal/google_analytics.html" . }} <!-- Стало --> {{- partial "google_analytics.html" . }} 2. Обновление шаблона Google Analytics В шаблоне themes/PaperMod/layouts/partials/google_analytics.html также потребовалось обновить способ получения ID Google Analytics, так как в новых версиях Hugo поле .Site.GoogleAnalytics было заменено на .Site.Config.Services.GoogleAnalytics.ID. ...

31.01.2026 22:45 · 1 минута · Стороженко Евгений Владимирович

Тестовая статья

Тестовая статья Это пример статьи в формате bundle. В этом формате все связанные файлы (изображения, код и т.д.) находятся в одной папке с основным файлом. Блок кода 1 2 3 4 def hello_world(): print("Привет, мир!") # Это важно для подсветки синтаксиса Изображения Заключение Формат bundle позволяет удобно организовывать статьи и связанные с ними ресурсы в одной директории.

31.01.2026 22:45 · 1 минута · Стороженко Евгений Владимирович

Portainer: развертывание и решение ошибок подключения к Docker

Поделюсь опытом настройки Portainer — удобного веб-интерфейса для управления Docker. Столкнулся с типичными ошибками и нашел рабочие решения. Типичные проблемы при запуске 1 2 3 “The environment named Docker is unreachable” “client version 1.42 is too old. Minimum supported API version is 1.44” Решения ошибки Проверяем права доступа к Docker socket 1 2 3 4 5 6 7 ls -l /var/run/docker.sock # Если не хватает прав: sudo chmod 666 /var/run/docker.sock # ИЛИ добавляем пользователя в группу docker sudo usermod -aG docker $USER # Перезагружаем сессию newgrp docker Основная проблема Основная проблема — несовместимость новых версий Docker Engine 29+ с некоторыми версиями Portainer. ...

22.11.2025 19:00 · 1 минута · Стороженко Евгений Владимирович

Полная инструкция: Установка WriteFreely на wf.gelonet.ru (Debian 13)е

Предполагается, что у вас есть: VPS с Debian 13, Доступ к серверу через sudo, Доменное имя gelonet.ru, зарегистрированное у любого регистратора. 🔹 Шаг 0: Настройка DNS (в панели регистратора) Зайдите в панель управления вашего регистратора домена (например, reg.ru, nic.ru, Beget и т.д.). Найдите раздел «Управление DNS» или «Зоны DNS» для домена gelonet.ru. Создайте A-запись для поддомена: Имя (host): wf Тип: A Значение (IP): [ваш_публичный_IP_сервера] TTL: 300 или по умолчанию Пример: wf.gelonet.ru → 5.129.217.146 ...

02.11.2025 19:00 · 4 минуты · Стороженко Евгений Владимирович