'\" t .\" Title: flock .\" Author: [see the "AUTHOR(S)" section] .\" Generator: Asciidoctor 2.0.20 .\" Date: 2024-04-27 .\" Manual: Корисничке наредбе .\" Source: util-linux 2.40 .\" Language: English .\" .TH "FLOCK" "1" "2024-04-27" "util\-linux 2.40" "Корисничке наредбе" .ie \n(.g .ds Aq \(aq .el .ds Aq ' .ss \n[.ss] 0 .nh .ad l .de URL \fI\\$2\fP <\\$1>\\$3 .. .als MTO URL .if \n[.g] \{\ . mso www.tmac . am URL . ad l . . . am MTO . ad l . . . LINKSTYLE blue R < > .\} .SH "НАЗИВ" flock \- управља закључавањима из скрипти шкољке .SH "УВОД" .sp \fBflock\fP [options] \fIfile\fP|\fIdirectory\fP \fIcommand\fP [\fIarguments\fP] .sp \fBflock\fP [options] \fIfile\fP|\fIdirectory\fP \fB\-c\fP \fIcommand\fP .sp \fBflock\fP [options] \fInumber\fP .SH "ОПИС" .sp Ово помагало управља \fBflock\fP(2) закључавањима изнутар скрипти шкољке или са линије наредби. .sp Први и други од горњих образаца омотава закључавање око извршавања \fIнаредбе\fP, на начин сличан \fBsu\fP(1) или \fBnewgrp\fP(1). Закључавају наведену \fIдатотеку\fP или \fIдиректоријум\fP, који је направљен (под претпоставком одговарајућих дозвола) ако већ не постоји. По основи, ако се закључавање не може одмах добити, \fBflock\fP чека док закључавање не буде било доступно. .sp Трећи облик користи отворену датотеку \fIбројем\fP њеног описника датотеке. Видите примере испод о коришћењу истог. .SH "ОПЦИЈЕ" .sp \fB\-c\fP, \fB\-\-command\fP \fIнаредба\fP .RS 4 Прослеђује једну \fIнаредбу\fP, без аргумената, шкољци са \fB\-c\fP. .RE .sp \fB\-E\fP, \fB\-\-conflict\-exit\-code\fP \fIброј\fP .RS 4 Коришћено излазно стање када се \fB\-n\fP опција користи, а сукобљавајуће закључавање постоји, или се \fB\-w\fP опција користи, а временски истек је достигнут. Основна вредност је \fB1\fP. \fIброј\fP мора бити у опсегу од 0 до 255. .RE .sp \fB\-F\fP, \fB\-\-no\-fork\fP .RS 4 Не клонира пре извршавања \fIнаредбе\fP. Након извршавања процес са гомиле се замењује \fIнаредбом\fP која наставља да држи закључавање. Ова опција није сагласна са \fB\-\-close\fP јер тада не би преостало ништа да држи закључавање. .RE .sp \fB\-e\fP, \fB\-x\fP, \fB\-\-exclusive\fP .RS 4 Добија искључиво закључавање, које се понекад назива закључавање писања. Ово је основно. .RE .sp \fB\-n\fP, \fB\-\-nb\fP, \fB\-\-nonblock\fP .RS 4 Не успева радије него да чека ако закључавање не може бити одмах задобијено. Видите опцију \fB\-E\fP о коришћеном излазном стању. .RE .sp \fB\-o\fP, \fB\-\-close\fP .RS 4 Затвара описника датотеке на коме је држано закључавање пре извршавања \fIнаредбе\fP. Ово је корисно ако \fIнаредба\fP изроди проистекли процес који не би требало да држи закључавање. .RE .sp \fB\-s\fP, \fB\-\-shared\fP .RS 4 Придобија дељено закључавање, понекад звано закључавање читања. .RE .sp \fB\-u\fP, \fB\-\-unlock\fP .RS 4 Одбацује закључавање. Ово обично није потребно, пошто се закључавање аутоматски одбацује када се датотека затвори. Међутим, може бити захтевано у посебним случајевима, на пример ако је запакована група наредбе можда клонирала позадински процес који не би требало да држи закључавање. .RE .sp \fB\-w\fP, \fB\-\-wait\fP, \fB\-\-timeout\fP \fIсекунде\fP .RS 4 Не успева ако закључавање не може да се добије за \fIсекунде\fP. Децималне разломачке вредности су допуштене. Видите опцију \fB\-E\fP за коришћено излазно стање. Нулти број \fIсекунди\fP се тумачи као \fB\-\-nonblock\fP. .RE .sp \fB\-\-verbose\fP .RS 4 Извештава колико му је било потребно да добије закључавање, или зашто се закључавање не може добити. .RE .sp \fB\-h\fP, \fB\-\-help\fP .RS 4 Приказује текст помоћи и излази. .RE .sp \fB\-V\fP, \fB\-\-version\fP .RS 4 Исписује издање и излази. .RE .SH "ИЗЛАЗНО СТАЊЕ" .sp Наредба користи вредности стања излаза за све, осим када користи од опција \fB\-n\fP или \fB\-w\fP које извештавају о неуспеху прибављања закључавања са стањем излаза датим опцијом \fB\-E\fP, или 1 по основи. Стање излаза које даје \fB\-E\fP треба да буде у опсегу од 0 до 255. .sp Када се користи варијанта \fIнаредбе\fP, и извршава радни проистекли, тада је излазно стање оно наредбе проистеклог. .SH "БЕЛЕШКЕ" .sp \fBflock\fP does not detect deadlock. See \fBflock\fP(2) for details. .sp Неки системи датотека (нпр. NFS и CIFS) имају ограничену примену \fBflock\fP(2) и „flock“ увек може да не успе. За детаље погледајте \fBflock\fP(2), \fBnfs\fP(5) и \fBmount.cifs\fP(8). У зависности од опција качења, „flock“ ту увек може да не успе. .SH "ПРИМЕРИ" .sp Знајте да је „shell> “ у примерима упит линије наредби. .sp shell1> flock /tmp \-c cat; shell2> flock \-w .007 /tmp \-c echo; /bin/echo $? .RS 4 Поставља изричито закључавање на директоријум \fI/tmp\fP а друга наредба неће успети. .RE .sp shell1> flock \-s /tmp \-c cat; shell2> flock \-s \-w .007 /tmp \-c echo; /bin/echo $? .RS 4 Поставља дељено закључавање на директоријум \fB/tmp\fP а друга наредба ће успети. Знајте да покушај добијања изричитог закључавања са другом наредбом неће успети. .RE .sp shell> flock \-x local\-lock\-file echo \*(Aqa b c\*(Aq .RS 4 Граби изричито закључавање „локалне\-датотеке\-закључавања“ пре покретања „echo“ са „a b c“. .RE .sp (; flock \-n 9 || exit 1; # ... наредбе извршене под закључавањем ...; ) 9>/var/lock/moja\-datoteka\-zaključavanja .RS 4 Образац је пригодан унутар скрипти шкољке. Режим коришћен за отварање датотеке није важан \fBflock\fP\-у; коришћење \fI>\fP или \fI>>\fP омогућава датотеци закључавања да буде направљена ако већ не постоји, међутим, овлашћења писања су потребна. Коришћење \fI<\fP захтева да датотека већ постоји али је потребно само овлашћење писања. .RE .sp [ "${FLOCKER}" != "$0" ] && exec env FLOCKER="$0" flock \-en "$0" "$0" "$@" || : .RS 4 Ово је користан шаблонски код за скрипте шкољке. Ставите га на врх скрипте шкољке коју желите да закључате и аутоматски ће се закључати при првом покретању. Ако променљива окружења \fB$FLOCKER\fP није постављена на скрипту шкољке која се покреће, тада извршава \fBflock\fP и граби изричито неблокирајуће закључавање (користећи саму скрипту као датотеку закључавања) пре него што се поново изврши помоћу правих аргумената. Такође поставља променљиву окружења „FLOCKER“ на праву вредност тако да се не покреће поново. .RE .sp shell> exec 4<>/var/lock/mylockfile; shell> flock \-n 4 .RS 4 Овај образац је погодан за закључавање датотеке без израђања подпроцеса. Шкољка отвара датотеку закључавања за читање и писање као описник датотеке 4, а затим се \fBflock\fP користи за закључавање описника. .RE .SH "АУТОРИ" .sp .MTO "hpa\(atzytor.com" "H. Peter Anvin" "" .SH "АУТОРСКА ПРАВА" .sp Ауторска права © 2003\-2006. H. Peter Anvin. Ово је слободан софтвер; погледајте извор за услове умножавања. Нема НИКАКВЕ гаранције; чак ни о ТРЖИШНОЈ ВРЕДНОСТИ или ПРИЛАГОЂЕНОСТИ ПОСЕБНОЈ НАМЕНИ. .SH "ПОГЛЕДАЈТЕ ТАКОЂЕ" .sp \fBflock\fP(2) .SH "ПРИЈАВЉИВАЊЕ ГРЕШАКА" .sp За пријављивање грешака, користите пратиоца грешака на \c .URL "https://github.com/util\-linux/util\-linux/issues" "" "." .SH "ДОСТУПНОСТ" .sp Наредба \fBflock\fP је део пакета „util\-linux“ који се може преузети са \c .URL "https://www.kernel.org/pub/linux/utils/util\-linux/" "Архиве Линукс кернела" "."