Предоставил Marc Fonvieille.
Множество современных устройств хранения используют Universal Serial Bus (USB):
жесткие диски, брелоки USB, CD-R приводы, и т.д. FreeBSD предоставляет поддержку этих
устройств.
Драйвер umass(4) предоставляет
поддержку устройств хранения USB. Если вы используете GENERIC
ядро, изменять что-либо в настройках не потребуется. Если вы используете настроенное
ядро, убедитесь, что в файле настройки присутствуют следующие строки:
device scbus
device da
device pass
device uhci
device ohci
device usb
device umass
Для доступа к устройствам хранения USB драйвер umass(4) использует
подсистему SCSI, ваши устройства USB будут видны системе как SCSI устройства. В
зависимости от чипсета USB на материнской плате, вам потребуется только один из
параметров device uhci или device
ohci. Однако, наличие обоих этих параметров не помешает. Не забудьте скомпилировать
и установить новое ядро после добавления каких-либо строк.
Замечание: Если ваше USB устройство это пишущий привод CD-R или DVD, необходимо
добавить в ядро SCSI CD-ROM драйвер, cd(4), следующей
строкой:
device cd
Поскольку устройство записи видно как SCSI диск, драйвер atapicam(4) не должен
использоваться в файле настройки.
Поддержка USB 2.0 контроллеров предоставляется в FreeBSD 5.X, и в ветви 4.X с
FreeBSD 4.10-RELEASE. Добавьте:
device ehci
в файл настройки ядра для поддержки USB 2.0. Обратите внимание, что драйверы uhci(4) и ohci(4) все еще нужны,
если необходима поддержка USB 1.X.
Замечание: В FreeBSD 4.X, необходимо запустить USB даемона (usbd(8)), чтобы
увидеть некоторые USB устройства. Для этого добавьте usbd_enable="YES" в файл /etc/rc.conf и
перезагрузите компьютер.
Конфигурация готова к тестированию, подключите устройство USB, и в буфере системных
сообщений (dmesg(8)), диск должен
отобразиться примерно так:
umass0: USB Solid state disk, rev 1.10/1.00, addr 2
GEOM: create disk da0 dp=0xc2d74850
da0 at umass-sim0 bus 0 target 0 lun 0
da0: <Generic Traveling Disk 1.11> Removable Direct Access SCSI-2 device
da0: 1.000MB/s transfers
da0: 126MB (258048 512 byte sectors: 64H 32S/T 126C)
Конечно, производитель, имя устройства (da0) и другие
детали могут отличаться в зависимости от конфигурации.
Поскольку устройство USB видится как SCSI, команда camcontrol
может быть использована для вывода списка устройств хранения USB, подключенных к
системе:
# camcontrol devlist
<Generic Traveling Disk 1.11> at scbus0 target 0 lun 0 (da0,pass0)
Если на диске есть файловая система, у вас должна быть возможность смонтировать ее. Разд. 16.3 поможет вам создать и отформатировать разделы на
диске USB если потребуется.
Если вы отключите устройство (диск должен быть сначала размонтирован), вы должны
увидеть в буфере системных сообщений что-то подобное:
umass0: at uhub0 port 1 (addr 2) disconnected
(da0:umass-sim0:0:0:0): lost device
(da0:umass-sim0:0:0:0): removing device entry
GEOM: destroy disk da0 dp=0xc2d74850
umass0: detached