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

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

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

№ 6327102672
Download Telegram
Так вышла же новая Ubuntu 25.10!

Ребята из Canonical выпустили Questing Quokka. В целом, ничего революционного, но есть за что зацепиться глазом:

— Beta на базе ядра Linux 6.17

— Использует новое рабочее окружение GNOME 49, в котором разработчики окончательно отказались от поддержки сеансов на базе X11, сделав Wayland единственным вариантом

Это не значит, что X11-приложения остались без поддержки — для них используется XWayland

— Замена GNOME Terminal на Ptyxis (эмулятор терминала ориентирован на работу с контейнерами: Toolbox, Distrobox, Podman)

Радует высокой скоростью отрисовки благодаря Vulkan и OpenGL

— Замена GNU Coreutils на Rust Coreutils (uutils) и sudo на sudo-rs. Эти инструменты написаны на Rust

Вывод

Это НЕ LTS-версия. Её поддержат всего до июля 2026-го. Так что для серьёзных, если нужна стабильность и поддержка, можно использовать 24.04 (выпуск поддержки до апреля 2029 года).

Следующий LTS уже получил имя - Resolute Raccoon (Решительный Енот). Будет в апреле 2026.

LinuxCamp | #news
👍25🔥87💊5
Как выйти из vim не переустанавливая сервер?

vim - это встроенный в Linux текстовый редактор. Он есть почти везде и нужен, когда GUI-редакторов нет под рукой.

Как открыть и выйти


vim file.txt


Ты попадаешь в Normal-режим, тут текст вводиться не будет, клавиши выполняют команды. Чтобы выйти:


:q — выйти
:q! — выйти без сохранения
:wq — сохранить и выйти


(если что-то не работает нажми Esc и попробуй ещё раз).

Как редактировать

Чтобы начать печатать текст, надо перейти в Insert-режим, для этого достаточно нажать что-нибудь из этого:


i — вставить перед курсором
a — вставить после курсора
o — вставить новую строку и остаться на ней


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

Как двигаться

В Normal-режиме работают стрелки, но для извращенцев кого-то придумали:


h — влево j — вниз
k — вверх l — вправо


А ещё (команды работают в Normal-режиме, нажмите Esc):


0 — в начало строки
$ — в конец строки
gg — в начало файла
G — в конец файла


Как править к сожалению не миром


dd — удалить строку
yy — скопировать строку
p — вставить
u — отменить
Ctrl + r — вернуть отменённое


Полезная имба


:set number — показать номера строк
:syntax on — включить подсветку


Вывод

vim'ом оказывается можно пользоваться и без использования транквилизаторов, главное сначала разобраться :)
Ставь реакцию, если разобрался!

LinuxCamp | #utils
50👍111😁46🔥1913🤯5💔1
Все флаги курла! (почти)

Самые нужные флаги

1. -X - вставляешь метод запроса


curl -X POST https://api.site.com/data


2. -d - отправляешь данные (автоматически включает POST)


curl -d "name=Chirill&age=45" https://api.site.com/user


3. -H - заголовок (хедер, header)


curl -H "Authorization: Bearer TOKEN" https://api.site.com/me


4. -i / -I - показать заголовки ответа (-I - только их)


curl -I https://example.com


5. -L - следовать за редиректами


curl -L http://site.com


6. -o / -O - сохранить файл (-O - с оригинальным именем, -o <name.txt> - со своим именем)


curl -O https://example.com/file.zip


7. -s - тихий режим (никаких прогресс-баров)


curl -s https://example.com


8. -v / -vvv - подробный вывод (диагностика)


curl -v https://api.site.com


9. -u - авторизация


curl -u user:password https://site.org


10. -k - игнорировать SSL-ошибки (осторожно!)


curl -k https://selfsigned.local


Комбинируй флаги:


curl -s -L -H "Accept: application/json" https://api.exnode.ru/articles


Вывод:

curl - твой HTTP-отладчик, загрузчик и дебаггер в одной команде. Освоишь 10 ключей и ты уже мастер.

LinuxCamp | #utils
15👍5311🔥10
Почему же тормозит сервер...

