Linux基础1之磁盘与分区
Linux上面设备皆文件,目前需要知道的,比如U盘和SARA硬盘的在Linux上面的文件名,/dev/sd[a-p]。与IDE接口不同的是,SATA/USB接口的磁盘没有一定的顺序,这里就根据Linux内核检测到磁盘的顺序。
比如PC上面有两个SATA磁盘和一个USB磁盘,而主板上面有六个SATA的插槽。这两个插槽安插在主板上的SATA1,SATA5上面,这三个磁盘在Linux中的设备文件名是什么?由于是使用检测到的顺序来决定设备文件名,并非与实际插槽代号有关,因此设备的文件名如下。SATA1插槽上的文件名是/dev/sda ,SATA5插槽上的文件名是/dev/sdb ,USB磁盘(开机完成后才被系统识别)的文件名是/dev/sdc。
虽然磁盘是数据存储的地方,但是实际对于数据的写入是在盘片上面。盘片上面又可以细分出扇区(Sector)与柱面(Cylinder)两种单位,其中扇区每个为512bytes那么大。磁盘的第一个扇区是非常重要的,主要记录了两个重要的信息,分别是主引导分区(Master Boot Record,MBR):可以安装引导加载程序的地方,有446bytes;分区表(partition table):记录整块磁盘分区的状态,有64bytes。MBR是非常重要的,因为当系统在开机的时候会主动去读取这个区块的内容,这样系统才会知道你的程序放在哪里且该如何开启。如果你要安装多重引导的系统,MBR更加显得重要。分区表是什么呢?刚才拿到的整块磁盘就像一根原木,你必须在这根原木上面切割出你想要的区段,这个区段才能够再制作成为你想要的家具。如果没有进行切割,那么原木就不能被有效地利用。同样的道理,你必须要针对你的硬盘进行分区,这样硬盘才可以被使用、
IDE接口分主从设备,依次abcd,一个IDE接口只能接两个设备。
说起磁盘,里面的道道还是比较多得。下面精简介绍。磁盘,由具有磁性的盘片(由磁头对盘片加磁性?)还有一些机械装置组成(磁头、马达、固定装置等)。磁盘,说起盘,很容易想起圆圈。在磁盘的存储结构中,主要组成是磁道、柱面、扇区、磁头这几个关键词被提起,一般磁道和柱面是一个实物的两种不同观察方式表现。磁道,顾名思义,就是一圈圈的圆环,两个圆环之间的区域就是磁道。柱面是什么呢?这个是从空间、立体的结构来看的,一般磁盘并不只是一个盘片,经常有多个盘片和多个磁头组成,而且是重叠组合而成,跌在一起,于是在一个盘片上面的某个磁道的位置在其他盘片上得也是同样位置的地方,这样遍历整个磁盘的全部盘片,就组成了柱面,可以回忆高等数学上面的柱面的定义,直线绕着曲线旋转一圈所形成的曲面叫做柱面。扇区,从名字上来看,很容易想到,就是一把扇子嘛,但是这里要注意,并不是真正的普通的扇形,在磁盘上面的扇区,也是大扇形的面积减去小扇形的面积所形成的区域,这才叫扇区。其实一个扇区的数据区域一般是512字节,但是还有其它的控制信息还占据了一些存储位置。怎么计算磁盘的容量呢?磁盘容量 = 磁头数*磁道数*扇区数*每扇区字节数 ,磁头数就相当于有多少个盘片,磁道数相当于每个盘片上面被划分了多少个环形道道(其实这个道道就是磁头放在盘片上面,磁盘飞速旋转一圈就出现了,相邻磁道间并不是严格的相邻,毕竟磁头往外移动一点距离,可能这里磁头不是标准的矩形,或许是个球形等,所以也能避免磁性的影响,不会影响数据,磁盘需要避免磁场强的区域),每个环形道道上面,又被划分了多个扇区,扇区的弧连接在一起有360度就组成了一个磁道。每个扇区有512B。于是磁盘容量就出来了。
说到这里,有时候经常会有疑惑,一般硬盘经常有一些参数,比如转速多少多少转,5400,7200,还有毕竟少见的用于企业服务器上面的15000转/s。回想高中的物理知识,角速度相等,那么由V = W(角速度)*R(半径),越是最外圈的磁道,磁头在这上面经过的速度越快,为了存储数据方便,一般固定将扇区数目固定为512byte,作为最外围的磁道,如果每个磁道上面的扇区数目相等,那就是相当于本来512个人在篮球场上面可以正常干活(比较内围的磁道),转移到512个人在足球场上面干活,有没有感觉一种极大的不公平,同时考虑磁头在每秒钟经过的扇区数目在外围磁道和里面磁道也是不一样的。工业界当然不允许这样的情况发生,于是出现了一些设计,clv,zclv等刻录技术,越是外围的磁道,扇区数目越多,而且扇区编号是从外围开始往内变大得,所以像MBR、DBR(dos boot record)等都是在磁盘的外围区域,有名的windows系统,C盘系统盘,那么C盘就是磁盘的最外围区域,作为操作系统的存储地方,当然保证较快的存取速度,大胆猜测下,越往里面增加,速度越慢,所以有时候需要经常进行下磁盘清理,把外围磁盘要充分利用完。
上面还是没解决问题,为什么计算的时候为那么计算,因为简单方便。这里的扇区数其实是一个平均的扇区数,就是把外面的大的多的扇区数和里面的小得少得扇区数作了一个平均而给出的一个数目,方便计算。当然每扇区的字节数,还是尽量保证差不多大得面积,既占用空间小一点又能保证数据的完整性。
0号磁头,0号磁道,1号扇区是给MBR的,这里是由主板来读取的,在DOS上面读取不到的。0号磁头,1号磁道,1号扇区是给DBR是由DOS来读取的。
Linux基础1之磁盘与分区的更多相关文章
- Linux基础四---系统监控&硬盘分区
---恢复内容开始--- 一系统分区 1.top [参数] -b 批处理 -c 显示命令完全模式 -I 忽略失效过程 -s 保密模式 -S 累积模式 -i<时间> 设置间隔时间 -u< ...
- linux基础-第十三单元 硬盘分区、格式化及文件系统的管理二
第十三单元 硬盘分区.格式化及文件系统的管理二 文件系统的挂载与卸载 什么是挂载 mount命令的功能 mount命令的用法举例 umount命令的功能 umount命令的用法举例 利用/etc/fs ...
- Linux基础篇,磁盘及文件使用管理
在windows系统下,我们可以使用图形化界面很明了的看出当前硬盘使用量与某个文件的占用空间大小和文件数量.但是在linux系统中,我们应该如何得到这些信息呢? 当然是功能强大的df与du了. 一.d ...
- Linux基础(4)-硬盘分区、格式化及文件系统的管理、软件包的管理、yum管理RPM包和python的源码安装
一: 1) 开启Linux系统前添加一块大小为15G的SCSI硬盘 2) 开启系统,右击桌面,打开终端 3) 为新加的硬盘分区,一个主分区大小为5G,剩余空间给扩展分区,在扩展分区上划分1个逻辑 ...
- 【学习笔记】Linux基础(一):磁盘分区与Linux的安装(以CentOS为例)
一.磁盘分区与Linux的安装(以CentOS为例) 0.说在安装之前 在Linux中,"一切设备皆文件",设备在/dev这个目录下 /dev/sd[a-p] 表示SCSI/SAT ...
- Linux常用命令学习7---(磁盘管理df du、磁盘的分区和格式化fdisk parted)
1.磁盘管理 在服务器的维护中,我们需要关心服务器的磁盘使用了多少.还有多少的剩余空间.某个文件有多大.某个文件夹内的所有文件在一起一共占用的多少空间……问题.以便我们在合适的时机为服务器添加硬 ...
- Linux学习之路—磁盘分区
1.各硬件设备在Linux中的文件名 在Linux系统中,每个设备都被当做一个文件来对待,同时在Linux系统中,几乎所有的硬件设备文件都在/dev这个目录中. 设备 设备在Linux内的文件名 ID ...
- 磁盘、分区及Linux文件系统 [Disk, Partition, Linux File System]
1.磁盘基础知识 1.1 物理结构 硬盘的物理结构一般由磁头与碟片.电动机.主控芯片与排线等部件组成:当主电动机带动碟片旋转时,副电动机带动一组(磁头)到相对应的碟片上并确定读取正面还是反面的碟面,磁 ...
- (大数据工程师学习路径)第一步 Linux 基础入门----文件系统操作与磁盘管理
介绍 本节的文件系统操作的内容十分简单,只会包含几个命令的几个参数的讲解,但掌握这些也将对你在学习后续其他内容的过程中有极大帮助. 因为本课程的定位为入门基础,尽快上手,故没有打算涉及太多理论内容,前 ...
随机推荐
- VC一些经验系列: 《分享泄漏检测工具:内存、DC、GDI、Handle... 》
分享下自己工作中用到的一些用于泄漏检测的工具 后面的是DC的一些定义和注意事项.(不喜勿看) //=================================================== ...
- java.util.concurrent.Exchanger应用范例与原理浅析--转载
一.简介 Exchanger是自jdk1.5起开始提供的工具套件,一般用于两个工作线程之间交换数据.在本文中我将采取由浅入深的方式来介绍分析这个工具类.首先我们来看看官方的api文档中的叙述: A ...
- acm位运算应用 搜索
acm位运算应用 搜索 搜索 此处不讲题目,只讲位运算是怎样在这些题中实现和应用的.由于搜索题往往是基于对状态的操作,位运算往往特别有效,优化之后的效果可以有目共睹. 例1.POJ 132 ...
- Linux中的权限管理
touch 11.txt(创建了一个文件) chown zhangsan:zhangsan 11.txt ll(可看到11.txt的属主和属组都改为了zhangsan) useradd lisi(添加 ...
- puppet案例
实例一.文件分发描述:通过puppet服务端可以向被管理机(客户端)上推送文件,方法是使用file类型的source属性 第一步:#vi /etc/puppet/fileserver.conf 1 ...
- 数据中心基础设施自动化运维之puppet专项
http://forge.puppetlabs.com/treydock/yum_cron [puppet功能扩展forge] http://docs.puppetlabs.com/referenc ...
- dut1305 台阶
Description 如上图所示的一个台阶他的积水量是4 + 2 + 4 + 3 + 4 = 17. 给你一个长度是n的台阶.告诉你每个台阶的高度,求积水量是多少? Input 多组输入数据: 每组 ...
- 15个易遗忘的Java问题
通常,在面试中,会遇到面试官提一些比较“偏冷”的基础知识,比如基本数据类型所占用的字节数,或者Unicode和UTF-8的区别之类的问题,这时很多应聘者会答错.还有在平常编码的过程中,很多时候会用到除 ...
- 判断数组中有没有某个键 isset 和 array_key_exists 的效率比较
判断数组中有没有某个键 isset 和 array_key_exists 谁的效率高呢? 使用 array_key_exists 代码如下 结果如下 如果使用 isset 代码如下 结果如下: 很明显 ...
- 杂谈:你选择coco 还是unity3d?
当一个人喜欢的时候,那么这样的兴趣是非常难改变的.你是否会改变自己想法?眼下而言,如今adobe 对flash开发处于维护的状态.为什么?是由于前期错误政策流失非常多人才,这一点也非常难避免.当今年湖 ...