Google is committed to advancing racial equity for Black communities. See how.
این صفحه به‌وسیله ‏Cloud Translation API‏ ترجمه شده است.
Switch to English

BeagleBone Black

روتر حاشیه OpenThread (OTBR) پشتیبانی از سکوی BeagleBone Black (BBB) ​​را فراهم می کند.

مورد نیاز سخت افزار:

  • آداپتور خارجی 5 ولت برای قدرت
  • کارت حافظه 8 GB یا بزرگتر ("کارت SD" در این راهنما)
  • یک بستر پشتیبانی شده OpenThread (مانند TI CC2652 ) برای اتصال شبکه Thread در یک طرح RCP

برای استفاده از BBB با OTBR:

  1. سیستم عامل را بارگیری کنید و تصویر را روی کارت SD بنویسید.
  2. BBB را از کارت SD بوت کنید .
  3. تصویر کارت SD را گسترش دهید تا فضای کافی برای ساخت و نصب OTBR ایجاد شود.
  4. OTBR را بسازید و نصب کنید .

سیستم عامل را بارگیری کنید

  1. سیستم عامل توصیه شده Stretch برای BeagleBone از طریق کارت microSD است :
    • دبیان 9.1 2017-08-31 4 GB SD LXQT
    • نام فایل: bone-debian-9.1-lxqt-armhf-2017-08-31-4gb.img.xz
  2. با استفاده از ابزاری مانند Etcher یا Win32 Disk Imager ، تصویر را روی کارت SD 8 یا بالاتر بنویسید.

از کارت SD بوت شوید

BeagleBone Black

BBB می تواند از حافظه فلش روی صفحه یا کارت SD بوت شود. برای استفاده از BBB با OTBR ، باید از کارت SD بوت شوید ، زیرا حافظه فلش روی صفحه به اندازه کافی بزرگ برای ساخت و نصب OTBR نیست.

برای راه اندازی BBB از کارت SD:

  1. کارت SD را وارد کنید.
  2. برق را قطع کنید.
  3. دکمه BOOT را فشار داده و نگه دارید.
  4. برق را وصل کنید.
  5. هنگامی که LED ها شروع به چشمک می زنند ، دکمه BOOT را رها کنید.

تصویر کارت SD را گسترش دهید

تصاویر لینوکس برای Beagle Bone Black (BBB) ​​عمداً كوچك ساخته شده اند تا تصویر روی هر كارت SD 4 GB (یا حافظه فلش 4 گیگابایتی موجود در برد) قرار گیرد و در صورت نیاز گسترش یابد. در کل حدود 300 مگابایت فضای خالی وجود دارد. این ممکن است فضای کافی برای نصب و ساخت روتر OpenThread Border با استفاده از BBB نباشد.

برای حل این مسئله:

  1. تصویر لینوکس را روی کارت SD بزرگتر (حداقل 8 گیگابایت) بنویسید.
  2. پارتیشن 4 گیگابایتی لینوکس تصویر را کمی کوچکتر از اندازه کل کارت SD کنید. به عنوان مثال ، اگر از کارت SD 8 GB استفاده می کنید ، آن را تا 7 گیگابایت پهن کنید. برای کارت 16 گیگابایتی آن را تا 15 GB پوند گسترش دهید.
  3. BBB را از کارت SD بوت کنید.

پارتیشن های کارت SD

داده های روی کارت SD به طور مؤثر مجموعه ای مداوم از بخش های داده است. شماره ها با شروع از 0 شروع می شوند و در بخش N تقریباً در حدود XX GB به پایان می رسند ، آخرین شماره آن به کارت SD واقعی بستگی دارد.

بخش 0 همیشه حاوی یک جدول پارتیشن MS-DOS است. جدول پارتیشن MS-DOS می تواند بین 1 تا 4 مدخل پارتیشن را در خود جای دهد. هر پارتیشن یک سری مداوم از بخش ها از X تا Y در جایی در محدوده کارت SD است. این تکرار برای هر 4 پارتیشن ممکن است. به طور معمول ، پارتیشن ها به ترتیب قرار دارند و در انتها تعدادی از آنها ( 0 تا N ) بخش های بلااستفاده قرار دارند. این "تعدادی از بخشهای غیر قابل استفاده" ( SOME_N ) SOME_N می تواند به نفع شما استفاده شود.

هنگام نوشتن تصویر روی کارت SD ، نوشتن در بخش 0 شروع می شود و بسته به اندازه تصویر ، به SOME_N . آنچه شما نمی توانید انجام دهید کشش پارتیشن در اطراف تصویر است - این امکان پذیر نیست. در عوض ، به یک قاب تصویر در اطراف بوم فکر کنید. قاب تصویر پارتیشن و تصویر داده است. کاری که می توانید انجام دهید این است که قاب تصویر موجود را با یک تصویر بزرگتر جایگزین کنید ، و بوم را در داخل گسترش دهید:

  1. پارتیشن موجود لینوکس را بدون حذف داده حذف کنید. شما قاب تصویر را حذف کرده اید ، اما تصویر هنوز هم بر روی بوم موجود است.
  2. یک پارتیشن جدید لینوکس ایجاد کنید که دقیقاً از همان جایی شروع می شود که قدیمی شروع می شود اما نزدیک به انتهای کارت SD پایان می یابد. شما یک قاب تصویر بزرگتر ایجاد کرده اید. تصویر — داده still هنوز هم بر روی بوم است. حرکت نکرده و با این عملیات فاسد نشده است.
  3. برای رشد سیستم پرونده در محدوده پارتیشن جدید از یک ابزار خاص برای فایل استفاده کنید. بوم کشیده شده است تا قاب تصویر جدید و بزرگتر را پر کند.

مرحله 1: پارتیشن داده فعلی را مشخص کنید

  1. BBB را از کارت SD بوت کنید.
  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% /
    
    p1 پسوند در Filesystem زمینه نامگذاری پارتیشن 1. خود دستگاه است /dev/mmcblk0 . در این مثال فقط 295 مگابایت رایگان است. این فضای کافی برای ساخت و نصب OTBR نیست.

مرحله 2: پارتیشن جدید و بزرگتر را ایجاد کنید

  1. اجرای fdisk در دستگاه (کارت SD):
    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 ، با یک Type Linux . در خروجی بالا ، بخش شروع 8192 .
  3. پارتیشن موجود را حذف کنید:
    Command (m for help): d
    Selected partition 1
    Partition 1 has been deleted.
    
  4. یک پارتیشن جدید ایجاد کنید ، با استفاده از یک پارتیشن شماره 1 ، همان بخش شروع پارتیشن قبلی (در این مثال 8192 ) و سایز آن 1 GB کمتر از اندازه کارت SD است. به عنوان مثال ، اگر از کارت SD 8 گیگابایتی استفاده می کنید ، اندازه +7G مشخص کنید. برای کارت SD 16 گیگابایتی ، اندازه +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 . 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 موضوع، بازسازی initramfs ، که سیستم فایل رم اولیه استفاده می شود زمانی که چکمه های لینوکس است.

    sudo update-initramfs -u
    update-initramfs: Generating /boot/initrd.img-4.4.54-ti-r93
    
  6. راه اندازی مجدد BBB. باید بدون خطای fsck بوت شود.

OTBR را بسازید و نصب کنید

برای ساخت و نصب OTBR به دستورالعمل ساخت و پیکربندی مراجعه کنید.

یک کارت SD دوباره پیکربندی شده را کلون کنید (اختیاری)

کارت SD که مجدداً با پارتیشن تغییر یافته اندازه Linux برای BBB پیکربندی شده است ، می تواند برای توزیع ساده تر کلون شود.

مشکل: بسیاری از ابزارهای رابط کاربری گرافیکی کارت SD را شامل می شوند ، از جمله منطقه رایگان بعد از پایان بخش و تا آخرین بخش - و راهی برای خواندن تنها بخشی از تصویر ارائه نمی دهند. هر کارت SD دارای تعداد متفاوتی از بخش های خوب و بد است ، و اندازه کل بایت کارت SD جدید ممکن است از تصویر اندازه تغییر یافته (8.0 GB) کوچکتر باشد (7.999 GB). در این حالت ، تصویر تغییر اندازه نمی تواند روی کارت SD جدید جای بگیرد.

راه حل: از یک اندازه پارتیشن استفاده کنید که کمی کوچکتر از اندازه کامل کارت SD باشد. از روش تصویر کارت SD استفاده کنید و از +7G به عنوان اندازه پارتیشن جدید برای کارت SD 8 GB استفاده می کند. این تصویری تولید می کند که به اندازه کافی کوچک باشد تا بتواند با اطمینان از هر کارت SD 8 گیگابایتی قابل مقایسه (صرف نظر از بخش های بد) در عین حال که به اندازه کافی بزرگ برای ساخت و نصب OTBR است ، استفاده کند.

با استفاده از بخش پایان بخش پارتیشن داده ، کل اندازه بایت "تصویر داده" را محاسبه کنید و پرونده IMG را در آن متن بایت محاسبه کنید. ساده ترین روش استفاده از دستور truncate . دستور truncate یک ابزار استاندارد خط فرمان Unix است ، و همچنین در توزیع MSY-Windows Git Bash در MSYS وجود دارد.

  1. به عنوان root ، fdisk بر روی دستگاه (کارت SD) اجرا کنید:

     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 کپی کنید.