Debe introducir al menos 3 caracteres en el buscador.
Inicio / Wikis / Tutoriales / Guía de Administración de Redes con Linux - Acceso a Dispositivos Serie

Guía de Administración de Redes con Linux - Acceso a Dispositivos Serie

 ****- (23 opiniones)
GNU Free Documentation License Tutorial de Olaf Kirch y Terry Dawson - 14 de Febrero de 2006
Temas Relacionados: Administración de redes
31. Acceso a Dispositivos Serie
Como todo dispositivo en un sistema Unix, los puertos serie son accesibles a través de ficheros especiales de dispositivo, localizados en el directorio /dev. Hay dos tipos de ficheros de dispositivo relacionados con manejadores serie, y hay un fichero de dispositivo de cada tipo para cada puerto. El dispositivo tendrá un comportamiento levemente distinto, según cuál de sus ficheros de dispositivo empleemos. Cubriremos estas diferencias porque ayudará a entender algunos aspectos de configuración y algunos consejos que puede encontrar respecto a dispositivos serie, pero en la práctica, sólo necesita utilizar uno de ellos. Quizá en un futuro desaparezca alguno de estos tipos.

La más importante de las dos clases de dispositivos serie tiene un número mayor de 4, y sus ficheros especiales de dispositivo se llaman ttyS0, ttyS1, etc. La otra variedad tiene un número mayor de 5, y fue diseñada para emplearse en llamadas salientes a través de un puerto; sus ficheros especiales de dispositivo son cua0, cua1, etc. En el mundo Unix, las cuentas comienzan generalmente en cero, mientras que los profanos tienden a comenzar por uno. Esto genera una pequeña confusión ya que COM1: se representa por /dev/ttyS0, COM2: por /dev/ttyS1, etc. Un usuario cualquiera familiarizado con hardware del estilo del IBM PC sabe que COM3: y mayores nunca llegaron a ser estándar, de todos modos.

Los dispositivos cua, o “llamada salientes,” fueron creados para solucionar el problema de evitar conflictos en dispositivos serie para módems que tienen que aceptar tanto conexiones entrantes como conexiones salientes. Desafortunadamente, han creado sus propios problemas y probablemente dejarán de ser utilizados. Echemos un vistazo al asunto.

GNU/Linux, igual que Unix, permite que un dispositivo, u otro fichero cualquiera, sea abierto por más de un proceso de forma simultánea. Por desgracia, esto es raramente útil para dispositivos tty, ya que ambos procesos interferirán entre sí. Pero, por suerte, se diseñó un mecanismo que permite a un proceso comprobar si un dispositivo tty está en uso por otro proceso antes de tratar de abrirlo. Este mecanismo usa lo que denominamos ficheros de bloqueo. La idea es que cuando un proceso trata de abrir un dispositivo tty, ha de comprobar la existencia de un fichero en un lugar especial, llamado de forma parecida al dispositivo tty. Si este fichero no existe, el proceso lo crea y abre el dispositivo tty. Si el fichero, por contra, ya existe, el proceso asume que hay otro proceso que ya ha abierto el dispositivo tty y toma la decisión adecuada. Un último truco para que este sistema de manejo funcionara adecuadamente es escribir el identificador (pid) del proceso que ha creado el fichero de bloqueo en el propio fichero de bloqueo; seguiremos con este punto un poco más abajo.

El mecanismo de ficheros de bloqueo funciona perfectamente en los casos en que tenemos una localización bien definida para estos ficheros de bloqueo, y todos los programas saben dónde buscarlos. Sin embargo, este no ha sido siempre el caso de GNU/Linux. No fue hasta que se definió el Estándar de Sistema de Ficheros de Linux (Linux Filesystem Standard) cuando comenzaron a trabajar correctamente los ficheros de bloqueo tty. Llegó a haber cuatro, e incluso más lugares elegidos por los programadores para almacenar los ficheros de bloqueo: /usr/spool/locks/, /var/spool/locks/, /var/lock/ y /usr/lock/. La confusión trajo el caos. Los programas abrían ficheros de bloqueo en lugares distintos para controlar un mismo dispositivo tty; la situación era similar a no usar ficheros de bloqueo en absoluto.

