In the release of Fedora 40, it is proposed to merge the contents of the directories /usr/bin and /usr/sbin, replacing the directory /usr/sbin with a symbolic link pointing to /usr/bin. The transformation of /bin and /sbin into symbolic links to /usr/bin and /usr/sbin was done in 2012 in Fedora 17. After consolidating all executable files in one place, the mention of the directory /usr/sbin will be removed from the PATH environment variable. The proposal is still under discussion and has not been reviewed by the FESCo (Fedora Engineering Steering Committee), which is responsible for the technical aspects of Fedora distribution development.
It is noted that the separation of executable files into the bin and sbin directories is an outdated practice that has lost its relevance in modern distributions. Initially, it was intended that the most important executable files, statically compiled and suitable for invoking in recovery mode (for instance, in case of FS damage or unavailability of the /usr partition), would be placed in sbin. In Fedora, the contents of sbin have long ceased to be statically compiled, and the content is actually located in the /usr section rather than the root section.
The separation into sbin and bin was also used to distinguish programs for administrators and regular users, but the criteria for placing programs in sbin or bin are quite vague, and for many years the PATH environment variable for all users has included both /usr/bin and /usr/sbin (systemd by default adds both directories to PATH for all users and services). Thus, in practice, the separation of bin and sbin has long been irrelevant and only complicates the use of absolute paths to executable files, especially considering that different distributions distribute executable files across bin and sbin directories differently.
The unification of bin and sbin will simplify the work of package maintainers, who will no longer have to guess which directory to place the executable files in; it will make the system more predictable and understandable for users; increase compatibility with other distributions (for example, the ip utility was placed in sbin in Fedora and in bin in Debian; after unification, the Debian-specific path will work in Fedora as well); make the distribution more compatible with Arch Linux, which merged sbin and bin in 2013; reduce the number of directory checks when executing execvp() and similar calls (only one directory will need to be traversed instead of two); simplify searching in logs and analyzing the output of utilities like strace.
Source: opennet.ru
