Provided by: manpages-es_4.13-4_all bug

NOMBRE

       lockfile - creador de fichero semáforo condicional

SINOPSIS

       lockfile -tiempodormido | -r reintentos |
            -l temporizador_bloqueo | -s suspend | -! | -ml | -mu | nombre_fichero ...

DESCRIPCIÓN

       lockfile Se puede usar para crear uno o más ficheros semáforo.  Si lockfile no puede crear
       todos los ficheros especificados (en el orden especificado), espera tiempodormido segundos
       (por  defecto  8)  y  reintenta  el último fichero que no pudo crear. Puede especificar el
       número de reintentos a llevar a cabo hasta  que  devuelva  un  fallo.   Si  el  número  de
       reintentos es -1 (por defecto, i.e.  -r-1)  lockfile intentará indefinidamente.

       Si  el  número  de  reintentos  expira  antes  de  que se hayan creado todos los ficheros,
       lockfile devuelve un fallo y elimina todos los ficheros creados hasta ese punto.

       Using lockfile as the condition of a loop in a shell script can be done  easily  by  using
       the -! flag to invert the exit status.  To prevent infinite loops, failures for any reason
       other than the lockfile already existing are not inverted to success but rather are  still
       returned as failures.

       Todas  las banderas se pueden especificar en cualquier posición de la línea de mandato, se
       procesan cuando se encuentran. La línea de mandato es simplemente analizada de izquierda a
       derecha.

       Todos  los  ficheros  creados  por lockfile serán de solo lectura, y por tanto tendrán que
       eliminarse con rm -f.

       Si especifica un temporizador_bloqueo entonces el fichero de bloqueo  se  eliminará  a  la
       fuerza  cuando  hayan  pasado  temporizador_bloqueo  segundos  desde  que  el  fichero fue
       creado/modificado por última vez (lo más  probable  por  algún  otro  programa  que  murió
       inesperadamente  hace  cierto  tiempo y no pudo borrar los ficheros de bloqueo restantes).
       Lockfile es inmune a las desviaciones del  reloj.  Tras  haber  eliminado  un  fichero  de
       bloqueo  a  la  fuerza  se tiene en cuenta una suspensión de suspend segundos (por defecto
       16), para prevenir la  eliminación  inmediata  de  cualquier  fichero  de  bloqueo  creado
       recientemente por otro programa (compare SUSPEND de procmail(1)).

   Bloqueo de Buzón
       Si  los  permisos  del  directorio de spool de correo del sistema lo permite o si lockfile
       tiene setgid, podrá bloquear y desbloquear su buzón del sistema usando las opciones -ml  y
       -mu respectivamente.

EJEMPLOS

       Supongamos  que quieres estar seguro que el acceso al fichero "importante" es en serie, es
       decir, no más de un programa o guión  de  shell  podría  acceder  a  él.  Por  motivos  de
       simplicidad  supongamos  que  es  un  guión de shell. En este caso podría resolverlo de la
       siguiente forma:
              ...  lockfile importante.lock ...
              acceso_"importante"_al_contenido_de_su_corazón ...  rm -f
              importante.lock ...
       Ahora, si todos los guiones que acceden a "importante" siguen esta  directriz,  tendrá  la
       seguridad  de  que, como mucho, se ejecutará un único guión entre las órdenes `lockfile' y
       `rm'.

ENTORNO

       LOGNAME                usado como indicación para determinar el  nombre  del  usuario  que
                              llama al programa.

ARCHIVOS

       /etc/passwd            para  verificar  y/o  corregir  el  nombre  de usuario que llama al
                              programa (y para encontrar el directorio HOME, si fuera necesario)

       /var/mail/$LOGNAME.lock
                              fichero de bloqueo para el buzón  del  sistema,  las  variables  de
                              entorno  presentes  aquí  no  se  tomarán  del entorno, sino que se
                              determinarán mirando en /etc/passwd

VÉASE TAMBIÉN

       rm(1), mail(1), sendmail(8), procmail(1)