Los dispositivos cua fueron creados para solventar este problema. En lugar de confiar a los ficheros de bloqueo la prevención de conflictos entre procesos que pretendían usar dispositivos serie, se decidió que el núcleo podría suministrar un método sencillo de arbitrar quién debía obtener acceso. Si el dispositivo ttyS estaba abierto, un intento de abrir el cua resultaría en un error que podría ser interpretado por el programa como que el dispositivo ya estaba en uso. Si el cua estaba previamente abierto y se trataba de abrir el ttyS, la petición crearía un bloqueo; es decir, se pondría en espera hasta que el dispositivo cua fuera cerrado por el otro proceso. Esta solución era adecuada para casos como un módem único configurado para recibir accesos entrantes y que, en ocasiones, se quisiera emplear para accesos salientes. Pero no era suficiente para ámbitos en los que varios programas tratan de realizar llamadas salientes desde el mismo dispositivo. La única forma de remediar este problema era ¡usar ficheros de bloqueo! De vuelta al problema inicial.

Basta decir que el Estándar de Sistema de Ficheros de Linux llegó al rescate y ahora es obligatorio almacenar los ficheros de bloqueo en el directorio /var/lock, y que, por acuerdo, el nombre del fichero de bloqueo correspondiente al dispositivo ttyS1, por ejemplo, es LCK..ttyS1. Los ficheros de bloqueo cua también deberían ir en este directorio, pero el uso de dispositivos cua queda desaconsejado

Los dispositivos cua seguirán existiendo por un tiempo, para conservar la compatibilidad con software antiguo, pero con el tiempo serán retirados. Si usted se pregunta cuáles debe usar, quédese con los dispositivos ttyS, y asegúrese de que su sistema cumpla con el estándar Linux FSSTND (Estándar de Sistema de Ficheros de Linux), o, como mínimo, que todos los programas que accedan a dispositivos serie estén de acuerdo en la localización de los ficheros de bloqueo. Gran parte del software que trata con dispositivos tty serie proporciona opciones de compilación para especificar la localización de ficheros de bloqueo. Es probable que aparecerá como una variable llamada LOCKDIR en el Makefile o en algún fichero de configuración de cabecera. Si usted mismo compila el software, la mejor opción es modificar esto de acuerdo al lugar definido en el FSSTND. Si usa usted binarios precompilados y no está seguro de dónde escribirá el programa sus ficheros de bloqueo, quizá esta orden pueda proporcionarle alguna pista:

|| strings binaryfile | grep lock ||

Si el lugar encontrado no es compatible con el resto de su sistema, puede tratar de crear un enlace simbólico desde el directorio de bloqueo que pretende usar el binario hacia /var/lock. No es una solución muy elegante, pero funcionará.


Los números menores son idénticos para ambos tipos de dispositivos serie. Si tiene usted su módem conectado en un puerto desde COM1: a COM4:, su número menor será el número de puerto COM más 63. Si emplea usted hardware serie especial, como controladores de múltiples puertos serie de gran rendimiento, probablemente necesite crear ficheros especiales de dispositivo para él; probablemente no emplee el manejador estándar de dispositivo. El Serial-HOWTO debe poder ayudarle a encontrar los detalles específicos.

Supongamos que su módem está en COM2:. Su número menor será 65, y su número mayor será 4 para usos normales. Debería existir un dispositivo llamado ttyS1 que tiene estos números. Liste los ttys serie del directorio /dev. La quinta y sexta columna muestran respectivamente el número mayor y el número menor:

|| $ ls -l /dev/ttyS* 0 crw-rw
1 uucp dialout 4, 64 Oct 13 1997 /dev/ttyS0 0 crw-rw
1 uucp dialout 4, 65 Jan 26 21:55 /dev/ttyS1 0 crw-rw
1 uucp dialout 4, 66 Oct 13 1997 /dev/ttyS2 0 crw-rw
1 uucp dialout 4, 67 Oct 13 1997 /dev/ttyS3 ||
Si no hay ningún dispositivo con número mayor 4 y número menor 65, necesitará crear uno. Pase a modo superusuario y escriba:

|| # mknod -m 666 /dev/ttyS1 c 4 65 # chown uucp.dialout /dev/ttyS1 ||
Según la distribución de GNU/Linux, se emplean estrategias sutilmente distintas para determinar quién debe ser propietario de los dispositivos serie. A veces son propiedad de root, y en otros casos pertenecen a otro usuario, como uucp en nuestro ejemplo. Las distribuciones más modernas tienen un grupo especial para dispositivos que realizan llamadas salientes, y todo usuario que pueda emplearlos estará añadido a este grupo.

