ПРИВАТНОСТЬ · 152-ФЗ

Файлы обрабатываются локально в вашем браузере

Ничего не загружается на наши серверы. Все операции выполняются полностью в браузере через библиотеку JavaScript. Файл не покидает ваше устройство.

Это значит: работает офлайн (после первой загрузки страницы), не зависит от лимитов сервера, персональные данные не обрабатываются нами в смысле 152-ФЗ — нечего хранить и нечего утечь.

ИНСТР-196локально в браузереsystemd 250+ревизия 2026-05-09

Генератор systemd unit-файла

Создание .service и .timer unit-файлов для systemd с предустановленными настройками безопасности (NoNewPrivileges, PrivateTmp, ProtectSystem). Готовые bash-команды для установки. 5 типов сервиса, 5 политик перезапуска.

⏱ ~30 сек · 5 типов · 5 политик Restart · timer · bash-команды
Генератор · ИНСТР-196|локально в браузере
calcal.ru / generator-systemd-unit-fajla
Загрузка генератора…
5
Type вариантов
5
Политик Restart
timer
Cron-замена
5
Опций безопасности

Зачем systemd unit

Сystemd — стандартный init-менеджер в современных Linux-дистрибутивах (Ubuntu 16.04+, Debian 8+, CentOS 7+, RHEL 7+, Arch). Запуск приложения через systemd даёт автозапуск при boot, автоматический перезапуск при падении, единое логирование через journalctl, изоляцию через cgroups и namespaces.

Service vs Timer

  • .service — описывает само приложение или скрипт. Содержит команду запуска, зависимости, лимиты.
  • .timer — расписание для запуска .service. Альтернатива cron с интеграцией в journal.

Базовая безопасность unit

Включаемые опции:

  • NoNewPrivileges=true — запрет на эскалацию привилегий через setuid.
  • PrivateTmp=true — изолированная /tmp.
  • ProtectSystem=strict — read-only /usr, /etc, /boot.
  • ProtectHome=true — недоступ к /root и /home.
  • ReadWritePaths=<workdir> — белый список писать.

Для production-нагрузок дополнительно: ProtectKernelTunables, ProtectKernelModules, RestrictNamespaces, SystemCallFilter, CapabilityBoundingSet.

Установка

  1. Скопировать unit в /etc/systemd/system/.
  2. sudo systemctl daemon-reload.
  3. sudo systemctl enable --now <name>.
  4. Проверка: systemctl status <name>, journalctl -u <name> -f.
ИСТОЧНИКИ
  1. systemd.service(5) — официальный manpage. systemd. man.archlinux.org/man/systemd.service.5. обновляется.
  2. systemd.exec(5) — параметры выполнения. systemd. man.archlinux.org/man/systemd.exec.5. обновляется.
  3. systemd.timer(5). systemd. man.archlinux.org/man/systemd.timer.5. обновляется.
  4. Lennart Poettering — Service Hardening. Lennart Poettering. 0pointer.de. обновляется.
ЧАСТЫЕ ВОПРОСЫ

Часто задаваемые вопросы

Type=simple — главный процесс ExecStart запускается напрямую и считается готовым сразу (по умолчанию для большинства приложений). Type=forking — для старых демонов, которые форкаются и завершают родительский процесс (нужно указать PIDFile). Type=oneshot — выполняется один раз и завершается (для скриптов, миграций). Type=notify — приложение само сообщает systemd о готовности через sd_notify (используется в systemd-aware приложениях типа PostgreSQL). Type=idle — запускается после всех остальных сервисов (для tty-сервисов и shell). Для Node.js, Python, Go-приложений — почти всегда simple.
systemd timer — современная альтернатива cron. Преимущества: (1) интегрирован с journalctl — все логи в одном месте; (2) поддержка Persistent=true — пропущенные запуски выполняются после перезагрузки; (3) можно запускать сервис как любую другую systemd-unit; (4) удобный синтаксис OnCalendar (daily, hourly, *-*-* 03:00:00). Недостаток — синтаксис и логика отличаются от cron, требует .service + .timer файлы. Для простых задач cron удобнее, для сложных — systemd.
В сгенерированный unit включены 5 базовых: (1) NoNewPrivileges=true — процесс не может получить дополнительные привилегии; (2) PrivateTmp=true — изолированная /tmp директория; (3) ProtectSystem=strict — /usr и /etc только для чтения; (4) ProtectHome=true — /root и /home недоступны; (5) ReadWritePaths=<workdir> — разрешена запись только в рабочей директории. Это базовая защита; для production добавляйте ProtectKernelTunables, RestrictNamespaces, SystemCallFilter.
Алгоритм: (1) сохраните файл в /etc/systemd/system/<name>.service (для timer — .timer); (2) sudo systemctl daemon-reload — перечитать конфигурацию; (3) sudo systemctl enable --now <name> — поставить на автозапуск и запустить; (4) sudo systemctl status <name> — проверить статус; (5) sudo journalctl -u <name> -f — следить за логами. Для timer enable .timer (а не .service) — это включает планировщик. Сам .service запускается timer-ом или вручную.
Гибкий синтаксис: специальные значения (daily, hourly, weekly, monthly, yearly), календарные форматы (Mon..Fri 09:00:00), точные даты (*-*-* 03:00:00 — каждый день в 3:00), интервалы (Mon..Fri *-*-* 9..18:00:00 — будни 9-18). Несколько раз в день — через диапазон или несколько OnCalendar строк. Проверка корректности — systemd-analyze calendar "<выражение>" покажет следующее срабатывание.
systemd использует cgroups: MemoryMax=512M — жёсткий лимит RAM (OOM kill при превышении); MemoryHigh=400M — мягкий лимит (троттлинг). CPUQuota=50% — лимит на CPU (50% от одного ядра). TasksMax=100 — максимум процессов. IOReadBandwidthMax=/var/lib 10M — лимит IOPS. Все эти параметры идут в [Service] секции и вступают в силу после daemon-reload.
Лиана Арифметова
АВТОРverifiedред. calcal.ru