DIAGNÓSTICOS

       Filename too long, ... Use un nombre de fichero más corto.

       Forced unlock denied on "x"
                              No hay permisos de escritura  en  el  directorio  donde  reside  el
                              fichero  de  bloqueo  "x",  o  más  de  un  fichero de bloqueo está
                              intentando forzar un bloqueo exactamente al mismo tiempo.

       Forcing lock on "x"    El fichero de bloqueo "x" va a ser eliminado a  la  fuerza  por  el
                              sobrepaso del temporizador (compare LOCKTIMEOUT en procmail(1)).

       Out of memory, ...     Al sistema no le queda espacio swap.

       Signal received, ...   Lockfile eliminará todo lo que haya creado hasta ahora y termina.

       Sorry, ...             Se ha alcanzado el límite de reintentos.

       Truncating "x" and retrying lock
                              "x" no parece ser un nombre_fichero válido.

       Try praying, ...       Subdirectorio no encontrado o privilegios insuficientes.

ERRORES

       Definitivamente menos de uno.

AVISOS

       The  behavior  of  the  -! flag, while useful, is not necessarily intuitive or consistent.
       When testing lockfile's return value,  shell  script  writers  should  consider  carefully
       whether they want to use the -! flag, simply reverse the test, or do a switch on the exact
       exitcode.  In general, the -! flag should only be used when lockfile is the conditional of
       a loop.

MISCELÁNEA

       Lockfile resistente a NFS y procesa los 8 bits.

NOTAS

       Al  llamar  un fichero de bloqueo con las opciones -h or -? hará que muestre una página de
       ayuda para la línea de mandatos.   Llamándolo  con  la  opción  -v  hará  que  muestre  su
       información sobre la versión.

       Multiples banderas -! alternan el estado de salida.

       Como las banderas pueden aparecer en cualquier posición de la línea de mandatos, cualquier
       nombre_fichero que empiece por '-' tiene que ser precedido por './'.

       El número  de  reintentos  no  se  reiniciará  cuando  se  cree  cualquier  fichero  (i.e.
       simplemente  se usan).  Sin embargo, se puede reiniciar especificando -rnewreintentos tras
       cada fichero en la línea de mandatos.

       Aunque se pueden usar ficheros con cualquier nombre  como  ficheros  de  bloqueo,  es  una
       práctica  común  usar  la  extensión `.lock' para bloquear carpetas de correo (se añade al
       nombre de carpeta). En el caso de que  uno  no  quiera  preocuparse  por  los  nombres  de
       ficheros demasiado largos y no tener que adaptarse a cualquier otra convención de ficheros
       de blqueo, una excelente forma de generar nombres de fcheros de bloqueo correspondientes a
       algún  fichero  existente  es  tomar  el  prefijo  `lock.' y añadir el número de i-nodo de
       fichero que se tiene que bloquear.

SOURCE

       Este programa es  parte  del  paquete  de  procesamiento  de  correo  procmail  (v3.23pre)
       disponible en http://www.procmail.org/ o ftp.procmail.org en pub/procmail/.

MAILINGLIST

       Existe  un lista de correo para cuestiones relacionadas con cualquier programa del paquete
       procmail:
              <procmail-users@procmail.org>
                     para enviar preguntas/respuestas
              <procmail-users-request@procmail.org>
                     para solicitudes de suscripción.

       Si quisiera estar informado sobre nuevas versiones y parches oficiales envíe una solicitud
       de suscripción a
              procmail-announce-request@procmail.org
       (esta es una lista de solo lectura).

AUTORES

       Stephen R. van den Berg
              <srb@cuci.nl>
       Philip A. Guenther
              <guenther@sendmail.com>

TRADUCCIÓN

       La  traducción  al  español  de  esta página del manual fue creada por Pedro Pablo Fábrega
       <pfabrega@arrakis.es>

       Esta traducción es documentación libre; lea  la  GNU  General  Public  License  Version  3
       ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  o posterior con respecto a las condiciones de
       copyright.  No existe NINGUNA RESPONSABILIDAD.

       Si encuentra algún error en la traducción de esta  página  del  manual,  envíe  un  correo
       electrónico a debian-l10n-spanish@lists.debian.org ⟨⟩.