/usr
[linux目录 /usr]usr是Unix Software Resource的缩写, 也就是Unix放置操作系统软件资源的目录,而不用于用户数据的存放;所有系统默认的软件都会放置到/usr, 系统安装完时,这个目录会占用最多的硬盘容量
各种 /bin
[关于Linux各种bin和sbin目录]bin和sbin一般都是成对出现的,如/bin和/sbin,/usr/bin和/usr/sbin,/usr/local/bin和/usr/local/sbin
/bin 是操作系统的最最基础的指令。bin为binary的简写主要放置一些系统的必备执行档例如:cat、cp、chmod、df、kill、ls、mkdir等
/sbin 一般是指超级用户指令。主要放置一些系统管理的必备程式,例如:mount、route、ping、halt、ifconfig、shutdown等
/usr/bin 放置一些后期安装的、拓展系统操作的可执行文件,如last、less、locale、make、man、sftp、nslookup、passwd、quota、wget等
/usr/sbin 放置一些后期安装的系统管理的应用可执行文件,如:httpd、fdisk、samba、sendmail、squid、swap、tcpd、tcpdump、sysctl等
对比windows
/usr
系统目录,可以理解为 C:/Windows/
/usr/lib
系统库目录,可理解为 C:/Windows/System32
/usr/local
用户级的程序目录,可以理解为 C:/Progrem Files/ 。用户编译源码安装的应用程序默认会安装到这个目录下,而用户解压归档文件安装软件也应当解压到该目录下
/opt
用户级的程序目录,可以理解为 D:/Software,用于放置用户想体验、尝试的第三方应用,当你不需要时,直接rm -rf 掉即可。在硬盘容量不够时,也可将 /opt 单独挂载到其他磁盘上使用
源码存放路径
/usr/src
系统级的源码目录
/usr/local/src
用户级的源码目录
参考:
https://cloud.tencent.com/developer/article/1538041
linux 软件安装
Linux下的软件安装方式本质上可分为2种:source和binary archive
- source。源码编译。虽然相对于二进制软件包,配置和编译源码更繁琐,但是它的可移植性却好得多,针对不同的体系结构,软件开发者往往仅需发布同一份源码包,不同的最终用户经过编译就可以正确运行
$ tar zxvf XXXX.tar.gz (or tar jxvf XXXX.tar.bz2)
$ cd XXXX
$ ./configure
$ make
# make install ##安装
$ make clean ##安装完成后用来清理临时文件
$ake uninstall ##用来卸载软件
-
binary archive。二进制安装
binary archive是应用程序本体的归档包,打包归档了可执行文件、配置、所依赖资源等。只要对该归档包进行解包就完成了应用程序的安装,例如我们解压go1.19.1.linux-amd64.tar.gz这个归档包到/usr/local
就完成了golang的安装
而像macos还提供binary installer,后缀为.pkg,它是应用程序的安装程序,是一个安装入口,类似windows的.msi文件。
像rpm、yum应该也是拉取binary archive
安装路径
通常来说linux安装应用程序的路径在/usr/local
目录下,正如windows的Program File
or Program Files (x86)
。例如golang环境默认就安装在/usr/local/go
目录下