Новости Linux

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Сопровождение драйверов для устаревших GPU AMD и Intel в Linux оказалось лучше, чем в Windows
02.05.2019 09:25


В значительном выпуске системы 3D-моделирования Blender 2.80, который ожидается в июле, разработчики расчитывали обеспечить работу с GPU, выпущенными за последние 10 лет и имеющими рабочие драйверы OpenGL 3.3. Но в ходе подготовки нового выпуска выяснилось, что во многих OpenGL-драйверах для старых GPU имеются критические ошибки, которые не позволили обеспечить качественную поддержку всего запланированного оборудования. Отмечается, что в Linux ситуация не так критична как в Windows, так как старые драйверы в Linux продолжают обновляться, а пропритеарные драйверы в Windows остаются без сопровождения.

В частности, для Windows не удаётся добиться корректной поддержки графических чипов AMD, выпущенных за последние 10 лет, так как для старых GPU AMD всплывают проблемы при использовании движка рендеринга Eevee из-за ошибок в драйвере Terascale, который не обновлялся уже три года. Поэтому в Windows удалось официально предоставить поддержку только GPU AMD на базе архитектуры GCN 1 (HD 7000) и более новых.

Отдельные проблемы также возникают при использовании старых GPU Intel, поэтому в Blender 2.80 удалось гарантировать беспроблемную работу GPU только начиная с семейства Haswell, так как Windows-драйверы Intel для старых чипов также не обновлялись уже около 3 лет и ошибки остаются неисправленными. В Linux с драйверами для старых GPU Intel проблем не возникает, так как они продолжают обновляться. Проблем нет также с GPU NVIDIA благодаря продолжению поддержки ветки драйверов NVIDIA для устаревших устройств для всех заявленных платформ.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Релиз дистрибутива ClearOS 7.6
05.05.2019 18:53


Состоялся релиз Linux-дистрибутива ClearOS 7.6, построенного на пакетной базе CentOS и Red Hat Enterprise Linux 7.6. Дистрибутив ориентирован для применения в качестве серверной ОС в небольших и средних организациях, в том числе для связывания удалённых офисов в единую сетевую инфраструктуру. Для загрузки доступны установочные образы размером 1.1 Гб и 552 Мб, собранные для архитектуры x86_64.

В состав ClearOS входят средства для защиты локальной сети, отслеживания внешних угроз, фильтрации web-контента и спама, организации обмена сообщениями и файлами, развёртывания сервера централизованной авторизации и аутентификации на базе LDAP, использования в качестве контроллера домена для Windows ПК, поддержанием сервисов для электронной почты. При применении для создания сетевого шлюза поддерживаются сервисы DNS, NAT, прокси, OpenVPN, PPTP, управления пропускной способностью и организации доступа в интернет через нескольких провайдеров. Настройка всех аспектов работы дистрибутива и управление пакетами производится через специально созданный web-интерфейс.

В новом выпуске, кроме изменений заимствованных из RHEL 7.6, представлена поддержка библиотек аннотаций для хранения дополнительных метаданных на стороне IMAP-сервера, в том числе аннотаций, поддерживаемых в Cyrus IMAP. Также в состав включены средства для управления и диагностики серверами через iLO 5 и AMIBIOS (для HPE MicroServer Gen10). В состав бизнес-редакции интегрирована платформа для создания облачных хранилищ NextCloud.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Релиз ядра Linux 5.1
06.05.2019 08:48


После двух месяцев разработки Линус Торвальдс представил релиз ядра Linux 5.1. Среди наиболее заметных изменений: новый интерфейс для асинхронного ввода/вывода io_uring, возможность использования NVDIMM в качестве ОЗУ, поддержка в Nouveau разделяемой виртуальной памяти, поддержка масштабируемого мониторинга очень больших ФС через fanotify, возможность настройки уровней сжатия Zstd в Btrfs, новый обработчик cpuidle TEO, реализация системных вызовов для решения проблемы 2038 года, возможность загрузки с устройств device-mapper без initramfs, LSM-модуль SafeSetID, поддержка комбинированных live-патчей.

Основные новшества:

Дисковая подсистема, ввод/вывод и файловые системы
Реализован новый интерфейс для асинхронного ввода/вывода - io_uring, который примечателен поддержкой поллинга ввода/вывода и возможностью работы как с буферизацией, так и без буферизации. Напомним, что предлагаемый ранее механизм асинхронного ввода/вывода "aio" не поддерживал буферизированный ввод/вывод, мог работать только в режиме O_DIRECT (без буферизации и в обход кэша), имел проблемы с возникновением блокировок из-за ожидания доступности метаданных и демонстрировал большие накладные расходы из-за копирования данных в памяти.

