Provided by: manpages-es_4.27.0-1_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  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.

BuGless                                            2001/06/23                                        LOCKFILE(1)