21.1. Enviando noticias

Los art�culos pueden ser suministrados a C-News de varias formas. Cuando un usuario env�a un art�culo, el lector de noticias normalmente lo pasa al programa inews, que completa la informaci�n de la cabecera. Las noticias que llegan al servidor, ya sea un solo art�culo o un lote de ellos, son pasadas por el programa rnews, que las guardar� en el directorio /var/spool/news/in.coming, desde donde m�s tarde ser�n recogidas por newsrun. Sin embargo, con cualquiera de estas dos t�cnicas el art�culo se pasar� finalmente por el programa newsrun.

La orden relaynews comprueba si un art�culo ya se encuentra en el servidor buscando el ID del mensaje en el fichero history. Los art�culos duplicados son eliminados. Entonces relaynews mira la l�nea de la cabecera Newsgroups: para saber si el servidor local solicita art�culos de cualquiera de estos grupos. Si es as�, y el grupo de noticias aparece en el fichero active, relaynews intenta almacenar el articulo en su directorio correspondiente en el �rea de cola de noticias. Si el directorio no existe, es creado. El ID del mensaje que tiene el art�culo es registrado en el fichero history. Si no, relaynews elimina el art�culo.

Algunas veces relaynews falla al guardar un art�culo entrante porque el grupo al que ha sido enviado no est� listado en su fichero active. En este caso, el art�culo se mueve al grupo junk.[1] relaynews tambi�n busca art�culos sin referenciar y los rechaza. Los lotes entrantes que fallan por cualquier raz�n se mueven a /var/spool/news/in.coming/bad, y se registra un mensaje de error.

Despu�s de esto, el art�culo se transmite a todos los otros servidores que soliciten noticias de estos grupos, usando el transporte especificado para cada servidor . Para asegurarse de que un art�culo no es enviado a un servidor que ya lo tiene, cada servidor de destino se compara con el campo Path: de la cabecera, que contiene la lista de servidores por los que el art�culo ha pasado, escrito al estilo UUCP bang-path source-routing descrito en Cap�tulo 17. Si el nombre del servidor destinatario no aparece en esta lista, el articulo se le env�a.

C-News se usa com�nmente para transmitir noticias entre servidores UUCP, aunque es tambi�n posible usarlo bajo un entorno NNTP. Para entregar noticias a un servidor remoto UUCP, tanto un solo art�culo como lotes enteros, se usa uux para ejecutar el programa rnews en un servidor remoto y entregarle el art�culo o lote por su entrada est�ndar. Consulte en Cap�tulo 16 para m�s informaci�n sobre el UUCP.

Proceso por lotes es un t�rmino usado para describir el env�o de grandes cantidades de art�culos individuales en una sola transmisi�n. Cuando el procesamiento por lotes se activa en un servidor, C-News no env�a ning�n art�culo entrante inmediatamente; en vez de eso, a�ade su localizaci�n a un fichero, normalmente out.going/site/togo. Peri�dicamente, el programa cron ejecuta un programa desde una entrada del crontab, que lee este fichero y mete todos los art�culos listados en uno o m�s ficheros, opcionalmente comprimi�ndolos y envi�ndolos a rnews en el servidor remoto. [2]

Figura 21-1 muestra las noticias fluyendo a trav�s de relaynews. Los art�culos deben ser transmitidos al servidor local (indicado por ME), a un servidor llamado ponderosa v�a email, y a un servidor llamado moria, para el cual el proceso por lotes est� activado.

Figura 21-1. Flujo de noticias mediante relaynews

Notas

[1]

Debe haber una diferencia entre los grupos que existen en su servidor y aquellos que su servidor est� preparado para recibir. Por ejemplo, la lista de subscripci�n puede especificar comp.all, que debe enviar todos los grupos por debajo de comp, pero en nuestro sitio podemos no tener listados todos los grupos de esa jerarqu�a en el fichero active. Los art�culos enviados a esos grupos ser�n movidos a junk.

[2]

Recuerde que debe ser el crontab de noticias; los permisos de ficheros no ser�n cambiados.