概述
Linux和Windows系统目录结构对比
Windows是大家最常用的操作系统,但可能很多人都没有去研究过 Windows 系统盘(默认C盘)的目录结构,嘿嘿,其实我也不太了解。
但是,如果使用 Linux 系统,我们就很有必要认真了解它的系统目录结构,本文将拿 Linux 和 Windows 的系统目录进行简单的对比,从而得出两个系统的目录结构的异同,与我们熟悉的 Windows 作对比,将有助于我们更快地学习 Linux。
目录
- Linux和Windows系统目录结构对比
- 一、访问硬盘分区的方式
- 二、系统目录的对比
- Windows 的系统目录
- Linux 的系统目录
- Linux 和 Windows 相似之处
一、访问硬盘分区的方式
在对比系统目录前,我们先来对比一下 Windows 和 Linux 是如何访问硬盘数据的。
在 Windows 中,假如我把硬盘的空间分成3个区,每个区都有一个盘符,分别是C盘、D盘、E盘(其实还有一个分区给了 Linux 系统(100G),但由于文件系统的原因,在这里无法访问)
而在 Linux 中(以Ubuntu为例),同样可以访问硬盘的所有分区,但是它并未有给这些分区分配盘符,分区以设备文件的形式显示在 /dev 目录下,并且 Ubuntu 自动将分区挂载到了 /media 目录(Linux 的磁盘分区必须挂载才能访问数据)【挂载的概念不懂的话可以自行百度】。
可以看到下图的”计算机“其实就是 Linux 的系统目录,也就是根目录,路径名:/ 。
由上面的例子我们可以看出,Windows 将硬盘的空间依据分区的不同而分成了不同的盘符,每个盘符相对独立,而 Linux 的分区全部在 /dev 下体现,访问它们也需要先进行挂载,所有可以访问的文件都是从根目录开始的。
由此,我们可以将 Linux 的文件系统当做一棵树,树的根就是 / (根目录),其他所有的目录是这棵树的“枝干”,而目录里的文件则是“树叶”;在Windows的文件系统里,就不止一颗“树”,电脑有多少个磁盘分区,系统就有多少颗“树”,前提是这个分区的文件系统能被 Windows 识别到。
可能有人要问了,Windows 系统将硬盘的所有空间分配给了三颗“树”,也就是三个磁盘,如果 C 盘大小为80G,那么第一棵“树”能装下的“树叶”大小肯定也得是80G,按照上面的逻辑,Linux 系统只有一个根目录,,是不是 Linux 的根目录大小是所有分区容量的总和呢?显然,这是不对滴,从下图就可以得出答案。
我们可以使用 df -h 命令查看文件系统的挂载情况:
原来,在 Linux 中,文件系统都是通过挂载的方式被使用的,就连根目录都是通过 /dev下的磁盘文件挂载的,所以, Linux 的根目录与 Windows 的磁盘目录还是有本质区别的,虽然它们的目录都是树形结构,但 Windows 的“树”是靠树干的养料养大的,而 Linux 的”树“,则像一颗人造树,树干、枝干、都是人为拼接在一起,各自互相关联却又相互独立。
二、系统目录的对比
Windows 的系统目录
Windows 的系统盘目录相对比较简洁,同时我们大多数人都几乎不需要了解系统盘目录的功能,而且也不敢乱改动这些文件,下图中透明的文件夹为隐藏文件夹。
1. Program Files 存放系统软件,平时软件安装时,默认的安装路径,个人不建议将应用软件装到系统盘。
2. Program File (x86) 32位软件,与 Program File 类似,只是其主要存放32位的软件。
3. Windows 系统级目录,该目录是 Windows 操作系统的主要文件存放的目录。
4. ProgramData 软件数据,存放 Windows系统中软件的系统级配置文件。
5. 用户/User 普通账户的目录,普通账户的所有文件,包括桌面、应用数据、下载等等。
Linux 的系统目录
/ 根目录,系统的最顶层目录
/bin 用户二进制文件,存放二进制可执行文件,比如一些系统命令和用户的可执行文件
/boot 引导程序及文件,包含内核的 initrd、vmlinux、grub文件
/dev 设备文件,包含系统中所以的外部设备
/etc 配置文件,包含系统和程序中要用到的配置文件
/home 用户目录,存放普通用户的主目录,目录名为用户名
/lib 库目录,包含/bin和/sbin中文件所依赖的共享库文件
/lost+found 文件系统损坏后找回的文件所存放的目录,一般为空
/mnt 挂载目录,用于临时挂载
/media 可移动媒体挂载目录,用于临时挂载可移动设备,如U盘、光盘等
/opt 可选程序,可以用来存放附加的用户程序
/proc 进程信息目录,包含系统进程的信息和一些系统信息
/root 超级用户目录,root用户的主目录,需要root权限访问
/sbin 系统二进制文件,和/bin类似,但/sbin存放的命令基本是需要root权限的系统管理命令
/srv 服务数据,包含服务启动时需要的数据
/sys 系统配置,包含系统设备的配置信息,同时可以修改这些信息实现对系统设备配置的修改
/tmp 临时文件,存放系统和用户产生的临时文件,系统重启会清空数据
/usr 用户程序,包含用户程序及程序所需的文件,如/usr/bin、/usr/lib等
/var 变量文件,包含系统日志、系统临时文件、数据库文件等
Linux 和 Windows 相似之处
Linux 的系统目录和 Windows 的系统目录差别很大,但 实它们相似点也不少。
1. /bin +/lib + /sbin + /usr 和 C:Program Files + C:Program Files (x86)
这分别是 Linux 和 Windows 的程序文件存放的目录,Linux 中每个应用程序的 bin 文件和共享库是分开存放的,而且用户程序和系统程序也是分开的,Windows 则不同,一个程序的所有文件基本在同一个目录下(除了配置及小部分输出文件),并且系统应用和用户应用也没有严格的区分。
2. /boot 和 C:WindowsBoot
这个对应关系我并不是很确定,但它们之间肯定是有相似之处。
3. /etc 和 C:WindowsSystem32config + C:ProgramData
这是两个系统的配置文件存放目录,C:WindowsSystem32config 存放的是注册表配置信息,这些配置都是系统配置,而程序运行可能用到的配置存放在C:ProgramData目录下。
4. /home 和 C:User
Ubuntu 的 /home /xxx:
Win10 的 C:Userxxx :
对比上面两张图,可以发现 Ubuntu 和 Windows 的用户目录十分类似,都是普通用户的主目录。
6. /lib/modules 和 C:WindowsSystem32drivers
这是两个系统的驱动存放目录
最后
以上就是安详微笑为你收集整理的Linux和Windows系统目录结构对比Linux和Windows系统目录结构对比的全部内容,希望文章能够帮你解决Linux和Windows系统目录结构对比Linux和Windows系统目录结构对比所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复