两个一样的硬盘(除了分区表不一样)一样的文件 占用空间为啥不一致?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了两个一样的硬盘(除了分区表不一样)一样的文件 占用空间为啥不一致?相关的知识,希望对你有一定的参考价值。

主要原因是磁盘空间的利用率不一样:
FAT32:磁盘分区小于8GB时簇的大小是4KB;
分区大小在8GB~16GB时簇的大小是8KB;
分区大小在 16GB~32GB时簇大小是16KB。
NTFS:磁盘分区簇的大小几乎都为4KB。 那么采用NTFS分区磁盘利用率明显更高,虽说微乎其微。
参考技术A 一种是FAT32,一种NTFS~
由于采用了更小的簇,FAT32文件系统可以更有效率地保存信息。如两个分区大小都为2GB,一个分区采用了FAT16文件系统,另一个分区采用了FAT32文件系统。采用FAT16的分区的簇大小为32KB,而FAT32分区的簇只有4KB的大小。这样FAT32就比FAT16的存储效率要高很多,通常情况下可以提高15%。本回答被提问者采纳
参考技术B 一种是FAT32,一种NTFS 参考技术C 后面数值显示的问题啦!

文件,文件夹和inode表的关系

文件数据包括两部分内容;元数据和数据两部分,存放分别在元数据空间 和数据空间,

0 每个新文件都会系统分配一个iNode节点编号 相当于人的×××号 在一个分区内具有唯一性,如果inode 编号不一样 所占的空间的指针指向的数据也不一样
比如 在 /home 建立大小 一个G的文件 f1 把 f1文件复制 当前文件夹 f2
实验结果发现 这两个文件一共占用了 2G的空间大小 意味着 f1的指针和f2的所指的指针指向的数据空间不是一个 如果是两个文件的指针指向同一个数据空间 那么 两个数据的数据所占空间大小为1G ,但是实验结果相反占用了 2G的空间.
1 mode 权限
2ownership 所属 用户 所属组
3时间戳 信息(读时间atime ,修改时间mtime,属性修改时jian间ctime)
4直接指针12个,一个指针是 4K的数据,由于直接指针因为能指定的数据较小
所以引入间接指针的概念间接指针包含了 一级指针 二级指针 三级指针 ..
把4个字节为一个单位那么这个文件的数据空间的一个最小的块单位4k的数据空间可以分成1024份,一级指针的数据空间大小位10244k=4m,以及类推 二级指针可以制定的数据空间大小位4m1024=4G,三级指针指定数据空间大小 4T
5size 文件数据所占空间大小
6链接数 有几个文件指向这个inode的数据空间
实际上 文件夹也是一种特殊的文件 ,文件元数据部分和普通文件没差异
在数据空间存放的内容是一条一条的 文件名>>>inode节点编码 有很多条这样的数据组成,我们删除文件其实是把所在文件夹这个特殊的文件内容删除某条记录而已
删除,这个时候由于文件名和linode就在文件夹内容空间不存在 ,qu系统认为 没有名只有 inode数据是可用空间,但是这个时候数据还是实际存在的
如果是硬链接,就是在同一个分区内 一个文件指向另一个文件共用数据空间
在所在的文件夹内容列表有 两条数据 sqiud 1001
squid-link 1001
就算删除其中任意一条 数据 另外一个文件都可以访问,因为另外一个文件名指向了inode节点 到元数据列表中找所在的节点inode数据就可以
硬链接智能是 文件 对文件 不支持 文件夹 当一个inode的link数为0 则 这个文件被删除了
一个文件做了1硬链接 那么链接数为2
目录的链接数最少为2
软链接是一个文件指向另外一个文件只不过是 垮分区的由于 不同分区的inode 编号不通用 就相当于 两个 文件的内容存放的是相对路径
软链接是通过相对路径的办法 找到不同分区的数据的
如果删除原始文件 ,那么原始文件 软链接就找不到 资源文件了 因为软链接数据空间是记录的相对路径并没有写指向的 inode编号 ,所以 不会增加源文件的链接数(links)
相反 硬链接 不同名字指向同一个 inode 在同一个分区中,链接数为2

