Обновить

Администрирование

Сначала показывать
Порог рейтинга
Уровень сложности

Установка Netbox на Debian-12. Пошаговое руководство

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели14K

Начал я проходить курсы системных администраторов Linux. Ну и одним из заданий стала установка Netbox с «нуля». Первым делом — как всегда — открыл официальную документацию Netbox‑а. Тут есть подробнейшая инструкция (кстати, довольно информативная), как его установить, смотри.

Но на определённых этапах установки стали появляться совершенно непредвиденные проблемы. То, что в главном конфиге пароль нужно указывать дважды и то, как его вообще устанавливать — это уже мои недосмотры, а вот то, что для первой установки после создания базы /venv/bin нужно инициализировать статический контент — это я нашёл где‑то совершенно случайно, и понял что оно работает, что называется, методом «волшебного тыка».

Саму установку делал под «чистым» debian. Такие условия у курсов... Но — на мой скромный взгляд — установка под «Убунтой» полностью идентична, а в Npm и Dnf based системах всё должно работать так же. Никаких специфичных пакетов тут нет.

Читать далее

Загрузка в UEFI/BIOS без горячих клавиш: консольные методы для Windows и Linux

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели11K

Вам когда-нибудь нужно было зайти в BIOS или UEFI, чтобы сменить порядок загрузки, включить виртуализацию или проверить оборудование? Многие пользователи знают лишь один способ — в первые секунды после включения компьютера нажать DelF2 или другую «волшебную» клавишу. Но что делать, если клавиатура не работает, используется удалённое подключение, или вы просто не успеваете нажать нужную кнопку из-за быстрой загрузки системы?

Оказывается, на современных операционных системах можно программно перезагрузиться прямо в интерфейс прошивки, используя лишь командную строку или терминал. В этой статье мы рассмотрим, как это сделать в Windows, Linux и выясним, какие возможности есть в macOS.

Читать далее

Пользователям Linux посвящается. Генератор паролей из /dev/random: от one-liner'а к Rust CLI

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели12K

Генератор паролей из /dev/random: от one-liner'а к Rust CLI

В этой статье хочу поделиться процессом написания собственного генератора паролей, использующего энтропию /dev/random. От pipe команды до Rust утилиты.

Читать далее

Настройка статического ip на CentOS 7 для чайников

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели11K

Привет, Хабр! Холодным зимним вечером мне понадобилось настроить статический ip-адрес на CentOS 7. В этой статье я делюсь своим опытом по настройке статического ipv4. И путем от Destination Host Unreachable до полностью работающего интернета.

Читать далее

Строим свой остров: как создать минимальный Linux для Raspberry Pi

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели17K

Ещё три года назад меня просили рассказать, как собрать минимальный Linux для Raspberry Pi, — и сейчас я выполняю эту просьбу. Несмотря на то, что первоначальной целью Raspberry Pi было создание дешёвого устройства для обучения базовым навыкам программирования, информации о том как, создать минимальный Linux для Raspberry Pi в интернете немного. Я хочу восполнить этот пробел для желающих начать погружение в embedded-разработку.

Linux для встраиваемых систем, включая Raspberry Pi, и Linux для PC имеют ряд различий. Различия касаются используемых загрузчиков, платформо-зависимого кода ядра, файловых систем и прочего. Для встраиваемых систем большое значение имеет Board Support Package (BSP), который обычно сопровождает различные системы на кристалле (System on Chip — SoC) или одноплатные компьютеры (Single Board Computer — SBC).

Чтобы сделать статью интереснее и полезнее, я рассмотрю создание Linux для Raspberry Pi 3 и для Raspberry Pi 4 и укажу на различие этих одноплатных компьютеров в контексте загрузки и сборки ядра Linux. Также мы соберём и запустим downstream и upstream Linux-ядра для Raspberry Pi.

Под Raspberry Pi 3 и Raspberry Pi 4 подразумеваются модели Raspberry Pi 3 Model B и Raspberry Pi 4 Model B соответственно. А обе модели называются в статье Raspberry Pi.

Как и в моей прошлой статье по сборке Linux для PC собирать мы будем без использования Buildroot или Yocto Project, только сделаем его более практичным, так как он будет поддерживать работу с SD-картой.

Такие сборки минимального Linux без Buildroot и Yocto Project мне чем-то напоминают высадку на необитаемый остров, где вы вынуждены минимальным набором инструментов благоустраивать свою жизнь. Да, вашей жизни ничего не угрожает, но определённая закалка в виде полученных базовых знаний остаётся. Поэтому системе Linux, создаваемой в статье, я дал кодовое название Robinson Linux.

