USB

Fra Wikipedia, den frie encyklopedi.

USB, eller Universal Serial Bus, er en tilkoblingskontakt for tilkobling av eksterne komponenter som for eksempel skriver, harddisk, skjerm, skanner og mye mer.

Innholdsfortegnelse

Hastigheter

USB støtter tre forskjellige overføringshastigheter: Low-speed, Full-speed og Hi-speed

Low-speed
Low-speed er den tregeste overføringshastigheten på 1,5 Mbit per sekund, og brukes ofte for tilkobling av mus, tastatur, joystick og slike komponenter. Fellesbetegnelse for disse komponentene er HID (Human Input Devices)
Full-speed
Full-speed er hittil den mest brukte overføringshastigheten nå til dags. Den har en hastighet på 12 Mbit per sekund, og brukes gjerne til skjerm, skriver og skanner.
Hi-speed
Hi-speed USB, også kalt USB 2.0, er den raskeste med en overføringshastighet på hele 480 Mbit per sekund, og brukes til komponenter som harddisker, digitalkameraer og MP3-spillere.

USB-støtte i Linux

USB-støtte i kjernen lønner det seg som regel å ha som kjernemoduler. Grunnen til det er at rammeverk som hotplug trenger å kunne laste moduler ut og inn avhengig av hva slags USB-enhet som er koblet til.

Kjernemoduler

uhci-hcd
Denne støtten dekker de fleste USB 1.1-kontrollere, herunder Intel, VIA og enkelte andre.
ohci-hcd
Denne støtten dekker USB 1.1 på andre arkitekturer enn x86, samt noen få kontrollere på x86. Sjansen for at du ikke trenger denne er forholdsvis stor.
ehci-hcd
Denne modulen sørger for USB 2.0-støtte.

I tillegg til de relevante modulene for grunnleggende USB-støtte, må du velge de aktuelle modulene for komponentstøtte, for eksempel usb-storage.

Lagringsmedia

USB-enheter som harddisker, digitalkameraer og MP3-spillere støtter ofte standarden USB masselagrings-enhet (USB Mass storage device).

Når disse plugges inn i en datamaskin som kjører Linux, blir de registrert som SCSI-harddisker. På mange moderne distribusjoner blir de automatisk koblet opp og presentert som ikon på skrivebordet. Så lenge det skjer, er det alt du trenger å gjøre for å bruke en slik enhet under linux.

Husk å avmontere disken før du kobler den av datamaskinen. Hvis du ikke gjør dette, kan filer bli skadet.

Hvis ikke disken blir automatisk koblet opp må den monteres manuelt som vist under.

Montering/avmontering

Minnepinner blir registrert som SCSI-harddisker. Det betyr at de vil hete noe a la /dev/sdXY - hvor X er selve harddisken, og Y er partisjonen. Den første partisjonen på den første SCSI-harddisken blir altså /dev/sda1. De fleste minnepinnene bruker filsystemet FAT32, men man kan også bruke andre filsystem om ønsket. Det siste man trenger for å montere nå er en plass å montere til. Tradisjonelt er det en katalog under /mnt, som for eksempel /mnt/kamera (må lages om den ikke eksisterer). Monterings-kommandoen blir da (som root):

# mount -t vfat /dev/sda1 /mnt/kamera

For å tillate alle brukerene å lese og skrive til den, må man legge til opsjonen umask=000, så det blir

# mount -t vfat /dev/sda1 /mnt/kamera -o umask=000

Man kan bruke fstab til å sette opp monteringen en gang for alle, og gi vanlige brukere rett til å montere/avmontere disken.

For å avmontere, skriver man

# umount /mnt/kamera

Det anbefales at man leser mount-artikkelen for mer informasjon om det verktøyet.

Dmesg

dmesg er en nyttig kommando som viser det siste som har havnet i kjerneloggene på Linux-maskinen, disse er ypperlig for å finne ut hva som egentlig skjer. Det er sannsynligvis også det første folk ber deg se etter hvis USB-enheten ikke virker og du spør dem om hjelp.

Her er et eksempel på hva som kan skje når man kobler til et digitalkamera:

usb 1-1: new full speed USB device using address 3
SCSI subsystem initialized
Initializing USB Mass Storage driver...
scsi0 : SCSI emulation for USB Mass Storage devices
  Vendor: MINOLTA   Model: DiMAGE Z1         Rev: 1.00
  Type:   Direct-Access                      ANSI SCSI revision: 02
USB Mass Storage device found at 3
usbcore: registered new driver usb-storage
USB Mass Storage support registered.
SCSI device sda: 250880 512-byte hdwr sectors (128 MB)
sda: assuming Write Enabled
sda: assuming drive cache: write through
 sda: sda1
Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0

De viktige tingene her er at usb-enheten blir oppdaget, at mass storage driveren blir lastet, og linjen sda: sda1, som viser partisjonen(e) på disken, og forteller deg navnet Linux har gitt til den enheten, og som du må bruke når du monterer disken.

lsmod/modprobe

lsmod gir en liste over hvilke moduler som er lastet i kernelen. For at USB skal virke, trenger man et par ting enten kompilert inn i kjernen, eller lastet som moduler.

Her er en liste over de jeg har lastet når kameraet er koblet til (dette er fra 2.6 kernel):

Module                  Size  Used by               Beskrivelse
vfat                   13760  0                     Driver for FAT32
fat                    44064  1 vfat                Driver for FAT32
sd_mod                 14736  0                     Driver for SD-kort
usb_storage            65152  0                     Driver for USB Mass storage
scsi_mod               80320  2 sd_mod,usb_storage  Driver for SCSI

Man bruker modprobe for å laste og fjerne moduler.


Personal tools