1. 程式人生 > >/bin,/sbin,/usr/sbin,/usr/bin 目錄之簡單區別

/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

一般是指超級使用者指令主要放置一些系統管理的必備程式例如:cfdisk、dhcpcd、dump、e2fsck、fdisk、halt、ifconfig、ifup、 ifdown、init、insmod、lilo、lsmod、mke2fs、modprobe、quotacheck、reboot、rmmod、 runlevel、shutdown等。    /usr/bin 是你在後期安裝的一些軟體的執行指令碼。主要放置一些應用軟體工具的必備執行檔例如c++、g++、gcc、chdrv、diff、dig、du、eject、elm、free、gnome*、 gzip、htpasswd、kfm、ktop、last、less、locale、m4、make、man、mcopy、ncftp、 newaliases、nslookup passwd、quota、smb*、wget等。

    /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