ARM เชฌเซ‹เชฐเซเชก เชชเชฐ เชถเชฐเซ‚เช†เชคเชฅเซ€ เชœ GNU/Linux เชถเชฐเซ‚ เช•เชฐเชตเซเช‚ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช•เชพเชฒเซ€ เช…เชจเซ‡ iMX.6 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡)

เชŸเซ€เชเชฒ; เชกเซ‹: เชนเซเช‚ เชชเซเชฐเซ‹เช—เซเชฐเชพเชฎเชฎเชพเช‚, ARM เช•เชฎเซเชชเซเชฏเซเชŸเชฐ เชฎเชพเชŸเซ‡ เช•เชพเชฒเซ€ Linux เช‡เชฎเซ‡เชœ เชฌเชจเชพเชตเซ€ เชฐเชนเซเชฏเซ‹ เช›เซเช‚ debootstrap, linux ะธ u-boot.

ARM เชฌเซ‹เชฐเซเชก เชชเชฐ เชถเชฐเซ‚เช†เชคเชฅเซ€ เชœ GNU/Linux เชถเชฐเซ‚ เช•เชฐเชตเซเช‚ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช•เชพเชฒเซ€ เช…เชจเซ‡ iMX.6 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡)

เชœเซ‹ เชคเชฎเซ‡ เช•เซ‡เชŸเชฒเชพเช• เช–เซ‚เชฌ เชœ เชฒเซ‹เช•เชชเซเชฐเชฟเชฏ เชธเชฟเช‚เช—เชฒ-เชชเซ‡เชฏเชฐ เช–เชฐเซ€เชฆเซเชฏเชพ เชจเชฅเซ€, เชคเซ‹ เชคเชฎเซ‡ เชคเซ‡เชจเชพ เชฎเชพเชŸเซ‡ เชคเชฎเชพเชฐเซ€ เชฎเชจเชชเชธเช‚เชฆ เชตเชฟเชคเชฐเชฃ เช•เซ€เชŸเชจเซ€ เช›เชฌเซ€เชจเซ‹ เช…เชญเชพเชต เช…เชจเซเชญเชตเซ€ เชถเช•เซ‹ เช›เซ‹. เชฒเช—เชญเช— เชเชตเซเช‚ เชœ เชฅเชฏเซเช‚ เช†เชฏเซ‹เชœเชฟเชค เชซเซเชฒเชฟเชชเชฐ เชตเชจ. IMX6 (เชนเซเช‚ เชฐเชธเซ‹เชˆ เช•เชฐเซเช‚ เช›เซเช‚) เชฎเชพเชŸเซ‡ เช•เซ‹เชˆ เช•เชพเชฒเซ€ Linux เชจเชฅเซ€, เชคเซ‡เชฅเซ€ เชฎเชพเชฐเซ‡ เชคเซ‡เชจเซ‡ เชœเชพเชคเซ‡ เชœ เชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡.

เชกเชพเช‰เชจเชฒเซ‹เชก เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชเช•เชฆเชฎ เชธเชฐเชณ เช›เซ‡:

  1. เชนเชพเชฐเซเชกเชตเซ‡เชฐ เชชเซเชฐเชพเชฐเช‚เชญ เชฅเชฏเซ‡เชฒ เช›เซ‡.
  2. เชธเซเชŸเซ‹เชฐเซ‡เชœ เช‰เชชเช•เชฐเชฃ (SD เช•เชพเชฐเซเชก/eMMC/etc) เชชเชฐเชจเชพ เช…เชฎเซเช• เชตเชฟเชธเซเชคเชพเชฐเชฎเชพเช‚เชฅเซ€ เชฌเซเชŸเชฒเซ‹เชกเชฐ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡ เช…เชจเซ‡ เชšเชฒเชพเชตเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡.
  3. เชฒเซ‹เชกเชฐ เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเชจเชพ เช•เชฐเซเชจเชฒเชจเซ‡ เชถเซ‹เชงเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เช…เชฎเซเช• เชฎเซ‡เชฎเชฐเซ€ เชเชฐเชฟเชฏเชพเชฎเชพเช‚ เชฒเซ‹เชก เช•เชฐเซ‡ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เชจเซ‡ เชเช•เซเชเชฟเช•เซเชฏเซเชŸ เช•เชฐเซ‡ เช›เซ‡.
  4. เช•เชฐเซเชจเชฒ เชฌเชพเช•เซ€เชจเชพ OS เชจเซ‡ เชฒเซ‹เชก เช•เชฐเซ‡ เช›เซ‡.

