15.3. SCSI Drivers
Λεπτομερείς πληροφορίες σχετικά με τα προγράμματα οδήγησης SCSI βρίσκονται στο SCSI-2.4-HOWTO.
Η λειτουργία SCSI του Linux υλοποιείται σε τρία επίπεδα και υπάρχουν LKM για όλα αυτά.
Στη μέση είναι ο οδηγός μέσου επιπέδου ή ο πυρήνας SCSI. Αυτό αποτελείται από το scsi_mod LKM. Κάνει όλα εκείνα τα πράγματα που είναι κοινά μεταξύ των συσκευών SCSI ανεξάρτητα από τον προσαρμογέα SCSI που χρησιμοποιείτε και ποια κατηγορία συσκευών (δίσκος, σαρωτής, μονάδα CD-ROM κ.λπ.) είναι.
Υπάρχει ένα πρόγραμμα οδήγησης χαμηλού επιπέδου για κάθε είδος προσαρμογέα SCSI - συνήθως, διαφορετικό πρόγραμμα οδήγησης για κάθε εμπορικό σήμα. Για παράδειγμα, ονομάζεται το πρόγραμμα οδήγησης χαμηλού επιπέδου για τους προσαρμογείς Advansys (που κατασκευάζεται από την εταιρεία που τώρα είναι το Connect.com) advansys . (Αν συγκρίνετε συσκευές ATA (aka IDE) και SCSI δίσκους, αυτό είναι μια σημαντική διαφορά - το ATA είναι απλό και αρκετά τυπικό ώστε ένας οδηγός να λειτουργεί με όλους τους προσαρμογείς από όλες τις εταιρείες. λιγότερη εμπιστοσύνη σε έναν συγκεκριμένο προσαρμογέα είναι απόλυτα συμβατή με το σύστημά σας).
Τα προγράμματα οδήγησης υψηλού επιπέδου εμφανίζουν στον υπόλοιπο πυρήνα μια διεπαφή κατάλληλη για μια συγκεκριμένη κατηγορία συσκευών. Το πρόγραμμα οδήγησης SCSI υψηλού επιπέδου για συσκευές ταινίας, st , για παράδειγμα, έχει το ioctls να επιστρέψει προς τα πίσω. Το πρόγραμμα οδήγησης SCSI υψηλού επιπέδου για μονάδες CD-ROM, sr , δεν.
Σημειώστε ότι σπάνια χρειάζεστε ένα πρόγραμμα οδήγησης υψηλού επιπέδου ειδικά για μια συγκεκριμένη συσκευή. Σε αυτό το επίπεδο, δεν υπάρχει αρκετός χώρος για να διακρίνεται ένα εμπορικό σήμα από το άλλο.
Ένας οδηγός υψηλού επιπέδου SCSI που αξίζει ιδιαίτερη αναφορά είναι sg . Αυτό το πρόγραμμα οδήγησης, που ονομάζεται "γενικός οδηγός SCSI", είναι ένα αρκετά λεπτό στρώμα που παρουσιάζει μια μάλλον ακατέργαστη αναπαράσταση του οδηγού μέσου επιπέδου SCSI στο υπόλοιπο του πυρήνα. Προγράμματα χώρου χρηστών που λειτουργούν μέσω του γενικού προγράμματος οδήγησης SCSI (επειδή έχουν πρόσβαση σε ειδικά αρχεία συσκευών των οποίων ο μεγαλύτερος αριθμός είναι αυτός που έχει καταχωρηθεί από sg (στο wit, 21)) έχουν μια λεπτομερή κατανόηση των πρωτοκόλλων SCSI, ενώ τα προγράμματα χώρου χρηστών που λειτουργούν μέσω άλλων οδηγών υψηλού επιπέδου SCSI συνήθως δεν γνωρίζουν καν το SCSI. Το SCSI-Programming-HOWTO διαθέτει πλήρη τεκμηρίωση του γενικού προγράμματος οδήγησης SCSI.
Η σειρά στρωμάτων των μονάδων SCSI διαψεύδει τον τρόπο με τον οποίο εξαρτώνται τα LKM μεταξύ τους και τη σειρά με την οποία πρέπει να φορτωθούν. Πάντα φορτώνετε πρώτα τον οδηγό του μεσαίου επιπέδου και εκφορτώστε τον τελευταίο. Οι οδηγοί χαμηλού επιπέδου και υψηλού επιπέδου μπορούν να φορτωθούν και να εκφορτωθούν με οποιαδήποτε σειρά μετά από αυτό, και αυτοί γαντζώνονται και δημιουργούν εξάρτηση από τον οδηγό μέσης στάθμης και στα δύο άκρα. Αν δεν έχετε ένα πλήρες σετ, θα λάβετε σφάλμα "δεν βρέθηκε συσκευή" όταν προσπαθείτε να αποκτήσετε πρόσβαση σε μια συσκευή.
Τα περισσότερα προγράμματα οδήγησης SCSI χαμηλού επιπέδου (προσαρμογέα) δεν έχουν παράμετρο LKM. αυτοί γενικά αυτοελέγχου για ρυθμίσεις καρτών. Εάν η κάρτα σας ανταποκρίνεται σε κάποια μη συμβατική διεύθυνση θύρας, πρέπει να δεσμεύσετε το πρόγραμμα οδήγησης στον πυρήνα βάσης και να χρησιμοποιήσετε τις επιλογές του "kernel" του πυρήνα. Δείτε το BootPrompt-HOWTO. Ή μπορείτε να περιστρέψετε την πηγή και να την ανασυγκροτήσετε ξανά.
Πολλά προγράμματα οδήγησης χαμηλού επιπέδου SCSI διαθέτουν τεκμηρίωση στο οδηγοί / scsi στον κατάλογο πηγών Linux, σε αρχεία που ονομάζονται README. *.
15.3.1. scsi_mod: SCSI οδηγός μέσου επιπέδου
Παράδειγμα:
modprobe scsi_mod
Δεν υπάρχουν παράμετροι μονάδας.
15.3.2. sd_mod: SCSI οδηγός υψηλού επιπέδου για συσκευές δίσκου
Παράδειγμα:
modprobe sd_mod
Δεν υπάρχουν παράμετροι μονάδας.
15.3.3. st: Οδηγός υψηλού επιπέδου SCSI για συσκευές ταινίας
Παράδειγμα:
modprobe st
Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO.
15.3.4. sr_mod: Οδηγός υψηλού επιπέδου SCSI για μονάδες CD-ROM
Παράδειγμα:
modprobe sr_mod
Δεν υπάρχουν παράμετροι μονάδας.
15.3.5. sg: SCSI οδηγός υψηλού επιπέδου για γενικές συσκευές SCSI
Δείτε την εξήγηση αυτού του ειδικού οδηγού υψηλού επιπέδου παραπάνω.
Παράδειγμα:
modprobe sg
Δεν υπάρχουν παράμετροι μονάδας.
* Αδεια
* Φορτωτή μονάδα πυρήνα Πώς-να δείκτη
Παράμετροι.
15.3.6. wd7000: SCSI οδηγός χαμηλού επιπέδου για 7000FASST
Παράδειγμα:
Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός προσεγγίζει την κάρτα και απαιτεί εγκατεστημένο BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός προσεγγίζει την κάρτα και απαιτεί εγκατεστημένο BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτόματα προβάλλει την κάρτα σε 0x330 και 0x334 μόνο. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτό το πρόγραμμα οδήγησης προωθεί αυτομάτως την κάρτα και το BIOS πρέπει να είναι ενεργοποιημένο. Παράδειγμα: Παράμετροι μονάδας: Αν συνδέσετε αυτό το πρόγραμμα οδήγησης στον πυρήνα βάσης, μπορείτε να περάσετε παραμέτρους σε αυτό μέσω των παραμέτρων εκκίνησης του πυρήνα. Δείτε το BootPrompt-HOWTO. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα. Δεν απαιτείται BIOS. Η λίστα καρτών BusLogic που μπορεί να οδηγήσει ο οδηγός είναι μεγάλη. Ανάγνωση αρχείου οδηγούς / scsi / README.BusLogic στο δέντρο του Linux πηγαίου κώδικα για να πάρετε τη συνολική εικόνα. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Αν συνδέσετε αυτό το πρόγραμμα οδήγησης στον πυρήνα βάσης, μπορείτε να περάσετε παραμέτρους σε αυτό μέσω των παραμέτρων εκκίνησης του πυρήνα. Δείτε το BootPrompt-HOWTO. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα. Αυτός ο οδηγός χειρίζεται DPT PM2011 / 021/012/022/122/322. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός χειρίζεται τα DPT, NEC, AT & T, SNI, AST, Olivetti και Alphatronix. Αυτός ο οδηγός χειρίζεται DPT Smartcache, Smartcache III και SmartRAID. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Το Autoprobe λειτουργεί σε όλες τις διαμορφώσεις. Αυτός ο οδηγός χειρίζεται παλιά DPT PM2001, PM2012A. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Αυτός ο οδηγός αυτοελέγει την κάρτα και απαιτεί εγκατεστημένο BIOS. Παράδειγμα: για μια κάρτα χαρτογραφημένης κάρτας NCR5380: για μια πλακέτα NCR53C400 με μνήμη με διακοπή: Παράμετροι: Αν συνδέσετε αυτό το πρόγραμμα οδήγησης στον πυρήνα βάσης, μπορείτε να περάσετε παραμέτρους σε αυτό μέσω των παραμέτρων εκκίνησης του πυρήνα. Δείτε το BootPrompt-HOWTO. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτοελέγει την κάρτα και απαιτεί εγκατεστημένο BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας. Δείτε το αρχείο οδηγούς / scsi / README.ppa στο δέντρο πηγής του Linux για λεπτομέρειες. Παράδειγμα: Παράμετροι: Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα. Δεν απαιτείται BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Απαιτεί υλικολογισμικό. Αυτό το πρόγραμμα οδήγησης προορίζεται για Seagate ST-02 και Future Domain TMC-8xx. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτό το πρόγραμμα οδήγησης πραγματοποιείται αυτόματα για τη διεύθυνση μόνο. Το IRQ είναι σταθερό στο 5. Το πρόγραμμα οδήγησης απαιτεί εγκατεστημένο BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα. Το πρόγραμμα οδήγησης απαιτεί εγκατεστημένο BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. Αυτός ο οδηγός αυτομάτως προετοιμάζει την κάρτα, αλλά δεν τη θύρα 0x310. Δεν απαιτείται BIOS. Παράδειγμα: Δεν υπάρχουν παράμετροι μονάδας για το LKM, αλλά αν δεσμεύσετε αυτήν την ενότητα στον πυρήνα βάσης, μπορείτε να περάσετε μερικές παραμέτρους μέσω των παραμέτρων εκκίνησης του Linux. Δείτε το BootPrompt-HOWTO. modprobe wd7000
15.3.7. aha152x: SCSI οδηγός χαμηλού επιπέδου για Adaptec AHA152X / 2825
modprobe aha152x
15.3.8. aha1542: SCSI οδηγός χαμηλού επιπέδου για το Adaptec AHA1542
modprobe aha1542
15.3.9. aha1740: SCSI οδηγός χαμηλού επιπέδου για το Adaptec AHA1740 EISA
modprobe aha1740
15.3.10. aic7xxx: Οδηγός χαμηλού επιπέδου SCSI για Adaptec AHA274X / 284X / 294X
modprobe aic7xxx
15.3.11. advansys: SCSI οδηγός χαμηλού επιπέδου για το AdvanSys / Connect.com
modprobe advansys asc_opflag = 1 asc_ioport = 0x110,0x330 asc_dbglvl = 1
15.3.12. in2000: SCSI οδηγός χαμηλού επιπέδου για το Always IN2000
modprobe in2000
15.3.13. BusLogic: SCSI οδηγός χαμηλού επιπέδου για BusLogic
modprobe BusLogic
15.3.14. dtc: SCSI οδηγός χαμηλού επιπέδου για το DTC3180 / 3280
modprobe dtc
15.3.15. eata: SCSI οδηγός χαμηλού επιπέδου για EATA ISA / EISA
modprobe eata
15.3.16. eata_dma: SCSI οδηγός χαμηλού επιπέδου για EATA-DMA
modprobe eata_dma
15.3.17. eata_pio: SCSI οδηγός χαμηλού επιπέδου για το EATA-PIO
modprobe eata_pio
15.3.18. fdomain: SCSI οδηγός χαμηλού επιπέδου για μελλοντικό τομέα 16xx
modprobe fdomain
15.3.19. NCR5380: SCSI οδηγός χαμηλού επιπέδου για NCR5380 / 53c400
modprobe NCR5380 ncr_irq = xx ncr_addr = xx ncr_dma = nxr ncr_5380 = 1 ncr_53c400 = 1
modprobe g_NCR5380 ncr_irq = 5 ncr_addr = 0x350 ncr_5380 = 1
modprobe g_NCR5380 ncr_irq = 255 ncr_addr = 0xc8000 ncr_53c400 = 1
15.3.20. NCR53c406a: SCSI οδηγός χαμηλού επιπέδου για NCR53c406a
modprobe NCR53c406a
15.3.21. 53c7,8xx.o: SCSI οδηγός χαμηλού επιπέδου για NCR53c7,8xx
modprobe 53c7,8xx
15.3.22. ncr53c8xx: Πρόγραμμα οδήγησης χαμηλού επιπέδου SCSI για οικογένεια PCI-SCS NCR538xx
modprobe ncr53c8xx
15.3.23. ppa: οδηγός SCSI χαμηλού επιπέδου για παράλληλη θύρα ZIP της IOMEGA
modprobe ppa ppa_base = 0x378 ppa_nybble = 1
15.3.24. pas16: SCSI οδηγός χαμηλού επιπέδου για το PAS16
modprobe pas16
15.3.25. qlogicfas: SCSI οδηγός χαμηλού επιπέδου για Qlogic FAS
modprobe qlogicfas
15.3.26. qlogicisp: SCSI οδηγός χαμηλού επιπέδου για ISP του Qlogic
modprobe qlogicisp
15.3.27. seagate: SCSI οδηγός χαμηλού επιπέδου για τη Seagate, μελλοντικό τομέα
modprobe seagate
15.3.28. t128: Οδηγός χαμηλού επιπέδου SCSI για Trantor T128 / T128F / T228
modprobe t128
15.3.29. u14-34f: SCSI οδηγός χαμηλού επιπέδου για UltraStor 14F / 34F
modprobe u14-34f
15.3.30. ultrastor: οδηγός SCSI χαμηλού επιπέδου για UltraStor
modprobe ultrastor




