/bin,/sbin,/usr/sbin,/usr/bin 目錄之簡單區別
轉載自:
/bin,/sbin,/usr/sbin,/usr/bin 目錄
這些目錄都是存放命令的,首先區別下/sbin和/bin:
從命令功能來看,/sbin 下的命令屬於基本的系統命令,如shutdown,reboot,用於啟動系統,修復系統,/bin下存放一些普通的基本命令,如ls,chmod等,這些命令在Linux系統裡的配置檔案腳本里經常用到。
從使用者許可權的角度看,/sbin目錄下的命令通常只有管理員才可以執行,/bin下的命令管理員和一般的使用者都可以使用。
從可執行時間角度看,/sbin,/bin能夠在掛載其他檔案系統前就可以使用。
而/usr/bin,/usr/sbin與/sbin /bin目錄的區別在於:
/bin,/sbin目錄是在系統啟動後掛載到根檔案系統中的,所以/sbin,/bin目錄必須和根檔案系統在同一分割槽;
/usr/bin,usr/sbin可以和根檔案系統不在一個分割槽。
/usr/sbin存放的一些非必須的系統命令;/usr/bin存放一些使用者命令,如led(控制LED燈的)。
轉下一位網友的解讀,個人認為詮釋得很到位:
/bin是系統的一些指令。bin為binary的簡寫主要放置一些系統的必備執行檔例如:cat、cp、chmod df、dmesg、gzip、kill、ls、mkdir、more、mount、rm、su、tar等。 /sbin
/usr/sbin 放置一些使用者安裝的系統管理的必備程式例如:dhcpd、httpd、imap、in.*d、inetd、lpd、named、netconfig、nmbd、samba、sendmail、squid、swap、tcpd、tcpdump等。 如果新裝的系統,執行一些很正常的諸如:shutdown,fdisk的命令時,悍然提示:bash:command not found。那麼 首先就要考慮root 的$PATH裡是否已經包含了這些環境變數。 可以檢視PATH,如果是:PATH=$PATH:$HOME/bin則需要新增成如下: PATH=$PATH:$HOME/bin:/sbin:/usr/bin:/usr/sbin