LinuxCamp | DevOps
14.1K subscribers
262 photos
12 videos
372 links
Обо мне: C/C++/Linux эксперт. Говорим про разработку, Linux, DevOps, сети и администрирование.

Админ (реклама): @XoDefender
Чат: @linuxcamp_chat

Менеджер: @Spiral_Yuri
Биржа: https://telega.in/c/linuxcamp_tg

РКН: https://clck.ru/3RWA3C
Download Telegram
В ядре Linux разрешили AI-код

Что изменилось

В документации ядра Linux появился отдельный раздел AI Coding Assistants. То есть AI-инструменты при разработке ядра теперь прямо допускаются официально.

Какие правила

Главное правило простое: AI может помогать, но ответственность всегда на человеке.

Разработчик обязан сам проверить весь сгенерированный код, убедиться в совместимости с лицензией GPL-2.0-only, сам добавить Signed-off-by и взять на себя полную ответственность за патч.

Еще одно новое правило: для таких патчей рекомендуют указывать тег Assisted-by, где пишется, какой AI-инструмент и какая модель использовались.

Пример:


Assisted-by: Claude:claude-4.6-opus coccinelle sparse
Signed-off-by: Name <email@example.com>


Вывод

AI-код в Linux теперь не серая зона. Позиция ядра теперь такая: использовать можно, скрывать участие AI не стоит, но за баги, лицензию и качество кода отвечает только человек.

LinuxCamp | #news
👍21🤪15😁7💊4🤯32🤔2😐1
Графики прямо в терминале

chartli - это CLI-утилита, которая строит графики из обычных чисел прямо в терминале. Она умеет несколько форматов вывода: ascii, spark, bars, columns, heatmap, unicode, braille и svg.

Быстрый запуск без установки:


npx chartli --help


Или глобальная установка:


npm i -g chartli


Как работает

Утилита читает данные из файла или из stdin, а дальше рисует график в консоли. Простейший запуск:


npx chartli data.txt


Явно выбрать тип графика:


npx chartli data.txt -t columns


Передать данные через pipe:


cat numbers.txt | npx chartli -t spark


Что есть полезного

У chartli можно задавать ширину и высоту, подписи осей, подписи серий и показывать числовые значения рядом с точками или столбцами.
Для svg есть отдельный режим circles или lines.

Примеры:


npx chartli metrics.txt -t ascii -w 24 -h 8



npx chartli metrics.txt -t columns --x-axis-label Day --y-axis-label Value



npx chartli metrics.txt -t svg -m lines -w 320 -h 120 > chart.svg


Вывод

chartli - это простой способ быстро превратить числа в график без GUI. Подходит для терминала, скриптов и быстрых локальных отчетов, когда нужен результат сразу в консоли.

LinuxCamp | #utils
👍237🔥6
IT СХЛОПНУЛСЯ?

Сейчас найм в IT переживает тяжелое время. Устроиться на работу не могут не только новички, но и опытные разрабы с 3+ лет опыта.

А если ты уже работаешь, то тоже находишься в зоне риска - компании все оптимизируют и стремятся к экономии денег.

Я всю эту кухню вижу изнутри и выход вижу в том, чтобы учиться работать с нейронками и начинать вайб-кодить.

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

В свободное от работы время я пишу пет-проекты и вывожу их на доход, чтобы была финансовая подстраховка. Такое уж время, надо крутиться)

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

Создание приложений с 0 до первых пользователей
Повышение эффективности в найме
Автоматизация личных процессов

Если тебе эти темы интересны, жду у себя на канале: https://t.me/+h7e67vXacQM3NDUy
💊22😁15👍3🌚32🔥1
В IETF показали IPv8. Но это пока только черновик

В Datatracker IETF появился Internet-Draft draft-thain-ipv8 с описанием протокола IPv8. Документ опубликован 15 апреля 2026 года, автор - Jamie Thain из One Limited. Это именно черновик, а не новый интернет-стандарт.

Что внутри

Идея у IPv8 необычная: адрес делится на две части: ASN + host, а IPv4 объявлен его подмножеством. В документе также описаны DNS8, DHCP8, NTP8, WHOIS8, ACL8, NetLog8 и транслятор XLATE8.

Для аутентификации предлагаются локально кэшируемые OAuth2 JWT-токены, а каждое исходящее соединение должно подтверждаться через DNS8 и активный маршрут в WHOIS8; без этого запись в состоянии XLATE8 не создается.


