рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдПрдЖрд░рдПрдо рдмреЛрд░реНрдбрдорд╛ GNU/Linux рд╕реБрд░реБ рдЧрд░реНрджреИ (рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛ Kali рд░ iMX.6 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ)

tl; dr: рдо рдХрд╛рд░реНрдпрдХреНрд░рдордорд╛ рдПрдЖрд░рдПрдо рдХрдореНрдкреНрдпреБрдЯрд░рдХреЛ рд▓рд╛рдЧрд┐ рдХрд╛рд▓реА рд▓рд┐рдирдХреНрд╕ рдЫрд╡рд┐ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджреИрдЫреБ debootstrap, linux ╨╕ u-boot.

рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдПрдЖрд░рдПрдо рдмреЛрд░реНрдбрдорд╛ GNU/Linux рд╕реБрд░реБ рдЧрд░реНрджреИ (рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛ Kali рд░ iMX.6 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ)

рдпрджрд┐ рддрдкрд╛рдИрдВрд▓реЗ рдХреЗрд╣рд┐ рдзреЗрд░реИ рд▓реЛрдХрдкреНрд░рд┐рдп рдПрдХрд▓-рднреБрдХреНрддрд╛рдиреАрдХрд░реНрддрд╛ рдХрд┐рдиреНрдиреБрднрдпреЛ рднрдиреЗ, рддрдкрд╛рдИрдВрд▓реЗ рдпрд╕рдХреЛ рд▓рд╛рдЧрд┐ рдЖрдлреНрдиреЛ рдордирдкрд░реНрдиреЗ рд╡рд┐рддрд░рдг рдХрд┐рдЯрдХреЛ рдЫрд╡рд┐рдХреЛ рдЕрднрд╛рд╡ рд╕рд╛рдордирд╛ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рд▓рдЧрднрдЧ рддреНрдпрд╕реНрддреИ рдХреБрд░рд╛ рднрдпреЛ рдпреЛрдЬрдирд╛рдмрджреНрдз рдлреНрд▓рд┐рдкрд░ рд╡рдиред рддреНрдпрд╣рд╛рдБ IMX6 (рдо рдкрдХрд╛рдЙрдБрджреИ рдЫреБ) рдХреЛ рд▓рд╛рдЧрд┐ рдХреБрдиреИ рдХрд╛рд▓реА рд▓рд┐рдирдХреНрд╕ рдЫреИрди, рддреНрдпрд╕реИрд▓реЗ рдореИрд▓реЗ рдпрд╕рд▓рд╛рдИ рдЖрдлреИрдВ рднреЗрд▓рд╛ рдЧрд░реНрдиреБрдкрд░реНрдЫред

рдбрд╛рдЙрдирд▓реЛрдб рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдПрдХрджрдо рд╕рд░рд▓ рдЫ:

  1. рд╣рд╛рд░реНрдбрд╡реЗрдпрд░ рдкреНрд░рд╛рд░рдореНрдн рдЧрд░рд┐рдПрдХреЛ рдЫред
  2. рднрдгреНрдбрд╛рд░рдг рдпрдиреНрддреНрд░рдХреЛ рдХреЗрд╣реА рдХреНрд╖реЗрддреНрд░рдмрд╛рдЯ (SD рдХрд╛рд░реНрдб/eMMC/etc) рдмреБрдЯрд▓реЛрдбрд░ рдкрдврд┐рдиреНрдЫ рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рд╣реБрдиреНрдЫред
  3. рд▓реЛрдбрд░рд▓реЗ рдЕрдкрд░реЗрдЯрд┐рдЩ рд╕рд┐рд╕реНрдЯрдордХреЛ рдХрд░реНрдиреЗрд▓ рдЦреЛрдЬреНрдЫ рд░ рдпрд╕рд▓рд╛рдИ рдХреЗрд╣реА рдореЗрдореЛрд░реА рдХреНрд╖реЗрддреНрд░рдорд╛ рд▓реЛрдб рдЧрд░реНрдЫ рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрдЫред
  4. рдХрд░реНрдиреЗрд▓рд▓реЗ рдУрдПрд╕рдХреЛ рдмрд╛рдБрдХреА рд▓реЛрдб рдЧрд░реНрджрдЫред

