转载保留:http://blog.csdn.net/luoweifeng1989/archive/2011/05/17/6426193.aspx

一直不知道 sda sdb sr0 这些名字的前两两个字母是什么意思

  • > > On Tue, Nov 3, 2009 at 9:34 AM, Derek Broughton
  • > > <derek@pointerstop.ca>wrote:
  • > > Translation - I don't know either... lol
  • > Actually, I'd already said that - and suggested "raw" as a
  • > wild guess. But
  • > I was intrigued that Detlef thought that knowing what it stood
  • > for would
  • > prevent errors, since I really can't imagine how most of us
  • > would need to
  • > know it.
  • > --
  • > derek
  • >
  • > And knowing the acronym definitions probably won't help the learning
  • > too much, either.
  • > But, according to the Linux SCSI sub-system documentation I have, it
  • > would have to stand for _SCSI_ _READ_ since it is a cd drive that is
  • > designated read-only. For generic operations on the same device, it
  • > would map to sg0 (_SCSI_ _GENERIC_) in order to gain the write perm.
  • > Apparently all of the devices like /dev/sr0, /dev/st0, /dev/nst0x map
  • > to an sg device for generic operations.
  • > Although _raw_ seems to be a good logical choice.
  • Loïc had it right.
  • But you should read the code from orbit. It's the only way to make sure.
  • >From a 2.4 kernel source
  • drivers/scsi/sd.c
  • static struct Scsi_Device_Template sd_template = {
  • name:"disk",
  • tag:"sd",
  • scsi_type:TYPE_DISK, <== "d" for disk
  • major:SCSI_DISK0_MAJOR,
  • /*
  • * Secondary range of majors that this driver handles.
  • */
  • min_major:SCSI_DISK1_MAJOR,
  • max_major:SCSI_DISK7_MAJOR,
  • blk:1,
  • detect:sd_detect,
  • init:sd_init,
  • finish:sd_finish,
  • attach:sd_attach,
  • detach:sd_detach,
  • init_command:sd_init_command,
  • };
  • drivers/scsi/st.c
  • static struct Scsi_Device_Template st_template =
  • {
  • name:"tape",
  • tag:"st",
  • scsi_type:TYPE_TAPE, <== "t" for tape
  • major:SCSI_TAPE_MAJOR,
  • detect:st_detect,
  • init:st_init,
  • attach:st_attach,
  • detach:st_detach
  • };
  • drivers/scsi/sr.c
  • static struct Scsi_Device_Template sr_template =
  • {
  • name:"cdrom",
  • tag:"sr",
  • scsi_type:TYPE_ROM, <== "r" for ROM
  • major:SCSI_CDROM_MAJOR,
  • blk:1,
  • detect:sr_detect,
  • init:sr_init,
  • finish:sr_finish,
  • attach:sr_attach,
  • detach:sr_detach,
  • init_command:sr_init_command
  • };
  • >From a 2.6 kernel source
  • drivers/scsi/sr.c
  • MODULE_DESCRIPTION("SCSI cdrom (sr) driver");
  • MODULE_LICENSE("GPL");
  • MODULE_ALIAS_BLOCKDEV_MAJOR(SCSI_CDROM_MAJOR);
  • MODULE_ALIAS_SCSI_DEVICE(TYPE_ROM);
  • MODULE_ALIAS_SCSI_DEVICE(TYPE_WORM);
  • --
  • ubuntu-users mailing list
  • ubuntu-users@lists.ubuntu.com
  • Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-users

可以看出:

sr代表 scsi + rom

sd代表 scsi + disk

sg 代表 scsi + generic

st代表 scsi + tape

/dev/cdrom 只是/dev/sr0的符号链接