เชฎเชพเชฐเชพ เช•เชพเชฐเซเชฏ เชฎเชพเชŸเซ‡, เช† เชธเซเชคเชฐเชจเซ€ เชตเชฟเช—เชค เชชเซ‚เชฐเชคเซ€ เช›เซ‡, เชคเชฎเซ‡ เชตเชฟเช—เชคเซ‹ เชตเชพเช‚เชšเซ€ เชถเช•เซ‹ เช›เซ‹ เชฌเซ€เชœเชพ เชฒเซ‡เช–เชฎเชพเช‚. เช‰เชชเชฐเซ‹เช•เซเชค "เช•เซ‡เชŸเชฒเชพเช•" เชตเชฟเชธเซเชคเชพเชฐเซ‹ เชฌเซ‹เชฐเซเชกเชฅเซ€ เชฌเซ‹เชฐเซเชกเชฎเชพเช‚ เช…เชฒเช— เชชเชกเซ‡ เช›เซ‡, เชœเซ‡ เช•เซ‡เชŸเชฒเซ€เช• เช‡เชจเซเชธเซเชŸเซ‹เชฒเซ‡เชถเชจ เชฎเซเชถเซเช•เซ‡เชฒเซ€เช“ เชฌเชจเชพเชตเซ‡ เช›เซ‡. เชธเชฐเซเชตเชฐ ARM เชชเซเชฒเซ‡เชŸเชซเซ‹เชฐเซเชฎ เชฒเซ‹เชก เช•เชฐเซ€ เชฐเชนเซเชฏเซเช‚ เช›เซ‡ เชฎเชพเชจเช• เชฌเชจเชพเชตเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชฐเชนเซเชฏเซ‹ เช›เซ‡ UEFI เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡, เชชเชฐเช‚เชคเซ เชœเซเชฏเชพเช‚ เชธเซเชงเซ€ เชคเซ‡ เชฆเชฐเซ‡เช• เชฎเชพเชŸเซ‡ เช‰เชชเชฒเชฌเซเชง เชจ เชนเซ‹เชฏ เชคเซเชฏเชพเช‚ เชธเซเชงเซ€ เชคเชฎเชพเชฐเซ‡ เชฌเชงเซเช‚ เช…เชฒเช—เชฅเซ€ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเซเช‚ เชชเชกเชถเซ‡.

เชฐเซ‚เชŸ เชซเชพเช‡เชฒเชธเชฟเชธเซเชŸเชฎเชจเซเช‚ เชจเชฟเชฐเซเชฎเชพเชฃ

เชชเซเชฐเชฅเชฎ เชคเชฎเชพเชฐเซ‡ เชตเชฟเชญเชพเช—เซ‹ เชคเซˆเชฏเชพเชฐ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡. เชฆเชพเชธ เชฏเซ-เชฌเซ‚เชŸ เชตเชฟเชตเชฟเชง เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎเซเชธเชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเซ‡ เช›เซ‡, เชฎเซ‡เช‚ เชคเซ‡เชจเชพ เชฎเชพเชŸเซ‡ FAT32 เชชเชธเช‚เชฆ เช•เชฐเซเชฏเซเช‚ เช›เซ‡ /boot เช…เชจเซ‡ เชฐเซ‚เชŸ เชฎเชพเชŸเซ‡ ext3, เช† เชเช†เชฐเชเชฎ เชนเซ‡เช เชณ เช•เชพเชฒเซ€ เชฎเชพเชŸเซ‡ เชชเซเชฐเชฎเชพเชฃเชญเซ‚เชค เช‡เชฎเซ‡เชœ เชฎเชพเชฐเซเช•เช…เชช เช›เซ‡. เชนเซเช‚ GNU Parted เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชถ, เชชเชฐเช‚เชคเซ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชตเชงเซ เชชเชฐเชฟเชšเชฟเชค เชฌเชจเชพเชตเซ€ เชถเช•เซ‹ เช›เซ‹ fdisk. เชคเชฎเชพเชฐเซ‡ เชชเชฃ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡ dosfstools ะธ e2fsprogs เชซเชพเช‡เชฒเชธเชฟเชธเซเชŸเชฎ เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡: apt install parted dosfstools e2fsprogs.

SD เช•เชพเชฐเซเชกเชจเซเช‚ เชตเชฟเชญเชพเชœเชจ:

  1. MBR เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡ SD เช•เชพเชฐเซเชกเชจเซ‡ เชšเชฟเชนเซเชจเชฟเชค เช•เชฐเซ‹: parted -s /dev/mmcblk0 mklabel msdos
  2. เชฎเชพเชŸเซ‡ เชเช• เชตเชฟเชญเชพเช— เชฌเชจเชพเชตเซ‹ /boot 128 เชฎเซ‡เช—เชพเชฌเชพเช‡เชŸเซเชธ เชฎเชพเชŸเซ‡: parted -s /dev/mmcblk0 mkpart primary fat32 1MiB 128MiB. เชชเซเชฐเชฅเชฎ เชšเซ‚เช•เซ€ เช—เชฏเซ‡เชฒ เชฎเซ‡เช—เชพเชฌเชพเชˆเชŸ เชฎเชพเชฐเซเช•เช…เชช เชฎเชพเชŸเซ‡ เช…เชจเซ‡ เชฌเซเชŸเชฒเซ‹เชกเชฐ เชฎเชพเชŸเซ‡ เชœ เช›เซ‹เชกเซ€ เชฆเซ‡เชตเซ€ เชœเซ‹เชˆเช.
  3. เชฌเชพเช•เซ€เชจเซ€ เช•เซเชทเชฎเชคเชพ เชฎเชพเชŸเซ‡ เชฐเซ‚เชŸ FS เชฌเชจเชพเชตเซ‹: parted -s /dev/mmcblk0 mkpart primary ext4 128MiB 100%
  4. เชœเซ‹ เช…เชšเชพเชจเช• เชคเชฎเซ‡ เชชเชพเชฐเซเชŸเซ€เชถเชจ เชซเชพเชˆเชฒเซ‹ เชฌเชจเชพเชตเซ€ เชจเชฅเซ€ เช…เชฅเชตเชพ เชฌเชฆเชฒเซ€ เชจเชฅเซ€, เชคเซ‹ เชคเชฎเชพเชฐเซ‡ `เชชเชพเชฐเซเชŸเชชเซเชฐเซ‹เชฌ` เชšเชฒเชพเชตเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡, เชชเช›เซ€ เชชเชพเชฐเซเชŸเซ€เชถเชจ เช•เซ‹เชทเซเชŸเช• เชซเชฐเซ€เชฅเซ€ เชตเชพเช‚เชšเชตเชพเชฎเชพเช‚ เช†เชตเชถเซ‡.
  5. เชฒเซ‡เชฌเชฒเชตเชพเชณเซ€ เชฌเซเชŸ เชชเชพเชฐเซเชŸเซ€เชถเชจ เชซเชพเช‡เชฒเชธเชฟเชธเซเชŸเชฎ เชฌเชจเชพเชตเซ‹ BOOT: mkfs.vfat -n BOOT -F 32 -v /dev/mmcblk0p1
  6. เชฒเซ‡เชฌเชฒ เชธเชพเชฅเซ‡ เชฐเซ‚เชŸ เชซเชพเช‡เชฒเชธเชฟเชธเซเชŸเชฎ เชฌเชจเชพเชตเซ‹ ROOTFS: mkfs.ext3 -L ROOTFS /dev/mmcblk0p2

เชธเชฐเชธ, เชนเชตเซ‡ เชคเชฎเซ‡ เชคเซ‡เชจเซ‡ เชญเชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช† เชตเชงเชพเชฐเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡ debootstrap, เชกเซ‡เชฌเชฟเชฏเชจ เชœเซ‡เชตเซ€ เช“เชชเชฐเซ‡เชŸเชฟเช‚เช— เชธเชฟเชธเซเชŸเชฎเซ‹ เชชเชฐ เชฐเซ‚เชŸ FS เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡เชจเซ€ เช‰เชชเชฏเซ‹เช—เชฟเชคเชพ: apt install debootstrap.

เช…เชฎเซ‡ FS เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€เช เช›เซ€เช:

  1. เชชเชฐ เชชเชพเชฐเซเชŸเซ€เชถเชจ เชฎเชพเช‰เชจเซเชŸ เช•เชฐเซ‹ /mnt/ (เชคเชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เชตเชงเซ เช…เชจเซเช•เซ‚เชณ เชฎเชพเช‰เชจเซเชŸ เชชเซ‹เช‡เชจเซเชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ‹): mount /dev/mmcblk0p2 /mnt
  2. เช–เชฐเซ‡เช–เชฐ เช…เชฎเซ‡ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ เชญเชฐเซ€เช เช›เซ€เช: debootstrap --foreign --include=qemu-user-static --arch armhf kali-rolling /mnt/ http://http.kali.org/kali. เชชเชฐเชฟเชฎเชพเชฃ --include เช•เซ‡เชŸเชฒเชพเช• เชชเซ‡เช•เซ‡เชœเซ‹เชจเซ‡ เชตเชงเชพเชฐเชพเชฎเชพเช‚ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเชตเชพ เชฎเชพเชŸเซ‡ เชธเซเชชเชทเซเชŸ เช•เชฐเซ‡ เช›เซ‡, เชฎเซ‡เช‚ เชธเซเชŸเซ‡เชŸเชฟเช•เชฒเซ€ เชฌเชฟเชฒเซเชŸ QEMU เช‡เชฎเซเชฏเซเชฒเซ‡เชŸเชฐเชจเซ‹ เช‰เชฒเซเชฒเซ‡เช– เช•เชฐเซเชฏเซ‹ เช›เซ‡. เชคเซ‡ เชคเชฎเชจเซ‡ เชชเซเชฐเชฆเชฐเซเชถเชจ เช•เชฐเชตเชพเชจเซ€ เชฎเช‚เชœเซ‚เชฐเซ€ เช†เชชเซ‡ เช›เซ‡ chroot เชเช†เชฐเชเชฎ เชชเชฐเซเชฏเชพเชตเชฐเชฃ เชฎเชพเชŸเซ‡. เช…เชจเซเชฏ เชตเชฟเช•เชฒเซเชชเซ‹เชจเซ‹ เช…เชฐเซเชฅ เช†เชฎเชพเช‚ เชถเซ‹เชงเซ€ เชถเช•เชพเชฏ เช›เซ‡ man debootstrap. เชญเซ‚เชฒเชถเซ‹ เชจเชนเซ€เช‚ เช•เซ‡ เชฆเชฐเซ‡เช• เชเช†เชฐเชเชฎ เชฌเซ‹เชฐเซเชก เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐเชจเซ‡ เชธเชชเซ‹เชฐเซเชŸ เช•เชฐเชคเซเช‚ เชจเชฅเซ€ armhf.
  3. เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐเชฎเชพเช‚ เชคเชซเชพเชตเชคเชจเซ‡ เช•เชพเชฐเชฃเซ‡ debootstrap เชฌเซ‡ เชคเชฌเช•เซเช•เชพเชฎเชพเช‚ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชฌเซ€เชœเซ‹ เชจเซ€เชšเซ‡ เชชเซเชฐเชฎเชพเชฃเซ‡ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡: chroot /mnt/ /debootstrap/debootstrap --second-stage
  4. เชนเชตเซ‡ เชคเชฎเชพเชฐเซ‡ เชธเซเชชเชฟเชจ เช•เชฐเชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เช›เซ‡: chroot /mnt /bin/bash
  5. เช…เชฎเซ‡ เชญเชฐเซ€เช เช›เซ€เช /etc/hosts ะธ /etc/hostname เชฒเช•เซเชทเซเชฏ FS. เชคเชฎเชพเชฐเชพ เชธเซเชฅเชพเชจเชฟเช• เช•เชฎเซเชชเซเชฏเซเชŸเชฐ เชชเชฐเชจเซ€ เชธเชพเชฎเช—เซเชฐเซ€เชจเซ€ เชœเซ‡เชฎ เชœ เชญเชฐเซ‹, เชซเช•เซเชค เชนเซ‹เชธเซเชŸเชจเชพเชฎ เชฌเชฆเชฒเชตเชพเชจเซเช‚ เชฏเชพเชฆ เชฐเชพเช–เซ‹.
  6. เชคเชฎเซ‡ เชฌเชพเช•เซ€เชจเซเช‚ เชฌเชงเซเช‚ เช•เชธเซเชŸเชฎเชพเช‡เช เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เช–เชพเชธ เช•เชฐเซ€เชจเซ‡, เชนเซเช‚ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซเช‚ เช›เซเช‚ locales (เชฐเชฟเชชเซ‹เชเซ€เชŸเชฐเซ€ เช•เซ€เช“), เชฒเซ‹เช•เซ‡เชฒ เช…เชจเซ‡ เชŸเชพเชˆเชฎ เชเซ‹เชจเชจเซเช‚ เชชเซเชจเชƒเชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ (dpkg-reconfigure locales tzdata). เช†เชฆเซ‡เชถ เชธเชพเชฅเซ‡ เชชเชพเชธเชตเชฐเซเชก เชธเซ‡เชŸ เช•เชฐเชตเชพเชจเซเช‚ เชญเซ‚เชฒเชถเซ‹ เชจเชนเซ€เช‚ passwd.
  7. เชฎเชพเชŸเซ‡ เชชเชพเชธเชตเชฐเซเชก เชธเซ‡เชŸ เช•เชฐเซ‹ root เชŸเซ€เชฎ passwd.
  8. เชฎเชพเชฐเชพ เชฎเชพเชŸเซ‡ เช‡เชฎเซ‡เชœเชจเซ€ เชคเซˆเชฏเชพเชฐเซ€ เชญเชฐเซ€เชจเซ‡ เชชเซ‚เชฐเซเชฃ เชฅเชˆ เช›เซ‡ /etc/fstab เช…เช‚เชฆเชฐ /mnt/.

เชนเซเช‚ เช…เช—เชพเช‰ เชฌเชจเชพเชตเซ‡เชฒเชพ เชŸเซ…เช—เซเชธ เช…เชจเซเชธเชพเชฐ เช…เชชเชฒเซ‹เชก เช•เชฐเซ€เชถ, เชคเซ‡เชฅเซ€ เชธเชพเชฎเช—เซเชฐเซ€ เช†เชจเชพ เชœเซ‡เชตเซ€ เชนเชถเซ‡:

LABEL=ROOTFS / auto errors=remount-ro 0 1
LABEL=BOOT /boot เช“เชŸเซ‹ เชกเชฟเชซเซ‹เชฒเซเชŸ 0 0

เช›เซ‡เชฒเซเชฒเซ‡, เชคเชฎเซ‡ เชฌเซเชŸ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ‡ เชฎเชพเช‰เชจเซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹, เช…เชฎเชจเซ‡ เช•เชฐเซเชจเชฒ เชฎเชพเชŸเซ‡ เชคเซ‡เชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡: `mount /dev/mmcblk0p1 /mnt/boot/`

Linux เชฌเชฟเชฒเซเชกเซ€เช‚เช—

เชกเซ‡เชฌเชฟเชฏเชจ เชŸเซ‡เชธเซเชŸเชฟเช‚เช— เชชเชฐ เช•เชฐเซเชจเชฒ (เช…เชจเซ‡ เชชเช›เซ€ เชฌเซเชŸเชฒเซ‹เชกเชฐ) เชฌเชจเชพเชตเชตเชพ เชฎเชพเชŸเซ‡, เชคเชฎเชพเชฐเซ‡ เชฒเช•เซเชทเซเชฏ เช†เชฐเซเช•เชฟเชŸเซ‡เช•เซเชšเชฐ (เชฎเชพเชฐเซ€ เชชเชพเชธเซ‡ เช›เซ‡ armhf), เชคเซ‡เชฎเชœ OpenSSL เชนเซ‡เชกเชฐเซ‹, เช•เชจเซเชธเซ‹เชฒ เช•เซ‡เชฒเซเช•เซเชฏเซเชฒเซ‡เชŸเชฐ bc, bison ะธ flex: apt install crossbuild-essential-armhf bison flex libssl-dev bc. เช•เชพเชฐเชฃ เช•เซ‡ เชกเชฟเชซเซ‹เชฒเซเชŸ เชฒเซ‹เชกเชฐ เชซเชพเช‡เชฒ เชฎเชพเชŸเซ‡ เชœเซเช เช›เซ‡ zImage เชฌเซ‚เชŸ เชชเชพเชฐเซเชŸเซ€เชถเชจเชจเซ€ เชซเชพเช‡เชฒ เชธเชฟเชธเซเชŸเชฎ เชชเชฐ, เชซเซเชฒเซ‡เชถ เชกเซเชฐเชพเช‡เชต เชคเซ‹เชกเชตเชพเชจเซ‹ เชธเชฎเชฏ เช†เชตเซ€ เช—เชฏเซ‹ เช›เซ‡.

  1. เช•เชฐเซเชจเชฒเชจเซเช‚ เช•เซเชฒเซ‹เชจเชฟเช‚เช— เช–เซ‚เชฌ เชฒเชพเช‚เชฌเซ เช›เซ‡, เชคเซ‡เชฅเซ€ เชนเซเช‚ เชนเชฎเชฃเชพเช‚ เชœ เชกเชพเช‰เชจเชฒเซ‹เชก เช•เชฐเซ€เชถ: wget https://cdn.kernel.org/pub/linux/kernel/v5.x/linux-5.9.1.tar.xz. เช…เชจเชชเซ…เช• เช•เชฐเซ‹ เช…เชจเซ‡ เชธเซเชฐเซ‹เชค เชจเชฟเชฐเซเชฆเซ‡เชถเชฟเช•เชพ เชชเชฐ เชœเชพเช“: tar -xf linux-5.9.1.tar.xz && cd linux-5.9.1
  2. เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเชคเชพ เชชเชนเซ‡เชฒเชพ เช—เซ‹เช เชตเซ‹: make ARCH=arm KBUILD_DEFCONFIG=imx_v6_v7_defconfig defconfig. เชฐเซ‚เชชเชฐเซ‡เช–เชพ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เช›เซ‡ arch/arm/configs/. เชœเซ‹ เชคเซเชฏเชพเช‚ เช•เซ‹เชˆ เชจ เชนเซ‹เชฏ, เชคเซ‹ เชคเชฎเซ‡ เชคเซˆเชฏเชพเชฐ เชเช• เชถเซ‹เชงเซ€ เช…เชจเซ‡ เชกเชพเช‰เชจเชฒเซ‹เชก เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹ เช…เชจเซ‡ เช† เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เชซเชพเช‡เชฒเชจเซเช‚ เชจเชพเชฎ เชชเซ‡เชฐเชพเชฎเซ€เชŸเชฐเชฎเชพเช‚ เชชเชพเชธ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. KBUILD_DEFCONFIG. เช†เชคเซเชฏเช‚เชคเชฟเช• เช•เชฟเชธเซเชธเชพเช“เชฎเชพเช‚, เชคเชฐเชค เชœ เช†เช—เชณเชจเชพ เชซเช•เชฐเชพ เชชเชฐ เช†เช—เชณ เชตเชงเซ‹.
  3. เชคเชฎเซ‡ เชตเซˆเช•เชฒเซเชชเชฟเช• เชฐเซ€เชคเซ‡ เชธเซ‡เชŸเชฟเช‚เช—เซเชธเชจเซ‡ เชŸเซเชตเชฟเช• เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹: make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf- menuconfig
  4. เช…เชจเซ‡ เช›เชฌเซ€เชจเซ‡ เช•เซเชฐเซ‹เชธ-เช•เชฎเซเชชเชพเช‡เชฒ เช•เชฐเซ‹: make ARCH=arm CROSS_COMPILE=arm-linux-gnueabihf-
  5. เชนเชตเซ‡ เชคเชฎเซ‡ เช•เชฐเซเชจเชฒ เชซเชพเช‡เชฒเชจเซ€ เชจเช•เชฒ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹: cp arch/arm/boot/zImage /mnt/boot/
  6. เช…เชจเซ‡ DeviceTree เชฎเชพเช‚เชฅเซ€ เชซเชพเช‡เชฒเซ‹ (เชฌเซ‹เชฐเซเชก เชชเชฐ เช‰เชชเชฒเชฌเซเชง เชนเชพเชฐเซเชกเชตเซ‡เชฐเชจเซเช‚ เชตเชฐเซเชฃเชจ): cp arch/arm/boot/dts/*.dtb /mnt/boot/
  7. เช…เชจเซ‡ เช…เชฒเช— เชซเชพเช‡เชฒเซ‹ เชคเชฐเซ€เช•เซ‡ เชเชธเซ‡เชฎเซเชฌเชฒ เช•เชฐเซ‡เชฒ เชฎเซ‹เชกเซเชฏเซเชฒเซ‹ เช‡เชจเซเชธเซเชŸเซ‹เชฒ เช•เชฐเซ‹: make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- INSTALL_MOD_PATH=/mnt/ modules_install

เช•เชฐเซเชจเชฒ เชคเซˆเชฏเชพเชฐ เช›เซ‡. เชคเชฎเซ‡ เชฌเชงเซเช‚ เช…เชจเชฎเชพเช‰เชจเซเชŸ เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹: umount /mnt/boot/ /mnt/

เชฆเชพเชธ เชฏเซ เชฌเซเชŸ

เชฌเซเชŸเชฒเซ‹เชกเชฐ เช‡เชจเซเชŸเชฐเซ‡เช•เซเชŸเชฟเชต เชนเซ‹เชตเชพเชฅเซ€, เชฌเซ‹เชฐเซเชก เชชเซ‹เชคเซ‡, เชธเซเชŸเซ‹เชฐเซ‡เชœ เช‰เชชเช•เชฐเชฃ เช…เชจเซ‡ เชตเซˆเช•เชฒเซเชชเชฟเช• USB-เชŸเซ-UART เช‰เชชเช•เชฐเชฃ เชคเซ‡เชจเซ€ เช•เชพเชฎเช—เซ€เชฐเซ€เชจเซ‡ เชšเช•เชพเชธเชตเชพ เชฎเชพเชŸเซ‡ เชชเซ‚เชฐเชคเซเช‚ เช›เซ‡. เชเชŸเชฒเซ‡ เช•เซ‡, เชคเชฎเซ‡ เช•เชฐเซเชจเชฒ เช…เชจเซ‡ OS เชจเซ‡ เชชเช›เซ€ เชฎเชพเชŸเซ‡ เชฎเซเชฒเชคเชตเซ€ เชฐเชพเช–เซ€ เชถเช•เซ‹ เช›เซ‹.

เชฎเซ‹เชŸเชพ เชญเชพเช—เชจเชพ เช‰เชคเซเชชเชพเชฆเช•เซ‹ เชชเซเชฐเชพเชฅเชฎเชฟเช• เชฌเซเชŸ เชฎเชพเชŸเซ‡ เชฆเชพเชธ เชฏเซ-เชฌเซ‚เชŸเชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเชตเชพเชจเซเช‚ เชธเซ‚เชšเชจ เช•เชฐเซ‡ เช›เซ‡. เชธเช‚เชชเซ‚เชฐเซเชฃ เชธเชชเซ‹เชฐเซเชŸ เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡ เชคเซ‡เชจเชพ เชชเซ‹เชคเชพเชจเชพ เชซเซ‹เชฐเซเช•เชฎเชพเช‚ เช†เชชเชตเชพเชฎเชพเช‚ เช†เชตเซ‡ เช›เซ‡, เชชเชฐเช‚เชคเซ เช…เชชเชธเซเชŸเซเชฐเซ€เชฎเชฎเชพเช‚ เชฏเซ‹เช—เชฆเชพเชจ เช†เชชเชตเชพเชจเซเช‚ เชญเซ‚เชฒเชถเซ‹ เชจเชนเซ€เช‚. เชฎเชพเชฐเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚, เชฌเซ‹เชฐเซเชก เชธเชชเซ‹เชฐเซเชŸเซ‡เชก เช›เซ‡ เชฎเซเช–เซเชฏ เชฒเชพเช‡เชจ, เชคเซ‡เชฅเซ€ เช•เชพเช‚เชŸเซ‹ เชฎเซ‡เช‚ เช…เชตเช—เชฃเชจเชพ เช•เชฐเซ€.

เช…เชฎเซ‡ เชฌเซเชŸเชฒเซ‹เชกเชฐ เชชเซ‹เชคเซ‡ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€เช เช›เซ€เช:

  1. เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€เชจเซ€ เชธเซเชฅเชฟเชฐ เชถเชพเช–เชพเชจเซ‡ เช•เซเชฒเซ‹เชจ เช•เชฐเซ‹: git clone https://gitlab.denx.de/u-boot/u-boot.git -b v2020.10
  2. เชšเชพเชฒเซ‹ เชกเชฟเชฐเซ‡เช•เซเชŸเชฐเซ€เชฎเชพเช‚ เชœ เชœเชˆเช: cd u-boot
  3. เชฌเชฟเชฒเซเชก เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชคเซˆเชฏเชพเชฐ เช•เชฐเซ€ เชฐเชนเซเชฏเชพ เช›เซ€เช: make mx6ull_14x14_evk_defconfig. เช† เชซเช•เซเชค เชคเซเชฏเชพเชฐเซ‡ เชœ เช•เชพเชฐเซเชฏ เช•เชฐเซ‡ เช›เซ‡ เชœเซเชฏเชพเชฐเซ‡ เชฐเซ‚เชชเชฐเซ‡เช–เชพเช‚เช•เชจ เชฆเชพเชธ เชฏเซ-เชฌเซ‚เชŸเชฎเชพเช‚ เชœ เชนเซ‹เชฏ, เช…เชจเซเชฏเชฅเชพ เชคเชฎเชพเชฐเซ‡ เช‰เชคเซเชชเชพเชฆเช•เชจเซ€ เชฐเซ‚เชชเชฐเซ‡เช–เชพ เชถเซ‹เชงเซ€เชจเซ‡ เชซเชพเช‡เชฒเชฎเชพเช‚ เชฐเซ€เชชเซ‹เชเซ€เชŸเชฐเซ€เชจเชพ เชฐเซ‚เชŸเชฎเชพเช‚ เชฎเซ‚เช•เชตเชพเชจเซ€ เชœเชฐเซ‚เชฐ เชชเชกเชถเซ‡. .config, เช…เชฅเชตเชพ เช‰เชคเซเชชเชพเชฆเช• เชฆเซเชตเชพเชฐเชพ เชญเชฒเชพเชฎเชฃ เช•เชฐเชพเชฏเซ‡เชฒ เช…เชจเซเชฏ เชฐเซ€เชคเซ‡ เชเชธเซ‡เชฎเซเชฌเชฒ.
  4. เช…เชฎเซ‡ เช•เซเชฐเซ‹เชธ-เช•เชฎเซเชชเชพเชˆเชฒเชฐ เชตเชกเซ‡ เชฌเซเชŸเชฒเซ‹เชกเชฐ เชˆเชฎเซ‡เชœ เชชเซ‹เชคเซ‡ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเซ€เช เช›เซ€เช armhf: make CROSS_COMPILE=arm-linux-gnueabihf- u-boot.imx

เชชเชฐเชฟเชฃเชพเชฎเซ‡, เช…เชฎเชจเซ‡ เชซเชพเชˆเชฒ เชฎเชณเซ‡ เช›เซ‡ u-boot.imx, เช† เชเช• เชคเซˆเชฏเชพเชฐ เช›เชฌเซ€ เช›เซ‡ เชœเซ‡ USB เชซเซเชฒเซ‡เชถ เชกเซเชฐเชพเช‡เชต เชชเชฐ เชฒเช–เซ€ เชถเช•เชพเชฏ เช›เซ‡. เช…เชฎเซ‡ SD เช•เชพเชฐเซเชก เชชเชฐ เชฒเช–เซ€เช เช›เซ€เช, เชชเซเชฐเชฅเชฎ 1024 เชฌเชพเช‡เชŸเซเชธ เช›เซ‹เชกเซ€เชจเซ‡. เชฎเซ‡เช‚ เชฒเช•เซเชทเซเชฏ เช•เซ‡เชฎ เชชเชธเช‚เชฆ เช•เชฐเซเชฏเซเช‚ u-boot.imx? เชถเชพ เชฎเชพเชŸเซ‡ เชฌเชฐเชพเชฌเชฐ 1024 เชฌเชพเช‡เชŸเซเชธ เชšเซ‚เช•เซ€ เช—เชฏเชพ? เช† เชคเซ‡เช“ เชถเซเช‚ เช•เชฐเชตเชพเชจเซ€ เชฆเชฐเช–เชพเชธเซเชค เช•เชฐเซ‡ เช›เซ‡ เชฆเชธเซเชคเชพเชตเซ‡เชœเซ€เช•เชฐเชฃ. เช…เชจเซเชฏ เชฌเซ‹เชฐเซเชก เชฎเชพเชŸเซ‡, เช‡เชฎเซ‡เชœ เชฌเชฟเชฒเซเชกเชฟเช‚เช— เช…เชจเซ‡ เชฌเชฐเซเชจเชฟเช‚เช— เชชเซเชฐเช•เซเชฐเชฟเชฏเชพ เชฅเซ‹เชกเซ€ เช…เชฒเช— เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡.

เชฅเชˆ เช—เชฏเซเช‚, เชคเชฎเซ‡ เชกเชพเช‰เชจเชฒเซ‹เชก เช•เชฐเซ€ เชถเช•เซ‹ เช›เซ‹. เชฌเซเชŸเชฒเซ‹เชกเชฐเซ‡ เชคเซ‡เชจเซ€ เชชเซ‹เชคเชพเชจเซ€ เช†เชตเซƒเชคเซเชคเชฟ, เชฌเซ‹เชฐเซเชก เชตเชฟเชถเซ‡ เช•เซ‡เชŸเชฒเซ€เช• เชฎเชพเชนเชฟเชคเซ€เชจเซ€ เชœเชพเชฃ เช•เชฐเชตเซ€ เชœเซ‹เชˆเช เช…เชจเซ‡ เชชเชพเชฐเซเชŸเซ€เชถเชจ เชชเชฐ เช•เชฐเซเชจเชฒ เชˆเชฎเซ‡เชœ เชถเซ‹เชงเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชตเซ‹ เชœเซ‹เชˆเช. เชœเซ‹ เชคเซ‡ เชจเชฟเชทเซเชซเชณ เชœเชพเชฏ, เชคเซ‹ เชคเซ‡ เชจเซ‡เชŸเชตเชฐเซเช• เชชเชฐ เชฌเซเชŸ เช•เชฐเชตเชพเชจเซ‹ เชชเซเชฐเชฏเชพเชธ เช•เชฐเชถเซ‡. เชธเชพเชฎเชพเชจเซเชฏ เชฐเซ€เชคเซ‡, เช†เช‰เชŸเชชเซเชŸ เชคเชฆเซเชฆเชจ เชตเชฟเช—เชคเชตเชพเชฐ เช›เซ‡, เชคเชฎเซ‡ เชธเชฎเชธเซเชฏเชพเชจเชพ เช•เชฟเชธเซเชธเชพเชฎเชพเช‚ เชญเซ‚เชฒ เชถเซ‹เชงเซ€ เชถเช•เซ‹ เช›เซ‹.

เชคเซ‡เชจเชพ เชฌเชฆเชฒเซ‡ เชเช• เชจเชฟเชทเซเช•เชฐเซเชท

เชถเซเช‚ เชคเชฎเซ‡ เชœเชพเชฃเซ‹ เช›เซ‹ เช•เซ‡ เชกเซ‹เชฒเซเชซเชฟเชจเชจเซเช‚ เช•เชชเชพเชณ เชนเชพเชกเช•เซเช‚ เชจเชฅเซ€ เชนเซ‹เชคเซเช‚? เชคเซ‡ เชถเชพเชฌเซเชฆเชฟเช• เชฐเซ€เชคเซ‡ เชคเซเชฐเซ€เชœเซ€ เช†เช‚เช– เช›เซ‡, เช‡เช•เซ‹เชฒเซ‹เช•เซ‡เชถเชจ เชฎเชพเชŸเซ‡ เชซเซ‡เชŸเซ€ เชฒเซ‡เชจเซเชธ!

ARM เชฌเซ‹เชฐเซเชก เชชเชฐ เชถเชฐเซ‚เช†เชคเชฅเซ€ เชœ GNU/Linux เชถเชฐเซ‚ เช•เชฐเชตเซเช‚ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช•เชพเชฒเซ€ เช…เชจเซ‡ iMX.6 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡)

ARM เชฌเซ‹เชฐเซเชก เชชเชฐ เชถเชฐเซ‚เช†เชคเชฅเซ€ เชœ GNU/Linux เชถเชฐเซ‚ เช•เชฐเชตเซเช‚ (เช‰เชฆเชพเชนเชฐเชฃ เชคเชฐเซ€เช•เซ‡ เช•เชพเชฒเซ€ เช…เชจเซ‡ iMX.6 เชจเซ‹ เช‰เชชเชฏเซ‹เช— เช•เชฐเซ€เชจเซ‡)

เชธเซ‹เชฐเซเชธ: www.habr.com