Hay quien sugiere crear /dev/modem como un enlace simbólico al dispositivo de módem para que los usuarios ocasionales no tengan que recordar el menos intuitivo ttyS1. Pero no se puede utilizar modem en un programa y el fichero real de dispositivo en otro. Sus ficheros de bloqueo tendrían nombres diferentes, y esto haría fallar al mecanismo de bloqueo.
Tabla de contenidos
  1. 1 - Prefacio
  2. 2 - Fuentes de información
  3. 3 - Estandares de Sistemas de Ficheros
  4. 4 - Estandar del Sistema Basico Linux
  5. 5 - Acerca de este Libro
  6. 6 - La Versión Oficial Impresa
  7. 7 - Envío de Cambios
  8. 8 - Agradecimientos
  9. 9 - La traducción al español
  10. 10 - Historia del trabajo en redes
  11. 11 - Redes TCP/IP
  12. 12 - Redes UUCP
  13. 13 - Redes con GNU/Linux
  14. 14 - Mantenimiento del Sistema
  15. 15 - Interfaces de red
  16. 16 - Direcciones IP
  17. 17 - Resolución de direcciones
  18. 18 - Encaminamiento IP
  19. 19 - El Internet Control Message Protocol
  20. 20 - Resolución de nombres de puesto
  21. 21 - Configuración del hardware de red
  22. 22 - Configuracion del núcleo
  23. 23 - Un vistazo a los dispositivos de red de Linux
  24. 24 - Instalación de una Ethernet
  25. 25 - El controlador PLIP
  26. 26 - Los controladores PPP y SLIP
  27. 27 - Otros tipos de redes
  28. 28 - Configuración del Hardware Serie
  29. 29 - Software de Comunicaciones para Enlaces con Módem
  30. 30 - Introducción a los Dispositivos Serie
  31. 31 - Acceso a Dispositivos Serie
  32. 32 - Hardware Serie
  33. 33 - Uso de las Utilidades de Configuración
  34. 34 - Dispositivos Serie y el Indicador login: (ingreso)
  35. 35 - Configuración del Protocolo TCP/IP
  36. 36 - Montando el Sistema de Ficheros /proc
  37. 37 - Instalación de los ejecutables
  38. 38 - Establecimiento del Nombre de la Maquina
  39. 39 - Asignación de una dirección IP
  40. 40 - Creación de Subredes
  41. 41 - Preparación de los ficheros hosts y networks
  42. 42 - Interfaz Configuración de la Interfaz para IP
  43. 43 - Todo sobre ifconfig
  44. 44 - La orden netstat
  45. 45 - Comprobación de las tablas ARP
  46. 46 - El servicio de nombres y su configuración
  47. 47 - La biblioteca de resolución
  48. 48 - Cómo funciona el DNS
  49. 49 - Ejecución de named (I)
  50. 50 - Ejecución de named (II)
  51. 51 - Ejecución de named (III)
  52. 52 - SLIP: IP por línea serie
  53. 53 - Requerimientos Generales para SLIP o PPP
  54. 54 - Operación de SLIP
  55. 55 - Trabajando con direcciones de red IP privadas
  56. 56 - Usando dip
  57. 57 - Funcionamiento en modo Servidor
  58. 58 - El Protocolo Punto-a-Punto
  59. 59 - PPP en Linux
  60. 60 - Ejecutando pppd
  61. 61 - Usando los Ficheros de Opciones
  62. 62 - Realización de la Llamada con chat
  63. 63 - Opciones de Configuración IP
  64. 64 - Opciones de Control de Enlace
  65. 65 - Consideraciones de Seguridad General
  66. 66 - Autentificación con PPP
  67. 67 - Depurando su configuración de PPP
  68. 68 - Configuraciones avanzadas de PPP
  69. 69 - Cortafuegos de TCP/IP
  70. 70 - Métodos de ataque
  71. 71 - ¿Qué es un cortafuegos?
  72. 72 - ¿Qué es el filtrado de IP?
  73. 73 - Configuración de Linux como cortafuegos
  74. 74 - Las tres formas posibles de filtrado
  75. 75 - El cortafuegos original de IP (núcleos 2.0)
  76. 76 - Cortafuegos 'IP Chains' (núcleos 2.2) (I)
  77. 77 - Cortafuegos 'IP Chains' (núcleos 2.2) (II)
  78. 78 - Netfilter e 'IP Tables' (Núcleos 2.4)
  79. 79 - Manipulación de los bits de TOS
  80. 80 - Comprobación de una configuración del cortafuegos
  81. 81 - Un ejemplo de configuración del cortafuegos
  82. 82 - Contabilidad IP
  83. 83 - Configurando el núcleo para contabilidad IP
  84. 84 - Configurando Contabilidad IP
  85. 85 - Utilizando los resultados de contabilidad IP
  86. 86 - Restableciendo contadores
  87. 87 - Vaciando las reglas
  88. 88 - Colección pasiva de datos de contabilidad
  89. 89 - Enmascaramiento IP yTraducción de Direcciones de Red
  90. 90 - Efectos Laterales y Beneficios Accesorios
  91. 91 - Configuración del Núcleopara enmascaramiento IP
  92. 92 - Configuración del enmascaramiento IP
  93. 93 - Manipulación del Servicio de Nombres
  94. 94 - Mas sobre la traducción de direcciones de red
  95. 95 - Características Importantesde Redes
  96. 96 - El Super Servidor inetd
  97. 97 - La Facilidad de Control de Acceso tcpd
  98. 98 - Los Ficheros de Servicios Y Protocolos
  99. 99 - Llamada a Procedimiento Remoto
  1. 100 - Configurando el Registro y Ejecución Remotos
  2. 101 - El Sistema de Información de Red (NIS)
  3. 102 - Familiarizandose con NIS
  4. 103 - NIS Versus NIS+
  5. 104 - La Parte Cliente en NIS
  6. 105 - Ejecutando un Servidor NIS
  7. 106 - Seguridad en el Servidor NIS
  8. 107 - Configurando un Cliente NIS con la libc de GNU
  9. 108 - Escogiendo los Mapas Correctos
  10. 109 - Utilizando los Mapas passwd y group
  11. 110 - Usando NIS con Soporte de Contraseñas Ocultas
  12. 111 - El Sistema de Ficherosde Red
  13. 112 - Preparando NFS
  14. 113 - Montando un Volumen NFS
  15. 114 - Los Demonios NFS
  16. 115 - El Fichero exports
  17. 116 - Soporte para NFSv2 Basado en Núcleo
  18. 117 - Soporte para NFSv2 Basado en Núcleo
  19. 118 - IPX y el Sistema de Ficheros NCP
  20. 119 - Xerox, Novell, e Historia
  21. 120 - IPX y Linux
  22. 121 - Configurando el núcleo para IPX y NCPFS
  23. 122 - Configurando las interfaces IPX
  24. 123 - Configurando un Encaminador IPX
  25. 124 - Montando un Volumen NetWare Remoto
  26. 125 - Explorando Algunas de las Otras Herramientas IPX
  27. 126 - Imprimiendo en una Cola de Impresión NetWare
  28. 127 - Emulación del Servidor NetWare
  29. 128 - Administración deTaylor UUCP
  30. 129 - Transferencias UUCP y ejecución remota
  31. 130 - Ficheros de configuración de UUCP (I)
  32. 131 - Ficheros de configuración de UUCP (II)
  33. 132 - Controlar el acceso a las prestaciones de UUCP
  34. 133 - Configuración de su sistema para recibir llamadas
  35. 134 - Protocolos UUCP de bajo nivel
  36. 135 - Resolución de problemas
  37. 136 - Ficheros de registro y depuración
  38. 137 - Correo Electrónico
  39. 138 - ¿Qué es un mensaje de correo?
  40. 139 - ¿Cómo se reparte el correo?
  41. 140 - Direcciones de correo electrónico
  42. 141 - ¿Cómo funciona el encaminamiento del correo?
  43. 142 - como configurar elm
  44. 143 - Sendmail
  45. 144 - Instalando Sendmail
  46. 145 - Un Vistazo a los Ficheros de Configuración
  47. 146 - Los Ficheros sendmail.cf y sendmail.mc
  48. 147 - Generando el Fichero sendmail.cf
  49. 148 - Interpretación de las Reglas de Escritura - Reescritura
  50. 149 - Configuración de las Opciones de Sendmail
  51. 150 - Algunas configuraciones útiles para Sendmail
  52. 151 - Probando la Configuración
  53. 152 - Ejecución de Sendmail
  54. 153 - Pistas y Trucos
  55. 154 - Poner Exim en marcha
  56. 155 - Ejecución de Exim
  57. 156 - Si el correo no llega a su destino
  58. 157 - Compilar Exim
  59. 158 - Modos de Envío de Correo
  60. 159 - Otras opciones de configuración
  61. 160 - Encaminamiento y envío de mensajes
  62. 161 - Protegerse contra el "spam"
  63. 162 - Instalación UUCP
  64. 163 - Noticias
  65. 164 - Historia de Usenet
  66. 165 - Pero, ¿qué es Usenet después de todo?
  67. 166 - ¿Cómo maneja Usenet las noticias?
  68. 167 - C-News
  69. 168 - Enviando noticias
  70. 169 - Instalación
  71. 170 - El fichero sys
  72. 171 - El Fichero active
  73. 172 - Procesar Artículos por Lotes
  74. 173 - Caducando Noticias
  75. 174 - Ficheros Diversos
  76. 175 - Mensajes de Control
  77. 176 - C-News en un Entorno NFS
  78. 177 - Herramientas y Tareas de Mantenimiento
  79. 178 - NNTP y el Demonio nntpd
  80. 179 - El Protocolo NNTP
  81. 180 - Instalar el servidor NNTP
  82. 181 - Restringir el acceso con NNTP
  83. 182 - Autorización NNTP
  84. 183 - Interacción de nntpd con C News
  85. 184 - Noticias de Internet
  86. 185 - Algunos aspectos internos de INN
  87. 186 - INN y los lectores de noticias
  88. 187 - Instalación de INN
  89. 188 - Configuración de INN: Configuración Basica
  90. 189 - INN: Ficheros de Configuración (I)
  91. 190 - INN: Ficheros de Configuración (II)
  92. 191 - Activación de INN
  93. 192 - Uso de INN: El programa ctlinnd
  94. 193 - Configuración del lector de noticias
  95. 194 - Configuración de tin
  96. 195 - Configuración de trn
  97. 196 - Configuración de nn
  98. 197 - Apéndice A. Red de ejemplo:La Cervecera Virtual
  99. 198 - Apéndice B. Configuraciones de cableado útiles
Autor y licencia de 'Guía de Administración de Redes con Linux - Acceso a Dispositivos Serie'
Olaf Kirch y Terry Dawson Extraído de: http://es.tldp.org/Manuales-LuCAS/GARL2/garl2/ GNU Free Documentation License
Licencia GNU Free Documentation License: http://www.es.gnu.org/licencias/fdles.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.

Wikis relacionados con 'Guía de Administración de Redes con Linux - Acceso a Dispositivos Serie'

Hablar de redes de ordenadores siempre implica hablar de Unix. Por supuesto, Unix no es... Más »
Este Cómo es la base para entender la evolución de las capacidades de Linux para... Más »
Todo sobre la instalación y configuración de terminales en sistemas Linux, desde diagramas y técnicas... Más »
Los dispositivos móviles como teléfonos celulares y asistentes personales digitales (PDAs) se están conectando a... Más »
A lo largo de este trabajo se va a intentar hacer un repaso de los... Más »
Gente Wiki
Juan Galindo
Soy ingeniero y trabajo para el gobierno mexicano, así como en la universidad nacional autonoma de méxico (unam) como profesor,...
Mantenimiento de productos electrónicos, Electrónica,...
Carlos Monsalvo
Soy profesor enel componete Formación Ciudadna en III etapa es decir bacillerato. Soy facilitador de formación de docentes el...
Cine
Marjorie
Soy profesora de ingles y quisiera compartir con ustedes experiencias de enseñanza.
Raul Gonzalez Allen
Dirijo una ong llamada fundacion ecocultura y desde 1990, estamos en temas audiovisuales, documentales y mensajes de sensibilidad. Los emitimos...
Wilder Augusto Delgado Quispe
Soy docente de la i. E. Santa magdalena sofía de la especialidad de biología química. Además estudio en la universidad...
Sergio Rueda
Investigador interesado en reflexionar en el proceso de cambio de la educación a futuro. Sociólogo y especialista en Sistemas de Información...
Suscribirse
¿Estás seguro de que deseas eliminar este capítulo?