Бывает, начинаешь замечать странные вещи: страницы грузятся медленно, CPU не забит, память вроде есть, а система еле дышит.

В таких случаях стандартные утилиты вроде htop бывают бессильны — нужен детальный разбор.

Я собрал 3 Bash-скрипта, которые помогают быстро найти виновника — будь то память, диск или сеть:

1. memory_analysis.shпоиск аномалий памяти. Показывает не просто free -m, а:

— какие процессы реально жрут RAM (по RSS);
— кто держит «грязную» память, не сбрасывая её на диск;
— насколько система страдает от нехватки памяти (PSI).

Если растёт full в /proc/pressure/memory — всё, система уже задыхается.


2. io_analyzer.sh — анализ дискового I/O. Находит процессы, которые активно грузят диск, и показывает:

—статистику I/O по устройствам (iostat);
— кто пишет и читает больше всех (pidstat -dl);
— какие процессы открыли тысячи файлов или гигантские логи (>100MB).

Если %util ≈ 100% и await высокий — диск — узкое место.


3. network_analysis.sh — детектор сетевых аномалий. Помогает вычислить сетевые странности:

— кто держит слишком много соединений;
— какие процессы слушают нестандартные порты;
— где растёт число ошибок и сброшенных пакетов.

Полезно при подозрении на DDoS, утечки соединений или забытые сервисы.


Итог:

Эти три скрипта — не замена Zabbix или Prometheus. Это лёгкий, но мощный инструмент диагностики для VPS и продов без сложных систем мониторинга.

LinuxCamp | #utils
👍40🔥6👏42
`>`, `2>`, `&1`, `2>&1` - что это вообще такое?

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

Стандартные потоки


1 - stdout (нормальный вывод)
2 - stderr (ошибки)


Каждая команда в Linux работает с тремя потоками. Читает из stdin, пишет результат в stdout и выводит ошибки в stderr. Перенаправление (>, 2>, 2>&1) - это способ указать, куда именно должен идти каждый поток: в файл, в терминал или в никуда.

Символ '>' - направить вывод в файл


echo "hello" > log.txt


'>' создаёт (или перезаписывает) файл и отправляет туда стандартный вывод. Чтобы не затирать файл используйте '>>', он вставляет в конец:


echo "new line" >> log.txt


Символ '2>' - то же самое, но для ошибок


command 2> errors.txt


Здесь '2' - это номер потока stderr. Ошибки уйдут в errors.txt, а обычный вывод останется в терминале.

Объединение потоков: '2>&1'


command > all.txt 2>&1


'2>&1' значит отправить ошибки ('2') туда же, куда идёт обычный вывод ('1'). Порядок важен! Если написать наоборот (2>&1 > all.txt), ошибки всё равно пойдут в консоль, потому что в момент перенаправления stdout ещё не указывает на файл.

Сокращённая запись: '&>'


command &> all.txt


Эквивалент предыдущей команды, оба потока в один файл. Работает только в bash и zsh. Если ваш скрипт должен выполняться в sh или dash, используйте классическую форму.

/dev/null - "чёрная дыра"


command > /dev/null 2>&1


Команда выполняется, но вывод и ошибки никуда не сохраняются. Удобно для cron-задач, но не для отладки.

Вывод

Понимание потоков позволит писать устойчивые shell-скрипты и не терять данные.

LinuxCamp | #shell
👍6017🔥9🦄3🎉1
Да зачем проверять эти ваши ИИ агенты... И так же прекрасно справляются)

Чтоб не приходилось переводить:

«ты создал каталог ~ в этом проекте… но ~ должна быть моей домашней директорией»

«о нет! ты совершенно прав! я создал каталог ~ вместо того, чтобы использовать твою реальную домашнюю директорию. Сейчас исправлю: rm -rf ~/»


LinuxCamp | #memes
😁82🔥115👍5🤣4
Вышла Mobian 13.0! Debian на мобилу

Проект Mobian - дистрибутив, который превращает мобильные устройства в карманные компьютеры на базе Debian.

Теперь можно установить на поддерживаемые смартфоны и планшеты почти стоковый Debian с удобными мобильными оболочками: Phosh (на базе GNOME) или KDE Plasma Mobile.

