一、简介

Windows是大家最常用的操作系统,但可能很多人都没有去研究过 Windows 系统盘(默认C盘)的目录结构。如果使用 Linux 系统,我们就很有必要认真了解它的系统目录结构,本文将拿 Linux 和 Windows 的系统目录进行简单的对比,从而得出两个系统的目录结构的异同,与我们熟悉的 Windows 作对比,将有助于我们更快地学习 Linux。

二、访问硬盘分区的方式

在对比系统目录前,我们先来对比一下 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 的”树“,则像一颗人造树,树干、枝干、都是人为拼接在一起,各自互相关联却又相互独立。

二、系统目录的对比

1、Windows 的系统目录

Windows 的系统盘目录相对比较简洁,同时我们大多数人都几乎不需要了解系统盘目录的功能,而且也不敢乱改动这些文件,下图中透明的文件夹为隐藏文件夹。

1. Program Files 存放系统软件,平时软件安装时,默认的安装路径,个人不建议将应用软件装到系统盘。
2. Program File (x86) 32位软件,与 Program File 类似,只是其主要存放32位的软件。
3. Windows  系统级目录,该目录是 Windows 操作系统的主要文件存放的目录。
4. ProgramData 软件数据,存放 Windows系统中软件的系统级配置文件。
5. 用户/User 普通账户的目录,普通账户的所有文件,包括桌面、应用数据、下载等等。

2、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  变量文件,包含系统日志、系统临时文件、数据库文件等

3、Linux 和 Windows 相似之处

Linux 的系统目录和 Windows 的系统目录差别很大,但是实际上它们相似点也不少。

1. /bin +/lib + /sbin + /usr 和 C:\Program Files + C:\Program Files (x86)

这分别是 Linux 和 Windows 的程序文件存放的目录,Linux 中每个应用程序的 bin 文件和共享库是分开存放的,而且用户程序和系统程序也是分开的,Windows 则不同,一个程序的所有文件基本在同一个目录下(除了配置及小部分输出文件),并且系统应用和用户应用也没有严格的区分。

2. /etc 和 C:\Windows\System32\config + C:\ProgramData

这是两个系统的配置文件存放目录,C:\Windows\System32\config 存放的是注册表配置信息,这些配置都是系统配置,而程序运行可能用到的配置存放在C:\ProgramData目录下。

3. /home 和 C:\User

Ubuntu 的 /home /xxx:

Win10 的 C:\User\xxx :

对比上面两张图,可以发现 Ubuntu 和 Windows 的用户目录十分类似,都是普通用户的主目录。

4. /lib/modules 和 C:\Windows\System32\drivers

这是两个系统的驱动存放目录

Linux和Windows系统目录结构对比相关推荐

  1. Linux下文件系统目录结构

    Linux 文件系统目录结构简介 对于Linux来讲它的树型结构与Windows不同,Windows可以有多个分区,每个分区都有根,但Linux 只有一个根,其他的所有文件.目录或硬盘分区.软盘.光盘 ...

  2. linux根文件系统目录结构

    一.介绍 linux根文件系统也就是我们平时所说的rootfs,所有的文件都要在文件系统下才能被识别,包括所有的配置文件,这里介绍一下根文件系统目录结构 二.总统结构 /bin:linux的常用命令 ...

  3. Linux入门笔记——系统目录结构

    目录 评论 / 根目录,万物起源. /bin 包含系统启动和运行所必须的二进制程序. /boot 包含 Linux 内核,最初的 RAM 磁盘映像(系统启动时,由驱动程序所需),和 启动加载程序. 有 ...

  4. Linux/Unix操作系统目录结构的来历

    [IT168 资讯] Unix(包含Linux)的初学者,常常会很困惑,不明白目录结构的含义何在. 举例来说,根目录下面有一个子目录/bin,用于存放二进制程序.但是,/usr子目录下面还有/usr/ ...

  5. Linux 根文件系统目录结构与功能,4.Linux根文件系统和目录结构及bash特性

    4.1Linux目录结构和根文件系统全面讲解 Linux文件系统: Linux:glibc 程序编译方式: 动态链接 静态编译 进程的类型: 终端:硬件设备, 关联一个用户接口 与终端相关:通过终端启 ...

  6. [转]Linux和Windows平台软件对比表

    转自:http://www.ringkee.com/freedom/software.htm Description of the program, executed task Windows Lin ...

  7. 学习一下windows系统的的目录结构,对比一下Linux系统的目录结构

    Windows系统目录结构 Windows系统目录 ├-WINDOWS │ ├-system32(存放Windows的系统文件和硬件驱动程序) │ │ ├-config(用户配置信息和密码信息) │ ...

  8. 【Linux系统】第3节 Linux系统目录结构、目录作用及文件系统分类

    目录 1 初识操作系统 2 目录结构 2.1 Linux与Windows目录结构的差异 2.2 Linux的目录结构 3 常用命令 4 主要目录/文件夹功能 4.1 特殊目录 4.2 系统启动必须类 ...

  9. 第3节 Kali Linux系统目录结构及文件属性

    目录 1 目录结构 1.1 Linux与Windows目录结构的差异 1.2 Linux的目录结构 2 主要文件夹功能 2.1 特殊目录 2.2 系统启动必须类 2.3 指令集合类 2.4 外部文件管 ...

最新文章

  1. android 跳转到应用市场
  2. The Ultimate Guide To iPhone Resolutions
  3. 背包问题 输出方案、输出字典序最小方案、可行方案数、最优方案总数
  4. 掌握可视化卷积神经网络模型,带你畅游图像识别技术领域
  5. SCVMM2008R2学习(八),硬件配置文件
  6. Uber 开源 Piranha,可自动删除过时代码
  7. 代码注释规范-google版本
  8. IOS 委托和协议区别和联系 (-)
  9. 全面剖析支付宝服务窗功能二次开发
  10. oracle按时间点还原数据
  11. python主从_python—mariadb自动部署主从
  12. 《jQuery、jQuery UI及jQuery Mobile技巧与示例》——7.4 示例:使用按钮集装饰单选框...
  13. Python进阶(十)多进程multiprocessing和subprocess模块
  14. 数据结构与算法python语言描述第三章课后答案_《数据结构与算法Python语言描述》习题第二章第三题(python版)...
  15. 计算机c盘内部图片,C盘爆满?教你如何释放系统盘空间,瞬间多出10个G!
  16. mysql主从配置详解_MySQL主从配置详解
  17. 防止javascript脚本读取cookie信息
  18. 读《出梁庄记》乱摘2
  19. datanucleus+spring 的JDO操作 select save update delete
  20. 又一重磅利好,海南撒10亿基金发展区块链技术

热门文章

  1. Nunc细胞培养耗材(一)西安凯斯耐西北总代理
  2. Mybatis知识点讲解 【笔记】
  3. 如何去写好公众号文章开头和结尾呢?
  4. MySQL DELETE语句
  5. 基于Mybatis的sql动态查询和模糊查询的实现
  6. SpringCloud- Netflix
  7. hadoop yarn命令下载运行日志和结束yarn任务命令笔记
  8. c#中计算三角形面积公式_c#计算三角形面积的程序
  9. 【python脚本系列】MIDI文件128种音色码表
  10. 嵌入式实验(四):用STM32输出PWM波形/DAC功能完成波形输出