Puncte:0

După= opțiunea nu funcționează în fișierul de serviciu systemd

drapel in

Am două scripturi shell nume first.sh și second.sh. Conținutul first.sh și second.sh este prezentat mai jos:

    >> primul.sh
    #!/bin/bash
    în timp ce adevărat
    do 
        echo Ora curentă este $(data)
        somn (1)
    Terminat



    >> al doilea.sh
    #!/bin/bash
    în timp ce adevărat
    do 
        echo Ora curentă de la al doilea script este $(data)
        somn (1)
    Terminat

În mod similar, conținutul first.service este:

[Unitate]
Descriere=primul serviciu
După=al doilea.serviciu
[Serviciu]
ExecStart=/home/abanstola/first.sh

Conținutul second.service este:

[Unitate]
Descriere=Al doilea serviciu
[Serviciu]
ExecStart=/home/abanstola/second.sh

Rețineți că După=al doilea.serviciu în primul.cod de serviciu. Conform documentelor, primul serviciu nu ar trebui să ruleze până la începerea celui de-al doilea serviciu. Dar chiar dacă dezactivez sau opresc al doilea serviciu, primul serviciu rulează fără nicio problemă. Ce greșesc aici?

Puncte:0
drapel in

Ai citit greșit documentația. Citat:

Dacă unitate foo.service conţine setarea Înainte=bar.service și ambele unități sunt pornite, bar.serviciupornirea lui este amânată până la foo.service a terminat de pornire. După= este inversul înainte=

Evidențiați de mine. Acest lucru are efect numai dacă ambele unități sunt pornite. Dacă dezactivați unul dintre ele, nu are niciun efect.

Nu este destul de clar ce vrei de fapt.

Probabil că alegerile mai bune sunt:

Necesită=

Similar cu Vrea=, dar declară o dependență mai puternică de cerințe. Dependențe de acest tip pot fi configurate și prin adăugarea unui link simbolic la a .necesita/ directorul care însoțește fișierul unității.

Dacă această unitate este activată, vor fi activate și unitățile enumerate. Dacă una dintre celelalte unități nu se activează, și o dependență de comandă După= pe unitatea defectă este setată, această unitate nu va fi pornită. In plus, cu sau fara precizare După=, această unitate va fi oprită dacă una dintre celelalte unități este oprită în mod explicit.

PartOf=

Configura dependențe similare cu Necesită=, dar limitat la oprirea și repornirea unităților. Când systemd oprește sau repornește unitățile enumerate aici, acțiunea este propagată către această unitate. Rețineți că aceasta este o dependență unidirecțională â modificările aduse acestei unități nu afectează unitățile listate.

Ajay Banstola avatar
drapel in
Bine, deci nu are niciun efect dacă le pornesc unul după altul? Nu vreau să obțin nimic anume. Am vrut doar să mă uit la efectul „After=". Multumesc pentru clarificare.

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.