Buildroot - ื—ืœืง 2. ื™ืฆื™ืจืช ืชืฆื•ืจืช ื”ืœื•ื— ืฉืœืš; ื‘ืืžืฆืขื•ืช ืขืฅ ื—ื™ืฆื•ื ื™, ืฉื›ื‘ืช-ืขืœ ืฉืœ rootfs, ืกืงืจื™ืคื˜ื™ื ืฉืœืื—ืจ ื‘ื ื™ื™ื”

ื‘ื—ืœืง ื–ื” ืื ื™ ืžืกืชื›ืœ ืขืœ ื›ืžื” ืžืืคืฉืจื•ื™ื•ืช ื”ื”ืชืืžื” ื”ืื™ืฉื™ืช ืฉื”ื™ื™ืชื™ ืฆืจื™ืš. ื–ื• ืœื ืจืฉื™ืžื” ืžืœืื” ืฉืœ ืžื” ืฉ-buildroot ืžืฆื™ืข, ืื‘ืœ ื”ื ื“ื™ ืคื•ื ืงืฆื™ื•ื ืœื™ื™ื ื•ืื™ื ื ื“ื•ืจืฉื™ื ื”ืชืขืจื‘ื•ืช ื‘ืงื‘ืฆื™ื ืฉืœ buildroot ืขืฆืžื•.

ืฉื™ืžื•ืฉ ื‘ืžื ื’ื ื•ืŸ EXTERNAL ืœื”ืชืืžื” ืื™ืฉื™ืช

ื‘ืžืืžืจ ื”ืงื•ื“ื ื”ืกืชื›ืœื ื• ืขืœ ื“ื•ื’ืžื” ืคืฉื•ื˜ื” ืฉืœ โ€‹โ€‹ื”ื•ืกืคืช ืชืฆื•ืจื” ืžืฉืœืš ืขืœ ื™ื“ื™ ื”ื•ืกืคืช ื”-defconfig ืฉืœ ื”ืœื•ื— ื•ื”ืงื‘ืฆื™ื ื”ื“ืจื•ืฉื™ื ื™ืฉื™ืจื•ืช ืœืกืคืจื™ื™ืช Buildroot.

ืื‘ืœ ืฉื™ื˜ื” ื–ื• ืื™ื ื” ื ื•ื—ื” ื‘ืžื™ื•ื—ื“, ื‘ืžื™ื•ื—ื“ ื›ืืฉืจ ืžืขื“ื›ื ื™ื ืืช ื”-buildroot. ื™ืฉ ืžื ื’ื ื•ืŸ ืœืคืชื•ืจ ืืช ื”ื‘ืขื™ื” ื”ื–ื• ืขืฅ ื—ื™ืฆื•ื ื™. ื”ืžื”ื•ืช ืฉืœื• ื”ื™ื ืฉืืชื” ื™ื›ื•ืœ ืœืื—ืกืŸ ืœื•ื—, ื”ื’ื“ืจื•ืช, ื—ื‘ื™ืœื•ืช ื•ืกืคืจื™ื•ืช ืื—ืจื•ืช ื‘ืกืคืจื™ื™ื” ื ืคืจื“ืช (ืœื“ื•ื’ืžื”, ืื ื™ ืžืฉืชืžืฉ ื‘ืกืคืจื™ื™ืช ื”ืชื™ืงื•ื ื™ื ื›ื“ื™ ืœื”ื—ื™ืœ ืชื™ืงื•ื ื™ื ืขืœ ื—ื‘ื™ืœื•ืช, ืคืจื˜ื™ื ื ื•ืกืคื™ื ื‘ืกืขื™ืฃ ื ืคืจื“) ื•-buildroot ืขืฆืžื• ื™ื•ืกื™ืฃ ืื•ืชื ืœืืœื• ืฉื‘ ื”ืกืคืจื™ื™ื” ืฉืœื•.

