linux

位置:IT落伍者 >> linux >> 浏览文章

在Linux下使用Minolta Dimage 5相机


发布日期:2024年01月28日
 
在Linux下使用Minolta Dimage 5相机

作者Guido Socher 翻译Liu Tao

简介

Dimage 相机在Linux下工作的非常好但是你得先配置usb存储系统还要 重新编译内核

在这篇短文里我将只关注配置和安装部分而不解释如何观看编辑和打包 数字图象

思路

Dimage 和 Dimage 相机使用USB大容量存储系统这意味着在Linux里它们 看起来象是一块硬盘你可以用任何文件管理器(如konqueror)或者shell命令 来拷贝移动删除图象换句话说你不需要任何特殊的东西来得到那些图象 你只需要让Linux能和你的相机对话就行

步骤

在这篇文章里我用的是内核用其他的x内核应该也可以但是 不能用x内核因为usb大容量存储系统还没有被移植到x内核

编辑 /usr/src/linux/drivers/usb/storage/ 下的 unusual_devsh 文件加入下面 两项:

UNUSUAL_DEV( x x x x

Minolta

Dimage

US_SC_SCSI US_PR_BULK NULL US_FL_START_STOP )

UNUSUAL_DEV( x x x x

Minolta

Dimage

US_SC_SCSI US_PR_BULK NULL US_FL_START_STOP )

这就是最难的部分!剩下的就很简单了我把这两项告诉了该文件的维护者 希望以后的内核会包括这几行

现在重新编译内核除了你平常用的硬件配置选项还要确保你选了以下选项

# General setup

CONFIG_HOTPLUG=y

# SCSI support

CONFIG_SCSI=y

CONFIG_BLK_DEV_SD=y

CONFIG_SD_EXTRA_DEVS=

CONFIG_SR_EXTRA_DEVS=

CONFIG_CHR_DEV_SG=m

CONFIG_SCSI_CONSTANTS=y

CONFIG_SCSI_LOGGING=y

# File systems

CONFIG_FAT_FS=m

CONFIG_VFAT_FS=m

# USB support

CONFIG_USB=y CONFIG_USB_DEVICEFS=y

# USB Controllers

CONFIG_USB_UHCI=m

CONFIG_USB_UHCI_ALT=m

CONFIG_USB_OHCI=m

# USB Device Class drivers

CONFIG_USB_STORAGE=m

CONFIG_USB_STORAGE_DATAFAB=y

CONFIG_USB_STORAGE_DPCM=y

CONFIG_USB_STORAGE_SDDR=y

CONFIG_USB_STORAGE_JUMPSHOT=y

你可以在 /usr/src/nfig 里检查这些选项我并不认为你确实需要 CONFIG_USB_STORAGE_DATAFAB CONFIG_USB_STORAGE_DPCM CONFIG_USB_STORAGE_SDDR 和CONFIG_USB_STORAGE_JUMPSHOT 等选项这是一些flash卡读卡设备 但是如果你有一台相机再拥有它们会很不错

SCSI支持是必须的因为usb存储器在用户看来会是一块SCSI磁盘

现在编译并安装内核有很多文档介绍如何编译内核(的KernelHOWTO 或者 这篇 Linuxfocus 文章) 因此我将不解释任何细节你主要要做以下这些:

#在 /usr/include 里建立以下连接:

scsi > /src/linux/include/scsi

asm > /src/linux/include/asmi

linux > /src/linux/include/linux

# 配置:

make xconfig

# 编译:

make dep

make clean

make bzImage

make modules

make modules_install

cp /usr/src/linux/arch/i/boot/zbImage /boot/vmlinuz

cp /usr/src/linux/Systemmap /boot/Systemmap

cp /boot/Systemmap /boot/Systemmap

cp /usr/src/nfig /boot/Config

#编辑 /etc/nf

#运行 lilo (或grup 如果你用grup)

/sbin/lilo

#重启机器

连接相机

把相机连上并建立usb连接这在相机的手册里有讲解

用 /sbin/lsmod 命令检查 usbstorage 和 usbuhci(或usbohci) 模块是否装入 如果没有的话用下面的命令装入

modprobe usbuhci

modprobe usbstorage

打开/proc/bus/usb/devices你会看到这台相机的条目:

T: Bus= Lev= Prnt= Port= Cnt= Dev#= Spd= MxCh=

D: Ver= Cls=(>ifc ) Sub= Prot= MxPS= #Cfgs=

P: Vendor= ProdID= Rev=

S: Manufacturer=MINOLTA DIMAGE CAMERA

S: Product=DIMAGE CAMERA

C:* #Ifs= Cfg#= Atr= MxPwr= mA

I: If#= Alt= #EPs= Cls=(stor) Sub= Prot= Driver=usbstorage

E: Ad=(O) Atr=(Bulk) MxPS= Ivl= ms

带有如上设备的usb proc文件系统通常会被自动装载但如果不是这样请 用下边的命令手动装载:

mount t usbdevfs /proc/bus/usb /proc/bus/usb

这台相机看起来会是一块SCSI磁盘如果你已经有其他的SCSI硬件(即使不是磁盘 如SCSI 光驱)它会是/dev/sdb否则应该是/dev/sda你可以用fdisk检查 这个磁盘在哪儿:

fdisk l /dev/sda

Disk /dev/sda: heads sectors cylinders

Units = cylinders of * bytes

Device Boot Start End Blocks Id System

/dev/sda * FAT

在/etc/fstab里添上这行:

/dev/sda /mnt/camera vfat rwnoautouser

创建/mnt/camera目录并使它可写:

mkdir /mnt/camera

chmod /mnt/camera

chmod /dev/sda

这个配置允许任何用户装上或者卸下相机而不用切换成root

得到照片

我们已经安装配置好了现在键入:

mount /mnt/camera

你就可以从/mnt/camera目录下得到你的照片了

警告:决不要在未卸下相机(umount /mnt/camera)的情况下断开相机

关于这款相机

你来看这篇文章可能是因为你想买一台Minolta Dimage相机并且对我对这款相机的 经验感兴趣

总的来说这是一款非常好的相机在很多方面它超过了我的预想一旦你完成了相应 的配置并重新编译内核它就可以很好的和Linux连接工作

从这里可以得到这款相机技术方面的说明 ww

和其他的数码相机一样这款相机有一个大问题:费电我做了一些测试: 只打开电子取景器时它需要安培的电流电压再打开自动聚焦和小监视器它平均要消耗安培电流平均安培!峰值可达安培如果你连续使用的话 节小型 AA NiMh 电池 ( mAh)可以支撑小时Minolta 声称用一套电池你能拍摄大约张照片我个人认为你得以极快的速度拍完这张照片否则电池就会用完这是因为不管你拍不拍照片相机的耗电并没有多大不同关键是相机开了多长时间

参考

The linux usb pages

The linux hotplug page linuxhot

热插拔是一套很复杂的自动装入象 usbstorage 这样的模块的shell脚本 我更希望在 /etc/rcd/rclocal (Redhat/Mandrake) 里有一个简单的 modprobe 入口这就要看你的了

A selection of image viewer programs:

gimp ()

konqueror ()

gphoto () You do not need the download function of gphoto but you can use it to browse any directory and generate html index pages

gqview (gq)

xv (/xv/l) This program did already exist when many computers had only text based desktops but it is still good

Casio cameras and usbstorage: wwwharaldschreiberde

上一篇:在Linux下使用ISDN拨号上网

下一篇:Linux各项系统开机服务的功能