π‘ Π£ΡΠ°ΡΡΠΈΠ΅ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Ρ systemd: ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ²ΠΎΠΈ ΡΠ½ΠΈΡΡ ΠΡΠΈΠ²Π΅Ρ, Π»ΡΠ±ΠΈΡΠ΅Π»ΠΈ Linux ΠΈ DevOps! π Π₯ΠΎΡΠΈΡΠ΅ ΡΠ΄Π΅Π»Π°ΡΡ ΡΠ²ΠΎΡ ΡΠΈΡΡΠ΅ΠΌΡ ΠΏΠΎ-Π½Π°ΡΡΠΎΡΡΠ΅ΠΌΡ ΡΡΡΠ΅ΠΊΡΠΈΠ²Π½ΠΎΠΉ? Π’ΠΎΠ³Π΄Π° ΠΏΠΎΡΠ° ΠΏΠΎΠ·Π½Π°ΠΊΠΎΠΌΠΈΡΡΡΡ Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠΌΠΈ systemd β Π³Π»Π°Π²Π½ΡΠΌ ΠΌΠ΅Ρ
Π°Π½ΠΈΠ·ΠΌΠΎΠΌ Π·Π°ΠΏΡΡΠΊΠ° ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠ»ΡΠΆΠ±Π°ΠΌΠΈ. ΠΠΎΡΠ΅ΠΌΡ ΡΡΠΎ Π²Π°ΠΆΠ½ΠΎ? ΠΠΎΡΠΎΠΌΡ ΡΡΠΎ systemd ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ Π·Π°ΠΏΡΡΠΊΠ°ΡΡ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ, Π½ΠΎ ΠΈ Π·Π°Π΄Π°Π²Π°ΡΡ ΡΡΠ»ΠΎΠ²ΠΈΡ, Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·ΠΈΡΠΎΠ²Π°ΡΡ ΠΈΡ
ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ, ΡΠΏΡΠ°Π²Π»ΡΡΡ Π·Π°Π²ΠΈΡΠΈΠΌΠΎΡΡΡΠΌΠΈ ΡΡΠ΅Π΄ΠΈ ΡΠ΅ΡΠ²ΠΈΡΠΎΠ². Π Π΅ΡΠ΅ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠ΅ ΡΠ½ΠΈΡΡ, ΡΡΠΎ ΠΏΡΠ΅Π²ΡΠ°ΡΠ°Π΅Ρ ΡΠΈΡΡΠ΅ΠΌΡ Π² ΠΈΠ΄Π΅Π°Π»ΡΠ½ΠΎ Π½Π°ΡΡΡΠΎΠ΅Π½Π½ΡΡ ΠΌΠ°ΡΠΈΠ½Ρ. Π§ΡΠΎ Π²Ρ
ΠΎΠ΄ΠΈΡ Π² ΠΌΠ°Π³ΠΈΡ? - ΠΠΏΡΠ΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½ΠΎΠ²ΡΡ
ΡΠ΅ΡΠ²ΠΈΡΠΎΠ² Ρ ΠΏΠΎΠΌΠΎΡΡΡ .service ΡΠ°ΠΉΠ»ΠΎΠ² - ΠΠ²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠΉ ΠΏΠ΅ΡΠ΅Π·Π°ΠΏΡΡΠΊ ΠΏΡΠΈ ΡΠ±ΠΎΡΡ
ΠΈ ΡΠ°ΠΉΠΌΠ°ΡΡΠ°Ρ
- ΠΠ°Π²ΠΈΡΠΈΠΌΠΎΡΡΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ»ΡΠΆΠ±Π°ΠΌΠΈ β Π·Π°ΠΏΡΡΠΊ ΠΏΠΎ ΡΠ΅ΠΏΠΎΡΠΊΠ΅ - Π’Π°ΠΉΠΌΠ΅ΡΡ Π΄Π»Ρ ΠΏΠ»Π°Π½ΠΎΠ²ΡΡ
Π·Π°Π΄Π°Ρ π Π‘ΠΎΠ·Π΄Π°Π΅ΡΡ ΡΠ°ΠΉΠ», Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, /etc/systemd/system/myapp.service: [Unit] Description=ΠΠΎΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΡΠ΅ΡΠ²ΠΈΡΠ° After=network.target [Service] ExecStart=/usr/bin/myapp Restart=always User=admin [Install] WantedBy=multi-user.target Π§ΡΠΎΠ±Ρ Π·Π°ΠΏΡΡΡΠΈΡΡ: - systemctl enable myapp - systemctl
π‘ Π£ΡΠ°ΡΡΠΈΠ΅ Π² Π°Π²ΡΠΎΠΌΠ°ΡΠΈΠ·Π°ΡΠΈΠΈ Ρ systemd: ΡΠΎΠ·Π΄Π°Π΅ΠΌ ΡΠ²ΠΎΠΈ ΡΠ½ΠΈΡΡ
22Β ΠΈΡΠ»ΡΒ 202522Β ΠΈΡΠ»Β 2025
~1 ΠΌΠΈΠ½