linx 设备名字来由 sd sr sg st的更多相关文章

  1. 如何获取ios 设备名字 model

    由于需要获取设备名字,在网上找了一些方法,发现能够解决问题,但是需要做一个匹配,然后设备年年都会出新款,而且设备的种类又很多,所以在获取设备信息后我又做了一个操作,--->我在google上找到 ...

  2. Android设备内存和SD卡操作工具类

    package cc.c; import java.io.File; import java.util.List; import android.os.StatFs; import java.io.F ...

  3. linux设备管理之主设备号与次设备号

    主设备号和次设备号 一个字符设备或者块设备都有一个主设备号和次设备号.主设备号和次设备号统称为设备号.主设备号用来表示一个特定的驱动程序.次设备号用来表示使用该驱动程序的其他设备.(主设备号和控制这类 ...

  4. Linux FC/iSCSI存储设备管理系列(一):Linux系统设备驱动入门

    Linux FC/iSCSI存储设备管理系列(一):Linux系统设备驱动入门 转载请在文首保留原文出处:EMC中文支持论坛 - https://community.emc.com/go/chines ...

  5. 识别 Linux上的设备(磁盘)类型

    1. Linux 上的设备 (device) Linux 操作系统中,各种设备驱动(device driver)通过设备控制器(device controller)来管理各种设备(device),其关 ...

  6. (转载)使用 udev 高效、动态地管理 Linux 设备文件

    概述: Linux 用户常常会很难鉴别同一类型的设备名,比如 eth0, eth1, sda, sdb 等等.通过观察这些设备的内核设备名称,用户通常能知道这些是什么类型的设备,但是不知道哪一个设备是 ...

  7. (转载)linux中设备文件配置程序udev详解

    如果你使用Linux比较长时间了,那你就知道,在对待设备文件这块,Linux改变了几次策略.在Linux早期,设备文件仅仅是是一些带有适当的属性集的普通文件,它由mknod命令创建,文件存放在/dev ...

  8. 嵌入式 使用udev高效、动态地管理Linux 设备文件

    本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本文会使那 ...

  9. 【转】使用 udev 高效、动态地管理 Linux 设备文件

    简介: 本文以通俗的方法阐述 udev 及相关术语的概念.udev 的配置文件和规则文件,然后以 Red Hat Enterprise Server 为平台演示一些管理设备文件和查询设备信息的实例.本 ...

随机推荐

  1. python3将docx转换成pdf,html文件,pdf转doc文件

    直接上代码 # -*- encoding:utf-8 -*- """ author:lgh 简单的doc转pdf,html,pdf转doc脚本 依赖库pdfminer3k ...

  2. git 超前一个版本 落后一个版本的解决方案

    在使用SourceTree的时候经常会遇见超前一个版本,落后N个版本的情况,遇见这种情况应该怎么办呢? 首先打开终端,最好是从SourceTree里面打开,菜单栏有个终端按钮. 然后输入: $ git ...

  3. 【原创】Android自定义适配器的使用方法

    比如说我们已经得到了数据,想在一个listview或者在其他的控件中显示的,并且我们显示想要自己设计样式来显示的话就要用到自定义适配器了,下面让我们结合代码讲一下具体的使用方法: 代码会有注释的哦: ...

  4. PHP变量引用赋值与变量赋值变量的区别

    变量默认总是传值赋值.那也就是说,当将一个表达式的值赋予一个变量时,整个原始表达式的值被赋值到目标变量.这意味着,例如,当一个变量的值赋予另外一个变量时,改变其中一个变量的值,将不会影响到另外一个变量 ...

  5. UIImagePickerController 视频录制操作,视频大小,时间长度

    一:使用 iOS 系统 UIImagePickerController 获取视频大小 获取视频长度 - (void)viewDidLoad { [super viewDidLoad]; // Do a ...

  6. selenium获取html源代码

    # 执行js得到整个HTML html = driver.execute_script("return document.documentElement.outerHTML") 获 ...

  7. LoadRunner访问 Mysql数据库

    这是很久以前编写的一个测试案例,那时是为了检查大量往Mysql数据库里插入数据,看一下数据库的性能如何?服务器是否会很快就被写满了. 前期的准备工作:Mysql 数据库搭建,LoadRunner,li ...

  8. 南阳OJ 背包问题

     /*背包问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描写叙述 如今有非常多物品(它们是能够切割的),我们知道它们每一个物品的单位重量的价值v和 重量w(1< ...

  9. JavaWeb 获取ip地址

      JavaWeb 获取ip地址 CreateTime--2018年5月31日17点56分 Author:Marydon import java.net.InetAddress; import jav ...

  10. C/C++ 编程计算2的100万次方(m的n次方),超长结果输出文件

    #include <iostream> #include <stdio.h> #include <stdlib.h> #include <string> ...