Лиана Арифметова

Создатель и главный редактор

Миссия: демократизировать сложные расчёты. Превратить страх перед числами в ясность и контроль. Девиз: «Любая повторяющаяся задача заслуживает своего калькулятора».

Mathematical Engineering · МФТИ · редактирует каталог с 2012 года

Был ли этот калькулятор полезен?

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ

Инструмент справочный — не заменяет эксперта

Только для информационных целей. Все расчёты, результаты и данные, предоставляемые инструментом, носят исключительно ознакомительный и справочный характер. Они не являются профессиональной консультацией — медицинской, юридической, финансовой, инженерной или иной.

Точность результатов. Калькулятор основан на общепринятых формулах и методиках, однако фактические результаты могут отличаться в зависимости от индивидуальных условий, исходных данных и применяемых стандартов. Мы не гарантируем полноту, точность или актуальность приведённых расчётов.

Профессиональные решения — медицинские, финансовые, инженерные — должны приниматься только после консультации с квалифицированным специалистом. Не используйте автоматический расчёт как единственное основание для важных решений.

Ограничение ответственности. Авторы и разработчики сервиса не несут ответственности за прямой или косвенный ущерб, возникший из-за использования данных расчётов. Пользователь принимает на себя всю ответственность за интерпретацию результатов.

СМЕЖНЫЕ ИНСТРУМЕНТЫ

Похожие калькуляторы

15

Генератор Cron-выражений

Визуальный конструктор cron-расписаний с переводом на русский язык. Создайте cron-выражение для планировщика задач Linux, настройте расписание и посмотрите ближайшие запуски.

/generator-cron

Конвертер Unix Timestamp ↔ дата

Онлайн конвертер Unix Timestamp в дату и обратно. Текущий Unix-таймстемп, конвертация с учётом часовых поясов России, форматы ISO 8601 и RFC 2822.

/konverter-unix-timestamp

YAML валидатор и форматтер

Онлайн проверка и форматирование YAML-файлов. Валидация синтаксиса, конвертация YAML ↔ JSON, подсветка ошибок с номерами строк.

/yaml-validator

Калькулятор размера Docker-образа

Оценка размера Docker-образа по базовому образу и зависимостям. Сравнение base images, советы по оптимизации и multi-stage сборке.

/razmer-docker-obraza

Калькулятор SLA / стоимости простоя

Расчёт допустимого простоя по SLA (99.9% → минуты в год). Калькулятор стоимости даунтайма и обратный расчёт SLA по фактическому простою.

/kalkulyator-sla-uptime

Генератор nginx конфига

Server-блок nginx с SSL Let’s Encrypt, HTTP/2, gzip, HSTS, CSP, кешированием и rate limit. 4 сценария: proxy, статика, PHP, SPA.

/generator-nginx-konfiga-server-block

Объединить PDF онлайн — без загрузки на сервер

Склейка PDF в браузере через pdf-lib. До 20 файлов, до 50 МБ каждый. Локально, без отправки на сервер (152-ФЗ).

/obyedinit-pdf-onlajn-besplatno

Сжать PDF онлайн — уменьшить размер локально

Сжатие PDF в браузере без потери качества. 3 уровня (object streams, удаление метаданных). До 50 МБ. Через pdf-lib, локально.

/szhat-pdf-onlajn-umenshit-razmer

Разделить PDF на страницы — извлечь нужные онлайн

Разделение PDF на страницы локально: каждая страница отдельным файлом, диапазон или группами. Через pdf-lib, без отправки на сервер.

/razdelit-pdf-na-stranicy-onlajn

JPG в PDF — конвертер с объединением

Конвертация JPG/PNG в PDF в браузере: до 30 картинок в один документ. Форматы A4/A3/Letter или подгонка под изображение.

/jpg-v-pdf-konverter

Повернуть страницы PDF онлайн

Поворот всех или указанных страниц PDF на 90/180/270° за миллисекунды. Lossless. Через pdf-lib, без отправки на сервер.

/povernut-pdf-stranitsy-onlajn

Водяной знак на PDF онлайн (кириллица)

Нанесение текстового знака («КОНФИДЕНЦИАЛЬНО», «ЧЕРНОВИК») на все страницы PDF. Поддержка русского текста через Canvas. 4 положения, регулировка прозрачности.

/dobavit-vodyanoj-znak-na-pdf

Нумерация страниц PDF онлайн

Проставьте номера страниц PDF в браузере: 4 формата, 6 положений, пропуск титульной, кастомный старт. Поддержка кириллицы. Через pdf-lib + Canvas.

/numerovat-stranitsy-pdf-onlajn

PDF в JPG / PNG — конвертер страниц

Рендеринг каждой страницы PDF в картинку через pdfjs-dist (Mozilla). 4 уровня качества: 96 / 150 / 300 DPI и lossless PNG. До 50 МБ.

/pdf-v-jpg-konverter-onlajn

Извлечь текст из PDF онлайн

Извлечение текста из PDF в браузере через pdfjs-dist (Mozilla). Plain text, с разделителями страниц или JSON. Файлы не уходят на сервер.

/extract-text-iz-pdf-onlajn