IPv8 = ASN + host
DNS8 + WHOIS8 + XLATE8
OAuth2 JWT для авторизации узлов


Вывод

IPv8 сейчас - это скорее громкий сетевой концепт, чем реальный следующий шаг интернета. Но сама идея показательная: в проект сразу встроили не только адресацию и маршрутизацию, а еще identity, policy и проверку соединений на уровне всего сетевого стека.

LinuxCamp | #news
🔥32👍118😱3
NetWatch: диагностика сети в одном TUI

netwatch - это TUI-утилита для диагностики сети в реальном времени. В одном окне она показывает интерфейсы, соединения, health checks, topology и анализ пакетов.

Установка:


brew install matthart1983/tap/netwatch



cargo install netwatch-tui


Запуск:


netwatch


Для полного режима с health probes и анализом пакетов:


sudo netwatch


Что умеет

netwatch показывает live RX/TX по интерфейсам, активные соединения с PID и именем процесса, проверки gateway и DNS, topology map, traceroute и контроль пакетов с декодированием DNS, TLS, HTTP, ICMP и DHCP. Есть экспорт pcap и incident recorder для коротких сетевых сбоев.


Shift+R — включить rolling recorder на 5 минут
Shift+F — заморозить текущее окно инцидента
Shift+E — экспортировать incident bundle


Если нужен конфиг:


netwatch --generate-config


AI Insights

Отдельно в проект уже встроили AI Insights: можно раз в 15 секунд отправлять срез сети в LLM и получать подсказки по аномалиям, подозрительным DNS и деградации соединений. По умолчанию этот режим выключен.

Вывод

netwatch - это удобный сетевой TUI, который объединяет интерфейсы, соединения, DNS, health checks и packet capture в одном окне.

LinuxCamp | #utils
🔥19👍107😁1🤔1
Ну это судьба 🥺

LinuxCamp | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁55👍15🙉64
sk(skim): fuzzy search быстрее fzf на Rust

sk - это утилита берет список строк из stdin, открывает интерактивный выбор и фильтрует строки по нечеткому совпадению. Проект активно развивается: постоянно выходят релизы с обновлениями производительности и интерфейса.

Установка:


cargo install skim


Запуск на простом списке:


printf "nginx\npostgres\nredis\ndocker\n" | sk


Как использовать

sk читает входной поток и дает быстро выбрать нужную строку. Это удобно для файлов, процессов, веток Git, истории команд и любых списков, которые уже умеет отдавать shell. Есть сценарии с find, git branch и shell integration.

Примеры:


find . -type f | sk



git branch | sk



ps aux | sk


Если нужно превью выбранного файла:


find . -type f | sk --preview 'bat --color=always {}'


Почему полезен

skim полезен там, где уже есть длинный текстовый вывод и нужен быстрый интерактивный выбор. Не писать длинные grep, не листать сотни строк руками, а просто сузить список и выбрать нужное.

Вывод

skim(sk) - это простой способ превратить любой список строк в удобный интерактивный выбор. Одна утилита, один pipe, и терминал становится заметно быстрее.

LinuxCamp | #utils
👍146🔥3
Любовь приходит и уходит, а желание собрать свой Linux-дистрибутив остается навсегда 😇

LinuxCamp | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁4916🔥5🤔1
netcat (nc): утилита, которая просто открывает TCP и UDP

netcat (nc) - это консольная утилита для работы с TCP и UDP. Через нее можно открыть соединение, поднять простой listener, проверить порт, отправить данные в сокет или быстро посмотреть, отвечает ли сервис. Во многих Linux-системах это одна из самых базовых сетевых утилит.

Базовые примеры

Проверить, открыт ли TCP-порт:


nc -zv 127.0.0.1 80


Проверить сразу несколько портов:


nc -zv 127.0.0.1 22 80 443


Проверить UDP-порт:


nc -zvu 127.0.0.1 53


Поднять listener на порту:


nc -lv 9000


Подключиться к нему с другой стороны:


nc 127.0.0.1 9000


Где полезен

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

Например, можно руками отправить HTTP-запрос:


printf "GET / HTTP/1.1\r\nHost: example.com\r\nConnection: close\r\n\r\n" | nc example.com 80


Или быстро проверить, слушает ли порт внутри сервера:


nc -zv localhost 5432


Даже можно отправить файл не используя ssh, rsync или scp:

На принимающей стороне:


nc -l 9000 > output.bin


На отправляющей стороне:


nc -N <хост получателя> 9000 < input.bin


Это просто сырая передача байтов через TCP-соединение.

Что важно

У netcat есть разные реализации: openbsd-netcat, gnu netcat, ncat. Из-за этого некоторые флаги могут немного отличаться. Но базовые сценарии обычно одинаковые: connect, listen, scan, send data.

Вывод

nc - это простой и полезный инструмент для TCP/UDP-проверок. Когда нужно быстро понять, жив ли порт и что реально отвечает по сокету, netcat обычно оказывается самым коротким путем.

LinuxCamp | #utils
👍36🔥118
Nerd Fonts: агрегатор шрифтов с иконками

Иногда ставишь красивый prompt, открываешь nvim, lazygit, tmux или starship, а вместо иконок видишь квадраты. Примерно так:


□ ~/projects/app main ✗
□ src/
□ docker-compose.yml


Это не баг терминала. Чаще всего просто выбран шрифт, в котором нет нужных символов.

Как исправить

Nerd Fonts — это репозиторий с уже готовыми шрифтами для разработчиков, куда добавили иконки: Devicons, Font Awesome, Octicons, Powerline-символы и другие. То есть можно взять привычный шрифт, но в версии Nerd Font:


🟡JetBrainsMono Nerd Font
🟡FiraCode Nerd Font
🟡Hack Nerd Font
🟡Meslo Nerd Font


Весь репозиторий скачивать не обязательно. Он большой. Обычно достаточно скачать только нужный шрифт из релизов. Например, JetBrains Mono:


mkdir -p ~/.local/share/fonts/JetBrainsMonoNF

curl -L \
https://github.com/ryanoasis/nerd-fonts/releases/latest/download/JetBrainsMono.tar.xz \
-o /tmp/JetBrainsMonoNF.tar.xz

tar -xf /tmp/JetBrainsMonoNF.tar.xz -C ~/.local/share/fonts/JetBrainsMonoNF

fc-cache -fv


Если fc-cache не найден:


apt install -y fontconfig


Посмотреть доступные шрифты можно на странице загрузок Nerd Fonts или в списке релизов. Обычно имя архива совпадает с названием шрифта:


Hack.tar.xz
FiraCode.tar.xz
JetBrainsMono.tar.xz
UbuntuMono.tar.xz


Что выбрать

Если ты уже пользуешься JetBrains Mono: скачай JetBrainsMono Nerd Font. Если хочешь новый шрифт сразу с иконками: просто выбери любой готовый вариант из Nerd Fonts и установи его. После установки нужно открыть настройки терминала и выбрать установленный шрифт вручную:


JetBrainsMono Nerd Font Mono


Именно после этого иконки появятся в prompt, файловых деревьях, статус-барах и TUI-инструментах.

Если нужен свой шрифт

В Nerd Fonts есть font-patcher. Он нужен, если у тебя свой шрифт, которого нет среди готовых вариантов. Схема такая:


./font-patcher MyFont.ttf


На выходе получится пропатченный шрифт с добавленными символами Nerd Fonts. Его так же нужно положить в ~/.local/share/fonts, обновить кэш через fc-cache -fv и выбрать в настройках терминала. Но для большинства случаев это лишнее. Готовых шрифтов почти всегда вполне достаточно.

Вывод

Если в терминале вместо иконок квадраты просто поставь Nerd Font-версию своего шрифта и выбери ее в настройках.

LinuxCamp | #utils
Please open Telegram to view this post
VIEW IN TELEGRAM
👍217🔥6
isd: systemd, но в нормальном TUI

isd расшифровывается как interactive systemd. Это TUI-утилита для работы с systemd units: сервисами, таймерами, сокетами и user/system unit’ами. Вместо постоянного набора systemctl status, journalctl, restart, enable можно открыть один интерфейс и искать нужные юниты через fuzzy search.

Что умеет

Внутри можно быстро переключаться между system и user units, смотреть превью статуса, открывать вывод в pager/editor, работать с командами через command palette и не писать каждый раз длинные systemctl-команды руками. Запуск выглядит просто:


isd


Установить можно через uv, nix или AppImage. Например, если используешь uv:


