Frequently Asked Question
What is the difference between /bin and /sbin?
/bin holds essential command binaries that every user needs: ls, cp, mv, rm,
cat, echo, bash, and so on, the commands without which the system is unusable.
/sbin holds system binaries: tools intended primarily for the administrator, such as
fsck, mkfs, fdisk, ifconfig, reboot, shutdown. The split is by audience and
privilege, not by file type: anyone can read /sbin, but the commands inside usually need
root to do anything useful (you can format a disk, but only root can format the one
currently in use).
Historically both directories had to live on the root partition because they were needed
before /usr was mounted, during single-user mode or emergency recovery. On a modern
merged-usr distribution that distinction has dissolved, /bin and /sbin are now
symlinks to /usr/bin and /usr/sbin respectively, and the four directories are really
one. The split persists in the FHS for backward compatibility with older scripts that
hard-code /sbin/ifconfig or /bin/sh.