【Linux系统】文件系统
Windows 和 Linux 的文件系统:
- windows:NTFS —> NTFS:磁盘大于目录:目录是磁盘的一部分。
- ubuntu :EXT4 —> EXT4: 目录大于磁盘:磁盘是目录的一部分。
Windows文件系统的特点
- 基于分区的文件系统:
- Windows系统将硬盘划分为多个独立的分区(通常以C盘、D盘、E盘等表示)。
- 每个分区独立存在,拥有自己的文件系统,分区之间互不影响,除非硬盘本身发生物理损坏。
- 文件系统类型:
- FAT32:一种较老的文件系统,支持较小的分区和文件。
- NTFS:Windows系统的主要文件系统,支持更大的分区和文件大小,同时提供更好的安全性和性能。
- exFAT:专为闪存驱动器设计,兼容性较强,支持较大的文件。
- 目录结构:
- 根目录为每个分区的起点,例如
C:\
、D:\
。 - 每个分区独立,有自己的目录树,分区之间没有统一的根目录。
- 根目录为每个分区的起点,例如
- 文件路径:
- 使用反斜杠
(\)
作为路径分隔符。 - 文件路径格式:
C:\folder\subfolder\file.txt
。
- 使用反斜杠
- 系统文件和用户文件分离:
- 系统文件通常存储在
C:\Windows
目录中。 - 用户文件存储在
C:\Users\用户名
下,以便于系统和用户数据管理的分离。
- 系统文件通常存储在
- 驱动器隔离:
- 磁盘的每个分区都是独立的逻辑驱动器,例如C盘的损坏不会直接影响D盘。
Linux文件系统的特点
- 统一目录结构:
- Linux采用统一的目录结构,所有文件和目录都挂载到一个单一的根目录
(/)
下。 - 即使有多个分区或设备,也会挂载到某个目录,例如
/home
、/mnt
,用户不会直接感知分区的存在。
- Linux采用统一的目录结构,所有文件和目录都挂载到一个单一的根目录
- 文件系统类型:
- ext4:Linux系统常用的文件系统,支持大文件和分区,稳定且性能优良。
- ext3:较旧的文件系统,支持日志功能。
- XFS:高性能文件系统,适合大规模存储。
- Btrfs:下一代文件系统,支持快照和压缩。
- 目录结构:
- 根目录
(/)
是文件系统的最高级目录,所有其他目录和文件都从根目录派生。 - 常见目录:
/etc
:存储配置文件。/bin
:存储用户二进制可执行文件。/sbin
:存储系统管理员使用的二进制文件。/home
:存储用户的个人文件,每个用户对应一个子目录。/mnt
:用于临时挂载设备或分区。
- 根目录
- 文件路径:
- 使用正斜杠
(/)
作为路径分隔符。 - 文件路径格式:
/home/user/file.txt
。
- 使用正斜杠
- 挂载点:
- Linux使用挂载点(Mount Point)将设备或分区融入统一的目录结构。例如:
/home
可能是一个分区。/mnt/usb
可能是一个USB设备。
- 挂载点可以动态调整,设备的文件系统可以挂载到任意目录。
- Linux使用挂载点(Mount Point)将设备或分区融入统一的目录结构。例如:
- 权限管理:
Linux文件系统具有严格的权限管理机制,每个文件或目录都拥有所有者(Owner)、所属组(Group)和其他用户(Others) 的权限。
权限分为读(r)
、写(w)
、执行(x)
。
#关于ls -l 获取出来的 信息
drwxrwxr-x 12 farsight farsight 4096 5月 8 09:10 2404-rwxrwxr-x 1 farsight farsight 8432 5月 11 10:33 a.out
文件类型与权限 硬链接数 文件拥有者 文件所属组 文件大小 文件最后修改时间 文件名
重点: 讲解一下文件类型与权限:
文件类型与权限由 10个字符构成 :10=1+3+3+3
—> 1
代表:文件类型 ;3
代表:文件拥有者权限;3
:文件所属组权限;3
:其他用户权限。
- 文件类型:(1)(共7种类型)
-
普通文件(文本文件,C程序,可执行文件 )d
目录b
块设备文件c
字符设备文件l
软链接文件p
管道文件 —> 多进程线程s
套接字文件 —> 网络编程
- 文件权限:(3 + 3 + 3)
rwx
rwx
r-x
- 文件拥有者 | 文件所属组 | 其他用户
r
:读取权限w
:写入权限x
:执行权限
rwx:可读可写可执行。
r-x:可读可执行,但不能写入。
对于权限修改:在Linux中,以用户的角度看,权限以八进制表示;
但是,以系统的角度看,权限以二进制表示。
文件拥有者权限 | 文件所属组权限 | 其他用户权限rwx rwx r-x
八进制: 0 7 7 5
二进制: 111 111 101# 对于系统底层来说,任何东西都是由 bit位决定的,权限也一样
# 系统底层中,会把文件信息划分为:32位
# 32位:前16 和 后16
# 前16位:高位地址 (废物位)
# 后16位:低位地址 (信息位) 信息优先保存在低位地址(此处参考大小端序,数据优先从低位地址上开始存储)
这里的文件类型与权限:-rwxrwxr-x
—> 1+3+3+3
—> -
+ rwx
(可读可写可执行)+
rwx
(可读可写可执行)+ r-x
(可读可执行,但不能写入)在计算机底层中的存储方式是:
# 修改文件权限:
chmod 权限 文件名 # 例如:
chmod 0777 hello.c
Windows与Linux文件系统的对比
特性 | Windows文件系统 | Linux文件系统 |
---|---|---|
目录结构 | 基于分区(C:\、D:\)的独立结构 | 统一的目录结构,以/为根 |
文件路径分隔符 | 反斜杠(\) | 正斜杠(/) |
文件系统类型 | FAT32、NTFS、exFAT | ext4、ext3、XFS、Btrfs等 |
分区管理 | 每个分区独立存在,互不影响 | 所有分区挂载到统一目录结构下 |
权限管理 | 依赖NTFS提供的权限管理 | 具有严格的用户、组、权限管理机制 |
系统文件与用户文件 | 系统文件与用户文件分区明确,如C:\Windows和C:\Users | 用户文件存储在/home目录,系统文件分布在其他目录 |
挂载机制 | 无挂载机制,分区直接以驱动器形式显示 | 通过挂载点将分区或设备挂载到目录树 |
综上。
Windows系统:
- 文件系统基于分区,分区之间独立。
- 适合普通用户,操作简单,目录结构清晰。
- NTFS文件系统提供较好的性能和安全性。
Linux系统:
- 文件系统统一挂载到根目录,具有更高的灵活性。
- 支持多种文件系统类型,适合复杂的服务器和开发环境。
- 严格的权限管理和挂载机制使其在安全性和稳定性方面表现优异。
两种文件系统各有优劣,Windows适合普通用户和桌面环境,而 Linux 更适合开发、服务器和高性能需求的场景。因此,作为一个嵌入式开发人员我们必须掌握文件的字符界面的操作方式。
以上。仅供学习与分享交流,请勿用于商业用途!转载需提前说明。
我是一个十分热爱技术的程序员,希望这篇文章能够对您有帮助,也希望认识更多热爱程序开发的小伙伴。
感谢!
相关文章:

【Linux系统】文件系统
Windows 和 Linux 的文件系统: windows:NTFS —> NTFS:磁盘大于目录:目录是磁盘的一部分。ubuntu :EXT4 —> EXT4: 目录大于磁盘:磁盘是目录的一部分。 Windows文件系统的特点 基于分区的文件系统: Windows…...

javaweb的基础
文章的简介: 页面的展示(HTML)页面的修改、绑定、弹窗(js的dom、bom等)页面的请求(Ajax) 1、在HTML中用标签和css样式实现了浏览器页面。 2、用JS实现页面内容(图片,复选框、文本颜色内容)的修改和弹框&…...

家里养几条金鱼比较好?
金鱼,作为备受喜爱的家庭水族宠物,其饲养数量一直是众多养鱼爱好者关注的焦点。究竟养几条金鱼最为适宜,实则需要综合考量多方面因素,方能达到美观、健康与和谐的理想养鱼境界。 从风水文化的视角来看,金鱼数量有着诸…...
写作词汇积累:差池、一体两面、切实可行极简理解
差池 【差池】可以是名词,是指意外的事或错误。 【差池】也可以是形容词,是指参差不齐、差劲或不行。 1. 由于操作不当,导致这次实验出现了【差池】,我们需要重新分析原因并调整方案。(名词,表示意外的事…...

移远EC200A-CN的OPENCPU使用GO开发嵌入式程序TBOX
演示地址: http://134.175.123.194:8811 admin admin 演示视频: https://www.bilibili.com/video/BV196q2YQEDP 主要功能 WatchDog 1. 守护进程 2. OTA远程升级 TBOX 1. 数据采集、数据可视化、数据上报(内置Modbus TCP/RTU/ASCII,GPS协…...
LEED绿色建筑认证最新消息
关于LEED绿色建筑认证的最新消息,可以从以下几个方面进行概述: 一、认证体系更新与发展 LEED认证体系不断更新和完善,以更好地适应全球绿色建筑的发展趋势。例如,LEED v4能源更新已通过投票,并于2024年3月1日全面启用…...

SpringBoot中集成常见邮箱中容易出现的问题
本来也没打算想写得。不过也是遇到一些坑,就记录一下吧,也折腾了小半天 1.maven配置 <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-mail</artifactId></dependency>2…...

webstorm开发uniapp(从安装到项目运行)
1、下载uniapp插件 下载连接:Uniapp Tool - IntelliJ IDEs Plugin | Marketplace (结合自己的webstorm版本下载,不然解析不了) 将下载到的zip文件防在webstorm安装路径下,本文的地址为: 2、安装uniapp插…...

C# 探险之旅:第七节 - 条件判断(三元判断符):? : 的奇妙冒险
嘿,勇敢的探险家们!欢迎来到 C# 编程世界的奇妙之旅的第七节。今天,我们要探索的是一个神秘而强大的宝藏——三元判断符 ? :。别怕,它听起来复杂,但实际上比找宝藏还简单! 场景设定:宝藏的选择…...
FlinkCDC实战:将 MySQL 数据同步至 ES
📌 当前需要处理的业务场景: 将订单表和相关联的表(比如: 商品表、子订单表、物流信息表)组织成宽表, 放入到 ES 中, 加速订单数据的查询. 同步数据到 es. 概述 1. 什么是 CDC 2. 什么是 Flink CDC 3. Flink CDC Connectors 和 Flink 的版本映射 实战 1. 宽表查…...

debug小记
红框: 步过:遇到方法不想进入方法 绿框:代码跑在第几行也可以看见 蓝框:可以显示变量的值,三种方式都可以看变量的值...

Qt C++ 显示多级结构体,包括结构体名、变量名和值
文章目录 mainwindow.hmainwindow.cppstructures.hmain.cpp QTreeView 和 QStandardItemModel 来实现。以下是实现这一功能的步骤和示例代码: 定义多级结构体: 假设你有一个多级结构体,如下所示: struct SubStruct {int subValue…...

【JAVA】旅游行业中大数据的使用
一、应用场景 数据采集与整合:全面收集旅游数据,如客流量、游客满意度等,整合形成统一数据集,为后续分析提供便利。 舆情监测与分析:实时监测旅游目的地的舆情信息,运用NLP算法进行智能处理,及…...

【AI+网络/仿真数据集】1分钟搭建云原生端到端5G网络
导语: 近期智慧网络开放创新平台上线了端到端网络仿真能力,区别于传统的网络仿真工具需要复杂的领域知识可界面操作,该平台的网络仿真能力主打一个小白友好和功能专业。 https://jiutian.10086.cn/open/jiutian.10086.cn/open/ 端到端仿…...

微服务-01【续】
1.OpenFeign 上篇文章我们利用Nacos实现了服务的治理,利用利用RestTemplate实现了服务的远程调用。但是远程调用的代码太复杂了: 而且这种调用方式,与原本的本地方法调用差异太大,编程时的体验也不统一,一会儿远程调用…...

测试工程师八股文01|Linux系统操作
一、Linux系统操作 1、gzip tar和gzip结合使用 $ tar czf b.tar.gz *txt 以gzip方式打包并且压缩 $ tar xzf b.tar.gz -C btar 以gzip方式解压并解包,如果 btar 目录不存在,则需要先手动创建该目录。 代码第二行:如果没有指定 -C …...

【Qt】qt基础
目录 一、使用Qt Creator创建qt项目 二、项目文件解析 三、Qt中创建图形化界面的程序的两种方法 四、对象树 五、Qt中处理打印乱码问题的利器:qDebug() 一、使用Qt Creator创建qt项目 1.选择项目模板 选中第一类模板Application(Qt应用程序,包含普…...

UniScene:Video、LiDAR 和Occupancy全面SOTA
论文: https://arxiv.org/pdf/2412.05435 项目页面:https://arlo0o.github.io/uniscene/ 0. 摘要 生成高保真度、可控制且带有标注的训练数据对于自动驾驶至关重要。现有方法通常直接从粗糙的场景布局生成单一形式的数据,这不仅无法输出多样化下游任务…...

TensorFlow深度学习实战(1)——神经网络与模型训练过程详解
TensorFlow深度学习实战(1)——神经网络与模型训练过程详解 0. 前言1. 神经网络基础1.1 神经网络简介1.2 神经网络的训练1.3 神经网络的应用 2. 从零开始构建前向传播2.1 计算隐藏层节点值2.2 应用激活函数2.3 计算输出层值2.4 计算损失值2.4.1 在连续变…...

03篇--二值化与自适应二值化
二值化 定义 何为二值化?顾名思义,就是将图像中的像素值改为只有两种值,黑与白。此为二值化。 二值化操作的图像只能是灰度图,意思就是二值化也是一个二维数组,它与灰度图都属于单信道,仅能表示一种色调…...

springboot 百货中心供应链管理系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,百货中心供应链管理系统被用户普遍使用,为方…...

智慧医疗能源事业线深度画像分析(上)
引言 医疗行业作为现代社会的关键基础设施,其能源消耗与环境影响正日益受到关注。随着全球"双碳"目标的推进和可持续发展理念的深入,智慧医疗能源事业线应运而生,致力于通过创新技术与管理方案,重构医疗领域的能源使用模式。这一事业线融合了能源管理、可持续发…...

【入坑系列】TiDB 强制索引在不同库下不生效问题
文章目录 背景SQL 优化情况线上SQL运行情况分析怀疑1:执行计划绑定问题?尝试:SHOW WARNINGS 查看警告探索 TiDB 的 USE_INDEX 写法Hint 不生效问题排查解决参考背景 项目中使用 TiDB 数据库,并对 SQL 进行优化了,添加了强制索引。 UAT 环境已经生效,但 PROD 环境强制索…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...

C# 求圆面积的程序(Program to find area of a circle)
给定半径r,求圆的面积。圆的面积应精确到小数点后5位。 例子: 输入:r 5 输出:78.53982 解释:由于面积 PI * r * r 3.14159265358979323846 * 5 * 5 78.53982,因为我们只保留小数点后 5 位数字。 输…...

C/C++ 中附加包含目录、附加库目录与附加依赖项详解
在 C/C 编程的编译和链接过程中,附加包含目录、附加库目录和附加依赖项是三个至关重要的设置,它们相互配合,确保程序能够正确引用外部资源并顺利构建。虽然在学习过程中,这些概念容易让人混淆,但深入理解它们的作用和联…...
十九、【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建
【用户管理与权限 - 篇一】后端基础:用户列表与角色模型的初步构建 前言准备工作第一部分:回顾 Django 内置的 `User` 模型第二部分:设计并创建 `Role` 和 `UserProfile` 模型第三部分:创建 Serializers第四部分:创建 ViewSets第五部分:注册 API 路由第六部分:后端初步测…...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道
文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...

【1】跨越技术栈鸿沟:字节跳动开源TRAE AI编程IDE的实战体验
2024年初,人工智能编程工具领域发生了一次静默的变革。当字节跳动宣布退出其TRAE项目(一款融合大型语言模型能力的云端AI编程IDE)时,技术社区曾短暂叹息。然而这一退场并非终点——通过开源社区的接力,TRAE在WayToAGI等…...