Google is committed to advancing racial equity for Black communities. See how.
이 페이지는 Cloud Translation API를 통해 번역되었습니다.
Switch to English

비글 본 블랙

OTBR (OpenThread Border Router)은 BeagleBone Black (BBB) ​​플랫폼을 지원합니다.

하드웨어 요구 사항 :

  • 전원용 외부 5V AC 어댑터
  • 8GB 이상의 microSD 카드 (이 설명서의 "SD 카드")
  • RCP 설계에서 스레드 네트워크 연결을 위해 지원되는 OpenThread 플랫폼 (예 : TI CC2652 )

OTBR과 함께 BBB를 사용하려면 다음을 수행하십시오.

  1. 펌웨어를 다운로드 하고 이미지를 SD 카드에 씁니다.
  2. SD 카드에서 BBB를 부팅합니다 .
  3. SD 카드 이미지확장하여 OTBR을 빌드하고 설치하기에 충분한 공간을 만드십시오.
  4. OTBR 빌드 및 설치

펌웨어 다운로드

  1. 권장 펌웨어는 microSD 카드를 통한 BeagleBone 용 Stretch입니다 .
    • 데비안 9.1 2017-08-31 4GB SD LXQT
    • 파일 이름 : bone-debian-9.1-lxqt-armhf-2017-08-31-4gb.img.xz
  2. Etcher 또는 Win32 Disk Imager 와 같은 도구를 사용하여 이미지를 8GB 이상의 SD 카드에 씁니다.

SD 카드에서 부팅

비글 본 블랙

BBB는 온보드 플래시 메모리 또는 SD 카드에서 부팅 할 수 있습니다. OTBR과 함께 BBB를 사용하려면 온보드 플래시 메모리가 OTBR을 구축하고 설치할만큼 크지 않기 때문에 SD 카드에서 부팅해야합니다.

SD 카드에서 BBB를 부팅하려면

  1. SD 카드를 삽입하십시오.
  2. 전원을 차단하십시오.
  3. BOOT 버튼을 길게 누릅니다.
  4. 전원을 연결하십시오.
  5. LED가 깜박이기 시작하면 BOOT 버튼을 놓습니다.

SD 카드 이미지 확장

BBB (Beagle Bone Black) 용 Linux 이미지는 의도적으로 작게 만들어 이미지를 4GB SD 카드 (또는 온보드 4GB 플래시 메모리)에 배치 한 다음 필요에 따라 확장 할 수 있습니다. 총 약 300MB의 여유 공간이 있습니다. BBB를 사용하여 OpenThread Border Router를 설치하고 빌드하기에 충분한 공간이 없을 수 있습니다.

이 문제를 해결하려면

  1. Linux 이미지를 더 큰 SD 카드 (최소 8GB)에 씁니다.
  2. 이미지의 ~ 4GB Linux 파티션을 전체 SD 카드의 크기보다 약간 작게 확장하십시오. 예를 들어, 8GB SD 카드를 사용하는 경우 ~ 7GB로 확장하십시오. 16GB 카드의 경우 ~ 15GB로 확장하십시오.
  3. SD 카드에서 BBB를 부팅합니다.

SD 카드 파티션

SD 카드의 데이터는 사실상 연속적인 데이터 섹터 배열입니다. 섹터 번호는 0 부터 시작하여 XXGB 정도의 섹터 N 에서 끝나며, 마지막 숫자는 실제 SD 카드에 따라 다릅니다.

섹터 0에는 항상 MS-DOS 파티션 테이블이 있습니다. MS-DOS 파티션 테이블은 1-4 개의 파티션 항목을 보유 할 수 있습니다. 각 파티션은 SD 카드 범위 내에서 X 에서 Y 까지 연속적인 섹터입니다. 이것은 4 개의 가능한 파티션 각각에 대해 반복됩니다. 일반적으로 파티션은 순서대로 배치되며, 사용하지 않는 섹터의 수 ( 0 - N )가 끝에 있습니다. 이 "일부 사용하지 않는 섹터"( SOME_N )는 나중에 유리하게 사용할 수 있습니다.

SD 카드에 이미지를 쓰면 이미지 크기에 따라 섹터 0 에서 쓰기가 시작되고 SOME_N 진행됩니다. 할 수없는 것은 이미지 주위의 파티션을 늘리는 것입니다. 불가능합니다. 대신 캔버스 주위의 액자를 생각해보십시오. 사진 프레임은 파티션이고 사진은 데이터입니다. 기존 사진 프레임을 더 큰 사진 프레임으로 바꾸고 캔버스를 다음과 같이 확장하면됩니다.

  1. 데이터를 삭제하지 않고 기존 Linux 파티션을 삭제하십시오. 그림 프레임을 제거했지만 사진이 여전히 캔버스에 있습니다.
  2. 이전 파티션이 시작된 곳에서 정확히 시작하지만 SD 카드의 끝 부분에 가까운 새로운 Linux 파티션을 작성하십시오. 더 큰 사진 프레임을 만들었습니다. 그림 (데이터)은 여전히 ​​캔버스에 있습니다. 이동하지 않았으며이 조작으로 손상되지 않았습니다.
  3. 파일 시스템 별 도구를 사용하여 새 파티션 범위 내에서 파일 시스템을 확장하십시오. 새롭고 큰 액자를 채우기 위해 캔버스가 늘어납니다.

1 단계 : 현재 데이터 파티션 식별

  1. SD 카드에서 BBB를 부팅합니다.
  2. root 로 로그인하십시오.
    sudo bash
    
  3. SD 카드 데이터 파티션을 식별하십시오.
    root@beaglebone:/home/debian# df -hT /
    Filesystem     Type  Size  Used Avail Use% Mounted on
    /dev/mmcblk0p1 ext4  3.3G  2.8G  295M  91% /
    
    Filesystem 필드의 p1 접미사는 Partition 1의 명명 규칙입니다. 장치 자체는 /dev/mmcblk0 입니다. 이 예에서는 295MB 만 사용 가능합니다. OTBR을 빌드하고 설치할 공간이 충분하지 않습니다.

2 단계 : 더 큰 새로운 파티션 생성

  1. 장치 (SD 카드)에서 fdisk 를 실행하십시오.
    root@beaglebone:/home/debian# fdisk /dev/mmcblk0
    
    Welcome to fdisk (util-linux 2.25.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
  2. 현재 파티션 테이블을 인쇄하여 시작 섹터를 찾으십시오.
    Command (m for help): p
    Disk /dev/mmcblk0: 7.2 GiB, 7744782336 bytes, 15126528 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xca52207f
    
    Device         Boot Start     End Sectors  Size Id Type
    /dev/mmcblk0p1 *     8192 6963199 6955008  3.3G 83 Linux
    
    Start 필드의 값은 대상 파티션의 시작 섹터입니다. 1 단계에서와 동일한 파티션 이름과 Linux Type 으로 나열되어야합니다. 위 출력에서 ​​시작 섹터는 8192 입니다.
  3. 기존 파티션을 삭제하십시오.
    Command (m for help): d
    Selected partition 1
    Partition 1 has been deleted.
    
  4. 파티션 번호 1, 이전 파티션의 동일한 시작 섹터 (이 예에서는 8192 ) 및 SD 카드 크기보다 1GB 작은 크기를 사용하여 새 파티션을 작성하십시오. 예를 들어 8GB SD 카드를 사용하는 경우 +7G 크기를 지정하십시오. 16GB SD 카드의 경우 +15GB 크기를 지정하십시오.
    Command (m for help): n
    Partition type
    p   primary (0 primary, 0 extended, 4 free)
    e   extended (container for logical partitions)
    Select (default p): p
    Partition number (1-4, default 1): 1
    First sector (2048-15126527, default 2048): 8192
    Last sector, +sectors or +size{K,M,G,T,P} (8192-15126527, default 15126527): +7G
    
    Created a new partition 1 of type 'Linux' and of size 7 GiB.
    
  5. 최신 버전의 fdisk 는 이전 디스크 ext4 서명을 지우라는 메시지를 표시합니다. 이 서명을 지우지 마십시오. 그렇지 않으면 데이터가 손상되고 전체 이미지가 쓸모 없게됩니다.
    Partition #1 contains a ext4 signature.
    
    Do you want to remove the signature [Y]/No: n
    
  6. 새 파티션 테이블을 디스크에 쓰고 fdisk 종료하십시오.
    Command (m for help): w
    The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Re-reading the partition table failed.: Device or resource busy
    
    The kernel still uses the old table. The new table will be used at the next
    reboot or after you run partprobe(8) or kpartx(8).
    

3 단계 : 파일 시스템 크기 조정

resize2fs 를 사용하여 이미지 파일 시스템의 크기를 새로 확장 된 파티션 크기로 조정하십시오. 이 도구는 파일 시스템을 확장하거나 축소합니다.

  1. BBB를 재부팅하십시오.

    1. 재부팅시 일부 이미지에 fsck 오류가 발생할 수 있습니다. fsck 는 부팅시 자동으로 실행되며 파일 시스템 일관성을 검사합니다.

       Loading, please wait...
      [    4.873285]  remoteproc1: failed to load am335x-pru0-fw
      [    4.918852]  remoteproc1: request_firmware failed: -2
      [    4.924046] pru-rproc 4a334000.pru0: rproc_boot failed
      [    5.052414]  remoteproc1: failed to load am335x-pru1-fw
      [    5.069652]  remoteproc1: request_firmware failed: -2
      [    5.074889] pru-rproc 4a338000.pru1: rproc_boot failed
      fsck: error 2 (No such file or directory) while executing fsck.ext4 for /dev/mmcblk0p1
      fsck exited with status code 8
       
    2. 이 오류가 발생하면 무시하고 로그인 프롬프트가 나타날 때까지 약 20 초 정도 기다리십시오.

  2. root 로 로그인하십시오.

    sudo bash
    
  3. 대상 파티션의 파일 시스템 크기를 조정하십시오.

     root@beaglebone:/home/debian# resize2fs /dev/mmcblk0p1
    resize2fs 1.43 (17-May-2016)
    Filesystem at /dev/mmcblk0p1 is mounted on /; on-line resizing required
    old_desc_blocks = 1, new_desc_blocks = 1
    The filesystem on /dev/mmcblk0p1 is now 1835008 (4k) blocks long.
     
  4. BBB를 재부팅하십시오.

  5. fsck 문제가 발생하면 Linux 부팅시 사용되는 초기 RAM 파일 시스템 인 initramfs 다시 빌드하십시오.

    sudo update-initramfs -u
    update-initramfs: Generating /boot/initrd.img-4.4.54-ti-r93
    
  6. BBB를 재부팅하십시오. fsck 오류없이 부팅해야합니다.

OTBR 구축 및 설치

OTBR 빌드 및 설치에 대한 지시 사항은 빌드 및 구성 을 참조 하십시오 .

재구성 된 SD 카드 복제 (선택 사항)

BBB 용 크기 조정 된 Linux 파티션으로 재구성 된 SD 카드를 쉽게 배포 할 수 있도록 복제 할 수 있습니다.

문제 : 많은 GUI 도구는 파티션이 끝난 후 마지막 섹터까지 여유 공간을 포함하여 전체 SD 카드를 읽고 이미지의 일부만 읽을 수있는 방법을 제공하지 않습니다. 각 SD 카드에는 다른 수의 양호 및 불량 섹터가 있으며 새 SD 카드의 총 바이트 크기는 크기가 조정 된 이미지 (8.0GB)보다 작을 수 있습니다 (7.999GB). 이 경우 크기가 조정 된 이미지는 새 SD 카드에 맞지 않습니다.

해결 방법 : SD 카드의 전체 크기보다 약간 작은 파티션 크기를 사용하십시오. SD 카드 이미지 확장 절차에서는 8GB SD 카드의 새 파티션 크기로 +7G 를 사용합니다. 이로 인해 OTBR을 빌드하고 설치할 수있을만큼 크기는 크지 만, 불량 섹터에 관계없이 모든 8GB SD 카드에 안전하게 들어갈 수있을 정도로 작은 이미지가 생성됩니다.

데이터 파티션의 끝 섹터를 사용하여 "데이터 이미지"의 전체 바이트 크기를 계산하고 해당 바이트 오프셋에서 IMG 파일을 자릅니다. 가장 간단한 방법은 truncate 명령을 사용하는 것입니다. truncate 명령은 표준 Unix 명령 줄 도구이며 MSYS의 MS-Windows Git Bash 배포에도 있습니다.

  1. root 장치 (SD 카드)에서 fdisk 를 실행하십시오.

     root@beaglebone:/home/debian# fdisk /dev/mmcblk0
    
    Welcome to fdisk (util-linux 2.25.2).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
     
  2. 현재 파티션 테이블을 인쇄하여 종료 섹터를 찾으십시오.

     Command (m for help): p
    Disk /dev/mmcblk0: 7.2 GiB, 7744782336 bytes, 15126528 sectors
    Units: sectors of 1 * 512 = 512 bytes
    Sector size (logical/physical): 512 bytes / 512 bytes
    I/O size (minimum/optimal): 512 bytes / 512 bytes
    Disklabel type: dos
    Disk identifier: 0xca52207f
    
    Device         Boot Start      End  Sectors Size Id Type
    /dev/mmcblk0p1       8192 14688255 14680064   7G 83 Linux
     

    이 예에서 끝 섹터는 14688255 입니다.

  3. fdisk 종료하고 이미지의 전체 크기를 계산하십시오.

    1. 마지막 파티션은 섹터 14688255 에서 끝납니다.
    2. 각 섹터는 512 바이트입니다.
    3. SD 카드의 시작 섹터는 항상 0 입니다. 이 섹터를 설명하기 위해 1 바이트를 추가하십시오.
    4. 총 크기는 : (14688255 + 1) * 512 = 7520387072
  4. Etcher 또는 Win32 Disk Imager 와 같은 도구를 사용하여 SD 카드 이미지를 .img 파일로 읽습니다.

  5. 이미지 파일을 계산 된 총 크기로 자릅니다.

     root@beaglebone:/home/debian# truncate -s 7520387072  myimage.img
     
  6. 잘린 이미지 파일을 다른 SD 카드로 복사하여 배포하십시오.