kaczorro89 Napisano Czerwiec 12, 2011 Zgłoszenie Share Napisano Czerwiec 12, 2011 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 More sharing options...
@WalDo Napisano Czerwiec 12, 2011 Zgłoszenie Share Napisano Czerwiec 12, 2011 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 More sharing options...
ecik__ Napisano Czerwiec 12, 2011 Zgłoszenie Share Napisano Czerwiec 12, 2011 U mnie tez kod z przykładu działa. Ale wydaje mi się, że kaczorro89 tak naprawdę próbuje uruchomić inny skrypt. Skoro jest błąd flock: błędna liczba: nazwa_pliku to skąd się tam wzięło to nazwa_pliku, skoro czegoś takiego w kodzie nie ma? Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaczorro89 Napisano Czerwiec 12, 2011 Autor Zgłoszenie Share Napisano Czerwiec 12, 2011 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 More sharing options...
ecik__ Napisano Czerwiec 12, 2011 Zgłoszenie Share Napisano Czerwiec 12, 2011 Najlepiej gdybyś wkleił dokładną zawartość skryptu, który próbujesz odpalić. Bo ten z pierwszego posta nie wykonuje nic, więc ciężko powiedzieć co może być źle. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaczorro89 Napisano Czerwiec 13, 2011 Autor Zgłoszenie Share Napisano Czerwiec 13, 2011 ( flock -x 200 touch magazyn/plik$i echo "Producent $$ stworzył plik `date`" ) 200>pomoc flock -u pomoc Tak wygląda ta część z flockiem. Drugi skrypt ma podobną składnie, różni się tylko poleceniami wewnątrz flocka. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Czerwiec 13, 2011 Zgłoszenie Share Napisano Czerwiec 13, 2011 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? Ty lubisz skryptowac 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
ecik__ Napisano Czerwiec 13, 2011 Zgłoszenie Share Napisano Czerwiec 13, 2011 flock -u jest niepotrzebne. Po wyjściu z bloku w nawiasach, blokada jest automatycznie zwalniana. 1 Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
@WalDo Napisano Czerwiec 13, 2011 Zgłoszenie Share Napisano Czerwiec 13, 2011 Po wyjściu z bloku w nawiasach, blokada jest automatycznie walniana.Czyli tak jak się doczytałem. Dzięki za wiedzę Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
kaczorro89 Napisano Czerwiec 13, 2011 Autor Zgłoszenie Share Napisano Czerwiec 13, 2011 Dzięki za odpowiedzi Faktycznie bez flock -u nie wywala tego błędu. Odnośnik do komentarza Udostępnij na innych stronach More sharing options...
Rekomendowane odpowiedzi
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ę