ื”ืขืจื”: ืืชื” ื™ื›ื•ืœ ืœื›ืกื•ืช ื›ืžื” ืขืฆื™ื ื—ื™ืฆื•ื ื™ื™ื ื‘ื‘ืช ืื—ืช, ื™ืฉ ื“ื•ื’ืžื” ื‘ืžื“ืจื™ืš ื”-buildroot

ื‘ื•ืื• ื ื™ืฆื•ืจ ืกืคืจื™ื™ื” my_tree, ื”ืžืžื•ืงืžืช ืœื™ื“ ืกืคืจื™ื™ืช buildroot ื•ื ืขื‘ื™ืจ ืœืฉื ืืช ื”ืชืฆื•ืจื” ืฉืœื ื•. ื”ืคืœื˜ ืฆืจื™ืš ืœื”ื™ื•ืช ื‘ืžื‘ื ื” ื”ืงื•ื‘ืฅ ื”ื‘ื:

[alexey@alexey-pc my_tree]$ tree
.
โ”œโ”€โ”€ board
โ”‚   โ””โ”€โ”€ my_x86_board
โ”‚       โ”œโ”€โ”€ bef_cr_fs_img.sh
โ”‚       โ”œโ”€โ”€ linux.config
โ”‚       โ”œโ”€โ”€ rootfs_overlay
โ”‚       โ””โ”€โ”€ users.txt
โ”œโ”€โ”€ Config.in
โ”œโ”€โ”€ configs
โ”‚   โ””โ”€โ”€ my_x86_board_defconfig
โ”œโ”€โ”€ external.desc
โ”œโ”€โ”€ external.mk
โ”œโ”€โ”€ package
โ””โ”€โ”€ patches

6 directories, 7 files

ื›ืคื™ ืฉื ื™ืชืŸ ืœืจืื•ืช, ื‘ืื•ืคืŸ ื›ืœืœื™ ื”ืžื‘ื ื” ื—ื•ื–ืจ ืขืœ ืžื‘ื ื” ื”-buildroot.

ืžื“ืจื™ืš ืœื•ึผื—ึท ืžื›ื™ืœ ืงื‘ืฆื™ื ืกืคืฆื™ืคื™ื™ื ืœื›ืœ ืœื•ื— ื‘ืžืงืจื” ืฉืœื ื•:

  • bef_cr_fs_img.sh ื”ื•ื ืกืงืจื™ืคื˜ ืฉื™ื‘ื•ืฆืข ืœืื—ืจ ื‘ื ื™ื™ืช ืžืขืจื›ืช ืงื‘ืฆื™ ื”ื™ืขื“, ืืš ืœืคื ื™ ืืจื™ื–ืชื• ืœืชืžื•ื ื•ืช. ื ืฉืชืžืฉ ื‘ื• ื‘ืขืชื™ื“
  • linux.config - ืชืฆื•ืจืช ืœื™ื‘ื”
  • rootfs_overlay - ืกืคืจื™ื™ื” ืœื›ื™ืกื•ื™ ืขืœ ื’ื‘ื™ ืžืขืจื›ืช ืงื‘ืฆื™ ื”ื™ืขื“
  • users.txt - ืงื•ื‘ืฅ ื”ืžืชืืจ ืืช ื”ืžืฉืชืžืฉื™ื ืฉื™ื™ื•ื•ืฆืจื•

ืžื“ืจื™ืš configs ืžื›ื™ืœ defconfig ืฉืœ ื”ืœื•ื—ื•ืช ืฉืœื ื•. ื™ืฉ ืœื ื• ืจืง ืื—ื“.

