| · | 23.04 |
Выпуск эмулятора QEMU 11.0.0 |
| |
Представлен релиз проекта QEMU 11.0.0. В качестве эмулятора QEMU позволяет запустить программу, собранную для одной аппаратной платформы на системе с совершенно иной архитектурой, например, выполнить приложение для ARM на x86-совместимом ПК. В режиме виртуализации в QEMU производительность выполнения кода в изолированном окружении близка к аппаратной системе за счёт прямого выполнения инструкций на CPU и задействования гипервизора Xen или модуля KVM в Linux, или модуля NVMM в NetBSD.
Изначально проект был создан Фабрисом Белларом (Fabrice Bellard) с целью обеспечения возможности запуска собранных для платформы x86 исполняемых файлов Linux на архитектурах, отличных от x86. За годы разработки была добавлена поддержка полной эмуляции для 14 аппаратных архитектур, число эмулируемых аппаратных устройств превысило 400. При подготовке версии 11.0.0 внесено более 2500 изменений от 237 разработчиков.
Ключевые улучшения, добавленные в QEMU 11.0:
- Удалена поддержка 32-разрядных хост-систем, которая была объявлена устаревшей в апреле прошлого года в QEMU 10.0. В декабрьском выпуске 10.2 в генераторе кода TCG (Tiny Code Generator) была прекращена поддержка платформ mips32 и ppc32, а в выпуске QEMU 11.0 удалены оставшиеся платформы i386, arm, ppc и riscv32, а также проведена чистка кодовой базы и сборочной системы от компонентов для работы на 32-разрядных хостах.
- Реализован ускоритель виртуализации "nitro" ("-accel nitor") и новый тип эмулируемых систем "nitro", позволяющий запускать в QEMU изолированные анклавы на базе технологии конфиденциальных вычислений AWS Nitro Enclave, например, для локального тестирования в QEMU окружений Nitro Enclave. В AWS EC2 технология Nitro Enclave позволяет запускать в виртуальной машине вложенные изолированные анклавы для работы с конфиденциальными данными, выделяя им часть своих ресурсов.
- Улучшена поддержка ускорителей виртуализации MSHV (Microsoft Hypervisor) и WHPX (Microsoft Windows Hypervisor Platform Extensions).
- При использовании гипервизора KVM ("-accel kvm") предоставлена поддержка виртуализации расширения Intel CET (Control-flow Enforcement Technology) для применения в виртуальных машинах защиты от эксплоитов, использующих методы возвратно-ориентированного программирования (ROP - Return-Oriented Programming). Также добавлена поддержка перезагрузки конфиденциальных виртуальных машин, использующих для шифрования памяти расширения AMD SEV-SNP (Secure Encrypted Virtualization - Secure Nested Paging) и Intel TDX (Trust Domain Extensions).
- В устройство VirtIO-GPU, обеспечивающее работу виртуального GPU, добавлена возможность выставления отличающихся разрешений экрана для разных устройств вывода.
- В VirtIO-GPU добавлена поддержка контекстов DRM (Direct Rendering Manager native context), позволяющих повысить производительность работы с виртуальным GPU из гостевой системы за счёт прямой передачи команд в реальный хостовый GPU. Поддержка контекстов DRM включается при использовании нового устройства virtio-gpu-gl с опцией "drm_native_context=on".
В отличие от контекстов Virgl и Venus, работающих на уровне API OpenGL и Vulkan, контекст DRM реализован на уровне UAPI ядра Linux.
- Добавлена возможность использования языка C++ для разработки плагинов к генератору кода TCG (Tiny Code Generator).
- В блочный драйвер NFS добавлена поддержка сборки с библиотекой libnfs 6.
- В блочный драйвер curl добавлена опция "force-range" для принудительного использования HTTP-заголовка "Range" при загрузке изображений без предварительной проверки его поддержки отдельным запросом с заголовком HEAD.
- В блочном драйвере FUSE отключена обработка операций экспорта в синхронном режиме, приводивших к блокировке запуска виртуальной машины до окончания обработки других FUSE-запросов. Добавлена возможность использования нескольких потоков ввода/вывода (iothread) при выполнении экспорта в FUSE.
- В эмулятор архитектуры x86 добавлена поддержка CPU Intel Diamond Rapids ("Xeon 7").
- В эмулятор архитектуры ARM добавлена процессорных расширений FEAT_ASID2 и FEAT_E2H0. В генераторе кода TCG реализована эмуляция расширений SME (Scalable Matrix Extension).
- В эмулятор архитектуры HPPA добавлена поддержка эмуляции 64-разрядных CPU c 40- и 44-разрядным адресным пространством.
При помощи SeaBIOS-hppa 24 обеспечена инициализация PCI-контроллера Astro, позволяющая использовать PCI-видеокарты на 64-рядных системах.
- В эмуляторе архитектуры LoongArch появилась возможность миграции PMU (Performance Monitoring Unit) при использовании гипервизора KVM. В генераторе кода TCG реализована эмуляция расширений
LA v1.1, sc.q и llacq/screl, а также инструкций FRECIP и DRECIP для вычисления обратных значений.
- В эмулятор архитектуры PowerPC добавлена поддержка снапршотов.
- В эмуляторе архитектуры RISC-V реализована поддержка CPU MIPS P8700 и расширений набора команд Zilsd, Zclsd, ZALASR и Smpmpmt.
- В эмуляторе архитектуры s390 появилась поддержка загрузки с устройств virtio-blk-pci и реализована эмуляции инструкции "DIVIDE TO INTEGER".
- Принято исправление, в 50-80 раз сокращающее задержки при работе fdmon (file descriptor monitoring) в режиме "aio=io_uring" и нахождении системы в состоянии простоя (idle).
- Главная ссылка к новости
- OpenNews: Разработчик io_uring выявил в QEMU проблему, в 50-80 раз замедлявшую fdmon в режиме простоя
- OpenNews: QEMU на пути удаления поддержки 32-разрядных хост-систем
- OpenNews: Выпуск эмулятора QEMU 10.2.0
- OpenNews: Выпуск Box64 0.4.0, эмулятора для запуска x86-игр на системах ARM64, RISC-V и Loongarch64
- OpenNews: Выпуск PCSX2 2.6.0, эмулятора Sony Playstation 2
|
|
|
| |
|
|
| · | 23.04 |
Выпуск Nuitka 4.0, компилятора для языка Python. Прогресс развития JIT в CPython (19 +3) |
| |
Доступен выпуск проекта Nuitka 4.0, развивающего компилятор для трансляции скриптов на языке Python в представление на языке C, которое затем можно скомпилировать в исполняемый файл, использующий libpython для обеспечения максимальной совместимости с CPython (используются штатные средства CPython для управления объектами). Обеспечена полная совместимость с актуальными выпусками Python 2.6, 2.7, 3.4 - 3.13. По сравнению с CPython скомпилированные скрипты демонстрируют в тестах pystone повышение производительности на 335%. Код проекта распространяется под лицензией Apache.
В новой версии:
- Внесены изменения для улучшения совместимости с Python 3.12, 3.13 и 3.14, например, добавлена поддержка отложенной обработки аннотаций и нового синтаксиса аннотирования типов для обобщённых классов и функций.
- Добавлена экспериментальная возможность использования компилятора Zig (zig cc) в качестве бэкенда Си-компилятора в Nuitka.
- Добавлена предварительная поддержка LTO-оптимизаций при использовании компилятора Clang.
- Предложен декоратор "@nuitka_ignore" для исключения компиляции функций.
- Реализованы опции: "--project" для сборки с использованием настроек из файла pyproject.toml, "--devel-profile-compilation" для профилирования на этапе сборки, "--debug-self-forking" для отладки форк-бомб, "--include-windows-runtime-dlls" для управление включением C runtime DLL в Windows, "--qt-debug-plugins" для диагностики загрузки Qt-плагинов.
- Добавлена поддержка актуальных версий пакетов oracledb, win32ctypes, dask, dataparser, puremagic, pygments.lexers, tomli, av, sentry_sdk, jedi, parso, line_profiler и pandas.
Дополнительно можно отметить отчёт о прогрессе развития JIT-компилятора в CPython. Разработчики поставили перед собой цель поднять производительность JIT к выпуску CPython 3.15 на 5%, а к выпуску 3.16 повысить производительность на 10% и реализовать возможность использования JIT в режиме Free-threading (без глобальной блокировки). В текущем состоянии использование JIT в альфа-сборках CPython 3.15 уже демонстрирует в среднем ускорение на 11-12% на платформе macOS AArch64 и на 5-6% на платформе x86_64 Linux по сравнению со стандартным интерпретатором. При этом в отдельных тестах при включении JIT изменение производительности варьируется от ускорения на более чем 100%, до замедления на 20%.
- Главная ссылка к новости
- OpenNews: В Python добавлен JIT-компилятор
- OpenNews: Выпуск Nuitka 2.2, компилятора для языка Python
- OpenNews: CPython может сделать Rust обязательной сборочной зависимостью к версии 3.17
- OpenNews: Динамика изменения кодовой базы проекта Python
- OpenNews: Оценка изменения производительности CPython за последние 5 лет
|
|
|
| |
|
|
| · | 23.04 |
Проект WSL9x для запуска современных Linux-ядер в окружении Windows 95 (48 +20) |
| |
Не связанный с компанией Microsoft энтузиаст реализовал инструментарий WSL9x (Windows 9x Subsystem for Linux), позволяющий запускать современные ядра Linux внутри ядра Windows 95/98/ME. Проект даёт возможность в одной системе бок о бок выполнять приложения для Linux и Windows 9x, по аналогии с тем как прослойка WSL позволяет работать с Linux-приложениями в современных версиях Windows. Поддерживается запуск только консольных Linux-программ. Код компонентов WSL9x написан на Си и ассемблере и распространяется под лицензией GPLv3.
В отличие от WSL2 в WSL9x не применяется виртуализация и ядро Linux выполняется в нулевом кольце защиты параллельно с ядром Windows, что позволяет использовать WSL9x на системах без поддержки аппаратной виртуализации, даже c CPU i486. В системе применяется модифицированное ядро Linux 6.19, собранное для работы в режиме UML (User-mode Linux), предназначенном для запуска ядра как пользовательского процесса. Обращение к POSIX API в UML-слое трансляции заменено на вызов API ядра Windows 9x.
В Windows загружается подготовленный проектом VxD-драйвер, отвечающий за инициализацию подсистемы WSL9x, загрузку и размещение ядра Linux в памяти, диспетчеризацию прерываний, цикличную передачу управления ядру Linux в режиме совместной многозадачности и обработку адресованных Linux-ядру событий из пространства пользователя, таких как выполнение системных вызовов и обращение к невыделенным страницам памяти (page faults). Так как ядро Windows 9x не поддерживает таблицу векторов прерываний (IDT, Interrupt Descriptor Table), что не позволяет установить собственный обработчик прерывания 0x80, для системных вызовов применяется обработчик GPF (General Protection Fault), перехватывающий исключения, возникающие при выполнении инструкции SYSCALL.
Для пользователей предлагается утилита wsl.com, оформленная в виде 16-разрядного DOS-приложения и позволяющая использовать командную строку MS-DOS для запуска Linux-программ. Утилита обеспечивает передачу событий ввода и симулирует функциональность консоли для отображения вывода с поддержкой ANSI escape-кодов.
- Главная ссылка к новости
- OpenNews: Выпуск WSL 2.7.0, прослойки для запуска Linux в Windows
- OpenNews: Проект по адаптации подсистемы WSL2 для запуска FreeBSD в Windows
- OpenNews: Microsoft открыл код Windows Subsystem for Linux и текстового редактора Edit
- OpenNews: Первый выпуск Lima, окружения для запуска Linux-приложений в macOS
- OpenNews: Apple открыл инструментарий для запуска Linux-контейнеров в macOS
|
|
|
| |
|
|
| · | 22.04 |
Планы по введению статуса проверенного участника Fedora (40 –9) |
| |
Проект Fedora рассматривает возможность введения статуса проверенного участника (Fedora Verified), который позволит выделить разработчиков, имеющих вклад в развитие проекта и заслуживающих определённых привилегий, таких как возможность участия в принятии решений. Основной причиной предлагаемых изменений является неопределённость в вопросе, кто может принимать участие голосованиях, проводимых в сообществе.
Получение статуса "Fedora Verified" даст возможность участвовать в голосовании при выборе управляющих советов и выдвигать свою кандидатуру на руководящие позиции, вовлечённые в принятие решений (Fedora Council, FESCo, Mindshare Committee, EPEL Steering Committee). Кроме того, проверенным участникам может предоставляться доступ к дополнительным ресурсам проекта и образовательным программам, например, проводимым в компании Red Hat обучающим курсам.
Для получения статуса "Fedora Verified" участник должен быть вовлечён в работу над проектом как минимум в течение двух циклов подготовки релизов Fedora Linux (6-12 месяцев), иметь значимый вклад (например, написание кода, сопровождение пакетов, подготовка документации, дизайн, исправление ошибок или оказание поддержки), заслужить положительную репутацию в сообществе и не совершать действий, не соответствующих кодексу поведения Fedora.
До 5 мая проект проводит опрос целесообразности введения особого статуса. В опросе рассматриваются такие темы, как метод подтверждения (рекомендации или специальный комитет), оценка разных видов вклада (одинаково ли оценивать написание кода и сопутствующие активности, такие как дизайн, проведение мероприятий, поддержка и активизм), требования к участнику и необходимость переподтверждения после 12 месяцев неактивности.
- Главная ссылка к новости
- OpenNews: Готовность платформы совместной разработки Fedora Forge
- OpenNews: Бета-тестирование Fedora Linux 44. Инициатива по продвижению инноваций в Fedora
- OpenNews: Перенос разработки Fedora с Pagure на платформу совместной разработки Forgejo
- OpenNews: Выпуск дистрибутива Fedora Linux 43
- OpenNews: В Fedora утверждены правила использования AI-инструментов при разработке
|
|
|
| |
|
|
| · | 22.04 |
Инициатива по удалению из ядра старых Ethernet-драйверов из-за ошибок, выявляемых через AI (293 +6) |
| |
Эндрю Ланн (Andrew Lunn), мэйнтейнер 9 подсистем, отвечающий за сетевые драйверы в ядре Linux, опубликовал набор патчей, удаляющих из ядра все драйверы для Ethernet-адаптеров с интерфейсами ISA и PCMCIA. Отмечается, что ранее старые драйверы не требовали особых усилий по сопровождению, но с появлением продвинутых AI-инструментов и систем fuzzing-тестирования, используемых новичками для выявления ошибок в ядре, нагрузка на сопровождающих увеличилась.
Эндрю не видит особого смысла в исправлении старых драйверов, которыми, вероятно, уже никто не пользуется, и предлагает удалить их из ядра. В представленном для рецензирования наборе патчей удалено 18 драйверов для Ethernet-устройств с интерфейсами ISA и PCMCIA, выпускавшихся до 2002 года. В случае одобрения Линуса Торвальдса удаление может быть произведено в ядре Linux 7.2, намеченном на середину августа.
Предложенные для удаления драйверы:
- 3com 3c509, 3c515, 3c574, 3c589 и 3c59x для серий 3Com EtherLinkIII, EtherLink XL "Corkscrew", "RoadRunner" и "Vortex".
- amd hplance, mvme147, 7990 lance и nmclan для HP300,
Motorola MVME147 SBC, AMD PCnet32 (AT1500, NE2100), Allied Telesis AT1500, HP J2405A, Alchemy Semi AU1X00.
- smsc smc9194 и smc91c92, использовались на ноутбуках DELL c док-станциями и в ethernet-картах Megahertz, Motorola, Ositech и Psion Dacom.
- cirrus cs89x0 и mac89x0 для карт с чипами Crystal Semiconductor (Cirrus Logic) CS89[02]0, которые, например, использовались в платах iMX21ADS, компьютерах Macintosh и интегрировались в CPU EP93xx.
- fujitsu fmvj18x для Ethernet-карт с чипами Fujitsu FMV-J18x.
- xircom xirc2ps для выпускавшихся в конце 1990-х 16-разрядных PCMCIA-карт Xircom.
- 8390 AX88190, pcnet, ultra и wd80x3 - для NE2000-совместимых Ethernet-карт на чипах Asix AX88190, NS8390, SMC Ultra, SMC EtherEZ, WD8003 и WD8013, таких как D-Link DE-650, Linksys EthernetCard, Accton EN2212, RPTI EP400, PreMax PE-200, Thomas
Conrad и Kingston KNE-PCM.
После публикации патчей к обсуждению подключилось несколько пользователей, которые заявили о наличии в своих инфраструктурах оборудования, использующего предложенные к удалению драйверы. Например, до сих пор используются Motorola MVME147, mac89x0 и 3com 3C905-B. Также упоминается, что удаляемые драйверы могут потребоваться для ретро-систем Alpha, SPARC, PA-RISC и 68000.
- Главная ссылка к новости
- OpenNews: Защита от мусорных AI-изменений на GitHub. Оценка влияния вайб-кодинга на экосистему открытого ПО
- OpenNews: Эксперимент по использованию AI для рецензирования изменений в DRM-подсистеме ядра Linux
- OpenNews: LLVM ввёл правила применения AI-инструментов. Curl и Node.js ограничат выплаты за уязвимости из-за AI
- OpenNews: Линус Торвальдс принял план передачи управления репозиторием ядра Linux в непредвиденных ситуациях
- OpenNews: Интервью с Грегом Кроа-Хартманом о созданных через AI отчётах об ошибках
|
|
|
| |
|
|
| · | 22.04 |
Уязвимости в Java SE, MySQL, VirtualBox и других продуктах Oracle (18 +8) |
| |
Компания Oracle опубликовала плановый выпуск обновлений своих продуктов (Critical Patch Update), нацеленный на устранение критических проблем и уязвимостей. В апрельском обновлении устранена 481 уязвимость.
Некоторые проблемы:
- 11 проблем с безопасностью в Java SE. 7 уязвимостей в Java SE могут быть эксплуатированы удалённо без проведения аутентификации и затрагивают окружения, допускающие выполнение не заслуживающего доверия кода. Три наиболее опасные проблемы в Java SE имеют уровень опасности 7.5 и затрагивают JavaFX (WebKitGTK), JAXP и сетевые функции. Уязвимости устранены в выпусках Java SE 26.0.1, 25.0.3, 21.0.11, 17.0.19, 11.0.31, 8u491. .
- 27 уязвимостей в сервере MySQL, из которых одна может быть эксплуатированы удалённо без прохождения аутенификации. Данной проблеме (CVE-2025-15467), которая вызвана переполнением буфера в библиотеке OpenSSL, присвоен критический уровень опасности (9.8).
Менее опасные уязвимости затрагивают оптимизатор, JSON-парсер, систему репликации, InnoDB, DML, GIS-индексы, механизм партицирования и обработчик схемы БД. Проблемы устранены в выпусках MySQL Community Server 9.7.0, 8.4.9 и 8.0.46.
- 9 уязвимостей в VirtualBox, пять из которых помечены как опасные (7.5 из 10).
Одна из уязвимостей может быть эксплуатирована удалённо по сети.
Детали о характере уязвимостей не раскрываются. Проблемы устранены в выпуске VirtualBox 7.2.8.
- Одна уязвимость в Solaris, которая затрагивает ядро и позволяет локально повысить свои привилегии (уровень опасности 6.5 из 10). Уязвимость устранена в обновлении Solaris 11.4 SRU92. В новой версии Solaris также обновлены версии пакетов с исправлением уязвимостей:
Django 5.2.12, 4.2.29, Firefox 140.8.0, Golang 1.25.8, Pillow 12.1.1,
Thunderbird 140.8.0, pypdf 6.9.0, pyasn1 0.6.2 и vim 9.1.2148.
- Главная ссылка к новости
- OpenNews: Уязвимости в Java SE, MySQL, VirtualBox и других продуктах Oracle
- OpenNews: Oracle опубликовал бесплатную редакцию Solaris 11.4.90 CBE
- OpenNews: Компания Oracle опубликовала ядро Unbreakable Enterprise Kernel 8.2
- OpenNews: Выпуск дистрибутива Oracle Linux 10.1
- OpenNews: Выпуск VirtualBox 7.2.8
|
|
|
| |
|
|
| · | 22.04 |
Выпуск VirtualBox 7.2.8 (30 +8) |
| |
Компания Oracle опубликовала корректирующий релиз системы виртуализации VirtualBox 7.2.8, в котором устранено 9 уязвимостей, подробности о которых пока не раскрываются. Указано только, что 5 наиболее серьёзных проблем имеют уровень опасности 7.5 из 10. Одна из уязвимостей может быть эксплуатирована удалённо по сети. Кроме уязвимостей в новой версии представлено 17 изменений:
- В дополнениях для хост-окружений с Linux добавлена начальная поддержка ядер Linux 6.19 и 7.0, а также реализован аккаунтинг процессорного времени, потраченного на выполнение гостевых систем (при мониторинге нагрузки на систему гостевые системы теперь отслеживаются отдельно, а не как время потраченное на выполнение ядра Linux).
- В дополнениях для гостевых систем с Linux объявлен устаревшим входящий в поставку модуль ядра vboxvideo при использовании ядер Linux 7.0 и новее (для старых ядер он продолжает поддерживаться). Вместо данного модуля на системах с ядром Linux 7.0 следует использовать виртуальный графический адаптер VMSVGA или модуль vboxvideo из основного состава ядра Linux.
- В дополнениях для гостевых систем решены проблемы с доступом к буферу обмена и вставки из буфера обмена при запуске гостевой системы с графическим окружением на базе Wayland на хост-системах с Windows. Также решена проблема с пропаданием последнего символа в тексте, при его копировании в Windows через буфер обмена из Linux c Wayland.
- В дополнениях для хост-окружений и гостевых систем с Linux добавлена поддержка пакетов с ядром UEK9 из Oracle Linux 9, решены проблемы с ядрами из RHEL 10.1 и 10.2. Улучшена работа команд "rcvboxdrv setup" и "rcvboxadd setup", а также ускорен процесс инсталляции.
- Устранено аварийное завершение, возникающее при использовании в ветке FreeBSD 16 нескольких устройств, подключённых к контроллеру LSI Logic SAS.
- В трансляторе адресов решена проблема, приводившая к невозможности доступа к внутреннему DNS-серверу.
- В графической подсистеме решена проблема с заморозкой формы курсора, который переставал изменяться в зависимости от контекста, в гостевых системах с Ubuntu 25.10 и Wayland.
- В дополнениях для гостевых систем c Windows решена проблема с аварийным завершением (BSOD), приводившем к выводу ошибки DRIVER_OVERRAN_STACK_BUFFER.
- В компонентах UEFI исправлены ошибки, связанные с обновлением сертификата для UEFI Secure Boot и загрузкой гостевых систем с Windows 11.
- Главная ссылка к новости
- OpenNews: В VirtualBox добавлена предварительная поддержка работы поверх гипервизора KVM
- OpenNews: Выпуск VirtualBox 7.2.6
- OpenNews: Релиз системы виртуализации VirtualBox 7.2
- OpenNews: Релиз Multipass 1.16, инструментария для развёртывания Ubuntu в виртуальных машинах
- OpenNews: Выпуск гипервизора Xen 4.21
|
|
|
| |
|
|
| · | 21.04 |
Выпуск Apache Cloudberry 2.1.0, открытой альтернативы СУБД Greenplum (8 +7) |
| |
Представлен выпуск распределённой СУБД Apache Cloudberry 2.1.0, продолжающей развитие открытой кодовой базы СУБД Greenplum, которая была превращена компанией Broadcom в закрытый продукт после приобретения VMware. Проект пока находится в инкубаторе Apache и будет переведён в число первичных проектов Apache после готовности инфраструктуры и сопровождающих.
СУБД Cloudberry представляет собой распределённую редакцию открытой СУБД PostgreSQL, оптимизированную для выполнения аналитических запросов над большими массивами данных (Data Warehouse). Для параллельной обработки данных применяется массово-параллельная архитектура (MPP, massively parallel processing), обеспечивающая масштабируемость хранилища до петабайтных размеров за счёт разделения данных на сегменты и задействования для их хранения и обработки кластера из группы серверов.
Среди улучшений в Apache Cloudberry 2.1.0:
- Реализован протокол UDP2 для взаимодействия между узлами, позволивший повысить эффективность распределённого выполнения запросов.
- Добавлена поддержка MCP-сервера (Model Context Protocol) для упрощения интеграции с инструментами на базе больших языковых моделей.
- Добавлена возможность применения алгоритма LZ4 для сжатия столбцов таблиц с целью сокращения ввода/вывода и снижения потребления памяти.
- Улучшена работа оптимизатора ORCA.
- Скрипт greenplum_path.sh, используемый для настройки окружения пользователя СУБД, заменён на cloudberry-env.sh.
- Инструментарий для резервного копирования переименован в cloudberry-backup. В основной репозиторий включён плагин для хранилищ на базе протокола S3.
- Главная ссылка к новости
- OpenNews: Выпуск Apache Cloudberry 2.0.0, открытой альтернативы СУБД Greenplum
- OpenNews: Broadcom перевёл в архив репозиторий СУБД Greenplum. В Arenadata создали форк
- OpenNews: Проект Cloudberry, развивающий форк СУБД Greenplum, принят в инкубатор Apache
- OpenNews: Корпорация EMC займется продвижением решений на базе PostgreSQL
|
|
|
| |
|
|
| · | 21.04 |
Выпуск NTFS-3G 2026.2.25 (67 +21) |
| |
После шести с половиной лет разработки опубликован релиз пакета NTFS-3G 2026.2.25, включающего свободный драйвер, работающий в пространстве пользователя с использованием механизма FUSE, и комплект утилит ntfsprogs для манипуляций с разделами NTFS. Код проекта распространяется под лицензией GPLv2.
Драйвер поддерживает чтение и запись данных в NTFS-разделах и может работать в широком спектре операционных систем, поддерживающих FUSE, в том числе в Linux, Android, macOS, FreeBSD, NetBSD, OpenBSD, Solaris, QNX и Haiku. Предоставляемая драйвером реализация файловой системы NTFS полностью совместима с операционными системами Windows XP, Windows Server 2003, Windows 2000, Windows Vista, Windows Server 2008, Windows 7/8/10/11. Набор утилит ntfsprogs позволяет выполнять такие операции, как создание NTFS-разделов, проверка целостности, клонирование, изменение размера и восстановление удалённых файлов. Общие компоненты для работы c NTFS, используемые в драйвере и утилитах, вынесены в отдельную библиотеку.
В новой версии в основном собраны накопившиеся за последние годы исправления ошибок. В утилите ntfsclone разрешено изменение размера загрузочного сектора NTFS при восстановлении образов. Из числа зависимостей исключена библиотека libdl при сборке без внешних плагинов. В утилите ntfsinfo реализован вывод информации о состоянии лога при сохранении дампа с метаданными.
Устранена уязвимость (CVE-2026-40706), вызванная переполнением буфера в функции ntfs_build_permissions_posix(). Уязвимость проявляется при включённой поддержке POSIX ACL и потенциально может привести к выполнению кода с правами root при обработке специально оформленных разделов или дисковых образов с ФС NTFS. Кроме того, в списке изменений присутствует несколько исправлений, явно не помеченных как уязвимости, но потенциально являющихся проблемами с безопасностью - несколько ошибок, приводящих к обращению к освобождённой области памяти, переполнение буфера при формировании имени резервной копии.
- Главная ссылка к новости
- OpenNews: Уязвимость в драйвере NTFS-3G, потенциально позволяющая выполнить код с правами root
- OpenNews: Уязвимости в драйвере NTFS-3G, позволяющие получить root-доступ в системе
- OpenNews: Выпуск NTFS-3G 2021.8.22 с устранением уязвимостей
- OpenNews: Из ядра Linux 6.9 удалён старый драйвер NTFS
- OpenNews: В состав ядра Linux 7.1 принят новый драйвер для NTFS
|
|
|
| |
|
|
| · | 21.04 |
Релиз Firefox 150 с устранением 359 уязвимостей (209 +58) |
| |
Состоялся релиз web-браузера Firefox 150 и сформированы обновления прошлых веток с длительным сроком поддержки - 140.10.0 и 115.35.0. На стадию бета-тестирования в ближайшие часы будет переведена ветка Firefox 151, релиз которой намечен на 19 мая.
Основные новшества в Firefox 150 (1, 2, 3):
- Устранено 359 уязвимостей (56 уязвимостей собрано под CVE-2026-6784, 155 под CVE-2026-6785, 110 под CVE-2026-6786, а остальные под отдельными CVE). 345 уязвимостей вызваны проблемами работы с памятью, такими как переполнения буферов и обращение к уже освобождённым областям памяти. Потенциально данные проблемы способны привести к выполнению кода злоумышленника при открытии специально оформленных страниц. Большая часть проблем выявлена при проверке (1, 2, 3) кода AI-моделями. Дополнение: 271 уязвимость выявлена в ходе проверки кода AI-моделью Claude Mythos.
- В контекстное меню, показываемое при клике правой кнопкой мыши на ссылке, добавлена кнопка для быстрого открытия содержимого ссылки в режиме Split View, позволяющем в одном окне бок о бок просмотреть содержимое двух вкладок. После вызова режима Split View из контекстного меню вкладки добавлена возможность выбора второй вкладки через поиск по открытым вкладкам. В контекстное меню вкладки также добавлена кнопка "Reverse Tabs", позволяющая поменять местами вкладки в левом и правом блоке Split View.
- Предложена служебная страница about:translations, предоставляющая отдельный интерфейс для перевода текста с одного языка на другой. Перевод осуществляется в режиме реального времени по мере набора.
Для быстрого перехода на данную страницу можно использовать подсказку, появляющуюся при начале набора слова "translate" в адресной строке.
- На платформе Linux задействован штатный интерфейс выбора Emoji, предоставляемый библиотекой GTK. Интерфейс вызывается при двойном нажатии Ctrl+"." в формах ввода текста.
- Обеспечено формирование rpm-пакетов для Red Hat Enterprise Linux, Fedora, openSUSE и других дистрибутивов, использующих пакетный менеджер RPM.
- Предоставлена возможность передачи через буфер обмена информации сразу о нескольких вкладках: если выделить в панели несколько вкладок и выбрать в контекстном меню "Share → Copy X links", то в буфер обмена будут помещены заголовки и URL выделенных вкладок.
- Во встроенный PDF-просмотрщик добавлены функции для изменения порядка, копирования, вставки, удаления и экспорта страниц из PDF-документа.
- Для всех пользователей включено применение спецификации LNA (Local Network Access) для ограничения обращений к локальной системе (loopback, 127.0.0.0/8) или внутренней сети (192.168.0.0/16, 10.0.0.0/8 и т.п.) при взаимодействии с публичными сайтами. Для обращения к внутренним ресурсам пользователь должен предоставить web-приложению специальные полномочия, так как подобная активность используются злоумышленниками для осуществления CSRF-атак на маршрутизаторы, точки доступа, принтеры, корпоративные web-интерфейсы и другие устройства и сервисы, принимающие запросы только из локальной сети. Кроме того, сканирование внутренних ресурсов может использоваться для косвенной идентификации или сбору сведений о локальной сети. Ранее подобная защита действовала только при включении режима усиленной защиты от отслеживания перемещений (ETP, Enhanced Tracking Protection => Strict).
- В сборках для Windows реализована новая система управления профилями, возможность сохранения профиля в файл и поддержка использования Firefox для обособленных web-приложений.
- В настройки добавлена опция (Settings > Tabs > Drag tabs), позволяющая отключить создания групп вкладок при перетаскивании мыши одной вкладки на другую для тех кто предпочитает управлять группировкой только через контекстне меню.
- Интегрированный бесплатный VPN-сервис Firefox VPN теперь доступен пользователям из Канады, помимо пользователей США, Франции, Германии и Великобритании. Сервис позволяет обращаться к сайтам не напрямую, а через промежуточные прокси-серверы в разных странах, скрывающие IP-адрес пользователя. Имеется возможность включать VPN только для выбранных сайтов. Для активации VPN необходима регистрация учётной записи в Mozilla. В VPN-сервисе действует ограничение в 50 гигабайт трафика в месяц.
- В инструментах для web-разработчиков в панель CSS добавлена отдельная секция с псевдоклассами, специфичными для элементов, такими как псевдокласс ":open", применяемый для раскрываемых элементов типа <dialog>, и ":visited" - применяемый для элементов <a> и <area>.
В панели для отслеживания сетевой активности реализована индикация защищённых соединений, установленных с использованием сертификатов, выданных удостоверяющими центрами, отсутствующими в базе корневых сертификатов Mozilla.
- Реализован API ariaNotify, позволяющий в web-приложениях для людей с проблемами со зрением выводить уведомления через экранный ридер.
- Реализована поддержка псевдо-классов ":playing", ":paused", ":buffering", ":muted", ":paused", ":playing", ":seeking", ":stalled" и ":volume-locked" для изменения стиля элементов audio и video в зависимости от состояния воспроизведения.
- Добавлен метод highlightsFromPoint(), возвращающий для указанной позиции на странице массив объектов HighlightHitResult с информацией о содержимом, выделенном при помощи CSS Custom Highlight API.
- В CSS добавлена поддержка применения функции light-dark() к изображениям для адаптации к настройкам светлого или тёмного режима. В функции можно указать два изображения, которые будут выбраны в зависимости от светлого или тёмного режима.
light-dark(
url("light-icon.png"),
url("dark-icon.png")
);
- В CSS-функции color-mix() появилась поддержка смешивания произвольного числа значений цветов (ранее допускалось только смешивание двух цветов).
color-mix(in oklab, teal 20%, olive 30%, blue 50%)
- Для изображений, загружаемых по мере прокрутки страницы ("loading=lazy"), варианты которых определены через свойство "srcset", реализована поддержка атрибута "sizes=auto". Данное значение позволяет браузеру автоматически выбирать подходящее изображение из набора "srcset" в зависимости от ширины доступной для элемента "img" области.
- В версии Firefox для Android проведена работа по
повышению стабильности, плавности и отзывчивости при навигации.
- Главная ссылка к новости
- OpenNews: Релиз Firefox 149 с VPN и режимом разделения экрана
- OpenNews: До 10% аварийных завершений Firefox вызваны аппаратными проблемами с памятью
- OpenNews: Макеты обновлённого интерфейса Firefox, развиваемого под кодовым именем Nova
- OpenNews: Anthropic анонсировал AI-модель Claude Mythos, умеющую создавать рабочие эксплоиты
- OpenNews: GNOME и Firefox намерены отключить по умолчанию вставку средней кнопкой мыши
|
|
|
| |
|
|
| · | 21.04 |
Выпуск системы управления исходными текстами Git 2.54 (122 +13) |
| |
Представлен релиз распределенной системы управления исходными текстами Git 2.54. Git отличается высокой производительностью и предоставляет средства нелинейной разработки, базирующиеся на ответвлении и слиянии веток. Для обеспечения целостности истории и устойчивости к изменениям "задним числом" используются неявное хеширование всей предыдущей истории в каждом коммите, а также удостоверение цифровыми подписями разработчиков отдельных тегов и коммитов. Код Git распространяется под лицензией GPLv2+.
По сравнению с прошлым выпуском в новую версию принято 770 изменений, подготовленных при участии 137 разработчиков (66 впервые приняли участие в разработке Git). Основные новшества:
- Реализована команда "git history", предоставляющая экспериментальные возможности для перезаписи истории изменений, более простые и безопасные в использовании, чем перебазирование коммитов командой "git rebase". Предоставляются две операции:
- "git history reword <commit>" для перезаписи сообщения в указанном коммите без изменения рабочего дерева и индекса (кроме примечания, остальное остаётся нетронутым). Например, для исправления опечатки.
- "git history split <commit>" для интерактивного разделения указанного коммита на два разных коммита с перемещением выбранных частей из исходного коммита в дополнительный коммит.
В будущих выпусках ожидается добавление дополнительных команд:
"git history fixup" для исправления коммита, "git history drop" для удаления коммита, "git history reorder" для изменения порядка следования коммитов и "git history squash" для объединения коммитов.
- Реализован новый метод определения обработчиков (hook) в файлах конфигурации. Вместо размещения скриптов с обработчиками в каталоге ".git/hooks" в каждом репозитории, команды для вызова обработчиков теперь можно задавать непосредственно в файлах конфигурации. Настройки можно привязывать к репозиторию или указывать в файлах конфигурации, действующих для всех репозиториев (/etc/gitconfig) или репозиториев пользователя (~/.gitconfig). Возможна привязка нескольких обработчиков к одному событию. Скрипты из ".git/hooks" по-прежнему продолжают вызываться, но запускаются после обработчиков из файлов кофигурации. Для просмотра списка обработчиков следует использовать команду "git hook list", а для выборочного отключения вызова обработчиков - настройку "hook.<name>.enabled = false".
[hook "linter"]
event = pre-commit
command = ~/bin/linter --cpp20
[hook "no-leaks"]
event = pre-commit
command = ~/bin/leak-detector
$ git hook list pre-commit
global linter ~/bin/linter --cpp20
local no-leaks ~/bin/leak-detector
- В команде "git maintenance" по умолчанию задействована стратегия "geometric" ("git config set maintenance.strategy geometric"), позволяющая сократить время обслуживания крупных монорепозиториев. По сравнению с ранее применяемой стратегией, использующей логику как в команде "git gc", новая стратегия избегает переупаковки всех объектов и исключает излишне ресурсоёмкие операции, такие как слияние всех pack-файлов (по возможности объединение производится частями и без чистки удалённых объектов).
- База данных объектов (ODB) и связанные с ней API переведены на новую архитектуру, основанную на использовании подключаемых бэкендов. Проведённая реструктуризация абстрагирует формат хранения объектов и
в дальнейшем позволит реализовать такие возможности, как альтернативные бэкенды и форматы объектов, например, для более эффективного хранения крупных бинарных файлов или для оптимизации работы крупных git-хостингов.
- В команде "git repo structure", выводящей сведения о структуре репозитория, обеспечено отображение не только общего размера, но и показа самых крупных объектов каждого типа, что позволяет обойтись при оценке размера без использования сторонней утилиты git-sizer.
$ git repo structure
...
| * Largest objects | |
| * Commits | |
| * Maximum size [1] | 17.23 KiB |
| * Maximum parents [2] | 10 |
| * Trees | |
| * Maximum size [3] | 58.85 KiB |
| * Maximum entries [4] | 1.18 k |
| * Blobs | |
| * Maximum size [5] | 1019.51 KiB |
| * Tags | |
| * Maximum size [6] | 7.13 KiB |
- В команде "git replay", применяемой вместо "git rebase" для воссоздания истории на сервере без рабочего дерева, включено по умолчанию атомарное обновление ссылок (вместо вывода списка команд update-ref для ручного выполнения), реализована опция "--revert" для отмены изменений от серии коммитов, обеспечено отбрасывание результирующих пустых коммитов и появилась возможность воссоздания истории вплоть до корневого коммита.
- В "git rev-list" и похожие команды добавлена опция "--maximal-only" для показа только коммитов, недостижимых другими коммитами.
- В команду "git repo info" добавлена опция "--keys" для вывода списка всех известных ключей.
- В команде "git add -p" при навигации между блоками кода при помощи клавиш "J" и "K" обеспечена пометка уже одобренных и пропущенных блоков.
Добавлена опция "--no-auto-advance" для отключения автоматического перехода к следующему файлу, чтобы иметь возможность вернуться к прошлым файлам перед коммитом.
- Проведена оптимизация web-интерфейса "gitweb" для работы с мобильных устройств.
- В команде "git apply --directory" перед использованием обеспечена нормализация файловых путей, таких как "./un/../normalized/path".
- Документирована возможность добавления собственных подкоманд через размещение файлов "git-<cmd>" в каталоге с исполняемыми файлами.
- В команду "git send-email" добавлена поддержка клиентских сертификатов.
- Для команды "git status" реализована настройка "status.compareBranches", через которую можно указать ветки, с которыми будет производиться сравнение текущей ветки.
[status]
compareBranches = @{upstream} @{push}
- В "git rebase" добавлена опция "--trailer" для упрощения добавления метаданных ко всем коммитам.
git rebase --trailer "Reviewed-by: Test <test@example.com>"
- В команду "git fast-import" добавлена возможность замены подписей для коммитов, которые стали невалидны после импорта.
- Добавлена поддержка упаковки (compaction) многопакетных индексов MIDX (multi-pack index), при которой между собой объединяются мелкие слои MIDX-индекса c информацией о доступности объектов и связанные с ними bitmap-файлы, что позволяет уменьшить число накопившихся слоёв в давно существующих репозиториях.
- В команде "git backfill" реализована возможность указания ревизий (диапазонов коммитов) и масок путей (pathspec) для ограничения загружаемых частей истории изменений.
git backfill main~100..main
git backfill -- '*.c'
- Добавлены альтернативные формы вызова команды "git config list" - "git config -l" и "git config --list".
- Разрешено использование не-ASCII символов в именах псевдонимов команд, задаваемых в файле конфигурации.
[alias "получить"]
command = fetch
- Изменено отображение подписей, у которых истёк срок действия GPG-ключей, но которые были валидны на момент подписания коммита. Подобные подписи теперь отображаются как корректные с примечанием об устаревании ключа (ранее они подсвечивались красным цветом, что создавало впечатление об их некорректности).
- При обращении к репозиториям по HTTP обеспечена обработка ошибки с кодом 429 (Too Many Requests). Завершившиеся подобной ошибкой запросы теперь рассматриваются не как фатальная проблема, а как временная ошибка, для которой через какое-время следует повторить операцию. Задержка перед повтором задаётся через опцию "http.retryAfter", число повторов - "http.maxRetries", время ожидания - "http.maxRetryTime".
- Главная ссылка к новости
- OpenNews: Выпуск системы управления исходными текстами Git 2.53
- OpenNews: Утечка в Git-репозитории конфиденциальных данных, накопленных AI-ассистентами
- OpenNews: В Git 3.0 предложено сделать Rust обязательной частью сборочной инфраструктуры
- OpenNews: Уязвимости в Git, допускающие выполнение кода при обращении к внешнему репозиторию
- OpenNews: Доступна децентрализованная система отслеживания ошибок git-bug 0.9
|
|
|
| |
|
|
| · | 20.04 |
SDL запретил приём кода от AI. Созданы форки Vim, избавленные от AI-изменений (206 +51) |
| |
Разработчики библиотеки SDL (Simple DirectMedia Layer) приняли правила, запрещающие приём изменений, содержащих код, сгенерированный большими языковыми моделями, такими как ChatGPT, Claude, Copilot и Grok. При этом разрешено использование AI для выявления проблем и анализа передаваемых изменений, но исправления подобных проблем должны создаваться людьми.
Судя по полученному проектом опыту, выявленные при помощи AI проблемы часто оказываются галлюцинациями, на практике не являющимися реальными проблемами или содержащими некорректную информацию. Разработчики, передающие сведения о проблемах, выявленных при помощи AI, должны хорошо разбираться в заявляемой проблеме и собственноручно убедиться в её существовании. При отправке pull-запросов разработчик должен подтвердить, что он является автором кода и передаёт результат своего труда под лицензией Zlib.
В качестве причин запрета разработки с использованием AI называется несовместимость создаваемого через AI кода с лицензией Zlib из-за невозможности точно определить источник кода, а также возможные лицензионные конфликты из-за косвенного заимствования кода из проектов под другими лицензиями (так как большая языковая модель обучена на коде под различными лицензиями, генерируемый код потенциально может трактоваться как производная работа).
Дополнительно можно упомянуть создание двух форков текстового редактора Vim, созданных из-за недовольства участившегося применения AI при подготовке изменений:
- Vim Classic - форк кодовой базы Vim 8.2, продолжающий сопровождение прошлой ветки. Проект основал Дрю ДеВолт (Drew DeVault), автор пользовательского окружения Sway, почтового клиента Aerc, языка программирования Hare и платформы совместной разработки SourceHut. В качестве причин создания форка указано непринятие политики Vim в отношении использования AI, желание сохранить чистую совесть и продолжить получать удовольствие от работы с Vim.
- EVi - форк ветки Vim 9.1.0, в которой ещё не принимались изменения, созданные при помощи AI.
- Главная ссылка к новости
- OpenNews: Релиз мультимедийной библиотеки SDL 3.4.0
- OpenNews: Проект Gentoo запретил принятие изменений, подготовленных при помощи AI-инструментов
- OpenNews: В NetBSD введён запрет на использование кода, сгенерированного AI-системами
- OpenNews: Выпуск Cloud Hypervisor 48.0 с запретом принятия кода, сгенерированного AI
- OpenNews: Проект GNOME запретил использование AI для генерации дополнений к GNOME Shell
|
|
|
| |
|
|
| · | 20.04 |
В Arch Linux обеспечена воспроизводимая сборка образов контейнеров (20 +19) |
| |
Дистрибутив Arch Linux обеспечил воспроизводимую сборку образов контейнеров, позволяющую убедиться, что поставляемые в образе бинарные файлы собраны из предоставляемого исходного кода и не содержат скрытых изменений. Воспроизводимые образы Arch Linux размещены в Docker Hub с тегом repro. Любой желающий может собрать из исходного кода образ контейнера бит в бит совпадающий с распространяемыми проектом готовыми образами, и убедиться, что сборочная инфраструктура дистрибутива, компилятор и сборочный инструментарий не скомпрометированы.
При формировании воспроизводимых сборок учитываются такие нюансы, как точное соответствие зависимостей; использование неизменного состава и версий сборочного инструментария; идентичный набор опций и настроек по умолчанию; сохранение порядка сборки файлов (применение тех же методов сортировки); отключение добавления компилятором непостоянной служебной информации, такой как случайные значения, ссылки на файловые пути и данные о дате и времени сборки. На воспроизводимость сборок также влияют ошибки и состояния гонки в инструментарии.
Воспроизводимые образы поставляются отдельно так как для обеспечения полной воспроизводимости в их состав не включены ключи для пакетного менеджера pacman. При необходимости обновления или установки пакетов через pacman в данных образах требуется запуск команды для пересоздания хранилища ключей ("pacman-key --init && pacman-key --populate archlinux"). Для проверки идентичности собственной сборки с распространяемым через Docker Hub образом можно сравнить хэши, выдаваемые командой "podman inspect --format '{{.Digest}}' <image>", или воспользоваться утилитой diffoci.
- Главная ссылка к новости
- OpenNews: Во FreeBSD обеспечена поддержка воспроизводимых сборок и сборки без прав root
- OpenNews: В NetBSD обеспечена поддержка повторяемых сборок
- OpenNews: В NixOS обеспечена поддержка повторяемых сборок для iso-образа
- OpenNews: openSUSE тестирует поддержку повторяемых сборок
- OpenNews: В Live-образах Debian 12 реализована поддержка повторяемых сборок
|
|
|
| |
|
|
| · | 20.04 |
Опубликована среда рабочего стола LXQt 2.4.0 (170 +32) |
| |
После 6 месяцев разработки представлен релиз среды рабочего стола LXQt 2.4.0 (Qt Lightweight Desktop Environment), продолжающей развитие проектов LXDE и Razor-qt. Интерфейс LXQt следует идеям классической организации рабочего стола, но привносит современное оформление и приёмы, увеличивающие удобство работы. LXQt позиционируется как легковесное, модульное, быстрое и удобное окружение, вобравшее лучшие черты LXDE и Razor-qt. Код размещён на GitHub и поставляется под лицензиями GPL 2.0+ и LGPL 2.1+. Появление готовых сборок ожидается для Ubuntu (LXQt по умолчанию предлагается в Lubuntu), Arch Linux, Fedora, openSUSE, Mageia, FreeBSD, ROSA и ALT Linux.
В новой версии:
- В диалоге сохранения файлов в поле "Имя файла" теперь выделяется не всё содержимое, а только имя файла без расширения, что позволяет сразу изменить имя без перемещения курсора или перевыделения области.
- В конфигурациях на базе Wayland обеспечено применение и сохранение настроек скрытия элементов на рабочем столе ("Hide Desktop Items") по отдельности для каждого монитора.
- В LXQt-Powermanagement реализованы раздельные таймауты перевода монитора в спящий режим для автономной работы и для работы от стационарного источника энергии.
- Переделан панельный плагин изменения громкости, в котором вертикальные ползунки заменены на горизонтальные и показаны все доступные устройства вывода звука. Добавлена поддержка изменения громкости устройства по умолчанию при помощи колеса мыши или прокрутки тачпадом.
- В LXQt Sessions разделены настройки сеансов на баз X11 и Wayland. Настройки Wayland показываются только при установке пакета lxqt-wayland-session.
- В сеансах на базе Wayland реализована возможность вызова главного меню комбинацией клавиш, привязанной в настройках к выполнению команды "lxqt-qdbus openmenu".
- В LXQt Runner для запуска встроенного калькулятора теперь достаточно начать ввод с цифры, а не только со знака "=".
- В режиме "не беспокоить" прекращено сохранение в истории временных уведомлений, таких как информация о начале воспроизведения следующей музыкальной композиции.
- В бэкенд xdg-desktop-portal-lxqt, реализующий порталы Freedesktop, добавлен новый портал org.freedesktop.impl.portal.Access для запроса подтверждения доступа к системным ресурсам, например, обращения к микрофону или камере.
- В эмуляторе терминала QTerminal обеспечено выделение всех совпадений при поиске и улучшена подсветка кода.
- Добавлена переменная окружения XDG_STATE_HOME, определяющая путь к каталогу для файлов с состоянием (.local/state).
- Главная ссылка к новости
- OpenNews: Опубликована среда рабочего стола LXQt 2.3.0
- OpenNews: Доступна среда рабочего стола LXQt 2.0.0
- OpenNews: Опубликован план перевода LXQt на Qt6 и Wayland
|
|
|
| |
|
|
| · | 20.04 |
Выпуск Bcachefs 1.38.0. Дистрибутив NASty для развёртывания NAS на базе Bcachefs (96 +15) |
| |
Кент Оверстрит (Kent Overstreet) опубликовал выпуск файловой системы Bcachefs 1.38.0. Выпуск охватывает два пакета: bcachefs-kernel-dkms с модулем ядра, собираемым при помощи системы DKMS (Dynamic Kernel Module Support), и bcachefs-tools с запускаемой в пространстве пользователя утилитой bcachefs, реализующей команды для создания (mkfs), монтирования, восстановления и проверки ФС. Пакеты собраны для Debian, Ubuntu и ожидаются для Arch Linux, Fedora, openSUSE и NixOS. DKMS-модуль поддерживает работу с ядрами Linux, начиная с 6.16.
Проектом Bcachefs развивается файловая система, нацеленная на сочетание расширенной функциональности, свойственной Btrfs и ZFS, и уровня производительности, надёжности и масштабируемости, характерного для XFS. Bcachefs поддерживает такие возможности, как включение в раздел нескольких устройств, многослойные раскладки накопителей (нижний слой с часто используемыми данными на базе быстрых SSD, а верхний слой с менее востребованными данными из жестких дисков), репликация (RAID 1/10), кэширование, прозрачное сжатие данных (режимы LZ4, gzip и ZSTD), срезы состояния (снапшоты), верификация целостности по контрольным суммам, коды коррекции ошибок, хранение информации в зашифрованном виде (используются ChaCha20 и Poly1305).
В новой версии:
- Btree-структура need_discard, применяемая для отслеживания освобождаемых наборов блоков, переведена на индексирование по порядковому номеру из журнала вместо пары устройство/набор блоков (device/bucket). Изменение позволило ускорить работу со структурой need_discard и исключить возникновение взаимной блокировки при восстановлении из журнала во время монтирования ФС с недостаточным числом свободных блоков под метаданные.
- Операции записи в журнал вынесены в отдельную fifo-очередь, а максимальное число одновременно производимых операций записи в журнал увеличено с 16 до 256, что позволило ускорить работу больших хранилищ с интенсивной нагрузкой на запись.
- Значительно ускорено монтирование ФС с большим числом снапшотов.
Дополнительно можно отметить выпуск проекта NASty 0.0.3, развивающего дистрибутив для создания сетевых хранилищ (NAS) на основе типового оборудования. Дистрибутив построен на пакетной базе NixOS, использует файловую систему Bcachefs и поддерживает предоставление доступа к файлам через NFS и SMB, а также экспорт блочных устройств через iSCSI и NVMe-oF. Управление осуществляется через web-интерфейс. Размер установочного iso-образа 1.9 ГБ. Наработки проекта распространяются под лицензией GPLv3. Web-интерфейс написан на TypeScript с задействованием фреймворка SvelteKit. Движок для управления хранилищем и системой написан на языке Rust.
Обновления загружаются и устанавливаются автоматически. Система обновляется атомарно с возможностью отката на прошлое состояние при выявлении проблем в новой версии. В web-интерфейсе доступны возможности для управления файловыми системами, снапшотами, подразделами, дисками, виртуальными машинами и совместным доступом. Имеются встроенные в web-интерфейс файловый менеджер и эмулятор терминала, работающие в браузере. Возможно создание правил для выполнения действий и оповещении администратора в случае излишнего потребления дискового пространства, сбоях в работе накопителей и перегреве.
Поддерживается запуск изолированных окружений и приложений, используя виртуализацию на базе QEMU/KVM и контейнерную изоляцию при помощи k3s runtime (из WebUI напрямую можно установить Helm chart-ы для запуска приложений в контейнерах и настройки проброса доступа через nginx ingress). Поддерживается интеграция с платформой Kubernetes, для которой предоставляется драйвер CSI для динамического выделения места в хранилище. Дистрибутив по умолчанию отправляет телеметрию с анонимизированными данными о числе накопителей и размере хранилища (телеметрия отключается в секции "Settings → Telemetry").
В качестве причин выбора Bcachefs вместо ZFS отмечается активная разработка, поставка под лицензией GPL, простая модель работы с ФС, подразделами и снапшотами (без усложнённых концепций, типа dataset-ов, zvol и вложенных pool-ов) и наличие продвинутых возможностей, таких как автоматическое перемещение редко используемых данных на медленные накопители, коды коррекции ошибок и восстановление повреждений без остановки работы с ФС.
Из изменений в версии NASty 0.0.3 выделяется:
- переход на использование механизма nix flake для упаковки и управления зависимостями;
- поддержка VPN Tailscale для проброса NVMe-oF поверх VPN;
- интеграция k3s runtime; добавление NUT (Network UPS Tools) для мониторинга устройств бесперебойного питания;
- web-панель для тонкой настройки NFS, SMB и iSCSI (включая опции для выбора планировщика ввода/вывода, журналирования и резервирования метаданных);
- дополнительные настройки для Bcachefs (управление кодами коррекции ошибок, выбор алгоритма контрольных сумм, online-ребалансировки и т.п.);
- поддержка кэша Cachix для ускорения доставки обновлений;
- возможность генерации TLS-сертификатов через Let's Encrypt;
- включение в состав утилит iotop-c, btop, fwupd, rsync и croc.
- Главная ссылка к новости
- OpenNews: Выпуск файловой системы Bcachefs 1.37.0
- OpenNews: Разработчик ФС Bcachefs запустил AI-бота, ведущего блог и помогающего в разработке
- OpenNews: Код Bcachefs удалён из ядра Linux. Для дистрибутивов подготовлены DKMS-модули c Bcachefs
- OpenNews: Bcachefs будет распространяться в виде отдельного модуля DKMS
- OpenNews: Код Bcachefs принят в основной состав ядра Linux 6.7
|
|
|
| |
|
|
| Следующая страница (раньше) >> |