1.各硬件设备在Linux中的文件名

在Linux系统中,每个设备都被当做一个文件来对待,同时在Linux系统中,几乎所有的硬件设备文件都在/dev这个目录中。

设备

设备在Linux内的文件名

IDE硬盘 /dev/hd[a-d]
SCSI/SAT/USB硬盘 /dev/sd[a-p]
U盘 /dev/sd[a-p]
软驱 /dev/fd[0-1]

打印机

25针:/dev/lp[0-2]
USB:/dev/usb/lp[0-15]

鼠标

USB:/dev/usb/mouse[0-15]
PS2:USB:/dev/psaux
当前CD ROM/DVD ROM /dev/cdrom
当前鼠标 /dev/mouse

磁带机

IDE:/dev/ht0
SCSI:/dev/st0

2.磁盘分区

2.1 磁盘连接方式与设备文件名的关系

IDE接口:通常主机提供两个IDE接口,分别为IDE1(primary)与IDE2(secondary),而一个IDE扁平电缆可以连接两个IDE设备分别为Master与Slave。

因此通常主机有四个IDE设备文件名,如下表所示:

IDE

Master

Slave

IDE1(Primary) /dev/hda /dev/hab
IDE2(Secondary) /dev/hdc /dev/hdd

SATA接口:根据Linux内核检测到磁盘的顺序决定名字,注意SATA/USB/SCSI等磁盘接口都是使用SCSI模块驱动,这些磁盘设备文件名都是/dev/sd[a-p]。

2.2磁盘分区表

2.2.1磁盘的第一个扇区记录了两个重要信息,分别是:

  1. 主引导分区(Master Boot Record,MBR):安装引导加载程序的地方,有446B。
  2. 分区表(partition table):记录整块硬盘分区的状态,有64B。

为什么要分区呢?答:1.数据安全的角度考虑,不同分区处理不会影响其他分区;2.系统的性能考虑,提高检索的速度。

2.2.2磁盘分区表

磁盘分区表总共分为四组记录区,每组记录了该段的起始和结束的柱面号码,这样就将盘面分成四个分区。

如果磁盘设备的名称是/dev/hda的话,则各个分区的名字是:

  1. P1:/dev/hda1
  2. P1:/dev/hda2
  3. P1:/dev/hda3
  4. P1:/dev/hda4

分区记录表只能将硬盘分成四个分区,要获得更多的分区就需要使用扩展分区。扩展分区是使用额外的扇区记录分区信息,拓展分区本身不能进行格式化,只能对拓展分区内的逻辑分区进行操作,且拓展分区只能一个。

同样的分区在Linux设备中文件名如下:

  1. P1:/dev/hda1
  2. P1:/dev/hda2
  3. P1:/dev/hda5
  4. P1:/dev/hda6
  5. P1:/dev/hda7
  6. P1:/dev/hda8
  7. P1:/dev/hda9

注意P1:/dev/hda3与P1:/dev/hda4保留给Primary或者Extended使用的

以上内容参考《鸟哥的Linux私房菜基础篇》,用于学习目的。

最新文章

  1. BZOJ1493 [NOI2007]项链工厂
  2. sed命令给文本文件的每行的行首或者行尾添加文字
  3. Node.js(1)-helloworld
  4. CSS创建一个遮罩层
  5. springMVC 上传文件
  6. Android根据baidu Android定位SDK实现定位
  7. getResource().getPath()返回的路径空格变成了 %20
  8. ERP联系记录管理(十七)
  9. iPad 2升级iOS 9的过程记录
  10. ExecutorService中submit和execute的区别
  11. eclipse查看.project .class隐藏文件
  12. js事件冒泡原理及处理
  13. 关于win7右下角显示“音频服务未运行”的解决方法
  14. .Net Framework 4.0安装cmd命令
  15. iOS--导航栏样式
  16. Ice笔记-利用Ice::Application类简化Ice应用
  17. Unix时间戳转换成C#中的DateTime
  18. FileBeat安装配置
  19. python with语句中的变量有作用域吗?
  20. C#ImageList和ListView的使用

热门文章

  1. web网站 Vs 移动App 谁更能打动你?之 产品经理篇
  2. Leetcode 详解(valid plindrome)
  3. linux 网卡问题 Device eth0 does not seem to be present,delaying initialization.
  4. JavaScript 开发的45个经典技巧
  5. jquery 单击和双击事件冲突解决方案
  6. js 二维码生成 插件
  7. $scope 的生命周期
  8. Altium Designer自动更新——解决方法
  9. 使用MJRefresh遇到的一个问题,上拉刷新后tableview瞬间滑到最底部
  10. DotSpatial 创建面状要素——含空洞