查找群集大小

我正在运行Ubuntu 11.04,我想知道如何找到分配单元大小的大小? 在Ubuntu中有命令可以找到它吗? 另外,根据分配单元的大小,使用文件的硬盘空间总量是多少? 我使用lsdu -b检查了文件大小,在这两种情况下我都得到相同的值。

包括数据:

  sudo tune2fs -l  Block count: 8052736 Reserved block count: 402636 Free blocks: 2797402 First block: 0 Block size: 4096 Reserved GDT blocks: 1022 Blocks per group: 32768 Inode blocks per group: 512 Flex block group size: 16 Reserved blocks uid: 0 (user root) Reserved blocks gid: 0 (group root) Journal backup: inode blocks 

因此,如果块大小为4096字节,小于4096的文件占用硬盘上4096字节的存储空间,那么大于4096字节的文件占用多少空间呢? 是否有命令找到相同的?

热门后期编辑:
先发制人:

 temp = int(size / block)  
如果mod(size / block)!= 0:  
     temp + = 1
 temp = temp * block
打印温度

要知道文件在磁盘上有多少个块:

  ls -s 

其中block-size是分区块大小
和磁盘上的大小是块大小*块数

有关块大小术语差异的说明
sudo fdisk -l /dev/sda
其中/ dev / sda是​​有问题的硬盘

磁盘/ dev / sda:500.1 GB,500107862016字节
 255个头,63个扇区/轨道,60801个气缸,总共976773168个扇区
单位= 1 * 512 = 512字节的扇区
扇区大小(逻辑/物理):512字节/ 512字节
 I / O大小(最小/最佳):512字节/ 512字节
磁盘标识符:0x000c1f6b 

设备启动开始结束块ID系统
/ dev / sda1 * 63 498014 248976 83 Linux
/ dev / sda2 498015 976768064 488135025 5扩展
/ dev / sda5 498078 976768064 488134993+ 83 Linux
这告诉你几件事。 其他人已经说过更好的块引用:

这个问题是你必须保留四个不同的单位 
心神。 更糟糕的是,其中两个单位具有相同的名称。 这些是 
不同单位:

 1.硬件块大小,“扇区大小”
 2.文件系统块大小,“块大小”
 3.内核缓冲区缓存块大小,“块大小”
 4.分区表块大小,“柱面大小”

为了区分文件系统块大小和缓冲区高速缓存块大小,我 
将遵循FAT术语并使用“簇大小”作为文件系统块大小。


扇区大小是硬件处理的单位。 这范围介于不同之间 
硬件类型,但大多数PC风格的硬件(软盘,IDE磁盘等)使用512字节 
部门。

簇大小是文件系统使用的分配单元,是导致的原因 
碎片 - 我相信你知道的。 在中等大小的ext3文件系统上, 
这通常是4096字节,但您可以使用dumpe2fs检查它。 请记住这些 
通常也称为“块”,只是我在这里将它们称为簇。

簇大小是在stat缓冲区中的st_blksize中返回的内容,以便进行 
程序能够计算文件的实际磁盘使用情况。

块大小是内核在缓存时内部使用的缓冲区的大小 
已从存储设备读取的扇区(因此称为“块设备”)。 以来 
这是内核中最原始的存储forms,即所有文件系统集群大小 
必须是这个的倍数。 这个块大小也几乎总是被称为 
用户空间程序。 例如,当您运行“du”而没有-h或-H选项时,它会 
返回文件占用的块数。  df还会报告这些尺寸 
块,fdisk -l输出中的“Blocks”列是这种类型,依此类推。 它是 
什么是最常被称为“块”。 两个磁盘扇区适合每个块。


柱面尺寸仅用于分区表和BIOS(以及BIOS) 
 Linux没有使用它。

 “df”仅在文件系统上运行,因此,不,没有文件系统就无法使用它 -  
没有文件系统,它将返回的数据不存在。  “du”继续运作 
个别档案。 

从这里 。