uv tool install isd-tui
isd


Где полезно

Когда на сервере много сервисов и нужно быстро понять, что упало, что перезапустить и какие логи посмотреть. Обычный вариант:


systemctl status nginx
journalctl -u nginx -f
systemctl restart nginx


С isd это можно делать из одного TUI, не вспоминая каждый раз точное имя юнита.

Вывод

isd не заменяет знание systemctl, но сильно ускоряет повседневную работу с systemd. Хорошая штука для серверов, dev-машин и ситуаций, когда юнитов много, а руками искать их уже надоело.

LinuxCamp | #utils
👍175🔥4🤣2🤔1
Когда код руками писать отвык, но LLM твои задачи не тянет 🗣

LinuxCamp | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁483🔥3👍1🥴1
hackingtool: большая подборка hacking security-утилит в одном меню 👻

hackingtool — это Python/TUI-оболочка для установки и запуска инструментов по security-тестированию. Внутри собраны утилиты для OSINT, web security, reverse engineering, forensics, cloud security, mobile security, Active Directory и других задач. В версии 2.0 авторы заявляют 185+ инструментов и поиск по меню.

Что умеет

Главная идея простая: не держать в голове десятки репозиториев и команд установки, а искать нужный инструмент из одного интерфейса. Например, в списке есть:


nmap
theHarvester
ffuf
OWASP ZAP
Trivy


Самое интересное


Репозиторий содержит не только защитные инструменты, но и спорные категории: phishing, RAT, DDoS, payload creation и post-exploitation.
🤔Использовать только в защитных целях!!!

Вывод

hackingtool полезен как каталог и быстрый лаунчер security!-инструментов. Детям не игрушка 😁

LinuxCamp | #utils
Please open Telegram to view this post
VIEW IN TELEGRAM
👍223😁2🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
Как вам такое DE, братва?

LinuxCamp
👍32🔥1110
This media is not supported in your browser
VIEW IN TELEGRAM
Linux впервые в истории взял 5% в Steam

Доля пользователей Linux на Steam достигла 5% по данным опроса Valve за март 2026 года.

Для контекста, как Linux рос:

ноябрь 2024 — 2%
ноябрь 2025 — 3%
март 2026 — 5.33%

При ~132 млн пользователей Steam в месяц это около 7 млн геймеров на Linux.

Расклад по платформам в марте:

Windows — 92.33% (-4.28%)
Linux — 5.33% (+3.10%)
macOS — 2.35%

LinuxCamp | #news
🔥57👍10🦄5🥱32🤣2
Shellfirm: защита от опасных команд в терминале

Shellfirm — это предохранитель для shell-команд. Он перехватывает рискованные команды перед выполнением и просит дополнительное подтверждение. Например, если ты случайно запускаешь что-то вроде:


rm -rf /
git reset --hard
kubectl delete namespace prod


Shellfirm может остановить выполнение и показать предупреждение.

Как работает

Утилита встраивается в shell через hook и проверяет команду перед запуском. Установка:


cargo install shellfirm


Инициализация:


shellfirm init


После перезапуска shell можно проверить:


git reset --hard


Команда не выполнится молча: Shellfirm должен показать предупреждение.

Вывод

Shellfirm — простой предохранитель для терминала. Можно использовать как дополнительный слой проверки перед выполнением опасных действий.

LinuxCamp | #utils
👍267🙈1
Forwarded from ITCamp | AI & Code
Полный курс по вайбкодингу с Claude Code (за 1.5 часа) 😁

По полочкам разложил весь багаж знаний по работе с Claude Code:

— Установка, оплата, настройка

— MCP, субагенты, скиллы, команды

— git/github, x100 к скорости работы через "Git Worktrees"

— Деплой на выделенный сервер (как делают взрослые дяди):

покупка домена, аренда сервера, настройка DNS, сборка через dokploy


Рассказываю, что сам использую в работе и почему. Ценю ваше время, поэтому сжал 7 часов лайва в 1.5 😊

Видео забирай бесплатно по ссылке
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣27👍6🥴4🔥1🌚1
socktop: удаленный мониторинг сервера по WebSockets

socktop — это TUI-мониторинг для удалённых Linux-машин. На сервере запускается лёгкий агент, а ты со своей машины подключаешься к нему через WebSocket и смотришь метрики в терминале. По стилю похоже на top/btop, но с удалённым подключением.

