21.02.2024

В Fedora намерены объединить содержимое каталогов /usr/bin и /usr/sbin

В выпуске Fedora 40 предложено объединить содержимое каталогов /usr/bin и /usr/sbin, заменив каталог /usr/sbin на символическую ссылку, указывающую на /usr/bin. Преобразование /bin и /sbin в символические ссылки на /usr/bin и /usr/sbin было выполнено в 2012 году в Fedora 17. После сосредоточения всех исполняемых файлов в одном месте упоминание каталога /usr/sbin будет удалено из переменной окружения PATH. Предложение пока находится на стадии обсуждения и не рассмотрено комитетом FESCo (Fedora Engineering Steering Committee), отвечающим за техническую часть разработки дистрибутива Fedora.

Отмечается, что разделение исполняемых файлов по каталогам bin и sbin является устаревшей практикой, которая потеряла смысл в современных дистрибутивах. Изначально подразумевалось, что в sbin размещаются наиболее важные исполняемые файлы, скомпонованные статически и пригодные для вызова в режиме восстановления, например, при повреждении части ФС или недоступности раздела /usr. В Fedora уже давно содержимое sbin не компонуется статически, а содержимое фактически размещается в разделе /usr, а не в корневом разделе.

Разделение на sbin и bin также применялось для отделения программ для администратора и обычного пользователя, но критерии размещения программ в sbin или bin достаточно размыты и многие годы в большинстве дистрибутивов переменная окружения PATH для всех пользователей включает, как /usr/bin, так и /usr/sbin (systemd по умолчанию добавляет в PATH оба каталога для всех пользователей и сервисов). Таким образом, на деле разделение bin и sbin давно не применяется и лишь мешает, когда нужно использовать абсолютный путь к исполняемому файлу, особенно в условиях когда разные дистрибутивы по разному распределяют исполняемые файлы по каталогам bin и sbin.

Унификация bin и sbin упростит работу сопровождающих пакеты, которым не придётся гадать в какой каталог разместить исполняемый файл; сделает систему более предсказуемой и понятной для пользователей; увеличит совместимость с другими дистрибутивами (например, в Fedora утилита ip размещалась в sbin, а в Debian в bin, после унификации свойственный для Debian путь сработает и в Fedora); сделает дистрибутив более совместимым с Arch Linux, который выполнил слияние sbin и bin в 2013 году; уменьшит число проверок каталогов при выполнении execvp() и похожих вызовов (нужно будет перебирать один каталог, а не два); упростит поиск в логах и анализ вывода утилит, таких как strace.

Источник: https://www.opennet.ru/opennews/art.shtml?num=60343 Источник.