磁盘结构 容量

  • 磁盘结构

磁盘容量 = 一个柱面大小柱面的总数 = 磁头数量每个磁道上的扇区数一个扇区大小柱面总数

存储容量=磁头数 × 磁道(柱面)数 × 每道扇区数 × 每扇区字节数

了解-什么是CHS(cylinder head sector)

磁盘存储最小单位是sector,那么如何对sector进行定位?
CHS是早期在IBM PC架构上面用来进行磁盘寻址的办法。
CHS是一个三元组,组成如下:
1. 一共24个 bit位。
2. 其中前10位表示cylinder,中间8位表示head,后面6位表示sector。
3. 最大寻址空间

linux磁盘容量计算

磁盘的inode和block

参考: http://www.ruanyifeng.com/blog/2011/12/inode.html

http://www.cnblogs.com/iiiiher/p/5327642.html

这个文章说的很清楚

每个目录下有 . 和.. 两个目录- 这里比较有意思

. 代表当前目录 算上目录本身,因此他的inode是2.

.. 上一级目录

这里顺便说一下目录文件的"链接数"。创建目录时,默认会生成两个目录项:"."和".."。前者的inode号码就是当前目录的inode号码,等同于当前目录的"硬链接";后者的inode号码就是当前目录的父目录的inode号码,等同于父目录的"硬链接"。所以,任何一个目录的"硬链接"总数,总是等于2加上它的子目录总数(含隐藏目录)。

除了硬链接以外,还有一种特殊情况。

文件A和文件B的inode号码虽然不一样,但是文件A的内容是文件B的路径。读取文件A时,系统会自动将访问者导向文件B。因此,无论打开哪一个文件,最终读取的都是文件B。这时,文件A就称为文件B的"软链接"(soft link)或者"符号链接(symbolic link)。

这意味着,文件A依赖于文件B而存在,如果删除了文件B,打开文件A就会报错:"No such file or directory"。这是软链接与硬链接最大的不同:文件A指向文件B的文件名,而不是文件B的inode号码,文件B的inode"链接数"不会因此发生变化。

参考: http://www.ruanyifeng.com/blog/2011/12/inode.html

硬连接类似引用数据类型,js的原型,所有对象共享

软链接 硬链接

http://www.cnblogs.com/adforce/p/3522433.html

快速理解inode和硬链接

  • 文件夹不能手动创建硬链接(系统自动维护)
  • 文件夹的硬链接默认是2,里面多一个文件夹则硬链接 加1. 里面多一个文件,对文件夹的硬链接数无影响
  • 文件的硬链接默认是1, 可以通过ln -s来手动创建维护
  • 多个文件名可以指向同一个inode号, 这就是硬链接

下面是inode和硬链接最佳图解

小结

1,磁盘分区格式化文件系统后,会分为inode和block

2,inode存放文件的属性以及指向文件实体的指针,文件名不再inode里.一般商机目录的block

3,访问文件,通过文件-->inode-->blocks

4,inode一般情况默认大小256B block大小1 2 4k 默认是4k,引导分区除外

5,通过df -i 查看inode的数量及使用情况.dumpe2fs /dev/sda3查看inode及block的大小及数量

6,一个文件至少占用一个inode及一个block,单个文件可以占用同一个inode(硬链接)

7,一个block只能被一个文件使用,如果文件很小,block很大,剩余空间浪费,无法继续被其他文件使用

8,block不是越大越好,要根据业务的文件大小进行选择,一般默认4k

9,可以在格式化的时候改变inode和block的大小.

注意这里针对的是ext4的文件系统.

其他文件系统如overlay联合文件系统参考:

http://blog.csdn.net/styshoo/article/details/60715942

