OFFS 마운팅하기

offs.fuse 툴을 이용하여 마운팅합니다.

offs.fuse 사용법

offs.fuse 명령어 형식은 아래와 같습니다.

offs.fuse [-e] [-d <block device path>] [-f] <mountpoint>
  • -d 옵션은 블럭 디바이스 장치 경로입니다. -d 옵션이 없는 경우, /dev/mmcblk0p1 장치를 사용합니다.
  • -e 옵션은 SD카드가 아닌 외장형 HDD나 SDD에 마운팅할 때 사용합니다.
  • -f 옵션은 foreground 로 마운팅합니다. 사용자는 Ctrl+C 키를 누르면 unmount하고 종료됩니다. 포맷 정보와 현재 사용량에 대해 확인할 수 있습니다.

offs.fuse 사용예

SD 카드 사용

아래는 /dev/mmcblk0p1 에 위치한 SD 카드를 /mnt/sd에 마운팅하는 예입니다.

$ ./offs.fuse -d /dev/mmcblk0p1 /mnt/sd 

     version: 3.14.4(arm64) (build 48643)
    dev path: /dev/mmcblk0p1 (SDCARD)
mounted path: /mnt/sd
     libfuse: v314 (build v310, use v34) mt 1

아래는 -f 옵션을 사용하였을 예입니다.

$ ./offs.fuse -d /dev/mmcblk0p1 /mnt/sd -f

     version: 3.14.4(arm64) (build 48643)
    dev path: /dev/mmcblk0p1 (SDCARD)
mounted path: /mnt/sd
     libfuse: v314 (build v310, use v34) mt 1
WR chunk 131072 buf 1024K
/dev/mmcblk0 readonly? 0
MBR fs 8160
PBR cl 16384, spc 32, bps 512
OFFS(ver. 3.14, type 1) detected
FAT 0x404000 0xb7c000 32 15296
DAT 0x12f4000 1 1
VOLUME: MARS
WR align 16384 chunk 131072
SIGNATURE: MARS
DRIVING repairable
PARKING repairable
EVENT repairable
MOTION repairable
Configuration#5:
   DRIVING   50%   180 MB #85   -0    69 32 #43
   PARKING   20%   180 MB #34   -0    979525 75 #18
     EVENT   10%    24 MB #128  -0    1371461 93 #65
    MOTION   10%    24 MB #128  -0    1568581 158 #65
  SNAPSHOT    0%     0 MB #0    -0    1765701 0 #0
  free space: 3121528832 bytes (2976.92 MB, 2.91 GB)

블럭 장치가 mkfs.offs 를 이용하여 포맷 안 된 경우, 마운팅되지 않습니다.

mount 명령으로 마운팅 결과를 확인합니다.

# mount
/dev/root on / type squashfs (ro,relatime,errors=continue)
devtmpfs on /dev type devtmpfs (rw,relatime,size=45476k,nr_inodes=11369,mode=755)
proc on /proc type proc (rw,relatime)
devpts on /dev/pts type devpts (rw,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /dev/shm type tmpfs (rw,relatime,mode=777)
tmpfs on /tmp type tmpfs (rw,relatime)
sysfs on /sys type sysfs (rw,relatime)
tmpfs on /run type tmpfs (rw,relatime)
tmpfs on /root type tmpfs (rw,nosuid,nodev,relatime)
ubi0:ubi0_0 on /mnt/flash type ubifs (rw,relatime,assert=read-only,ubi=0,vol=0)
offs.fuse on /mnt/sd type fuse.offs.fuse (rw,nosuid,nodev,relatime,user_id=0,group_id=0)

umount 명령어로 언마운팅합니다.

$ umount /mnt/sd

외장형 저장 장치 사용

아래는 외장형 장치에 마운팅하는 예입니다.

lsblk 등의 명령으로 저장 장치 경로를 확인합니다. 외장 하드가 /dev/sdk에 있다고 하면, 아래 명령과 같이 마운팅 합니다.

$ sudo ./offs.fuse -e -d /dev/sdk ~/mnt/offs -o allow_other
     version: 3.13.20(x86_64) (build 42906)
  cache size: 0(disabled)
    dev path: /dev/sdk (HDD or SSD)
mounted path: /home/mars/mnt/offs
     libfuse: v310 (build v310, use v34) mt 1

Note

/etc/fuse.conf 에 user_allow_other 가 설정되어 있어야 일반 user 계정도 파일 시스템에 접근할 수 있습니다. root 계정으로 사용할 경우, -o allow_other 옵션은 사용하지 않습니다.

Note

외장형 HDD나 SDD는 최대 2TB까지 지원합니다. 외장형을 마운팅할 경우, OFFS 커널 모듈 드라이버는 필요하지 않습니다.