硬盘相关知识(在Windows和Linux中的区别)

首先需要明白一点,硬盘是先从外边开始用,如果把硬盘由外往里画圈,那么从外到里的存储速度按三个级别划分的话,应该是快中慢,如下图:

读盘速度

Windows:c盘在最外面,是最快

Linux:boot分区和swap分区也是在最外面,读的速度也是最快

为什么Windows下,C盘在硬盘的最外圈

因为外磁道转一圈扫描的扇区多 ,从而使得读盘速度更快 

为什么电脑越用越慢

从物理上讲越用越慢是正常的,因为C盘是从最外圈开始的,越用越往里靠;越往里靠,磁盘转一圈扫描的扇区就会变少,读写速度当然比转一圈扫描的扇区多的慢

文件系统

Windows的文件系统:fat32,ntfs

Linux的文件系统:rhel6默认ext4,centos7.5默认xfs

其中,Linux的ext4文件系统由三部分组成:文件名,iNode,block

iNode(存储文件属性):包含文件的元信息,具体来说包含以下内容:

1)文件的字节数

2)文件拥有者的user ID

3)文件的group ID

4)文件的读、写、执行权限

5)文件的时间戳,共三个:atime(访问文件内容的时间,如cat a.txt,./a.sh),mtime(修改文件内容的时间,如vi a.txt,echo aaa >> a.txt),ctime(iNode上一次文件属性变动的时间-change time,如chmod +x a.sh,vi a.sh,echo aaa >> a.sh)

用sata命令可以查看以上文件属性相关信息:

一个分区有多少iNode号

用df -i 命令可以查看各个分区的iNode使用情况:

案例分析

实际问题分析:在一台配置比较低的Linux服务器(内存、硬盘比较小)的/data分区内创建文件时,系统提示无法创建,用df -h命令查看了一下磁盘使用情况,发现/data分区只使用了82%,还有14G剩余的空间,但是无法创建新的文件,当时使用的是root用户。另外,服务器没有被黑。此时,可以用df -i命令查看下该分区的iNode使用情况;

排查:用df -i命令查看磁盘中的的iNode使用情况,发现/data分区索引节点(iNode)已经用满(IUsed=100%),导致系统无法创建新目录和文件,iNode号使用完了;

查找原因:/data/cahe目录中存在数量非常多的小字节缓存文件,占用的block不多,但是占用的很多的iNode;

解决方案:1)删除/data/cahe目录中的部分文件,释放/data分区的一部分iNode;2)/data分区下iNode不够:在data部分好一些文件,然后删除这些文件,释放一些iNode,然后创建一个文件夹/data/cahe2,在cahe2下挂载一个新分区sda4,下次写数据需要写到新分区cahe2目录下;

question:为什么要有block,直接使用扇区可以吗

操作系统读取硬盘的时候,不会一个一个扇区(512字节)地取读取,这样效率太低,而一次读取多个扇区,即一次性读取多个块‘block’。这种由多个扇区组成的块,是文件存储的大小,最常见的是1kb(即连两个sector扇区组成一个block)或4k。

 

 

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值