• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

Unterschied /dev/sr und /dev/sd

Hallo!

Ich habe ein SCSI DVD Laufwerk / Brenner und eine SCSI Festplatte in meinem Notebook. Soviel ich weiß heißen die Gerätedateien von SCSI Geräten sda,b,c,... . Das tut meine Festplatte auch. Sie heißt sda, mein Laufwerk/Brenner heißt aber /dev/sr0.

Wieso heißt das sr und nicht sd?

Hier hab ich nix dazu gefunden:
http://www.linux-club.de/viewtopic.php?t=4949

Danke!

MfG DasJay
 
A

Anonymous

Gast
DasJay schrieb:
Ich habe ein SCSI DVD Laufwerk / Brenner und eine SCSI Festplatte in meinem Notebook. Soviel ich weiß heißen die Gerätedateien von SCSI Geräten sda,b,c,... . Das tut meine Festplatte auch. Sie heißt sda, mein Laufwerk/Brenner heißt aber /dev/sr0.

Wieso heißt das sr und nicht sd?

Die Gerätedateien von SCSI-Festplatten heißen /dev/sd.... , es gibt aber noch andere SCSI-Geräte und da heist auch der Knoten anders, zB Bandlaufwerke /dev/st... ; CD-ROM /dev/sr.. und noch einiges mehr. Es kommt immer darauf an welcher Treiber benutzt werden soll. Dieser Treiber ist als sogenannte Major-Number in der Inode des Gerätedatei versteckt.

Code:
 # ls -l /dev/sda1 /dev/sr1 /dev/st1 /dev/sg1
brw-rw----  1 root disk  8, 1 Apr  6  2004 /dev/sda1
crw-r-----  1 root disk 21, 1 Apr  6  2004 /dev/sg1
brw-r-----  1 root disk 11, 1 Apr  6  2004 /dev/sr1
crw-rw----  1 root disk  9, 1 Apr  6  2004 /dev/st1
Das sind hier alles SCSI-Devices, die Majornumber ist die Zahl hinter disk also 8 21 11 und 9 .
Eine Zuordnung zu den Treibern erhält man mittels Datei /usr/include/linux/major.h
Code:
 # grep SCSI /usr/include/linux/major.h
#define SCSI_DISK0_MAJOR        8
#define SCSI_TAPE_MAJOR         9
#define SCSI_CDROM_MAJOR        11
#define SCSI_GENERIC_MAJOR      21
#define SCSI_DISK1_MAJOR        65
#define SCSI_DISK2_MAJOR        66
#define SCSI_DISK3_MAJOR        67
#define SCSI_DISK4_MAJOR        68
#define SCSI_DISK5_MAJOR        69
#define SCSI_DISK6_MAJOR        70
#define SCSI_DISK7_MAJOR        71
#define SCSI_DISK8_MAJOR        128
#define SCSI_DISK9_MAJOR        129
#define SCSI_DISK10_MAJOR       130
#define SCSI_DISK11_MAJOR       131
#define SCSI_DISK12_MAJOR       132
#define SCSI_DISK13_MAJOR       133
#define SCSI_DISK14_MAJOR       134
#define SCSI_DISK15_MAJOR       135
#define OSST_MAJOR              206     /* OnStream-SCx0 SCSI tape */
Und damit noch nicht genug, man kann auch noch die einzelnen SCSI-Devics mit verschiedenen Treibern ansprechen.

Code:
 # sginfo -s /dev/sg0
Serial Number '    00001022'

 # scsiinfo -s /dev/sda
Serial Number '    00001022'
hier habe ich zB von ein und derselben Festplatte über unterschiedliche Treiber und damit auch über unterschiedliche Gerätenamen die Seriennummer ausgelesen.

Es wird also immer einzeln nach Treiber hochgezählt zB.
* erste Festplatte , zweite Festplatte, dritte Festplatte usw. also aus Sicht des Festplattenkontrollers und da wird auch das CD-Rom-SCSI Gerät mitgezählt, da dieser Treiber mit diesem Gerät arbeiten kann.
* Der SCSI-CD-ROM-Treiber zählt auch seine Geräte hoch, erste CD-Rom zweite CD-ROM und so weiter. Aber dieser kann mit einer Festplatte nichts anfangen, wird diese also nicht mitzählen.
* Der SCSI-Generic-Treiber kann wiederum mit allen SCSI-Geräten arbeiten, wird also auch noch einen Scanner und Bandlaufwerke und sonstnoch welche SCSI-Geräte mithochzählen.

Es ist also zB. durchaus möglich das in einem System einund dasselbe SCSI-CD-ROM über /dev/sdc ; /dev/sg3 und /dev/sr0 angesprochen werden kann. also 3. SCSI-Festplatte ; 4. generisches SCSI-Gerät und 1. SCSI-CD-ROM.
Das bedeutet aber noch lange nicht, das dann auch jeder Befehl oder jedes Programm auch über jeden Treiber mit diesem Gerät arbeiten kann. :cry:

Na, ich hoffe mal, das ich dich jetzt nicht noch richtig durcheinander gebracht habe :wink: :lol:

robi
 
Danke für die ausführlich und gute Erklärung! Jetzt verstehe ich mehr. Werd das auf jeden Fall zu meinen del.icio.us Bookmarks hinzufügen.

Danke!

MfG DasJay
 
Oben