Este es el comando rdist que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
rdist - programa cliente de distribución de archivos remota
SINOPSIS
rdista [ -DFn ] [ -A número ] [ -a número ] [ -d var = valor ] [ -l <local logopts> ] [ -L <remoto
logopts> ] [ -f desarchivo ] [ -M maxproc ] [ -m host ] [ -o distorsiona ] [ -t tiempo de espera ] [ -p
] [ -P ] [ nombre ... ]
rdista -DFn -c nombre ... [inicio de sesión @] host [: dest]
rdista servidor
rdista -V
DESCRIPCIÓN
rdist es un programa para mantener copias idénticas de archivos en múltiples hosts. Eso
conserva el propietario, el grupo, el modo y el tiempo m de los archivos si es posible y puede actualizar los programas
que están ejecutando. rdist lee comandos de desarchivo para dirigir la actualización de archivos
y / o directorios. Si desarchivo es `- ', se utiliza la entrada estándar. Si no -f opción es
presente, el programa busca primero 'distfile', luego 'Distfile' para usarlo como entrada. Si
no se especifican nombres en la línea de comando, rdista actualizará todos los archivos y
directorios listados en desarchivo. De lo contrario, el argumento se toma como el nombre de un archivo.
a actualizar o la etiqueta de un comando a ejecutar. Si la etiqueta y los nombres de archivo entran en conflicto,
se supone que es una etiqueta. Estos pueden usarse juntos para actualizar archivos específicos usando
comandos específicos.
El -c fuerzas de opción rdista para interpretar los argumentos restantes como una pequeña desarchivo.
Distfile equivalente es el siguiente.
( nombre ...) -> [Inicie sesión@]host
Instalar en pc [dest];
El servidor Se reconoce la opción para proporcionar soporte parcialmente retrocompatible para personas mayores.
versiones de rdista que usó esta opción para poner rdista en modo servidor. Si rdista is
comenzó con el servidor opción de línea de comando, intentará ejecutar (ejecutar) el antiguo
versión de rdista. Esta opción solo funcionará si rdista fue compilado con la ubicación de
el viejo rdist (generalmente / usr / ucb / oldrdist or / usr / old / rdist) y ese programa es
disponible en tiempo de ejecución.
rdist puede usar el rcmd(3) llamar a la función o ejecutar un programa de transporte arbitrario como
as rsh(1c) para acceder a cada host de destino. El método utilizado se selecciona en tiempo de compilación.
Sin embargo, si se utiliza el método posterior, el programa de transporte se puede especificar en tiempo de ejecución
en la línea de comando con el valor predeterminado rsh(1c). Si rsh(1c) se utiliza el método y el
el host de destino es la cadena localhost y el nombre de usuario remoto es el mismo que el del usuario local
nombre, rdista ejecutará el comando
/ Bin / sh -c rdistd -S
De lo contrario rdista ejecutar ejecutará el comando
rsh host -l remuser rdistd -S
dónde host es el nombre del host de destino, remuser es el nombre del usuario para hacer el
conexión como y, rdistd es el comando rdist server en el host de destino, como se muestra a continuación.
Para utilizar un programa de transporte que no sea rsh(1c) utilice el -P opción. Cualquiera que sea el transporte
se utiliza el programa, debe ser compatible con la sintaxis especificada anteriormente para rsh(1c). Si
El programa de transporte no lo es, debería ser envuelto en un script de shell que entiende
esta sintaxis de línea de comando y que luego ejecuta el programa de transporte real.
Aquí hay un ejemplo que usa ssh(1) como el transporte:
rdista -P / usr / local / bin / ssh -f miDistfile
Si rcmd(3) se utiliza el método, entonces rdista realiza la conexión con el propio host de destino
y ejecuta el rdistd programa de servidor como se muestra a continuación. El método predeterminado y preferido es
que se utilizará rsh(1c) para realizar la conexión con los hosts de destino. Esto permite rdista para ejecutarse
sin estar configurado como `` root ''.
En cada host de destino rdist intentará ejecutar el comando
rdistd -S
or
<rdistd camino> -S
si el -p se especificó la opción. Si no -p opción está incluida, o la <rdistd camino> es un
nombre de archivo simple, rdistd or <rdistd camino> debe estar en algún lugar del $ RUTA del usuario
correr rdista en el host remoto (destino).
OPCIONES
-A número Establezca el número mínimo de archivos libres (inodos) en un sistema de archivos que debe existir para
rdista para actualizar o instalar un archivo.
-a número Establezca la cantidad mínima de espacio libre (en bytes) en un sistema de archivos que debe existir para
rdista para actualizar o instalar un archivo.
-D Habilite muchos mensajes de depuración.
-d var = valor
Definición var tener valor. Esta opción se usa para definir o anular la variable
definiciones en el desarchivo. Value alto puede ser la cadena vacía, un nombre o una lista de
nombres entre paréntesis y separados por tabulaciones y / o espacios.
-F No bifurques a ningún niño rdista Procesos. Todos los clientes se actualizan secuencialmente.
-f desarchivo
Establezca el nombre del archivo distfile que se utilizará para ser desarchivo . If desarchivo se especifica como
`` - '' (guión) y luego leer de la entrada estándar (stdin).
-l logotipos
Configure las opciones de registro local. Ver la seccion MENSAJE REGISTRO para detalles sobre el
sintaxis para logotipos.
-L logotipos
Configure las opciones de registro remoto. logotipos es el mismo que para el registro local, excepto que
los valores se pasan al servidor remoto (rdistd). Ver la seccion MENSAJE REGISTRO
para obtener detalles sobre la sintaxis de logotipos.
-M número Establecer el número máximo de niños corriendo simultáneamente rdista procesos a núm. El
el predeterminado es 4.
-m máquina
Limite las máquinas que se van a actualizar. Múltiple -m se pueden dar argumentos para limitar
actualizaciones a un subconjunto de los hosts enumerados en el desarchivo.
-n Imprima los comandos sin ejecutarlos. Esta opción es útil para depurar
desarchivo.
-odistorsiona
Especifique las opciones de dist para habilitar. distorsiona es una lista de opciones separadas por comas
que se enumeran a continuación. Los valores válidos para distorsiona son:
verificar Verifique que los archivos estén actualizados en todos los hosts. Cualquier archivo que sea
Se mostrará desactualizado, pero no se cambiarán archivos ni se enviará ningún correo.
expedido.
todo Modo completo. El nombre completo del archivo se agrega al directorio de destino.
nombre. Normalmente, solo se utiliza el último componente de un nombre al cambiar el nombre
archivos. Esto preservará la estructura del directorio de los archivos que se copian.
en lugar de aplanar la estructura del directorio. Por ejemplo, rdistinguir una lista
de archivos como / ruta / dir1 / f1 y / ruta / dir2 / f2 a / tmp / dir crearía
archivos / tmp / dir / ruta / dir1 / f1 y / tmp / dir / ruta / dir2 / f2 en lugar de
/ tmp / dir / dir1 / f1 y / tmp / dir / dir2 / f2.
noexec Excluya automáticamente los archivos ejecutables que se encuentran en fuera(5) formato de
siendo revisado o actualizado.
más joven
Modo más joven. Los archivos se actualizan normalmente si su mtime y tamaño (consulta:
stat(2)) en desacuerdo. Esta opción provoca rdista no actualizar archivos que son
más joven que la copia maestra. Esto se puede utilizar para evitar copias más nuevas en
otros hosts de ser reemplazados. Se imprime un mensaje de advertencia para los archivos
que son más recientes que la copia maestra.
comparar
Comparación binaria. Realice una comparación binaria y actualice los archivos si
difieren en lugar de comparar fechas y tamaños.
seguir Siga los enlaces simbólicos. Copie el archivo al que apunta el vínculo en lugar del
enlace en sí.
encendidos
Ignore los enlaces no resueltos. rdist normalmente intentará mantener el enlace
estructura de los archivos que se transfieren y advertir al usuario si todos los enlaces
no pudo ser encontrado.
chknfs No compruebe ni actualice archivos en el host de destino que residen en sistemas de archivos NFS.
solo lectura
Habilite la verificación en el host de destino para ver si un archivo reside en un
sistema de archivos. Si un archivo lo hace, entonces no es necesario verificarlo ni actualizarlo.
intentó.
chksym Si el destino en el host remoto es un enlace simbólico, pero no está en el
host maestro, el destino remoto quedará como un enlace simbólico. Este comportamiento
generalmente se considera un error en la versión original de rdist pero es
presente para permitir la compatibilidad con versiones anteriores.
tranquilo Modo silencioso. Los archivos que se modifican normalmente se imprimen en formato estándar.
producción. Esta opción lo suprime.
remove Elimina archivos extraños. Si se actualiza un directorio, los archivos que
existen en el host remoto que no existen en el directorio maestro son
remoto. Esto es útil para mantener copias verdaderamente idénticas de
directorios.
Nochkowner
No verifique la propiedad del usuario de archivos que ya existen. La propiedad del archivo
solo se establece cuando se actualiza el archivo.
grupo nocturno
No verifique la propiedad del grupo de archivos que ya existen. El archivo
la propiedad solo se establece cuando se actualiza el archivo.
modo nocturno
No verifique los modos de permisos de archivos y directorios. El modo de permiso es
solo se establece cuando se actualiza el archivo.
nodos ascender
No descienda a un directorio. Normalmente rdista comprobará recursivamente
directorios. Si esta opción está habilitada, todos los archivos enumerados en el archivo
list en el distfile que son directorios no se escanean de forma recursiva. Solo
se comprueban la existencia, propiedad y modo del directorio.
grupo nuchk
Use el ID de grupo numérico (gid) para verificar la propiedad del grupo en lugar del grupo
nombre.
dueña de la patata
Utilice el ID de usuario numérico (uid) para verificar la propiedad del usuario en lugar del usuario
nombre.
guardarobjetivos
Guarde los archivos que se actualizan en lugar de eliminarlos. Cualquier archivo de destino que
Las actualizaciones son el primer cambio de nombre de presentar a archivo.OLD.
escaso Habilite la comprobación de escasa (también conocida como completamente) archivos. Uno de los mas comunes
tipos de archivos dispersos son los producidos por ndbm(3). Esta opción agrega algunos
sobrecarga de procesamiento adicional, por lo que solo debe habilitarse para objetivos
probablemente contenga archivos dispersos.
-p
Establezca la ruta donde se busca el servidor rdistd en el host de destino.
-P
Establezca la ruta al comando de transporte que se utilizará. Esto es normalmente rsh(1c) pero puede
ser cualquier otro programa, como ssh(1) - que entiende rsh(1c) de línea de comandos
sintaxis y que proporciona una conexión adecuada al host remoto. El
ruta de transporte puede ser una lista separada por dos puntos de posibles rutas de acceso. En este caso,
se utiliza el primer componente de la ruta que existe. es decir
/ usr / bin / rsh: / usr / bin / remsh , / usr / bsd / rsh.
-t tiempo de espera
Establezca el período de tiempo de espera (en segundos) para esperar las respuestas del control remoto rdista
servidor. El valor predeterminado es 900 segundos.
-V Imprime la información de la versión y sal.
MENSAJE REGISTRO
rdist usa una colección de mensajes predefinidos facilities que cada uno contiene una lista de
mensaje tipos especificando qué tipos de mensajes enviar a ese instalaciones. Las denominadas actividades comerciales locales
clienterdista) y el servidor remoto (rdistd) cada uno mantiene su propia copia de qué tipos
de mensajes para iniciar sesión en qué instalaciones.
El -l logotipos opción de rdista decirles rdista qué opciones de registro usar localmente. El -L
logotipos opción de rdista decirles rdista qué opciones de registro pasar al control remoto rdistd
servidor.
La forma de logotipos debe ser de forma
facilidad=tipos:facilidad=tipos ...
El IMPORTANTE facilidad nombres son:
stdout Mensajes a salida estándar.
presentar Inicie sesión en un archivo. Para especificar el nombre del archivo, use el formato
``archivo =nombre de archivo=tipos''. p.ej `` archivo = / tmp / rdist.log = todo, depurar ''.
syslog Use las pestañas syslogd(8) instalaciones.
notificar Utilice el interno rdista notificar instalaciones. Esta facilidad se utiliza en
en conjunción con el notificar palabra clave en un desarchivo para especificar que mensajes
se envían por correo al notificar dirección.
tipos debe ser una lista de tipos de mensajes separados por comas. Cada tipo de mensaje especificado
habilita ese nivel de mensaje. Esto es diferente al syslog(3) instalación del sistema que utiliza un
esquema de orden ascendente. Los siguientes son los válidos tipos:
el cambio Cosas que cambian. Esto incluye archivos que se instalan o actualizan en
de alguna manera.
info Información general.
para Información general sobre cosas que cambian. Esto incluye cosas como hacer
directorios que son necesarios para instalar un destino específico, pero
que no se especifican explícitamente en el destilar
error Errores normales que no son fatales.
ferroso Errores fatales.
de advertencia de ugencia
Advertencias sobre errores que no son tan graves como error escribir mensajes.
depurar Información de depuración.
que todas Todos menos los mensajes de depuración.
Aquí hay una opción de línea de comando de muestra:
-l stdout = all: syslog = change, Notice: file = / tmp / rdist.log = all
Esta entrada configurará el registro de mensajes locales para que todos los mensajes, excepto los de depuración, se envíen a la
Los mensajes de salida, cambio y aviso se enviarán a syslog(3) y todos los mensajes serán
escrito en el archivo /tmp/rdist.log.
ARCHIVOS
El desarchivo contiene una secuencia de entradas que especifican los archivos que se copiarán, el
hosts de destino y qué operaciones realizar para realizar la actualización. Cada entrada tiene una
de los siguientes formatos.
'='
[ etiqueta: ] `-> '
[ etiqueta: ] `:: '
El primer formato se utiliza para definir variables. El segundo formato se utiliza para
distribuir archivos a otros hosts. El tercer formato se utiliza para hacer listas de archivos.
que se han modificado desde una fecha determinada. El fuente lista especifica una lista de archivos
y / o directorios en el host local que se utilizarán como copia maestra para
distribución. El destino lista es la lista de hosts a los que se van a enviar estos archivos
copiado. Cada archivo de la lista de origen se agrega a una lista de cambios si el archivo está fuera de
fecha en el host que se está actualizando (segundo formato) o el archivo es más reciente que la hora
archivo de sello (tercer formato).
Las etiquetas son opcionales. Se utilizan para identificar un comando para actualizaciones parciales.
Las nuevas líneas, tabulaciones y espacios en blanco solo se utilizan como separadores y, de lo contrario, se ignoran. Comentarios
comience con '#' y termine con una nueva línea.
Las variables que se expandirán comienzan con '$' seguido de un carácter o un nombre entre
llaves (ver los ejemplos al final).
Las listas de origen y destino tienen el siguiente formato:
or
`(' ')'
Estas listas simples se pueden modificar mediante el uso de un nivel de suma, resta o
intersección como esta:
lista '-' lista
or
lista '+' lista
or
lista '&' lista
Si se necesitan modificaciones adicionales (por ejemplo, `` todos los servidores y máquinas cliente excepto
las máquinas OSF / 1 ''), la lista deberá construirse explícitamente en pasos utilizando
variables "temporales".
Los metacaracteres de shell `[',`]', `{',`}', `* 'y`?' son reconocidos y expandidos
(solo en el host local) de la misma manera que csh(1). Se pueden escapar con una barra invertida.
El carácter '~' también se expande de la misma forma que csh pero se expande por separado en
los hosts locales y de destino. Cuando el -otodo La opción se utiliza con un nombre de archivo que
comienza con `~ ', todo excepto el directorio de inicio se agrega al nombre de destino.
Los nombres de archivo que no comienzan con `/ 'o` ~' usan el directorio de inicio del usuario de destino como
el directorio raíz para el resto del nombre del archivo.
La lista de comandos consta de cero o más comandos del siguiente formato.
`instalar ' opt_dest_name `; '
'notificar' ';'
'excepto' ';'
"except_pat" ';'
'especial' cadena ';'
`cmdspecial ' cadena ';'
El instalar El comando se usa para copiar archivos y / o directorios desactualizados. Cada fuente
El archivo se copia en cada host de la lista de destinos. Los directorios se copian de forma recursiva
del mismo modo. nombre_destino_opt es un parámetro opcional para cambiar el nombre de los archivos. Si no instalar
aparece el comando en la lista de comandos o no se especifica el nombre de destino, la fuente
se utiliza el nombre de archivo. Se crearán directorios en el nombre de la ruta si no existen en
el host remoto. El -o distorsiona opción como se especifica arriba en OPCIONES, tiene el mismo
semántica como en la línea de comando, excepto que solo se aplica a los archivos en la lista de fuentes.
El nombre de inicio de sesión utilizado en el host de destino es el mismo que el del host local a menos que el
El nombre de destino tiene el formato "login @ host".
El notificar El comando se utiliza para enviar por correo la lista de archivos actualizados (y cualquier error que pueda haber
ocurrió) a los nombres enumerados. Si no aparece una `@ 'en el nombre, el host de destino es
agregado al nombre (por ejemplo, nombre1 @ host, nombre2 @ host, ...).
El excepto El comando se usa para actualizar todos los archivos en la lista de fuentes excepto para
archivos enumerados en nombre lista. Esto generalmente se usa para copiar todo en un directorio excepto
ciertos archivos.
El excepto_pat comando es como el excepto comando excepto que patrón lista es una lista de
expresiones regulares (ver ed(1) para obtener más detalles). Si uno de los patrones coincide con alguna cuerda
dentro de un nombre de archivo, ese archivo se ignorará. Tenga en cuenta que, dado que `\ 'es un carácter de comillas,
debe duplicarse para formar parte de la expresión regular. Las variables se expanden en
patrón lista pero no los caracteres coincidentes del patrón del archivo de shell. Para incluir un '$', debe ser
escapó con '\'.
El especial El comando se usa para especificar sh(1) comandos que se ejecutarán en el
host remoto después del archivo en nombre lista está actualizado o instalado. Si el nombre lista is
Si se omite, los comandos de shell se ejecutarán para cada archivo actualizado o instalado.
Cordón comienza y termina con `" 'y puede cruzar varias líneas en destilar Múltiple
los comandos del shell deben estar separados por ";". Los comandos se ejecutan en el usuario
directorio de inicio en el host que se actualiza. El especial El comando se puede usar para reconstruir
bases de datos privadas, etc. después de que se haya actualizado un programa. El siguiente entorno
las variables se establecen para cada especial mando:
ARCHIVO El nombre de ruta completo del archivo local que se acaba de actualizar.
REMARCHAR
El nombre de ruta completo del archivo remoto que se acaba de actualizar.
ARCHIVO BASE
El nombre de base del archivo remoto que se acaba de actualizar.
El cmd especial comando es similar al especial comando, excepto que se ejecuta solo cuando
el comando completo se completa en lugar de después de que se actualice cada archivo. La lista de archivos
se coloca en la variable de entorno $ ARCHIVOS. Cada nombre de archivo en $ ARCHIVOS está separado por un
`: '(dos puntos).
Si un nombre de host termina en un `` + '' (signo más), entonces el signo más se elimina y NFS comprueba
se desactivan. Esto es equivalente a deshabilitar el -ochknfs opción solo para este host.
El siguiente es un pequeño ejemplo.
Anfitriones = (matisse root @ arpa)
ARCHIVOS = ( /compartimiento / lib / usr / bin / usr / juegos
/ usr / include /{* .h, {stand, sys, vax *, pascal, machine} / *. h}
/ Usr / lib / usr / man / man? / usr / ucb / usr / local / rdist)
EXLIB = (Mail.rc aliases aliases.dir aliases.pag crontab dshrc
sendmail.cf sendmail.fc sendmail.hf sendmail.st uucp vfont)
$ {ARCHIVOS} -> $ {HOSTS}
instalar -eliminar, chknfs;
excepto / usr / lib /$ {EXLIB};
excepto / usr / games / lib;
especial / usr / sbin / sendmail "/ usr / sbin / sendmail -bz ";
src:
/ usr / src / bin -> arpa
excepto_pat (\\. o \ $ / SCCS \ $);
IMAGEN = (ips dviimp catdvi)
imagen:
/ usr / local /$ {IMAGEN} -> arpa
instalar / usr / local / lib ;
notificar a ralph;
$ {ARCHIVOS} :: sello.cory
notificar a root @ cory;
MEDIO AMBIENTE
TMPDIR Nombre del directorio temporal que se utilizará. El valor predeterminado es / tmp.
Use rdist en línea usando los servicios de onworks.net