В рамках API io_uring разработчики попытались устранить недостатки старого интерфейса aio. По производительности io_uring очень близок к SPDK и существенно опережает libaio при работе с включенным поллингом. Для использования io_uring в конечных приложениях, работающих в пространстве пользователя, подготовлена библиотека liburing, предоставляющая высокоуровневую обвязку над интерфейсом ядра;
В механизм отслеживания событий в ФС fanotify() добавлена поддержка отслеживания ситуаций изменения суперблока и структуры dirent (события создания, удаления и перемещения каталогов). Представленные возможности помогают решить проблемы с масштабируемостью, возникающие при создании рекурсивных отслеживаний изменений в очень больших ФС при помощи механизма inotify (изменения dirent ранее можно было отследить только через inotify, но эффективность в условиях рекурсивного отслеживания больших вложенных каталогов оставляла желать лучшего). Теперь подобный мониторинг можно эффективно производить через fanotify;
В файловой системе Btrfs добавлена возможность настройки уровня сжатия для алгоритма zstd, который может рассматриваться как оптимальный компромисс, между быстрым но неэффективным lz4 и медленным но хорошо сжимающим xz. По аналогии с тем как раньше можно было устанавливать уровень сжатия при применении zlib для zstd добавлена поддержка опции монтирования "-o compress=zstd:level". При тестировании минимальный первый уровень обеспечил сжатие данных в 2.658 раз при скорости сжатия 438.47 MB/s, скорости распаковки 910.51 MB/s и потреблении памяти 780 MB, а максимальный 15 уровень - в 3.126 раз, но при скорости сжатия в 37.30 MB/s, распаковки 878.84 MB/s и потреблении памяти 2547 MB.

