Kali Linux 2026.2 получил набор практичных изменений, которые заметят те, кто реально запускает систему в VM, на рабочей машине или в NetHunter.
Обновили рабочие окружения: GNOME 50 и KDE Plasma 6.6. В GNOME улучшили отзывчивость файлового менеджера, загрузку иконок, работу с памятью и доступность. В KDE добавили новые улучшения для Wayland, accessibility и OCR в Spectacle, чтобы текст можно было вытаскивать прямо со скриншотов.
APT тоже меняется. Вместо старого /etc/apt/sources.list свежие установки теперь используют новый формат:
/etc/apt/sources.list.d/kali.sources
Старые системы не ломают, но направление понятно: Kali переходит на более современный deb822-style формат, как и другие Debian-based дистрибутивы.
Для VM пользователей главное изменение - загрузка стала быстрее. В предсобранных VM-образах больше не ставят лишнюю графическую firmware, из-за этого initrd стал меньше, а boot time в тестах Kali сократился примерно в 3 раза.
В релизе также добавили 9 новых инструментов, обновили пакеты и оставили ядро Linux 6.19, чтобы не ломать совместимость с NVIDIA. Для тех, кто хочет свежее, kernel 7.0 доступен через experimental/rolling.
NetHunter тоже получил заметные обновления: быстрее стартует приложение, появились фиксы для custom commands и chroot manager, обновили kernel flasher и начали волну патчей для qcacld3 injection на поддерживаемых устройствах.
Алгоритму почти 70 лет, а он до сих пор живёт в ядре Linux.
В 1957 году Wilkes, Wheeler и Gill описали быстрый способ считать количество установленных битов в числе. Не циклом по одному биту, а через маски и арифметику сразу над группами битов.
Идея простая:
- сначала считаем биты парами
- потом группами по 4
- потом по байтам
- в конце умножение собирает сумму в старший байт
Если в процессоре нет инструкции POPCNT, Linux использует похожий подход в __sw_hweight64.
Красивый пример того, как старый битовый трюк пережил десятилетия и всё ещё работает в современном системном коде.
Разбираем SQL-инъекцию на пальцах в формате Лайт против L. Что это такое, как обычная строка ввода меняет логику запроса, к чему это приводит и какими способами реально закрыть дыру. Коротко, по делу и так, чтобы запомнилось.
Больше таких видео: https://www.youtube.com/shorts/c4gBi094jkU
⚡️ Linux может передать в SIGCHLD гораздо больше, чем просто «дочерний процесс завершился»
Обычно с дочерними процессами делают так: ловят SIGCHLD, а потом отдельно вызывают waitpid(), чтобы узнать, кто завершился и с каким статусом.
Но есть более интересный режим - SA_SIGINFO.
Если повесить обработчик через sigaction() и включить флаг SA_SIGINFO, ядро передаст в обработчик структуру siginfo_t с деталями по дочернему процессу.
Там уже есть:
• PID дочернего процесса
• статус завершения
• сигнал, если процесс был убит сигналом
• причина генерации SIGCHLD
• код события: завершился, был остановлен, продолжен и так далее
То есть вместо «что-то случилось с ребёнком» программа получает нормальный контекст события прямо в обработчике сигнала.
Примерно так можно понять разницу:
CLD_EXITED - процесс завершился сам
CLD_KILLED - процесс убит сигналом
info->si_pid - какой именно процесс
info->si_status - код выхода или номер сигнала
Это удобная штука для рантаймов, супервизоров, init-систем, job runners и всего, что управляет дочерними процессами.
Вреальном коде не стоит делать тяжёлую работу внутри signal handler. Часто обработчик только фиксирует событие или пишет в pipe/eventfd, а основная логика уже выполняется в обычном цикле программы.
Но сама идея мощная: Linux не просто говорит «ребёнок умер».
Он может сразу сказать, какой именно, как именно и почему.
Создатели Unix сами устали от Unix - и в Bell Labs начали строить ему замену.
Кен Томпсон, Деннис Ритчи и Роб Пайк почти десятилетие работали над Plan 9. Название взяли из старого трэшового sci-fi фильма Plan 9 from Outer Space, как внутреннюю шутку. Но сама система была совсем не шуткой.
Plan 9 пыталась довести идеи Unix до логического конца. Если в Unix «всё файл» звучало как красивая философия, то в Plan 9 это стало реальной архитектурой. Файлами выглядели устройства, процессы, сеть, окна, удалённые машины. Всё собиралось в единое пространство имён, с которым можно работать одинаковыми инструментами.
Самые сильные идеи Plan 9:
- единое пространство имён для файлов, устройств, процессов, сети и графики
- личный вид системы для каждого пользователя
- распределённые вычисления как основа, а не отдельная надстройка
- UTF-8, который потом стал стандартом для всего интернета
- сетевые идеи, которые позже повлияли на Linux, Android и контейнеры
- подходы, которые Роб Пайк позже перенёс в Go
В 2000 году Plan 9 открыли бесплатно. Можно было запускать, менять, изучать и использовать без лицензий уровня Windows и без привязки к железу Apple.
Но массовым он так и не стал. Linux забрал внимание индустрии, Unix-наследие осталось везде, а Plan 9 превратился в систему, которую знают в основном системные программисты и любители красивых ОС.
Ирония в том, что Plan 9 проиграл как продукт, но выиграл как источник идей. UTF-8, распределённая модель, namespaces, сетевой подход, влияние на Go - всё это живёт в современных системах до сих пор.