Chinaunix首页 | 论坛 | 博客
  • 博客访问: 75358
  • 博文数量: 4
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 195
  • 用 户 组: 普通用户
  • 注册时间: 2013-02-04 23:47
文章分类
文章存档

2013年(4)

我的朋友

分类: LINUX

2013-02-06 01:14:05

一、硬盘简介
        硬盘按数据接口不同,大致分为ATA(IDE)和SATA以及SCSI和SAS。
        ATA和IDE,为什么会有两个差别这么大的名字呢,因为这种磁盘驱动器是由Advanced Technology Attchment(IDE) 高技术配置和Integranted Drive Electronics(IDE)共同实现的。ATA是一个控制器技术,而IDE是一个匹配它的磁盘驱动器技术,一般来说这连个术语可以互用。这种接口技 术主要用于硬盘和CD-ROM。但是由于抗干扰性差,不利于散热逐渐被SATA替代。
        SATA,全称Serial ATA,也就是使用串口的ATA接口,因抗干扰性强,且对数据线的长度要求比ATA低很多,支持热插拔等功能,所以现在逐渐代替了ATA,主要用于主板和大存储设备(硬盘和光驱)之间的数据传输。
        SCSI,全称为Small Computer System Interface(小型机系统接口),是一种用于计算机和周边设备之间(硬盘,软驱,光驱,打印机,扫描仪等)系统级接口的独立处理器标准,主要用于存储设备(硬盘,磁带机)上。
        SAS(Serial Attached SCSI)是新一代的SCSI技术,和SATA硬盘相同,都是采取串行式技术以获得更高的传输速度,也是用来与计算机周边设备进行数据的传输。
        我们可以这样理解他们的关系,ATA(IDE)发展出了SATA,SCSI发展出了SAS,发展的结果是SATA和SAS是兼容的。
二、硬盘在Linux标识的命名规则
        对于IDE硬 盘,驱动器标识符为“hdx~”,其中“hd”表明分区所在设备的类型,这里是指IDE硬盘了。“x”为盘号(a为基本 盘,b为基本从属盘,c为辅助主 盘,d为辅助从属盘),“~”代表分区,前四个分区用数字1到4表示,它们是主分区或扩展分区,从5开始就是逻辑分区。例,hda2表示为第一个IDE硬 盘上的第二个主分区或扩展分区,hdb2表示为第二个IDE硬盘上的第二个主分区或扩展分区。对于SCSI硬盘则标识为“sdx~”,“sda”表示第一 块,“sdb”表示第二块,分区也跟IDE的一样,前4个是主分区或扩展分区,从5开始就是逻辑分区了。
三、简单的几个测试

3.1 SCSI 和IDE 在Linux下的识别问题

    我模拟的是CentOS-6.3,现在只有一块SCSI的硬盘,在CentOS运行的时候:

$fdisk -l

      这时候,我切换到VMWare 的主界面,选中正在运行的
CentOS->Edit virtual machinie settings->add HardDisk->create a new virtual disk-》select a disk Type,如下图所示:
VMWare实验:IDE硬盘在Linux中命名的问题 - zhaoshikun - Prapes world
        在这里我们看到IDE选项是没有的,在SCSI后面解释说在不断电情况下,只能加入SCSI硬盘,这也就验证了IDE不支持热插拔,而SCSI支持。我们点击next,添加一块5G大小的SCSI硬盘,然后执行
$fdisk -l

     这时,CentOS已经识别了,SCSI的确是支持热插拔。下面我关机,添加一块10G大小的IDE的硬盘,开机执行
$fdisk -l

         这时也识别了,但是我发现一个问题,标识是错的,也就是说第三块磁盘我选的是IDE硬盘,应该是hda的,而不是sd*,这是怎么回事呢?只有三块硬盘, 不会是别的设备,所以识别错这个原因排除,既然没有识别错,那么肯定是有代码将IDE接口转成SCSI接口的了,这个时候我想到了内核模块,
$lsmod

 在这些内核中我们没有发现IDE的模块,等等,里面有ata开头的模块,对,前面说过两者基本上等价,而且严格来说接口标准的确是ATA负责的,那么我猜想就是这些模块搞的鬼,
$modinfo pata_piix
结果里有这么一句:
SCSI Low-level driver for ATA in ACPI mode

也 就是说可能是这个模块将IDE转成SCSI了,所以识别出来是SCSI的,标识也就变成了sdc了。

3.2 优盘在Linux下的识别问题

    为了更好的展现,我先将刚才添加的SCSI和IDE两块硬盘删掉了(因为是虚拟你,所以很容易,呵呵),我就用我自己的8G的优盘做实验。

3.2.1 VMWare如何挂载优盘

    这是一个问题,在网上搜索过发现,VMWare是将优盘虚拟为硬盘来挂载的,我已经预感到了什么。那么下面就来把我的优盘一步一步大挂载到Linux下。跟刚才的不走一样,CentOS->Edit virtual machinie settings->add HardDisk,这里就不一样了,我们选择use a physical disk,就是说用一个物理设备,也就是一个真实存在的一个设备,而不是虚拟一个物理设备。如下图所示:

接着,选择我们的优盘,这里有一点很重要,在我的机子上,在VMWare运行时我插上优盘,VMWare是不识别的,Device里面只有一个PhysicalDrive0,也就是我们的硬盘,必须重启VMWare以后,优盘才能够识别,这个大家要注意,还有,千万不要选错。

此时,我们回到CentOS的配置页面,我们会发现:

其实,这已经说明问题了,优盘在Linux下面也是作为SCSI硬盘挂载的,不过,我们还是要进入CentOS里面验证一下,结果如下所示:

到这里,也完全的证明了优盘在Linux下面也是以SCSI的方式挂载的。

四、为什么是SCSI?

    怎么说呢,IDE太老了,不仅仅是因为性能不如SCSI,还有一方面就是现在Linux下许多软件只能操作SCSI光驱,如刻录软件,音乐播放软件等,总之,IDE基本上“淘汰”了,所以以前 的hd*以后估计不会再见到了。

阅读(4913) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~