Из других улучшений в Btrfs можно отметить добавление отложенного выполнения операций сканирования поддерева для снижения нагрузки и реализацию нового ioctl для управления отключением устройств;
Добавлена возможность загрузки с файловой системы, размещённой на устройстве device-mapper, без применения initramfs. Начиная с текущего выпуска ядра устройства device-mapper можно напрямую использовать в процессе загрузки, например, как раздел с корневой ФС. Настройка раздела осуществляется при помощи загрузочного параметра "dm-mod.create". Среди разрешённых для загрузки модулей device-mapper: "crypt", "delay", "linear", "snapshot-origin" и "verity";
В ориентированную на Flash-накопители файловую систему F2FS добавлен флаг F2FS_NOCOW_FL (checkpoint=disable), позволяющий отключить режим copy-on-write для заданного файла;
Из ядра удалена файловая система Exofs, представляющая собой вариант ext2, адаптированный для работы с хранилищами объектов OSD (Object-based Storage Device). Также удалена поддержка SCSI-протокола для подобных устройств хранения объектов;
В XFS реализован режим always_cow, при котором вместо замены данных в блоках по месту применяется модель COW (для изменений создаётся копия блока). Для включения режима можно использовать команду "echo 1 > /sys/fs/xfs/debug/always_cow";
В CIFS обеспечено кэширование данных FILE_ALL_INFORMATION, что позволяет выполнять вызовы подобные "stat /mountpoint" на основе данных в кэше без обращения к серверу по сети. Добавлена возможность отправки запросов SMB3 FSCTL к серверу из утилит в пространстве пользователя, например, из smbinfo;
В EXT4 добавлен новый атрибут, доступный через sysfs (/sys/fs/ext4/{disk}/journal_task). Атрибут может оказаться полезным для перемещения потока обработки журнала в cgroup или его трассировки при помощи ftrace, perf или blktrace;
В EXT2 добавлена поддержка системного вызова statx c реализацией более эффективного и функционального варианта stat(), возвращающего расширенную информацию о файле, включая время создания файла и специфичные для файловых систем флаги;
Внесены исправления, нацеленные на увеличение масштабируемости и производительности файловых систем, работающих через механизм FUSE;
Виртуализация и безопасность
В prctl() добавлена опция PR_SPEC_DISABLE_NOEXEC для управления спекулятивным выполнением инструкций для выбранного процесса. Новая опция позволяет выборочно управлять защитой от спекулятивного выполнения для процессов, которые потенциально могут быть атакованы при помощи атаки типа Spectre. В случае активации опции при запуске нового процесса выполняется очистка бита SSBD в структуре задач;
Реализован LSM-модуль SafeSetID, позволяющий системным сервисам безопасно управлять пользователями без повышения привилегий (CAP_SETUID) и без получения полномочий пользователя root. Назначение привилегий осуществляется через определение в securityfs правил на основе белого списка допустимых привязок (в форме "UID1:UID2");
Добавлены низкоуровневые изменения, необходимые для стековой организации загрузки модулей безопасности (возможность загрузки одного LSM-модуля поверх другого). Представлен параметр загрузки ядра "lsm", позволяющий управлять тем, какие модули загружаются и в каком порядке;
В подсистему аудита добавлена поддержка пространств имён файлов;
Расширены возможности GCC-плагина structleak, позволяющего блокировать потенциальные утечки содержимого памяти Обеспечена инициализация любых переменных, которые используются в коде через обращение по ссылке в стеке;
Сетевая подсистема
Для сокетов реализована новая опция "SO_BINDTOIFINDEX", похожая на "SO_BINDTODEVICE", но принимающая в качестве аргумента индексный номер сетевого интерфейса вместо имени интерфейса. Для IPv6 добавлена опция сокетов IPV6_ROUTER_ALERT_ISOLATE, позволяющая ограничить приём анонсов ротеров (RA) только собственным пространством имён сокета;
В стек mac80211 добавлена возможность назначения одному устройству нескольких BSSID (MAC-адресов). В рамках проекта по оптимизации производительности WiFi в стек mac80211 добавлен учёт распределения эфирного времени и возможность распределять эфирное время между несколькими станциями (при работе в режиме точки доступа выделение меньшего времени на передачу медленным беспроводным станциям, вместо равномерного распределения времени между всеми станциями);
В модуль cfg80211/nl80211 при работе в режиме точки доступа добавлена возможность выноса обработчика аутентификации в пространство пользователя (Authentication offload);
Добавлен механизм "devlink health", предоставляющий уведомления при возникновении проблем с сетевым интерфейсом. Кроме того, в devlink реализован API для получения информации об устройстве и добавлена команда "flash update" для обновления прошивок сетевого адаптера;
Для сетевых мостов добавлена поддержка протокола MLD (Multicast Router Discovery, RFC4286);
Обеспечена возможность применения режима TCP Fast Open вместе с операциями zerocopy (отправка сообщений в sendmsg с флагом MSG_ZEROCOPY);
Добавлен интерфейс для диагностики сокетов AF_XDP;
Во встроенную реализацию протокола TLS добавлена поддержка TLS 1.3, помимо ранее поддерживаемого TLS 1.2;
Память и системные сервисы
Реализована безопасная доставка сигналов, учитывающая возможность повторного использования PID. Например, при выполнении вызова kill ранее могла возникнуть ситуация, когда сразу после отправки сигнала целевой PID мог быть освобождён из-за завершения работы процесса и занят другим процессом, и в итоге сигнал передавался другому процессу. Для исключения подобных ситуаций добавлен новый системный вызов pidfd_send_signal, который использует файловые дескрипторы из /proc/pid для обеспечения стабильной привязки к процессу. Даже если PID будет повторно задействован во время обработки системного вызова, файловый дескриптор не изменится и его можно безопасно использовать для отправки сигнала процессу;
Добавлена возможность использования устройств постоянной памяти (persistent-memory, например NVDIMM) в качестве ОЗУ. До сих пор в ядре подобные устройства поддерживались в качестве устройств хранения, но теперь их можно также применять как дополнительную оперативную память. Возможность реализована в ответ на пожелания пользователей, готовых мириться с отставанием производительности и желающих использовать штатный API управления памятью ядра Linux вместо применения имеющихся систем распределения памяти в пространстве пользователя, работающих поверх mmap для dax-файла;
Добавлен новый обработчик простоя CPU (cpuidle, решает когда можно перевести CPU в глубокие режимы экономии энергии, чем глубже режим - тем большая экономия, но и больше времени требуется для выхода из режима) - TEO (Timer Events Oriented Governor). До сих пор предлагалось два обработчика cpuidle - "menu" и "ladder", отличающиеся эвристикой. В обработчике "menu" имеются известные проблемы с принятием эвристических решений, для устранения которых было решено подготовить новый обработчик. TEO позиционируется как альтернатива обработчику "menu", позволяющая добиться более высокой производительности с сохранением того же уровня энергопотребления. Активировать новый обработчик можно при помощи загрузочного параметра "cpuidle.governor=teo";
В рамках работы по устранению проблемы 2038 года, вызванной переполнением 32-разрядного типа time_t, в состав включены системные вызовы, предлагающие для 32-разрядных архитектур 64-разрядные счётчики времени . В итоге, 64-разрядную структуру time_t теперь можно применять на всех архитектурах. Аналогичные изменения также реализованы в сетевой подсистеме для опций timestamp сетевых сокетов;
В систему горячего наложения патчей на ядро (live patching) добавлена возможность "Atomic Replace" для атомарного применения серии изменений к одной функции. Указанная возможность позволяет распространять сводные патчи, охватывающие сразу несколько изменений, вместо достаточно сложного для сопровождения процесса поэтапного наложения live-патчей в строго определённом порядке. Если раньше каждое следующее изменение должно было отталкиваться от состояния функции после прошлого изменения, то теперь возможно распространение сразу нескольких изменений, привязанных к одному исходному состоянию (т.е. сопровождающие могут поддерживать один сводный патч относительно базового ядра вместо цепочки из зависящих друг от друга патчей);
Объявлена устаревшей поддержка формата исполняемых файлов a.out и удалён код для формирования core-файлов в формате a.out, который находится в заброшенном состоянии. Формат a.out давно не применяется на системах с Linux, а генерация файлов a.out уже давно не поддерживается современными инструментальными средствами в конфигурациях для Linux по умолчанию. Кроме того, загрузчик для a.out файлов может быть реализован целиком в пространстве пользователя;
В механизм верификации BPF-программ добавлена возможность определения и удаления неиспользуемого кода. Включены патчи с поддержкой spinlock для подсистемы BPF, предоставляющие дополнительные возможности по управлению паралелльным выполнением BPF-программ. Добавлена возможность добавления через BPF-программы дополнительных заголовков в инкапсулированные пакеты IP (IP/GRE, GUE, IPIP). В eBPF реализована новая инструкция jmp32 и поддержка типа "__int128". В утилиту bpftool добавлена команда для вывода списка параметров eBPF. На базе BPF реализован фреймворк Host Bandwidth Manager, позволяющий ограничивать исходящую пропускную способность через cgroups. Добавлена документация по подсистеме BPF;
В команду "perf diff" добавлены новые опции-фильтры "--time", "--cpu", "--pid" и "--tid";
Добавлена загрузочная опция "driver_async_probe" для указания списка драйверов, инициализация которых будет проводится в асинхронном режиме (позволяет ускорить процесс загрузки ядра);
Убрано устаревшее поведение OOM killer, в соответствии с которым предпочтение при принудительном завершении отдавалось дочерним процессам наиболее агрессивного процесса, а не самому агрессивному процессу;
Добавлен sysctl kernel/sched_energy_aware для отключения планирования задач с учётом оптимизации энергопотребления (по умолчанию подобный режим отключен для большинства платформ);
Оборудование
В драйвер Nouveau добавлена поддержка гетерогенного управления памятью, обеспечивающего возможность обращения CPU и GPU к общим синхронизированным областям памяти. Система разделяемой виртуальной памяти (SVM, shared virtual memory) реализована на базе подсистемы HMM (Heterogeneous memory management), позволяющей использовать устройства с собственными блоками управления памятью (MMU, memory management unit), которые могут получать доступ к основной памяти. В том числе при помощи HMM можно организовать совместное адресное пространство между GPU и CPU, в котором GPU может получить доступ к основной памяти процесса. Поддержка SVM пока включена только для GPU семейства Pascal, хотя поддержка обеспечена и для GPU Volta и Turing. Кроме того, в Nouveau добавлен новый ioctl для управления миграцией областей памяти процессов в память GPU;
В DRM-драйвере Intel для GPU Skylake и новее (gen9+) включён по умолчанию режим fastboot, исключающий лишние смены режимов во время загрузки. Добавлены новые идентификаторы устройств на базе микроархитектур Coffelake и Ice Lake. Для чипов Coffelake добавлена поддержка GVT (виртуализация GPU). Для виртуальных GPU реализована поддержка VFIO EDID. Для LCD панелей MIPI/DSI добавлена поддержка элементов ACPI/PMIC. Реализованы новые TV-режимы 1080p30/50/60 TV;
В драйвер amdgpu добавлена поддержка GPU Vega10/20 BACO. Реализованы средства управления питанием Vega 10/20 и таблицы управления кулером Vega 10. Добавлены новые PCI-идентификаторы устройств для GPU Picasso. Добавлен интерфейс управления планируемыми зависимостями для исключения взаимных блокировок;
Добавлен DRM/KMS-драйвер для ускорителей экранных операций ARM Komeda (Mali D71);
Добавлена поддержка экранных панелей Toppoly TPG110, Sitronix ST7701, PDA 91-00156-A0, LeMaker BL035-RGB-002 3.5 и Kingdisplay kd097d04;
Добавлена поддержка звуковых кодеков Rockchip RK3328, Cirrus Logic CS4341 и CS35L36, MediaTek MT6358, Qualcomm WCD9335 и Ingenic JZ4725B, а также звуковой платформы Mediatek MT8183;
Добавлена поддержка NAND-контроллеров Flash STMicroelectronics FMC2, Amlogic Meson;
Добавлена поддержка Habana Goya, ускорителей операций для нейронных сетей;
Добавлена поддержка гигабитных Ethernet-контроллеров NXP ENETC и беспроводных интерфейсов MediaTek MT7603E (PCIe) и MT76x8;
Добавлена поддержка новых ARM SoC: Socionext SC2000 (Milbeaut), Bitmain BM1880, Renesas RZ/A2M (R7S9210), Renesas RZ/G2E (r8a774c0), NXP i.MX8QuadXPlus, Mediatek MT7629;
Добавлена поддержка новых ARM плат и платформ: NVIDIA Shield TV (Darcy) на базе Tegra210, Bosch Guardian, Winterland IceBoard, Inspur on5263m5, Zodiac Digital Tapping Unit, Phicomm K3, X96 Max, FriendlyElec NanoPC-T4, NanoPi M4, Radxa ROCK Pi 4, Logic PD i.MX6QD, Y Soft IOTA Draco/Hydra/Ursa, Phytec phyCORE i.MX6 UltraLite, MYIR Tech MYD-LPC4357, Chameleon96, Oxalis Evalkit V100, Elgin RV1108 R, Si-Linux CAT874, Si-Linux EK874, Raspberry Pi Model 3 A+,

Одновременно Латиноамериканский Фонд свободного ПО сформировал вариант полностью свободного ядра 5.1 - Linux-libre 5.1-gnu, очищенного от элементов прошивок и драйверов, содержащих несвободные компоненты или участки кода, область применения которых ограничена производителем. В новом выпуске отключена загрузка блобов в драйверах mt7603 и goya. Обновлён код чистки блобов в драйверах и подсистемах wilc1000, iwlwifi, soc-acpi-intel, brcmfmac, mwifiex, btmrvl, btmtk и touchscreen_dmi. Прекращена чистка блобов в загрузчике прошивок lantiq xrx200 из-за его удаления из ядра.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Релиз дистрибутива для исследования безопасности систем Kali Linux 2019.2
22.05.2019 12:23


Состоялся релиз дистрибутива Kali Linux 2019.2, предназначенного для тестирования систем на предмет наличия уязвимостей, проведения аудита, анализа остаточной информации и выявления последствий атак злоумышленников. Все оригинальные наработки, созданные в рамках дистрибутива, распространяются под лицензией GPL и доступны через публичный Git-репозиторий. Для загрузки подготовлен полный iso-образ (3.2 Гб) и сокращённый образ (929 Мб). Сборки доступны для архитектур x86, x86_64, ARM (armhf и armel, Raspberry Pi, Banana Pi, ARM Chromebook, Odroid). Помимо базовой сборки с GNOME и урезанной версии предлагаются варианты с Xfce, KDE, MATE, LXDE и Enlightenment e17.