рдореЗрд░реЛ рдХрд╛рд░реНрдпрдХреЛ рд▓рд╛рдЧрд┐, рд╡рд┐рд╡рд░рдгрдХреЛ рдпреЛ рд╕реНрддрд░ рдкрд░реНрдпрд╛рдкреНрдд рдЫ, рддрдкрд╛рдИрдВ рд╡рд┐рд╡рд░рдгрд╣рд░реВ рдкрдвреНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ рдЕрд░реНрдХреЛ рд▓реЗрдЦрдорд╛ред рдорд╛рдерд┐ рдЙрд▓реНрд▓реЗрдЦрд┐рдд "рдХреЗрд╣реА" рдХреНрд╖реЗрддреНрд░рд╣рд░реВ рдмреЛрд░реНрдбрдмрд╛рдЯ рдмреЛрд░реНрдбрдорд╛ рдлрд░рдХ рд╣реБрдиреНрдЫрдиреН, рдЬрд╕рд▓реЗ рдХреЗрд╣реА рд╕реНрдерд╛рдкрдирд╛ рдХрдард┐рдирд╛рдЗрд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рдЧрд░реНрджрдЫред рд╕рд░реНрднрд░ ARM рдкреНрд▓реЗрдЯрдлрд░реНрдорд╣рд░реВ рд▓реЛрдб рдЧрд░реНрджреИ рдорд╛рдирдХреАрдХрд░рдг рдЧрд░реНрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрджреИ UEFI рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ, рддрд░ рдЬрдмрд╕рдореНрдо рдпреЛ рд╕рдмреИрдХрд╛ рд▓рд╛рдЧрд┐ рдЙрдкрд▓рдмреНрдз рдЫреИрди, рддрдкрд╛рдИрдВрд▓реЗ рд╕рдмреИ рдХреБрд░рд╛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдиреБрдкрд░реНрдиреЗрдЫред

рд░реВрдЯ рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реА рдирд┐рд░реНрдорд╛рдг

рдкрд╣рд┐рд▓реЗ рддрдкрд╛рдИрдВрд▓реЗ рдЦрдгреНрдбрд╣рд░реВ рддрдпрд╛рд░ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫред рджрд╛рд╕ рдпреВ-рдмреБрдЯрд▓реЗ рд╡рд┐рднрд┐рдиреНрди рдлрд╛рдЗрд▓ рдкреНрд░рдгрд╛рд▓реАрд╣рд░реВрд▓рд╛рдИ рд╕рдорд░реНрдерди рдЧрд░реНрджрдЫ, рдореИрд▓реЗ FAT32 рдХреЛ рд▓рд╛рдЧрд┐ рд░реЛрдЬреЗрдВ /boot рд░ рд░реВрдЯрдХреЛ рд▓рд╛рдЧрд┐ ext3, рдпреЛ ARM рдЕрдиреНрддрд░реНрдЧрдд рдХрд╛рд▓реАрдХреЛ рд▓рд╛рдЧрд┐ рдорд╛рдирдХ рдЫрд╡рд┐ рдорд╛рд░реНрдХрдЕрдк рд╣реЛред рдо 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. рдпрджрд┐ рдЕрдЪрд╛рдирдХ рддрдкрд╛рдИрдВрд▓реЗ рд╡рд┐рднрд╛рдЬрди рдлрд╛рдЗрд▓рд╣рд░реВ рд╕рд┐рд░реНрдЬрдирд╛ рд╡рд╛ рдкрд░рд┐рд╡рд░реНрддрди рдЧрд░реНрдиреБрднрдПрдХреЛ рдЫреИрди рднрдиреЗ, рддрдкрд╛рдИрдВрд▓реЗ `partprobe` рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ, рддреНрдпрд╕рдкрдЫрд┐ рд╡рд┐рднрд╛рдЬрди рддрд╛рд▓рд┐рдХрд╛ рдкреБрди: рдкрдврд┐рдиреЗрдЫред
  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 / рд╕реНрд╡рдд: рддреНрд░реБрдЯрд┐рд╣рд░реВ = remount-ro 0 1
LABEL=BOOT/boot рд╕реНрд╡рддрдГ рдкреВрд░реНрд╡рдирд┐рд░реНрдзрд╛рд░рд┐рдд реж реж

