Linux目录的 /usr/bin 和 /usr/local/bin 的区别
usr 是指 Unix System Resource,而不是User
usr
是 Unix System Resource,而不是User
-
/usr/bin
下面的都是系统预装的可执行程序,系统升级有可能会被覆盖. -
/usr/local/bin
目录是给用户放置自己的可执行程序.,不会被系统升级而覆盖同名文件。
Linux目录的 /bin 和 /sbin 和 /usr/bin 和 /usr/sbin 和 /usr/local/bin 和 /usr/local/sbin
/bin
/sbin
/usr/bin
/usr/sbin
/usr/local/bin
/usr/local/sbin
在Linux系统中,不同的目录用于存放不同类型的文件,特别是可执行文件。/bin
、/sbin
、/usr/bin
、/usr/sbin
、/usr/local/bin
和 /usr/local/sbin
这些都是存放可执行文件的目录,但它们各自有特定的用途。
-
/bin:
- 这个目录存放着最经常使用的命令,这些命令在系统的任何状态下都是可用的,包括单用户模式和救援模式。
- 常见的命令有:
ls
、cp
、mv
、rm
等。
-
/sbin:
- 这个目录存放的是系统管理员使用的系统管理程序。
- 常见的命令有:
fdisk
、ifconfig
、reboot
、shutdown
等(注意:在现代的Linux发行版中,很多这些命令已经被移到其他位置,如/usr/sbin
或/bin
,并使用符号链接)。
-
/usr/bin:
- 这个目录是系统用户的常用命令的存放地。它不像
/bin
那样在系统启动或紧急情况下也需要用到,但它包含了大多数用户日常使用的命令。 - 常见的命令有:
awk
、less
、wget
、vim
等。
- 这个目录是系统用户的常用命令的存放地。它不像
-
/usr/sbin:
- 这个目录存放的是非系统管理员也可能需要使用的系统管理程序。尽管这些程序通常是由系统管理员使用的,但某些情况下普通用户也可能需要它们。
- 常见的命令有:
cron
、dhcpd
、named
、sshd
等服务器的守护进程。
-
/usr/local/bin:
- 这个目录通常用于存放由系统管理员安装的本地程序。这些程序不是Linux发行版自带的,而是后来添加的。
- 当从源码编译并安装程序时,很多程序默认会安装到这个目录。
-
/usr/local/sbin:
- 这个目录与
/usr/local/bin
类似,但它存放的是系统管理员使用的本地系统管理程序。 - 这也是一个用于存放非标准或第三方系统管理工具的目录。
- 这个目录与
总的来说,这些目录提供了一种组织和分类Linux系统中可执行文件的方式。不同的目录用于存放不同类型的程序,从而使得系统更加整洁和易于管理。
Linux目录的 /bin 和 /sbin 和 /usr/bin 和 /usr/sbin 和 /usr/local/bin 和 /usr/local/sbin 的区别如下:
-
/bin:存放超级用户和普通用户都能使用的基本系统命令程序。它包含了一些最基本的命令,如ls、cp、mv等。/bin是一个目录,其中的命令程序可以被所有用户执行。
-
/sbin:存放只有超级用户能使用的命令程序。它包含了一些系统管理和维护的命令,如ifconfig、fdisk等。/sbin也是一个目录,其中的命令程序只能被超级用户执行。
-
/usr/bin:存放普通用户能使用的命令程序。它包含了一些非系统核心的命令,如python、gcc等。/usr/bin也是一个目录,其中的命令程序可以被所有用户执行。
-
/usr/sbin:存放只有超级用户能使用的命令程序。它包含了一些非系统核心的系统管理和维护的命令,如iptables、tcpdump等。/usr/sbin也是一个目录,其中的命令程序只能被超级用户执行。
-
/usr/local/bin:存放第三方程序的脚本命令,超级用户和普通用户都能使用。这个目录是用来存放用户自己安装的软件的可执行文件。/usr/local/bin也是一个目录,其中的命令程序可以被所有用户执行。
-
/usr/local/sbin:存放第三方程序的脚本命令,只有超级用户能使用。这个目录是用来存放用户自己安装的软件的系统管理和维护的命令。/usr/local/sbin也是一个目录,其中的命令程序只能被超级用户执行。
在Linux操作系统中,文件系统的布局遵循一定的标准,这些标准定义了不同类型的文件和目录应该存放在哪里。/bin
、/sbin
、/usr/bin
、/usr/sbin
、/usr/local/bin
和 /usr/local/sbin
这些目录都用于存放可执行文件,但它们各自有特定的用途和含义。
-
/bin:
- 这个目录存放的是在单用户模式下还能够运行的命令。也就是说,这些命令在系统启动和修复过程中都是必需的。
- 常见的命令包括:
ls
、cp
、mv
、ps
、cat
等。
-
/sbin:
- 这个目录存放的是系统管理员(root)使用的系统管理必备的程序。这些程序通常用于系统维护、系统配置和启动过程。
- 常见的命令包括:
init
(系统的初始化程序)、reboot
、shutdown
、fsck
等。
-
/usr/bin:
- 这个目录是用户命令的主要存放地。它包含了大多数用户日常使用的命令和程序。
- 与
/bin
不同,/usr/bin
中的命令通常不是系统启动或恢复过程所必需的。 - 常见的命令包括:
gcc
、perl
、python
、ruby
、bash
等。
-
/usr/sbin:
- 这个目录存放的是系统管理员使用的系统管理程序,但它们通常不是系统启动所必需的。
- 这些程序包括守护进程、系统服务和网络服务等。
- 常见的命令包括:
sshd
(SSH守护进程)、apachectl
(Apache HTTP服务器的控制程序)等。
-
/usr/local/bin:
- 这个目录用于存放本地管理员安装的程序。这些程序不是Linux发行版自带的,而是由系统管理员后来添加的。
- 当从源代码编译并安装程序时,如果不指定其他位置,很多程序默认会安装到这个目录。
-
/usr/local/sbin:
- 类似于
/usr/local/bin
,这个目录用于存放本地管理员安装的系统管理程序和服务。 - 这些程序通常是第三方软件或服务,不是标准Linux发行版的一部分。
- 类似于
总的来说,这些目录提供了一种清晰的方式来组织和分类Linux系统中的可执行文件。它们帮助保持系统的整洁性,使得用户和管理员能够更容易地找到和使用所需的命令和程序。此外,这种布局还有助于在不同的Linux系统之间保持一致性,从而简化了软件开发、部署和维护的过程。
这些路径在Unix和Linux系统中是常见的,它们代表不同的二进制(可执行)文件存储位置。下面我会简要解释每一个路径:
-
/bin:
- 这是系统启动时需要的命令(二进制文件)的主要存放位置。
- 通常包含如
ls
、cp
、mv
等基本的命令。 - 大多数系统都需要的命令存放在这里。
-
/sbin:
- 存放系统管理(系统管理员)用的系统管理程序。
- 例如
ifconfig
(网络配置,但在许多新版本的Linux系统中,它已经被ip
命令所取代)、shutdown
、reboot
等。
-
/usr/bin:
- 是系统命令的另一个重要存放位置。
- 存放了大多数用户都可以使用的命令或程序。
- 这些命令或程序在系统启动后才会被用到,不像
/bin
中的那样在系统启动早期就被使用。
-
/usr/sbin:
- 存放了其他系统管理用的命令或程序。
- 这些程序通常不是普通用户经常使用的,而是系统管理员在维护系统时使用的。
-
/usr/local/bin:
- 存放了由本地用户自己编译安装的软件。
- 当用户从源码编译并安装一个程序时,它通常会被安装到这个位置(除非用户指定了其他位置)。
-
/usr/local/sbin:
- 类似于
/usr/local/bin
,但这里存放的是系统管理相关的程序。 - 当用户从源码编译并安装一个系统管理相关的程序时,它可能会被安装到这个位置。
- 类似于
这些路径通常都在系统的PATH
环境变量中,这样用户就可以直接在任何位置执行这些命令,而不需要指定它们的完整路径。
在Linux系统中,不同的目录用于存放不同类型的二进制可执行文件,这有助于组织和管理系统文件和程序。下面是对您提到的各个目录的详细解释:
-
/bin:
- 这个目录包含了系统最基本的命令和程序,这些命令在系统启动时就可用,并且对于所有用户来说都是可用的。
- 例如,基本的shell(通常是
sh
或dash
),以及常用的命令如ls
、cp
、mv
、cat
等。 - 这个目录中的文件通常是由系统管理员在安装系统时安装的,而不是由普通用户安装的。
-
/sbin:
/sbin
目录通常包含了系统管理员用于管理系统的命令和程序。- 这些命令通常只对系统管理员(root用户)可用,因为它们涉及到系统的配置、启动、停止等高级操作。
- 例如,
reboot
(重启系统)、halt
(停止系统)、ifconfig
(配置网络接口)等命令通常位于/sbin
目录中。
-
/usr/bin:
/usr/bin
目录包含了系统正常运行所需的大部分命令和程序。- 这些命令和程序是在系统安装后由系统管理员或用户安装的,用于提供系统功能或执行日常任务。
- 与
/bin
目录相比,/usr/bin
目录中的命令和程序通常不是系统启动所必需的,而是在系统运行期间由用户或系统服务调用的。
-
/usr/sbin:
/usr/sbin
目录类似于/sbin
,但它是为系统管理员提供的额外命令和程序的存放位置。- 这些命令和程序通常用于管理系统的特定方面,如网络配置、系统服务管理等。
- 与
/sbin
中的命令相比,/usr/sbin
中的命令可能不是系统启动所必需的,但它们在系统运行时仍然是非常重要的。
-
/usr/local/bin:
/usr/local/bin
目录用于存放由本地管理员或用户编译和安装的程序。- 这个目录为本地软件提供了一个标准的位置,使得所有用户都可以在不指定完整路径的情况下运行这些程序。
- 通常,当从源代码编译和安装软件时,软件的可执行文件会被安装到这个目录。
-
/usr/local/sbin:
/usr/local/sbin
目录类似于/usr/local/bin
,但它是为系统管理员提供的额外命令和程序的存放位置。- 这些命令和程序通常只由系统管理员(root用户)使用,用于管理本地安装的软件或服务。
这些目录通常都包含在系统的PATH
环境变量中,这样用户就可以直接在任何位置执行这些命令,而不需要指定它们的完整路径。了解这些目录的用途和区别有助于更有效地管理Linux系统中的文件和程序。
在Linux系统中,目录/bin
、/sbin
、/usr/bin
、/usr/sbin
、/usr/local/bin
和/usr/local/sbin
都是用于存放可执行文件的,但它们各自有着特定的用途和重要性。下面是对这些目录的详细解释:
1. /bin
- 用途:这个目录包含了系统最基本的命令和程序,这些命令在系统启动时就可用。
- 重要性:这些命令是系统正常运行所必需的,因为它们是系统启动时所需要的,对于所有用户来说都是可用的。
- 示例:
ls
(列出目录内容)、cp
(复制文件)、mkdir
(创建目录)等。
2. /sbin
- 用途:
/sbin
目录通常包含了系统管理员用于管理系统的命令和程序。 - 重要性:这些命令通常只对系统管理员(root用户)可用,因为它们涉及到系统的配置、启动、停止等高级操作。
- 示例:
reboot
(重启系统)、halt
(停止系统)、ifconfig
(配置网络接口)等。
3. /usr/bin
- 用途:
/usr/bin
目录包含了系统正常运行所需的大部分命令和程序。 - 重要性:这些命令和程序是系统日常运行和大多数用户交互的基础。
- 示例:
gcc
(编译器)、vim
(文本编辑器)、man
(手册页查看器)等。
4. /usr/sbin
- 用途:
/usr/sbin
目录类似于/sbin
,但它是为系统管理员提供的额外命令和程序的存放位置。 - 重要性:这些命令和程序通常用于管理系统的特定方面,如网络配置、系统服务管理等。
- 示例:
sshd
(SSH服务器守护程序)、apachectl
(Apache服务器控制工具)等。
5. /usr/local/bin
- 用途:
/usr/local/bin
目录用于存放由本地管理员或用户编译和安装的程序。 - 重要性:这个目录为本地软件提供了一个标准的位置,使得所有用户都可以在不指定完整路径的情况下运行这些程序。
- 示例:用户从源代码编译和安装的自定义程序。
6. /usr/local/sbin
- 用途:
/usr/local/sbin
目录类似于/usr/local/bin
,但它是为系统管理员提供的额外命令和程序的存放位置。 - 重要性:这些命令和程序通常只由系统管理员(root用户)使用,用于管理本地安装的软件或服务。
- 示例:本地安装的服务器守护程序或管理工具。
这些目录通常都包含在系统的PATH
环境变量中,这样用户就可以直接在任何位置执行这些命令,而不需要指定它们的完整路径。了解这些目录的用途和区别有助于更有效地管理Linux系统中的文件和程序。在Linux系统中,保持这些目录的整洁和组织对于系统的稳定性和可维护性至关重要。
Linux目录的 /sbin 和/bin 和
/sbin
/sbin
: 存放超级用户才能使用的系统程序,即基本的系统命令,如:sreboot等。
/bin
/bin
: 存放所有用户皆可用的系统程序,即普通的基本命令,如:touch ls等。
Linux目录的 /usr/sbin 和 /usr/bin
usr 是指 Unix System Resource,而不是User
usr
是 Unix System Resource,而不是User
/usr/sbin
/usr/sbin
: 存放超级用户才能使用的应用程序 ,一般是与服务器软件程序命令相关的,如:dhcpd、 httpd、samba等。root权限下的命令属于基本的系统命令,如shutdown,reboot,用于启动系统,修复系统;
/usr/bin
/usr/bin
: 存放所有用户都可用的应用程序,一般是已安装软件的运行脚本,如:free、make、wget等。系统预装的可执行程序,系统升级有可能会被覆盖.
Linux目录的 /usr/local/sbin 和 /usr/local/bin
usr 是指 Unix System Resource,而不是User
usr
是 Unix System Resource,而不是User
-
/usr/bin
下面的都是系统预装的可执行程序,系统升级有可能会被覆盖. -
/usr/local/bin
目录是给用户放置自己的可执行程序.,不会被系统升级而覆盖同名文件。
/usr/local/sbin
/usr/local/sbin
: 存放超级用户才能使用的第三方软件,如nginx
/usr/local/bin
/usr/local/bin
: 存放所有用户都可用的第三方软件程序,如mysql
是给用户放置自己的可执行程序.,不会被系统升级而覆盖同名文件