1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
linux 文件结构中,有一个很神奇的目录 —— /usr。之前一直没有怎么关注过它,反正程序都是安装在里边的,也没有什么值得追根溯源的东西。直到有一天 fedora 要简化整个文件系统体系,看到讨论才想到,usr 到底是什么的缩写呢,它又是怎么来的呢?讨论中,大部分观点认为: 1.usr 是 unix system resources 的缩写; 2.usr 是 user 的缩写; 3.usr 是 unix software resources 的缩写。 根据常识判断,是 user 缩写的可能性不大,因为和 /home 冲突了嘛。不过是 system resources 还是 software resources 的缩写还真不好说。特此查了好多东西,却发现竟然连 wikipedia 也模棱两可。/usr 是linux系统核心所在,包含了所有的共享文件。 它是 unix 系统中最重要的目录之一,涵盖了二进制文件,各种文档,各种头文件,x,还有各种库文件;还有诸多程序,例如 ftp,telnet 等等。 曾经的 /usr 还是用户的家目录,存放着各种用户文件 —— 现在已经被 /home 取代了(例如 /usr/someone 已经改为 /home/someone)。 现代的 /usr 只专门存放各种程序和数据,用户目录已经转移。虽然 /usr 名称未改,不过其含义已经从“用户目录”变成了“unix 系统资源”目录。值得注意的是,在一些 unix 系统上,仍然把 /usr/someone 当做用户家目录,如 Minix。 /usr 文件系统经常很大,因为所有程序安装在这里. /usr 里的所有文件一般来自Linux distribution;本地安装的程序和其他东西在/usr/local 下.这样可能在升级新版系统或新distribution时无须重新安装全部程序. 由于/usr中的文件不和特定的计算机相关,也不会在通常使用中修改,因此可以通过网络共享这个目录(文件系统),这样,当管理员安装了新的软件之后,所有共享这一文件系统的计算机均可以使用新的软件。 至此,真相大白。看来就像前一阵子的 /var/run 移到 /run 一样。 真的是不看不知道,一看吓一跳呀。原来 linux 几经进化,好多目录的诞生和用途已经产生了根本的变化。 /usr 目录结构 /usr/bin : 所有可执行文件,如 gcc,firefox 等(指不包含在 /***in 和 /bin 内的); /usr/include : 各种头文件,编译文件等时需要使用; /usr/include/’package-name’ : 程序特定的头文件; /usr/lib : 所以可执行文件所需要的库文件; /usr/local : 这里主要存放那些手动安装的软件,即 不是通过“新立得”或apt-get安装的软件 。 它和/usr目录具有相类似的目录结构 。让软件包管理器来管理/usr目录,而把自定义的脚本(scripts)放到/usr/local目录下面,我想这应该是个不错的主意。 /usr/X11R6 : x 系统的二进制文件,库文件,文档,字体等。它不等同于 /usr 的作用,只有 x 才能调用这些库文件等,其他程序不读取或者使用。因为 linux 没有原生图形界面,而且 linux 大部分情况下是 for server 的,所以图形界面没有意义;其中 X11R6 代表 version 11 release 6; /usr/X11R6/bin : x 的二进制文件,包含运行 x 的必须文件; /usr/X11R6/include : x 相关的头文件; /usr/X11R6/lib : x 库文件; /usr/X11R6/lib/modules : x 的模块,启动时加载。缺少 video4linux, DRI and GLX 和 输入输出设备 模块,将工作不正常; /usr/X11R6/lib/X11/fonts : x font server 的字体文件; /usr/doc : 文档。实际是 /usr/share/doc 的软链接; /usr/etc : 一个极少用到的配置文件存放地; /usr/games : 曾经包含游戏等文件,现在很少用到; /usr/info : 系统相关信息,是 /usr/share/info 的软链接; /usr/man : man 手册,已经移至 /usr/share/man; /usr/***in : 类似 /***in,root 可以执行。但此目录不包含在环境变量 $PATH 中,它包含的程序类似于 chroot, useradd, in.tftpd and pppconfig; /usr/share : 它包含了各种程序间的共享文件,如字体,图标,文档等。(/usr/local 对应的目录是 /usr/loca/share); /usr/share/doc : 类似应用程序的 man 手册。它包含程序的说明文件,默认配置文件等; /usr/share/info : 不常用,已经被 man 代替; /usr/share/man : app 的 manual; /usr/share/icons : 应用程序的图标等文件,分为 png,svg 等多种格式; /usr/share/fonts : 字体文件,系统范围内可使用,~/.fonts 仅当前用户可用; /usr/src : linux 内核的源码和说明文档等; /usr/src/linux : linux 源代码; /usr/src/linux/.config : 内核编译过程产生的文件;通常由命令 ‘make config’ , ‘make menuconfig’ 或 ‘make xconfig’ 执行后产生; /usr/src/linux/.depend, /usr/src/linux/.hdepend : ‘make dep’ 检测编译依赖时需要的文件,由 /usr/src/linux/.config 产生; /usr/src/linux/COPYING : GNU license; /usr/src/linux/Makefile : 编译内核所需的 Makefile; /usr/src/linux/Rules.make : 当有多个 Makefile 时,根据它的规则执行 make; /usr/tmp : 已经被众多发行版抛弃的临时文件夹。 |
|
相关推荐
1 个讨论
|
|
讲得挺不错,不过我没关心过这。
|
|
|
|
|
|
只有小组成员才能发言,加入小组>>
「含关键代码」基于AM3352/AM3354/AM3359的Linux开发案例分享
4892 浏览 0 评论
87409 浏览 0 评论
【高手问答】如何做到精通linux技术?资深工程师带你突破难点
4721 浏览 2 评论
3614 浏览 2 评论
解读Linux :先从创建一个文件夹用来存放jdk压缩文件开始
2481 浏览 0 评论
1997浏览 3评论
1283浏览 1评论
求解:aarch64交叉编译工具已经安装成功,环境变量已经配置,怎么将系统架构切换为ARM的架构
1341浏览 0评论
电脑和虚拟机可以互ping,电脑和开发板也可以互ping,但是虚拟机和开发板ping不通是什么原因
1233浏览 0评论
1173浏览 0评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-21 23:01 , Processed in 1.098758 second(s), Total 43, Slave 36 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号