歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> BSD >> 在FreeBSD下使用USB設備

在FreeBSD下使用USB設備

日期:2017/2/28 11:22:09   编辑:BSD


<1>
這幾天為了demoAP而使勁微調我的FreeBSD內核,設備驅動砍掉一塊又一塊,到了USB這裡偶開始有一點
猶豫了。正捉摸者,忽然發現這樣一個設備選項:
#device umass
嗯...有點好玩兒,偶拿Linux做桌面好久了,USB硬盤,優盤,偶的DC和它也配合得很好,倒是一直沒想
過在FreeBSD下使用這些。好吧,偶就做一次小白鼠,試試看在FreeBSD下使用偶的DC吧。
(FreeBSD版本: 5.1 release)
在FreeBSD下使用這些怪東東,最好的選擇當然是自己重新編譯一下內核。偶沒有試默認內核是否支持,但
FreeBSD默認內核總是最大化編譯的,所以應該本身就能夠很好支持這些設備。如果不行的話就跟偶一起make
world吧。經過幾次make kernel,總算摸清楚了它的depend關系,在BSD/Linux中,USB設備都是模擬為
SCSI設備的,所以當然你的內核得加上SCSI / USB 和 USBMass驅動才可以。
<2>
這樣,至少你的內核文件中至少就該有如下選項:
===
# SCSI peripherals # SCSI 相關選項
device scbus # SCSI 總線支持 (必須)
device ch # SCSI media changers
device da # SCSI 磁盤支持 (必須)
# USB support # USB 相關選項
device uhci # UHCI PCI->USB USB接口 (必須)
device ohci # OHCI PCI->USB USB接口
device usb # USB 總線支持 (必須)
device ugen # Generic
#device ehci # USB 2.0總線支持,根據你的需要
device umass # USB塊存儲設備驅動
===
如果你需要真正能夠使用這些設備的話,可能還需要加上這些以支持NTFS和FAT文件系統:
===
options NTFS
options MSDOSFS
===
<3>
使用下列命令編輯內核配置文件,並編譯新內核:
# vi /sys/i386/conf/GENERIC # 添加或修改上段所寫的選項
# cd /sys/i386/conf
# config GENERIC # 生成內核配置選項
# cd ../compile/GENERIC
# make depend && make install # 編譯和安裝內核
# reboot # 重新引導
<4>
如果以上幾個步驟都沒出錯的話,那麼你走運了,現在你應該可以使用優盤之類的設備了,不過還是先確認一下:
# dmesg |grep umass
# dmesg |more
在上面兩條指令後,你至少可以看到這樣的一段信息:
===
uhci0: port 0xa400-0xa41f irq 9
at device 31.2 on pci0
usb0: on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
umass0: Genesys Logic USB TO IDE, rev 2.00/0.02, addr 2
===
如果你看到了umass0這一行,那麼現在就插入你的USB移動硬盤,優盤,或是DC ~_*
插入之後,應該會立刻在控制台上顯示一段很顯眼的提示:
===
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Fixed Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 19077MB (39070080 512 byte sectors: 255H 63S/T 2432C)
(da0:umass-sim0:0:0:0): READ(6)/WRITE(6) not supported, increasing minimum_cmd_
size to 10.
===
上面是偶的IBM移動硬盤。
===
umass0: detached
umass0: Sony Sony DSC, rev 1.10/4.10, addr 2
da0 at umass-sim0 bus 0 target 0 lun 0
da0: Removable Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 123MB (253696 512 byte sectors: 64H 32S/T 123C)
===
上面是偶的Sony DSC-P7 數碼相機。
<5>
然後,就可以直接mount這些設備:
# mount -tmsdos /dev/da0s1 /mnt
# ls -alF /mnt
total 50
drwxr-xr-x 1 root wheel 16384 Jan 1 1980 ./
drwxr-xr-x 17 root wheel 512 Jul 15 21:58 ../
drwxr-xr-x 1 root wheel 16384 Jan 5 2002 dcim/
-r-xr-xr-x 1 root wheel 0 Oct 26 2002 memstick.ind*
drwxr-xr-x 1 root wheel 16384 Jan 5 2002 mssony/
設備名一般是/dev/da0s1 <2/3/4...>,按照你的USB設備分區依次。
使用完之後別忘了先umount掉設備之後在拔掉哦,不然和在Windows下一樣會得到一個警告提示的,一不
小心也會丟數據。
<6>
FreeBSD目前支持以下USB存儲設備,如果你對USB系統熟悉的話,也可以自己添加或移植驅動。
(包含幾乎全部閃盤,移動硬盤,記憶棒,大多數的USB CDROM/MO,和一些DC,MMC和SD未測試)
===
ADTEC Stick Drive AD-UST32M, 64M, 128M, 256M
Denno FireWire/USB2 Removable 2.5-inch HDD Case MIFU-25CB20
FujiFilm Zip USB Drive ZDR100 USB A
GREEN HOUSE USB Flash Memory ``PicoDrive'' GH-UFD32M, 64M, 128M
IBM 32MB USB Memory Key (P/N 22P5296)
IBM ThinkPad USB Portable CD-ROM Drive (P/N 33L5151)
I-O DATA USB x6 CD-RW Drive CDRW-i64/USB (CDROM only)
I-O DATA USB CD/CD-R/CD-RW/DVD-R/DVD-RW/DVD-RAM/DVD-ROM Drive DVR-iUH2 (CDROM,
DVD-RAM only)
Iomega USB Zip 100Mb (primitive support still)
Iomega Zip750 USB2.0 Drive
Keian USB1.1/2.0 3.5-inch HDD Case KU350A
Kurouto Shikou USB 2.5-inch HDD Case GAWAP2.5PS-USB2.0
Logitec USB1.1/2.0 HDD Unit SHD-E60U2
Logitec Mobile USB Memory LMC-256UD
Logitec USB Double-Speed Floppy Drive LFD-31U2
Logitec USB/IEEE1394 DVD-RAM/R/RW Unit LDR-N21FU2 (CDROM only)
Matshita CF-VFDU03 floppy drive
MELCO USB2.0 MO Drive MO-CH640U2
I-O DATA USB/IEEE1394 Portable HD Drive HDP-i30P/CI, HDP-i40P/CI
MELCO USB Flash Disk ``PetitDrive'', RUF-32M, -64M, -128M, -256M
MELCO USB2.0 Flash Disk ``PetitDrive2'', RUF-256M/U2, -512M/U2
MELCO USB Flash Disk ``ClipDrive'', RUF-C32M, -C64M, -C128M, -C256M, -C512M
Microtech USB-SCSI-HD 50 USB to SCSI cable
NOVAC USB2.0 2.5/3.5-inch HDD Case NV-HD351U
Panasonic floppy drive
Panasonic USB2.0 Portable CD-RW Drive KXL-RW40AN (CDROM only)
RATOC Systems USB2.0 Removable HDD Case U2-MDK1, U2-MDK1B
Sony Portable CD-R/RW Drive CRX10U (CDROM only)
TEAC Portable USB CD-ROM Unit CD-110PU/210PU
Y-E Data floppy drive (720/1.44/2.88Mb)
FreeBSD 5.1支持的USB控制器
===
ALi Aladdin-V
AMD-756
CMD Tech 670 & 673
Intel 82371SB (PIIX3)
Intel 82371AB and EB (PIIX4)
Intel 82801AA (ICH)
Intel 82801AB (ICH0)
Intel 82801BA/BAM (ICH2)
Intel 82443MX
NEC uPD 9210
OPTi 82C861 (FireLink)
SiS 5571
VIA 83C572 USB
其它 UHCI 或 OHCI 兼容主板
支持的USB HUB設備
===
ADS Electronics PCI plug-in card (2 ports)
Entrega PCI plug-in card (4 ports)
Andromeda hub
MacAlly self powered hub (4 ports)
NEC hub
Copyright © Linux教程網 All Rights Reserved