bin directory와 sbin directory의 차이
차이점 요약
/bin |
필수적인 user command binaries [ ex) cat, chmod, chown, ps 등 ] |
/sbin |
필수적인 system binaries (시스템 관리용) [ ex) halt, reboot, fdisk 등 ] |
/usr/bin |
/bin 에 위치한 binaries를 제외한 대부분의 user command binaries [ ex) gcc, perl 등 ] |
/usr/sbin |
필수적이지 않은 system binaries (시스템 관리용) |
/usr/local/bin |
/usr/bin 과의 차이는 /usr/bin 은 package manager가 설치 가능한 binaries이고 /usr/local/bin 은 package manager로부터 관리되지 않는 binaries들 입니다. |
/usr/local/sbin |
/usr/sbin 과의 차이는 /usr/sbin 은 package manager가 설치 가능한 binaries이고 /usr/local/sbin 은 package manager로부터 관리되지 않는 binaries들 입니다. |
bin과 sbin의 차이점 추가적인 설명
1. sbin은 root권한을 가진 사용자만 이용할 수 있고, bin은 일반사용자들이 이용할 수 있는 binaries이라는 말을 여러 블로그 및 사이트에서 볼 수 있었습니다.
하지만 /sbin 의 권한을 보면 모든 사용자에게 실행권한이 부여되어 있는 것을 볼 수 있습니다.
sbin은 root권한을 가진 사용자만 이용할 수 있다는 말은 그렇게 설정하라는 권장사항이라고 생각됩니다.
/sbin 에 halt, reboot 등의 binaries들이 위치해있으므로 일반사용자에게는 sbin에 대한 권한이 부여되어 있지 않아야 하는 것이 맞습니다.
2. 일반사용자에게는 sbin이 PATH환경변수에 설정되어 있지 않습니다.
그러므로 sbin에 위치한 binaries들을 실행하려면 절대경로로 실행해야 합니다.
참고
- http://www.pathname.com/fhs/pub/fhs-2.3.pdf
- http://coffeenix.net/doc/kuls/file_system-4.html