Kali включает одну из самых полных подборок инструментов для специалистов в области компьютерной безопасности: от средств для тестирования web-приложений и проникновения в беспроводные сети, до программ для считывания данных с идентификационных RFID чипов. В комплект входит коллекция эксплоитов и более 300 специализированных утилит для проверки безопасности, таких как Aircrack, Maltego, SAINT, Kismet, Bluebugger, Btcrack, Btscanner, Nmap, p0f. Помимо этого, в дистрибутив включены средства для ускорения подбора паролей (Multihash CUDA Brute Forcer) и WPA ключей (Pyrit) через задействование технологий CUDA и AMD Stream, позволяющих использовать GPU видеокарт NVIDIA и AMD для выполнения вычислительных операций.

В новом выпуске обновлены версии входящих в состав компонентов, в том числе задействовано ядро Linux 4.19.28 и добавлены новые версии пакетов seclists, msfpc и exe2hex. Сформирован новый выпуск NetHunter 2019.2, окружения для мобильных устройств на базе платформы Android с подборкой инструментов для тестирования систем на наличие уязвимостей. В том числе возможна проверка осуществления атак, специфичных для мобильных устройств, например, через эмуляцию работы USB-устройств (BadUSB и HID Keyboard - эмуляция сетевого USB-адаптера, который может использоваться для MITM-атак, или USB-клавиатуры, выполняющей подстановку символов) и создание подставных точек доступа (MANA Evil Access Point). NetHunter устанавливается в штатное окружение платформы Android в форме chroot-образа, в котором выполняется специально адаптированный вариант Kali Linux.

В новой версии NetHunter существенно расширено число поддерживаемых устройств. В общем виде обеспечена поддержка 50 моделей устройств и сформированы официальные сборки для 13 устойств, включая Nexus (5, 6, 7, 9), OnePlus One, OnePlus 2, Galaxy Tab S4, Gemini Nougat, Sony XPeria Z1 и ZTE Axon 7. Добавлены новые сборки для Nexus 6 (Android 9), Nexus 6P (Android 8), OnePlus 2 (Android 9) и Samsung Galaxy Tab S4 LTE & WiFi (Android 8)
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Выпуск ZFS on Linux 0.8.0, реализации ZFS для ядра Linux
23.05.2019 21:59


После почти двух лет разработки представлен релиз ZFS on Linux 0.8.0, реализации файловой системы ZFS, оформленной в виде модуля для ядра Linux. Работа модуля проверена с ядрами Linux c 2.6.32 по 5.1. Готовые установочные пакеты в ближайшее время будут подготовлены для основных дистрибутивов Linux, включая Debian, Ubuntu, Fedora, RHEL/CentOS. Модуль ZFS on Linux уже входит в состав дистрибутивов Debian, Ubuntu, Gentoo, Sabayon Linux и ALT Linux.

В рамках ZFS on Linux подготовлена реализация компонентов ZFS, связанных как с работой файловой системы, так и с функционированием менеджера томов. В частности, реализованы компоненты: SPA (Storage Pool Allocator), DMU (Data Management Unit), ZVOL (ZFS Emulated Volume) и ZPL (ZFS POSIX Layer). Дополнительно проектом обеспечена возможность использования ZFS в качестве бэкенда для кластерной файловой системы Lustre. Наработки проекта основаны на оригинальном коде ZFS, импортированном из проекта OpenSolaris и расширенном улучшениями и исправлениями от сообщества Illumos. Проект развивается при участии сотрудников Ливерморской национальной лаборатории по контракту с Министерством энергетики США.

