Подборки

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

Системное администрирование Linux, диагностика, утилиты, права, systemd, файловые системы и сеть.

linux systemd ssh iptables cron fsck journal journald ядро

Подборка для повседневной Linux-практики: команды, настройки, сервисы, диагностика и системные мелочи, которые экономят часы.

58 материалов в подборке
  1. Termix бесплатный менеджер серверов. Обзор

    Я потыкал Termix, бесплатный аналог Termius. И Termix выигрывает в открытости, поддержке SSH туннелей и возможности управлять файлами из браузера. Минусы – нестабильный VNC, странные анимации панели и наверное необходимость ручных патчей. Если твоя инфраструктура в основном состоит из Linux‑серверов, Termix может стать отличной заменой.

  2. Почему лишние условия убивают читаемость в Bash

    Мне за 30, я видел много скриптов с дьявольскими отрицаниями, и каждый раз хотелось задушить автора. Поэтому я решил написать пост, в котором покажу как превратить кошмарную конструкцию в простой if-else без единого лишнего знака. Ты узнаешь, почему отрицания усложняют чтение, и как делать проверки файлов и прав доступа так, чтобы они были интуитивно понятны. Это базовый навык, без которого ты будешь мучиться всю свою DevOps-карьеру.

  3. Как перейти с Docker на Podman

    Вместе с Романом Шубиным, СТО и автором канала Bash Days, собрали отдельный мини-курс по Podman. Внутри — восемь материалов, которые помогут освоить инструмент с открытым исходным кодом для работы с контейнерами.

  4. Секрет ускорения Docker сборки

    Дружище, если твой Dockerfile начинается с COPY и только потом npm install, то соболезную. Каждая твоя сборка переустанавливает зависимости заново, хотя они сто лет не менялись. Я сам так делал, пока не понял, что кеш Docker работает как тупой автомат, если слой изменился всё, пиши пропало.

  5. Less и секретный режим мониторинга

    Я пробовал разные инструменты, но только less позволил мне объединить просмотр и поиск в одном окне. Я могу прыгать по строкам, искать IP‑адреса и мгновенно возвращаться в режим слежения нажатием SHIFT+F. Это экономит кучу времени и делает работу с логами почти приятным развлечением. Если ты ищешь лёгкий способ улучшить наблюдение за логами, этот трюк спасёт тебя.

  6. Тайна вызова Less в Linux утилитах

    Знаешь этот бесконечный скролл в git log? Кто-то привык к пагинации, кто-то тупо шпарит grep. Я расскажу тебе как git управляет выводом истории коммитов через внешнюю утилиту less. И да, если её убить — простыня посыплется без остановки. Я даже strace подключил чтобы убедиться. А под конец вскрою тему переменной PAGER — ты можешь туда воткнуть что угодно, хоть vim, хоть lolcat. И это жирный вектор атаки, который пентестеры обожают.

  7. Массовый SSH‑скан в своей Wi‑Fi сети

    Как я поймал скрытый SSH трафик с Android и iPhone через opnSense. Люди до сих пор думают, что угрозы это когда хакер в худи ломает Пентагон. На деле твой смартфон сам бодро шатает чужие SSH порты пока ты листаешь мемы. Я проверил свою сеть и процент зараженных устройств оказался таким, что захотелось перекрестить роутер святой водой. Особенно весело владельцам дешевых маршрутизаторов. Там логов нет, контроля нет, зато есть сюрпризы и цифровой сифилис по DHCP.

  8. S3 кластер на Garage, как прикрутить HAProxy

    В прошлый раз я тебе показал как собрать S3 кластер из трех серверов на Garage. Теперь самое время накрутить ему балансировщик и SSL сертификат чтобы всё работало как часы даже если одна из нод ляжет спать. В этой части мы ставим HAProxy, прокидываем домен с lets encrypt и проверяем отказоустойчивость на живом примере. Никакой магии только конфиги и мат.

  9. Свой S3 или пошаговая настройка Garage

    Три рандомных сервака, композник и голый opensource — вот мой рецепт собственного S3 облачного хранилища. Garage не просит денег, реплицирует данные на все ноды и переживает падение любого сервера. Инструкция для тех, кто не боится консоли и хочет настоящей отказоустойчивости.

  10. Awk для новичков. Как автоматизировать анализ логов

    Я знаю, что сейчас все гонятся за JSON, и это удобно для новичков. Но когда речь заходит о реальной работе с большими логами, я всегда возвращаюсь к awk. Мой опыт показывает, что для быстрых фильтров и обработки огромных объемов данных awk часто обходит современные форматы. Я покажу, как использовать его мощь, когда другие инструменты начинают тормозить.

  11. Как получить root на любом Linux сервере

    Сегодня расскажу как пентестеры и черношляпы повышают привилегии на Linux машинах и получают root доступ. Без уязвимостей и эксплоитов.

  12. Как бесплатно спрятать IP сервера и защититься от атак

    Раньше с Cloudflare всё было просто, а теперь бесплатных вариантов почти нет. Я расскажу, как сам прячу IP сервера и защищаю приложения с помощью NetBird и Safeline.

  13. 15 функций Bash, которые стоит добавить в .bashrc

    Если ты часто работаешь в командной строке, тебе точно пригодится подборка моих bash-функций для .bashrc. Они делают рутинные задачи намного удобнее и быстрее. Зацени и добавь себе.

  14. Особенности использования sftp в Bash скриптах

    Как автоматизировать sftp через скрипты. Объясню, почему key-based authentication это важно и как batch-mode помогает ловить ошибки.

  15. Настройка Yubikey + WSL2 + SSH

    Как подключить физический YubiKey к WSL2, чтобы использовать его для SSH без паролей и SMS. Разберёмся с проблемами прокидывания USB в WSL и сделаем автоматический скрипт, который решит баги с повторным подключением ключа.

  16. Получаем SSL сертификат на IP адрес

    Если не хочется связываться с доменами, но нужен SSL на IP — вот мой опыт и инструкция, как это сделать с помощью Let's Encrypt и acme.sh. Всё просто и понятно!

  17. Как быстро скачать файл с сервера

    Часто нужно быстро скачать файл с сервера, а настроить что-то сложное лень? Я расскажу, как с помощью одной команды Python поднять простой веб-сервер и скачать любой файл за пару секунд.

  18. Как современный Docker упростил работу с compose файлами

    Почему теперь можно использовать просто compose.yaml, а не привычный docker-compose.yaml. Всё стало проще, но если у тебя старая ОС — есть нюансы. Заодно обсудим, зачем вообще был нужен version в файле.

  19. Стабилизация реверс-шелла — советы из практики

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

  20. Капча под контролем или как нажать F24

    Я придумал хитрую капчу и покажу как с помощью xdotool ее можно эффективно обойти. Роботы же начинают троить, кейс отлично подходит под нишевые проекты с защитой от дурака.

  21. Терминальный браузер нового поколения

    Если любишь терминал и хочешь попробовать что-то новое, Brow6el для тебя. Сборка не из пакетов, но есть скрипты. Браузер поддерживает графику, скрипты и все современные фишки.

  22. Домашний почтовый сервер на домене

    Недавно решил перенести почтовый сервер к себе домой, чтобы сэкономить пару тысяч в месяц. В статье — как настроить прокси с angie и обойти отсутствие белого IP.

  23. Bind vs Volume в Docker

    Если ты тоже путаешься, что лучше — bind или volume, этот пост для тебя. Покажу основные правила и примеры из жизни, чтобы ты не писал дичь и не ломал себе окружение.

  24. Stop Using Pi-Hole – Technitium DNS Is Better

    Если ты устал от сложных настроек DNS и хочешь кластер «из коробки», расскажу, как я быстро развернул Technitium DNS с минимальными усилиями.

  25. Настройка Pi-Hole кластера

    Быстро и просто о том, как заставить Pi-Hole ноды работать с одинаковыми настройками в синхронном режиме.

  26. Хакнем Proxmox. Кластер из 2 нод без кворума

    Обходим проблемы кворума в Proxmox. Забудьте о сбоях при потере одной ноды, кластер остаётся живым, а бэкапы проходят без ошибок. Простой способ сделать домашнюю лабораторию надёжной.

  27. Как заставить ZSH автоматически перечитывать конфиг

    Лень каждый раз вводить source ~/.zshrc? У меня тоже! Сделал автоперезагрузку конфига в ZSH с проверкой синтаксиса — делюсь, как это работает и что стоит учесть.

  28. Помещаем процессы в «клетку» или cgroups для начинающих

    Сегодня покажу, как ограничить жор ресурсов у своих скриптов. Если хочешь, чтобы сервер не превращался в печку — тебе сюда.

  29. Прощай Helper scripts. Запускаем OCI в Proxmox 9.1

    В этом разборе показываю, как в Proxmox 9.1 работает новая нативная поддержка OCI-образов. На примере nginx:latest скачиваем образ из Docker Hub, превращаем его в LXC-контейнер и запускаем без единой команды Docker. Разбираем, как входить в такой контейнер, где менять переменные окружения и как подключать хранилища.

  30. Обновляем Proxmox 8 до Proxmox 9 (OCI)

    Подробная инструкция по переходу на новую ветку Debian Trixie в Proxmox. Фиксим репы, обновляем ключи, прогоняем pve8to9 и устанавливаем всё, что предлагает система. Даю комментарии по каждому этапу, чтобы апдейт не превратился в ад.

  31. Multipass простая и мощная виртуальная машина Ubuntu в один клик

    Классный инструмент для быстрого запуска Ubuntu виртуалок. Забудь про бесконечные настройки и тормоза VirtualBox!

  32. Options vs inputs в GitLab CI, что выбрать и как настроить

    Выпадающие списки в Gitlab. Многие путаются с options и inputs в GitLab, поэтому делюсь своим опытом и простым решением, которое сработало у меня.

  33. Load Average на пальцах

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

  34. Туалетная бумага по cron’у

    Каждый месяц я забывал заказать туалетную бумагу, пока не написал Bash-скрипт, который делает это за меня. В этом посте расскажу, как с реверсом API и cron’ом автоматизировал рутину.

  35. Как работать с Terraform на выделенных серверах

    После того, как я выполнял terraform apply, где-то в дата-центре, специально обученный мальчик шёл ножками, читал мой yaml манифест, плакал, собирал руками железный сервер и передавал мне в работу. Сейчас этот процесс полностью автоматизирован, а мальчику больше не нужно плакать и читать мой yaml говнокод. На досуге я накидал для тебя техно-пост, как это работает. С командами, нюансами и картинками.

  36. Управляем CPU affinity или как ограничить процессы нужными ядрами

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

  37. Governors — как и зачем менять частоту процессора

    Иногда хочется заставить процессор работать на полную, а иногда сберечь батарею. Расскажу, как это сделать с помощью governors и небольшого bash-скрипта.

  38. Почему Docker возвращает неправильный Exit Code

    Почему контейнер Docker «маскирует» код выхода приложения и как правильно настроить запуск, чтобы видеть настоящий exit code.

  39. Запускаем Windows программы на Linux

    WinBoat — маленькое чудо для тех, кто сидит на Linux, но не хочет отказываться от Windows. Это мой новый фаворит для запуска виндовых приложений в Linux без лишних заморочек. Делюсь впечатлениями.

  40. Настройка core dump в Docker

    Если приложение в Docker внезапно упало, этот пост поможет настроить сбор дампов и разбираться с ошибками.

  41. Погружение в Linux ядро. Мой опыт с fanotify и eBPF

    Иногда проще сделать chown -R, но я решил заморочиться и написать свой мониторинг на eBPF. Рассказываю, что из этого вышло и почему это стоило того.

  42. Быстрый способ запускать задачи в cron с шагом 30 секунд

    Если не хочется возиться с systemd timers, вот простой хак для запуска скриптов в cron каждые 30 секунд. Быстро и понятно!

  43. Ищем узкие места в проде с помощью strace

    Если продакшен тормозит, strace поможет найти виновника и быстро исправить ситуацию.

  44. Визуальный сервис для разбора Bash/Shell команд

    Рассмотрим сервис в виде веб-сервиса, который помогает понять, что делает та или иная shell-команда в Unix/Linux. Проще говоря, ты вставляешь команду, а оно разбирает её и объясняет фрагмент за фрагментом, что означает каждая часть.

  45. Как сохранить правила iptables

    Это вечная проблема, так как из коробки этот механизм реализован достаточно хуёва либо вообще не реализован. Но Linux на то и Linux, что его нужно допинать и сделать правильно.

  46. Закончилось место на диске? Или же закончились inode?

    Ситуация неприятная и чаще всего выходом служит удаление «ненужных» файлов. Рассмотрим ситуацию, когда все файлы нужны, то есть удалять ничего не будем.

  47. Упоротые Bash/Shell однострочники

    Посылаем PING всем redis'ам в кластере и собираем PONG в ответ.

  48. TUI штука для замены тормозного Postman

    Когда GUI не вариант, Posting — идеальный инструмент, минималистично, понятно, сессии сохраняются — рекомендую всем, кто любит чистый терминал.

  49. Деградация батареи в Linux

    Сегодня пакажу, как в Linux узнать степень деградации батареи и вынести этот показатель в аккуратный модуль Waybar.

  50. Манипулируем логами с помощью systemd-cat

    Как направить логи прямиком в journald без костылей и внешнего софта.

  51. Не меняется 22 порт после замены в ssh_config

    Разбираемся почему перестал меняться дефолтный ssh порт, залазием в кишочки и обнаруживаем интересное поведение.

  52. Чем отличается fsck от fsck.ext3/ext4 и т.п.

    Как работает команда fsck, нюансы и как её лучше запускать.

  53. Как будет выглядеть администрирование в эпоху ИИ

    Кухонные посиделки девопс-инженеров и размышления на тему - а что если делегировать всю работу специальной операционной системе с ядром на базе ИИ.

  54. CRON в первый рабочий день месяца

    Сегодня будет обучать cron понимать рабочие и выходные дни. Из коробки этот функционал не работает, да и systemd тут не особо поможет. Так что, придется изобретать очередную кишку.

  55. Reexec VS Reload

    Разбираемся с daemon-reload и daemon-reexec, в чем отличия и практическое применение.

  56. Ставим SelectOS в облако

    В этой статье я шаг за шагом показываю, как установить SelectOS «с нуля» — прямо из ISO-образа — в облаке Selectel. Рассказываю, с какими трудностями столкнулся (от нехватки памяти до проблем с сетью), и как их обошёл. Подойдёт тем, кто хочет развёрнуть ОС вручную, а не пользоваться «коробочными» решениями.

  57. SelectOS в деле

    Я решил попробовать поднять GitLab CE на SelectOS без всяких Docker’ов — в лоб, как есть. Завёл раннеры, погонял CI и нагрузку, SelectOS тащит!

  58. Пробуем SelectOS

    Проникаемся новой операционной системой SelectOS на базе Debian, тыкаем в реальных условиях, смотрим фишки и фичи. Пробуем установить базовый софт и провести нагрузочное тестирование.