Linux下的磁盘分割和文件系统
一、各硬件装置在Linux下的文件名
1、IDE硬盘机 在Linux内的文件名: /dev/hd[a-d] (a-d 刚好是四个这个是有原因的具体如下)
解释:以 IDE 接口来说,由于一个 IDE 扁平电缆可以连接两个 IDE 装置,又通常主机都会提供两个 IDE 接口,因此最多可以接到四个 IDE 装置。 也就是说,如果你已经有一个光盘设备了,那举最多就叧能再接三颗 IDE 接口的磁盘啰。 这两个 IDE 接口通常被称为 IDE1(primary)及 IDE2(secondary), 而每条扁平电缆上面的IDE 装置可以被区分为 Master 和Slave
这四个 IDE 装置癿文件名为:
IDE1(Primary) /dev/hda /dev/hdb
IDE2(Secondary) /dev/hdc /dev/hdd
2、SCSI/SATA/USB硬盘机 在linux内的文件名: /dev/sd[a-p] 其中的a-p也同样的道理,但是 SATA是没有顺序的只有按照系统检测到磁盘的顺序来排列,比如有4颗磁盘,则肯能为 /dev/sda /dev/sdb /dev/sdc /dev/sdd 而这个顺序为磁盘检测到的顺序,
二、磁盘的组成
1、一个磁盘有:磁盘盘,机械手臂,磁盘读取头以及主轴马达,而数据的写入其实是在磁盘盘面上,磁盘盘面又可以细分为扇区(sectory)磁柱(cylinder)两种单位,其中一个扇区的大小为512byte .
2、磁盘磁面上有一个特别的扇区即第一个扇区,这个扇区特别是因为它记录了两个信息:
(1)、磁盘分割表 ,也就是你这个磁盘的分割的相关信息,如起始磁柱,结束磁柱大小为64bytes
(2)、MBR(master boot record ) 即主要启动引导区,可以安装启动管理程序的地方 大小为 446bytes
3、磁盘分区表:我们知道磁柱是分割槽的最小单位,而在第一个扇区中的64bytes 存放的分割表,而这64bytes被分为4组,每组记录其起始和结束磁柱号码。
4、由于分割表就只有 64 bytes 而已,最多叧能容纳四笔分割的记录, 这四个分割的记录被称为主要(Primary)或延伸(Extended)分割槽
5、(1)、其实所谓的『分割』只是针对那个 64 bytes 的分割表进行设定而已!
(2)、 硬盘默认的分割表仅能写入四组分割信息
(3)、这四组分割信息我们称为主要(Primary)或延伸(Extended)分割槽
(4)、分割槽的最小单位为磁柱(cylinder)
(5)、当系统要写入磁盘时,一定会参考磁盘分区表,才能针对某个分割槽进行数据的处理!
6、磁盘中最多只能有四个主要分割或三个主要分割和一个延伸分割,而延伸分割只能有一个,这是系统的限制,而主分割加延伸分割最多只能有四个这是磁盘的限制。
7、延伸分割不能进行格式化,而逻辑分割是通过延伸格分割格式化得到的结果!,也就是说如果延伸分割槽坏了则所有的逻辑分割槽中的数据也就被损坏了!
三、Linux下的磁盘 文件系统 挂载 挂载点 目录树 的相关概念以及他们之间的关系
1、磁盘 没什么好说的,就是一块硬盘 或其他的存储设备
2、文件系统:什么是文件系统?
(1)、文件系统是操作系统用于明确磁盘或分区上的文件的方法和数据结构; 即在磁盘上组织文件的方法。也指用于存储文件的磁盘或分区,或文件系统种类。 因此,可以说"我有2个文件系统"意思是他有2个分区,一个存文件,或他用 "扩展文件系统",意思是文件系统的种类。
(2)、磁盘或分区和它所包括的文件系统的不同是很重要的。 少数程序(包括最有理由的产生文件系统的程序)直接对磁盘或分区的原始扇区进行操作; 这可能破坏一个存在的文件系统。 大部分程序基于文件系统进行操作,在不同种文件系统上不能工作。
(3)、一个分区或磁盘能作为文件系统使用前,需要初始化,并将记录数据结构写到磁盘上。这个过程就叫建立文件系统。
(4)、大部分UNIX文件系统种类具有类似的通用结构,即使细节有些变化。 其中心概念是超级块superblock, i节点inode, 数据块data block,目录块directory block, 和间接块indirection block。 超级块包括文件系统的总体信息,比如大小(其准确信息依赖文件系统)。 i节点包括除了名字外的一个文件的所有信息,名字与i节点数目一起存在目录中, 目录条目包括文件名和文件的i节点数目。 i节点包括几个数据块的数目,用于存储文件的数据。 i节点中只有少量数据块数的空间,如果需要更多,会动态分配指向数据块的指针空间。 这些动态分配的块是间接块;为了找到数据块,这名字指出它必须先找到间接块的号码。
3、挂载:所谓的挂载就是利用一个目录当成进入点,将磁盘分区槽的数据放置在该目录下; 也就是说,进入该目录就可以读取该分割槽的意思。这个动作我们称为挂载;
4、挂载点:那个进入点的目录我们称为挂载点;
5、目录树:在linux下目录是以树的结构呈现的,所以就叫目录树;
6、在目录树中树根就是根目录,而这个根目录必须要挂载到某个分割槽,而其下的某些目录可以根据自己的需要来挂载,也可以不挂在,因为根目录已经挂载了,如果你不挂载则默认就是和根目录相同的分割槽!
7、 软挂载是通过 mount 命令来实现的
Linux下的磁盘分割和文件系统的更多相关文章
- linux下查看磁盘分区的文件系统格式
df -T 只可以查看已经挂载的分区和文件系统类型. Filesystem Type 1K-blocks Used Available Use% Mounted on/dev/sda1 ext4 20 ...
- 【转】linux下查看磁盘分区的文件系统格式
https://www.cnblogs.com/youbiyoufang/p/7607174.html
- linux下U盘变成只读文件系统的修复
问题描述: U盘插入linux下后变成了只读文件系统,不能再往u盘里拷贝文件. 总结:产生这个问题的原因可能是u盘文件系统损坏,操作系统为了防止它损坏系统,将它设置成了只读 修复方法: 在window ...
- linux下用cronolog分割apache日志
linux下用cronolog分割apache日志,大神莫拍砖,菜鸟留一记录,小白请默默转载.连linux登陆和vi编辑都不会的,请默默关闭此页面.入正题 说明:淡绿色底的为linux命令,其他的为备 ...
- linux下测试磁盘的读写IO速度-简易方法
linux下测试磁盘的读写IO速度-简易方法 参考资料:https://blog.csdn.net/zqtsx/article/details/25487185 一:使用hdparm命令 这是一个是用 ...
- Linux下查看磁盘挂载的几种方法
Linux下查看磁盘挂载的几种方法 第一种方法:df命令 # df -hT Filesystem Type Size Used Avail Use% Mounted on devtmpfs devtm ...
- Linux下查看磁盘挂载的三种方法
Linux下查看磁盘挂载的三种方法 2009-06-05 23:17 好久没有更新日志了,呵呵.不是没有要写的东东.实在抽不出时间来写,要准备公司的考试呢,C++考试.已经有七个月没有写C++代码了, ...
- Linux下查看磁盘与目录的容量——df、du
df:列出文件系统的整体磁盘使用量: du:评估文件系统的磁盘使用量(常用于评估目录所占容量) df参数: -a:列出所有的文件系统,包括系统特有的/proc等文件系统 -k:以KB的容量显示各文件系 ...
- linux下的磁盘和文件系统管理
一.硬盘分区知识 1.分区类型 硬盘分区一共有3种:主分区.扩展分区和逻辑分区.扩展分区只不过是逻辑分区的“容器”,实际上只有主分区和逻辑分区进行数据存储.在一块硬盘上最多只能有4个主分区,可以另外建 ...
随机推荐
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- Xamarin+Prism开发详解六:DependencyService与IPlatformInitializer的关系
祝各位2017年事业辉煌!开年第一篇博客,继续探索Xamarin.Forms… 为什么我做Xamarin开发的时候中意于Prism.Forms框架?本章为你揭晓. 实例代码地址:https://git ...
- 谈谈一些有趣的CSS题目(十一)-- reset.css 知多少?
开本系列,谈谈一些有趣的 CSS 题目,题目类型天马行空,想到什么说什么,不仅为了拓宽一下解决问题的思路,更涉及一些容易忽视的 CSS 细节. 解题不考虑兼容性,题目天马行空,想到什么说什么,如果解题 ...
- Jexus 5.8.2 正式发布为Asp.Net Core进入生产环境提供平台支持
Jexus 是一款运行于 Linux 平台,以支持 ASP.NET.PHP 为特色的集高安全性和高性能为一体的 WEB 服务器和反向代理服务器.最新版 5.8.2 已经发布,有如下更新: 1,现在大 ...
- 4.Windows Server2012 R2里面部署 MVC 的网站
网站部署之~Windows Server | 本地部署:http://www.cnblogs.com/dunitian/p/4822808.html#iis 后期会在博客首发更新:http://dnt ...
- 在Ubuntu 16.10安装mysql workbench报未安装软件包 libpng12-0错误
1.安装mysql workbench,提示未安装软件包 libpng12-0 下载了MySQL Workbench 6.3.8 在安装的时候报错: -1ubu1604-amd64.deb 提示: ...
- Python应用03 使用PyQT制作视频播放器
作者:Vamei 出处:http://www.cnblogs.com/vamei 严禁任何形式转载. 最近研究了Python的两个GUI包,Tkinter和PyQT.这两个GUI包的底层分别是Tcl/ ...
- IIC驱动移植在linux3.14.78上的实现和在linux2.6.29上实现对比(deep dive)
首先说明下为什么写这篇文章,网上有许多博客也是介绍I2C驱动在linux上移植的实现,但是笔者认为他们相当一部分没有分清所写的驱动时的驱动模型,是基于device tree, 还是基于传统的Platf ...
- YII 2.x 模板文件的 beginBlock、beginContent、beginCache
echo '-----------beginBlock--------------------- <br />'; $this->beginBlock('block1', false ...
- 满堂红CIO邓劲翔:房屋中介突围
人脸识别.客户关系管理进度监控.业务流程实时监控.网站访问人数及流量实时监控等实际企业应用场景淋漓尽致.羽羽如生的以大屏幕上图表形式展现在人们面前,如果你不去继续询问,你不会知道这是一家才刚刚在房地产 ...