Hallo, On Don, 08 Feb 2001, Herbert Taeubler wrote:
On Mon, 29 Jan 2001, David Haller wrote:
Kontrollier mal
'ls -l /dev/hdc*' Das sollte folgendes ergeben: brw-rw---- 1 root disk 22, 0 Jul 23 1999 /dev/hdc brw-rw---- 1 root disk 22, 1 Jul 23 1999 /dev/hdc1 [..] brw-rw---- 1 root disk 22, 15 Jul 23 1999 /dev/hdc15 Das sieht bei mir, mit Ausnahme des Datums (Mar 11 2000) und der Sortierung, genauso aus.
Auch immer mit dem b in der ersten Spalte? Dann ok.
Muesste jedoch nicht, gemaess der Fehlermeldung:
Jan 27 20:27:35 PENTIUM1 kernel: end_request: I/O error, dev 16:01 (hdc), sector 2063342 die Ausgabe von ?ls -l /dev/hdc*? wie folgt aussehen (16 anstelle von 22)? brw-rw---- 1 root disk 16, 0 Mar 11 2000 /dev/hdc ^^^ Nach meinem Verstaendnis: Ja! (tut sie jedoch nicht).
Nein, eben nicht...
BTW, was bedeutet bei dev 16:01 das 01? Ich koennte mir vorstellen, dass es fuer die Partition 01 steht.
Denn das dev 16:01 bedeutet: Device mit der Major-Nummer 16 und der Minor-Nummer 01. major 16 ist aber (nach devices.txt) 16 block GoldStar CD-ROM (und auch nur die minor 0 = /dev/gscd). Ueber die major/minor Kombination wird ja der Zusammenhang zwischen /dev/foo und dem Treiber dafuer hergestellt. Soweit ich weiss (hab's nicht getestet) koennte man wirklich ein /dev/foo anlegen, mit major = 22, minor = 1 und darueber dann die erste Partition der ersten IDE-Festplatte am zweiten IDE-Kontroller ansprechen. Es wird aber eben als Konvention nicht /dev/foo sondern /dev/hdc1 verwendet ;) Wegen der Zuordnung major/minor und device/trieber, lies /usr/src/linux/Documentation/devices.txt.
Ich versuche wiederzugeben, was ich annehme, verstanden zu haben:
# echo mknod -m 660 /dev/hdc b 22 0 -m set permission mode - Zugriffsrechte setzen 660 Zugriffrechte wie bei chmod (-rw-rw----) /dev/hdc die Festplatte b erzeugt ein block device 22 mit der device-Nr. 22 0 als /dev/hdc
Fast korrekt. Nicht device-Nummer und nicht "als /dev/hdc", sondern "ordne /dev/hdc dem Blockdevice major=22 minor=0 zu" An Hand dieser 3 Daten (block, major, minor) "weiss" dann der Kernel welcher Treiber zustaendig ist wenn auf /dev/hdc zugegriffen wird, laesst den Treiber dann ggfs. mit insmod laden und reicht dann die Lese- oder Schreibdaten/Befehle an den Treiber (in diesem Fall fuer IDE-Festplatten) weiter.
# for i in `seq 1 15`; do echo mknod -m 660 /dev/hdc$i b 22 $i; done das selbe f?r /dev/hdc1 bis /dev/hdc15 in einem Durchgang
Genau.
Theoretisch duerfen diese beiden Zeilen (mknod -m... und for i...) nichts aendern (da ja ?ls -l /dev/hdc*? schon den entsprechenden Eintrag auswirft, wie oben angefuehrt).
Jup. Also lass es.
# echo chown root.disk /dev/hdc* change owner f?r /dev/hdc, /dev/hdc1 .. /dev/hdc15 Was bewirkt root.disk? man chown gibt dazu nichts her.
root ist der user/owner, disk die Gruppe. aus man chown: chown [OPTION]... OWNER[.[GROUP]] FILE... Dein Problem liegt vermutlich in der modules.conf und/oder deiner Kernelconfig, denn normal liegt der IDE-Support ja nicht als Modul vor. Schick mir doch mal per PM die modules.conf (oder conf.modules) und die Ausgabe von 'zcat /proc/config.gz' (wenn du einen SuSE-Kernel verwendest, ansonsten die Datei /usr/src/linux/.config CU David -- 31: Multimedia-Multitasking CD-ROM mit Kopfhöreranschluß. (VOBIS Denkzettel)