Unix:关于一个file在file system和disk中占用空间

参考文献:

Harley Hahns:Guide to Unix and Linux, Chap 24

——》首先要有的关键概念:the amount of "disk space" used by a file is not the same as the amount of data in the file.

——》其次,理解在file system和disk(or other storage medium)中都存在各自的最小空间单元:file system中叫“block”;disk中叫“allocation unit”;

这两个最小空间单元关系:The size of "allocation unit" depends on the filesystem and the storage device。比如参考文献作者计算机中,filesystem的最小占用单元block为1K Bytes,而disk allocation units 为8K Bytes。所以,有一个文件含有1B的data,则在filesystem中占用1个block(1K),在disk中占用8K的disk
space

******************************************************************************

于是下面的问题:如何detemine size of block? 如何determine size of allocation unit?

——size of allocation units:

*先创建一个很小的文件

*再用ls -l file查看这个文件含有的实际data有多少(Byte为单位),显示在时间前面

*再用du -h file查看how much "disk space" the file takes up

这查出来的disk space就是你的disk中最小占用单元的大小,我的计算机上查出是4K

——size of block in filesystem:

思路是通过在管理员权限下用dumpe2fs命令查看在filesystem中存在的一个block:SUPERBLOCK的性质,查看它的Block size来确定在filesystem中一个block有多大

*先用df命令来find out the name of the special file that represents the filesystem, 如/dev/hda1

*再用su取得superuser的权限

*在superuser的权限在使用dumpe2fs,并用grep命令搜集“Block size”信息:dumpe2fs /dev/hda1 | grep "Block size"

这查出来的Block size就是在你的file system中一个block的最小占用空间,我的计算机上查出是1024

Unix:关于一个file在file system和disk中占用空间,布布扣,bubuko.com

时间: 2024-10-09 19:23:15

Unix:关于一个file在file system和disk中占用空间的相关文章

Could not load file or assembly 'System.Core, Version=2.0.5.0 和autofac冲突的问题

在部署到iis的时候会出现这个状况.   这个软件(NDP40-KB2468871-v2-x64) 解决:下载安装这个补丁 http://support.microsoft.com/kb/2468871 http://www.microsoft.com/zh-cn/download/confirmation.aspx?id=3556 http://download.microsoft.com/download/2/B/F/2BF4D7D1-E781-4EE0-9E4F-FDD44A2F8934/

[Nuget] - "Runtime error: Could not load file or assembly 'System.Web.WebPages.Razor, Version=3.0.0.0'" 问题之解决

环境 项目中使用了 System.Web.WebPages.Razor, Version=3.0.0.0,Nuget 还原缺失包后自动更新至 Version=3.2.5.0,编译成功,运行失败. 错误 "/"应用程序中的服务器错误.未能加载文件或程序集"System.Web.WebPages.Razor, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"或它的某一个依赖项.系统找不到

Could not load file or assembly'System.Data.SQLite.dll' or one of its depedencies

[问题]  在我本机的开发环境c#连接sqlite3没有问题,可是release版本移植到其他的机器就提示Could not load file or assembly'System.Data.SQLite.dll' or one of its depedencies.找不到指定模块. [解决] 搜来搜去没找到靠谱的答案,其实最后还是自己解决的. sqlite官方的下载页面里面说了:The Visual C++ 2010 SP1 runtime for x86 and the .NET Fr

MVC4 部署 could not load file or assembly system.web.http.webhost 或是其它文件出误

自从VS2010发布之后使用它来做开发的程序员越来越多,其中很多人使用了MVC来作为新的开发框架,但是在系统部署的时候我们也遇到诸多问题,因为目前大多数windows服务器采用的还是Windows Server 2003,所以我们就需要在服务器上安装.net framework 3.5 或4.0 之类的高版本来保证我们的系统运行. 接下来我们就来部署基于 .net framework 4.0 mvc 的应用系统,首先在服务器上安装.net framework 4.0,但是安装的时候常常遇到一个错

[转]Could not load file or assembly 'System.Core, Version=2.0.5.0 和autofac冲突的问题

Could not load file or assembly 'System.Core, Version=2.0.5.0 和autofac冲突的问题 来源:http://www.cnblogs.com/yelaiju/p/3375168.html 在部署到iis的时候会出现这个状况. 解决:下载安装这个补丁 http://support.microsoft.com/kb/2468871 http://www.microsoft.com/zh-cn/download/confirmation.a

ex:Could not load file or assembly 'System.Web.Helpers, Version=2.0.0.0, Culture=neutral, . 系统找不到指定的文件。

今天写的是一个小程序,采用webfrom 形式,.netframework4.0 项目中调用了System.Web.Helpers下的Json方法. 在本地测试没问题,结果搭建到服务器上,死活运行不正常. 报错: ex:Could not load file or assembly 'System.Web.Helpers, Version=2.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its depend

【翻译自mos文章】对于每一个文件的 file.id and file.incarnation number,重命名文件别名

对于每一个文件的 file.id and file.incarnation number,重命名文件别名 参考原文: Rename Alias of Datafile as Per file.id and file.incarnation number (Doc ID 1494661.1) 适用于: Oracle Database - Enterprise Edition - Version 11.2.0.0 and later Information in this document appl

Unable to open the physical file xxxx. Operating system error 2

在新UAT服务器上,需要将tempdb放置在SSD(固态硬盘)上.由于SSD(固态硬盘)特性,所以tempdb的文件只能放置在D盘下面,而不能是D盘下的某一个目录下面. ALTERDATABASE tempdb MODIFY FILE(name='tempdev', filename='D:\tempdb.mdf') ;   GO ALTERDATABASE tempdb MODIFY FILE(name='templog', filename='D:\templog.ldf') ; GO 修改

IIS中发布后出现Could not load file or assembly'System.Data.SQLite.dll' or one of its depedencies

[问题]在我本机的开发环境c#连接sqlite3没有问题,可是release版本移植到其他的机器就提示Could not load file or assembly'System.Data.SQLite.dll' or one of its depedencies.找不到指定模块. [解决]搜来搜去没找到靠谱的答案,其实最后还是自己解决的. sqlite官方的下载页面里面说了:The Visual C++ 2010 SP1 runtime for x86 and the .NET Framewo