Windows文件系统-程序员宅基地

技术标签: Windows  文件系统  计算机  

0x01 文件系统概念

文件系统是操作系统用于明确存储设备(常见的是磁盘,也有基于NAND Flash的固态硬盘)或分区上的文件的方法和数据结构,即在存储设备上组织文件的方法。操作系统中负责管理和存储文件信息的软件机构称为文件管理系统,简称文件系统。文件系统是硬盘空间存储数据的一套科学合理的存储和管理方法。

0x02 常见文件系统

FAT文件系统(windows)

​ FAT(File Allocation Table)文件系统诞生于1977年,它最初是为软盘设计的文件系统,但是后来随着微软推出doswin 9x系统,FAT文件系统经过适配被逐渐用到了硬盘上,并且在那时的20年中,一直是主流的文件系统.(FAT16 32 64

特点

  1. 单个文件最大为4G
  2. 最大文件数量268,435,437
  3. 分区最大容量8TB
  4. 可在多种操作系统读写

NTFS文件系统(windows)

​ NTFS全称是New Technology File System,它是一种比FAT32功能更加强大的文件系统。
从windows 2000之后的windows系统的默认文件系统都是NTFS,而且这些windows系统只能够安装在NTFS格式的磁盘上。

特点

  1. 理论上最大文件尺寸可达16EB-1KB,实际上有16TB-64KB(1EB = 1024PB 1PB = 1024TB)
  2. 操作系统支持大部分windows系统,Unix/Linux系统,Mac OS(在Mac OS 10.4+系统上,NTFS格式是只读的,即在Mac系统下,你只能从NTFS格式的磁盘上读取数据,而不能写入数据)
  3. 由于在Mac系统下,NTFS是只读的,所以要想在Mac下想要在NTFS格式的硬盘写入数据,要装一个插件Paragon NTFS,但不是太稳定

ExFAT(windows MACos linux)

​ ExFAT(Extended File Allocation Table)又叫FAT64,看名字就知道它是对FAT文件系统的扩展。

特点

  1. ExFAT是虽然也是微软开发的文件系统,但说它是windows下的文件系统并不合适,它是专门为闪存盘设计的文件系统,单个文件突破了4G的限制,而且分区的最大容量可达64ZB(比EB大一级的),建议512TB
  2. ExFAT在windows,Linux以及Mac系统上,都可以读写,作为U盘或者是移动硬盘的格式还是比较合适的。

HFS/HFS+(MAC OS专用)

​ HFS全称叫分层文件系统(Hierarchical File System,HFS),诞生于1985年,最初被设计用于软盘和硬盘,同时也可以在在只读媒体如CD-ROM上见到。

EXT(3,4)(linux)

​ Ext3是一种日志式文件系统,其最大的特点就是:它会将整个磁盘的写入动作完整的记录在磁盘的某个区域上,以便有需要时回溯追踪。当在某个过程中断时,系统可以根据这些记录直接回溯并重整被中断的部分,重整速度相当快。

XFS(linux)

​ XFS文件系统是RHEL7系列的默认文件系统,目的是为了替代传统的EXT4文件系统.

特点

  1. 数据完全性
    采用XFS文件系统,当意想不到的宕机发生后,首先,由于文件系统开启了日志功能,所以你磁盘上的文件不再会意外宕机而遭到破坏了。不论目前文件系统上存储的文件与数据有多少,文件系统都可以根据所记录的日志在很短的时间内迅速恢复磁盘文件内容。
  2. 传输特性
    XFS文件系统采用优化算法,日志记录对整体文件操作影响非常小。XFS查询与分配存储空间非常快。xfs文件系统能连续提供快速的反应时间。笔者曾经对XFS、JFS、Ext3、ReiserFS文件系统进行过测试,XFS文件文件系统的性能表现相当出众。
  3. 可扩展性
    XFS 是一个全64-bit的文件系统,它可以支持上百万T字节的存储空间。对特大文件及小尺寸文件的支持都表现出众,支持特大数量的目录。最大可支持的文件大 小为263 = 9 x 1018 = 9 exabytes,最大文件系统尺寸为18 exabytes
    XFS使用高的表结构(B+树),保证了文件系统可以快速搜索与快速空间分配。XFS能够持续提供高速操作,文件系统的性能不受目录中目录及文件数量的限制。
  4. 传输带宽
    XFS 能以接近裸设备I/O的性能存储数据。在单个文件系统的测试中,其吞吐量最高可达7GB每秒,对单个文件的读写操作,其吞吐量可达4GB每秒。

0x03 NTFS相对于FAT的优势

容错性

​ NTFS文件系统可以自动地修复磁盘错误而不会显示出错信息。

WindowsNT/2000/XP向NTFS分区中写入文件时,会在内存中保留文件的一份拷贝,然后检查,磁盘中写入的文件与内存中保留的拷贝是否一致。如果两者不一致,Windows就把相应的扇区标为坏扇区而不再使用它(即簇重映射),然后,用内存中保留的文件拷贝重新向磁盘上写文件。如果在读文件时出现错误,NTFS返回一个读错误信息,并告知相应的应用程序数据已经丢失。

安全性(NTFS权限)

​ NTFS有许多安全性能方面的选项,可以在本机上和通过远程的方法保护文件及目录。NTFS还支持加密文件系统EFS(Encrypting File System),可以阻止没有授权的用户访问文件。也可以通过设置NTFS,限制用户的访问。

文件压缩

​ NTFS支持文件压缩功能,用户可以选择压缩单个文件或整个文件夹。

磁盘配额

​ 磁盘配额功能允许系统管理员管理分配给各个用户的磁盘空间,合法用户只能访问属于自己的文件,Windows NT/2000/XP中的磁盘配额功能是基于用户和卷(Windows NT/2000/XP下文件系统以卷为单位划分,相当于Windows 95/98/Me下逻辑分区的概念)的所谓磁盘配额,就是管理员可以对本域中的每个用户所能使用的磁盘空间进行配额限制,即每个用户只能使用最大配额范围内的磁盘空间.

0x04 NTFS权限应用规则

  1. 默认继承
    默认文件或是文件夹继承父级文件夹的权限。

  2. 权限不冲突累加
    当一个用户同时有两个权限(同时属于两个组),且不冲突时,两个权限累加。

  3. 权限冲突,拒绝优先
    当一个用户同时有两个权限(同时属于两个组),权限冲突时,拒绝权限生效。

  4. 特殊权限

  • 读取权限的权限
  • 更改权限的权限
  • 取得所有权的权限
  1. 阻止继承

    在Windows中用文件或文件夹的高级安全属性界面中可以阻止从父文件夹中继承的权限

  2. 强制继承

    在Windows中文件夹的高级安全属性界面中可以设置子类强制继承父文件夹的权限

注:

  • 强制继承和阻止继承在的生效取决于那个设置后被操作
  • 在Windows中文件或文件夹权限的设置对管理员无效,管理员可以强制获取权限。

0x05 NTFS权限基本设置

  1. 阻止权限继承。文件或文件夹右键选择属性 → 选择【安全】选项卡 → 点击【高级】按钮 → 点击【更改权限】按钮 → 取消勾选【…继承权限】。

    阻止权限继承
  2. 强制权限继承。文件或文件夹右键选择属性 → 选择【安全】选项卡 → 点击【高级】按钮 → 点击【更改权限】按钮 → 勾选【使用可从此对象继承的权限替换所有对象权限】。

    强制权限继承

0x06 实验练习

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/qq_38768365/article/details/109555610

智能推荐

呼叫转移的普适性及编程实现_电话自动转移程序开发-程序员宅基地

文章浏览阅读53次。总结来说,呼叫转移是一种方便的电话通信功能,在编程中可以通过使用电话服务提供商的API来实现。然而,实际的实现可能因具体的服务提供商而有所不同,你需要参考相应的文档或与服务提供商联系以获取准确的实现细节。在函数内部,我们构建了一个API请求的有效载荷(payload),其中包含了原始电话号码和目标电话号码。在编程中,呼叫转移的实现涉及使用电话通信协议和相应的编程语言。需要注意的是,实际的呼叫转移功能的实现可能因电话服务提供商的不同而有所差异。首先,我们需要确保已经安装了Python的开发环境和相应的库。_电话自动转移程序开发

FLink聚合性能优化--MiniBatch分析_flink mini-batch-程序员宅基地

文章浏览阅读5.4k次,点赞4次,收藏15次。[@ TOC]一、MiniBatch的演进思路1、MiniBatch版本Flink 1.9.0 SQL(Blink Planner) 性能优化中一项重要的改进就是升级了微批模型,即 MiniBatch(也称作MicroBatch或MiniBatch2.0),在支持高吞吐场景发挥了重要作用。MiniBatch与早期的MiniBatch1.0在微批的触发机制略有不同。原理同样是缓存一定的数据后..._flink mini-batch

EasyExcel导入_easyexcel 对接multipartfile-程序员宅基地

文章浏览阅读808次,点赞6次,收藏6次。导入依赖<dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.1.6</version></dependency>Controllerimport java.text.ParseException;import org.springframework._easyexcel 对接multipartfile

英飞凌TC3xx之一起认识DSADC系列(一)架构介绍-程序员宅基地

文章浏览阅读2.7k次,点赞27次,收藏42次。一文清晰了解英飞凌TC3xx系列的架构和组成部分,适用于正在使用EDSADC功能的人们。_dsadc

JavaDemo——读取硬盘物理序列号_java 硬盘物理序列号-程序员宅基地

文章浏览阅读1.2k次。通过调用wmic命令获取硬盘序列号,wmic命令很强大。Demo:/** * 2019年3月13日下午3:48:22 */package testReadDiskInfo;import java.io.IOException;import java.util.ArrayList;import java.util.HashMap;import java.util.List;..._java 硬盘物理序列号

CentOS 编译Hadoop 2.6 32位_32位linux系统 编译hadoop-程序员宅基地

文章浏览阅读2.2k次。本文采用CenOS 6 32位,JDK1.7进行编译 (1)安装编译库yum install cmake lzo-devel zlib-devel gcc gcc-c++ autoconf automake libtool ncurses-devel openssl-devel libXtst(2)安装mavenwget http://repos.fedorapeople.org/repos/dc_32位linux系统 编译hadoop

随便推点

JVM性能优化 (一) 初识JVM-程序员宅基地

文章浏览阅读703次,点赞22次,收藏24次。到这里文章就讲完了,有疑问的兄弟可以在下面讨论或留言,也祝大家在今年开开心心,健健康康,能够拥有一份好工作,大家加油,我是牧小农!自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

通过手动给upx去壳简单了解逆向_upx脱壳机-程序员宅基地

文章浏览阅读1.7k次。对于像我这种想入门逆向的,这种方式真的可以培养兴趣,也从中学到了很多知识,我也不会仅仅止步于脱upx的。[外链图片转存中…(img-xkCBlSoD-1693021558445)]即可。对于像我这种想入门逆向的,这种方式真的可以培养兴趣,也从中学到了很多知识,我也不会仅仅止步于脱upx的。_upx脱壳机

Quartz定时任务调度cron 表达式时间格式(☆)_cron表达式 下午5点30-程序员宅基地

文章浏览阅读890次。cron 表达式的格式 Quartz Cron 表达式支持到七个域 名称 是否必须 允许值 特殊字符 秒 是 0-59 ..._cron表达式 下午5点30

SQL Server 疑难杂症--转换科学计数法的数值字符串为decimal类型_mssql 字符串转decimal 精度问题-程序员宅基地

文章浏览阅读1.8k次。今天在操作数据库时,需要将字符串转换成Decimal类型。代码如下:selectcast('0.12'asdecimal(18,2));selectconvert(decimal(18,2),'0.12');当需要将科学计数法的数字字符串转换成Decimal时,这2种写法都报错:Msg 8114, Level 16, State 5, Line 1Erro..._mssql 字符串转decimal 精度问题

soul源码解读(十八)-- resilience4j插件原理分析_resilience4j timeoutduration含义-程序员宅基地

文章浏览阅读553次。soul源码解读(十八)resilience4j插件使用resilience4jresilience4j插件是网关用来对流量进行限流与熔断的可选选择之一。resilience4j为网关熔断限流提供能力。插件使用1.启动 admin,打开 resilience4j 插件开关2.在 bootstrap 项目的 pom 文件引入 resilience4j 插件的相关依赖,启动 bootstrap <!-- soul resilience4j plugin start--> <_resilience4j timeoutduration含义

Splunk安装配置和基础运维_splunk中文手册,2024阿里+头条+腾讯等大厂Linux运维笔试题分享_splunk部署、配置、优化-程序员宅基地

文章浏览阅读367次,点赞5次,收藏3次。16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?5、LVS、Nginx、HAproxy有什么区别?9、讲述一下Tomcat8005、8009、8080三个端口的含义?索引默认位置:/opt/splunk/var/lib/splunk。7、Tomcat和Resin有什么区别,工作中你怎么选择?15、讲述一下LVS三种模式的工作过程?_splunk部署、配置、优化

推荐文章

热门文章

相关标签