Я надеюсь, что после прочтения статьи вам будет гораздо проще собрать Linux для другого одноплатного компьютера, например, Orange Pi.

Кому интересно погрузиться в embedded-разработку, добро пожаловать под кат.

Читать далее

Гайд по первоначальной настройке VPS

Уровень сложностиПростой
Время на прочтение17 мин
Охват и читатели20K

Мне довольно часто приходится работать с только что созданными VPS — будь то развёртывание нового проекта, подготовка тестового окружения или эксперименты с инфраструктурой. Практически каждый такой сервер после создания находится в «сыром» состоянии и требует базовой первичной настройки.

Как правило, эта настройка включает:

Читать далее

Анализ влияния checkpoint_timeout на производительность СУБД PostgreSQL

Уровень сложностиСложный
Время на прочтение8 мин
Охват и читатели7.9K

В мире PostgreSQL, как и в автоспорте, не существует единой идеальной стратегии для всех трасс. Выбор интервала контрольных точек (checkpoint_timeout) — это пит-стоп: можно заезжать часто для максимальной скорости на прямых, но рискуя потерять время на самом заезде, или реже — для стабильного и предсказуемого ритма всей гонки. Всё зависит от типа «трассы» — характера нагрузки на вашу базу данных.

GitHub - Комплекс pg_expecto для статистического анализа производительности и нагрузочного тестирования СУБД PostgreSQL

Глоссарий терминов | Postgres DBA | Дзен

Читать далее

Экран как услуга: Display Image, Streaming и 4K в SPICE

Уровень сложностиСложный
Время на прочтение23 мин
Охват и читатели10K

Парадокс: SPICE отлично справляется с рабочим столом, но спотыкается на видео. Статичный документ — чёткий, быстрый, экономный по трафику. Включили ролик на YouTube — и всё поплыло.

Display Channel — это два разных мира в одном канале. Image Mode: независимое сжатие каждой изменившейся области, умное кэширование, глобальный словарь для повторяющихся элементов интерфейса. Stream Mode: попытка поймать видеопоток и пережать его на лету.

Детекция видео по косвенным признакам. MJPEG из 2009 года как дефолт. GStreamer как путь к H.264. И вечный компромисс между «красиво» и «быстро».

Разбираю анатомию Display Channel — от QXL-команд до финального рендеринга. Вторая статья серии.

Читать далее

Ivory v1.4.0

Уровень сложностиСредний
Время на прочтение2 мин
Охват и читатели6.9K

Ivory теперь поддерживает LDAP и OIDC/SSO наряду с базовой аутентификацией, что значительно упрощает интеграцию с существующей инфраструктурой идентификации. Для каждого провайдера предусмотрены возможности тестирования подключения, а пользователям можно настроить несколько вариантов входа.

Добавлена полная система разрешений для контроля доступа к определенным кластерам, запросам и настройкам. Новый интерфейс управления разрешениями позволяет администраторам предоставлять и отзывать доступ, а пользователи могут запрашивать необходимые им разрешения. Это делает Ivory подходящим для больших команд с разными уровнями доступа.

Читать далее

Новый год с первого по двенадцатое. Как отдохнуть?

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели15K

Новый год у айтишников — штука размытая, формат которой сильно зависит от формата работы, типа занятости, семейного статуса, должности и особенностей работы компании. У кого-то смена в ночь на 1 января, у кого-то фриланс и подработка, кто-то тихо и одиноко пилит пет-проект, а кто-то уходит в такой отрыв, что спустя 10 дней не помнит, как зайти в IDE. Добавим к этому эмоциональную нагрузку, излишки в питании или, напротив, перегибы в зимних видах спорта, ощущение FOMO, предпраздничные рабочие марафоны и вот, получается, что это и не праздник никакой, а чистой воды стрессовая ситуация. После такого хочется скорее вернуться к привычным будням, отладить эту жизнь и желательно так, чтобы организм не требовал постоянной перезагрузки и не уходил в гибернацию. 

Давайте обсудим, как можно попробовать действительно отдохнуть и отчасти победить апатию, выгорание и тревожность.

Читать далее

SPICE: анатомия протокола доставки рабочего стола

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели8.7K

В 2007 году инженеры Qumranet приняли решение, которое определило судьбу протокола на следующие 17 лет: только TCP, никакого UDP. Простота победила производительность.