创建文件
touch
-a 修改文件的读时间[[email protected] /home/wang]#stat f1
File: ‘f1’
Size: 6 Blocks: 8 IO Block: 4096 regular file
Device: 806h/2054d Inode: 114 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2018-12-16 13:25:30.766286983 +0800
Modify: 2018-12-16 13:25:30.766286983 +0800
Change: 2018-12-16 13:25:31.118287001 +0800

没修改之前的
现在把读时间修改成2025-12-11 08:30:30

touch -a -t 201812110830.30 f1
查看文件时间
stat f1
File: ‘f1’
Size: 6 Blocks: 8 IO Block: 4096 regular file
Device: 806h/2054d Inode: 114 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Context: unconfined_u:object_r:user_home_t:s0
Access: 2018-12-11 08:30:30.000000000 +0800
Modify: 2018-12-16 13:25:30.766286983 +0800
Change: 2018-16 13:29:58.326300564 +0800
Birth: -
读时间 已经修改成 需要的时间
-m 制定文件更改数据内容时间
-t 格式为 [[CC]YY]MMDDhhmm[.ss]
如果要cc 那么 yy必须 写出来

cp 源 目标
cp 源... 目录
1当源是文件 目标不存在 创建设定的名字 内容放在该文件里
2当源是文件 目标存在为f1 文件 内容覆盖 名字不变
3当源是文件f1是 目标是dir 目录在dir 目录文件下创建f1 同名文件
4当源是多个文件 目标是不存在 不能完成创建
5当源是多个文件 目标是一个文件 也不能完成复制功能
6当源是多文件 目标是目录 把文件放在目标目录下面文件目录把源放在该目录下
7当源是多个目录 目标不存在 创建不存在的
8当源是目录 目标是文件 不能执行复制
9当源是多个目录 目标是一个目录 把源目录目标目录放到下边

  1. 10当源是多个目录 目标不存在 创建目标目录把多个目录拷贝到这个目录下面
    11当源是一个目录 目标不存在 就相当于 复制里面的内容把目录的名字修改了

    cp
    -t 把源 和目标对调位置
    -v 看到 复制的过程
    --preserv
    ownership 所有者信息
    mode 复制权限信息
    context 复制内容信息
    timestamp 复制文件的时间信息 读时间 修改时间 状态更改时间
    all 复制所有
    -R 递归复制 深入文件夹里面

-d 复制链接名


‘’ 单引号 不认识变量也不认识命令
“” 双引号 认识 变量 不认识命令
` 反单引号 认识命令和变量<br/>设置 一个 rm的 别名 <br/>首先 把在/date 目录下面见一个随机的时间文件夹<br/>mkdir -p /date/date +%s这里用反单引号<br/>mv -t /date/date +%s移动文件到随机生成的目录 这个命令还没制定 删除哪个文件 因为后面的文件由 rm 后面添加<br/>alias rm="mkdir -p /date/date +%s;mv -t /date/date +%s`"
快捷键就生成了
如果想去掉这个快捷键 unalias rm
这个快捷键长期生效 放在~/bashr 里面追加sourcce ~.bashr生效 就可以调用

以上是关于两个一样的硬盘(除了分区表不一样)一样的文件 占用空间为啥不一致?的主要内容,如果未能解决你的问题,请参考以下文章

电脑中 c 盘分区格式FAT 和CTFS有啥区别?其他分区和 c 盘格式不一样会影响计算机的正常使用吗?

linux中查看硬盘分区信息的命令是啥?

条件: 磁盘分区问题,如果总容量一样的话,而且是固态硬盘(联想thinkpad的x1c:三星PCI

linux系统,怎么让2快硬盘做镜像,(windows中有个添加镜像磁盘)就像服务器中做整列一样

raspbian修改swap分区为硬盘上的分区

请问各位:wii 硬盘版怎样显示封面?