|
LW1EAA > TODOS 20.10.17 15:00l 455 Lines 26209 Bytes #999 (0) @ WW
BID : 1182-LW1EAA
Read: GAST
Subj: SCC y MANCHESTER en LInux
Path: DB0FFL<OE2XZR<OE5XBR<OE1XAB<HG8LXL<XE1FH<LU3DVN<LU4ECL<LW1EAA
Sent: 171020/1159Z @:LW1EAA.LP.BA.ARG.SOAM #:1182 [LA PLATA] FBB7.00e $:1182-LW
From: LW1EAA@LW1EAA.LP.BA.ARG.SOAM
To : TODOS@WW
Como Configurar Placa SCC y Modem Manchester bajo Linux
Este documento fue elaborado con el objetivo de contar nuestras experiencias propias y consejos de otros colegas para poner operativos los sistemas de radioaficionados bajo Linux. Es posible que existan otros métodos mas sencillos y efectivos, pero los descriptos a continuación nos dieron y nos siguen dando grandes satisfacciones.
No es intención de este documento hablar sobre la instalación del sistema operativo. Nos limitaremos a explicar la configuración para radio utilizando Placa SCC del HSG y Modem Manchester del HSG a distintas velocidades.
Conceptos Iniciales
Linux es un sistema operativo basado en el protocolo TCP/IP, por lo tanto con la sóla instalación de drivers y utilidades para generar el protocolo AX25 nuestro linux estarß en condiciones de salir al aire, con poderosas funciones de red.
Si lo deseamos podremos utilizar de forma adicional programas como el JNOS o el TNOS que incluyen de forma integrada las funciones necesarias y habituales de un BBS.
Si elegimos operar con el Linux "puro" le asignaremos nuestra IP al sistema operativo. Si optamos por correr un NOS (ya se Jnos ó Tnos) le asignaremos a éste nuestra IP y necesitaremos una segunda IP para nuestro sistema operativo.
Con esto, serß posible tener en una sola mßquina "dos estaciones" con IP diferentes.
Compatibilidad
Esta forma de configuración ha sido probada con éxito en distintas distribuciones de Linux como Red Hat 6.0, 7.2 y SuSE 6.3 que utilizan el kernel 2.2.x y kernel 2.4.x
Los microprocesadores probados, han sido P100, P133, P200, PII350 y AMD K6II 500 Mhz. Es probable que otro hardware y otras distribuciones funcionen sin mayores problemas.
El Kernel
El Kernel es el núcleo de nuestro Linux. En él podremos incluir todas las funciones que necesitemos del sistema operativo. Al instalar Linux por primera vez se crearß un Kernel genérico con posibilidades bßsicas. Claro que no estarß preparado para brindar soporte para los requerimientos de radioaficionados.
Por ello deberemos compilar un nuevo núcleo en el que incluiremos soporte para "Amateur radio", y "Amateur Radio AX.25 level 2 protocol". Luego deberemos especificar el tipo de driver a incluir. En nuestro caso seleccionaremos "Z8530 SCC driver". Aquí podremos incluir mas de una opción si es que deseamos experimentar con otros dispositivos mas allß de la placa de la SCC. El único "costo adicional" serß que el archivo del Kernel serß apenas mas grande.No olvidemos chequear el resto de la configuración para evitar errores en la compilación.
Otra opción serß incluir estas opciones como modulos.
Qué se necesita
Ante todo necesitaremos obtener el software necesario para iniciar nuestro trabajo. Podremos conseguirlo en alguna copia o bajarlo desde algún BBS de un colega o a través de internet.
-Código Fuente del Kernel para poder compilar
-Driver z8530drv-utils-3.0-3.i386.rpm
-Utilidades ax25 (Opcional) ax25-utils-2.1.42a-3.i386.rpm
-Tnos 2.30 (Opcional) tnos-base-2.30-release.i386.rpm
-Jnos 111e (opcional) lnxjnos111e.tar.gz
+tar.gz o rpm?
Por lo general, la mayoría de los archivos estarßn en formato tar.gz o rpm Podremos elegir el formato que prefiramos. El primero, utilizado desde hace tiempo por Linux, contiene los archivos comprimidos. Normalmente deben ser abiertos con el siguiente comando:
tar xvfz nombredelarchivo.tar.gz
Luego, dependiendo del programa, tendremos que configurar y compilar los archivos descomprimidos.
El formato rpm (RedHat Packet Manager) ha aportado a Linux una gran ayuda en simplificar las operaciones, ya que con una sola instrucción el archivo se descomprime y se instala de una manera sencilla. Para ello es necesario tipear:
rpm -i nombredelarchivo.rpm
Los rpm no sólo funcionan en Red Hat, tambien son soportados por SuSE y otras distribuciones.
Compilando el Kernel
Como indicamos mas arriba, serß indispensable contar con el código fuente del kernel para poder compilarlo. Si al instalar Linux por primera vez elegimos cargar los fuentes, no tendremos problemas. Si no lo tenemos, no nos quedara otra solución que hacer una actualización o conseguirlo. Desde internet se lo puede bajar desde:
http://www.kernel.org
En nuestro sistema, por lo general, los fuentes estarßn el directorio: /usr/src/linux
Ingresando a ese directorio podremos ejecutar los siguientes comandos para el proceso de compilación:
make mrproper
make menuconfig
make clean
make dep
make zImage
El comando make menuconfig nos presentarß un cuadro con las distintas opciones para incluir en nuestra compilación. Esta tarea de selección debe hacerse con mucho cuidado para evitar luego errores en la compilación.
Es aquí donde debemos incluir, entre otras cosas, soporte para placa SCC habilitando correctamente las opciones para "Amateur radio", y "Amateur Radio AX.25 level 2 protocol". LDevice Support. Esto nos serß de gran utilidad si en el futuro deseamos instalar un Jnos o un Tnos.
El comando make clean harß una liempieza, el make dep establecerß las dependencias y finalmente maken tamaño mas grande.
Si el proceso de compilación lo realizamos desde una ventana dentro de x-windows, en lugar del comando make menuconfig podremos utilizar make xconfig que nos presentarß un cuadro de configuración de forma grßfica.
Este proceso es una gran experiencia para aprender a compilar el kernel, aunque suele ser difícil lograrlo con éxito de una sola vez. Si no lo logramos, se le puede solicitar a un colega que ya tenga su kernel compilado que nos envíe el suyo. Puede entrar en un diskette.
Booteando con el nuevo Kernel
Una vez completados los pasos anteriores, encontraremos la nueva imagen del Kernel en el directorio /usr/src/linux/arch/i386/boot/ con el nombre de zImage ó bzImage dependiendo del tamaño del archivo. Debemos copiarlo al dir /boot y si queremos lo podremos renombrar para identificarlo fßcilmente.
Ejemplo: cp /usr/src/linux/arch/i386/boot/bzImage /boot/kernelradio
Ahora debemos indicarle a LILO (Programa gestor de arranque de Linux) que incluya el nuevo kernel para que lo tengamos como opción de boteo. Para ello editaremos el archivo /etc/lilo.conf Seguramente allí encontraremos las instrucciones para la carga del viejo kernel y para la carga de windows o DOS si es que en nuestra maquina compartimos otros sistemas operativos. Eso lo dejaremos sin alterar y al final agregaremos la nueva imagen:
Ejemplo:
image=/boot/kernelradio
label=radio
root=/dev/hda4
Notemos que en la primera linea indicamos el directorio y el nombre del archivo por cargar. En la segunda, la etiqueta -o sobrenombre- que veremos entre las opciones de boteo y en la tercera colocaremos la partición del disco duro donde se encuentra la raíz de Linux.
Para que la nueva configuración tome efecto desde la linea de comandos ejecutaremos:
lilo
Ya estß!!! la próxima vez que reiniciemos la mßquina Lilo nos presentarß la opción para botear con nuestro nuevo Kernel.
NOTA: Si queremos que al encender la maquina nuestro kernel de radio botee por default, debemos indicarlo también en /etc/lilo.conf En la primera parte del archivo, donde esta la configuración general de lilo (es decir antes de la primera imagen) incluiremos la linea:
default=radio
Tal como hicimos antes, para que la nueva configuración tome efecto ejecutaremos el comando lilo desde la terminal. Observaremos un * junto a la palabra radio.
El Driver z8530drv
El hecho que el Kernel pueda soportar la placa SCC, se lo debemos al colega alemßn Jörg Reuter, (DL1BKE) quien escribió el driver apropiado. Para obtener amplios detalles podremos visitar su pßgina en Internet:
http://www.qsl.net/dl1bke
Allí podremos encontrar los links para bajar el driver. Hay varias versiones disponibles. A partir de la versión 3.0 sólo estßn incluidas las utilidades, ya que el driver en si mismo serß incluido en el kernel, si éste es lo suficientemente nuevo como el 2.2.x o posterior. El archivo que debemos instalar se puede encontrar en:
ftp://ftp.ccac.rwth-aachen.de.pub.jr/z835drv-utils-3.0-3.i386.rpm
para instalarlo, utilizaremos la simple instrucción de un archivo autoinstalable en formato rpm:
rpm -i z8530drv-utils-3.0-3.i386.rpm
Una vez realizada esta tarea, encontraremos tres comandos en el directorio /sbin y un archivo de configuración en el dir /etc/ax25 que tendrß el nombre de z8530drv.conf.ex Allí debemos hacer los cambios con nuestras preferencias y renombrarlo como z8530drv.conf
Los comandos que encontraremos en el dir /sbin serßn:
-sccinit (Encargado de leer el archivo z8530drv.conf y de inicializar el driver)
-sccstat (Muestra el estado actual del canal de la scc inidicado)
-sccparam (Permite hacer cambios en la configuración)
En el archivo de configuración serß necesario declarar los datos de nuestra placa como dirección, IRQ, Clock y tipo de Chip a utilizar. Luego se cargarßn los parßmetros de cada uno de los ports. Veamos un ejemplo utilizando placa del HSG, dirección 280, IRQ 11 y xtal de 7.3728 Mhz.
# z8530drv.conf - initialization for the Z8530 SCC driver
# Lines must not be longer than 255 bytes!
# Hardware section
#
# SCC chip 1
#
chip 1
data_a 0x283 # data port A
ctrl_a 0x282 # control port A
data_b 0x281 # data port B
ctrl_b 0x280 # control port B
irq 11 # IRQ No. 11 (#)
pclock 7372800 # clock (+)
board pa0hzp # hardware type (*)
escc no # enhanced SCC chip? (8580/85180/85280) (*)
vector no # latch for interrupt vector ($)
special no # address of special function register (*)
option 0 # option to set via sfr (*)
#
# The order of entries IS important!
#
# first : DEVICE
# then : MODEM section
# after that: Level 1 parameters
#
# Definition of /dev/scc0
#
device /dev/scc0
#
# MODEM related stuff
#
speed 4800 # 4800 baud
clock dpll # clock source: use the dpll
mode nrzi # normal NRZI operation
bufsize 640
#
# Level 1 parameters
#
txdelay 20 # You should know about these already!
persist 254
slot 1
tail 7
fulldup 0
wait 5
min 3
maxkey 7
idle 3
maxdef 120
group 0
txoff off
softdcd off # use software dcd
#
#
# Definition of /dev/scc1
#
#
device /dev/scc1
#
speed 4800
clock dpll
mode nrzi
bufsize 640
#
txdelay 20
persist 254
slot 1
tail 8
fulldup 0
wait 12
min 3
maxkey 7
idle 3
maxdef 120
group 0
txoff off
softdcd off
#
#
# End of File
#
Como vemos, al comienzo inicializamos el 8530, colocamos address, IRQ. Notemos que el clock debe estar expresado en Hertz. En nuestro caso 7372800 Hz. En el tipo de placa seleccionaremos pa0hzp (También el driver soporta placas de tipo Eagle, PC100, Primus y Baycom).
El autor del driver indica que si utilizamos SCC avanzadas como 8580, 85180 u 85280 hay que poner "yes" en la opción ESCC.
Este driver permite utilizar hasta 4 chips (8 canales). Sólo bastarß repetir la inicialización del chip y la configuración de cada canal. De todos modos, serß posible usar mßs de 4 chips, aunque por momento no hablaremos de eso.
Tampoco describiremos el resto de las líneas, ya que seguramente serßn familiares para los paqueteros. En la Web del DL1BKE estßn explicadas en detalle.
Ya tendremos las herramientas necesarias para hacer nuestra primera prueba!!!
Desde la linea de comandos en una sesión de linux tipearemos:
sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx (Indicar IP y licencia apropiada)
route add default scc0
Con esto inicializamos el driver, indicamos nuestras Ip y licencia y establecimos un ruta por la scc. Por lo tanto desde la linea de comandos ya podremos hacer "telnet", "ftp" etc. o bien levantamos el navegador en modo grßfico y visitamos por radio las Webs de los amigos radioaficionados. Por ahora haremos solo conexiones con los números IP, ya que todavía no establecimos los métodos para resolver dominios.
Las ax25utils
Hasta este momento hemos configurado Linux con las interesantes posibilidades de Red, como los telnets, http o ftp, pero carecemos de otras posibilidades como conexiones ax25 sin tcpip, conexiones tty, BBS o forwarding, entre otras cosas.
Para resolver esto existe un paquete de utilidades para Linux, conocido como ax25utils, que nos abrirß las puertas a un mundo aún mas interesante.
Como siempre recurriremos a internet o algún colega y buscaremos:
ax25-utils-2.1.42a-3.i386.rpm
Encontraremos varias versiones y en diferentes formatos. Para instalar las utilidades escribiremos en la linea de comandos:
rpm -i ax25-utils-2.1.42a-3.i386.rpm
Luego tendremos la tarea de configurar cada uno de los ports y cada uno de los servicios.
Otra opción para ampliar funciones ax25, serß instalar un programa del tipo NOS, que incluye de forma integrada estas posibilidades. De todos modos necesitaremos una utilidad ax25 que nos permita "atachar" el Jnos ó el Tnos a la SCC, se trata de la utilidad Net2kiss.
La utilidad net2kiss
Ejecutar sobre el sistema operativo la utilidad net2kiss serß indispensable para "atachar" cada uno de los puertos del NOS hacia cada uno de los puertos de la SCC.
Su función es tomar los paquetes ax25 de la interface correspondiente del S.O. (En nuestro caso cada puerto de la SCC) y convertirlos en datos modo Kiss. Luego los envía al NOS a través de una pseudo-tyy.
Por lo tanto, en el NOS, en lugar de "atachar" el puerto de la SCC, (Como se hace en DOS) "atacharemos" un disposivo virtual. +ste, a su vez se comunicarß con la SCC con el auxilio del net2kiss.
Serßn necesarias dos instrucciones. Una para el NOS y otra para el sistema operativo.
Ejemplos:
#linea de attach en el autoexec.nos
attach asy ttyp0 - ax25 2m 1024 256 38400
#linea de ejecución de utilidad para el sistema operativo
net2kiss -i scc0 -v /dev/ptyp0
Como vemos el comando net2kiss puede tener varias opciones de ejecución que describimos a continuación:
-i dispositivo Especifica el nombre del dispositivo sobre el que trabajarß net2kiss
-s Indica a Net2kiss que busque por sí mismo una pseudo-terminal libre y cree
el enlace simbólico correspondiente.
-f Puede ser usada en conjunto con la opción -s para crear de manera forzada el
enlace, aunque este ya exista.
-v Habilita la visualización de errores, y muestra en pantalla el trßfico de los
paquetes. (Se asemeja al trace).
-a Permite recibir todos los paquetes, en lugar de recibir solo los paquetes ax25.
La sintaxis de uso es:
net2kiss [-fvzva] [-i dispositivo] ptyname
En principio, para nuestras primeras pruebas podemos ejecutar el net2kiss en una terminal de linux, la cual quedarß abierta por el tiempo que estemos utilizandola. Mas adelante veremos la forma de ejecutar esta función como un proceso "background".
Debemos tener en cuenta que hay que ejecutar un net2kiss con sus parßmetros por cada uno de los puertos de SCC que necesitemos operar.
Una mßquina, dos IP
Una de las grandes ventajas que ofrece Linux, es poder hacer en una misma maquina, multiples tareas de una forma sencilla. En una sesión podremos ejecutar un NOS y en una sesión grßfica usar programas de red como el Netscape u otros. Podremos asignar entonces nuestra IP al NOS y asignar una segunda IP al Sistema Operativo. Como prueba se puede aunmentar un numero el campo de subred de nuestra IP, y por supuesto con la aceptación del coordinador local de números IP.
Gracias al driver z8530drv y la utilidad net2kiss, ambas Ip podran salir al aire, y escuchar en forma simultßnea.
Es indistinta la asignacion de IP al NOS o al sistema operativo. Una ventaja de asignar nuestra "IP Original" al NOS es que las estaciones que nos llamen serßn atendiadas por el NOS ofreciendo funciones simples e integradas para nuestros visitantes.
+Jnos o Tnos?
Dicen que sobre gustos no hay nada escrito.... y esta no es la excepción. Los dos progamas ofrecen prestaciones similares, aunque alguno pueda ser mas completo que el otro. Hay quienes basan su preferencia en la cantidad de comandos, en las innovaciones, en su estabilidad, en su simplicidad, efectividad, etc etc etc.
Serß cuestión de probarlos y que cada uno opte por el que mas le convenga. Después de todo, la puesta en marcha bajo linux, es similar para los dos programas.
Instalando un Jnos bajo Linux
Necesitaremos un ejecutable para linux, que podemos compilar nosotros mismos, o bien conseguirlo ya compilado.
Es posible encontrar tanto los fuentes como el ejecutable compilado y buena documentación en:
ftp://pc.usl.edu/pub/ham/jnos
Suponiendo que bajamos el ejecutable, (podemos dejar el proceso de compilación propio para mas adelante) lo encontraremos facilmente por ser el unico archivo con extensión .gz
Lo colocaremos en un directorio, por ejemplo,
/jnos
y dentro de ese dir, descomprimimos el archivo:
gunzip -d lnxjnos111e.gz
y obtendremos un archivo ejecutable, pero ya sin la extensión .gz.
Cada vez que Jnos sea ejecutado, crearß un archivo "lock" mientras esté ejecutandose. Este archivo se alojarß en: /var/spool/locks/ de nuestro sistema operativo. Si estos dirs no los tenemos, deberemos crearlos manualmente.
Al ejecutar Jnos por primera vez, se crearan los directorios escenciales para su operación. Aquellos que no sean creados, como por ejemplo /jnos/public /jnos/upload etc. los podremos copiar desde algún jnos que tengamos operativo bajo DOS.
Recordemos que Linux es "case sensitive" y por lo tanto diferencia entre minúsculas y mayúsculas. Aquí tanto los dirs como los archivos deben estar en minusculas. De lo contrario nuestro Jnos no los leerß.
No olvidemos crear, o copiar, el archivo ftpusers.
Podremos copiar desde el Jnos de DOS el autoexec.nos para tener la base de los parßmetros a utilizar (Excepto los relacionados con la memoria, que a linux no le interesan), y por supuesto con nuestra Licencia e IP.
Como ya explicamos, no "attacharemos" la SCC directamente, sino que lo haremos a una pseudo-terminal. Podremos utilizar la siguiente instrucción en el autoexec.nos:
attach asy ttyp0 - ax25 2m 1024 256 38400
Recordemos que del otro lado -es decir en el sistema operativo- debemos tener ejecutadas la lineas:
sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx-x (IP diferente a la del Jnos)
net2kiss -i scc0 -v /dev/ptyp0
A esta altura, ya se supone que tenemos configurado el driver z8530drv y cargadas las utilidades ax25. Entonces estamos en condiciones de correr nuestro jnos. Entrando en el dir correspondiente lanzaremos:
./jnos
Si todo salió bien, nuestro jnos ya estarß cargado y estarß esperando instrucciones.
Si queremos instalr sobre el jnos en servidor http, podremos seguir los siguientes pasos.
Ante todo asegurarnos que el ejecutable que tenemos, tiene compilado el http server.
Para ello podremos tipear en el prompt:
finger info
Si todo estß en orden, debería decir:
TCP SERVERS: HTTP (Ademßs del resto de servidores que tiene compilado el jnos).
Debemos crear un directorio, por ejemplo /jnos/wwwroot donde alojaremos toda la estructura de directorio de nuestra pßgina Web.
En el autoexec.nos debemos agregar la linea:
start http 80 D /jnos/wwwroot
NOTA: 80 es el puerto que se usa generalmente para http, y /jnos/wwwroot es el directorio que creamos anteriormente. Allí incluiremos nuestra pßgina principal, a la que llamaremos
root.html de ahí en mas colgarß el resto de sitio.
Por último, debemos crear el archivo /jnos/spool/access.www para habilitar el acceso a nuestra pßgina web. No importa que este archivo esté vacío, pero es indispensable que sí exista.
El nombre del dir donde alojaremos la pßgina (para este ejemplo llamado wwwroot) puede ser cualquiera. Sólo basta que coincida con el declarado en el autoexec.nos.
Instalando un Tnos bajo Linux
Tnos, son las iniciales de Tampa Network Operating System, y fue desarrollado por Brian Lantz (KO4KS), tomando gran parte del desarrollo de Phil Karn (KA9Q) en versiones anteriores de otros NOS.
Al igual que Jnos, se los puede ejecutar tanto en DOS como en Linux. Por ello seremos cuidadosos al elegir el paquete a instalar. Para obtener detalles y bajar los paquetes, podremos visitar la pßgina del autor:
http://www.lantz.com
Alli, podremos encontrar el paquete autoinstalable para linux en versión rpm, y lo instalaremos en nuestro sistema, por ejemplo en el directorio /tnos
rpm -i tnos-base-2.30-release.i386.rpm
Ingresando al dir /tnos encontraremos los archivos necesario y deberemos crear el autoexec.nos para incluir los parßmetros de inicialización de sistema.
Para generar un autoexec.nos en forma asistida tipearemos:
tcl mksetup.tcl
Luego de contestadas las preguntas encontraremos un nuevos archivo:
autoexec.tlc
que debemos renombrar como autoexec.nos
Ahora debemos editar este archivo, para cambiar los seteos necesarios. Entre ellos, los attachments.
Ademas encontraremos un dir llamado /tnos/etc/ donde se encuentran alojados distintos archivos de configuración. Allí crearemos el archivo:
/tnos/etc/security
que comple la misma función de ftpusers en jnos.
Un ejemplo de contenido de "security" sería
univperm * /tnos/public 131097
Esto significa, para cualquier estación, con cualquier password, habilitando para el dir /tnos/public con permiso 131097)
Volviendo al autoexec.nos, tal lo descripto anteriormente y al igual que en Jnos, no atacharemos la SCC directamente, sino que lo haremos a una pseudo-terminal. Podremos utilizar la siguiente instrucción en el autoexec.nos:
attach asy ttyp0 - ax25 2m 1024 256 38400
Recordemos que del otro lado -es decir en el sistema operativo- debemos tener ejecutadas la lineas:
sccinit
ifconfig scc0 44.153.x.x hw ax25 lu0xxx-x (IP diferente a la del Tnos)
net2kiss -i scc0 -v /dev/ptyp0
A esta altura, ya se supone que tenemos configurado el driver z8530drv y cargadas las utilidades ax25. Entonces estamos en condiciones de correr nuestro Tnos. Entrando en el dir correspondiente lanzaremos:
./tnos -U 0
Por delante quedarß, una configuración mas avanzada y personalizada del Tnos.
Interconectando el Nos con el Sistema Operativo
Hasta ahora tenemos un sistema operativo con una IP y un NOS (ya sea Jnos ó Tnos) con otra. Cada uno sale aire por si mismo como si fueran dos estaciones diferentes en una misma mßquina. Pero por qué no interconectar internamente el NOS y el sistema operativo en TCP/IP si cada uno tiene su propio número? Esto nos daría grandes ventajas. Por ejemplo: el NOS puede ser nuestro servidor, y en el Sistema operativo un Netscape puede ser el cliente!
Con unos pocos comandos, y si hemos incluido soporte para conexiones SLIP al compilar el Kernel, obtendremos la solución.
Crearemos un puerto SLIP en el sistema operativo y otro del lado del NOS.
#Attach en el autoexec.nos
attach asy ttypf - slip linux 1024 1024 38400
route add 44.153.33.70 linux
#En una terminal del sistema operativo tipearemos:
slattach -s 38400 -p slip /dev/ptypf &
ifconfig sl0 44.153.33.70 up
route add 44.153.32.70 sl0
Las Ip colocadas aquí son solo ejemplos. Notemos que en el autoexec.nos "atachamos" el puerto slip al que denominamos "linux" y que agregamos una ruta a la IP del sistema operativo a través de "linux".
Del otro lado, en el sistema operativo, atachamos el puerto SLIP, luego le asignamos la misma IP con la que levantamos los ifconfig del sistema operativo, y luego por ese puerto colocamos una ruta hacia la IP del NOS.
Ya esta!!! Si todo quedó en orden, podremos enviar los primeros pings de un lado hacia el otro.
Haciendo todo mßs Simple
Los resultados de ésta configuración son por demßs interesantes. Pero si cada vez que encendemos la mßquina hay que tipear tantas cosas, nos cansaremos sobre el teclado. Por lo tanto, las configuraciónes del NOS quedarßn guardadas en el autoexec.nos y las configuraciones para el S.O., en un archivo que es leído al iniciar el sistema.
Por ello si utilizamos Red Hat localizaremos el archivo:
/etc/rc.d/rc.local
y si utilizamos SuSE:
/etc/rc.d/boot.local
si utilizamos otra distribución, buscaremos el archivo que cumpla funciones similares para la carga de comandos, al arrancar el sistema.
Allí incluiremos todo aquello que necesitemos para la configuración:
Por ejemplo, al final del archivo incluiremos:
sccinit
ifconfig scc0 44.153.33.70 hw ax25 lwxxxx-5
sleep 1
net2kiss -i scc0 /dev/ptyp0 &
sleep 1
slattach -s 38400 -p slip /dev/ptypf &
sleep 1
ifconfig sl0 44.153.33.70 up
sleep 1
route add 44.153.32.70 sl0
Como vemos, inicializamos el driver para la SCC, adjudicamos IP y licencia, ejecutamos el net2kiss, levantamos el puerto SLIP, le adjudicamos la IP y la ruta.
Los instrucciones sleep 1 forzarßn una pequeña espera entre cada comando. Depende de la mßquina a utilizar, serßn necesarios o no.
Tambien notamos que al finalizar algunas líneas, colocamos el símbolo & (ampersand), con esto colocaremos el proceso en "background" y ya no nos ocuparß una terminal para ejecutarse.
Configurando el NOS para arrancar y rearrancar automaticamente
Hasta aquí hemos descripto como autoconfigurar linux para radio. Pero para levantar
un jnos o un tnos era necesario loguearse en una tty e invocar el programa.
Si queremos que el NOS se autoejecute a iniciar Linux deberemos configurar apropiadamente
el archivo startnos ubicado en el directorio principal del nuestro NOS. Un ejemplo sería:
#!/bin/bash
sleep 2
ps -aux | grep " ./jnos" | while read user pid rest
do
kill -STOP ${pid} 2>/dev/null
sleep 2
kill -KILL ${pid} 2>/dev/null
done
sleep 3
/bin/rm /jnos/spool/mqueue/*.lck 2>/dev/null
/bin/rm -f /jnos/spool/mail/*.lck 2>/dev/null
cd /jnos
#export TZ=GMT0
#export TERM=console
sleep 1
exec ./jnos < $1 > $1 2>&1
Asimismo debemos indicarle a linux que busque este script y abra el nos en la tty indicada. A tal efecto en /etc/inittab incluiremos una linea que diga:
7:2345:respawn:/jnos/startnos /dev/tty7
Para que esto funcione, no olvidemos de dar al archivo startnos los permisos de ejecucion correspondientes.
La linea ubicada en /etc/inittab invocarß el script ubicado en el startnos y abrirß sin
necesidad de logueo la tty7. Allí se correrß el nos ejecutable indicado en el startnos.
Si por alguna razon el NOS deja de funcionar, este script localizarß el proceso en que
corría el NOs, lo matarß y volverß a ejecutar el NOS.
73, y que disfruten Linux!!!
Pino LW2DIE
lw2die@yahoo.com
Diego LW2DTQ
lw2dtq@yahoo.com
Jorge LW7DCO
lw7dco@yahoo.com
Septiembre 2000 Agradecemos por la ayuda a LU9AKT (Marcelo) , LU4AEY (Claudio) y LW9EAU (Damißn).
Lese vorherige Mail | Lese naechste Mail
| |