Опубликована новая версия пакета системных утилит Util-linux 2.39, в который входят как тесно связанные с Linux-ядром утилиты, так и утилиты общего назначения. Например, в пакете представлены утилиты mount/umount, fdisk, hwclock, cal, blkid, fsck/cfdisk/sfdisk, blockdev, chrt, mkfs, ionice, more, renice, su, kill, setsid, login, shutdown, dmesg, lscpu, logger, losetup, setterm, mkswap, swapon, taskset и т.п.
В новой версии:
- В утилите mount и библиотеке libmount добавлена поддержка нового API ядра Linux для управления монтированием файловых систем с учётом пространств имён точек монтирования (mount namespaces). В новом API вместо общей функции mount() задействованы раздельные функции для обработки разных стадий монтирования (обработать суперблок, получить информацию об ФС, примонтировать, прикрепить к точке монтирования). Совместимость libmount со старыми ядрами Linux и старым API для монтирования сохранена. Для принудительного отключения нового API добавлена опция “–disable-libmount-mountfd-support”.
- Использование нового API монтирования позволило реализовать поддержку маппинга идентификаторов пользователей примонтированных файловых систем, применяемого для сопоставления файлов определённого пользователя на примонтированном чужом разделе с другим пользователем в текущей системе. Для управления маппингом в утилиту mount добавлена опция “X-mount.idmap=”.
- В утилиту mount добавлены новые опции: “X-mount.auto-fstypes” для автоматического обнаружения файловой системы определённого типа, “X-mount.{owner,group,mode}” для изменения владельца, группы и режима доступа после монтирования и “rootcontext=@target” для выставления контекста SELinux для ФС. Для флагов VFS добавлена поддержка аргумента “recursive” (например, “mount -o bind,ro=recursive”).
- Добавлена команда blkpr, позволяющая зарезервировать блоки на накопителях SCSI или NVMe.
- Добавлена команда pipesz для установки или проверки размера буфера для неименованных каналов и FIFO.
- Добавлена команда waitpid для ожидания изменения состояния произвольного процесса (например, завершения выполнения).
- В утилиту renice добавлены опции “-n” и “–relative”.
- В утилите blockdev реализована поддержка ioctl BLKGETDISKSEQ.
- В утилиту lsfd добавлена поддержка pidfd и сокетов AF_NETLINK, AF_PACKET, AF_INET и AF_INET6 (/proc/net/*), обеспечено отображение изменённых имён процессов из proc/$pid/fd, реализовано декодирование флагов из /proc/$PID/fdinfo/$fd, добавлена опция “-i” (“–inet”) для показа только сведений о сокетах AF_INET и AF_INET6.
- У утилите cal появилась поддержка настройки цветного вывода через terminal-colors.d.
- В dmesg реализован вывод с точность в доли секунд при использовании опций “–since” и “–until”, в опции “–level” добавлена возможность указания префикса/суффикса “+” для показа всех уровней с номерами больше/меньше заданного.
- В утилиту fstrim добавлена опция “–types” для фильтрации по типу ФС.
- В blkid и libblkid добавлена поддержка ФС bcachefs и включён расчёт контрльных сумм для ФС и RAID.
- В утилиту lsblk добавлены опции “–nvme” и “–virtio” для отсеивания устройств, реализованы столбцы ID (udev ID), ID-LINK (udev /dev/disk/by-id), PARTN (номер раздела) и MQ (очереди), улучшена поддержка горячего подключения и отключения устройств.
- В nsenter добавлена опция “–env” для передачи переменных окружения.
- В namei добавлена опция “-Z” для показа контекстов SELinux.
- Улучшена поддержка сборочной системы Meson.
Release.
Ссылка here.