Da'sBlog

/bin,/sbin,/usr/bin,/usr/sbin区别

/bin,/sbin,/usr/bin,/usr/sbin区别

/ : this is root directory root 用户根目录

/bin : commandsin this dir are all system installed user commands 系统的一些指令

/sbin: commands in this dir are all system installedsuper user commands
超级用户指令系统管理命令,这里存放的是系统管理员使用的管理程序

/usr/bin: usercommands for applications 后期安装的一些软件的运行脚本

/usr/sbin:super user commands for applications 超级用户的一些管理程序

/usr/X11R6/bin: X application user commands

/usr/X11R6/sbin: X application super usercommands

Linux中的某些重要的目录:
•主目录:/root、/home/username
•用户可执行文件:/bin、/usr/bin、/usr/local/bin
•系统可执行文件:/sbin、/usr/sbin、/usr/local/sbin
•其他挂载点:/media、/mnt
•配置:/etc
•临时文件:/tmp
•内核和Bootloader:/boot
•服务器数据:/var、/srv
•系统信息:/proc、/sys
•共享库:/lib、/usr/lib、/usr/local/lib

每个用户都拥有一个主目录。所有用户的个人文件(配置、数据甚至应用程序)都放在其中。
根的主目录为/root。大多数非根主目录包含在/home 树中,通常以用户命名。
重要的二进制位于 /bin(用户二进制)以及 /sbin(系统二进制)中。
不重要的二进制(如图形环境或Office 工具)安装在/usr/bin 和 /usr/sbin中。进行这种分隔是为了尽可能地缩小根分区。使用源代码编译的软件通常位于 /usr/local/bin 和/usr/local/sbin中。

传统上的常规做法是:

系统级的组件放在/bin、/lib;

根用户才能访问的放在/sbin;

系统repository提供的应用程序放在/usr/bin、/usr/lib;

用户自己编译的放在/usr/local/XXX。

现在有一些变化,在大约两年前,大量Linux系统都将/bin、/lib弄成/usr/bin、/usr/lib的符号链接。

此外,不同系统还会有很多的细微区别,比如Redhat系喜欢把32位的库放在/lib、/usr/lib,64位的库放在/lib64、/usr/

lib64,而Debian系喜欢把平台相关的那层名字放在/lib、/usr/lib的子目录里,比如/usr/lib/x86_64-linux-gnu/

。然后,各种配置文件的文件名、路径也会有区别,比如ssh服务器的配置文件可能叫/etc/ssh/sshd.conf,也可能叫/etc/ssh/sshd_config。。。

分成三块的最早的渊源,据说是这样的:

Unix开发者的机器的硬盘不够了,新加了一块,挂在/usr上;

又TM不够了,再加一块,挂在/usr/local上;

不知怎么,就变成规范了。。。。

坚持原创技术分享,您的支持将鼓励我继续创作!