ื—ึฒื‘ึดื™ืœึธื” - ืงื˜ืœื•ื’ ืขื ื”ื—ื‘ื™ืœื•ืช ืฉืœื ื•. ื‘ืชื—ื™ืœื”, buildroot ืžื›ื™ืœ ืชื™ืื•ืจื™ื ื•ื›ืœืœื™ื ืœื‘ื ื™ื™ืช ืžืกืคืจ ืžื•ื’ื‘ืœ ืฉืœ ื—ื‘ื™ืœื•ืช. ื‘ื”ืžืฉืš ื ื•ืกื™ืฃ ื›ืืŸ ืืช ืžื ื”ืœ ื”ื—ืœื•ื ื•ืช icewm ื•ืืช ืžื ื”ืœ ื”ื”ืชื—ื‘ืจื•ืช ื”ื’ืจืคื™ ืฉืœ Slim.
ื˜ืœืื™ื - ืžืืคืฉืจ ืœืš ืœืื—ืกืŸ ื‘ื ื•ื—ื•ืช ืืช ื”ืชื™ืงื•ื ื™ื ืฉืœืš ืขื‘ื•ืจ ื—ื‘ื™ืœื•ืช ืฉื•ื ื•ืช. ืคืจื˜ื™ื ื ื•ืกืคื™ื ื‘ืกืขื™ืฃ ื ืคืจื“ ืœืžื˜ื”.
ื›ืขืช ืขืœื™ื ื• ืœื”ื•ืกื™ืฃ ืืช ืงื‘ืฆื™ ื”ืชื™ืื•ืจ ืขื‘ื•ืจ ื”ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉืœื ื•. ื™ืฉื ื 3 ืงื‘ืฆื™ื ืฉืื—ืจืื™ื ืœื›ืš: external.desc, Config.in, external.mk.

external.desc ืžื›ื™ืœ ืืช ื”ืชื™ืื•ืจ ื‘ืคื•ืขืœ:

[alexey@alexey-pc my_tree]$ cat external.desc 
name: my_tree
desc: My simple external-tree for article

ื”ืฉื•ืจื” ื”ืจืืฉื•ื ื” ื”ื™ื ื”ื›ื•ืชืจืช. ื‘ืขืชื™ื“ buildroot ืœื™ืฆื•ืจ ืžืฉืชื ื” $(BR2_EXTERNAL_MY_TREE_PATH), ืฉื‘ื• ื™ืฉ ืœื”ืฉืชืžืฉ ื‘ืขืช ืงื‘ื™ืขืช ื”ืชืฆื•ืจื” ืฉืœ ื”ืžื›ืœื•ืœ. ืœื“ื•ื’ืžื”, ื ื™ืชืŸ ืœื”ื’ื“ื™ืจ ืืช ื”ื ืชื™ื‘ ืœืงื•ื‘ืฅ ื”ืžืฉืชืžืฉ ื‘ืื•ืคืŸ ื”ื‘ื:

$(BR2_EXTERNAL_my_tree_PATH)/board/my_x86_board/users.txt

ื”ืฉื•ืจื” ื”ืฉื ื™ื™ื” ื”ื™ื ืชื™ืื•ืจ ืงืฆืจ, ื”ื ื™ืชืŸ ืœืงืจื™ืื” ืื ื•ืฉื™ืช.

Config.in, external.mk - ืงื‘ืฆื™ื ืœืชื™ืื•ืจ ื—ื‘ื™ืœื•ืช ืฉื ื•ืกืคื•. ืื ืื™ื ืš ืžื•ืกื™ืฃ ื—ื‘ื™ืœื•ืช ืžืฉืœืš, ื ื™ืชืŸ ืœื”ืฉืื™ืจ ืงื‘ืฆื™ื ืืœื” ืจื™ืงื™ื. ืœืขืช ืขืชื”, ื–ื” ืžื” ืฉื ืขืฉื”.
ื›ืขืช ื™ืฉ ืœื ื• ืืช ื”ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉืœื ื• ืžื•ื›ืŸ, ื”ืžื›ื™ืœ ืืช ื”-defconfig ืฉืœ ื”ืœื•ื— ืฉืœื ื• ื•ืืช ื”ืงื‘ืฆื™ื ื”ื“ืจื•ืฉื™ื ืœื•. ื‘ื•ื ื ืœืš ืœืกืคืจื™ื™ืช buildroot ื•ื ืฆื™ื™ืŸ ืœื”ืฉืชืžืฉ ื‘-extern-tree:

[alexey@alexey-pc buildroot]$ make BR2_EXTERNAL=../my_tree/ my_x86_board_defconfig
#
# configuration written to /home/alexey/dev/article/ramdisk/buildroot/.config
#
[alexey@alexey-pc buildroot]$ make menuconfig