SPICE — протокол, который доставляет рабочий стол от виртуальной машины до пользователя. Открытый, бесплатный, дефолтный для всего Linux VDI. И при этом удивительно мало кто понимает, как он устроен внутри.

Почему курсор передаётся отдельным каналом? Зачем нужен глобальный словарь в GLZ? Как современные композитные менеджеры сломали красивую идею 2D-команд QXL?

Разбираю архитектуру SPICE — не список фич, а инженерные решения и их последствия. Первая статья серии.

Читать далее

Свой луна-парк с блэкджеком и нейронками: Восстанавливаем доступ к AI-сервисам без VPN

Уровень сложностиСредний
Время на прочтение22 мин
Охват и читатели14K

Привет, Хабр!

На дворе конец 2025 года. Если вы разработчик, дата-сайентист или просто энтузиаст технологий в РФ, то ваше утро начинается не с кофе, а с проверки того, какой еще сервис решил, что вы ему больше не нравитесь.

Ситуация уникальна тем, что мы находимся под перекрестным огнем. С одной стороны — гео-блокировки со стороны самих сервисов (OpenAI, Anthropic, Google, Microsoft), которые закрывают доступ для пользователей из России. OpenAI показывает "Access Denied", Claude вежливо сообщает, что он "не доступен в вашем регионе", а Google Gemini делает вид, что вас не существует.

С другой стороны — нестабильность самих каналов связи. Привычные VPN-протоколы периодически "штормит", соединения отваливаются, а скорость падает до модемных времен из-за особенностей фильтрации трафика на магистралях.

Казалось бы, выход есть — старый добрый VPN. Но сегодня это решение с кучей "но". Даже если вы нашли протокол, который не блокируется, остается проблема маршрутизации. Гонять весь трафик через Амстердам, чтобы просто спросить у ChatGPT, как отцентровать div — это как стрелять из пушки по воробьям. Банковские приложения начинают паниковать, отечественные стриминговые сервисы грузятся с задержкой, а пинг в играх вызывает желание разбить клавиатуру. К тому же, постоянное переключение тумблера утомляет, а забытый включенный клиент быстро высаживает батарею.

Нам нужно что-то более элегантное. Хирургическое. Нам нужен Split Tunneling, но не на уровне приложения VPN, а на уровне всей сети. Чтобы openai.com шел через "заграницу", а gosuslugi.ru — напрямую.

Сегодня мы пройдем путь от "я просто хочу, чтобы оно работало" до создания собственного комбайна для маршрутизации трафика. Мы разберем существующие решения, поймем, почему они нам не подходят, и соберем свой собственный шлюз на базе Nginx (или Angie) и DNS-сервера, который будет делать магию прозрачно для всех ваших устройств.

Читать далее

Готовим скрипт на Bash и упаковываем в AUR

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели12K

В статье я рассказываю, как из набора команд (free, df, ip, ps, uptime) собрать CLI‑утилиту на Bash, добавить аргументы, цветовую индикацию и упаковать всё в AUR как пакет system-monitor

Заглянуть под капот

Ближайшие события

Скрипты фронтенда и sudo в Zabbix

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели5.2K

Всем привет! Мы делаем проекты по Zabbix, накопили большую экспертизу и решили сделать переводы нескольких статей, которые нам показались интересными и полезными. Наверняка, будут полезны и вам. Также своим опытом делимся в телеграм-канале zabbix_ru, где вы можете найти полезные материалы и записи наших вебинаров, опубликованных на нашем ютуб-канале (прим. переводчика). Ниже ссылки на предыдущие статьи из цикла.

Миграция с MySQL на PostgreSQL

SELinux: интеграция с Zabbix и другими инструментами

Защита от ложных срабатываний триггеров в Zabbix с использованием функций min/max/avg

Zabbix – автоматизация управления пользователями (JIT)

Двухфакторная аутентификация (2FA) в Zabbix 7.0

Как настроить прием SNMP-трапов в Zabbix

Отчетность в Zabbix 7.0

Установка и базовое использование Item Browser в Zabbix

В этой статье рассказывается, как легко активировать глобальные скрипты интерфейса в Zabbix и демонстрируются три примера. Подробности под катом.

Читать далее

Основы виртуальной памяти

Уровень сложностиСредний
Время на прочтение14 мин
Охват и читатели8K

Задумывались ли вы о том, зачем компьютерам нужна оперативная память (ОП, RAM), когда у них уже есть дисковое хранилище (диск)? Ответ кроется в скорости доступа. Хотя диск является постоянным, он намного медленнее, чем ОП. ОП жертвует изменчивостью ради скорости - данные исчезают при выключении питания, но время доступа гораздо меньше. Как следствие, центральный процессор (ЦП, CPU) имеет доступ только к ОП, а не к диску.

