디지털 카메라 등에서는 저장장치로 CF, MMC, MemoryStick 등을(이하 메모리카드) 사용한다. 이런 메모리카드를 PC에서 바로 사용하기 위해서 USB형태의 메모리카드 리더기를(이하 USB 리더기) 많이 사용한다.
이 문서는 USB 리더기를 Linux에서 사용하는 방법에 대해 설명한다.
커널 컴파일(2.4.x 기준)
USB 리더기를 사용하기 위해 커널의 scsi support 옵션과 usb support 옵션을 아래와 같이 변경 한다.
general setup
- Support for hot-pluggable devices (CONFIG_HOTPLUG=y)
scsi support
- SCSI Support (CONFIG_SCSI=m, scsi.o)
- SCSI disk support (CONFIG_BLK_DEV_SD=m, sd.o)
- SCSI generic support (CONFIG_CHR_DEV_SG=m, sg.o)
usb support
- Support for USB (CONFIG_USB=m, usb.o)
- Preliminary USB device file system (CONFIG_USB_DEVICEFS=y, devices.o?)
- 다음 중 1개 또는 그 이상(필요에따라): UHCI (CONFIG_USB_UHCI=m, usb-uhci.o), OHCI (CONFIG_USB_OHCI=m, usb-ohci.o)
- USB Mass Storage support (CONFIG_USB_STORAGE=m, usb-storage.o)
장치가 연결되었는지 확인하기.
USB 리더기를 컴퓨터에 연결한다.
커널 옵션을 제대로 설정하면 Linux에서 scsi 장비로 인식된다.
인식 여부를 알아보기 위해 sg3-utils 패키지를 설치 한다Debian 에서는 패키지가 제공된다
sg3-utils 를 설치한 후 아래 명령을 통해서 인식 여부를 알아볼 수 있다.
# sg_scan -i /dev/sg0: scsi0 channel=0 id=0 lun=0 [em] type=5 LG CD-ROM CRD-8400C 1.02 [wide=0 sync=0 cmdq=0 sftre=0 pq=0x0] /dev/sg1: scsi1 channel=0 id=0 lun=0 [em] type=0 Generic STORAGE DEVICE 0113 [wide=0 sync=0 cmdq=0 sftre=0 pq=0x0] /dev/sg2: scsi1 channel=0 id=0 lun=1 [em] type=0 Generic STORAGE DEVICE 0113 [wide=0 sync=0 cmdq=0 sftre=0 pq=0x0] /dev/sg3: scsi1 channel=0 id=0 lun=2 [em] type=0 Generic STORAGE DEVICE 0113 [wide=0 sync=0 cmdq=0 sftre=0 pq=0x0] /dev/sg4: scsi1 channel=0 id=0 lun=3 [em] type=0 Generic STORAGE DEVICE 0113 [wide=0 sync=0 cmdq=0 sftre=0 pq=0x0]
4가지 메모리를 한번에 사용할 수 있는 USB 리더기를 사용하기 때문에 scsi 장치가 4개 (1번부터 4번) 인식되었다.
이제 인식된 장치가 어떤 block device 에 연결되는지 알아보자.
# sg_map /dev/sg0 /dev/sr0 /dev/sg1 /dev/sda /dev/sg2 /dev/sdb /dev/sg3 /dev/sdc /dev/sg4 /dev/sdd
1번 장치부터 sda 에 연결된 것을 확인할 수 있다.
/etc/fstab 설정
위의 내용을 보고 /etc/fstab 파일을 편집한다.
/dev/sda1 /mnt/cf vfat noauto,user 0 0 /dev/sdb1 /mnt/sm vfat noauto,user 0 0 /dev/sdc1 /mnt/mmc vfat noauto,user 0 0 /dev/sdd1 /mnt/ms vfat noauto,user 0 0
설정 완료
이제 모든 설정은 완료되었다. USB 리더기를 꼽고 mount 명령을 사용해서 일반 디스크처럼 사용할 수 있다. gnome 사용자라면 '디스크 마운트 애플릿' 을 사용하면 좀 더 쉽게 mount / unmount를 할 수 있다.