| sane-scsi(5) | SANE: „Scanner Access Now Easy” | sane-scsi(5) |
sane-scsi - sfaturi pentru adaptorul SCSI pentru scanere
Această pagină de manual conține diverse sfaturi și trucuri specifice sistemului de operare pentru a face să funcționeze scanerele cu interfață SCSI.
În cazul scanerelor cu interfață SCSI, poate fi necesar să editați fișierul de configurare al controlorului corespunzător înainte de a utiliza SANE pentru prima dată. Pentru majoritatea sistemelor, fișierul de configurare ar trebui să enumere numele dispozitivului SCSI generic la care este conectat scanerul (de exemplu, sub Linux, /dev/sg4 sau /dev/sge este un astfel de dispozitiv SCSI generic). Se obișnuiește să se creeze o legătură simbolică de la /dev/scanner la dispozitivul SCSI generic la care este conectat scanerul. În acest caz, fișierul de configurare listează pur și simplu linia /dev/scanner. Pentru o descriere detaliată a fișierului de configurare al fiecărui controlor, consultați pagina de manual a controlorului respectiv (de exemplu, sane-epson(5) pentru scanerele Epson, sane-hp(5) pentru scanerele HP etc.).
Pentru unele sisteme de operare (de exemplu, Linux și OS/2), există o modalitate alternativă de a specifica dispozitivele de scanare. Acest mod alternativ permite identificarea scanerelor prin șirul fabricantului și al modelului SCSI și/sau prin adresa dispozitivului SCSI (formată din numărul de magistrală, numărul canalului, ID-ul și numărul unității logice). Sintaxa pentru specificarea unui scaner în acest mod este următoarea:
unde FABRICANT este șirul fabricantului SCSI, MODEL este șirul modelului SCSI, TIP este șirul tipului de dispozitiv SCSI, BUS este numărul de magistrală SCSI (numit „host” în /proc/scsi/scsi), CANAL este numărul canalului SCSI, ID este ID-ul SCSI și NR_UNIT_LOGICĂ este numărul unității logice a dispozitivului de scanare. Primele două câmpuri sunt șiruri de caractere care trebuie să fie încadrate între ghilimele duble dacă conțin spații albe. Celelalte patru câmpuri sunt numere întregi nenegative. Valorile corecte pentru aceste câmpuri pot fi găsite cu ajutorul instrumentelor specifice sistemului de operare, de exemplu, pentru Linux, consultând rezultatul comenzii cat /proc/scsi/scsi. Pentru a simplifica configurarea, valoarea unui câmp poate fi înlocuită cu un simbol asterisc („*”). Un asterisc are ca efect faptul că orice valoare este permisă pentru câmpul respectiv. Acest lucru poate avea ca efect faptul că o singură linie scsi corespunde mai multor dispozitive. Atunci când se întâmplă acest lucru, fiecare dispozitiv care se potrivește va fi cercetat de către controlor unul câte unul și înregistrat dacă controlorul consideră că este un dispozitiv compatibil. De exemplu, linia
va atașa scanerul Mustek SCSI cu următoarea intrare „/proc/scsi/scsi”:
Host: scsi0 Channel: 00 Id: 03 Lun: 00
Vendor: MUSTEK Model: MFS-06000CX Rev: 4.04
Type: Scanner ANSI SCSI revision: 0
De obicei, este suficient să se utilizeze doar șirurile fabricantului și modelului sau chiar doar șirul fabricantului. Următorul exemplu
va avea ca efect faptul că toate dispozitivele SCSI din sistem cu un șir de furnizor MUSTEK vor fi cercetate și recunoscute de controlor.
În cazul în care restul unui șir scsi este format numai din asteriscuri, asteriscurile pot fi omise. De exemplu, următoarea linie este echivalentă cu cea specificată anterior:
Pe unele platforme (de exemplu, OpenStep), numele dispozitivelor SANE au o formă specială. Acest lucru este explicat mai jos, în secțiunea specifică platformei respective.
Atunci când utilizați un scaner SCSI, asigurați-vă că permisiunea de acces pentru dispozitivul SCSI generic este configurată în mod corespunzător. Vă recomandăm să adăugați un grup „scanner” la /etc/group care să conțină toți utilizatorii care ar trebui să aibă acces la scaner. Permisiunea dispozitivului trebuie apoi configurată astfel încât să permită accesul grupului la citire și scriere. De exemplu, dacă scanerul se află pe dispozitivul generic SCSI /dev/sg0, atunci următoarele două comenzi vor configura corect permisiunea:
Atunci când sistemul dvs. utilizează sistemul de fișiere de dispozitiv (devfs), trebuie să editați /etc/devfs/perms. Acolo trebuie să căutați linia:
și să adăugați o nouă linie (de exemplu, pentru a schimba permisiunile lui sg4):
Autoconfigurarea folosind liniile „scsi *” din fișierele de configurare funcționează numai dacă utilizatorul care rulează interfața are acces de citire/scriere la /dev/xpt0. În schimb, puteți stabili, de asemenea, o legătură /dev/scanner către dispozitivul /dev/uk corespunzător.
În primul rând, asigurați-vă că nucleul dvs. are activat suportul generic SCSI. În make xconfig, acest lucru apare la „SCSI support->SCSI generic support”.
Pentru a reduce la minimum timpii de scanare, se recomandă cu tărie utilizarea unei memorii tampon de dimensiuni mari pentru controlorul SCSI generic. Începând cu versiunea 2.0 a controlorului SG, dimensiunea maximă a memoriei tampon poate fi modificată în timpul rulării programului și nu există nicio restricție în ceea ce privește dimensiunea. Această versiune de controlor face parte din nucleele Linux începând cu versiunea 2.2.7. În cazul în care noul controlor SG este disponibil, unii controlori-sane (de exemplu, sane-umax(5), sane-mustek(5), sane-sharp(5)) solicită automat memorii tampon SCSI mai mari. Dacă un controlor-sane nu solicită automat o memorie tampon SCSI mai mare, definiți variabila de mediu SANE_SG_BUFFERSIZE la dimensiunea dorită a memoriei tampon în octeți. Nu se recomandă să se utilizeze mai mult de 1 Mo, deoarece, pentru valori mari, crește probabilitatea ca controlorul SG să nu poată aloca memorile tampon necesare. Pentru plăcile ISA, chiar și 1 Mo ar putea fi o valoare prea mare. Pentru o discuție detaliată a controlorului Linux SG SCSI, consultați: https://tldp.org/HOWTO/SCSI-Generic-HOWTO.
Pentru nucleele Linux anterioare versiunii 2.2.7, dimensiunea memoriei tampon este de numai 32Ko. Acest lucru funcționează, dar pentru multe scanere mai ieftine acest lucru face ca scanarea să fie mai lentă de aproximativ patru ori decât atunci când se utilizează o dimensiune de 127Ko. Linux definește dimensiunea acestei memorii tampon prin macro-ul SG_BIG_BUFF din fișierul de antet /usr/include/scsi/sg.h. Cu excepția cazului în care un sistem are un deficit serios de memorie, se recomandă creșterea acestei valori la valoarea maximă legală de 128*1024-512=130560 octeți. După modificarea acestei valori, este necesar să se recompileze atât nucleul (sau modulul generic SCSI), cât și controlorii SCSI. Rețineți că acest lucru este necesar numai în cazul nucleelor Linux mai vechi.
O problemă frecventă în cazul scanerelor SCSI este ce trebuie făcut atunci când ați pornit sistemul în timp ce scanerul era oprit. În acest caz, scanerul nu va fi recunoscut de nucleu și SANE nu va putea să-l acceseze. Din fericire, Linux oferă un mecanism simplu pentru a sonda un dispozitiv SCSI la cerere. Să presupunem că aveți un scaner conectat la magistrala SCSI 2 și că scanerul are un ID SCSI de 5. Când sistemul este pornit și funcționează și scanerul este pornit, puteți emite comanda:
iar nucleul va sonda și va recunoaște scanerul (acest lucru trebuie să fie făcut ca root). De asemenea, este posibil să eliminați dinamic un dispozitiv SCSI folosind comanda «remove-single-device». Pentru detalii, vă rugăm să consultați SCSI-2.4-HOWTO.
Se știe că scanerele funcționează cu următoarele adaptoare SCSI în Linux. Această listă nu este completă, de obicei orice adaptor SCSI acceptat de Linux ar trebui să funcționeze.
În Solaris, OpenStep și NeXTStep, numele generic al dispozitivului SCSI se referă la o magistrală SCSI, nu la un dispozitiv individual. De exemplu, /dev/sg0 se referă la prima magistrală SCSI. Pentru a-i indica lui SANE ce dispozitiv să folosească, adăugați caracterul „a”+id-țintă la numele special al dispozitivului. De exemplu, dispozitivul SCSI conectat la primul controler SCSI și cu ID-ul-țintă 0 se va numi /dev/sg0a, iar dispozitivul cu ID-ul-țintă 1 de pe aceeași magistrală se va numi /dev/sg0b, și așa mai departe.
sane(7), sane-find-scanner(1), sane-„nume-controlor”(5), sane-usb(5)
David Mosberger
Traducerea în limba română a acestui manual a fost făcută de Remus-Gabriel Chelu <remusgabriel.chelu@disroot.org>
Această traducere este documentație gratuită; citiți Licența publică generală GNU Versiunea 3 sau o versiune ulterioară cu privire la condiții privind drepturile de autor. NU se asumă NICIO RESPONSABILITATE.
Dacă găsiți erori în traducerea acestui manual, vă rugăm să trimiteți un e-mail la translation-team-ro@lists.sourceforge.net.
| 14 iulie 2008 |