ΠΡΡΠΎΡΠΈΡ Π·Π°Π΄Π°ΡΠΈ
ΠΠ΅Π±ΠΎΠ»ΡΡΠΈΠ΅ ΠΏΠΎ ΡΠ°Π·ΠΌΠ΅ΡΡ ΡΠΈΡΠΌΡ Ρ ΠΎΠ΄Π½ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π½ΡΠΆΠ΄Π°ΡΡΡΡ Π² ΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠΈΠ½Π³Π΅ ΡΠ²ΠΎΠ΅ΠΉ ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ (ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎ Π² ΡΠ²Π΅ΡΠ΅ ΠΏΠΎΠ²ΡΠ΅ΠΌΠ΅ΡΡΠ½ΠΎΠΉ Π²ΠΈΡΡΡΠ°Π»ΠΈΠ·Π°ΡΠΈΠΈ ), Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, Π΄Π»Ρ Π½ΠΈΡ ΡΠΈΠ½Π°Π½ΡΠΎΠ²ΠΎ ΡΡΠΆΠ΅Π»ΠΎ Π·Π°ΠΊΡΠΏΠ°ΡΡ Π½ΠΎΠ²ΠΎΠ΅ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΠ΅. Π’Π°ΠΊΠΆΠ΅ ΡΠ°ΡΡΠΎ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ ΡΠ΅ΡΠ²Π΅ΡΠ½ΠΎΠΉ/Π°ΠΏΠΏΠ°ΡΠ°ΡΠ½ΠΎΠΉ: Π·Π°ΡΠ°ΡΡΡΡ ΡΡΠΎΠΈΡ 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 ΠΏΠ»Π°ΡΡ, Π·Π°Π³ΡΡΠ·ΡΠΈΠΊ, Π³Π΅Π½Π΅ΡΠ°ΡΠΈΡ ΠΎΠ±ΡΠ°Π·Π° Ρ ΡΠ°Π·Π΄Π΅Π»ΠΎΠΌ ΡΠΈΡΡΠ΅ΠΌΡ) ΠΈ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎΠ΅ ΠΎΠ΄Π½ΠΎΠΎΠ±ΡΠ°Π·ΠΈΠ΅ Π² Π΄ΠΎΠ½Π°ΡΡΡΠΎΠΉΠΊΠ΅ ΡΠ°ΠΉΠ»ΠΎΠ²ΠΎΠΉ ΡΠΈΡΡΠ΅ΠΌΡ/ΡΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΎΠ±ΡΠ°Π·Π° Ρ Π΄Π°Π½Π½ΡΠΌΠΈ. ΠΠ²ΠΈΠ΄Ρ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠΈ ΠΏΠΎΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅ ΠΏΡΠΎΡΠ»ΠΎ Π±ΡΡΡΡΠΎ.
ΠΠ°ΡΡΠΎΡΡΠ΅Π»ΡΠ½ΠΎ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ ΠΏΡΠΎΡΠΈΡΠ°ΡΡ Π²Π²ΠΎΠ΄Π½ΡΠ΅ ΡΡΠ°ΡΡΠΈ:
ΠΠ°ΠΊ ΡΠΎΠ±ΡΠ°ΡΡ
ΠΠΎΡΠ»Π΅ ΠΊΠ»ΠΎΠ½ΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΡΠ΅ΠΏΠΎΠ·ΠΈΡΠΎΡΠΈΡ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ»Π΅Π΄ΡΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²:
[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
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
ΠΠ²ΠΎΠ΄ΠΈΠΌ ΡΠ»Π΅Π΄ΡΡΡΠΈΠ΅ Π΄Π°Π½Π½ΡΠ΅:
- 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.
Π£ΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ ΡΠ΅ΡΠ΅Π· Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ
ΠΠ΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° php. ΠΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΡΠ΅ ΡΡΠ½ΠΊΡΠΈΠΈ:
- ΠΏΡΠΎΡΠΌΠΎΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°
- ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π²ΡΡ
Π½Π°ΡΡΡΠΎΠ΅ΠΊ
- ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΏΠ°ΡΠΎΠ»Ρ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΠ΅Π»Ρ
- Π²ΡΠ±ΠΎΡ ΡΠ°ΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΡΡΠ°
- ΡΠ΅Π·Π΅ΡΠ²Π½ΠΎΠ΅ ΠΊΠΎΠΏΠΈΡΠΎΠ²Π°Π½ΠΈΠ΅/Π²ΠΎΡΡΡΠ°Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅/ΡΠ±ΡΠΎΡ ΠΊ Π·Π°Π²ΠΎΠ΄ΡΠΊΠΈΠΌ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌ
- Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ Π΄ΠΈΡΠΊΠ°
- ΠΠ±Π½ΠΎΠ²Π»Π΅Π½ΠΈΠ΅ ΡΠΈΡΡΠ΅ΠΌΡ
ΠΡ ΠΎΠ΄ Π² Π²Π΅Π±-ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡ Π·Π°ΠΊΡΡΡ ΠΏΠ°ΡΠΎΠ»Π΅ΠΌ. Π‘ΡΠ°ΡΡΠΎΠ²Π°Ρ ΡΡΡΠ°Π½ΠΈΡΠ° β ΡΡΠΊΠΎΠ²ΠΎΠ΄ΡΡΠ²ΠΎ.
ΠΠ΄ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° zabbix: ${ip/dns}/zabbix
ΠΠ΄ΡΠ΅Ρ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ: ${ip/dns}/manage
ΠΠ°ΠΏΡΡΠΊ Π² 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 ΠΏΠΎΠΊΠ°Π·Π°Π»Π° ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΡ ΡΡΠΎΠ³ΠΎ ΡΠ°Π³Π° (ΠΏΠΎΡΠ»Π΅ Π·Π°Π²Π΅ΡΡΠ΅Π½ΠΈΡ ΠΈΠ½ΡΡΠ°Π»Π»ΡΡΠΈΠΈ ΡΠΈΡΡΠ΅ΠΌΠ° Π½Π΅ ΡΡΠ°ΡΡΡΠ΅Ρ). ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Ρ ΡΡΠΎ-ΡΠΎ Π΄Π΅Π»Π°Ρ Π½Π΅ ΡΠ°ΠΊ π
ΠΡΡΠΎΡΠ½ΠΈΠΊ: habr.com