Skocz do zawartości

Flock


kaczorro89

Rekomendowane odpowiedzi

Witam. Mam kolejny problem przy rozwiązywaniu jednego zadania.

Chodzi mianowicie o polecenie flock. Chcę założyć blokadę exclusive i robię to według przykładu w manualu:

(
        flock -s 200
        # ... commands executed under lock ...
      ) 200>/var/lock/mylockfile

Skrypt ładnie się odpala, wygląda jakby działał poprawnie tylko wyskakuje taki komunikat

flock: błędna liczba: nazwa_pliku

W czym tkwi problem? Zmieniałem tę liczbę 200 na inną ale jest to samo <_<

Odnośnik do komentarza
Udostępnij na innych stronach

U mnie polecenie, które podales wyzej wklejone do terminala wykonuje sie bezblednie. Nie sprawdzalem czy blokada jest skuteczna, ale nie ma takich ostrzezen jak u Ciebie.

 

Dla scislosci to "-s" oznacza blokade wspóldzielona (shared). Exclusive to -e.

Odnośnik do komentarza
Udostępnij na innych stronach

A czy może to być wina, że jeżeli na pliku jest już blokada i inny skrypt próbuję założyć blokadę to wyrzuca taki błąd? Bo ogólnie dwa skrypty operują na tym pliku i jeżeli jeden chce coś wykonać to zakłada na ten plik blokadę i jak skończy to ją zdejmuje. Tyle że w tym czasie drugi skrypt też próbuję założyć blokadę.

Odnośnik do komentarza
Udostępnij na innych stronach

To ja znowu powiem: u mnie dziala. Bez bledów, bez ostrzezen...

[waldo@F15 ~]$ mkdir magazyn
[waldo@F15 ~]$ touch magazyn/plik
[waldo@F15 ~]$ ( flock -x 200; touch magazyn/plik$i; echo "Producent $$ stworzyl plik `date`"; ) 200>pomoc
Producent 2346 stworzyl plik pon, 13 cze 2011, 19:44:34 CEST

 

[EDIT]

Pospieszylem sie. Zapomnialem jeszcze o zasadniczym "flock -u pomoc"

 

[EDIT2}

Faktycznie jest komunikat bledu. Glowy nie dam, ale wg mnie wynika to z fakty opisanego w man

-u, --unlock

Drop a lock. This is usually not required, since a lock is

automatically dropped when the file is closed.

Plik zrzuca blokade zaraz po zamknieciu i flock nie ma juz do niego deskryptora/uchwytu.

 

Chetnie poslucham kogos doswiadczonego w temacie. borzole? :P Ty lubisz skryptowac ;)

  • Upvote 1
Odnośnik do komentarza
Udostępnij na innych stronach

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
×
×
  • Dodaj nową pozycję...