From Fedora Project Wiki

Revision as of 21:14, 6 August 2008 by Wwoods (talk | contribs) (→‎Dependencies: pointer to bug with patch)

/sbin sanity

Summary

Fix problems arising from the split between /bin and /sbin.

Owner

  • WillWoods, JesseKeating, AdamJackson, PeterJones, et. al.

Current status

  • Targeted release: Fedora 10
  • Last updated: Aug. 6, 2008
  • Percentage of completion: 40%

Detailed Description

Historically, Fedora enforces the split between /bin and /sbin by leaving /sbin and /usr/sbin out of the PATH for normal users. However, binaries that are commonly used for information-gathering (ifconfig, route) by normal users should not be placed out of their reach. Things that are commonly run with sudo should also be in PATH.

Therefore, we should either be smarter about where binaries are located or change the default PATH.

Benefit to Fedora

This is possibly the most common Fedora FAQ. It's the first problem that anyone new to Fedora encounters and it causes people annoyance for no real gain.

Scope

Change the default PATH to include /usr/local/sbin:/usr/sbin:/sbin for all users. Note that it must come at the end of the path for normal users, or consolehelper will break.

Packages and files to change

  • setup
  • /etc/profile - for bash, zsh, etc.
  • /etc/csh.login - for csh, tcsh, etc.

Test Plan

Ensure that the system starts as expected, without messages about missing binaries or anything similar.

The following commonly-used commands should run normally:

 sudo service iptables status
 ifconfig

consolehelper-based apps should still prompt for the root password and run normally. Examples:

 system-config-users
 system-config-boot

User Experience

Things like ifconfig and sudo service NetworkManager restart work as expected for normal users.

People are no longer baffled by "missing" binaries after using su.

Dependencies

Bug 458176 contains the patch for the setup package, which implements the changes.

Contingency Plan

Revert the change to setup and everything goes back to the way it was.

Documentation

None needed

Release Notes

/usr/local/sbin:/usr/sbin:/sbin has been added to the PATH for normal users, to simplify command-line administration tasks.

Comments and Discussion

See Talk:Features/SbinSanity