Мир Линукса – Telegram
Мир Линукса
408 subscribers
12 photos
22 links
Канал Мир Линукса. Новости, статьи и много интересного из мира линукса.
Download Telegram
Что значит состояние процесса Z в Linux

Иногда в ps, top или htop можно увидеть процесс со статусом Z. Это не «зависший» и не «работающий» процесс - это зомби.

Что такое процесс-зомби

Процесс в состоянии Z (zombie) - это процесс, который уже завершился, но его родитель ещё не забрал код завершения через wait().

Проще говоря:

🟢сам процесс мертв;
🟢запись о нём осталась в таблице процессов;
🟢ресурсы (CPU, память) он не потребляет.

Почему появляются зомби

Каждый процесс в Linux обязан:
🔴 завершиться;
🔴 сообщить родителю статус выхода;
🔴 быть «убранным» родителем.

Если родитель:
🟢не вызывает wait();
🟢завис;
🟢написан с ошибкой,
то дочерний процесс превращается в зомби.

Почему зомби нельзя убить

kill не работает, потому что:

процесса фактически уже нет;
сигналу некуда доставляться.

Поэтому:
🤔 kill -9 не помогает;
🤔 перезапускать нужно родителя, а не зомби.

Опасны ли зомби

Один-два - нет.
Тысячи - да.
Хотя зомби не жрут ресурсы, они:
- занимают PID’ы;
- могут забить таблицу процессов;
- указывают на баги в приложении.

Как избавиться от зомби

Правильные способы:
🟢перезапустить родительский процесс;
🟢починить код, чтобы вызывался wait();
🟢в крайнем случае - перезапуск сервиса или системы.

Неправильный способ - бесконечно пытаться убить Z через kill.

Состояние Z - это не проблема ядра и не баг Linux. Это сигнал, что где-то есть криво написанный родительский процесс. Если видишь зомби - ищи того, кто его «породил».
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8
Какой командой можно посмотреть использование сети в реальном времени?
Anonymous Quiz
13%
top
58%
netcat
25%
bandwhich
4%
lsmod
👎73
Как посмотреть использование сети в реальном времени в Linux

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

Это утилита, которая в реальном времени показывает, какие процессы и подключения потребляют сетевой трафик. Не абстрактные мегабиты по интерфейсу, а конкретно: какой процесс, по какому адресу и с какой скоростью передаёт или принимает данные. В этом её ключевое отличие от классических инструментов.

В отличие от top, который работает с CPU и памятью, bandwhich вообще не интересуется загрузкой процессора. Он смотрит на сетевые сокеты и сопоставляет их с процессами. Поэтому top здесь бесполезен. netcat - это инструмент для ручной работы с соединениями, а не мониторинг. lsmod вообще показывает загруженные модули ядра и к сети отношения не имеет.

Bandwhich особенно хорошо заходит, когда нужно быстро найти источник проблемы: внезапно вырос исходящий трафик, сервер начал «качать» данные без видимой причины, контейнер неожиданно упирается в лимиты. Запустил утилиту - и сразу видно, кто именно виноват.

Отдельный плюс - читаемый интерфейс. Никаких графиков ради графиков, только полезная информация: процесс, направление трафика, скорость и общий объём. Именно поэтому bandwhich часто используют DevOps, админы и SRE во время инцидентов, когда времени разбираться «по науке» просто нет.

Если коротко: когда нужен быстрый и честный ответ на вопрос «кто жрёт сеть прямо сейчас», правильная команда - bandwhich.
👍6👎3
Что делает команда ncdu и почему без неё сложно жить

В какой-то момент на любом Linux-сервере заканчивается место. Причём заканчивается внезапно: всё работало, алертов не было, а потом - «No space left on device». И вот тут начинается классическая боль: что именно съело диск?

