概述
- 在linux系統(tǒng)當(dāng)中,對(duì)于可執(zhí)行文件或者說(shuō)是可執(zhí)行命令,通常可以存放在/bin,/sbin,/usr/bin,/usr/local/bin,usr/sbin等目錄,而這些目錄存放的可執(zhí)行命令存在哪些區(qū)別呢?或者說(shuō)某個(gè)命令存放在哪個(gè)文件夾存在何種規(guī)范呢?具體如下分析。
系統(tǒng)級(jí)別
/bin
- 存放系統(tǒng)操作的最基本的,必須的執(zhí)行命令,即對(duì)所有用戶(普通用戶和管理員)都可能需要用到的命令,如下為mac系統(tǒng)下的bin目錄,標(biāo)準(zhǔn)的Linux服務(wù)器包含更多:
xyzdeMacBook-Pro:bin xyz ls [ cp df hostname link mv rm stty unlink bash csh echo kill ln pax rmdir sync wait4path cat date ed ksh ls ps sh tcsh zsh chmod dd expr launchctl mkdir pwd sleep test
/sbin
- 存放系統(tǒng)管理的命令,即一般為管理員用到而普通用戶基本不會(huì)用到的命令,如ping, ifconfig等網(wǎng)絡(luò)相關(guān)的命令,如下:
xyzdeMacBook-Pro:sbin xyz ls apfs_hfs_convert fsck_hfs kextunload mount_exfat newfs_apfs quotacheck autodiskmount fsck_msdos launchd mount_fdesc newfs_exfat reboot disklabel fsck_udf md5 mount_ftp newfs_hfs route dmesg fstyp mknod mount_hfs newfs_msdos rtsol dynamic_pager fstyp_hfs mount mount_msdos newfs_udf shutdown emond fstyp_msdos mount_acfs mount_nfs nfsd umount fibreconfig fstyp_ntfs mount_afp mount_ntfs nfsiod fsck fstyp_udf mount_apfs mount_smbfs nologin fsck_apfs halt mount_cd9660 mount_udf pfctl fsck_cs ifconfig mount_cddafs mount_webdav ping fsck_exfat kextload mount_devfs mpioutil ping6
用戶級(jí)別
/usr/bin
- 存放普通用戶日常使用和工作所需的一些命令和軟件,但不是必須的,如vi,wc,curl等,編程語(yǔ)言命令如Python,JAVA,jstat等,即系統(tǒng)預(yù)裝的相關(guān)軟件時(shí)會(huì)將該軟件的可執(zhí)行文件添加到該目錄中。
/usr/local/bin
- 與/usr/bin的區(qū)別是,/usr/bin下面的命令通常是系統(tǒng)預(yù)裝的命令,會(huì)隨著系統(tǒng)的升級(jí)而改變。而/usr/local/bin通常用于存放用戶下載安裝的軟件或者自己編寫(xiě)的可執(zhí)行命令,這里的同名命令不會(huì)被系統(tǒng)升級(jí)而覆蓋。如MySQL,redis-cli,mvn等,而通常來(lái)說(shuō),這些軟件是通過(guò)軟連接的方式來(lái)連接到實(shí)際的可執(zhí)行命令的地址,一般是按照在/usr/local目錄下:
lrwxr-xr-x 1 xyz admin 51B 8 9 2018 mysql -> /usr/local/mysql-5.7.23-macos10.13-x86_64/bin/mysql lrwxr-xr-x 1 xyz admin 68B 8 13 2018 mysql.server -> /usr/local/mysql-5.7.23-macos10.13-x86_64/support-files/mysql.server lrwxr-xr-x 1 xyz admin 51B 8 12 2018 mysql_config -> ../Cellar/mysql-connector-c/6.1.11/bin/mysql_config lrwxr-xr-x 1 xyz admin 55B 8 28 2018 mysqldump -> /usr/local/mysql-5.7.23-macos10.13-x86_64/bin/mysqldump
/usr/sbin
- 存放管理員這個(gè)用戶可能用到但不是必須的應(yīng)用程序命令。






