Веб-версияОткрыть в Telegram
ММир Линукса

Мир Линукса

@linuxwit · канал · в индексе с 2026-07-19
434подписчиков
76постов в индексе
М
Мир Линукса
Что на самом деле делает kill -0 <PID> и почему это один из самых недооценённых приёмов в Linux Что делает kill -0 <PID>? Проверяет, существует ли процесс и можно ли к нему обращаться сигналами - при этом не посылает никакого сигнала. Это просто тест на доступность процесса. Почему это важно? Потому что иногда нужно узнать: ⚪️ жив ли процесс? ⚪️ есть ли права взаимодействовать с ним? ⚪️ не “повис” ли PID после падения? ⚪️ стоит ли перезапускать сервис или это ложная тревога? И всё это - без риска его случайно убить. Как это работает? Команда kill -0 <PID> делает системный вызов kill(), но с “нулевым” сигналом. Нулевой сигнал - это не сигнал. Это проверка. Возможные результаты: ⚪️Выходит без ошибки → процесс существует, доступен, жив. ⚪️ESRCH → процесса с таким PID нет. ⚪️EPERM → процесс есть, но нет прав для сигналов. Выглядит как мелочь, а в продакшене - спасает от ложных срабатываний мониторинга и бесконечных перезапусков. Где используют kill -0 в реальной работе 1. В health-check скриптах Перед тем как перезапустить сервис, проверяют, жив ли текущий PID. 2. В init-скриптах systemd и supervisord Чтобы не запустить дублирующие процессы. 3. В CI/CD пайплайнах Для проверки зависших тестов или фоновых задач. 4. В мониторинге Zabbix, Prometheus exporters, cron - все любят быструю проверку на существование процесса. Почему не стоит игнорировать этот приём Это очень безопасный, надёжный и почти бесплатный способ понять текущее состояние процесса без взаимодействия с ним. ps, pgrep, pidof - полезны, но kill -0 проверяет ещё и права, что особенно критично в мультипользовательских системах и контейнерах.
11 · 501 ·
М
rsync, scp и sftp: чем копировать, чтобы потом не было больно В Linux есть три популярных способа копирования файлов по сети: scp, sftp и rsync. Формально все они работают поверх SSH и считаются безопасными, но на практике решают разные задачи. Протоколы и принцип работы scp - это прямое копирование файла “как есть”. Он не знает, что копирует, не умеет продолжать передачу и каждый раз гоняет файл целиком. sftp - интерактивный файловый протокол поверх SSH. Больше похож на FTP: можно ходить по каталогам, забирать файлы, но для автоматизации и массовых операций он неудобен. rsync - не просто копирование, а синхронизация. Он сравнивает источник и назначение и передаёт только различия. Именно поэтому его используют в проде. Ускорение и контроль передачи rsync выигрывает за счёт флагов: 🟢--partial - продолжение прерванной передачи 🟢--compress - сжатие данных на лету 🟢--progress - реальный прогресс, а не “ждите” В scp максимум, на что можно рассчитывать - флаг -C для сжатия, без контроля состояния. Безопасность Все три работают по SSH. Если настроены ключи, отключён пароль и ограничены права - по безопасности разницы нет. Но rsync позволяет тонко управлять тем, что и куда копируется, что снижает риск случайно затереть прод. Частые ошибки rsync 🗄 забывают / в конце пути и копируют каталог целиком 🗄 используют --delete без dry-run 🗄 синхронизируют /etc, не исключив секреты 🗄 копируют миллион мелких файлов без --inplace Когда использовать что ✅Бэкапы 👉 rsync ✅Миграции серверов 👉 rsync ✅Перенос конфигов 👉 rsync ✅Один файл быстро забрать 👉 scp ✅Ручная работа с файлами 👉 sftp Если коротко: в автоматизации rsync, всё остальное - компромисс.
16 · 510 ·
М
journalctl -xe: первая команда, которую вводят, когда «что-то сломалось» Когда в Linux внезапно не стартует сервис, systemd ругается, а причина неочевидна - почти всегда первым делом вводят: journalctl -xe И не просто так. Что показывает journalctl -xe Эта команда выводит детализированные сообщения об ошибках последних событий systemd, с пояснениями и фокусом именно на проблемах. Она не показывает процессы, не лезет в сетевые логи и не является просмотром логов ядра в чистом виде. Это быстрый и удобный инструмент диагностики системных сбоев. Почему именно -x и -e Флаги здесь работают в связке: -e Перемещает вывод сразу в конец журнала - к самым свежим событиям. То есть ты сразу видишь, что произошло только что, без прокрутки километров логов. -x Добавляет человеческие пояснения к сообщениям systemd. Это не просто сухая ошибка, а подсказка, что именно пошло не так и в каком направлении копать. Вместе они превращают journalctl в инструмент быстрого разбора аварий. Когда реально полезно journalctl -xe обычно запускают, когда: 🟠сервис не стартует (systemctl start вернул ошибку) 🟠systemd завис или ушёл в degraded 🟠после обновления что-то перестало работать 🟠приложение падает без логов в stdout 🟠сервер перезагрузился и нужно понять почему Это точка входа в дебаг, а не финальный диагноз.
9 · 492 ·
М
grep: история о возможностях, которыми почти никто не пользуется Большинство знают grep как “поиск строки в файле”. На самом деле это один из самых мощных инструментов анализа в Linux. Поиск по множеству файлов grep "ERROR" /var/log/*.log grep -r "token" . Можно искать по каталогам, маскам и даже по всему проекту. Регулярки и флаг -E grep -E "ERROR|WARN|FATAL" app.log -E включает расширенные регулярные выражения. Без него половина возможностей просто недоступна. Читаемый вывод grep --color=auto "timeout" app.log Цвет - не гулянка. Это скорость анализа и меньше ошибок глазами. Поиск с исключениями grep -v "healthcheck" access.log Идеально, когда нужно убрать шум и оставить только важное.
7 · 490 ·
М
watch: команда, которая показывает живую систему watch - один из самых недооценённых инструментов Linux. Он позволяет наблюдать за системой в реальном времени, без скриптов и демонов. Базовая идея watch <command> Команда выполняется каждые N секунд, а ты видишь, как меняется состояние. Реальные кейсы watch df -h watch ss -lntup watch kubectl get pods watch free -m Идеально для: 🟢отладки 🟢диагностики 🟢наблюдения за деградацией В расследовании инцидентов Когда: 🟠растёт диск 🟠отваливаются сокеты 🟠поды флапают 🟠память “утекает” watch показывает динамику, а не статический снимок. Кастомизация watch -n 1 command watch -d command Можно менять интервал и подсвечивать изменения - идеально для сравнения состояний. Почему лучше cron Cron даёт точки во времени. watch даёт контекст и поведение системы.
7 · 469 ·
М
Мир Линукса
🥸 Свежая подборка статей для вашего обучения 💬 Самые частые ошибки при настройке VPS: опыт техподдержки - самые частые кейсы из практики поддержки - с пояснениями, что именно идёт не так и как это обычно чинится. 💬 Локальный диск на 288 ПБ: монтируем S3-бакет Yandex Cloud без боли - как с помощью GeeseFS смонтировать S3-бакет из Yandex Cloud как обычный локальный диск в Linux-системе (например, Fedora) через FUSE и systemd, получив огромный файловый объём для работы. 💬 Tiny Core Linux 16.2: полноценная система весом 23 МБ. Что это и зачем? - о том, как устроен Tiny Core Linux 16.2, почему остаётся минималистичным и в каких сценариях его можно использовать. 💬 Rust в ядре Linux: долгий путь от осторожных попыток к реальному применению - о том, как Rust постепенно внедряется в ядро Linux. #подборка_статей_Linux
4 · 585 ·
М
Что значит состояние процесса Z в Linux Иногда в ps, top или htop можно увидеть процесс со статусом Z. Это не «зависший» и не «работающий» процесс - это зомби. Что такое процесс-зомби Процесс в состоянии Z (zombie) - это процесс, который уже завершился, но его родитель ещё не забрал код завершения через wait(). Проще говоря: 🟢сам процесс мертв; 🟢запись о нём осталась в таблице процессов; 🟢ресурсы (CPU, память) он не потребляет. Почему появляются зомби Каждый процесс в Linux обязан: 🔴 завершиться; 🔴 сообщить родителю статус выхода; 🔴 быть «убранным» родителем. Если родитель: 🟢не вызывает wait(); 🟢завис; 🟢написан с ошибкой, то дочерний процесс превращается в зомби. Почему зомби нельзя убить kill не работает, потому что: ✅процесса фактически уже нет; ✅сигналу некуда доставляться. Поэтому: 🤔 kill -9 не помогает; 🤔 перезапускать нужно родителя, а не зомби. Опасны ли зомби Один-два - нет. Тысячи - да. Хотя зомби не жрут ресурсы, они: - занимают PID’ы; - могут забить таблицу процессов; - указывают на баги в приложении. Как избавиться от зомби Правильные способы: 🟢перезапустить родительский процесс; 🟢починить код, чтобы вызывался wait(); 🟢в крайнем случае - перезапуск сервиса или системы. Неправильный способ - бесконечно пытаться убить Z через kill. Состояние Z - это не проблема ядра и не баг Linux. Это сигнал, что где-то есть криво написанный родительский процесс. Если видишь зомби - ищи того, кто его «породил».
4 · 536 ·
М
Как посмотреть использование сети в реальном времени в Linux Одна из самых частых болей в Linux - «интернет лагает, но непонятно почему». Процессов много, сервисов ещё больше, а понять, кто именно сейчас ест сеть, бывает сложно. Именно для таких ситуаций и существует bandwhich. Это утилита, которая в реальном времени показывает, какие процессы и подключения потребляют сетевой трафик. Не абстрактные мегабиты по интерфейсу, а конкретно: какой процесс, по какому адресу и с какой скоростью передаёт или принимает данные. В этом её ключевое отличие от классических инструментов. В отличие от top, который работает с CPU и памятью, bandwhich вообще не интересуется загрузкой процессора. Он смотрит на сетевые сокеты и сопоставляет их с процессами. Поэтому top здесь бесполезен. netcat - это инструмент для ручной работы с соединениями, а не мониторинг. lsmod вообще показывает загруженные модули ядра и к сети отношения не имеет. Bandwhich особенно хорошо заходит, когда нужно быстро найти источник проблемы: внезапно вырос исходящий трафик, сервер начал «качать» данные без видимой причины, контейнер неожиданно упирается в лимиты. Запустил утилиту - и сразу видно, кто именно виноват. Отдельный плюс - читаемый интерфейс. Никаких графиков ради графиков, только полезная информация: процесс, направление трафика, скорость и общий объём. Именно поэтому bandwhich часто используют DevOps, админы и SRE во время инцидентов, когда времени разбираться «по науке» просто нет. Если коротко: когда нужен быстрый и честный ответ на вопрос «кто жрёт сеть прямо сейчас», правильная команда - bandwhich.
10 · 482 ·
М
Что делает команда ncdu и почему без неё сложно жить В какой-то момент на любом Linux-сервере заканчивается место. Причём заканчивается внезапно: всё работало, алертов не было, а потом - «No space left on device». И вот тут начинается классическая боль: что именно съело диск? ncdu решает эту проблему быстро и наглядно. Это TUI-утилита для анализа дискового пространства, которая показывает, какие каталоги и файлы реально занимают место, и позволяет проваливаться внутрь структуры шаг за шагом. Не отчётом в терминале, а живым интерфейсом. В отличие от просмотра размеров через du, где ты получаешь простыню чисел и сам пытаешься понять, что к чему, ncdu сразу сортирует всё по размеру. Ты запускаешь её в нужном каталоге и моментально видишь, где лежит мусор, логи, кэши или забытые артефакты сборок. Самое важное - интерактивность. Можно быстро перемещаться по каталогам, сравнивать размеры, а при необходимости удалять файлы прямо из интерфейса. Это особенно полезно на серверах, где каждая минута простоя стоит дорого. ncdu анализирует использование дискового пространства в текстовом интерфейсе и делает это намного удобнее и быстрее, чем классические утилиты. Если диск забился, а времени разбираться нет - ncdu почти всегда первый инструмент, который стоит запускать.
13 · 522 ·
М
Что делает команда mtr и почему она незаменима при сетевых проблемах Когда начинаются проблемы с сетью, первый вопрос обычно звучит так: «это у нас или где-то по дороге?». Пакеты теряются, задержки скачут, сервисы то отвечают, то молчат. В такие моменты обычный ping даёт слишком мало информации, а traceroute - слишком статичную картину. mtr объединяет оба подхода. Эта команда в реальном времени показывает маршрут до узла, задержки на каждом хопе и процент потерь пакетов. Причём данные обновляются постоянно, а не один раз, как в классическом traceroute. Именно поэтому mtr так любят админы и DevOps во время инцидентов. Ключевая ценность mtr в том, что ты видишь не просто «пинг плохой», а конкретный участок маршрута, где начинаются проблемы. Это может быть перегруженный шлюз, провайдерский узел или междатацентровый линк. С таким выводом уже можно идти к сетевикам или провайдеру, а не гадать на кофейной гуще. Другие варианты из опроса к задаче не относятся. mtr не работает с HTTP, не мониторит ядро и не проверяет лимиты процессов. Его задача строго одна - диагностика сети. mtr показывает задержки и потери пакетов по маршруту до целевого хоста и делает это в живом режиме, что делает его одним из лучших инструментов для анализа сетевых проблем в Linux.
11 · 659 ·
М
Что делает 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 быстрой и вменяемой.
5 · 637 ·
М
Мир Линукса
Итоги 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 Самая тихая рево
41 · 771 ·
Мир Линукса
Почему 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) Ваш умный чайник, холодильник, телевизор и автомобиль почти наверняка работают
7 · 642 ·
М
Почему же 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? Сильно больно?
2 · 736 ·
М
Мир Линукса
🥸 Свежая #подборка_статей_Linux для вашего обучения 🔂Полный путь пакета в Linux: от Ethernet-кадра до Kubernetes CNI - почему сеть ведёт себя именно так. 🔂Загрузка в UEFI/BIOS без горячих клавиш: консольные методы для Windows и Linux - как с помощью командной строки или терминала (в Windows, Linux и macOS) программно перезагрузиться прямо в настройки прошивки 🔂Как я написал bash-скрипт и получил оффер - как автоматизировал рутинную диагностику Linux‑сервера с помощью собственного bash‑скрипта. 🔂Удалённый рабочний стол через ssh туннель - как настроить через SSH‑туннелирование доступ к удалённому RDP‑рабочему столу Windows из внешней сети (через VPS), когда прямая связь заблокирована или недоступна. 🔂Как заставить китайскую механическую клавиатуру работать в Linux - когда работает на Windows, но не работает на Linux.
17 · 903 ·
М
Мир Линукса
🥸 Свежая #подборка_статей_Linux для вашего изучения ▪️Ядро Linux: Реально ли это просто программа? - статья показывает на простых экспериментах, что ядро Linux - всего лишь обычная исполняемая программа, которую можно скомпилировать, запустить и понять. ▪️Сеть вместо SD-карты: как собрать минимальный Linux для Raspberry Pi с возможностью загрузки по сети - как организовать сетевую загрузку для Raspberry Pi и собрать минимальное ядро Linux, поддерживающее сетевую загрузку. ▪️Как удаление сорока строк увеличило производительность в 400 раз - как одно простое изменение в исходниках привело к огромному приросту производительности измерения CPU-времени в JVM на Linux. ▪️Баги в ядре Linux в среднем прячутся по 2 года. Некоторые скрываются до 20 лет - рассказывает о том, как автор проанализировал десятки тысяч исправлений в ядре Linux по меткам Fixes: и выяснил, что уязвимости часто остаются незамеченными годами. ▪️Loss32: Linux с классическим Windows-интерфейсом на базе Wine и ReactOS. Что это и как работает - о экспериментальном проекте Loss32 - Linux-дистрибутиве, который запускает классический интерфейс Windows поверх ядра Linux через Wine и компоненты из ReactOS.
7 · 1.1K ·

Открытая публичная лента из поискового индекса ChatCrawler — «Google по публичному Telegram»; обновляется по мере обхода площадки. Время — UTC.

Только публичный контент, официальный API Telegram. О проекте · Вопросы · Чего мы не делаем · Убрать страницу из выдачи · Каталог · Поиск · Как мы считаем