首先注意 usr 指 Unix System Resource,而不是user
/usr/bin
系统预装的一些可执行程序,随系统升级会改变
/usr/local/bin
用户安装的可执行程序,不受系统升级影响,用户编译安装软件时,一般放到/usr/local目录下
如果两个目录下有相同的可执行程序,谁优先执行会受到PATH环境变量的影响,举个栗子:
echo $PATH
查看当前 PATH 环境变量
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/.local/bin:/root/bin:/usr/local/src/nodejs/bin:/usr/local/git/bin:/usr/bin/git/bin
这里 /usr/local/git/bin 优先于 /usr/bin/git/bin
/bin 存放所有用户皆可用的系统程序,系统启动或者系统修复时可用(在没有挂载 /usr 目录时就可以使用)
/sbin 存放超级用户才能使用的系统程序
/usr/bin 存放所有用户都可用的应用程序
/usr/sbin 存放超级用户才能使用的应用程序
/usr/local/bin 存放所有用户都可用的与本地机器无关的程序
/usr/local/sbin 存放超级用户才能使用的与本地机器无关的程序