Всё работает на ядре Linux 6.12 и пакетной базе свежего Debian 13.

Что нового в Mobian 13.0:

— Основа Debian 13 «Trixie»

— Современное ядро — для большинства устройств используется Linux 6.12.

— Обновлённые оболочки — Phosh 46.0 и KDE Plasma Mobile 6.3.

— Широкий список устройств: готовые образы есть для PinePhone, PinePhone Pro, Purism Librem 5, для популярных Android-смартфонов от Google, OnePlus и Xiaomi.

LinuxCamp | #news
👍42🔥149🤔2
После такого воспитания любые трудности будут нипочём 🦍

LinuxCamp | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁73🔥17👍85
Консольный проводник: broot

Интерактивная альтернатива ls и cd, которая показывает дерево директорий прямо в терминале, позволяет искать файлы на лету и мгновенно переходить в любую папку. Чтобы вместо бесконечных ls, cd, ls видеть всё дерево сразу, можно использовать broot.

Запуск команды


broot


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

Быстрый переход

Одна клавиша и ты в нужной папке:


:cd


broot сам подставит нужную команду cd path/to/dir.

Поиск и фильтры

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

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

Самый универсальный способ поставить через Rust:


sudo apt install -y build-essential libxcb1-dev libxcb-render0-dev \
libxcb-shape0-dev libxcb-xfixes0-dev cargo
cargo install --locked broot


Если будут проблемы с версией rust:


curl https://sh.rustup.rs -sSf | sh -s -- -y
source $HOME/.cargo/env
rustup update stable


После установки добавь бинарь в PATH:


echo 'export PATH="$HOME/.cargo/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc


Вывод

broot - это tree, find, cd и fzf в одном флаконе. Благодаря встроенным фильтрам, поиску и отображению размеров папок он превращает терминал в файловый менеджер. Попробовать стоит, особенно если устал блуждать по ls и cd.

LinuxCamp | #utils
21👍16🔥6
Amazon пару дней назад:

«Увольняем 40% девопсов.
AI займёт их рабочие места»


После этого AWS лежит... Под такие решения надо хорошо подготовить инфраструктуру, иначе произойдет большой БУУУММ

➡️ Статья

LinuxCamp | #news #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁96👏114🔥2💊1
Мониторинг с веб-версией за 1 команду

Когда нужно сделать серьезный мониторинг, пригодится инструмент, который показывает всё сразу: загрузку процессора, памяти, сети, дисков, температуру и даже Docker-контейнеры. Это glances.

Что это такое

glances - системный монитор с web-интерфейсом и консольным отображением из коробки. Он написан на Python, работает в Linux, macOS и Windows, и адаптируется под размер терминала, показывает ровно столько данных, сколько помещается.

Запуск


glances


Откроется интерактивная панель, где видны все метрики системы в реальном времени.
Можно листать стрелками, сортировать процессы и даже отслеживать температуру и I/O.

Web-интерфейс

Можно смотреть метрики прямо из браузера:


glances -w


После запуска открой http://<ip>:61208 и получишь панель мониторинга в реальном времени.

Установка


sudo apt install glances


или, если хочешь последнюю версию:


pip install glances


Дополнительно

glances поддерживает экспорт данных в Prometheus, InfluxDB, Elasticsearch и MQTT, удобно для централизованного мониторинга.

Вывод

glances - это как htop, iostat, sensors и netstat в одном окне. Лёгкий, понятный и идеален, если хочешь быстро понять, что происходит с системой.

LinuxCamp | #utils
👍3711🔥11
Куда делось место на диске?

Иногда du -h показывает тонны цифр, но понять, где заполнена память всё равно сложно. Для этого есть dust - современная замена du, которая красиво визуализирует использование диска прямо в терминале.

Что делает dust

Он сортирует директории по размеру и рисует дерево, где видно, кто занимает больше всего места.


dust


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

Примеры

Показать топ по текущей директории:


dust .


Посчитать размер домашней папки без скрытых файлов:


dust -d 1 ~


Показать только верхние 10 результатов:


dust -n 10


Установка


sudo apt install dust


Вывод

dust - это du, которому сделали интерфейс для людей. Он помогает быстро понять, куда уходит место, и очистить диск без паники.

LinuxCamp | #utils
👍53🔥1211
По слухам из очень "надежных" источников. После того, как упал AWS, попросили того самого (единственного) разраба, который координирует ИИ переподнять сервера.

Картина выглядела примерно так 📤

LinuxCamp | #memes
Please open Telegram to view this post
VIEW IN TELEGRAM
😁70🔥5🌚41🤔1💯1
Передать файл по одному слову

Можно передать файл, не зная IP, SSH-доступа или домена сервера получателя. Утилита croc сама установит защищённое соединение и мгновенно отправит файлы или текст прямо из терминала, используя шифрование и одноразовый код

Пример использования

Отправитель запускает:


croc send magadrovosex.omg


После выводится одноразовый код. Получатель вводит:


croc <выданный код>


И всё! Файл мгновенно передаётся по защищённому каналу P2P (крипта, арбитраж, темки), без возни с адресами и ключами

Установка


curl https://getcroc.schollz.com | bash


Почему это круто

croc не требует FTP, SCP, VPN, использует end-to-end шифрование (AES-256), работает между любыми ОС и можно пересылать даже директории

Микро-лайфхак

Чтобы не палить одноразовый код в истории, запусти просто croc в терминале и введи код интерактивно. Но также можно команду с пробела (в большинстве shell-ов это не сохранит её в history)

Вывод:

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

Выключайте мозги, товарищи! Скоро ai нас уничтожит и мозги нам не понадобятся

LinuxCamp | #utils
6🤔3311🔥6👍4🐳2🙈1
Open 3D Engine 25.10

Немного вводных

Open 3D Engine - игровой движок, пригодный для разработки современных игр класса AAA и высокоточных симуляторов.

Исходный код движка O3DE был открыт в июле 2021 года компанией Amazon, сам код написан на C++.

Из нового в 25.10 (для linux)

— Размер установочного пакета сокращён на 40%

— Обеспечена совместимость со стандартом C++ 20

— MOC (Masked Occlusion Culling) экономит ресурсы, не рисуя то, что перекрыто другими объектами

— Motion Blur добавляет размытие для движущихся объектов

— В модуль OpenXR добавлены компоненты для контроллеров виртуальной реальности

Детальная статья по ссылке

LinuxCamp | #news
👍22🔥105🥴1
This media is not supported in your browser
VIEW IN TELEGRAM
И все это для того, чтобы при загрузке произошёл очередной "Kernel panic", и надо было подключить ноутбук с Windows, чтобы найти решение.

Особенно актуально для любителей Арча))

LinuxCamp | #memes
1😁41👍127🤪1💊1
Менеджер паролей для linux

Если не хочешь хранить пароли в .env или светить их в коде, попробуй pass. Это минималистичный менеджер паролей, который хранит каждый пароль в отдельном GPG-файле, зашифрованном твоим GPG-ключом.

Установка:


sudo apt install pass gpg
gpg --gen-key
pass init <имя_ключа>


Команда pass init связывает хранилище с твоим ключом, только им можно будет расшифровать пароли.

Добавление и просмотр:


pass insert github.com
pass show github.com


Пароли лежат в ~/.password-store. Это обычные файлы, но зашифрованные GPG. Структура каталогов повторяет иерархию имён, поэтому всё выглядит логично и читаемо.

Использование в скриптах:

Так можно передавать пароли в CI или автоматизацию без риска утечек, они подгружаются только во время выполнения.


#!/bin/bash
DOCKER_PASS=$(pass show dev/docker)
echo "$DOCKER_PASS" | docker login -u myuser --password-stdin


pass легко интегрируется в CI, shell-скрипты и git. Все шифруется твоим ключом, все под твоим контролем.

LinuxCamp | #utils
1👍32🔥177🥴1
Запуск Windows-приложений на Linux: Wine

Если ты сидишь на Linux, но время от времени нуждаешься в каких-нибудь программах, которые есть только под винде — используй Wine