ื‘ืคืงื•ื“ื” ื”ืจืืฉื•ื ื” ืื ื• ืžืฉืชืžืฉื™ื ื‘ืืจื’ื•ืžื ื˜ BR2_EXTERNAL=../my_tree/, ื”ืžืฆื™ื™ืŸ ืืช ื”ืฉื™ืžื•ืฉ ื‘ืขืฅ ื—ื™ืฆื•ื ื™. ื ื™ืชืŸ ืœืฆื™ื™ืŸ ืžืกืคืจ ืขืฆื™ื ื—ื™ืฆื•ื ื™ื™ื ืœืฉื™ืžื•ืฉ ื‘ื•-ื–ืžื ื™ืช. ื‘ืžืงืจื” ื–ื”, ืขืœื™ืš ืœืขืฉื•ืช ื–ืืช ืคืขื ืื—ืช ื‘ืœื‘ื“, ื•ืœืื—ืจ ืžื›ืŸ ื ื•ืฆืจ ืคืœื˜ ืงื•ื‘ืฅ/.br-external.mk ืืฉืจ ืžืื—ืกืŸ ืžื™ื“ืข ืขืœ ื”ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉื‘ื• ื ืขืฉื” ืฉื™ืžื•ืฉ:

[alexey@alexey-pc buildroot]$ cat output/.br-external.mk 
#
# Automatically generated file; DO NOT EDIT.
#

BR2_EXTERNAL ?= /home/alexey/dev/article/ramdisk/my_small_linux/my_tree
BR2_EXTERNAL_NAMES = 
BR2_EXTERNAL_DIRS = 
BR2_EXTERNAL_MKS = 

BR2_EXTERNAL_NAMES += my_tree
BR2_EXTERNAL_DIRS += /home/alexey/dev/article/ramdisk/my_small_linux/my_tree
BR2_EXTERNAL_MKS += /home/alexey/dev/article/ramdisk/my_small_linux/my_tree/external.mk
export BR2_EXTERNAL_my_tree_PATH = /home/alexey/dev/article/ramdisk/my_small_linux/my_tree
export BR2_EXTERNAL_my_tree_DESC = My simple external-tree for article

ื—ึธืฉืื•ึผื‘! ื”ื ืชื™ื‘ื™ื ื‘ืงื•ื‘ืฅ ื–ื” ื™ื”ื™ื• ืžื•ื—ืœื˜ื™ื!

ืคืจื™ื˜ ืืคืฉืจื•ื™ื•ืช ื—ื™ืฆื•ื ื™ื•ืช ื”ื•ืคื™ืข ื‘ืชืคืจื™ื˜:

Buildroot - ื—ืœืง 2. ื™ืฆื™ืจืช ืชืฆื•ืจืช ื”ืœื•ื— ืฉืœืš; ื‘ืืžืฆืขื•ืช ืขืฅ ื—ื™ืฆื•ื ื™, ืฉื›ื‘ืช-ืขืœ ืฉืœ rootfs, ืกืงืจื™ืคื˜ื™ื ืฉืœืื—ืจ ื‘ื ื™ื™ื”

ืชืคืจื™ื˜ ืžืฉื ื” ื–ื” ื™ื›ื™ืœ ืืช ื”ื—ื‘ื™ืœื•ืช ืฉืœื ื• ืžื”ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉืœื ื•. ื—ืœืง ื–ื” ืจื™ืง ื›ืจื’ืข.

ื›ืขืช ื—ืฉื•ื‘ ืœื ื• ื™ื•ืชืจ ืœืฉื›ืชื‘ ืืช ื”ื ืชื™ื‘ื™ื ื”ื“ืจื•ืฉื™ื ืœืฉื™ืžื•ืฉ ื‘ืขืฅ ื—ื™ืฆื•ื ื™.

