欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

【转】linx 设备名字来由 sd sr sg st

发布时间:2023/12/10 编程问答 42 豆豆
生活随笔 收集整理的这篇文章主要介绍了 【转】linx 设备名字来由 sd sr sg st 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

转自:/dev/sr0 与/dev/cdrom_luoweifeng1989的博客-CSDN博客_/dev/sr0

一直不知道 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的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。