0

我使用 xen 创建一个 vm 并通过虚拟 cdrom 传递一些信息,最后,在 DomU 中,我需要知道 cdrom 包含信息的磁盘是哪个磁盘。问题是:如何找到 cdrom 设备名称?

4

2 回答 2

1

最简单的就是执行 lsblk,pipe in the result 和 in the result

sr0     11:0    1   308M  0 rom  
sda      8:0    0   120G  0 disk 
├─sda1   8:1    0   300M  0 part /boot
├─sda2   8:2    0 117.8G  0 part /
└─sda3   8:3    0     2G  0 part [SWAP]

检查一行,例如:

“rom”所以,对我来说,CD-rom 是 /dev/sr0 。对你来说可能是 hd0

使用 sysfs.h 和 sysfs 调用需要做更多的工作,更多信息在“man sysfs”或浏览http://lxr.free-electrons.com/source/include/linux/sysfs.h或lsblk 的来源:http: //gitorious.org/util-linux-ng/util-linux-ng/blobs/cc6b1d11eabf9d86849a80f2ca8b4c0afd45844f/misc-utils/lsblk.c

希望这会有所帮助。

于 2012-05-18T07:29:48.847 回答
0

您可以使用 /proc/sys/dev/cdrom/info 的内容

例如
$ cat /proc/sys/dev/cdrom/info

CD-ROM information, Id: cdrom.c 3.20 2003/12/17
drive name:     sr0
drive speed:        62
drive # of slots:   1
Can close tray:     1
Can open tray:      1
Can lock tray:      1
Can change speed:   1
Can select disk:    0
Can read multisession:  1
Can read MCN:       1
Reports media changed:  1
Can play audio:     1
Can write CD-R:     1
Can write CD-RW:    1
Can read DVD:       1
Can write DVD-R:    1
Can write DVD-RAM:  1
Can read MRW:       1
Can write MRW:      1
Can write RAM:      1

这里,如果“驱动器名称:”行包含 sr0,则表示 /dev/sr0 是 cdrom。

于 2016-02-22T12:35:54.907 回答