Что показывает

В интерфейсе есть CPU, память, swap, диски, сеть, температуры и список процессов. Агент не крутит постоянный сборщик метрик в фоне: он собирает данные по запросу клиента. Когда никто не подключён, нагрузка почти нулевая.

Как запустить

Установка через cargo:


cargo install socktop
cargo install socktop_agent


На сервере:


socktop_agent --port 3000


На своей машине:


socktop ws://SERVER_IP:3000/ws


Для локального демо без отдельного сервера:


socktop --demo


Важный нюанс

Если открываешь агент не только в локальной сети, лучше включить TLS и токен.


SOCKTOP_TOKEN=changeme socktop_agent --enableSSL --port 8443


Подключение:


socktop --tls-ca /path/to/cert.pem \
"wss://SERVER_IP:8443/ws?token=changeme"


Без этого получится удобный, но лишний открытый вход к системным метрикам.

Вывод

socktop полезен, когда хочется смотреть состояние удалённого сервера без SSH-сессии с htop, iotop и кучей отдельных команд.
Для домашней лаборатории, Raspberry Pi, dev-серверов и небольших стендов очень приятный вариант.

LinuxCamp | #utils
👍227
Бэкапы БД отдельным контейнером

container-db-backup — Docker-образ для регулярных бэкапов баз данных. Поддерживает PostgreSQL, MySQL/MariaDB, MongoDB, Redis, SQLite, MSSQL, CouchDB и InfluxDB. Бэкапы можно складывать в локальную папку, S3-compatible storage, MinIO, Wasabi или Azure.

Как работает

Ты добавляешь отдельный контейнер рядом с базой, задаёшь параметры через env-переменные, а он по расписанию делает dump. Пример для PostgreSQL:


services:
db-backup:
image: docker.io/tiredofit/db-backup:latest
volumes:
- ./backups:/backup
environment:
- DB01_TYPE=pgsql
- DB01_HOST=postgres
- DB01_NAME=app
- DB01_USER=app
- DB01_PASS=secret
- DEFAULT_BACKUP_INTERVAL=1440
- DEFAULT_COMPRESSION=ZSTD


DB01, DB02, DB03 — это разные backup job’ы. Так можно одним контейнером бэкапить несколько баз.

Что умеет

Можно настроить расписание, сжатие, checksum, шифрование, очистку старых архивов, pre/post hooks и уведомления при ошибках в email, Matrix, Mattermost или Rocket.Chat. Ручной запуск тоже есть:


docker exec -it db-backup backup-now


А для отдельной задачи:


docker exec -it db-backup backup01-now


Важный нюанс

Бэкап это не только файл в папке. Его нужно периодически проверять восстановлением. У образа есть restore-скрипт, но поддержка восстановления заявлена только для MariaDB, Postgres и MongoDB. Для остальных лучше заранее проверить свой сценарий руками.

Вывод

container-db-backup — удобный вариант, если хочется быстро добавить scheduled backups в Docker Compose без отдельного cron-скрипта. Но после настройки обязательно проверь restore, иначе это не бэкап, а просто архив с надеждой.

LinuxCamp | #utils
🔥146👍4🤯1
Ядро Linux уже чисто ИИ пишет

За последние пару недель количество новых коммитов, помеченных как “Assisted-by” ИИ-ассистентом (например, Claude), буквально взлетело.

Каждый день отправляются пачки изменений, написанных в режиме вайб-кодинга 🫶

LinuxCamp | #news
Please open Telegram to view this post
VIEW IN TELEGRAM
😱37🤔13💊6👍2
SRE тут? Нашли для вас подкаст, который вполне может пополнить ряд любимых.

Коллеги из Авито создали «В SREду на кухне», периодически собираются, зовут на запись гостей и обсуждают то, о чём не принято говорить в опенспейсе. Например, вот темы недавних выпусков:
— GitOps не волшебная таблетка;
— Зачем продукту бюджет ошибок;
— Роняем прод, чтобы стать сильнее: всё о Chaos Engineering;
— SRE больше не нужны. AI переписал правила.

Отвечая на вопрос «А при чём здесь комьюнити?» — все дополнительные инсайты, статьи и мысли на темы выпусков ребята выкладывают в канал «Avito SREда». И там уже собралась активная аудитория коллег-инженеров.
👍3🔥32🤔1🤪1