Он ничего не эмулирует, он транслирует код из одной среды, в другую - переводит вызовы Windows API в POSIX-вызовы "на лету" — из-за этого программы работают быстрее и потребляют меньше ресурсов.

Отсюда и следует его полное название, которое является акронимом - Wine Is Not an Emulator.


Проект запустили ещё в 1993 году, а стабильный релиз вышел в 2008. Это полностью открытое ПО, которое поддерживают компании вроде CodeWeavers.

Важно что:

— не всё работает идеально, иногда придётся повозиться с настройками
— стабильность зависит от конкретной программы и драйверов

Подробный гайд по установке и использованию wine.

LinuxCamp | #utils
🔥269👍9🤔2
perf: микроскоп для производительности ядра

perf - инструмент, встроенный прямо в ядро Linux. Он показывает, куда утекает производительность: какие функции жрут CPU, сколько контекстных переключений, какие системные вызовы самые медленные. Не требует установки пакетов, а просто:


sudo perf top


и ты видишь, где реально горит процессор.

Замер производительности программы

Хочешь понять, где тормозит твой код запускаешь:


sudo perf record -g ./my_program
sudo perf report


Первая команда собирает стек вызовов с нагрузкой. Вторая показывает отчёт: на какие функции ушло больше всего времени.

Анализ системных вызовов

Чтобы увидеть, что делает процесс на уровне ядра:


sudo perf stat -p $(pidof nginx)


Выведет количество системных вызовов, переключений контекста и кэшей. Это то, что top не покажет.

Вывод

perf - инструмент, который показывает, чем занята твоя система. Его используют, когда нужно найти горячие участки кода, понять, куда уходит процессорное время в базе данных, или оптимизировать Nginx и PostgreSQL под реальные боевые нагрузки.

LinuxCamp | #utils
2🔥47👍187
Как поделиться терминалом по ссылке и без SSH?

ttyd - утилита, которая превращает твой терминал в веб-страницу. Запускаешь одну команду и можешь открыть консоль прямо в браузере.

Установка


sudo snap install ttyd --classic
ttyd bash


Открываешь http://<ip>:7681 и видишь свой терминал в браузере. По умолчанию он только для чтения, но если добавить флаг -W, можно делать его интерактивным.

Зачем это нужно

С ttyd можно делиться консолью на демо, показывать командам CI, смотреть логи контейнеров или следить за своим ИИ-агентом прямо с телефона через Tailscale - без SSH и без клиента. Например:


ttyd -p 7681 sh -lc 'docker logs -f backend'


Теперь логи бекенда доступны по ссылке

Один терминал для всех

Чтобы все видели одну и ту же сессию (а не каждый свой терминал), можно обернуть в tmux:


tmux new -s demo
ttyd tmux attach -t demo


Теперь все участники смотрят один экран. Добавь -W, если хочешь дать им право писать команды.

Вывод

ttyd превращает обычный shell в веб-интерфейс без SSH. Но нельзя забывать о безопасности! Не давайте права на запись кому попало.

LinuxCamp | #utils
1👍44🔥86
This media is not supported in your browser
VIEW IN TELEGRAM
Умный CLI файловый менеджер: nnn

nnn - миниатюрный, но мощный терминальный файловый менеджер, который почти не требует настройки:

— Управляется с клавиатуры: стрелки, / для поиска, Tab для контекстов, q для выхода

— Поддерживает фильтрацию, пакетное переименование, анализ диска, закладки и сессии

— Интегрируется с Vim/Neovim, копирует пути в буфер, умеет работать с архивами и отправлять файлы в корзину

— Работает везде: Linux, macOS, BSD, Windows (WSL), Haiku, Termux (Android)

— Приватный, POSIX-совместимый, без сбора данных и лишних зависимостей

— Расширяется плагинами: превью, миниатюры, монтирование, загрузка в облако и многое другое

Совет:

Если вы сильно привыкли к ls, делаем alias и используем nnn:


alias ls='nnn -de'


Ссылки:

1) GitHub проекта
2) Туториал по использованию тулзы

LinuxCamp | #utils
👍33🔥125❤‍🔥1