ncdu решает эту проблему быстро и наглядно. Это TUI-утилита для анализа дискового пространства, которая показывает, какие каталоги и файлы реально занимают место, и позволяет проваливаться внутрь структуры шаг за шагом. Не отчётом в терминале, а живым интерфейсом.

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

Самое важное - интерактивность. Можно быстро перемещаться по каталогам, сравнивать размеры, а при необходимости удалять файлы прямо из интерфейса. Это особенно полезно на серверах, где каждая минута простоя стоит дорого.

ncdu анализирует использование дискового пространства в текстовом интерфейсе и делает это намного удобнее и быстрее, чем классические утилиты. Если диск забился, а времени разбираться нет - ncdu почти всегда первый инструмент, который стоит запускать.
👍12👎2
Что делает команда mtr и почему она незаменима при сетевых проблемах

Когда начинаются проблемы с сетью, первый вопрос обычно звучит так: «это у нас или где-то по дороге?».

Пакеты теряются, задержки скачут, сервисы то отвечают, то молчат. В такие моменты обычный ping даёт слишком мало информации, а traceroute - слишком статичную картину.

mtr объединяет оба подхода. Эта команда в реальном времени показывает маршрут до узла, задержки на каждом хопе и процент потерь пакетов. Причём данные обновляются постоянно, а не один раз, как в классическом traceroute. Именно поэтому mtr так любят админы и DevOps во время инцидентов.

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

Другие варианты из опроса к задаче не относятся. mtr не работает с HTTP, не мониторит ядро и не проверяет лимиты процессов. Его задача строго одна - диагностика сети.

mtr показывает задержки и потери пакетов по маршруту до целевого хоста и делает это в живом режиме, что делает его одним из лучших инструментов для анализа сетевых проблем в Linux.
👍9
Что делает jq '.users[].name' и зачем это вообще нужно

JSON давно стал стандартным форматом для API, логов и сервисных ответов. Проблема в том, что читать его «глазами» в терминале неудобно, а писать парсеры ради одного запроса - перебор. Именно здесь на сцену выходит jq.

Команда jq '.users[].name' берёт JSON-документ, заходит в поле users, проходит по каждому элементу массива и выводит значение поля name. Никакой магии - просто точечная навигация по структуре данных.

На практике это используется постоянно. Ты делаешь запрос к API через curl, получаешь большой JSON и хочешь быстро вытащить нужные значения: имена пользователей, ID, статусы, хосты, версии. Вместо копипасты в браузер или написания скрипта на Python ты добавляешь | jq '.users[].name' и сразу получаешь чистый, удобочитаемый вывод.

Важно понимать, что jq не показывает структуру целиком, не превращает JSON в XML и не ограничивается числовыми полями. Он именно парсит данные и позволяет выбирать нужные куски, комбинировать их, фильтровать и преобразовывать.

jq '.users[].name' парсит JSON и выводит имена всех пользователей из массива users, делая работу с API и логами в Linux быстрой и вменяемой.
👍7
Итоги 2025: какие Linux-утилиты вытеснили старую классику

2025 год стал годом “ревизии терминала”. Множество привычных утилит получили современных наследников, и инженеры постепенно перестали держаться за классические инструменты только по инерции. Ниже - подборка утилит, которые в 2025 году стали де-факто заменой старой школы.

1. btop++ вместо htop и top

Если раньше “htop must-have”, то в 2025 “must-have” - btop++.

Что изменилось:
🟢графики CPU, памяти, сети и дисков в реальном времени
🟢удобные фильтры по процессам
🟢чёткая визуализация нагрузки по ядрам
🟢встроенный менеджер процессов

top уже окончательно воспринимается как археология.

Установка:
sudo apt install btop


2. duf вместо df и du

Вместо разрозненных df/du инженеры всё чаще используют duf.

Почему заменил классику:
▫️нормальный человекочитаемый вывод, а не стену цифр
▫️цветовая индикация свободного места
▫️сортировка по объёму и типу диска
▫️поддержка docker volumes, snap, zfs

Установка:
sudo apt install duf


