πŸ‡°πŸ‡² Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ слуТбу systemd для оТидания монтирования ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Ρ‚ΠΎΡ‡ΠΊΠΈ монтирования ΠΏΠ΅Ρ€Π΅Π΄ запуском

by itisgood

Вопрос: для ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹ установлСнной слуТбС Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ Ρ„Π°ΠΉΠ»ΠΎΠ²ΡƒΡŽ систСму (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, NFS). ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π½ΡƒΡŽ слуТбу Π΄ΠΎ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ монтирования Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠΉ систСмы ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ сбою. (Ссли это происходит Π²ΠΎ врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ, врСмя Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ задСрТиваСтся, Π° слуТба Π½Π΅ запускаСтся послС ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ).

Как Π½Π°ΡΡ‚Ρ€ΠΎΠΈΡ‚ΡŒ слуТСбный Ρ„Π°ΠΉΠ» Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ sytemd всСгда ΠΎΠΆΠΈΠ΄Π°Π», Ρ‡Ρ‚ΠΎ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ΅ ΠΌΠΎΠ½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ запустит слуТбу?

1. ΠœΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ использована опция requireMountsFor. Богласно справочной страницС systemd.unit:

# man systemd.unit
...
  RequiresMountsFor=
      Takes a space-separated list of absolute paths. Automatically adds dependencies of type Requires= and After= for all mount units required to access the specified path.

           Mount points marked with noauto are not mounted automatically and will be ignored for the purposes of this option. If such a mount should be a requirement for this unit, direct dependencies on the mount units may be added (Requires= and After= or some other combination).

2. Π”ΠΎΠ±Π°Π²ΡŒΡ‚Π΅ requireMountsFor Π² Ρ€Π°Π·Π΄Π΅Π» [Unit] Π² Ρ„Π°ΠΉΠ»Π΅ модуля /etc/systemd/system/[UNITFILE].service. НапримСр:

# /etc/systemd/system/example.service
[Unit]
Description=Example System Service
RequiresMountsFor=/mnt/foo

[...]

 

Loading

You may also like

Leave a Comment