正常访问状态!
设为首页
|
加入收藏夹
|
浏览历史
http://www.guosp.com
碧海澜涛居
海纳百川,有容乃大。壁立千刃,无欲则刚!
关键词:
全部栏目
技术资料
美文日志
影视收藏
读书收藏
软件收藏
网站首页
|
关于本站
|
技术资料
|
美文日志
|
读书收藏
|
影视收藏
|
软件收藏
|
摄影相册
|
留言板
技术资料 >> Linux系统资料
搜索标签:
硬盘
分区
Linux
Linux硬盘分区知识
[阅读次数:1225次] [发布时间:2010年9月15日]
一、关于硬盘种类、物理几何结构及硬盘容量、分区大小计算;
1、硬盘种类、物理几何结构
硬盘的种类主要是SCSI 、IDE
、及目前流行的SATA等;所有一种硬盘的生产都要一定的标准;随着相应的标准的升级,硬盘生产技术也在升级;比如
SCSI标准已经历了SCSI-1 、SCSI-2、SCSI-3;其中目前咱们经常在服务器网站看到的
Ultral-160就是基于SCSI-3标准的;IDE
遵循的是ATA标准,而目前流行的SATA,是ATA标准的升级版本;IDE是并口设备,而SATA是串口,SATA的发展目的是替换IDE;
硬盘的物理几何结构是由盘、磁盘表面、柱面、扇区组成,一个张硬盘内部是由几张碟片叠加在一起,这样形成一个柱体面;每个碟片都有上下表面;磁头和磁盘表面接触从而能读取数据;
2、硬盘容量及分区大小的算法;
我们通过fdsik -l 能发现如下的信息:
Disk /dev/hda: 80.0 GB, 80026361856 bytes
255 heads, 63 sectors/track, 9729 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux
其中 heads 是磁盘面;sectors 是扇区;cylinders 是柱面;每个扇区大小是 512byte,也就是0.5K;
通过上面的例子,我们发现此硬盘有 255个磁盘面,有63个扇区,有9729个柱面;所以整个硬盘体积换算公式应该是:
磁面个数 x 扇区个数 x 每个扇区的大小512 x 柱面个数 = 硬盘体积 (单位bytes)
所以在本例中磁盘的大小应该计算如下:
255 x 63 x 512 x 9729 = 80023749120 bytes
提示:
由于硬盘生产商和操作系统换算不太相同,硬盘厂家以10进位的办法来换算,而操作系统是以2进位制来换算,所以在换算成M或G 时,不同的算法结果却不相同;所以我们的硬盘有时标出的是80G,在操作系统下看却少几M;
上面例子中,硬盘厂家算法 和 操作系统算数比较:
硬盘厂家:
80023749120 bytes = 80023749.120 K = 80023.749120 M (向大单位换算,每次除以1000)
操作系统:
80023749120 bytes = 78148192.5 K = 76316.594238281 M (向大单位换算,每次除以1024)
我们在查看分区大小的时候,能用生产厂家提供的算法来简单推算分区的大小;把小数点向前移动六位就是以G表示的大小;比如 hda1 的大小约为 6.144831G ;
二、关于硬盘分区划分标准及合理分区结构;
1、硬盘分区划分标准
硬盘的分区由主分区、扩展分区和逻辑分区组成;所以我们在对硬盘分区时要遵循这个标准;主分区(包括扩展分区)的最大个数是四个,主分区(包含扩展
分区)的个数硬盘的主引导记录MBR(Master Boot
Recorder)决定的,MBR存放启动管理程式(GRUB,LILO,NTLOARDER等)和分区表记录。其中扩展分区也算一个主分区;扩展分区下
能包含更多的逻辑分区;所以主分区(包括扩展分区)范围是从1-4,逻辑分区是从5开始的;比如下面的例子:
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux
通过这个例子,我们能看到主分区有3个,从 hda1-hda3 ,扩展分区由 hda5-hda10 ;此硬盘没有主分区4,所以也没有显示主分区hda4 ;但逻辑分区不可能从4开始,因为那是主分区的位置,明白了吧;
2、硬盘设备(包括移动存储设备)在Linux或其他类Unix系统的表示;
IDE 硬盘在Linux或其他类Unix系统的一般表示为 hd* ,比如hda、hdb ... ... ,我们能通过 fdisk
-l 来查看;有时你可能只有一个硬盘,在操作系统中看到的却是 hdb ,这和硬盘的跳线有关;另外hdc
大多表示是光驱设备;如果你有两块硬盘,大多是 hda和hdb。在这方面说的太多也无用,还是以fdisk -l 为准为好;
SCSI 和SATA 硬盘在Linux通常也是表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准
移动存储设备在linux表示为 sd* ,比如 sda 、sdb ... ... 以fdisk -l 为准
3、合理的规划分区;
关于一个磁盘的分区,一个磁盘应该有四个主分区,其中扩展也算一个主分区;存在以下情况:
1)分区结构之一:四个主分区,没有扩展分区;
[主|分区1] [主分|区2] [主|分区3] [主|分区4]
这种情况,如果你想在一个磁盘上划分五个以上分区,这样是行不通的;
三个主分区 一个扩展分区;
[ 主 | 分区1 ] [ 主 | 分区2 ] [ 主 | 分区3 ] [扩展分区]
|
[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...
这种情况行得通,而且分区的自由度比较大;分区也不受约束,能分超过5个分区;这只是举一个例子;
2)最合理的的分区方式;
最合理的分区结构
:主分区在前,扩展分区在后,然后在扩展分区中划分逻辑分区;主分区的个数+扩展分区个数要控制在四个之内;比如下面的分区是比较好的;
[主|分区1] [主|分区2] [主|分区3] [扩展分区]
|
[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...
[主|分区1] [主|分区2] [扩展分区]
|
[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...
[主|分区1] [扩展分区]
|
[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...
最不合理的分区结构:
主分区包围扩展分区;比如下面的;
[主|分区1] [主|分区2] [扩展分区] [主|分区4] [空白未分区空间]
|
[逻辑|分区5] [逻辑|分区6] [逻辑|分区7] [逻辑|分区8] ... ...
这样
[主|分区2]
和
[主|分区4]
之间的
[扩展分区]
是有自由度,但
[主|分区4]
后的
[空白未分区空间]
怎么办?除非把主分区4完全利用扩展分区后的空间,否则你想在主分区4后再划一个分区是不可能的,划分逻辑分区更不可能; 虽然类似此种办法也符合一个磁盘四个主分区的标准,但这样主分区包围扩展分区的分区方法实在不可取;
我们根据这个标题,查看一下我们的例子,是不是符合这个标准呢?
Device Boot Start End Blocks Id System
/dev/hda1 * 1 765 6144831 7 HPFS/NTFS
/dev/hda2 766 2805 16386300 c W95 FAT32 (LBA)
/dev/hda3 2806 9729 55617030 5 Extended
/dev/hda5 2806 3825 8193118+ 83 Linux
/dev/hda6 3826 5100 10241406 83 Linux
/dev/hda7 5101 5198 787153+ 82 Linux swap / Solaris
/dev/hda8 5199 6657 11719386 83 Linux
/dev/hda9 6658 7751 8787523+ 83 Linux
/dev/hda10 7752 9729 15888253+ 83 Linux
后记:
把分区基础写出来,主要是想让新手弟兄知道什么是合理的分区结构,如果把硬盘分区规划好了,也为以学习省却了不少麻烦;在此文后,我计划写具体的分区工具介绍;这也算一个基础知识的积累;虽然老手都会,但新手可能还是需要的;
本页地址:
[复制地址]
该页内容非本站原创 收藏自:http://www.sudu.cn/info/html/edu/20080425/301647.html
返回顶部
评论统计(0条)
|
我要评论
暂无评论内容!
我要评论
我要评论:
带*部分需要填写
姓名称呼:
* 请填写您的姓名或呢称
联系方式:
QQ,MSN,Email都可以,方便交流 (仅管理员可见)
评论内容:
* 不超过100字符,50汉字
验证码:
推荐链接
最近更新
·
Host 'XXX' is not allowed...
·
Win2008或IIS7的文件上传大...
·
IIS7.0上传文件限制的解决方...
·
测试信息2015-03-11
·
asp.net中处理图片
·
ASP.NET之Web打印-终极解决...
·
Asp.net下C#调用Word模版实...
·
asp.net下将页面内容导入到...
·
asp.net导出为pdf文件
·
asp.net生成pdf文件
·
FCKeditor 文本编辑器的使用...
·
ASP.NET 将数据生成PDF
·
asp.net2.0导出pdf文件完美...
·
AspJpeg的安装与测试
·
JS验证浏览器版本对IE11的支...
热门浏览
·
IE8和IE9出现“此网页上的问...
·
无线路由器密码破解,教你断...
·
js替换所有回车换行符
·
QQ/MSN在线交流代码
·
如何取消键盘上的一些快捷键...
·
IE弹出“中国工商银行防钓鱼...
·
win7声音小的解决方法
·
webdav漏洞的利用
·
强制两端对齐的函数或者CSS...
·
win7下成功安装sql server ...
·
显示器分辨率调的过高导致电...
·
天诺时空技术技术论坛
·
js验证手机号码格式
·
JS展开和收缩效果(二)
·
本地计算机上的 MSSQLSERVE...
碧海澜涛居
网站首页
|
关于本站
|
站长简介
|
开发案例
|
技术资料
|
美文日志
|
摄影相册
|
读书收藏
|
影视收藏
|
留言板
版权所有:碧海澜涛 QQ:410436434 Email:
shaopo_guo@163.com
苏ICP备15000526号
免责声明:本站为个人网站,站内所有文字、图片等各类资料均为个人兴趣爱好所收集,不用作任何商业用途,亦不保证资料的真实性,若有因浏览本站内容而导致的各类纠纷,本站也不承担任何责任。本站部分内容来自互联网,如有涉及到您的权益或隐私请联系站长解决。