Код распространяется под свободной лицензией CDDL, которая несовместима с GPLv2, что не позволяет добиться интеграции ZFS on Linux в состав основной ветки ядра Linux, так как смешивание кода под лицензиями GPLv2 и CDDL недопустимо. Для обхода данной лицензионной несовместимости было решено распространять продукт целиком под лицензией CDDL в виде отдельно загружаемого модуля, который поставляется отдельно от ядра. Стабильность кодовой базы ZFS on Linux оценивается как сопоставимая с другими ФС для Linux.

Основные изменения:

Добавлена встроенная поддержка шифрования хранимых данных на уровне файловой системы и разделов. По умолчанию для шифрования используется алгоритм aes-256-ccm. Для загрузки ключей шифрования предложена команда "zfs load-key";
Реализована возможность передачи шифрованных данных при выполнении команд "zfs send" и "zfs receive'. При указании опции "-w" уже зашифрованные в пуле данные передаются в другой пул как есть, без промежуточной дешифровки. При подобном копировании данные остаются защищены ключом отправляющей стороны, что позволяет использовать данный режим для резервного копирования на не заслуживающие доверия системы (в случае компрометации получателя, без ключа атакующий не сможет получить доступ к данным);
Добавлена поддержка удаления первичных накопителей из пула хранения, подсоединённых как по отдельности, так и в составе зеркала. Удаление осуществляется командой "zpool remove". В процессе удаления данные с исключаемого накопителя копируются на остающиеся в пуле первичные накопители;
Добавлена команда "zpool checkpoint" для сохранения текущего состояния пула с возможностью отката дальнейших изменений на сохранённый момент времени (создаётся снапшот всего пула). Представленная возможность может оказаться полезной в процессе выполнения потенциально опасных сложных административных работ, в обычных условиях приводящих к необратимым изменениям (например, активация флагов новой функциональности ZFS или очистка данных);
Добавлена команда "zpool trim", позволяющая информировать используемые в пуле накопители о секторах, которые больше не используются. Применение операции TRIM даёт возможность повысить эффективность работы SSD-накопителей и предотвратить деградацию их производительности. Для включения непрерывного фонового процесса передачи команд TRIM предложено новое свойство "autotrim";
Добавлена команда "zpool initialize" для инициализации всего нераспределённого дискового пространства, что позволяет обеспечить его мгновенную готовность к использованию, без снижения производительности при первом доступе (например, при размещении виртуализированных хранилищ, таких как VMware VMDK);
Добавлена поддержка аккаунтинга и квот на уровне проекта, дополняющих ранее доступные квоты на уровне пользователя и группы. По сути проекты - это отдельное пространство объектов, связанных с отдельным идентификатором (project ID). Привязка определяется через операцию 'chattr -p' или через наследование атрибутов. Для управления проектами представлены команды "zfs project" и "zfs projectspace", позволяющие управлять созданием проектов и задавать для них лимиты дискового пространства;
Добавлена возможность создания Lua-скриптов для автоматизации различных работ с ZFS. Скрипты запускаются в специальных изолированных окружениях при помощи команды "zpool program";
Реализована новая библиотека pyzfs, предоставляющая стабильный API для администрирования ZFS из приложений на языке Python. Библиотека является обвязкой над libzfs_core и предоставляет идентичный набор функций, но применяет более близкие для Python типы;
Обеспечена совместимость утилит arcstat, arcsummary и dbufstat с Python 3. Утилиты arcstat.py, arc_summary.py и dbufstat.py переименованы в варианты без расширения ".py";
Добавлена поддержка интерфейса ядра Linux Direct IO (O_DIRECT), позволяющего обращаться к данным без буферизации и в обход кэша;
Представлены оптимизации производительности:
Ускорена работа команд "scrub" и "resilver" за счёт разбиения на две фазы (выделена отдельная фаза для сканирования метаданных и определения расположения блоков с данными на диске, что позволяет выполнить дальнейшую проверку с использованием последовательного чтения данных);
Добавлена поддержка классов размещения данных (Allocation classes), позволяющих включать в пул относительно небольшие SSD-накопители и использовать их для хранения только определённых типов часто используемых блоков, таких как метаданных, данные DDT и мелкие блоки с файлами;
Увеличена производительность команд для администрирования, таких как "zfs list" и "zfs get", за счёт кэширования необходимых для их работы метаданных;
Добавлена поддержка распараллеливания операций выделения блоков через запуск отдельных процессов "allocator" для каждой группы metaslab. На обычных системах отмечается прирост производительности на уровне 5-10%, но на крупных (8 128 GB SSD, 24 core NUMA, 256 GB ОЗУ) прирост операций выделения блоков может достигать 25%;
Добавлена возможность отложенного выполнения команды "resilver" (перестроение распределения данных с учётом изменения конфигурации накопителей) - если при запуске новой операции ещё не отработала предыдущая, то новый обработчик начнёт выполняться только после окончания работы предыдущего;
В журнал ZIL (ZFS Intent Log) внесены оптимизации, позволяющие создавать и обрабатывать блоки при наличии блоков, ещё обрабатываемых хранилищем;
Сокращено время регистрации разделов (zvol) в системе. Когда пул содержит большое число разделов они теперь становятся доступны сразу после выполнения "zpool import";
Добавлена поддержка аппаратного ускорения вычисления хэшей SHA256 и операций шифрования AES-GSM c использованием чипов с поддержкой технологии Intel QAT (Quick Assist Technology). Добавлена поддержка средств аппаратного ускорения чипсета Intel C62x и CPU Atom C3000.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Проблема с потерей данных на SSD при использовании ядра Linux 5.1, LVM и dm-crypt
26.05.2019 08:32