3. ncdu вместо du -sh | sort -h

du - инструмент отличный, но работать с ним неудобно.
ncdu стал стандартом анализа дискового пространства.

Плюсы ncdu:
▪️интерактивная TUI
▪️навигация по каталогам
▪️мгновенное удаление лишнего
▪️идеален для серверов и контейнеров

Установка:

sudo apt install ncdu


4. ripgrep (rg) вместо grep


В 2025 rg стал стандартом для поиска по коду.

Чем лучше grep:
▪️работает в разы быстрее
▪️учитывает .gitignore
▪️умный поиск по типам файлов
▪️удобный человекочитаемый вывод
▪️написан на Rust, безопасный и быстрый

Установка:
sudo apt install ripgrep


5. fd вместо find


find - мощный, но синтаксис слишком специфичный.
fd - простая и более логичная замена.

Преимущества:
▪️понятные фильтры
▪️regex по умолчанию
▪️быстрый поиск
▪️приятный вывод результата

6. bat вместо cat

cat жив, но bat стал новой нормой.

Почему все перешли на bat:
▪️подсветка синтаксиса
▪️нумерация строк
▪️встроенный просмотрщик (pager)
▪️поддерживает 200+ языков

7. zoxide вместо cd

Самая тихая революция 2025 года.

zoxide - это умная навигация по директориям.
Пример:
z projects
z src
z nginx


Он запоминает частоту посещений и прыгает в нужную папку мгновенно.

Установка:
sudo apt install zoxide


8. exa или lsd вместо ls

ls в 2025 - только для минималистов.

exa/lsd дают:
▪️цветной вывод
▪️дерево директорий
▪️иконки файлов
▪️человекочитаемые размеры по умолчанию

Главный тренд 2025

Инструменты становятся не просто “утилитами для терминала”, а полноценными TUI-приложениями: удобными, красивыми, визуальными.

Linux перестал быть “аскетичным”, и многие инженеры теперь предпочитают инструменты, которые экономят время и делают работу комфортнее.

Какие утилиты вы заменили в 2025?
Please open Telegram to view this post
VIEW IN TELEGRAM
👍125
Почему Linux популярен везде, кроме домашних компьютеров?

Давайте посмотрим на реальную статистику:

99% суперкомпьютеров из топ-500 работают на Linux

✔️ Более 90% облачной инфраструктуры (включая серверы Amazon AWS, Google Cloud, Microsoft Azure) работает на Linux

✔️ 82% смартфонов в мире (все устройства Android) используют ядро Linux

✔️ 95% мирового интернет-трафика проходит через серверы на Linux

✔️ Почти все встроенные системы (роутеры, телевизоры, автомобильные компьютеры) построены на Linux

Парадокс налицо: операционная система, которую «никто не использует», управляет цифровым миром.

Почему серверы полюбили Linux?

🚩 Стабильность
Представьте сервер, который работает годами без перезагрузки. Это не фантастика — это стандартная практика для Linux-серверов. Монолитное, но модульное ядро, унаследованное от UNIX-философии «делай одну вещь и делай её хорошо», обеспечивает беспрецедентную надёжность. (правда не все подсистемы этому следуют)

🚩 Свобода

Абсолютный контроль: Можно залезть в любую часть системы

Выбирайте системы, которые поддерживают активное сообщество и у вас не будет vendor lock-in: Не окажитесь в ситуации «спасибо, что купили нашу систему, теперь платите за обновление»

Глобальная поддержка сообщества: Если есть проблема — её решают тысячи экспертов по всему миру

🚩 Экономика

Один лицензионный ключ Windows Server Standard стоит около $1000. Теперь умножьте это на 10 000 серверов. Linux предлагает ту же (а часто и большую) функциональность за $0. Математика...

🚩Легковесность и гибкость

Нужен веб-сервер? Ставим минимальную систему без графического интерфейса. Нужна система для IoT-устройства с 256 МБ памяти? Собираем своё ядро без всего лишнего. Linux можно «нарезать» под любые требования.