ืฉื™ืžื• ืœื‘ ืฉื‘ืงื˜ืข Build ืืคืฉืจื•ื™ื•ืช โ† ืžื™ืงื•ื ืœืฉืžื™ืจืช ืชืฆื•ืจืช buildroot, ื™ื”ื™ื” ื ืชื™ื‘ ืžื•ื—ืœื˜ ืœ-defconfig ื”ืฉืžื•ืจื”. ื”ื•ื ื ื•ืฆืจ ื‘ืจื’ืข ืฉืœ ืฆื™ื•ืŸ ื”ืฉื™ืžื•ืฉ ื‘-extgernal_tree.

ืื ื• ื’ื ื ืชืงืŸ ืืช ื”ื ืชื™ื‘ื™ื ื‘ืกืขื™ืฃ ืชืฆื•ืจืช ื”ืžืขืจื›ืช. ืœื˜ื‘ืœื” ืขื ืžืฉืชืžืฉื™ื ืฉื ื•ืฆืจื•:

$(BR2_EXTERNAL_my_tree_PATH)/board/my_x86_board/users.txt

ื‘ืงื˜ืข ื”ืœื™ื‘ื”, ืฉื ื” ืืช ื”ื ืชื™ื‘ ืœืชืฆื•ืจืช ื”ืœื™ื‘ื”:

$(BR2_EXTERNAL_my_tree_PATH)/board/my_x86_board/linux.config

ื›ืขืช ื”ืงื‘ืฆื™ื ืฉืœื ื• ืžื”ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉืœื ื• ื™ืฉืžืฉื• ื‘ืžื”ืœืš ื”ื”ืจื›ื‘ื”. ื‘ืขืช ืžืขื‘ืจ ืœืกืคืจื™ื™ื” ืื—ืจืช ืื• ืขื“ื›ื•ืŸ ื”-buildroot, ื™ื”ื™ื• ืœื ื• ืžื™ื ื™ืžื•ื ื‘ืขื™ื•ืช.

ื”ื•ืกืคืช ืฉื›ื‘ืช ื‘ืกื™ืก fs:

ืžื ื’ื ื•ืŸ ื–ื” ืžืืคืฉืจ ืœืš ืœื”ื•ืกื™ืฃ/ืœื”ื—ืœื™ืฃ ื‘ืงืœื•ืช ืงื‘ืฆื™ื ื‘ืžืขืจื›ืช ืงื‘ืฆื™ ื”ื™ืขื“.
ืื ื”ืงื•ื‘ืฅ ื ืžืฆื ื‘ืฉื›ื‘ืช ื‘ืกื™ืก fs, ืื‘ืœ ืœื ื‘-target, ืื– ื”ื•ื ื™ืชื•ื•ืกืฃ
ืื ื”ืงื•ื‘ืฅ ื ืžืฆื ื‘ืฉื›ื‘ืช-ืขืœ root fs ื•ื‘-target, ืื– ื”ื•ื ื™ื•ื—ืœืฃ.
ืจืืฉื™ืช, ื‘ื•ืื• ื ื’ื“ื™ืจ ืืช ื”ื ืชื™ื‘ ืœ-fs overlay ืฉื•ืจืฉ. ื–ื” ื ืขืฉื” ื‘ืกืขื™ืฃ ืชืฆื•ืจืช ืžืขืจื›ืช โ† ืกืคืจื™ื•ืช ืฉื›ื‘ืช ืขืœ ืฉืœ ืžืขืจื›ืช ืงื‘ืฆื™ื ืฉื•ืจืฉ:

$(BR2_EXTERNAL_my_tree_PATH)/board/my_x86_board/rootfs_overlay/

ืขื›ืฉื™ื• ื‘ื•ืื• ื ื™ืฆื•ืจ ืฉื ื™ ืงื‘ืฆื™ื.

[alexey@alexey-pc my_small_linux]$ cat my_tree/board/my_x86_board/rootfs_overlay/etc/hosts 
127.0.0.1   localhost
127.0.1.1   my_small_linux
8.8.8.8     google-public-dns-a.google.com.
[alexey@alexey-pc my_small_linux]$ cat my_tree/board/my_x86_board/rootfs_overlay/new_file.txt 
This is new file from overlay

ื”ืงื•ื‘ืฅ ื”ืจืืฉื•ืŸ (my_tree/board/my_x86_board/rootfs_overlay/etc/hosts) ื™ื—ืœื™ืฃ ืืช ืงื•ื‘ืฅ /etc/hosts ื‘ืžืขืจื›ืช ื”ืžื•ื’ืžืจืช. ื”ืงื•ื‘ืฅ ื”ืฉื ื™ (cat my_tree/board/my_x86_board/rootfs_overlay/new_file.txt) ื™ืชื•ื•ืกืฃ.

ืื ื• ืื•ืกืคื™ื ื•ื‘ื•ื“ืงื™ื:

Buildroot - ื—ืœืง 2. ื™ืฆื™ืจืช ืชืฆื•ืจืช ื”ืœื•ื— ืฉืœืš; ื‘ืืžืฆืขื•ืช ืขืฅ ื—ื™ืฆื•ื ื™, ืฉื›ื‘ืช-ืขืœ ืฉืœ rootfs, ืกืงืจื™ืคื˜ื™ื ืฉืœืื—ืจ ื‘ื ื™ื™ื”

ื‘ื™ืฆื•ืข ืกืงืจื™ืคื˜ื™ื ืœื”ืชืืžื” ืื™ืฉื™ืช ื‘ืฉืœื‘ื™ื ืฉื•ื ื™ื ืฉืœ ื”ืจื›ื‘ืช ื”ืžืขืจื›ืช

ืœืขืชื™ื ืงืจื•ื‘ื•ืช ืืชื” ืฆืจื™ืš ืœื‘ืฆืข ืงืฆืช ืขื‘ื•ื“ื” ื‘ืชื•ืš ืžืขืจื›ืช ืงื‘ืฆื™ ื”ื™ืขื“ ืœืคื ื™ ืฉื”ื•ื ื ืืจื– ืœืชืžื•ื ื•ืช.

ื ื™ืชืŸ ืœืขืฉื•ืช ื–ืืช ื‘ืกืขื™ืฃ ืชืฆื•ืจืช ื”ืžืขืจื›ืช:

Buildroot - ื—ืœืง 2. ื™ืฆื™ืจืช ืชืฆื•ืจืช ื”ืœื•ื— ืฉืœืš; ื‘ืืžืฆืขื•ืช ืขืฅ ื—ื™ืฆื•ื ื™, ืฉื›ื‘ืช-ืขืœ ืฉืœ rootfs, ืกืงืจื™ืคื˜ื™ื ืฉืœืื—ืจ ื‘ื ื™ื™ื”

ืฉื ื™ ื”ืกืงืจื™ืคื˜ื™ื ื”ืจืืฉื•ื ื™ื ืžื‘ื•ืฆืขื™ื ืœืื—ืจ ื‘ื ื™ื™ืช ืžืขืจื›ืช ืงื‘ืฆื™ ื”ื™ืขื“, ืืš ืœืคื ื™ ืฉื”ื™ื ื ืืจื–ืช ืœืชืžื•ื ื•ืช. ื”ื”ื‘ื“ืœ ื”ื•ื ืฉืกืงืจื™ืคื˜ fakeroot ืžื‘ื•ืฆืข ื‘ื”ืงืฉืจ ืฉืœ fakeroot, ื”ืžื“ืžื” ืขื‘ื•ื“ื” ื›ืžืฉืชืžืฉ ื”ืฉื•ืจืฉ.

ื”ืกืงืจื™ืคื˜ ื”ืื—ืจื•ืŸ ืžื‘ื•ืฆืข ืœืื—ืจ ื™ืฆื™ืจืช ืชืžื•ื ื•ืช ื”ืžืขืจื›ืช. ืืชื” ื™ื›ื•ืœ ืœื‘ืฆืข ื‘ื• ืคืขื•ืœื•ืช ื ื•ืกืคื•ืช, ืœืžืฉืœ, ืœื”ืขืชื™ืง ืืช ื”ืงื‘ืฆื™ื ื”ื“ืจื•ืฉื™ื ืœืฉืจืช NFS ืื• ืœื™ืฆื•ืจ ืชืžื•ื ื” ืฉืœ ืงื•ืฉื—ืช ื”ืžื›ืฉื™ืจ ืฉืœืš.

ื›ื“ื•ื’ืžื”, ืื ื™ ืืฆื•ืจ ืกืงืจื™ืคื˜ ืฉื™ื›ืชื•ื‘ ืืช ื”ื’ืจืกื” ื•ืชืืจื™ืš ื”ื‘ื ื™ื™ื” ืœ-/etc/.
ืจืืฉื™ืช ืืฆื™ื™ืŸ ืืช ื”ื ืชื™ื‘ ืœืงื•ื‘ืฅ ื”ื–ื” ื‘ืขืฅ ื”ื—ื™ืฆื•ื ื™ ืฉืœื™:

Buildroot - ื—ืœืง 2. ื™ืฆื™ืจืช ืชืฆื•ืจืช ื”ืœื•ื— ืฉืœืš; ื‘ืืžืฆืขื•ืช ืขืฅ ื—ื™ืฆื•ื ื™, ืฉื›ื‘ืช-ืขืœ ืฉืœ rootfs, ืกืงืจื™ืคื˜ื™ื ืฉืœืื—ืจ ื‘ื ื™ื™ื”

ื•ืขื›ืฉื™ื• ื”ืชืกืจื™ื˜ ืขืฆืžื•:

[alexey@alexey-pc buildroot]$ cat ../my_tree/board/my_x86_board/bef_cr_fs_img.sh 
#!/bin/sh
echo "my small linux 1.0 pre alpha" > output/target/etc/mysmalllinux-release
date >> output/target/etc/mysmalllinux-release

ืœืื—ืจ ื”ื”ืจื›ื‘ื”, ืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ืืช ื”ืงื•ื‘ืฅ ื”ื–ื” ื‘ืžืขืจื›ืช.

ื‘ืคื•ืขืœ, ื”ืชืกืจื™ื˜ ื™ื›ื•ืœ ืœื”ื™ื•ืช ื’ื“ื•ืœ. ืœื›ืŸ, ื‘ืคืจื•ื™ืงื˜ ื”ืืžื™ืชื™ ืœืงื—ืชื™ ืžืกืœื•ืœ ืžืชืงื“ื ื™ื•ืชืจ:

  1. ื™ืฆืจืชื™ ืกืคืจื™ื™ื” (my_tree/board_my_x86_board/inside_fakeroot_scripts) ืฉื‘ื” ื™ืฉ ืกืงืจื™ืคื˜ื™ื ืœื‘ื™ืฆื•ืข, ืขื ืžืกืคืจื™ื ืกื™ื“ื•ืจื™ื™ื. ืœื“ื•ื’ืžื”, 0001-add-my_small_linux-version.sh, 0002-clear-apache-root-dir.sh
  2. ื›ืชื‘ืชื™ ืกืงืจื™ืคื˜ (my_tree/board_my_x86_board/run_inside_fakeroot.sh) ืฉืขื•ื‘ืจ ื“ืจืš ื”ืกืคืจื™ื™ื” ื”ื–ื• ื•ืžื‘ืฆืข ื‘ืจืฆืฃ ืืช ื”ืกืงืจื™ืคื˜ื™ื ื”ื›ืœื•ืœื™ื ื‘ื”
  3. ืฆื™ื™ืŸ ืกืงืจื™ืคื˜ ื–ื” ื‘ื”ื’ื“ืจื•ืช ื”ืœื•ื— ื‘ืงื˜ืข ืชืฆื•ืจืช ืžืขืจื›ืช -> ืกืงืจื™ืคื˜ื™ื ืžื•ืชืืžื™ื ืื™ืฉื™ืช ืœื”ืคืขืœื” ื‘ืชื•ืš ืกื‘ื™ื‘ืช fakeroot ($(BR2_EXTERNAL_my_tree_PATH)/board/my_x86_board/run_inside_fakeroot.sh)

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”