В корректирующем выпуске ядра Linux 5.1.5 исправлена проблема в подсистеме DM (Device Mapper), которая может привести к повреждению данных на SSD-накопителях. Проблема стала проявляется после изменения, добавленного в ядро в январе этого года, затрагивает только ветку 5.1 и в подавляющем большинстве случаев проявляется на системах с SSD-накопителями Samsung, на которых применяется шифрование данных с использованием dm-crypt/LUKS поверх device-mapper/LVM.

Причиной проблемы является слишком агрессивная пометка освобождаемых блоков через FSTRIM (за раз помечалось слишком много секторов, без учёта лимита max_io_len_target_boundary). Из дистрибутивов предлагающих ядро 5.1 ошибка уже устранена в Fedora, но пока остаётся неисправленной в ArchLinux (исправление доступно, но пока находится в ветке "testing"). В качестве обходного пути блокирования проблемы называется отключение сервиса fstrim.service/timer, временное переименование исполняемого файла fstrim, исключение флага "discard" из числа опций монтирования в fstab и отключение режима "allow-discards" в LUKS через dmsetup.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
LibreOffice прекращает формирование 32-разрядных сборок для Linux
07.06.2019 12:19


Организация Document Foundation объявила о прекращении формирования 32-разрядных бинарных сборок LibreOffice для Linux. Изменение вступит в силу начиная с выпуска 6.3, который ожидается 7 августа. В качестве причины называется низкая востребованность подобных сборок, которая не оправдывает ресурсы, потраченные на их компиляцию, тестирование, сопровождение и распространение. Основная масса пользователей Linux устанавливает LibreOffice из дистрибутивов, а не загружает с основного сайта проекта.

В исходном коде поддержка 32-разрядных систем будет сохранена, поэтому дистрибутивы Linux смогут продолжить поставку 32-разрядных пакетов с LibreOffice, а энтузиасты смогут при необходимости собрать более новые версии из исходных текстов. Официальных же 32-разрядных сборок для Linux больше не будет (для Windows 32-разрядные сборки продолжат публиковаться без изменений).
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Выпуск Linux-дистрибутива PCLinuxOS 2019.06

Представлен релиз пользовательского дистрибутива PCLinuxOS 2019.06. Дистрибутив был основан в 2003 году на базе Mandrake Linux (будущей Mandriva), но позднее ответвился в самостоятельный проект. Пик популярности PCLinuxOS пришёлся на 2010 год, в котором, по результатам опроса читателей журнала Linux Journal, PCLinuxOS уступал по популярности лишь Ubuntu (в рейтинге 2013 года PCLinuxOS уже занимал 10 место). Дистрибутив нацелен на использование в Live-режиме, но поддерживает и установку на жесткий диск. Для загрузки подготовлены полный (1.8 Гб) и сокращённый (916 Мб) варианты дистрибутива на базе десктоп-окружения KDE. Отдельно сообществом развиваются сборки на базе рабочих столов Xfce, MATE, LXQt, LXDE и Trinity.

PCLinuxOS отличается задействованием инструментария для управления пакетами APT из Dеbian GNU/Linux в сочетании с использованием пакетного менеджера RPM, относясь при этом к классу rolling-дистрибутивов, в которых обновления пакетов выходят постоянно и пользователь в любой момент имеет возможность перейти на последние версии программ без ожидания формирования очередного релиза дистрибутива. Репозиторий PCLinuxOS насчитывает около 14000 пакетов. В качестве системы инициализации применяется sysvinit.

В новом выпуске обновлены версии пакетов, включая ядро Linux 5.1, KDE Applications 19.04.2, KDE Frameworks 5.59.0 и KDE Plasma 5.16.0. В базовую поставку входят такие приложениях как утилита для резервного копирования Timeshift, менеджер паролей Bitwarden, система обработки фотографий Darktable, редактор изображений GIMP, система управления коллекцией изображений Digikam, утилита для синхронизации данных в облачных хранилищах Megasync, система удалённого доступа Teamviewer, система управления приложениями Rambox, программа для ведения заметок Simplenotes, мультимедийный центр Kodi, интерфейс для чтения электронных книг Calibre, финансовый пакет Skrooge, браузер Firefox, почтовый клиент Thunderbird, музыкальный проигрыватель Strawberry и видеопроигрыватель VLC.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Инициатива для защиты Linux от патентных претензий преодолела отметку в 3000 участников
23.06.2019 08:01


