Вот совет по Linux
Когда вы убиваете процесс, вы на самом деле его не убиваете. Вы просто отправляете ему сигнал.
А уже сам процесс решает, что с этим делать.
Это вежливый способ.
Он посылает сигнал SIGTERM (Terminate — завершить).
Процесс может перехватить этот сигнал, чтобы выполнить очистку: сохранить файлы, закрыть соединения и т. д., а затем корректно завершиться
Это жёсткий способ.
Он посылает сигнал SIGKILL.
Этот сигнал процесс перехватить не может. Ядро просто вмешивается и немедленно завершает процесс.
Сначала попробуйте обычный
@linuxos_tg
Когда вы убиваете процесс, вы на самом деле его не убиваете. Вы просто отправляете ему сигнал.
А уже сам процесс решает, что с этим делать.
kill <PID> (отправляет SIGTERM, сигнал 15):Это вежливый способ.
Он посылает сигнал SIGTERM (Terminate — завершить).
Процесс может перехватить этот сигнал, чтобы выполнить очистку: сохранить файлы, закрыть соединения и т. д., а затем корректно завершиться
kill -9 <PID> (отправляет SIGKILL, сигнал 9):Это жёсткий способ.
Он посылает сигнал SIGKILL.
Этот сигнал процесс перехватить не может. Ядро просто вмешивается и немедленно завершает процесс.
Сначала попробуйте обычный
kill. Используйте kill -9 только если процесс завис и отказывается завершаться@linuxos_tg
👍224❤39🔥24 10
Все больше проблем всплывает с написанными на Rust «drop-in» заменами GNU Coreutils в текущей (и будущей) версии Ubuntu
И у «du», и у «sort» похоже есть серьёзные проблемы, которые могут сломать некоторые скрипты и приложения
На деле оказалось, что версия sort, реализованная на Rust, неполноценна - она реализует только часть функциональности оригинального GNU sort.
Иными словами, это не «drop-in» замена. И об этом факте разработчики Rust-клона и команда Ubuntu знали ещё до того, как Ubuntu приняла решение перейти на эти замены
@linuxos_tg
И у «du», и у «sort» похоже есть серьёзные проблемы, которые могут сломать некоторые скрипты и приложения
На деле оказалось, что версия sort, реализованная на Rust, неполноценна - она реализует только часть функциональности оригинального GNU sort.
Иными словами, это не «drop-in» замена. И об этом факте разработчики Rust-клона и команда Ubuntu знали ещё до того, как Ubuntu приняла решение перейти на эти замены
@linuxos_tg
Ничто не разжигает линуксовый холивар быстрее, чем systemd
Это спор о PID 1, «родителе всех процессов». Выбор init-системы во многом определяет философию вашего дистрибутива.
Существует два основных лагеря:
🔸 systemd — интегрированный системный менеджер.
Он управляет службами, логированием (journald), сетью (networkd), устройствами (udev) и многим другим.
🔸 Минималисты (runit, OpenRC и т. п.) — это более простые менеджеры служб. Они делают меньше: запускают, останавливают и мониторят процессы. Для логирования и других задач полагаются на внешние инструменты.
Но забудем на секунду о функциональности, поговорим о сборке с нуля.
Чтобы собрать runit, вам достаточно стандартной библиотеки C. Он крошечный, простой и практически не имеет зависимостей.
А вот чтобы собрать systemd, потребуется значительная часть современного Linux-стека. Это не отдельная утилита, а целая экосистема, в которую вы вписываетесь.
Вот в чём суть компромисса:
мощная интеграция против простой, составной модульности.
А вы что выбираете? И пробовали ли когда-нибудь собрать минимальную систему с нуля?
@linuxos_tg
Это спор о PID 1, «родителе всех процессов». Выбор init-системы во многом определяет философию вашего дистрибутива.
Существует два основных лагеря:
Он управляет службами, логированием (journald), сетью (networkd), устройствами (udev) и многим другим.
Но забудем на секунду о функциональности, поговорим о сборке с нуля.
Чтобы собрать runit, вам достаточно стандартной библиотеки C. Он крошечный, простой и практически не имеет зависимостей.
А вот чтобы собрать systemd, потребуется значительная часть современного Linux-стека. Это не отдельная утилита, а целая экосистема, в которую вы вписываетесь.
Вот в чём суть компромисса:
мощная интеграция против простой, составной модульности.
А вы что выбираете? И пробовали ли когда-нибудь собрать минимальную систему с нуля?
@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍79 27🤣18❤15💊5🤩4🔥3🎉2
Обнаружены несколько серьёзных уязвимостей в Rust-клоне sudo — который поставляется вместе с Ubuntu 25.10 (самым свежим релизом)
И это не мелкие баги: речь идёт о утечке паролей и полном обходе аутентификации.
Более того, каждые несколько дней появляются новые отчёты о критических проблемах в утилитах, переписанных на Rust (таких как
Что, конечно же, в точности совпадает с тем, о чём предупреждали заранее.
Но не переживайте! Зато эти Rust-клоны полностью безопасны с точки зрения управления памятью😎
@linuxos_tg
И это не мелкие баги: речь идёт о утечке паролей и полном обходе аутентификации.
Более того, каждые несколько дней появляются новые отчёты о критических проблемах в утилитах, переписанных на Rust (таких как
sudo, du, date и других), которые пришлось включить в Ubuntu до того, как они прошли полноценное тестированиеЧто, конечно же, в точности совпадает с тем, о чём предупреждали заранее.
Но не переживайте! Зато эти Rust-клоны полностью безопасны с точки зрения управления памятью
@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁155 40❤10💊8👍5👀2🤷♂1🔥1
Вот почему Linux безопаснее и надёжнее, чем другие операционные системы 😅
@linuxos_tg
Скачал недавно вирус для Linux и распаковал его.
Попробовал запустить от root — не сработало.
Гуглил 2 часа, выяснил, что вместо /usr/local/bin вирус распаковался в /usr/bin, куда у пользователя malware нет прав на запись, поэтому вирус не смог создать процессный файл.
Нашёл пропатченные configure и make файлы на каком-то китайском форуме, перекомпилировал и запустил заново.
Вирус сообщил, что ему нужна библиотека cmalw-lib-2.0.
Оказалось, cmalw-lib-2.0 входит в состав CentOS, но не Ubuntu. Ещё пару часов гуглил и нашёл инструкцию, как собрать .deb пакет из исходников.
Наконец вирус запустился, написал немного логов, сделал core dump и упал.
После часа разбора логов я понял, что вирус предполагал, будто работает на ext4, и обращался к API шифрования диска. Под btrfs этот API уже давно депрекейтнут, поэтому ядро сделало раздел только для чтения.
Открыл исходники, нашёл Bitcoin-кошелёк и скинул туда $5 из жалости.
@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
😁480🤣302 40❤29👍10🔥6💊6🌚3
Вот занятный факт о Linux
Вы можете запустить целое отдельное ядро Linux внутри одного процесса на своей машине. Без root-прав и без какого-либо ПО для виртуализации.
Это User-Mode Linux (UML). Это специальный порт ядра, который работает как обычное пользовательское приложение.
Вместо обращения к железу оно взаимодействует с вашим хостовым ОС. Файл превращается в жёсткий диск, а ваш терминал в его консоль. Вы можете загрузить систему, залогиниться и запускать программы, почти как в VM, но всего одной простой командой.
Это мощный инструмент для разработки и отладки ядра, а также для создания изолированных тестовых окружений за считанные секунды
Хотите разобраться глубже? Ознакомьтесь с полной статьей: тык
@linuxos_tg
Вы можете запустить целое отдельное ядро Linux внутри одного процесса на своей машине. Без root-прав и без какого-либо ПО для виртуализации.
Это User-Mode Linux (UML). Это специальный порт ядра, который работает как обычное пользовательское приложение.
Вместо обращения к железу оно взаимодействует с вашим хостовым ОС. Файл превращается в жёсткий диск, а ваш терминал в его консоль. Вы можете загрузить систему, залогиниться и запускать программы, почти как в VM, но всего одной простой командой.
Это мощный инструмент для разработки и отладки ядра, а также для создания изолированных тестовых окружений за считанные секунды
Хотите разобраться глубже? Ознакомьтесь с полной статьей: тык
@linuxos_tg
🔥92👍45❤12🤔10 4👨💻3
Принудительное включение написанных на Rust клонов базовых утилит в Ubuntu идёт настолько плохо… что Ubuntu только что добавила опцию 15-летних контрактов поддержки для релизов Ubuntu LTS
И эти Rust-клоны были указаны как причина самим их вице-президентом по инженерии
Это почти максимально близко к признанию «Упс, мы накосячили!», какое нам вообще могут показать
Это также намекает на то, что либо крупные корпоративные клиенты Ubuntu, либо команда в компании-владельце Ubuntu не рассчитывают, что проблемы с Rust-клонами core utilities будут решены в ближайшее время
Полный текст заявления вице-президента по инженерным вопросам Canonical (Jon Seager):
🤩
@linuxos_tg
И эти Rust-клоны были указаны как причина самим их вице-президентом по инженерии
Это почти максимально близко к признанию «Упс, мы накосячили!», какое нам вообще могут показать
Это также намекает на то, что либо крупные корпоративные клиенты Ubuntu, либо команда в компании-владельце Ubuntu не рассчитывают, что проблемы с Rust-клонами core utilities будут решены в ближайшее время
Полный текст заявления вице-президента по инженерным вопросам Canonical (Jon Seager):
«За последние месяцы мы привлекли много внимания, переключив #Ubuntu на использование более современных инструментов (sudo-rs, uutils), и я твёрдо верю, что это правильный шаг в долгосрочной перспективе.
Тем не менее, по факту многие организации испытывают сложности с миграциями и оказываются в ловушках требований по комплаенсу, что заставляет их работать на старых версиях #Ubuntu в течение длительных периодов времени.
Сегодня Canonical объявила о расширении наших LTS-обязательств: мы будем поддерживать релизы Ubuntu с обновлениями безопасности сроком до 15 лет.»
@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁90 49❤12💊11👍5🤯3🌚3🤣3🙏2
Сообщество Kubernetes официально объявило о выводе ingress-nginx из эксплуатации
Много лет этот контроллер был выбором по умолчанию для маршрутизации HTTP/HTTPS-трафика в бесчисленных кластерах, но в марте 2026 года он перейдёт в архивный режим.
Основная причина этого решения в том, что Kubernetes Ingress API уже давно заморожен. В сам API больше не добавляются новые фичи, что ограничивает дальнейшее развитие ingress-nginx.
Параллельно экосистема смещается в сторону Gateway API, который обеспечивает больше гибкости, лучшую расширяемость и более чёткий дизайн для современных сценариев управления трафиком.
До марта 2026 года ingress-nginx будет получать только best-effort поддержку - без гарантированных релизов, исправлений багов или обновлений безопасности. После этого он больше не будет получать активную поддержку.
Командам, зависящим от ingress-nginx, стоит начать подготовку уже сейчас: определить кластеры, где он используется, оценить альтернативы, протестировать план миграции и рассмотреть контроллеры, поддерживающие Gateway API, чтобы дальнейшие апгрейды проходили безболезненно
@linuxos_tg
Много лет этот контроллер был выбором по умолчанию для маршрутизации HTTP/HTTPS-трафика в бесчисленных кластерах, но в марте 2026 года он перейдёт в архивный режим.
Основная причина этого решения в том, что Kubernetes Ingress API уже давно заморожен. В сам API больше не добавляются новые фичи, что ограничивает дальнейшее развитие ingress-nginx.
Параллельно экосистема смещается в сторону Gateway API, который обеспечивает больше гибкости, лучшую расширяемость и более чёткий дизайн для современных сценариев управления трафиком.
До марта 2026 года ingress-nginx будет получать только best-effort поддержку - без гарантированных релизов, исправлений багов или обновлений безопасности. После этого он больше не будет получать активную поддержку.
Командам, зависящим от ingress-nginx, стоит начать подготовку уже сейчас: определить кластеры, где он используется, оценить альтернативы, протестировать план миграции и рассмотреть контроллеры, поддерживающие Gateway API, чтобы дальнейшие апгрейды проходили безболезненно
@linuxos_tg
❤44🤯23 18👍9🤔7
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
😁304 136🔥28👍14❤11🤔8🤣5🌭3👨💻2🫡2💊2
Порт Linux-ядра на WebAssembly
Недавно один энтузиаст объявил о работе над портированием Linux-ядра на WebAssembly и уже смог запустить его в браузерах с поддержкой WASM
Порт ядра работает и позволяет выполнять базовые программы из командной оболочки прямо в веб-браузере. Однако есть проблемы со стабильностью и некоторыми браузерами
Разработчик так описал текущее состояние работы над WASM-ядром:
Демка здесь. Код на GitHub
@linuxos_tg
Недавно один энтузиаст объявил о работе над портированием Linux-ядра на WebAssembly и уже смог запустить его в браузерах с поддержкой WASM
Порт ядра работает и позволяет выполнять базовые программы из командной оболочки прямо в веб-браузере. Однако есть проблемы со стабильностью и некоторыми браузерами
Разработчик так описал текущее состояние работы над WASM-ядром:
«Сейчас это технологическое демо, оно нужно, чтобы показать, что вообще возможно. Есть вещи, из-за которых с тем, что у нас есть сегодня, всё получается более болезненным, чем должно быть. Хорошая новость в том, что если есть желание двигаться дальше с Linux и Wasm, по крайней мере, я не вижу причин, почему текущие ограничения нельзя было бы снять. Но для этого нужно, чтобы люди из мира Linux и Wasm, не говоря уже обо всей экосистеме вокруг, действительно взялись за реализацию этих изменений. Некоторые фундаментальные вещи каждой из платформ пришлось бы поменять ради более гладкого опыта, особенно со стороны Wasm.»
Демка здесь. Код на GitHub
@linuxos_tg
👍78💊17❤15🔥5🤯4🥰2😁1
This media is not supported in your browser
VIEW IN TELEGRAM
В Windows реализован сложный и корректный процесс завершения работы, чтобы программы корректно закрывались
Linux:
@linuxos_tg
Linux:
@linuxos_tg
😁283🤣139🔥21 11❤10💯3😱2😢2🤓2
Команда разработчиков ядра Linux завершает работу над документом «Kernel Guidelines for Tool [AI] Generated Content».
Вот несколько ключевых моментов:
- Использование ИИ-систем (включая «чат-ботов») будет официально разрешено во всех аспектах разработки ядра Linux (включая написание нового кода и генерацию changelog’ов)
- ИИ-сгенерированный код может рассматриваться ревьюерами «как любой другой вклад».
- Ревьюеры теперь могут «предлагать лучший промт для [ИИ-чатбота]» вместо того, чтобы предлагать лучший код.
- Эти рекомендации уже были изучены и одобрены ключевыми лидерами сообщества ядра.
- В ядре Linux уже есть код, сгенерированный ИИ.
«Контрибьюторы ядра уже давно используют инструменты для генерации патчей»😳
@linuxos_tg
Вот несколько ключевых моментов:
- Использование ИИ-систем (включая «чат-ботов») будет официально разрешено во всех аспектах разработки ядра Linux (включая написание нового кода и генерацию changelog’ов)
- ИИ-сгенерированный код может рассматриваться ревьюерами «как любой другой вклад».
- Ревьюеры теперь могут «предлагать лучший промт для [ИИ-чатбота]» вместо того, чтобы предлагать лучший код.
- Эти рекомендации уже были изучены и одобрены ключевыми лидерами сообщества ядра.
- В ядре Linux уже есть код, сгенерированный ИИ.
«Контрибьюторы ядра уже давно используют инструменты для генерации патчей»
@linuxos_tg
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM