Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Π˜ΡΡ‚ΠΎΡ€ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ

НСбольшиС ΠΏΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρƒ Ρ„ΠΈΡ€ΠΌΡ‹ с ΠΎΠ΄Π½ΠΎΠΉ стороны, Π½ΡƒΠΆΠ΄Π°ΡŽΡ‚ΡΡ Π² качСствСнном ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π΅ своСй инфраструктуры (особСнно Π² свСтС повсСмСстной Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ ), с Π΄Ρ€ΡƒΠ³ΠΎΠΉ стороны, для Π½ΠΈΡ… финансово тяТСло Π·Π°ΠΊΡƒΠΏΠ°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅. Π’Π°ΠΊΠΆΠ΅ часто Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с сСрвСрной/Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ: Π·Π°Ρ‡Π°ΡΡ‚ΡƒΡŽ стоит 1-3 tower-сСрвСра рядом с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ Ρ€Π°Π±ΠΎΡ‡ΠΈΠΌΠΈ мСстами ΠΈΠ»ΠΈ Π² нСбольшой нишС/Ρ‡ΡƒΠ»Π°Π½Π΅.

ΠŸΡ€ΠΎΡ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΡƒΠΆΠ΅ Π³ΠΎΡ‚ΠΎΠ²ΡƒΡŽ сборку(дистрибутив), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ достаточно Π·Π°Π»ΠΈΡ‚ΡŒ Π½Π° microSD-ΠΊΠ°Ρ€Ρ‚Ρƒ ΠΈ Π²ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ Π² распространСнный ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ (beaglebone, сСмСйства raspberry pi ΠΈ orange pi, asus tinker board). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‚Π°ΠΊΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅ стоит Π½Π΅Π΄ΠΎΡ€ΠΎΠ³ΠΎ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ установлСно Π² любом мСстС.

ΠŸΠΎΡΡ‚Π°Π½ΠΎΠ²ΠΊΠ° Π·Π°Π΄Π°Ρ‡ΠΈ

Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΎΠΌ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ развивался ΠΊΠ°ΠΊ нСкая лабораторная Ρ€Π°Π±ΠΎΡ‚Π° с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ примСнСния Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠ².

Π’ качСствС систСмы ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ zabbix, Ρ‚ΠΊ это мощная, бСсплатная ΠΈ Ρ…ΠΎΡ€ΠΎΡˆΠΎ докумСнтированная систСма.

ΠžΡΡ‚Ρ€ΠΎ встал вопрос с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠΎΠΉ.Π‘Ρ‚Π°Π²ΠΈΡ‚ΡŒ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΡƒΡŽ ΠΌΠ°ΡˆΠΈΠ½Ρƒ ΠΏΠΎΠ΄ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Ρ‚ΠΎΠΆΠ΅ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ…ΠΎΡ€ΠΎΡˆΠ΅Π΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ β€” Π»ΠΈΠ±ΠΎ Π΄ΠΎΡ€ΠΎΠ³ΠΎ Π·Π°ΠΊΡƒΠΏΠ°Ρ‚ΡŒ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅, Π»ΠΈΠ±ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ староС + Π² Π½Π΅Π±ΠΎΠ»ΡŒΡˆΠΈΡ… Ρ„ΠΈΡ€ΠΌΠ°Ρ… частыС ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с сСрвСрной/Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½ΠΎΠΉ.

ИспользованиС систСмы сборки buildroot позволяСт ΡΠΎΠ·Π΄Π°Π²Π°Ρ‚ΡŒ спСциализированныС Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒΡΡ пСрсоналом с ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ знаниями ос сСмСйства Linux. Π­Ρ‚Π° систСма Π΄Ρ€ΡƒΠΆΠ΅Π»ΡŽΠ±Π½Π° ΠΊ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ°ΠΌ, Π½ΠΎ ΠΏΡ€ΠΈ этом Π΄Π°Π΅Ρ‚ ΡˆΠΈΡ€ΠΎΠΊΠΈΠ΅ возмоТности ΠΏΠΎ кастомизации Π² Ρ€ΡƒΠΊΠ°Ρ… ΠΎΠΏΡ‹Ρ‚Π½ΠΎΠ³ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ°. Она ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ΠΈ Π½Π΅ Π΄ΠΎΡ€ΠΎΠ³ΠΎΠ³ΠΎ, Π½ΠΎ ΠΏΠΎΠ»Π½ΠΎΡ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° ИВ-инфраструктуры, минимально Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ ΡΠΊΡΠΏΠ»ΡƒΠ°Ρ‚ΠΈΡ€ΡƒΡŽΡ‰Π΅Π³ΠΎ Π΅Ρ‘ пСрсонала.

Π¨Π°Π³ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

РСшСно Π±Ρ‹Π»ΠΎ ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ ΠΏΠΎΠ΄ x86_64 для запуска Π² qemu, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ это ΡƒΠ΄ΠΎΠ±Π½ΠΎΠ΅ ΠΈ быстроС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ для ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. ПослС Ρ‡Π΅Π³ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π½Π° ΠΎΠ΄Π½ΠΎΠΏΠ»Π°Ρ‚Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ arm (ΠΌΠ½Π΅ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ»Π°ΡΡŒ asus tinker board).

Π’ качСствС систСмы сборки Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ buildroot. Π˜Π·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π² Π½Π΅ΠΌ отсутствуСт ΠΏΠ°ΠΊΠ΅Ρ‚ zabbix, поэтому ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Π΅Π³ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π‘Ρ‹Π»ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ с русской локалью, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π΅ΡˆΠΈΠ»ΠΈΡΡŒ Π½Π°Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… ΠΏΠ°Ρ‚Ρ‡Π΅ΠΉ (ΠΏΡ€ΠΈΠΌΠ΅Ρ‡Π°Π½ΠΈΠ΅: Π² Π±ΠΎΠ»Π΅Π΅ Π½ΠΎΠ²Ρ‹Ρ… вСрсиях buildroot эти ΠΏΠ°Ρ‚Ρ‡ΠΈ ΡƒΠΆΠ΅ Π½Π΅ Π½ΡƒΠΆΠ½Ρ‹).

ΠŸΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ самого ΠΏΠ°ΠΊΠ΅Ρ‚Π° zabbix Π±ΡƒΠ΄Π΅Ρ‚ описано Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

Π’Π°ΠΊ ΠΊΠ°ΠΊ всё Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ ΠΊΠ°ΠΊ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠ° (нСизмСняСмый ΠΎΠ±Ρ€Π°Π· систСмы + восстанавливаСмыС Ρ„Π°ΠΉΠ»Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ/Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…), Ρ‚ΠΎ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ свои systemd Ρ‚Π°Ρ€Π³Π΅Ρ‚Ρ‹, сСрвисы ΠΈ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹ (target, service, timer).

Π‘Ρ‹Π»ΠΎ принято Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎ Ρ€Π°Π·Π±ΠΈΠ΅Π½ΠΈΠΈ носитСля Π½Π° 2 Ρ€Π°Π·Π΄Π΅Π»Π° β€” Ρ€Π°Π·Π΄Π΅Π» с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ систСмы ΠΈ Ρ€Π°Π·Π΄Π΅Π» с измСняСмыми ΠΊΠΎΠ½Ρ„ΠΈΠ³Π°ΠΌΠΈ ΠΈ Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… zabbix.

НСмного слоТнСС оказалось Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Π·Π°Π΄Π°Ρ‡, связанных с Π±Π°Π·ΠΎΠΉ Π΄Π°Π½Π½Ρ‹Ρ…. Π Π°Π·ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒ Π΅Ρ‘ прямо Π½Π° носитСлС ΠΌΠ°Π»ΠΎ Ρ…ΠΎΡ‚Π΅Π»ΠΎΡΡŒ. Π’ Ρ‚ΠΎ ΠΆΠ΅ врСмя, Ρ€Π°Π·ΠΌΠ΅Ρ€ Π±Π°Π·Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚ Π΄ΠΎΡΡ‚ΠΈΠ³Π½ΡƒΡ‚ΡŒ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°ΡŽΡ‰Π΅Π³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Ρ‹ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΠ³ΠΎ ramdisk’Π°. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ Π±Ρ‹Π»ΠΎ Π²Ρ‹Π±Ρ€Π°Π½ΠΎ компромиссноС Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅: Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ… размСщаСтся Π½Π° Π²Ρ‚ΠΎΡ€ΠΎΠΌ Ρ€Π°Π·Π΄Π΅Π»Π΅ sd-ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ(соврСмСнныС SLC-ΠΊΠ°Ρ€Ρ‚ΠΎΡ‡ΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ Π΄ΠΎ 30 000 Ρ†ΠΈΠΊΠ»ΠΎΠ² записи), Π½ΠΎ Π΅ΡΡ‚ΡŒ настройка, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшний Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, usb-hdd).

ΠœΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³ Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ Π±Ρ‹Π» Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Ρ‡Π΅Ρ€Π΅Π· устройство RODOS-5. ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ dallas 1820 Π½Π°ΠΏΡ€ΡΠΌΡƒΡŽ, Π½ΠΎ быстрСС ΠΈ ΠΏΡ€ΠΎΡ‰Π΅ Π±Ρ‹Π»ΠΎ Π²ΠΎΡ‚ΠΊΠ½ΡƒΡ‚ΡŒ USB.

Π’ качСствС Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊΠ° для x86_64 Π±Ρ‹Π» Π²Ρ‹Π±Ρ€Π°Π½ grub2. ΠŸΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ½Ρ„ΠΈΠ³ для запуска.

ПослС ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π° qemu Π±Ρ‹Π»ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΎ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π½Π° asus tinker board. Π’ структурС ΠΌΠΎΠ΅Π³ΠΎ овСрлСя ΠΈΠ·Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎ Π·Π°ΠΊΠ»Π°Π΄Ρ‹Π²Π°Π»Π°ΡΡŒ ΠΊΡ€ΠΎΡΡΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°Π΅Π½Π½ΠΎΡΡ‚ΡŒ β€” Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΠ΅ спСцифичных для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΠΎΠ² (defconfig ΠΏΠ»Π°Ρ‚Ρ‹, Π·Π°Π³Ρ€ΡƒΠ·Ρ‡ΠΈΠΊ, гСнСрация ΠΎΠ±Ρ€Π°Π·Π° с Ρ€Π°Π·Π΄Π΅Π»ΠΎΠΌ систСмы) ΠΈ максимальноС ΠΎΠ΄Π½ΠΎΠΎΠ±Ρ€Π°Π·ΠΈΠ΅ Π² донастройкС Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы/созданиС ΠΎΠ±Ρ€Π°Π·Π° с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ. Π’Π²ΠΈΠ΄Ρƒ Ρ‚Π°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠΈ ΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΡˆΠ»ΠΎ быстро.

ΠΠ°ΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ рСкомСндуСтся ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ Π²Π²ΠΎΠ΄Π½Ρ‹Π΅ ΡΡ‚Π°Ρ‚ΡŒΠΈ:
https://habr.com/ru/post/448638/
https://habr.com/ru/post/449348/

Как ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ

ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ хранится Π½Π° github
ПослС клонирования рСпозитория получаСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π°Ρ структура Ρ„Π°ΠΉΠ»ΠΎΠ²:

[alexey@comp monitor]$ ls -1
buildroot-2019.05.tar.gz
overlay
README.md
run_me.sh

buildroot-2019.05.tar.gz β€” Π°Ρ€Ρ…ΠΈΠ² чистого buildroot
overlay β€” ΠΌΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с external-tree. ИмСнно Π² Π½Π΅ΠΌ хранится всё Π½ΡƒΠΆΠ½ΠΎΠ΅, Ρ‡Ρ‚ΠΎ Π±Ρ‹ ΡΠΎΠ±Ρ€Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΡƒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ buildroot
README.md β€” описаниС ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΈ руковдство Π½Π° английском.
run_me.sh β€” скрипт, ΠΏΠΎΠ΄Π³Ρ‚ΠΎΠ²Π»ΡΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ систСму сборки. Π Π°Π·Π²ΠΎΡ€Π°Ρ‡ΠΈΠ²Π°Π΅Ρ‚ buildroot ΠΈΠ· Π°Ρ€Ρ…ΠΈΠ²Π°, прикрСпляСт ΠΊ Π½Π΅ΠΌΡƒ overlay (Ρ‡Π΅Ρ€Π΅Π· ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌ external-tree) ΠΈ позволяСт Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ρ†Π΅Π»Π΅Π²ΡƒΡŽ ΠΏΠ»Π°Ρ‚Ρƒ для сборки

[0] my_asus_tinker_defconfig
[1] my_beaglebone_defconfig
[2] x86_64_defconfig
Select defconfig, press A for abort. Default [0]

ПослС этого достаточно ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ buildroot-2019.05 ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρƒ make.
ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ сборки всС Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ сборки Π±ΡƒΠ΄ΡƒΡ‚ Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ output/images:

[alexey@comp buildroot-2019.05]$ ls -1 output/images/
boot.img
boot.vfat
bzImage
data
data.img
external.img
external.qcow2
grub-eltorito.img
grub.img
intel-ucode
monitor-0.9-beta.tar.gz
qemu.qcow2
rootfs.cpio
sdcard.img
sys
update

НуТныС Ρ„Π°ΠΉΠ»Ρ‹:

  • sdcard.img β€” ΠΎΠ±Ρ€Π°Π· носитСля для записи Π½Π° sd-ΠΊΠ°Ρ€Ρ‚Ρƒ (Ρ‡Π΅Ρ€Π΅Π· dd ΠΈΠ»ΠΈ rufus ΠΏΠΎΠ΄ wibdows).
  • qemu.qcow2 β€” ΠΎΠ±Ρ€Π°Π· носитСля для запуска Π² qemu.
  • external.qcow2 β€” ΠΎΠ±Ρ€Π°Π· external-носитСля для Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…
  • monitor-0.9-beta.tar.gz β€” Π°Ρ€Ρ…ΠΈΠ² для обновлСния Ρ‡Π΅Ρ€Π΅Π· web-интСрфСйс

ГСнСрация руководств

ΠŸΠΈΡΠ°Ρ‚ΡŒ нСсколько Ρ€Π°Π· ΠΎΠ΄Π½Ρƒ ΠΈ Ρ‚Ρƒ ΠΆΠ΅ ΠΈΠ½ΡΡ‚Ρ€ΡƒΠΊΡ†ΠΈΡŽ Π½Π΅ стоит. И Π»ΠΎΠ³ΠΈΡ‡Π½Π΅Π΅ всСго Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π· Π² markdown, послС Ρ‡Π΅Π³ΠΎ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² PDF для скачивания ΠΈ html для Π²Π΅Π±-интСрфСйса. Π­Ρ‚ΠΎ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ благодаря ΠΏΠ°ΠΊΠ΅Ρ‚Ρƒ pandoc.

ВмСстС с Ρ‚Π΅ΠΌ, Π³Π΅Π½Π΅Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ всС эти Ρ„Π°ΠΉΠ»Ρ‹ Π½ΡƒΠΆΠ½ΠΎ Π΄ΠΎ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ собСрётся ΠΎΠ±Ρ€Π°Π· систСмы, Ρ‚Π΅ post-build скрипты ΡƒΠΆΠ΅ бСсполСзны. ΠŸΠΎΡΡ‚ΠΎΠΌΡƒ гСнСрация Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½Π° Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Π° manuals. ΠŸΠΎΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΌΠΎΠΆΠ½ΠΎ Π² overlay/package/manuals.

Π€Π°ΠΉΠ» manuals.mk (ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΈ выполняСт всю Ρ€Π°Π±ΠΎΡ‚Ρƒ)

################################################################################
#
# manuals
#
################################################################################

MANUALS_VERSION:= 1.0.0
MANUALS_SITE:= ${BR2_EXTERNAL_monitorOverlay_PATH}/package/manuals
MANUALS_SITE_METHOD:=local

define MANUALS_BUILD_CMDS
    pandoc -s -o ${TARGET_DIR}/var/www/manual_en.pdf ${BR2_EXTERNAL_monitorOverlay_PATH}/../README.md
    pandoc -f markdown -t html -o ${TARGET_DIR}/var/www/manual_en.html ${BR2_EXTERNAL_monitorOverlay_PATH}/../README.md
endef

$(eval $(generic-package))

systemd

ΠœΠΈΡ€ Linux Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π½Π° systemd, ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ это ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ ΠΈ ΠΌΠ½Π΅.
Из приятных Π½ΠΎΠ²ΡˆΠ΅ΡΡ‚Π² β€” Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ². Π’ΠΎΠΎΠ±Ρ‰Π΅ ΠΎ Π½ΠΈΡ… (ΠΈ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎ Π½ΠΈΡ…) ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΡΡ‚Π°Ρ‚ΡŒΡ, Π½ΠΎ ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ расскаТу.

Π•ΡΡ‚ΡŒ дСйствия, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π°Π΄ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ пСриодичСски. МнС ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ logrotate для очистки ΠΆΡƒΡ€Π½Π°Π»ΠΎΠ² lighttpd ΠΈ php-fpm. ΠŸΡ€ΠΈΠ²Ρ‹Ρ‡Π½Π΅Π΅ всСго Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² cron, Π½ΠΎ я Ρ€Π΅ΡˆΠΈΠ» ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΌΠΎΠ½ΠΎΡ‚ΠΎΠ½Π½Ρ‹ΠΉ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ systemd. Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, logrotate запускаСтся Ρ‡Π΅Ρ€Π΅Π· строгий Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π».

ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, Π΅ΡΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ создания Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ², ΡΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Ρ‘Π½Π½Ρ‹Π΅ Π΄Π°Ρ‚Ρ‹, Π½ΠΎ ΠΌΠ½Π΅ это Π½Π΅ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Π»ΠΎΡΡŒ.
ΠŸΡ€ΠΈΠΌΠ΅Ρ€ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°:

  • Π€Π°ΠΉΠ» Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°
    
    [Unit]
    Description=RODOS temp daemon timer

[Timer] OnBootSec=1min
OnUnitActiveSec=1min

[Install] WantedBy=timers.target

- Π€Π°ΠΉΠ» сСрвиса, Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ:
```bash
[Unit]
Description=RODOS temp daemon

[Service]
ExecStart=/usr/bin/rodos.sh

ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΡ‹Π΅ ΠΏΠ»Π°Ρ‚Ρ‹

Asus tinker board β€” основная ΠΏΠ»Π°Ρ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ всё Π΄ΠΎΠ»ΠΆΠ½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. Π’Ρ‹Π±Ρ€Π°Π½Π° ΠΊΠ°ΠΊ нСдорогая ΠΈ вСсьма мощная.

Beaglebone black β€” пСрвая ΠΏΠ»Π°Ρ‚Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΠ»Π°ΡΡŒ Ρ€Π°Π±ΠΎΡ‚Π°(Π² ΠΏΠ΅Ρ€ΠΈΠΎΠ΄ ΠΏΠΎΠ΄Π±ΠΎΡ€Π° Π±ΠΎΠ»Π΅Π΅ ΠΌΠΎΡ‰Π½ΠΎΠΉ ΠΏΠ»Π°Ρ‚Ρ‹).

Qemu x86_64 β€” ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ.

Как Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚

ΠŸΡ€ΠΈ стартС происходит двухэтапноС восстановлСниС настроСк:

  • запуск скрипта settings_restore(Ρ‡Π΅Ρ€Π΅Π· сСрвис). Он восстанавливаСт основныС настройки систСмы β€” часовой пояс, локаль, настройки сСти ΠΈ Ρ‚ΠΏ.
  • запуск скрипта prepare (Ρ‡Π΅Ρ€Π΅Π· сСрвис) β€” здСсь подготовливаСтся zabbix, Π±Π°Π·Π° Π΄Π°Π½Π½Ρ‹Ρ…, выводится IP Π² консоль.

ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ запускС происходит ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° Π²Ρ‚ΠΎΡ€ΠΎΠ³ΠΎ Ρ€Π°Π·Π΄Π΅Π»Π° sd-ΠΊΠ°Ρ€Ρ‚Ρ‹. Π’ случаС, Ссли Π΅Ρ‰Ρ‘ Π΅ΡΡ‚ΡŒ Π½Π΅ Ρ€Π°Π·ΠΌΠ΅Ρ‡Π΅Π½Π½ΠΎΠ΅ мСсто β€” Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒ пСрСразбиваСтся, Ρ€Π°Π·Π΄Π΅Π» ΠΏΠΎΠ΄ Π΄Π°Π½Π½Ρ‹Π΅ Π·Π°Π½ΠΈΠΌΠ°Π΅Ρ‚ всё свободноС мСсто. Π­Ρ‚ΠΎ сдСлано Π² цСлях ΡƒΠΌΠ΅Π½ΡŒΡˆΠ΅Π½ΠΈΡ Ρ€Π°Π·ΠΌΠ΅Ρ€Π° установочного ΠΎΠ±Ρ€Π°Π·Π°(sdcard.img). ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Π² этот ΠΌΠΎΠΌΠ΅Π½Ρ‚ создаСтся Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ postgresql. ИмСнно поэтому ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ запуск с Π½ΠΎΠ²Ρ‹ΠΌ носитСлСм Π±ΡƒΠ΄Π΅Ρ‚ дольшС ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ….

ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ внСшнСго диска, Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ старта ΠΈΡ‰Π΅Ρ‚ свободный диск ΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ Π΅Π³ΠΎ Π² ext4 с ΠΌΠ΅Ρ‚ΠΊΠΎΠΉ external.

Π’Π½ΠΈΠΌΠ°Π½ΠΈΠ΅! ΠŸΡ€ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ внСшнСго диска( Π° Ρ‚Π°ΠΊ ΠΆΠ΅ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ ΠΈΠ»ΠΈ Π΅Π³ΠΎ Π·Π°ΠΌΠ΅Π½Π΅), Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ бэкап ΠΈ восстановлСниС настроСк!

Для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ устройство RODOS 5. ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒ Π΄Π°Π΅Ρ‚ исходники своСй ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ с устройством. ΠŸΡ€ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠΈ систСмы стартуСт Ρ‚Π°ΠΉΠΌΠ΅Ρ€ rodos, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ запускаСт эту ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρƒ Ρ€Π°Π· Π² ΠΌΠΈΠ½ΡƒΡ‚Ρƒ. ВСкущая Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Π° записываСтся Π² Ρ„Π°ΠΉΠ» /tmp/rodos_current_temp, послС Ρ‡Π΅Π³ΠΎ zabbix ΠΌΠΎΠΆΠ΅Ρ‚ ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΡ‚ΡŒ этот Ρ„Π°ΠΉΠ» ΠΊΠ°ΠΊ Π΄Π°Ρ‚Ρ‡ΠΈΠΊ.

ΠΠΎΡΠΈΡ‚Π΅Π»ΡŒ для хранСния ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ монтируСтся Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ /data.

ΠŸΡ€ΠΈ запускС систСмы ΠΈ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΊΠ΅ Π΅Ρ‘ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ Π² консоли появляСтся сообщСниС:

System starting, please wait

ПослС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ ΠΏΠΎΠ΄Π³ΠΎΡ‚ΠΎΠ²ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… Ρ€Π°Π±ΠΎΡ‚, ΠΎΠ½ΠΎ смСнится Π½Π° Π²Ρ‹Π²ΠΎΠ΄ IP-адрСса:

current ip 192.168.1.32
Ready to work

Настройка zabbix для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹

Для ΠΌΠΎΠ½ΠΈΡ‚ΠΎΡ€ΠΈΠ½Π³Π° Ρ‚Π΅ΠΌΠΏΠ΅Ρ€Π°Ρ‚ΡƒΡ€Ρ‹ достаточно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ 2 шага:

  • ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ устройство RODOS ΠΊ usb-ΠΏΠΎΡ€Ρ‚Ρƒ
  • ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ data item Π² zabbix

ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Π²Π΅Π±-интСрфСйс zabbix:

  • ΠžΡ‚ΠΊΡ€Ρ‹Π²Π°Π΅ΠΌ Ρ€Π°Π·Π΄Π΅Π» Configuration β†’ Hosts
  • НаТимаСм Π½Π° Items Π² строкС нашСго zabbix сСрвСра
  • НаТимаСм Π½Π° Create item

Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Π’Π²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Π΅:

  • name β€” Π½Π° вашС усмотрСниС (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, serverRoomTemp )
  • Type β€” zabbix agent
  • Key β€” rodos
  • Type- numeric
  • Units β€” C
  • History storage period β€” срок хрСнСния истории. оставил 10 Π΄Π½Π΅ΠΉ
  • Trend storage period β€” срок хранСния Π΄ΠΈΠ½Π°ΠΌΠΈΠΊΠΈ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ. ΠžΡΡ‚Π°Π²ΠΈΠ» 30 Π΄Π½Π΅ΠΉ
  • New application β€” server Room Temp

И Π½Π°ΠΆΠΈΠΌΠ°Π΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΡƒ ADD.
Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Π£ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ настройками Ρ‡Π΅Ρ€Π΅Π· Π²Π΅Π±-интСрфСйс

Π’Π΅Π±-интСрфСйс написан Π½Π° php. Π•ΡΡ‚ΡŒ основныС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ:

  • просмотр состояния устройства
  • ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ сСтСвых настроСк
    Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server
  • ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ пароля ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ
  • Π²Ρ‹Π±ΠΎΡ€ часового пояса
  • Ρ€Π΅Π·Π΅Ρ€Π²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅/восстановлСниС/сброс ΠΊ заводским настройкам
  • Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ внСшнСго диска
  • ОбновлСниС систСмы
    Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Π’Ρ…ΠΎΠ΄ Π² Π²Π΅Π±-интСрфСйс Π·Π°ΠΊΡ€Ρ‹Ρ‚ ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΌ. Бтартовая страница β€” руководство.

АдрСс интСрфСйса zabbix: ${ip/dns}/zabbix
АдрСс интСрфСйса управлСния: ${ip/dns}/manage
Buildroot: Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ кроссплатформСнной ΠΏΡ€ΠΎΡˆΠΈΠ²ΠΊΠΈ с zabbix-server

Запуск Π² qemu

qemu-system-x86_64 -smp 4 -m 4026M -enable-kvm -machine q35,accel=kvm -device intel-iommu -cpu host -net nic -net bridge,br=bridge0 -device virtio-scsi-pci,id=scsi0 -drive file=output/images/qemu.qcow2,format=qcow2,aio=threads -device virtio-scsi-pci,id=scsi0 -drive file=output/images/external.qcow2,format=qcow2,aio=threads

Π­Ρ‚Π° ΠΊΠΎΠΌΠ°Π½Π΄Π° запустит систСму с 4 ядрами, 2048 RAM, Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΌ KVM, сСтСвой ΠΊΠ°Ρ€Ρ‚ΠΎΠΉ Π½Π° мосту bridge0 ΠΈ двумя дисками: для систСмы ΠΈ external для postgresql.

ΠžΠ±Ρ€Π°Π·Ρ‹ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈ Π·Π°ΠΏΡƒΡΠΊΠ°Ρ‚ΡŒ Π² Virtualbox:

qemu-img convert -f qcow2  qemu.qcow2 -O vdi qcow2.vdi
qemu-img convert -f qcow2  external.qcow2 -O vdi external.vdi

ПослС Ρ‡Π΅Π³ΠΎ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΡ… Π² virtualbox ΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ ΠΏΠΎ sata.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

Π’ процСссС ΠΌΠ½Π΅ стало интСрСсно ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Π³ΠΎΡ‚ΠΎΠ²Ρ‹ΠΉ ΠΊ Ρ€Π°Π±ΠΎΡ‚Π΅ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ β€” с Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ красивым интСрфСйсом(Π½Π΅ люблю ΠΈΡ… ΠΏΠΈΡΠ°Ρ‚ΡŒ), Π½ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΠΉ ΠΈ простой Π² настройкС.

ПослСдняя ΠΏΠΎΠΏΡ‹Ρ‚ΠΊΠ° ΡƒΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ zabbix-appliance Π² KVM ΠΏΠΎΠΊΠ°Π·Π°Π»Π° ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΡΡ‚ΡŒ этого шага (послС Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΡ инсталляции систСма Π½Π΅ стартуСт). Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, я Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ дСлаю Π½Π΅ Ρ‚Π°ΠΊ πŸ˜‰

ΠœΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»Ρ‹

https://buildroot.org/

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ: habr.com