[svc]linux的inode和block-软硬链接的更多相关文章

  1. inode block 软硬链接

    inode block 软硬链接 1 inode 1.1 inode(索引节点)作用 (1)用于存储文件数据属性信息(2)用于存储数据指针信息 1.2 如何产生 格式化时,创建文件系统 1.3 如何查 ...

  2. 简单了解Linux的inode与block

    Linux常见文件系统类型:ext3(CentOS5),ext4(CentOS6),xfs(CentOS7) Windows常见文件系统类型:FAT32,NTFS (1).inode的内容 1)ino ...

  3. Linux系统——inode和block

    Linux文件属性 磁盘被分区并格式化为ext4文件系统后,会生成一定数量的inode和block Inode 索引节点 作用:存放文件的属性信息以及作为文件的索引(指向文件的实体block) Blo ...

  4. Linux的inode与block

    1,inode包含文件的元信息,具体来说有以下内容: 文件的字节数 文件拥有者的User ID 文件的Group ID 文件的读.写.执行权限 文件的时间戳,共有三个:ctime指inode上次文件属 ...

  5. Linux文件的删除和软硬链接

    文件的构成 由元数据(metadata)和数据(data)两部分组成 硬盘分区上一块空间存该分区上文件的元数据,一块空间存这些文件的数据 因为元数据和数据分离存放,所以需要通过指针地址来进行关联 元数 ...

  6. Linux文件系统inode、block解释权限(三)

    利用文件系统的inode和block来分析文件(目录)的权限问题. 为什么读取一个文件还要看该文件路径所有目录的权限? 为什么目录的w权限具有删除文件的能力,而文件w权限不行. inode:记录文件的 ...

  7. Linux一些基本命令、inode定义、软硬链接

    1.创建普通文件命令:touch 命令 2.创建目录文件命令:mkdir 命令 3.删除普通文件命令:rm 命令 4.删除目录文件命令:rmdir 命令 5.给普通文件写东西命令:vim 命令 6.查 ...

  8. Linux运维学习笔记-软硬链接知识总结

    文件链接   硬链接,通过索引节点来进行链接 硬链接原理图 硬链接的创建: 直接执行命令“ln 源文件 硬链接文件”,即可完成创建硬链接. 硬链接知识小结: 1.具有相同Inode节点号的多个文件是互 ...

  9. Centos的Inode及Block相关知识

    Centos的Inode及Block相关知识 时间:2016-06-04 01:54来源:blog.51cto.com 作者:"tao" 博客 举报 点击:173次 本经验均在Ce ...

随机推荐

  1. BZOJ1787 [Ahoi2008]Meet 紧急集合 LCA

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - BZOJ1787 题意概括 有一棵节点为n个(n≤500000)的树.接下来m次询问(m≤500000),每次 ...

  2. routing路由模式

    一:介绍 1.模式 2.应用场景 如果exchangge与队列中的key相同,消息就发送过去. 这个就是需要将交换机与队列增加key. 3.路由类型 上节课的订阅模式中的路由类型是Fanout. 这篇 ...

  3. 011 Spark应用构成结构

    一:端口4040 1.意思 其中4040端口代表的含义是application UI 是应用程序界面. 包含Jobs,Stages,environment,System,SQL等. 二:应用结构 1. ...

  4. 在macOS下正确配置 VS Code 使用 virtualenv 里的 python 环境参数

    在macos配置好并启动 virtualenv 环境后,如何让 VS Code 使用这个环境下来编译调试 python 脚本呢? 1.首先当然是先配置好python虚拟环境 假定配置python的的虚 ...

  5. 洛谷 P1387 最大正方形 【dp】(经典)

    题目链接:https://www.luogu.org/problemnew/show/P1387 题目描述 在一个n*m的只包含0和1的矩阵里找出一个不包含0的最大正方形,输出边长. 输入格式: 输入 ...

  6. 爬虫之Resquests模块的使用(二)

    Requests Requests模块 Requests模块是一个用于网络访问的模块,其实类似的模块有很多,比如urllib,urllib2,httplib,httplib2,他们基本都提供相似的功能 ...

  7. MySQL数据库crash的问题分析

    [问题] 生产环境有多台slave服务器,不定期的会crash,下面是error log中的堆栈信息 Thread pointer: 0x7f1e54b26410 Attempting backtra ...

  8. 玩转SpringCloud(F版本) 四.路由网关(zuul)

    本篇文章基于: 01)玩转SpringCloud 一.服务的注册与发现(Eureka) 02) 玩转SpringCloud 二.服务消费者(1)ribbon+restTemplate 03) 玩转Sp ...

  9. MySQL数据库基本用法

    远程连接数据库 mysql -u root -p #-u 用户名 -h后面写要连接的主机ip地址 -u后面写连接的用户名 -p回车后写密码 回车后输入密码,当前设置的密码为toor 数据库操作 创建数 ...

  10. Python学习——Python线程

    一.线程创建 #方法一:将要执行的方法作为参数传给Thread的构造方法 import threading import time def show(arg): time.sleep(2) print ...