ЦП имеют встроенные регистры, которые еще быстрее, чем ОП. Тогда зачем нам вообще ОП? Затем, что количество и размер регистров ограничены. Представьте функцию, которой нужно работать с тысячью переменных - все они не поместятся в регистры. Что если нам нужно хранить большие структуры данных, такие как массивы или объекты? У регистров нет емкости (capacity). Вот где в игру вступает ОП - она предоставляет пространство, необходимое для обработки больших и сложных данных.

Читать далее

От охранника до тимлида: история одного админа

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели14K

Приветствую всех. Очень давно хотел написать что-то подобное и поделиться своей историей роста и развития, и заодно посмотреть, что из этого выйдет. Это увлекательное путешествие заняло у меня около 15 лет. Расскажу, как всё начиналось, что меня вдохновляло и продолжает вдохновлять, с чем приходилось мириться ради успеха, какие трудности я преодолел и что из этого вышло. Если вам интересно, прошу под кат.

Читать далее

Итоги года развития NoDPI — открытого инструмента для свободного интернета

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели102K

Салют, Хабр! Прошел ровно год с момента публикации моей первой статьи про загрузку видео с YouTube. Бонусом к статье шла небольшая утилита для... кхм... модификации сетевых пакетов. Это был небольшой скриптик на Python, форкнутый от theo0x0/nodpi. Я не делал на него совершенно никаких ставок, но в комментариях посыпались восторженные (нет) отзывы, обсуждения и просьбы выложить на GitHub. Через полгода, в мае, я опубликовал статью с презентацией NoDPI и подробными объяснениями, что, как и почему. Публикация зашла, попала в топы Хабра, аудитория на GitHub стала расти. Еще через месяц вышел NoDPI for Android - немного сыроватый и неудобный, но вполне работающий и справляющийся со своей задачей.

И вот на дворе конец 2025 года. За окном мороз, падает снег, а значит самое время подвести небольшие итоги...

Читать далее

Аутентификация клиентов в Angie с помощью TLS-сертификатов

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели10K

Сегодня TLS используется повсеместно для безопасной передачи данных, и практически любой веб‑сайт работает по протоколу HTTPS. Но, кроме шифрования трафика, TLS позволяет реализовать аутентификацию клиентов по сертификату (mTLS). В этой статье мы настроим этот механизм на примере веб‑сервера Angie.

Читать далее

GitLab: Основы написания Pipeline 2/3

Уровень сложностиПростой
Время на прочтение22 мин
Охват и читатели11K

Всем привет!

В первой части мы в общих чертах посмотрели на различия GitHub Actions и GitLab, а также начали разбирать структуру файла .gitlab-ci.yml.

В этой части продолжим разбираться с параметрами и особенностями конфигурации: триггеры, job’ы, артефакты и многое другое.

Не понимаете, «что тут происходит»? Рекомендую начать с первой части:: по ссылке.

Если вам интересны подобные материалы, подписывайтесь на Telegram-канал «Код на салфетке». Там я делюсь гайдами для новичков, полезными инструментами и практическими примерами из реальных проектов. А прямо сейчас у нас там ещё и проходит новогодний розыгрыш.

Читать далее

Firebird в высоконагруженной системе мониторинга сети

Время на прочтение7 мин
Охват и читатели6K

Начинаем серию самых интересных статей по докладам с ежегодной технической конференции Firebird Conf. Алексей Мараховец, продакт-оунер и сооснователь 10-Strike Software, рассказал об опыте применения Firebird в продукте для мониторинга сети. В своем докладе Алексей рассмотрел причины выбора данной СУБД, проанализировал преимущества и недостатки её применения, а также поделился техническими аспектами интеграции и эксплуатации.

...

Всем привет! Меня зовут Алексей Мараховец, сегодня я расскажу о применении Firebird в продукте для мониторинга сети, который мы выпускаем с 2015 года.

Наша компания называется 10-Strike Software, и мы специализируемся на решениях для системного администрирования. В 2003 году запустили наши первые продукты для мониторинга локальных сетей организаций. Одним из флагманских продуктов является Мониторинг Сети Pro – это система для мониторинга серверов и оборудования, которая позволяет своевременно узнавать о произошедшем сбое (разрывах связи, остановках служб и т. п.) и устранять проблему с минимальными потерями времени.

Читать далее