рдЕрдиреНрддрдорд╛, рддрдкрд╛рдЗрдБ рдмреБрдЯ рд╡рд┐рднрд╛рдЬрди рдорд╛рдЙрдиреНрдЯ рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫ, рд╣рд╛рдореАрд▓рд╛рдИ рдХрд░реНрдиреЗрд▓рдХреЛ рд▓рд╛рдЧрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реБрдиреЗрдЫ: `mount /dev/mmcblk0p1 /mnt/boot/`

рд▓рд┐рдирдХреНрд╕ рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрджреИ

рдбреЗрдмрд┐рдпрди рдкрд░реАрдХреНрд╖рдгрдорд╛ рдХрд░реНрдиреЗрд▓ (рд░ рддреНрдпрд╕рдкрдЫрд┐ рдмреБрдЯрд▓реЛрдбрд░) рдирд┐рд░реНрдорд╛рдг рдЧрд░реНрди, рддрдкрд╛рдИрдВрд▓реЗ рд▓рдХреНрд╖реНрдп рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░рдХреЛ рд▓рд╛рдЧрд┐ GCC, GNU Make рд░ GNU C рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реЗрдбрд░ рдлрд╛рдЗрд▓рд╣рд░реВрдХреЛ рдорд╛рдирдХ рд╕реЗрдЯ рд╕реНрдерд╛рдкрдирд╛ рдЧрд░реНрди рдЖрд╡рд╢реНрдпрдХ рдЫ (рдорд╕рдБрдЧ рдЫред 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-to-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ред рдпрджрд┐ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рджрд╛рд╕ U-Boot рдорд╛ рдЫ рднрдиреЗ рдорд╛рддреНрд░ рдпрд╕рд▓реЗ рдХрд╛рдо рдЧрд░реНрдЫ, рдЕрдиреНрдпрдерд╛ рддрдкрд╛рдИрдВрд▓реЗ рдирд┐рд░реНрдорд╛рддрд╛рдХреЛ рдХрдиреНрдлрд┐рдЧрд░реЗрд╕рди рдлреЗрд▓рд╛ рдкрд╛рд░реНрдиреБ рдкрд░реНрдЫ рд░ рдлрд╛рдЗрд▓рдорд╛ рднрдгреНрдбрд╛рд░рдХреЛ рдореВрд▓рдорд╛ рд░рд╛рдЦреНрдиреБ рдкрд░реНрдЫред .config, рд╡рд╛ рдирд┐рд░реНрдорд╛рддрд╛ рджреНрд╡рд╛рд░рд╛ рд╕рд┐рдлрд╛рд░рд┐рд╕ рдЧрд░рд┐рдПрдХреЛ рдЕрд░реНрдХреЛ рддрд░рд┐рдХрд╛рдорд╛ рднреЗрд▓рд╛ред
  4. рд╣рд╛рдореА рдХреНрд░рд╕-рдХрдореНрдкрд╛рдЗрд▓рд░рдХреЛ рд╕рд╛рде рдмреВрдЯрд▓реЛрдбрд░ рдЫрд╡рд┐ рдЖрдлреИрдВ рд╕рдЩреНрдХрд▓рди рдЧрд░реНрдЫреМрдВ armhf: make CROSS_COMPILE=arm-linux-gnueabihf- u-boot.imx

рдирддрд┐рдЬрд╛рдХреЛ рд░реВрдкрдорд╛, рд╣рд╛рдореА рдлрд╛рдЗрд▓ рдкреНрд░рд╛рдкреНрдд рдЧрд░реНрдЫреМрдВ u-boot.imx, рдпреЛ рдПрдХ рд░реЗрдбрд┐рдореЗрдб рдЫрд╡рд┐ рд╣реЛ рдЬреБрди USB рдлреНрд▓реИрд╢ рдбреНрд░рд╛рдЗрднрдорд╛ рд▓реЗрдЦреНрди рд╕рдХрд┐рдиреНрдЫред рд╣рд╛рдореА SD рдХрд╛рд░реНрдбрдорд╛ рд▓реЗрдЦреНрдЫреМрдВ, рдкрд╣рд┐рд▓реЛ 1024 рдмрд╛рдЗрдЯрд╣рд░реВ рдЫреЛрдбреЗрд░ред рдореИрд▓реЗ рд▓рдХреНрд╖реНрдп рдХрд┐рди рд░реЛрдЬреЗрдВ u-boot.imx? рдХрд┐рди рдареАрдХ 1024 рдмрд╛рдЗрдЯ рдЫреБрдЯреЗрдХреЛ? рдпреЛ рддрд┐рдиреАрд╣рд░реВрд▓реЗ рдЧрд░реНрди рдкреНрд░рд╕реНрддрд╛рд╡ рдЧрд░реЗрдХреЛ рдЫ рдХрд╛рдЧрдЬрд╛рддред рдЕрдиреНрдп рдмреЛрд░реНрдбрд╣рд░реВрдХреЛ рд▓рд╛рдЧрд┐, рдЫрд╡рд┐ рдирд┐рд░реНрдорд╛рдг рд░ рдЬрд▓рд╛рдЙрдиреЗ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдереЛрд░реИ рдлрд░рдХ рд╣реБрди рд╕рдХреНрдЫред

рд╕рдХрд┐рдпреЛ, рддрдкрд╛рдИрдВ рдбрд╛рдЙрдирд▓реЛрдб рдЧрд░реНрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред рдмреБрдЯрд▓реЛрдбрд░рд▓реЗ рдЖрдлреНрдиреИ рд╕рдВрд╕реНрдХрд░рдг рд░рд┐рдкреЛрд░реНрдЯ рдЧрд░реНрдиреБрдкрд░реНрдЫ, рдмреЛрд░реНрдб рдмрд╛рд░реЗ рдХреЗрд╣реА рдЬрд╛рдирдХрд╛рд░реА, рд░ рд╡рд┐рднрд╛рдЬрдирдорд╛ рдХрд░реНрдиреЗрд▓ рдЫрд╡рд┐ рдлреЗрд▓рд╛ рдкрд╛рд░реНрди рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреБрд╣реЛрд╕реНред рдпрджрд┐ рдпреЛ рдЕрд╕рдлрд▓ рднрдпреЛ рднрдиреЗ, рдпрд╕рд▓реЗ рдиреЗрдЯрд╡рд░реНрдХрдорд╛ рдмреБрдЯ рдЧрд░реНрдиреЗ рдкреНрд░рдпрд╛рд╕ рдЧрд░реНрдиреЗрдЫред рд╕рд╛рдорд╛рдиреНрдпрддрдпрд╛, рдЖрдЙрдЯрдкреБрдЯ рдзреЗрд░реИ рд╡рд┐рд╕реНрддреГрдд рдЫ, рддрдкрд╛рдИрдВ рд╕рдорд╕реНрдпрд╛ рдХреЛ рдорд╛рдорд▓рд╛ рдорд╛ рддреНрд░реБрдЯрд┐ рдкрд╛рдЙрди рд╕рдХреНрдиреБрд╣реБрдиреНрдЫред

рдмрд░реБ рдПрдХ рдирд┐рд╖реНрдХрд░реНрд╖рдорд╛ рдХреЛ

рдХреЗ рддрдкрд╛рдИрдВрд▓рд╛рдИ рдерд╛рд╣рд╛ рдЫ рдбрд▓реНрдлрд┐рдирдХреЛ рдирд┐рдзрд╛рд░ рд╣рдбреНрдбреАрдХреЛ рд╣реБрдБрджреИрди? рдпреЛ рд╢рд╛рдмреНрджрд┐рдХ рд░реВрдкрдорд╛ рддреЗрд╕реНрд░реЛ рдЖрдБрдЦрд╛ рд╣реЛ, рдЗрдХреЛрд▓реЛрдХреЗрд╢рдирдХреЛ рд▓рд╛рдЧрд┐ рдлреНрдпрд╛рдЯреА рд▓реЗрдиреНрд╕!

рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдПрдЖрд░рдПрдо рдмреЛрд░реНрдбрдорд╛ GNU/Linux рд╕реБрд░реБ рдЧрд░реНрджреИ (рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛ Kali рд░ iMX.6 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ)

рд╕реНрдХреНрд░реНрдпрд╛рдЪрдмрд╛рдЯ рдПрдЖрд░рдПрдо рдмреЛрд░реНрдбрдорд╛ GNU/Linux рд╕реБрд░реБ рдЧрд░реНрджреИ (рдЙрджрд╛рд╣рд░рдгрдХреЛ рд░реВрдкрдорд╛ Kali рд░ iMX.6 рдкреНрд░рдпреЛрдЧ рдЧрд░реНрджреИ)

рд╕реНрд░реЛрдд: www.habr.com