DNS-323에서 USB 메모리 사용하기
최광용 Lv. 15 llllllllll 
4233 hit since 2011/03/10 14:00

USB 메모리를 DNS-323에 꼽아 swap파티션으로 사용하는 방법에 대해서는 지난 포스트에서 다룬적이 있다. 그러나 swap으로만 쓰기보다는 ffp나 데비안을 설치하여 사용하는 것이 여러모로 이득이다.

ffp나 데비안 파일들을 설치를 해 두면 HDD엑세스하는 것이 현저히 줄어들기 때문에 HDD가 sleep에서 자주 깨어나는 것을 방지할 수 있고, 자주 엑세스하는 파일들을 flash에서 읽기때문에 속도면에서도 이득이 된다.

USB 메모리를 설치한 후 다음과 같이 시스템을 변경하였다.

  1. /mnt/HD_a4/ffp -> /mnt/usbdisk/ffp
  2. /mnt/HD_b4/debian_root -> /mnt/usbdisk/debian_root

1. usb-storage.ko 모듈 설치

DNS-323에서 USB 메모리를 사용하기 위해서는 usb-storage.ko 모듈이 필요하다. 미리 컴파일된 파일은 다음 사이트에서 구할 수 있다.

http://wiki.dns323.info/howto:external_drive

위 사이트에서 다운로드한 usb-storage.ko 파일을 /mnt/HD_a2/ 디렉토리에 복사해둔다.

2. USB 메모리 초기화

위 모듈 설치 후 USB 메모리를 DNS-323에 연결한 후 파티션 설정 및 linux 파일시스템으로 포멧한다.

  1. # fdisk /dev/sdc

기존 파티션 모두 삭제 후 새로운 primary patrition을 하나 추가해준다.

파티션 설정 후 mke2fs 명령으로 포멧한다.

  1. # mke2fs /dev/sdc1

3. ffp및 debian_root 디렉토리 복사

이제 사용할 ffp및 debian_root 디렉토리를 /mnt/usbdisk 디렉토리로 복사한다. debian_root를 사용중이라면 bind mount가 되어있을텐데, mount를 해제한 뒤에 복사를 해야한다. 쉬운 방법은 /ffp/start/sshd.sh파일에 실행권한을 빼고 재부팅 한 뒤에 복사를 진행하면 된다.

  1. # cp -a /mnt/HD_a4/ffp /mnt/usbdisk/
  2. # cp -a /mnt/HD_b4/debian_root /mnt/usbdisk/

4. fun_plug 스크립트 수정

/mnt/HD_a2/fun_plug 파일에 다음과 같은 내용을 추가한다. usb-storage.ko파일 로드 및 usb 메모리를 마운트하는 과정이다. 마운트가 안되는 경우가 발생하여 딜레이를 좀 추가했다.

  1. #!/bin/sh

    FFP_DIR=/mnt/usbdisk

    # insmod usbdisk
    insmod /mnt/HD_a2/usb-storage.ko
    mkdir /mnt/usbdisk
    sleep 10
    mount /dev/sdc1 /mnt/usbdisk

    # write a log, in case sth goes wrong
    FFP_LOG=$FFP_DIR/ffp.log
    exec >>$FFP_LOG 2>&1

이제 재부팅을 하면 /mnt/usbdisk에 있는 ffp가 실행되면서 부팅이 될 것이다. telnet 및 sshd등 기존과 같이 동일하게 사용하면 된다.

ps. /ffp/start/sshd.sh 파일은 수정이 필요하다. /mnt/HD_b4/를 사용하여 bind mount하던 것을 /mnt/usbdisk/를 사용하도록 수정을 해야한다.