Организации Open Invention Network (OIN), занимающейся защитой экосистемы Linux от патентных претензий, объявила о преодолении рубежа в 3000 участников. За последние два года число участников OIN увеличилось на 50%. Например, только с начала этого года к OIN присоединилось 350 новых компаний, сообществ и организаций, подписавших лицензионное соглашение о совместном использовании патентов. Участники OIN обязуются не выдвигать патентные претензии и безвозмездно разрешают использовать запатентованные технологии в проектах, связанных с экосистемой Linux.

Среди основных участников OIN, обеспечивающих формирование защищающего Linux патентного пула, такие компании, как Google, IBM, NEC, Toyota, Renault, SUSE, Philips, Red Hat, Alibaba, HP, AT&T, Juniper, Facebook, Cisco, Casio, Fujitsu, Sony и Microsoft. Подписавшие соглашение компании получают доступ к имеющимся в руках OIN патентам, в обмен на обязательство не предъявлять судебных претензий за использование технологий, применяемых в экосистеме Linux. В том числе в рамках присоединения к OIN компания Miсrosoft передала участникам OIN право на использование более 60 тысяч своих патентов, обязавшись не использовать их против Linux и открытого ПО.

Соглашение между участниками OIN распространяется только на компоненты дистрибутивов, подпадающих под определение системы Linux ("Linux System"). В настоящее время список включает 2873 пакета, в том числе ядро Linux, платформу Android, KVM, Git, nginx, CMake, PHP, Python, Ruby, Go, Lua, OpenJDK, WebKit, KDE, GNOME, QEMU, Firefox, LibreOffice, Qt, systemd, X.Org, Wayland и т.д. Кроме обязательств о ненападении для дополнительной защиты в рамках OIN сформирован патентный пул, куда попадают скупаемые или безвозмездно передаваемые участниками патенты, связанные с Linux.

Патентный пул OIN включает более 1300 патентов. В том числе в руках OIN находится группа патентов, в которых фигурируют одни из первых упоминаний технологий создания динамического web-контента, которые предвосхитили появление таких систем, как ASP от Microsoft, JSP от Sun/Oracle и PHP. Другим существенным вкладом, является приобретение в 2009 году 22 патентов Microsoft, которые до этого были проданы консорциуму AST, как патенты затрагивающие "open source" продукты. Все участники OIN имеют возможность использовать данные патенты безвозмездно. Действенность соглашения OIN была подтверждена решением Министерства юстиции США, потребовавшим учесть интересы OIN в условиях сделки о продаже патентов Novell.
 

vladimir59

Модератор
Сообщения
29,464
Баллы
113
Доступна бета-версия Linux-редакции игрового движка OpenXRay
25.06.2019 17:35


Спустя полгода работы над стабилизацией кода доступна бета-версия порта игрового движка OpenXRay для Linux (для Windows последней остаётся февральская сборка 221). Сборки подготовлены пока только для Ubuntu 18.04 (PPA). В рамках проекта OpenXRay происходит развитие движка X-Ray 1.6, используемого в игре "S.T.A.L.K.E.R.: Зов Припяти". Проект основан после утечки исходных кодов движка и ставит перед собой цель исправления всех оригинальных недочётов и введения новых возможностей как для обычных пользователей, так и для разработчиков модификаций.

В представленной сборке устранены случайные крахи, улучшен рендер (приближен к оригинальной картинке), игру теперь можно пройти до конца. В планах дальнейшее улучшение рендера, поддержка ресурсов от ClearSky (сейчас в отдельной WIP ветке) и поддержка игры "S.T.A.L.K.E.R.: Тень Чернобыля".

Известные проблемы:

При выходе из игры процесс может зависнуть;
При переходе между локациями/повторной загрузке записанных сеансов портится картинка, игра может вылететь (пока решается только через перезапуск игры с загрузкой сохранённого сеанса);
Сохранённые сеансы и логи не поддерживают UTF-8;
Проект не собирается Сlang.

Для работы игры понадобятся ресурсы от оригинальной игры, они должны находиться в каталоге "~/.local/share/GSC/SCOP/". Для steam их можно получить командой:


steamcmd "+@sSteamCmdForcePlatformType windows" +login Имя_пользователя\
+force_install_dir ~/.local/share/GSC/SCOP/ +app_update 41700 +quit

Если ресурсы из GOG, то нужно привести все пути к нижнему регистру (это особенность движка). Перед началом игры нужно исправить строку в "~/.local/share/GSC/SCOP/appdata/user.ltx". Следует поменять "renderer renderer_r1" на "renderer renderer_gl", и "vid_mode 1024x768 " на фактическое разрешение, иначе оно слетит.
 

ze2019

Ze-widget example


Сверху Снизу