🚩Android и IoT

Android выбрал ядро Linux не случайно:
✔️Уже готовое, стабильное, многозадачное ядро
✔️Поддержка огромного количества железа
✔️Бесплатная лицензия (GPL)

Ваш умный чайник, холодильник, телевизор и автомобиль почти наверняка работают на Linux. Почему?
✔️Минимальные требования к ресурсам
✔️Возможность убрать всё ненужное
✔️Поддержка экзотического железа
✔️Возможность внести изменения

🚩Суперкомпьютеры

Последний суперкомпьютер на Windows исчез из топ-500 в 2014 году. С тех пор — только Linux. Причины:
✔️Масштабируемость: Можно собрать кластер из миллионов ядер
✔️Гибкость настройки: Каждый суперкомпьютер уникален, под каждую архитектуру нужно своё ядро
✔️Производительность: Минимальные накладные расходы, можно выжать максимум из железа

Почему же не десктоп? Напишу в следующей статье.... Эта и так длинная получилась.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9👏5🔥3👎1
Почему же Linux не так популярен на десктоп?

Критическая масса проблем
🟢 Обратная совместимость
Windows десятилетиями сохраняет совместимость со старыми играми и программами. Linux не может себе этого позволить — цена такой совместимости была бы отказом от инноваций.

🟢Драйвера
Производители железа: «Мы не пишем драйверы для Linux, потому что его мало кто использует».
Пользователи: «Мы не используем Linux, потому что для него нет драйверов».
Этот круг разорвала только компания Valve со Steam Deck, инвестировав в драйверы для видеокарт AMD и популярность Proton для запуска игр.

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

🟢 Фрагментация.
Для сервера: выбираем один дистрибутив (RHEL/Debian) и работаем 10 лет.
Для десктопа: новичок спрашивает «Какой дистрибутив выбрать?» и получает 20 взаимоисключающих ответов.

🟢 Культурный разрыв
Пользователи Windows привыкли:

Искать программы в интернете
⬇️
Устанавливать .exe файлы
⬇️
Не думать о зависимостях библиотек
Linux предлагает другой подход (пакетные менеджеры, репозитории), который требует переобучения.

🟢Маркетинг Microsoft
Огромные бюджеты на:
✔️Предустановку на ПК
✔️Корпоративные лицензии
✔️Рекламу
✔️Интеграцию с офисным софтом

У Linux нет ни маркетингового отдела, ни бюджета на рекламу.

🌟Тихое проникновение на десктоп
Но ситуация меняется:

Steam Deck показал, что Linux может быть удобной игровой платформой


Windows Subsystem for Linux — признание от самого Microsoft, что Linux-инструменты необходимы разработчикам

Профессионалы (разработчики, АйТишники, учёные) массово переходят на macOS (UNIX-подобная система) и Linux

Как тебе живется на Linux? Сильно больно?
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍4👎2
🥸 Свежая #подборка_статей_Linux для вашего обучения

🔂Полный путь пакета в Linux: от Ethernet-кадра до Kubernetes CNI - почему сеть ведёт себя именно так.

🔂Загрузка в UEFI/BIOS без горячих клавиш: консольные методы для Windows и Linux - как с помощью командной строки или терминала (в Windows, Linux и macOS) программно перезагрузиться прямо в настройки прошивки

🔂Как я написал bash-скрипт и получил оффер - как автоматизировал рутинную диагностику Linux‑сервера с помощью собственного bash‑скрипта.

🔂Удалённый рабочний стол через ssh туннель - как настроить через SSH‑туннелирование доступ к удалённому RDP‑рабочему столу Windows из внешней сети (через VPS), когда прямая связь заблокирована или недоступна.

🔂Как заставить китайскую механическую клавиатуру работать в Linux - когда работает на Windows, но не работает на Linux.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6👎2