Información adicional

Transcripción

Información adicional
SUSE Linux
Referencia
www.novell.com
10.0
09/13/2005
Referencia
Autores: Jörg Arndt, Stefan Behlert, Frank Bodammer, James Branam, Volker Buzek, Klara Cihlarova, Stefan Dirsch, Olaf Donjak, Roman Drahtmüller, Thorsten Dubiel, Torsten Duwe, Thomas Fehr,
Stefan Fent, Werner Fink, Kurt Garloff, Joachim Gleißner, Carsten Groß, Andreas Grünbacher,
Berthold Gunreben, Franz Hassels, Andreas Jaeger, Jana Jaeger, Klaus Kämpf, Andi Kleen, Hubert
Mantel, Lars Marowsky-Bree, Chris Mason, Johannes Meixner, Lars Müller, Matthias Nagorni, Anas
Nashif, Siegfried Olschner, Edith Parzefall, Peter Pöml, Thomas Renninger, Hannes Reinecke, Thomas
Rölz, Heiko Rommel, Marcus Schäfer, Thomas Schraitle, Klaus Singvogel, Hendrik Vogelsang, Klaus
G. Wagner, Rebecca Walter, Christian Zoz
Esta publicación es propiedad intelectual de Novell Inc.
Su contenido puede duplicarse, ya sea en su totalida o en parte, siempre que haya un símbolo de
copyright bien visible en cada copia.
Toda la información recogida en esta publicación se ha compilado prestando toda la atención posible
al más mínimo detalle. Sin embargo, esto no garantiza una precisión total. Ni SUSE LINUX GmbH,
los autores ni los traductores serán responsables de los posibles errores o las consecuencias que de
ellos pudieran derivarse.
Muchas de las descripciones de software y hardware que aparecen en esta publicación son marcas
comerciales registradas. Todos los nombres comerciales están sujetos a restricciones de copyright y
pueden ser marcas comerciales registradas. SUSE LINUX GmbH es fiel a la ortografía del fabricante.
Los nombres de productos y marcas comerciales que aparecen en esta publicación (con o sin una notación específica) están asimismo sujetos a leyes de protección comercial y de marcas comerciales y
pueden, por tanto, tener restricciones de copyright.
Si tiene alguna sugerencia o comentario, diríjalas a [email protected].
Tabla de contenidos
Acerca de esta guía
xv
parte I Escenarios de implantación avanzados
19
1 Instalación remota
21
1.1
1.2
1.3
1.4
1.5
Situaciones de instalación para la instalación remota . . . . . . .
Configuración del servidor que almacena las fuentes de la instalación
Preparación del arranque del sistema de destino . . . . . . . . .
Arranque del sistema de destino para la instalación . . . . . . .
Monitorización del proceso de instalación . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 Configuración avanzada de disco
2.1
2.2
2.3
21
31
41
51
56
61
Nombres de dispositivos permanentes para dispositivos SCSI . . . . . .
Configuración de LVM . . . . . . . . . . . . . . . . . . . . . . .
Configuración de RAID de software . . . . . . . . . . . . . . . . .
61
62
69
parte II Internet
75
3 Navegador Web Konqueror
77
3.1
3.2
3.3
3.4
3.5
3.6
Navegación mediante pestañas . . . .
Guardado de gráficos y de páginas Web
Palabras clave de Internet . . . . . .
Favoritos . . . . . . . . . . . . .
Java y JavaScript . . . . . . . . . .
Información adicional . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
78
79
79
80
81
82
4 Firefox
4.1
4.2
4.3
4.4
4.5
4.6
4.7
Navegación por sitios Web .
Búsqueda de información .
Gestión de marcadores . .
Uso del gestor de descargas
Personalización de Firefox .
Impresión desde Firefox . .
Información adicional . . .
83
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
5 Linphone: VoIP para escritorios Linux
5.1
5.2
5.3
5.4
5.5
5.6
5.7
5.8
93
Configuración de Linphone . . . . . . . . . . . . . . . . . . . . .
Comprobación de Linphone . . . . . . . . . . . . . . . . . . . .
Realización de una llamada . . . . . . . . . . . . . . . . . . . .
Respuesta a una llamada . . . . . . . . . . . . . . . . . . . . .
Utilización de la libreta de direcciones . . . . . . . . . . . . . . .
Resolución de problemas . . . . . . . . . . . . . . . . . . . . .
Glosario . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Información adicional . . . . . . . . . . . . . . . . . . . . . .
6 Cifrado con KGpg
6.1
6.2
6.3
6.4
6.5
6.6
Generación de pares de claves nuevos . . . . .
Exportación de claves públicas . . . . . . . . .
Importación de claves . . . . . . . . . . . .
Cuadro de diálogo Key Server (Servidor de claves)
Cifrado de textos y archivos . . . . . . . . . .
Información adicional . . . . . . . . . . . .
93
99
100
101
102
102
104
105
107
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
107
109
110
111
114
116
parte III Multimedia
117
7 Sonido en Linux
119
7.1
7.2
7.3
7.4
7.5
Mezcladores . . . . . . . . . . . . . . . . .
Reproductores multimedia . . . . . . . . . . .
CDs: reproducción y extracción de contenido . . .
Grabación en disco duro con Audacity . . . . . .
Grabación y reproducción directas de archivos WAV
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8 Televisión, vídeo, radio y cámara web
8.1
8.2
8.3
iv
83
85
85
88
88
91
92
Uso de motv para ver la televisión . . . . . . . . . . . . . . . . .
Compatibilidad con el teletexto . . . . . . . . . . . . . . . . . .
Cámaras web y motv . . . . . . . . . . . . . . . . . . . . . . .
119
125
131
136
140
143
143
146
146
8.4
8.5
La revista de televisión para equipos nxtvepg . . . . . . . . . . . . .
Uso de xawtv4 para ver difusiones digitales de vídeo . . . . . . . . .
9 K3b: Grabación de CDs o DVD
9.1
9.2
9.3
9.4
9.5
9.6
Creación de un CD de datos . . . . .
Creación de un CD de audio . . . . .
Copia de un CD o DVD . . . . . . .
Escritura de imágenes ISO . . . . . .
Creación de un CD o DVD multisesión
Información adicional . . . . . . .
147
149
153
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . .
153
156
157
158
159
160
parte IV Oficina
161
1 0 El paquete de ofimática OpenOffice.org
163
10.1
10.2
10.3
10.4
10.5
10.6
Compatibilidad con otras aplicaciones ofimáticas .
Procesamiento de textos con Writer . . . . . .
Introducción a Calc . . . . . . . . . . . . .
Introducción a Impress . . . . . . . . . . . .
Introducción a Base . . . . . . . . . . . . .
Información adicional . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 1 Evolution: un programa de calendario y correo electrónico
11.1
11.2
11.3
11.4
11.5
11.6
11.7
11.8
12.2
12.3
12.4
12.5
12.6
12.7
.
.
.
.
.
.
.
.
.
.
.
.
164
165
169
169
170
170
173
Importación de mensajes de correo electrónico desde otros programas de correo
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
173
Descripción general de Evolution . . . . . . . . . . . . . . . . . .
174
Correo . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
176
Contactos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
180
Calendarios . . . . . . . . . . . . . . . . . . . . . . . . . . .
182
Sincronización de datos con un dispositivo portátil . . . . . . . . . .
184
Evolution para usuarios de GroupWise . . . . . . . . . . . . . . .
184
Información adicional . . . . . . . . . . . . . . . . . . . . . .
185
1 2 Kontact: un programa de calendario y correo electrónico
12.1
.
.
.
.
.
.
187
Importación de mensajes de correo electrónico desde otros programas de correo
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
187
Descripción general de Kontact . . . . . . . . . . . . . . . . . .
188
Correo electrónico . . . . . . . . . . . . . . . . . . . . . . . .
191
Contactos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
196
Calendario . . . . . . . . . . . . . . . . . . . . . . . . . . .
199
Sincronización de datos con un dispositivo portátil . . . . . . . . . .
201
Kontact para usuarios de GroupWise . . . . . . . . . . . . . . . .
202
v
12.8
Información adicional . . . . . . . . . . . . . . . . . . . . . .
203
1 3 Sincronización de un equipo portátil mediante KPilot
13.1
13.2
13.3
13.4
13.5
Canales utilizados por KPilot . . . . . . . . .
Configuración de la conexión portátil . . . . .
Configuración del canal KAddressBook . . . .
Gestión de tareas pendientes y acontecimientos
Funcionamiento de KPilot . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
205
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 4 Utilización de Beagle
14.1
14.2
213
Indexación de datos . . . . . . . . . . . . . . . . . . . . . . .
Búsqueda de datos . . . . . . . . . . . . . . . . . . . . . . . .
214
216
parte V Gráficos
219
1 5 Cámaras digitales y Linux
221
15.1
15.2
15.3
15.4
15.5
15.6
Conexión con la cámara
Acceso a la cámara . . .
Uso de Konqueror . . .
Uso de Digikam . . . .
Uso de f-spot . . . . .
Información adicional .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
1 6 Kooka: una aplicación de escaneo
16.1
16.2
16.3
16.4
16.5
Vista previa . .
Escaneo final .
Menús . . . .
Galería . . . .
Reconocimiento
. . .
. . .
. . .
. . .
óptico
. . . . . .
. . . . . .
. . . . . .
. . . . . .
de caracteres
17.1
17.2
17.3
17.4
17.5
17.6
Formatos de gráficos . .
Inicio de GIMP . . . . .
Primeros pasos con GIMP
Guardado de imágenes .
Impresión de imágenes .
Información adicional .
.
.
.
.
.
.
.
.
.
.
221
222
223
223
233
240
241
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 7 Manejo de gráficos con GIMP
vi
206
207
208
208
210
242
243
244
245
246
249
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
249
250
252
254
256
257
parte VI Movilidad
259
1 8 Informática móvil con Linux
261
18.1
18.2
18.3
18.4
Equipos portátiles . . . . . .
Hardware móvil . . . . . . .
Teléfonos móviles y dispositivos
Información adicional . . . .
. .
. .
PDA
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1 9 PCMCIA
19.1
19.2
271
Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Software . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 0 Gestión de perfiles de la configuración del sistema
20.1
20.2
20.3
20.4
20.5
20.6
20.7
Terminología . . . . . . . . . . . . . . . . . .
Utilización del gestor de perfiles de YaST . . . . . .
Configuración de SCPM mediante la línea de comando
Uso del applet selector de perfiles . . . . . . . . .
Resolución de problemas . . . . . . . . . . . . .
Selección de un perfil al arrancar el sistema . . . . .
Información adicional . . . . . . . . . . . . . .
.
.
.
.
.
.
.
Funciones de ahorro de energía . . .
APM . . . . . . . . . . . . . . .
ACPI . . . . . . . . . . . . . . .
Detención del disco duro . . . . . .
Paquete powersave . . . . . . . . .
Módulo de gestión de energía de YaST
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
274
274
278
282
282
283
284
285
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 2 Comunicación inalámbrica
22.1
22.2
22.3
271
272
273
2 1 Gestión de energía
21.1
21.2
21.3
21.4
21.5
21.6
261
268
269
270
LAN inalámbrica . . . . . . . . . . . . . . . . . . . . . . . . .
Bluetooth . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Transmisión de datos mediante infrarrojos . . . . . . . . . . . . . .
286
287
289
296
298
307
313
313
324
336
parte VII Administración
339
2 3 Seguridad en Linux
341
23.1
Enmascaramiento y cortafuegos . . . . . . . . . . . . . . . . . .
341
vii
23.2
23.3
23.4
SSH: trabajar de forma segura en red . . . . . . . . . . . . . . . .
Cifrado de particiones y archivos . . . . . . . . . . . . . . . . . .
Seguridad y confidencialidad . . . . . . . . . . . . . . . . . . .
2 4 Listas de control de acceso en Linux
24.1
24.2
24.3
24.4
24.5
Ventajas de las ACL . . . . . . . . . .
Definiciones . . . . . . . . . . . . . .
Gestión de las ACL . . . . . . . . . . .
Compatibilidad de ACL con las aplicaciones
Información adicional . . . . . . . . .
377
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
2 5 Utilidades de monitorización del sistema
25.1
25.2
25.3
25.4
25.5
25.6
25.7
25.8
25.9
25.10
25.11
25.12
25.13
25.14
25.15
25.16
25.17
25.18
25.19
25.20
25.21
25.22
353
359
363
Lista de archivos abiertos: lsof . . . . . . . . . . . . .
Usuarios que acceden a los archivos: fuser . . . . . . . .
Propiedades del archivo: stat . . . . . . . . . . . . . .
Dispositivos USB: lsusb . . . . . . . . . . . . . . . .
Información acerca de un dispositivo SCSI: scsiinfo . . .
Procesos: top . . . . . . . . . . . . . . . . . . . . .
Lista de procesos: ps . . . . . . . . . . . . . . . . . .
Árbol de procesos: pstree . . . . . . . . . . . . . . .
Usuarios y acciones w . . . . . . . . . . . . . . . . . .
Utilización de la memoria: free . . . . . . . . . . . . .
Buffer de anillo del núcleo: dmesg . . . . . . . . . . . .
Sistemas de archivos y su utilización: mount, df y du . . . .
Sistema de archivos /proc . . . . . . . . . . . . . . .
vmstat, iostat y mpstat . . . . . . . . . . . . . .
procinfo . . . . . . . . . . . . . . . . . . . . . .
Recursos PCI: lspci . . . . . . . . . . . . . . . . . .
Llamadas del sistema para ejecutar un programa: strace . .
Llamadas de la biblioteca para ejecutar un programa: ltrace
Especificación de la biblioteca necesaria: ldd . . . . . . .
Información adicional acerca de los binarios ELF . . . . . .
Comunicación entre procesos: ipcs . . . . . . . . . . .
Medición del tiempo con time . . . . . . . . . . . . .
377
378
379
388
388
389
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
parte VIII Sistema
390
391
391
392
393
393
394
396
396
397
398
398
399
401
402
403
404
405
405
406
407
407
409
2 6 Aplicaciones de 32 bits y de 64 bits en un entorno de sistema de 64
bits
411
26.1
26.2
viii
Asistencia sobre tiempo de ejecución . . . . . . . . . . . . . . . .
Desarrollo de software . . . . . . . . . . . . . . . . . . . . . .
411
412
26.3
26.4
Compilación de software en plataformas de doble arquitectura . . . . .
Especificaciones de núcleo . . . . . . . . . . . . . . . . . . . .
2 7 Cómo trabajar con la shell
27.1
27.2
27.3
27.4
Uso de la shell Bash en la línea de comando
Usuarios y permisos de acceso . . . . . .
Comandos importantes de Linux . . . . .
El editor vi . . . . . . . . . . . . . .
415
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 8 Arranque y configuración de un sistema Linux
28.1
28.2
28.3
Proceso de arranque de Linux . . . . . . . . . . . . . . . . . . .
Proceso init . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuración del sistema mediante /etc/sysconfig . . . . . . . . . .
Gestión de arranque . . . . . . . . . . . . .
Selección de un cargador de arranque . . . . .
Arranque con GRUB . . . . . . . . . . . . .
Configuración del Cargador de arranque con YaST
Desinstalación del cargador de arranque de Linux .
Crear un CD de arranque . . . . . . . . . . .
Pantalla gráfica de SUSE . . . . . . . . . . . .
Solución de problemas . . . . . . . . . . . .
Información adicional . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Información acerca de paquetes especiales de software
Consolas virtuales . . . . . . . . . . . . . . . .
Distribución del teclado . . . . . . . . . . . . . .
Ajustes de idioma y país . . . . . . . . . . . . .
Flujo de trabajo del sistema de impresión . . . .
Métodos y protocolos de conexión de impresoras
Instalación del software . . . . . . . . . . . .
Configuración de la impresora . . . . . . . . .
Configuración para aplicaciones . . . . . . . .
Funciones especiales en SUSE Linux . . . . . . .
Solución de problemas . . . . . . . . . . . .
470
471
471
482
488
488
489
490
492
493
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 1 Funcionamiento de la impresora
31.1
31.2
31.3
31.4
31.5
31.6
31.7
451
455
464
469
3 0 Funciones especiales de SUSE Linux
30.1
30.2
30.3
30.4
415
426
433
445
451
2 9 Cargador de arranque
29.1
29.2
29.3
29.4
29.5
29.6
29.7
29.8
29.9
413
414
493
501
501
502
507
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
509
509
510
511
517
518
524
ix
3 2 Sistema HotPlug
32.1
32.2
32.3
32.4
32.5
32.6
Dispositivos e interfaces . . . . . .
Eventos HotPlug . . . . . . . . .
Configuración del dispositivo HotPlug
Carga de módulos automática . . .
Guión de arranque ColdPlug . . . .
Análisis de errores . . . . . . . .
533
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 3 Nodos de dispositivo dinámicos con udev
33.1
33.2
33.3
33.4
33.5
541
Creación de reglas . . . . . . . . . . . . . . . . . . . . . .
Sustitución del espacio reservado . . . . . . . . . . . . . . .
Concordancia de patrones en claves . . . . . . . . . . . . . .
Selección de claves . . . . . . . . . . . . . . . . . . . . . .
Nombres permanentes para dispositivos de almacenamiento masivos
.
.
.
.
.
.
.
.
.
.
3 4 Sistemas de archivos en Linux
34.1
34.2
34.3
34.4
34.5
Glosario . . . . . . . . . . . . . .
Los sistemas de archivos más importantes
Otros sistemas de archivos soportados .
Soporte de archivos grandes en Linux . .
Información adicional . . . . . . . .
Configuración de X11 con SaX2 . . .
Optimización de la configuración de X
Instalación y configuración de fuentes
Configuración 3D de OpenGL . . . .
. . . .
en Linux
. . . .
. . . .
. . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Estructura de archivos de configuración PAM . . . . . . . . . . . . .
Configuración PAM para sshd . . . . . . . . . . . . . . . . . . .
Configuración de módulos PAM . . . . . . . . . . . . . . . . . .
Información adicional . . . . . . . . . . . . . . . . . . . . . .
x
Instalación de Xen . . . . . . . . . .
Instalación de dominios . . . . . . . .
Configuración de dominios invitados Xen
Inicio y control de dominios Xen . . . .
561
563
569
575
579
3 7 Virtualización mediante Xen
37.1
37.2
37.3
37.4
547
548
555
557
558
561
3 6 Autenticación con PAM
36.1
36.2
36.3
36.4
542
543
543
543
545
547
3 5 Sistema X Window
35.1
35.2
35.3
35.4
534
535
535
537
538
538
580
582
584
586
589
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
591
592
596
597
37.5
Información adicional . . . . . . . . . . . . . . . . . . . . . .
598
parte IX Servicios
601
3 8 Trabajo en red básico
603
38.1
38.2
38.3
38.4
38.5
38.6
Direcciones IP y encaminamiento . . . . . . . . .
IPv6: Internet de la próxima generación . . . . . .
Resolución de nombres . . . . . . . . . . . . .
Configuración de una conexión de red con YaST . .
Configuración manual de una conexión de red . . .
Uso de smpppd como asistente de acceso telefónico
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3 9 Servicios SLP en la red
39.1
39.2
39.3
39.4
647
Registro de sus propios servicios . . . . . . . . . . . . . . . . . .
Interfaces SLP en SUSE Linux . . . . . . . . . . . . . . . . . . . .
Activación de SLP . . . . . . . . . . . . . . . . . . . . . . . .
Información adicional . . . . . . . . . . . . . . . . . . . . . .
4 0 DNS (Domain Name System)
40.1
40.2
40.3
40.4
40.5
40.6
40.7
40.8
40.9
Introducción a DNS . . . . . . . . . . .
Configuración con YaST . . . . . . . . . .
Iniciar el servidor de nombres BIND . . . .
El archivo de configuración /etc/named.conf .
Sintaxis de los archivos de zona . . . . . .
Actualización dinámica de los datos de zonas
Transacciones seguras . . . . . . . . . .
Seguridad DNS . . . . . . . . . . . . .
Información adicional . . . . . . . . . .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
Configuración de servidores NIS mediante YaST . . . . . . . . . . .
Configuración de clientes NIS . . . . . . . . . . . . . . . . . . .
Importación de sistemas de archivos con YaST
Importación manual de sistemas de archivos .
Exportación de sistemas de archivos con YaST
Exportación manual de sistemas de archivos .
651
651
659
661
666
670
670
672
672
673
4 2 Uso compartido de sistemas de archivos con NFS
42.1
42.2
42.3
42.4
647
648
649
649
651
4 1 Uso de NIS
41.1
41.2
606
609
619
620
631
643
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
673
678
681
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
681
682
683
684
xi
4 3 DHCP
43.1
43.2
43.3
43.4
687
Configuración de un servidor DHCP con YaST
Paquetes de software DHCP . . . . . . . .
El servidor DHCP dhcpd . . . . . . . . . .
Información adicional . . . . . . . . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
4 4 Sincronización de la hora con xntp
44.1
44.2
44.3
697
Configuración de un cliente NTP con YaST . . . . . . . . . . . . . .
Configuración de xntp en la red . . . . . . . . . . . . . . . . . .
Configuración de un reloj local de referencia . . . . . . . . . . . . .
4 5 LDAP: un servicio de directorio
45.1
45.2
45.3
45.4
45.5
45.6
45.7
LDAP frente a NIS . . . . . . . . . . . . . . . .
Estructura de un árbol de directorios de LDAP . . . .
Configuración del servidor con slapd.conf . . . . . .
Gestión de datos en el directorio LDAP . . . . . . .
El cliente LDAP de YaST . . . . . . . . . . . . . .
Configuración de los usuarios y grupos LDAP en YaST .
Información adicional . . . . . . . . . . . . . .
Prefacio y terminología .
Instalación . . . . . .
Configuración . . . . .
Hosts virtuales . . . . .
Módulos de Apache . .
Seguridad . . . . . . .
Resolución de problemas
Información adicional .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
. . . . . . . .
xii
705
706
709
714
718
726
728
731
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
4 7 Sincronización de archivos
47.1
47.2
47.3
47.4
47.5
47.6
47.7
697
701
701
703
4 6 El servidor Web Apache
46.1
46.2
46.3
46.4
46.5
46.6
46.7
46.8
688
692
692
696
Software de sincronización de datos .
Criterios para la elección de programa
Introducción a Unison . . . . . . .
Introducción a CVS . . . . . . . . .
Introducción a Subversion . . . . . .
Introducción a rsync . . . . . . . .
Introducción a mailsync . . . . . . .
731
734
741
757
761
773
775
776
779
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
779
782
786
788
791
795
796
4 8 Samba
48.1
48.2
48.3
48.4
48.5
Índice
Configuración del servidor . . . . . . . .
Samba como servidor de inicio de sesión . .
Configuración de un servidor Samba con YaST
Configuración de los clientes . . . . . . .
Optimización . . . . . . . . . . . . . .
801
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
803
807
809
811
812
815
xiii
Acerca de esta guía
Este manual ofrece una descripción general de SUSE Linux. Está destinado, principalmente, a administradores de sistemas, y a personas que hacen de él un uso doméstico
y que tienen conocimientos básicos de administración de sistemas. Este manual presenta
una selección de aplicaciones necesarias en la vida diaria y proporciona descripciones
exhaustivas de las situaciones de instalación y configuración avanzadas.
Situaciones de implantación avanzada
Aprenda a implantar SUSE Linux en entornos complejos.
Internet, Multimedia, Aplicaciones de oficina y Gráficos
Acérquese a las aplicaciones más importantes que pueden necesitar las personas
que hacen un uso doméstico de SUSE Linux.
Movilidad
Iníciese en los equipos móviles con SUSE Linux y aprenda a configurar las múltiples
opciones correspondientes a los equipos inalámbricos, la gestión de alimentación
y la gestión de perfiles.
Administración
Sepa cómo incrementar la seguridad de SUSE Linux, cómo gestionar los controles
de acceso al sistema de archivos y conozca algunas utilidades importantes para los
administradores de Linux.
Sistema
Lea una introducción de los componentes del sistema Linux y alcance una mejor
comprensión de su interacción.
Servicios
Aprenda cómo configurar varios servicios de red y de archivo que incluye SUSE
Linux.
1 Comentarios
Nos gustaría recibir sus comentarios y sugerencias acerca de este manual y del resto
de la documentación que se adjunta con este producto. Utilice la función User Comments
(Comentarios del usuario) que se encuentra en la parte inferior de cada página de docu-
mentación en línea; alternativamente, vaya a http://www.novell.com/
documentation/feedback.html y escriba allí sus comentarios.
2 Documentación adicional
Hay otros manuales de este producto SUSE Linux disponibles, bien en línea, en
http://www.novell.com/documentation/, bien en el sistema instalado, en
/usr/share/doc/manual/:
Inicio
Esta guía cubre los primeros pasos que se dan con SUSE Linux. En http://www
.novell.com/documentation/suse10/, puede encontrarse una versión
en línea de este documento.
Guía de instalación y de inicio rápido de Novell AppArmor Powered by Immunix 1.2
Esta guía ofrece una descripción general del procedimiento de instalación inicial
del producto AppArmor. En http://www.novell.com/documentation/
apparmor/, puede encontrarse una versión en línea de este documento.
Guía de administración de Novell AppArmor Powered by Immunix 1.2
Esta guía contiene información exhaustiva sobre el uso de AppArmor en su entorno.
En http://www.novell.com/documentation/apparmor/, puede encontrarse una versión en línea de este documento.
3 Convenciones de la documentación
En este manual se utilizan las siguientes convenciones tipográficas:
• /etc/passwd: nombres de archivos y de directorios.
• espacio reservado: se sustituye espacio reservado por el valor real.
• PATH: variable de entorno PATH.
• ls, --help: comandos, opciones y parámetros.
• usuario: usuarios o grupos.
xvi
•
Alt
,
Alt
+
F1
: tecla o combinación de teclas que pulsar.
• Archivo, Archivo → Guardar como: elementos de menú y botones.
• Pingüinos bailarines (capítulo Pingüinos, ↑Referencia): referencia a un capítulo
en otro libro.
4 Agradecimientos
Con una buena dosis de compromiso voluntario, los desarrolladores de Linux cooperan
a escala mundial para contribuir al crecimiento de Linux. Agradecemos el esfuerzo de
todos ellos ya que, sin él, esta distribución no habría visto la luz. Hacemos una mención
especial a Frank Zappa y Pawar. Y, por supuesto, un agradecimiento especial a Linus
Torvalds.
Esperamos que lo pasen bien,
El equipo de SUSE
Acerca de esta guía
xvii
Parte I. Escenarios de
implantación avanzados
1
Instalación remota
SUSE Linux se puede instalar de varias maneras diferentes. Además de la instalación
habitual a partir de CDs o DVDs descrita en el Capítulo Instalación mediante YaST
(↑Inicio), es posible seleccionar diversos métodos basados en red o incluso utilizar un
método sin intervención física alguna para instalar SUSE Linux.
Más adelante se ofrece una introducción a cada método con dos listas de comprobación,
una con los requisitos previos y otra en la que se describe el procedimiento básico. A
continuación se incluyen más detalles de las técnicas utilizadas en cada situación de
instalación.
NOTA
En las próximas secciones, el sistema que almacenará la nueva instalación de
SUSE Linux aparece como sistema de destino o destino de la instalación. El
término fuente de la instalación se utiliza para todas las fuentes de datos de
instalación. Esto incluye medios físicos, tales como CD y DVD, y los servidores
de red que distribuyan los datos de instalación en la red.
1.1 Situaciones de instalación para
la instalación remota
En esta sección se describen las situaciones de instalación más habituales para la instalación remota. Para cada situación, compruebe detenidamente los requisitos previos y
Instalación remota
21
siga el procedimiento indicado. Si necesita instrucciones detalladas para un paso concreto, siga los enlaces que aparecen en cada uno de ellos.
IMPORTANTE
La configuración de X Window System no forma parte del proceso de instalación
remota. Cuando finalice la instalación, inicie sesión en el sistema de destino
como usuario root, escriba init 3 e inicie SaX2 para configurar el hardware
como se describe en la Sección 35.1, “Configuración de X11 con SaX2” (p. 561).
1.1.1 Instalación remota sencilla mediante
VNC — Configuración de red estática
Para este tipo de instalación es necesario un cierto grado de acceso físico al sistema de
destino con el fin de arrancarlo para la instalación. Una estación de trabajo remota
controla completamente la instalación propiamente dicha y usa VNC para conectarse
al programa de instalación. Es necesaria la misma intervención del usuario que en la
instalación manual descrita en el Capítulo Instalación mediante YaST (↑Inicio).
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Sistema de destino con una conexión de red en funcionamiento
• Sistema de control con una conexión de red en funcionamiento y con software para
la visualización de VNC o un navegador compatible con Java (Firefox, Konqueror,
Internet Explorer u Opera)
• Medio de arranque físico (CD o DVD) para arrancar el sistema de destino
• Direcciones IP estáticas válidas ya asignadas a la fuente de la instalación y al sistema
de control
• Dirección IP estática válida para asignar al sistema de destino
Para realizar este tipo de instalación, siga estos pasos:
22
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
2 Arranque el sistema de destino mediante el primer CD o DVD del kit de medios
de SUSE Linux.
3 Cuando aparezca la pantalla de arranque del sistema de destino, utilice el menú
de opciones de arranque para establecer las opciones de VNC apropiadas y la
dirección de la fuente de la instalación. Esto se describe con más detalle en la
Sección 1.4, “Arranque del sistema de destino para la instalación” (p. 51).
El sistema de destino inicia un entorno basado en texto y ofrece la dirección de
red y el número de pantalla mediante los cuales las aplicaciones para la visualización de VNC o navegadores pueden dirigirse al entorno de instalación gráfica.
Las instalaciones VNC se anuncian ellas mismas en OpenSLP, y pueden encontrarse usando Konqueror en modo service:// o slp://.
4 En la estación de trabajo de control, abra una aplicación para la visualización de
VNC o un navegador Web y conéctese al sistema de destino como se describe
en la Sección 1.5.1, “Instalación de VNC” (p. 57).
5 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
6 Complete la instalación.
1.1.2 Instalación remota sencilla mediante
VNC — Configuración de red
dinámica mediante DHCP
Para este tipo de instalación, es necesario un cierto grado de acceso físico al sistema
de destino con el fin de arrancarlo para la instalación. La configuración de la red se
realiza mediante DHCP. Una estación de trabajo remota controla completamente la
instalación propiamente dicha y usa VNC para conectarse al programa de instalación,
pero es necesaria la intervención del usuario para realizar la configuración.
Instalación remota
23
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Sistema de destino con una conexión de red en funcionamiento
• Sistema de control con una conexión de red en funcionamiento y con software para
la visualización de VNC o un navegador compatible con Java (Firefox, Konqueror,
Internet Explorer u Opera)
• Medio de arranque físico (CD, DVD o disco de inicio personalizado) para arrancar
el sistema de destino
• Servidor DHCP en funcionamiento que suministre las direcciones IP
Para realizar este tipo de instalación, siga estos pasos:
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
Escoja un servidor de red NFS, HTTP o FTP. Si la fuente de la instalación es
SMB, consulte la Sección 1.2.5, “Configuración de una fuente de instalación
SMB” (p. 40).
2 Arranque el sistema de destino mediante el primer CD o DVD del kit de medios
de SUSE Linux.
3 Cuando aparezca la pantalla de arranque del sistema de destino, utilice el menú
de opciones de arranque para establecer las opciones de VNC apropiadas y la
dirección de la fuente de la instalación. Esto se describe con más detalle en la
Sección 1.4, “Arranque del sistema de destino para la instalación” (p. 51).
El sistema de destino inicia un entorno basado en texto y ofrece la dirección de
red y el número de pantalla mediante los cuales las aplicaciones para la visualización de VNC o navegadores pueden dirigirse al entorno de instalación gráfica.
Las instalaciones VNC se anuncian ellas mismas en OpenSLP, y pueden encontrarse usando Konqueror en modo service:// o slp://.
4 En la estación de trabajo de control, abra una aplicación para la visualización de
VNC o un navegador Web y conéctese al sistema de destino como se describe
en la Sección 1.5.1, “Instalación de VNC” (p. 57).
24
5 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
6 Complete la instalación.
1.1.3 Instalación remota mediante VNC —
Arranque en PXE y Wake on LAN
Este tipo de instalación no requiere intervención física alguna. La máquina de destino
se inicia y arranca de manera remota. Sólo es necesaria la intervención del usuario para
la instalación propiamente dicha. Este método es adecuado para instalaciones en múltiples ubicaciones.
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Servidor TFTP
• Servidor DHCP en funcionamiento para su red
• Sistema de destino compatible con arranque en PXE, funcionamiento en red y
Wake on LAN, enchufado y conectado a la red
• Sistema de control con una conexión de red en funcionamiento y con software para
la visualización de VNC o un navegador compatible con Java (Firefox, Konqueror,
Internet Explorer u Opera)
Para realizar este tipo de instalación, siga los pasos siguientes:
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
Escoja un servidor de red NFS, HTTP o FTP o configure una fuente de instalación
SMB como se describe en la Sección 1.2.5, “Configuración de una fuente de
instalación SMB” (p. 40).
Instalación remota
25
2 Configure un servidor TFTP para que almacene una imagen de arranque que
pueda ser utilizada por el sistema de destino. Esto se describe en la Sección 1.3.2,
“Configuración de un servidor TFTP” (p. 43).
3 Configure un servidor DHCP para que suministre direcciones IP a todas las máquinas e indique la ubicación del servidor TFTP al sistema de destino. Esto se
describe en la Sección 1.3.1, “Configuración de un servidor DHCP” (p. 41).
4 Prepare el sistema de destino para arranque en PXE. Esto se describe con más
detalle en la Sección 1.3.5, “Preparación del sistema de destino para arranque en
PXE” (p. 50).
5 Comience el proceso de arranque del sistema de destino mediante Wake on LAN.
Esto se describe en la Sección 1.3.7, “Wake on LAN” (p. 50).
6 En la estación de trabajo de control, abra una aplicación para la visualización de
VNC o un navegador Web y conéctese al sistema de destino como se describe
en la Sección 1.5.1, “Instalación de VNC” (p. 57).
7 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
8 Complete la instalación.
1.1.4 Instalación remota sencilla mediante
SSH — Configuración de red estática
Para este tipo de instalación es necesario un cierto grado de acceso físico al sistema de
destino con el fin de arrancarlo para la instalación y de determinar la dirección IP del
destino de la instalación. Una estación de trabajo remota controla completamente la
instalación propiamente dicha y usa SSH para conectarse al programa de instalación.
Es necesaria la misma intervención del usuario que en la instalación manual descrita
en el Capítulo Instalación mediante YaST (↑Inicio).
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
26
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Sistema de destino con una conexión de red en funcionamiento
• Sistema de control con una conexión de red en funcionamiento y con software para
la visualización de VNC o un navegador compatible con Java (Firefox, Konqueror,
Internet Explorer u Opera)
• Medio de arranque físico (CD, DVD o disco de inicio personalizado) para arrancar
el sistema de destino
• Direcciones IP estáticas válidas ya asignadas a la fuente de la instalación y al sistema
de control
• Dirección IP estática válida para asignar al sistema de destino
Para realizar este tipo de instalación, siga estos pasos:
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
2 Arranque el sistema de destino mediante el primer CD o DVD del kit de medios
de SUSE Linux.
3 Cuando aparezca la pantalla de arranque del sistema de destino, utilice el menú
de opciones de arranque para establecer los parámetros apropiados de la conexión
de red, la dirección de la fuente de la instalación y la habilitación de SSH. Esto
se describe con más detalle en la Sección 1.4.3, “Uso de opciones de arranque
personalizadas” (p. 53).
El sistema de destino inicia un entorno basado en texto y ofrece la dirección de
red y el número de pantalla mediante los cuales los clientes SSH pueden dirigirse
al entorno de instalación gráfica.
4 En la estación de trabajo de control, abra una ventana de terminal y conéctese al
sistema de destino como se describe en la “Conexión al programa de instalación”
(p. 59).
5 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Instalación remota
27
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
6 Complete la instalación.
1.1.5 Instalación remota sencilla mediante
SSH — Configuración de red dinámica
mediante DHCP
Para este tipo de instalación es necesario un cierto grado de acceso físico al sistema de
destino con el fin de arrancarlo para la instalación y de determinar la dirección IP del
destino de la instalación. Una estación de trabajo remota controla completamente la
instalación propiamente dicha y usa VNC para conectarse al programa de instalación,
pero es necesaria la intervención del usuario para realizar la configuración.
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Sistema de destino con una conexión de red en funcionamiento
• Sistema de control con una conexión de red en funcionamiento y con software para
la visualización de VNC o un navegador compatible con Java (Firefox, Konqueror,
Internet Explorer u Opera)
• Medio de arranque físico (CD o DVD) para arrancar el sistema de destino
• Servidor DHCP en funcionamiento que suministre las direcciones IP
Para realizar este tipo de instalación, siga estos pasos:
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
Escoja un servidor de red NFS, HTTP o FTP. Si la fuente de la instalación es
SMB, consulte la Sección 1.2.5, “Configuración de una fuente de instalación
SMB” (p. 40).
28
2 Arranque el sistema de destino mediante el primer CD o DVD del kit de medios
de SUSE Linux.
3 Cuando aparezca la pantalla de arranque en el sistema de destino, utilice el menú
de opciones de arranque para establecer los parámetros apropiados de la conexión
de red, la dirección de la fuente de la instalación y la habilitación de SSH. Para
obtener instrucciones detalladas sobre el uso de estos parámetros, consulte la
Sección 1.4.3, “Uso de opciones de arranque personalizadas” (p. 53).
El sistema de destino inicia un entorno basado en texto y ofrece la dirección de
red mediante la cual los clientes SSH pueden dirigirse al entorno de instalación
gráfica.
4 En la estación de trabajo de control, abra una ventana de terminal y conéctese al
sistema de destino como se describe en la “Conexión al programa de instalación”
(p. 59).
5 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
6 Complete la instalación.
1.1.6 Instalación remota mediante SSH —
Arranque en PXE y Wake on LAN
Este tipo de instalación no requiere intervención física alguna. La máquina de destino
se inicia y arranca de manera remota.
Para este tipo de instalación, asegúrese de que se cumplen los siguientes requisitos:
• Fuente de la instalación remota: NFS, HTTP, FTP o SMB con una conexión de red
en funcionamiento
• Servidor TFTP
Instalación remota
29
• Servidor DHCP en funcionamiento para su red que proporcione una dirección IP
al host que necesita instalarse
• Sistema de destino compatible con arranque en PXE, funcionamiento en red y
Wake on LAN, enchufado y conectado a la red
• Sistema de control con una conexión de red en funcionamiento y software cliente
para SSH
Para realizar este tipo de instalación, siga los pasos siguientes:
1 Configure la fuente de la instalación tal y como se describe en la Sección 1.2,
“Configuración del servidor que almacena las fuentes de la instalación” (p. 31).
Escoja un servidor de red NFS, HTTP o FTP. Para configurar una fuente de instalación SMB, consulte la Sección 1.2.5, “Configuración de una fuente de instalación SMB” (p. 40).
2 Configure un servidor TFTP para que almacene una imagen de arranque que
pueda ser utilizada por el sistema de destino. Esto se describe en la Sección 1.3.2,
“Configuración de un servidor TFTP” (p. 43).
3 Configure un servidor DHCP para que suministre direcciones IP a todas las máquinas e indique la ubicación del servidor TFTP al sistema de destino. Esto se
describe en la Sección 1.3.1, “Configuración de un servidor DHCP” (p. 41).
4 Prepare el sistema de destino para arranque en PXE. Esto se describe con más
detalle en la Sección 1.3.5, “Preparación del sistema de destino para arranque en
PXE” (p. 50).
5 Comience el proceso de arranque del sistema de destino mediante Wake on LAN.
Esto se describe en la Sección 1.3.7, “Wake on LAN” (p. 50).
6 En la estación de trabajo de control, abra un cliente VNC y conéctese al sistema
de destino como se describe en la Sección 1.5.2, “Instalación con SSH” (p. 59).
7 Realice la instalación como se describe en el Capítulo Instalación mediante YaST
(↑Inicio).
Es necesario volver a conectarse al sistema de destino después de reiniciarlo para
la parte final de la instalación.
30
8 Complete la instalación.
1.2 Configuración del servidor que
almacena las fuentes de la
instalación
En función del sistema operativo instalado en la máquina que se utilizará como fuente
de la instalación en red para SUSE Linux, existen varias opciones para configurar el
servidor. En SUSE LINUX Enterprise Server o SUSE Linux 9.3 o posterior, la manera
más sencilla de configurar un servidor de instalación es utilizar YaST. En otras versiones
de SUSE LINUX Enterprise Server o SUSE Linux, configure la fuente de la instalación
de manera manual.
SUGERENCIA
Es posible incluso utilizar una máquina con Microsoft Windows como servidor
de la instalación para la instalación de Linux. Para obtener más información,
consulte la Sección 1.2.5, “Configuración de una fuente de instalación SMB”
(p. 40).
1.2.1 Configuración de un servidor de
instalación mediante YaST
YaST ofrece una herramienta gráfica para la creación de fuentes de instalación en red.
Admite servidores de instalación en red HTTP, FTP y NFS.
1 Inicie sesión como usuario root en la máquina que actuará como servidor de la
instalación.
2 Inicie YaST → Otros → Servidor de instalación.
3 Seleccione el tipo de servidor (HTTP, FTP o NFS).
Instalación remota
31
El servicio del servidor seleccionado se ejecuta automáticamente cada vez que
se inicia el sistema. Si ya se encuentra en funcionamiento en el sistema un servicio
del tipo seleccionado y desea configurarlo manualmente para el servidor, desactive la configuración automática del servicio del servidor mediante Do not configure any network services (No configurar ningún servicio de red). En ambos
casos, defina el directorio en el que los datos de la instalación estarán disponibles
en el servidor.
4 Configure el tipo de servidor requerido.
Este paso está relacionado con la configuración automática de servicios de servidor. Se omite cuando la configuración automática está desactivada. Defina un
alias para el directorio raíz del servidor FTP o HTTP en el que se encontrarán
los datos de la instalación. La fuente de la instalación se ubicará más adelante
en ftp://IP_del_servidor/alias/nombre (FTP) o en
http://IP_del_servidor/alias/nombre (HTTP). nombre representa
el nombre de la fuente de la instalación, que se define en el siguiente paso. Si ha
seleccionado NFS en el paso anterior, defina los comodines y las opciones de
exportación. Podrá acceder al servidor NFS en
nfs://IP_del_servidor/nombre. Se pueden encontrar más detalles
sobre NFS y las exportaciones en el Capítulo 42, Uso compartido de sistemas
de archivos con NFS (p. 681).
5 Configure la fuente de la instalación.
Antes de que los medios de instalación se copien en el destino, defina el nombre
de la fuente de la instalación (lo ideal sería una abreviación fácil de recordar del
producto y la versión). YaST permite ofrecer imágenes ISO de los medios en
lugar de copias de los CDs de instalación. Si desea hacerlo así, active la casilla
de verificación correspondiente y especifique la vía del directorio en el que se
ubican localmente los archivos ISO. En función del producto que se distribuya
mediante este servidor de instalación, es posible que se necesiten más CDs de
extensiones o de service packs para instalarlo completamente. Si activa Pedir
CD adicionales, YaST le recordará automáticamente que añada estos medios.
Para anunciar en la red el servidor de instalación mediante OpenSLP, active la
opción correspondiente.
32
SUGERENCIA
Considere la opción de anunciar la fuente de la instalación mediante
OpenSLP si la red lo admite. Esto le evita el tener que introducir la vía
de instalación en red en cada máquina de destino. Los sistemas de destino
se arrancarán con la opción de arranque en SLP y encontrarán la fuente
de la instalación en red sin necesidad de configuración adicional. Para
obtener más detalles sobre esta opción, consulte la Sección 1.4, “Arranque
del sistema de destino para la instalación” (p. 51).
6 Cargue los datos de la instalación.
El paso que más tiempo ocupa durante la configuración de un servidor de instalación es el copiado de los CDs de instalación en sí. Introduzca los medios en el
orden que YaST solicite y espere a que termine el proceso de copiado. Cuando
las fuentes se hayan copiado completamente, vuelva al resumen de las fuentes
de información existentes y cierre la configuración seleccionando Finalizar.
El servidor de instalación quedará completamente configurado y listo para usarse.
Se ejecutará automáticamente cada vez que se inicie el sistema. No es necesario
intervenir de ninguna otra manera. Sólo es necesario configurar e iniciar correctamente este servicio a mano si se desactiva la configuración automática del
servicio de red seleccionado con YaST en el paso inicial.
Para desactivar una fuente de instalación, seleccione Cambiar en el resumen para obtener
una lista de todas las fuentes de instalación disponibles. Elija la entrada que desee borrar
y seleccione Suprimir. Este procedimiento de eliminación sólo implica la desactivación
del servicio del servidor. Los datos de la instalación en sí permanecen en el directorio
seleccionado. No obstante, es posible eliminarlos de forma manual.
Si el servidor de instalación ofrece datos de instalación para más de un producto o
versión, inicie el módulo del servidor de instalación de YaST y seleccione Configurar
en el resumen de las fuentes de instalación existentes para configurar la nueva fuente
de instalación.
Instalación remota
33
1.2.2 Configuración manual de una fuente
de instalación NFS
La configuración de una fuente de instalación NFS se lleva a cabo básicamente en dos
pasos. En primer lugar, cree la estructura de directorios en la que se almacenarán los
datos de la instalación y copie los medios de instalación en dicha estructura. A continuación, exporte a la red el directorio que contiene los datos de la instalación.
Para crear un directorio en el que se almacenen los datos de la instalación, siga los
pasos siguientes:
1 Inicie sesión como usuario root.
2 Cree un directorio en el que más adelante se almacenarán los datos de la instalación y cambie a dicho directorio. Por ejemplo:
mkdir install/producto/versiondelproducto
cd install/producto/versiondelproducto
Sustituya producto por una abreviación del nombre del producto (en este caso,
SUSE Linux) y versiondelproducto por una cadena que contenga el
nombre del producto y la versión.
3 Ejecute los siguientes comandos para cada CD contenido en el kit de medios:
a Copie el contenido completo del CD de instalación en el directorio del servidor de instalación:
cp -a /media/via_a_la_unidad_de_CD-ROM .
Sustituya via_a_la_unidad_de_CD-ROM por la vía real por la que se
accede a la unidad de CD o DVD. En función del tipo de unidad utilizado
en el sistema, la vía puede ser cdrom, cdrecorder, dvd o
dvdrecorder.
b Cambie el nombre del directorio al número del CD:
mv via_a_la_unidad_de_CD-ROM CDx
Sustituya x por el número real del CD.
34
Para exportar las fuentes de la instalación mediante NFS con YaST, siga estos pasos:
1 Inicie sesión como usuario root.
2 Inicie YaST → Servicios de red → Servidor NFS.
3 Seleccione Iniciar el servidor NFS y Puerto abierto en el cortafuegos, y haga
clic en Siguiente.
4 Seleccione Añadir directorio e introduzca la vía del directorio que contiene los
datos de la instalación. En este caso, corresponde a /versiondelproducto.
5 Seleccione Añadir equipo e introduzca los nombres de host de las máquinas a
las que se exportarán los datos de la instalación. En lugar de especificar aquí los
nombres de host, es posible usar comodines, rangos de direcciones de red o
simplemente el nombre de dominio de la red. Introduzca las opciones de exportación apropiadas o mantenga las que se ofrecen por defecto, las cuales funcionan
correctamente en la mayoría de las configuraciones. Para obtener más información
sobre la sintaxis utilizada en la exportación de recursos compartidos NFS, lea la
página Man de export.
6 Haga clic en Finalizar.
El servidor NFS en el que se almacenan las fuentes de la instalación de SUSE
Linux se iniciará automáticamente y se integrará en el proceso de arranque.
Si prefiere exportar las fuentes de la instalación mediante NFS de manera manual en
lugar de utilizar el módulo Servidor NFS de YaST, siga estos pasos:
1 Inicie sesión como usuario root.
2 Abra el archivo /etc/exports e introduzca la siguiente línea:
/versiondelproducto *(ro,root_squash,sync)
Con ello se exporta el directorio /versiondelproducto a cualquier host
que forme parte de la red o a cualquier host que se conecte al servidor. Para limitar
el acceso al servidor, utilice máscaras de red o nombres de dominio en lugar del
comodín general *. Consulte la página Man de export para obtener más detalles.
Guarde y salga del archivo de configuración.
Instalación remota
35
3 Para añadir el servicio NFS a la lista de servidores que se inicia durante el
arranque del sistema, ejecute los siguientes comandos:
insserv /etc/init.d/nfsserver
insserv /etc/init.d/portmap
4 Inicie el servidor NFS con el siguiente comando:
rcnfsserver start
Si más adelante necesita cambiar la configuración del servidor NFS, modifique
el archivo de configuración y reinicie el daemon NFS con rcnfsserver
restart.
El anuncio del servidor NFS mediante OpenSLP hace que todos los clientes de la red
conozcan su dirección.
1 Inicie sesión como usuario root.
2 Entre en el directorio /etc/slp.reg.d/.
3 Cree un archivo de configuración con el nombre install.suse.nfs.reg
que contenga las siguientes líneas:
# Register the NFS Installation Server
service:install.suse:nfs://$HOSTNAME/path_instsource/CD1,en,65535
description=NFS Installation Source
Sustituya via_fuenteinst por la vía real a la fuente de la instalación en el
servidor.
4 Guarde este archivo de configuración e inicie el daemon OpenSLP con el siguiente
comando:
rcslpd start
36
Para obtener más información sobre OpenSLP, consulte el paquete de documentación
que se encuentra en /usr/share/doc/packages/openslp/ y también el Capítulo 39, Servicios SLP en la red (p. 647).
1.2.3 Configuración manual de una fuente
de instalación FTP
La creación de una fuente de instalación FTP es muy similar a la creación de una
fuente de instalación NFS. Las fuentes de instalación FTP también se pueden anunciar
en la red mediante OpenSLP.
1 Cree un directorio en el que se almacenarán las fuentes de la instalación como
se describe en la Sección 1.2.2, “Configuración manual de una fuente de instalación NFS” (p. 34).
2 Configure el servidor FTP para que distribuya los contenidos del directorio de
instalación:
a Inicie sesión como usuario root e instale el paquete pure-ftpd (un pequeño servidor FTP) con el gestor de paquetes de YaST.
b Entre en el directorio raíz del servidor FTP:
cd/srv/ftp
c Cree un subdirectorio en el que se almacenarán las fuentes de la instalación
en el directorio raíz FTP:
mkdirfuenteinst
Sustituya fuenteinst por el nombre del producto.
d Copie el contenido de todos los CDs de instalación en el directorio raíz del
servidor FTP (de manera similar al procedimiento descrito en la Sección 1.2.2, “Configuración manual de una fuente de instalación NFS” (p. 34),
Paso 3 (p. 34)).
También puede montar los contenidos del repositorio de instalación existente
en el entorno chroot del servidor FTP:
Instalación remota
37
mount --bind
via_a_fuenteinst /srv/ftp/fuenteinst
Sustituya via_a_fuenteinst y fuenteinst con los valores correspondientes a su configuración. Si necesita que sea permanente, añádalo a
/etc/fstab.
e Inicie pure-ftpd:
pure-ftpd &
3 Anuncie la fuente de la instalación mediante OpenSLP si la configuración de la
red lo admite:
a Cree un archivo de configuración con el nombre install.suse.ftp
.reg en /etc/slp/reg.d/ que contenga las siguientes líneas:
# Register the FTP Installation Server
service:install.suse:ftp://$HOSTNAME/srv/ftp/instsource/CD1,en,65535
description=FTP Installation Source
Sustituya fuenteinst por el nombre real de la fuente de la instalación
en el servidor. La línea service: debe introducirse en una sola línea.
b Guarde este archivo de configuración e inicie el daemon OpenSLP con el
siguiente comando:
rcslpd start
1.2.4 Configuración manual de una fuente
de instalación HTTP
La creación de una fuente de instalación HTTP es muy similar a la creación de una
fuente de instalación NFS. Las fuentes de instalación HTTP también se pueden anunciar
en la red mediante OpenSLP.
1 Cree un directorio en el que se almacenarán las fuentes de la instalación como
se describe en la Sección 1.2.2, “Configuración manual de una fuente de instalación NFS” (p. 34).
38
2 Configure el servidor HTTP para que distribuya los contenidos del directorio de
instalación:
a Inicie sesión como usuario root e instale el paquete apache2 con el gestor
de paquetes de YaST.
b Entre en el directorio raíz del servidor HTTP (/srv/www/htdocs) y cree
un subdirectorio en el que se almacenarán las fuentes de la instalación:
mkdir fuenteinst
Sustituya fuenteinst por el nombre del producto.
c Cree un enlace simbólico entre la ubicación de las fuentes de la instalación
y el directorio raíz del servidor Web (/srv/www/htdocs):
ln -s /via_fuenteinst /srv/www/htdocs/fuenteinst
d Modifique el archivo de configuración del servidor HTTP (/etc/
apache2/default-server.conf) para que siga enlaces simbólicos.
Sustituya la siguiente línea:
Options None
con
Options Indexes FollowSymLinks
e Reinicie el servidor HTTP con rcapache2 restart.
3 Anuncie la fuente de la instalación mediante OpenSLP si la configuración de la
red lo admite:
a Cree un archivo de configuración con el nombre install.suse.http
.reg en /etc/slp/reg.d/ que contenga las siguientes líneas:
# Register the HTTP Installation Server
service:install.suse:http://$HOSTNAME/srv/www/htdocs/via_a_fuenteinst/CD1/,en,65535
description=HTTP Installation Source
Sustituya via_a_fuenteinst por la vía real en la fuente de la instalación
en el servidor. La línea service: debe introducirse en una sola línea.
Instalación remota
39
b Guarde este archivo de configuración e inicie el daemon OpenSLP con el
comando rcslpd restart.
1.2.5 Configuración de una fuente de
instalación SMB
Mediante SMB (Samba) es posible importar las fuentes de la instalación de un servidor
Microsoft Windows e iniciar la instalación de Linux incluso sin que haya ninguna máquina Linux.
Para configurar un recurso compartido de Windows en el que se almacenarán las
fuentes de la instalación de SUSE Linux, siga estos pasos:
1 Inicie sesión en la máquina que tenga instalado Windows.
2 Inicie el explorador y cree una nueva carpeta en la que se almacenará el árbol de
la instalación completo y déle como nombre, por ejemplo, INSTALL.
3 Exporte este recurso compartido mediante el procedimiento descrito en la documentación de Windows.
4 Entre en dicho recurso compartido y cree una subcarpeta de nombre producto.
producto debe reemplazarse por el nombre real del producto (en este caso,
SUSE Linux).
5 Copie cada CD de SUSE Linux en una carpeta diferente y llame a estas carpetas
CD1, CD2, CD3 etc.
6 Entre en el directorio superior del recurso compartido exportado (en este ejemplo,
INSTALL) y copie en esta carpeta los siguientes archivos y carpetas de
producto/CD1: content, media.1, control.xml y boot.
7 Cree una nueva carpeta en INSTALL y asígnele el nombre de yast.
8 Entre en la carpeta yast y cree los archivos order e instorder.
9 Abra el archivo order e introduzca la siguiente línea:
/NLD/CD1 smb://usuario:contraseña@nombredelhost/productoCD1
40
Sustituya usuario por el nombre de usuario que utilice en la máquina Windows
o utilice Guest para permitir un inicio de sesión como invitado en este recurso
compartido. contraseña debe sustituirse por la contraseña de inicio de sesión
o por una cadena cualquiera en el caso de inicio de sesión como invitado.
nombredelhost debe sustituirse por el nombre de red de la máquina en la
que está instalado Windows.
10 Abra el archivo instorder y añada la siguiente línea:
/producto/CD1
Para utilizar un recurso compartido SMB montado como fuente de la instalación, siga
los pasos siguientes:
1 Arranque el destino de la instalación.
2 Seleccione Instalación.
3 Pulse
F4
para ver una selección de fuentes de instalación.
4 Seleccione SMB e introduzca el nombre o la dirección IP de la máquina en la
que está instalado Windows, el nombre del recurso compartido (en este ejemplo,
INSTALL), el nombre de usuario y la contraseña.
Cuando pulse
Intro
, YaST se iniciará y podrá realizar la instalación.
1.3 Preparación del arranque del
sistema de destino
En esta sección se describen las tareas de configuración necesarias en situaciones de
arranque complejas. Contiene ejemplos de configuración listos para usar para DHCP,
arranque en PXE, TFTP y Wake on LAN.
1.3.1 Configuración de un servidor DHCP
La configuración de servidores DHCP en SUSE Linux se realiza mediante la edición
manual de los archivos de configuración correspondientes. En esta sección se describe
Instalación remota
41
la ampliación de la configuración de un servidor DHCP existente para que ofrezca los
datos necesarios para servir en un entorno TFTP, PXE y WOL.
Configuración manual de un servidor DHCP
Todo lo que necesita hacer el servidor DHCP, además de ofrecer asignación de direcciones automática a los clientes de la red, es anunciar la dirección IP del servidor TFTP
y el archivo que las rutinas de instalación de la máquina de destino deben obtener.
1 Inicie sesión como usuario root en la máquina que aloje el servidor DHCP.
2 Añada las siguientes líneas al archivo de configuración del servidor DHCP que
se encuentra en /etc/dhcpd.conf:
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_del_servidor_tftp:
#
# "filename" specifiies the pxelinux image on the tftp server
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
}
Sustituya ip_del_servidor_tftp por la dirección IP real del servidor
TFTP.
Para obtener más información acerca las opciones disponibles en dhcpd.conf,
consulte la página de Man de dhcpd.conf.
3 Reinicie el servidor DHCP ejecutando rcdhcpd restart
Si tiene previsto utilizar SSH para controlar remotamente una instalación PXE y Wake
on LAN, especifique explícitamente la dirección IP que DHCP debe suministrar al
destino de la instalación. Para ello, modifique la configuración DHCP antes mencionada
de acuerdo con el siguiente ejemplo:
group {
# PXE related stuff
#
# "next server" defines the tftp server that will be used
next server ip_tftp_server:
#
# "filename" specifiies the pxelinux image on the tftp server
42
# the server runs in chroot under /srv/tftpboot
filename "pxelinux.0";
host test { hardware ethernet mac_address;
fixed-address some_ip_address; }
}
La declaración del host incluye el nombre del host del destino de la instalación. Para
relacionar el nombre de host y la dirección IP con un host determinado, es necesario
conocer y especificar la dirección de hardware del sistema (MAC). Sustituya todas las
variables utilizadas en este ejemplo por los valores reales correspondientes a su entorno.
Una vez reiniciado el servidor DHCP, ofrecerá una dirección IP estática al host especificado, lo que permitirá conectarse al sistema mediante SSH.
1.3.2 Configuración de un servidor TFTP
La configuración de servidores TFTP se puede realizar con YaST o bien de forma manual
mediante otro sistema operativo Linux compatible con xinetd y tftp. El servidor TFTP
proporciona la imagen de arranque al sistema de destino cuando éste arranca y envía
una solicitud para ello.
Configuración de un servidor TFTP mediante YaST
1 Inicie sesión como usuario root.
2 Inicie YaST → Servicios de red → Servidor TFTP e instale el paquete necesario.
3 Haga clic en Habilitar para asegurarse de que el servidor se inicie y se incluya
en las rutinas de arranque. No es necesaria ninguna otra intervención por su
parte para ello. xinetd inicia tftpd en el momento del arranque.
4 Haga clic en Puerto abierto en el cortafuegos para abrir el puerto correspondiente
en el cortafuegos que se esté ejecutando en la máquina. Si no hay ningún cortafuegos en ejecución en el servidor, está opción no estará disponible.
5 Haga clic en Examinar para explorar el directorio de la imagen de arranque.
Se creará y se seleccionará automáticamente el directorio por defecto
/tftpboot.
Instalación remota
43
6 Haga clic en Finalizar para aplicar la configuración e iniciar el servidor.
Configuración manual de un servidor TFTP
1 Inicie sesión como usuario root e instale los paquetes tftp y xinetd.
2 Si no están disponibles, cree los directorios /srv/tftpboot y /srv/
tftpboot/pxelinux.cfg.
3 Añada los archivos correspondientes necesarios para la imagen de arranque como
se describe en la Sección 1.3.3, “Arranque en PXE” (p. 44).
4 Modifique la configuración de xinetd, que se encuentra en /etc/xinetd.d/
para asegurarse de que el servidor tftp se inicie durante el arranque:
a Si no existe, cree un archivo de nombre tftp en este directorio mediante
touch tftp. A continuación, ejecute chmod 755 tftp.
b Abra el archivo tftp y añada las siguientes líneas:
service tftp
{
socket_type
protocol
wait
user
server
server_args
disable
}
=
=
=
=
=
=
=
dgram
udp
yes
root
/usr/sbin/in.tftpd
-s /tftpboot
no
c Guarde el archivo y reinicie xinetd con rcxinetd restart.
1.3.3 Arranque en PXE
En las especificaciones de Preboot Execution Environment (PXE) (ftp://download
.intel.com/labs/manage/wfm/download/pxespec.pdf) se incluye alguna
información técnica de fondo así como las especificaciones completas de PXE.
44
1 Cambie al directorio del repositorio de la instalación y copie los archivos linux,
initrd, message y memtest en el directorio /srv/tftpboot introduciendo lo siguiente:
cp -a boot/loader/linux boot/loader/initrd
boot/loader/message boot/loader/memtest /srv/tftpboot
2 Instale el paquete syslinux directamente desde los CDs o DVDs de instalación
con YaST.
3 Copie el archivo /usr/share/syslinux/pxelinux.0 en el directorio
/srv/tftpboot introduciendo lo siguiente:
cp -a /usr/share/syslinux/pxelinux.0 /srv/tftpboot
4 Cambie al directorio del repositorio de la instalación y copie el archivo
isolinux.cfg en el directorio /srv/tftpboot/pxelinux.cfg/
default introduciendo lo siguiente:
cp -a boot/loader/isolinux.cfg /srv/tftpboot/pxelinux.cfg/default
5 Edite el archivo /srv/tftpboot/pxelinux.cfg/default y elimine
las líneas que comiencen por gfxboot, readinfo y framebuffer.
6 Añada las siguientes entradas en las líneas append de las etiquetas por defecto
failsafe y apic:
insmod=e100
Mediante esta entrada, se carga en los clientes PXE el módulo del núcleo
para tarjetas de red de 100 MBits/s de Intel. Esta entrada depende del hardware
del cliente y debe adaptarse en consecuencia. En caso de utilizar una tarjeta
de red GigaBit de Broadcom, la entrada debería ser insmod=bcm5700.
netdevice=eth0
Esta entrada define la interfaz de red del cliente que debe utilizarse para la
instalación en red. Sólo es necesaria si el cliente dispone de varias tarjetas de
red y debe adaptarse en consecuencia. En el caso de que sólo se disponga de
una tarjeta de red, esta entrada debe omitirse.
install=nfs://ip_servidorinst/via_fuenteinst/CD1
Esta entrada define el servidor NFS y la fuente de la instalación para la instalación del cliente. Sustituya ip_servidorinst por la dirección IP real
Instalación remota
45
del servidor de la instalación. via_fuenteinst debe sustituirse por la vía
real a las fuentes de la instalación. Las direcciones de las fuentes HTTP, FTP
y SMB son similares, excepto en el prefijo del protocolo, que debe ser http,
ftp o smb.
IMPORTANTE
Si necesita pasar otras opciones de arranque a las rutinas de instalación, tales como parámetros de inicio de VNC o SSH, añádalas a la
entrada install. En la Sección 1.4, “Arranque del sistema de destino
para la instalación” (p. 51) se ofrece un resumen de los parámetros
y algunos ejemplos.
A continuación se incluye un ejemplo de archivo
/srv/tftpboot/pxelinux.cfg/default. Ajuste el prefijo del protocolo
de la fuente de la instalación para que se corresponda con la configuración de la
red, y especifique el método que prefiera para conectarse al instalador añadiendo
las opciones vnc y vncpassword o ssh y sshpassword a la entrada
install. Las líneas separadas por \ deben introducirse en una sola línea, sin
salto de línea y sin \.
default linux
# default
label linux
kernel linux
append initrd=initrd ramdisk_size=65536 insmod=e100 \
install=nfs://ip_instserver/path_instsource/product
# failsafe
label failsafe
kernel linux
append initrd=initrd ramdisk_size=65536 ide=nodma apm=off acpi=off \
insmod=e100 install=nfs://ip_instserver/path_instsource/product
# apic
label apic
kernel linux
append initrd=initrd ramdisk_size=65536 apic insmod=e100 \
install=nfs://ip_instserver/path_instsource/product
# manual
label manual
kernel linux
append initrd=initrd ramdisk_size=65536 manual=1
46
# rescue
label rescue
kernel linux
append initrd=initrd ramdisk_size=65536 rescue=1
# memory test
label memtest
kernel memtest
# hard disk
label harddisk
kernel
linux append SLX=0x202
implicit
display
prompt
timeout
0
message
1
100
Sustituya ip_servidorinst y via_fuenteinst por los valores correspondientes a su configuración.
La siguiente sección sirve como breve referencia de las opciones de PXELINUX
utilizadas en esta configuración. Hay más información sobre las opciones disponibles en la documentación del paquete syslinux que se encuentra en /usr/
share/doc/packages/syslinux/.
1.3.4 Opciones de configuración de
PXELINUX
A continuación aparecen algunas de las opciones disponibles para el archivo de configuración de PXELINUX.
DEFAULT opciones del núcleo...
Establece la línea de comandos del núcleo por defecto. Si PXELINUX arranca de
manera automática, actúa como si las entradas posteriores a DEFAULT se hubieran
escrito en el indicador de inicio, excepto la opción auto que se añade de manera
automática, lo que indica un arranque automático.
Si no hay ningún archivo de configuración o ninguna entrada DEFAULT en el archivo de configuración, el valor por defecto es el nombre del núcleo “linux”, sin
opciones.
Instalación remota
47
APPEND opciones...
Añada una o más opciones a la línea de comandos del núcleo. Éstas se añaden para
arranques automáticos y manuales. Las opciones se añaden al principio de la línea
de comandos del núcleo, y normalmente admiten que las opciones del núcleo introducidas explícitamente las sobrescriban.
LABEL etiqueta KERNEL imagen APPEND opciones...
Indica que si se introduce etiqueta como el núcleo que se arrancará, PXELINUX
debe arrancar imagen en su lugar, y utilizar las opciones APPEND especificadas
en lugar de las indicadas en el apartado global del archivo (antes del primer comando
LABEL). El valor por defecto de imagen es el mismo que label y, si no se introduce ningún APPEND, el valor por defecto consiste en utilizar la entrada global (si
hubiera alguna). Se permiten hasta 128 entradas LABEL.
Tenga en cuenta que GRUB utiliza la siguiente sintaxis:
title mytitle
kernel mi_nucleo mis_opciones_del_nucleo
initrd miinitrd
mientras que PXELINUX utiliza la siguiente:
label mietiqueta
kernel minucleo
append misopciones
Las etiquetas se truncan como si fueran nombres de archivo, y deben ser únicas
después del truncamiento. Por ejemplo, dos etiquetas como “v2.1.30” y “v2.1.31”
no podrán distinguirse en PXELINUX porque ambas se truncan con el mismo
nombre de archivo de DOS.
No es necesario que el núcleo sea un núcleo de Linux; puede ser un sector de
arranque o un archivo COMBOOT.
APPEND Sin nada añadido. Se puede utilizar APPEND con un solo guión como argumento
en un apartado LABEL para sobrescribir un APPEND global.
LOCALBOOT tipo
En PXELINUX, especificar LOCALBOOT 0 en lugar de una opción de KERNEL
significa la invocación de esa etiqueta en particular y provoca un arranque del disco
local en lugar de un arranque del núcleo.
48
Argumento
Descripción
0
Realiza un arranque normal
4
Realiza un arranque local con el controlador
Universal Network Driver Interface (UNDI)
aún residente en memoria
5
Realiza un arranque local con el stack de
PXE completo, incluido el controlador UNDI, aún residente en memoria
Los demás valores no están definidos. Si desconoce los stacks UNDI o PXE, especifique 0.
TIMEOUT tiempo límite
Indica cuánto tiempo deberá esperar en el indicador de inicio antes de arrancar automáticamente, en décimas de segundo. El tiempo límite queda cancelado si el
usuario pulsa alguna tecla, en cuyo caso se asume que será éste quien complete el
comando iniciado. Un tiempo límite de cero inhabilita la opción de tiempo límite
(es el ajuste por defecto).
El máximo valor posible para el valor del tiempo límite es de 35996 (algo menos
de una hora).
PROMPT valor_de_indicador
Si valor de indicador es 0, muestra el indicador de inicio sólo si se pulsan
las teclas Shift o Alt o si están activados Bloq Mayús o Bloq Despl (es la opción por
defecto). Si valor_de_indicador es 1, siempre se muestra el indicador de
inicio.
F1 nombre_de_archivo
F2 nombre_de_archivo
...
F9 nombre_de_archivo
F10nombre_de_archivo
Muestra en la pantalla el archivo indicado cuando se pulsa una tecla de función en
el indicador de inicio. También se puede utilizar para implementar una ayuda en
línea para antes del arranque (normalmente para las opciones de la línea de comandos
del núcleo). Por compatibilidad con versiones anteriores, F10 también puede intro-
Instalación remota
49
ducirse como
a F11 ni F12 .
F0
. Tenga en cuenta que no es posible asociar nombres de archivos
1.3.5 Preparación del sistema de destino
para arranque en PXE
Prepare el BIOS del sistema para arranque en PXE incluyendo la opción de PXE en el
orden de arranque del BIOS.
AVISO
No coloque la opción de PXE por encima de la opción de arranque desde disco
duro en el BIOS. De lo contrario, el sistema intentaría reinstalarse cada vez que
lo arrancara.
1.3.6 Preparación del sistema de destino
para Wake on LAN
Wake on LAN (WOL) necesita que se habilite la opción correspondiente del BIOS
antes de la instalación. Además, es necesario tomar nota de la dirección MAC del sistema
de destino. Este dato es necesario para iniciar Wake on LAN.
1.3.7 Wake on LAN
Wake on LAN permite conectar una máquina mediante el envío de un paquete de red
especial que contiene la dirección MAC de la máquina. Dado que los identificadores
MAC deben ser únicos para cada máquina, no hay que preocuparse por la conexión
accidental de la máquina que no es.
IMPORTANTE
Si la máquina de control no se encuentra en el mismo segmento de red que
el destino de la instalación que debe encenderse, configure las peticiones WOL
para que se envíen como multidifusión o bien controle remotamente una má-
50
quina de dicho segmento de red para que actúe como remitente de las peticiones.
1.3.8 Wake on LAN manual
1 Inicie sesión como usuario root.
2 Inicie YaST → Instalar/desinstalar software e instale el paquete netdiag.
3 Abra un terminal e introduzca el siguiente comando como usuario root para encender el destino.
ether-wakemac_del_destino
Sustituya mac_del_destino por la dirección MAC real del destino.
1.4 Arranque del sistema de destino
para la instalación
Existen básicamente dos maneras diferentes de personalizar el proceso de arranque
para la instalación además de las mencionadas en la Sección 1.3.7, “Wake on LAN”
(p. 50) y en la Sección 1.3.3, “Arranque en PXE” (p. 44). Es posible utilizar las opciones
de arranque por defecto y las teclas de función o bien utilizar las opciones del menú de
opciones de arranque de la pantalla de arranque de la instalación para pasar las opciones
de arranque que el núcleo de la instalación pueda necesitar para este hardware en concreto.
1.4.1 Uso de las opciones de arranque por
defecto
Las opciones de arranque se describen con detalles en el Capítulo Instalación mediante
YaST (↑Inicio).
Instalación remota
51
En general, el proceso de arranque de la instalación se inicia con sólo seleccionar Instalación. Si aparece algún problema, las opciones Instalación—ACPI inhabilitado e
Installation—Ajustes seguros pueden resultar útiles.
Para obtener más información acerca de solución de problemas durante el proceso de
instalación, consulte la Sección “Problemas de instalación” (Capítulo 9, Problemas
comunes y sus soluciones, ↑Inicio).
1.4.2 Uso de las teclas de función
La barra de menú de la parte inferior de la pantalla ofrece algunas funciones avanzadas
que son necesarias en determinadas configuraciones. Mediante las teclas de función es
posible especificar opciones adicionales que se pasarán a las rutinas de instalación sin
tener que conocer la sintaxis detallada de dichos parámetros que sería necesaria para
introducirlos como opciones de arranque (consulte la Sección 1.4.3, “Uso de opciones
de arranque personalizadas” (p. 53)).
Consulte la siguiente tabla para ver las opciones disponibles.
Tabla 1.1
Teclas de función durante la instalación
Tecla
Finalidad
Opciones disponi- Valor por defecto
bles
F1
Obtener ayuda
Ninguna
F2
Seleccionar el idio- Todos los idiomas
ma de la instalación admitidos
F3
Cambiar la resolución de la pantalla
para la instalación
• Modo de texto
• VESA
• resolución n.º
1
• resolución n.º
2
52
Ninguno
Inglés
• El valor por
defecto depende del hardware para gráficos
instalado
Tecla
Finalidad
Opciones disponi- Valor por defecto
bles
• ...
F4
Seleccionar la
fuente de la instalación
• CDROM/DVD
CD-ROM/DVD
• SLP
• FTP
• HTTP
• NFS
• SMB
• Disco duro
F5
Utilizar un disco de Controlador
actualización para
un controlador
Ninguno
1.4.3 Uso de opciones de arranque
personalizadas
El uso de las opciones de arranque adecuadas facilita el procedimiento de instalación.
Muchos parámetros también pueden configurarse con posterioridad mediante las rutinas
de linuxrc, pero el uso de opciones de arranque es más sencillo. En algunas configuraciones automáticas, las opciones de arranque pueden incorporarse con initrd o con
un archivo info.
La siguiente tabla muestra las situaciones de instalación comentadas en el presente capítulo junto con los parámetros necesarios para el arranque y las correspondientes opciones de arranque. Simplemente añádalas en el orden que aparecen en la tabla para
Instalación remota
53
obtener una cadena de opciones de arranque que se pasará a las rutinas de instalación.
Por ejemplo (en una sola línea):
install=... netdevice=... hostip=...netmask=... vnc=... vncpassword=...
Sustituya todos los valores (...) de la cadena con los valores correspondientes de su
configuración.
Tabla 1.2
Situaciones de instalación (arranque) descritas en este capítulo
Situaciones de instalación
Parámetros necesarios Opciones de arranque
para el arranque
No se necesita ninguna
Capítulo Instalación me- Ninguno: el sistema
arranca automáticamendiante YaST (↑Inicio)
te
54
Sección 1.1.1, “Instalación remota sencilla mediante VNC — Configuración de red estática”
(p. 22)
• Ubicación del servidor de la instalación
• Dispositivo de red
• Dirección IP
• Máscara de red
• Gateway
• Habilitación de
VNC
• Contraseña de
VNC
• install=(nfs,http,
ftp,smb)://via_a
_mediosinst
Sección 1.1.2, “Instalación remota sencilla mediante VNC — Configuración de red dinámica
mediante DHCP” (p. 23)
• Ubicación del servidor de la instalación
• Habilitación de
VNC
• install=(nfs,http,
ftp,smb)://via_a
_mediosinst
• vnc=1
• netdevice=algun
_dispositivo_de
_red (sólo es necesario si
hay varios dispositivos de
red disponibles)
• hostip=alguna_ip
• netmask=alguna
_mascara_de_red
• gateway=gateway_ip
• vnc=1
• vncpassword=alguna
_contraseña
Situaciones de instalación
Parámetros necesarios Opciones de arranque
para el arranque
• Contraseña de
VNC
• vncpassword=alguna
_contraseña
Sección 1.1.3, “Instalación remota mediante
VNC — Arranque en
PXE y Wake on LAN”
(p. 25)
• Ubicación del servi- No aplicable; el proceso se
dor de la instalagestiona mediante PXE y
ción
DHCP
• Ubicación del servidor TFTP
• Habilitación de
VNC
• Contraseña de
VNC
Sección 1.1.4, “Instalación remota sencilla mediante SSH — Configuración de red estática”
(p. 26)
• Ubicación del servidor de la instalación
• Dispositivo de red
• Dirección IP
• Máscara de red
• Gateway
• Habilitación de
SSH
• Contraseña SSH
• install=(nfs,http,
ftp,smb)://via_a
_mediosinst
Sección 1.1.5, “Instalación remota sencilla mediante SSH — Configura-
• Ubicación del servidor de la instalación
• install=(nfs,http,
ftp,smb)://via_a
_mediosinst
• netdevice=algun
_dispositivo_de
_red (sólo es necesario si
hay varios dispositivos de
red disponibles)
• hostip=alguna_ip
• netmask=alguna
_mascara_de_red
• gateway=gateway_ip
• usessh=1
• sshpassword=alguna
_contraseña
Instalación remota
55
Situaciones de instalación
Parámetros necesarios Opciones de arranque
para el arranque
ción de red dinámica mediante DHCP” (p. 28)
• Habilitación de
SSH
• Contraseña SSH
• usessh=1
• sshpassword=alguna
_contraseña
Sección 1.1.6, “Instalación remota mediante
SSH — Arranque en
PXE y Wake on LAN”
(p. 29)
• Ubicación del servi- No aplicable; el proceso se
dor de la instalagestiona mediante PXE y
ción
DHCP
• Ubicación del servidor TFTP
• Habilitación de
SSH
• Contraseña SSH
SUGERENCIA
Hay más información sobre las opciones de arranque de linuxrc que se utilizan
para arrancar sistemas Linux en /usr/share/doc/packages/linuxrc/
linuxrc.html.
1.5 Monitorización del proceso de
instalación
Existen varias opciones para monitorizar de manera remota el proceso de instalación.
Si se especifican las opciones de arranque adecuadas durante el arranque para la instalación, se puede utilizar VNC o bien SSH para controlar la instalación y la configuración
del sistema desde una estación de trabajo remota.
56
1.5.1 Instalación de VNC
Mediante cualquier software para la visualización de VNC es posible controlar de forma
remota la instalación de SUSE Linux desde prácticamente cualquier sistema operativo.
En esta sección se describe la configuración cuando se utiliza una aplicación para la
visualización de VNC o un navegador Web.
Preparación para la instalación con VNC
Todo lo que hay que hacer en el destino de la instalación para prepararlo para una instalación con VNC es incorporar las opciones de arranque correspondientes en el
arranque para la instalación inicial (consulte la Sección 1.4.3, “Uso de opciones de
arranque personalizadas” (p. 53)). El sistema de destino arranca en un entorno basado
en texto y espera a que un cliente VNC se conecte al programa de instalación.
El programa de instalación anuncia la dirección IP y el número de pantalla a los que es
necesario conectarse para la instalación. Si se tiene acceso físico al sistema de destino,
esta información se introduce inmediatamente después de que el sistema arranque para
la instalación. Introduzca los datos cuando el software cliente VNC los solicite, así como
la contraseña VNC.
Dado que el destino de la instalación se anuncia a sí mismo mediante OpenSLP, es
posible obtener información de la dirección del destino de la instalación a través de un
navegador SLP, sin necesidad de acceder físicamente a la instalación en sí, siempre y
cuando la configuración de la red y todas las máquinas admitan OpenSLP:
1 Inicie el navegador de archivos y Web de KDE Konqueror.
2 Introduzca service://yast.installation.suse en la barra de direcciones.
El sistema de destino aparecerá como un icono en la pantalla de Konqueror. Al
hacer clic en este icono se iniciará el visualizador de VNC de KDE, en el cual
se realizará la instalación. También es posible ejecutar el software de visualización
de VNC que prefiera con la dirección IP indicada y añadiendo :1 al final de la
dirección IP de la pantalla en la que se esté ejecutando la instalación.
Instalación remota
57
Conexión al programa de instalación
Existen básicamente dos maneras de conectarse al servidor VNC (en este caso, el destino de la instalación). Es posible iniciar una aplicación para la visualización de VNC
independiente en cualquier sistema operativo o bien conectarse mediante un navegador
Web con Java habilitado.
Gracias a VNC es posible controlar la instalación de un sistema Linux desde cualquier
otro sistema operativo, incluidas otras versiones de Linux, Windows y Mac OS.
En una máquina Linux, asegúrese de que el paquete tightvnc se encuentra instalado.
En una máquina Windows, instale el puerto Windows de esta aplicación, que puede
obtenerse en la página principal de TightVNC (http://www.tightvnc.com/
download.html).
Para conectarse al programa de instalación que se ejecuta en la máquina de destino,
siga estos pasos:
1 Inicie el visualizador de VNC.
2 Introduzca la dirección IP y el número de pantalla del destino de la instalación
ofrecido por el navegador SLP o por el propio programa de instalación.
dirección_ip:numero_de_pantalla
Se abrirá una ventana en el escritorio con las pantallas de YaST como en una
instalación local normal:
El uso de un navegador Web para conectarse al programa de instalación evita la dependencia de un software de VNC y del sistema operativo en el que se ejecute. Es posible
utilizar cualquier navegador (Firefox, Konqueror, Internet Explorer, Opera etc.) para
realizar la instalación del sistema Linux, con tal de que la aplicación de navegación
tenga Java habilitado.
Para realizar una instalación con VNC, siga estos pasos:
1 Inicie el navegador Web que prefiera.
58
2 Introduzca lo siguiente como dirección:
http://direccion_ip_del_destino:5801
3 Introduzca la contraseña de VNC cuando se le pida. La ventana del navegador
mostrará las pantallas de YaST como en una instalación local normal.
1.5.2 Instalación con SSH
Gracias a SSH, es posible controlar de forma remota la instalación de la máquina Linux
mediante cualquier software cliente de SSH.
Preparación para la instalación con SSH
Aparte de la instalación de los paquetes de software correspondientes (OpenSSH para
Linux y PuTTY para Windows), sólo es necesario pasar las opciones de arranque
apropiadas para habilitar SSH para la instalación. Para obtener más detalles, consulte
la Sección 1.4.3, “Uso de opciones de arranque personalizadas” (p. 53). OpenSSH se
instala por defecto en todos los sistemas operativos basados en SUSE Linux.
Conexión al programa de instalación
1 Obtenga la dirección IP del destino de la instalación.
Si se tiene acceso físico a la máquina de destino, puede tomar la dirección IP que
las rutinas de instalación muestran en la consola tras el arranque inicial. También
es posible tomar la dirección IP asignada a este host en particular en la configuración del servidor DHCP.
2 En la línea de comandos, introduzca el comando siguiente:
ssh -X root@direccion_ip_del_destino
Sustituya direccion_ip_del_destino por la dirección IP real del destino
de la instalación.
3 Cuando se pida un nombre de usuario, introduzca root.
Instalación remota
59
4 Cuando se pida una contraseña, introduzca la contraseña establecida mediante
la opción de arranque de SSH.
Una vez realizada correctamente la autenticación, aparecerá un indicador de línea
de comandos para el destino de la instalación.
5 Introduzca yast para iniciar el programa de instalación.
Se abrirá una ventana que mostrará las pantallas normales de YaST como se
describe en Capítulo Instalación mediante YaST (↑Inicio).
60
Configuración avanzada de disco
2
Las configuraciones avanzadas del sistema requieren configuraciones de disco concretas.
Para que la denominación de los dispositivos sea coherente con la de los dispositivos
SCSI, utilice un guión de inicio específico. La LVM (Gestión lógica de volúmenes) es
un esquema de partición de discos diseñado para ser mucho más flexible que la partición
física utilizada en las configuraciones estándar. Su funcionalidad instantánea le permite
crear de forma sencilla copias de seguridad de los datos. La RAID (Matriz redundante
de discos independientes) ofrece una integridad de los datos, un rendimiento y una tolerancia a fallos mayores.
2.1 Nombres de dispositivos
permanentes para dispositivos
SCSI
Los dispositivos SCSI tales como las particiones del disco duro reciben de forma más
o menos dinámica nombres de archivo de dispositivo durante el arranque. Esto no supone ningún problema siempre que no se modifique el número o la configuración del
dispositivo. No obstante, si se incorpora al sistema un nuevo disco duro SCSI y el kernel
lo detecta antes que al disco duro que ya existía, el antiguo disco duro recibe un nuevo
nombre y ya no va a concordar con las entradas de la tabla /etc/fstab.
Este problema puede evitarse con el script de arranque del sistema boot.scsidev.
El script puede activarse por medio del comando /sbin/insserv y los parámetros
de arranque necesarios se guardan en el archivo /etc/sysconfig/scsidev. A
Configuración avanzada de disco
61
continuación, el script /etc/rc.d/boot.scsidev define nombres de dispositivo
permanentes en el directorio /dev/scsi/, que pueden utilizarse en el archivo /etc/
fstab. Si se debe emplear nombres de dispositivo permanentes, es posible definirlos
en el archivo /etc/scsi.alias. Vea también el comando man scsidev.
En el modo experto del editor de niveles de ejecución, debe activar boot.scsidev
para la fase B a fin de que se creen en /etc/init.d/boot.d los enlaces necesarios
para que los nombres permanentes sean generados durante el proceso de arranque.
SUGERENCIA: Nombres de dispositivo y udev
Aunque boot.scsidev se sigue soportando en SUSE Linux, se recomienda
utilizar udev en la medida de lo posible para generar nombres de dispositivo
permanentes. udev se encarga de realizar las entradas en /dev/by-id/.
2.2 Configuración de LVM
Esta sección describe brevemente los principios en los que se basa LVM así como las
características básicas que lo convierten en una útil herramienta con muchas aplicaciones.
Consulte la configuración de LVM con YaST en la Sección 2.2.2, “Configuración de
LVM con YaST” (p. 64).
AVISO
El empleo de LVM puede estar asociado con situaciones de riesgo, tales como
pérdida de datos. Los bloqueos de aplicaciones, cortes de alimentación y ejecución de comandos erróneos son también una fuente de riesgo. Le recomendamos que realice una copia de seguridad antes de implementar LVM o reconfigurar los volúmenes. No ejecute nunca estas operaciones si no dispone de
una copia de sus datos.
2.2.1 El gestor de volúmenes lógicos (LVM)
El gestor de volúmenes lógicos (Logical Volume Manager o LVM) permite distribuir
el espacio del disco de forma flexible en diferentes sistemas de archivos. El LVM se
desarrolló por la dificultad que supone modificar las particiones en un sistema en ejecución. LVM pone en común un depósito o pool virtual (Volume Group – abreviado
62
VG) de espacio en disco. De este VG se forman los volúmenes lógicos en caso necesario.
El sistema operativo accede entonces a éstos en lugar de a las particiones físicas. Los
VGs se pueden extender por varios discos, de tal forma que un solo VG puede estar
constituido por más de una unidad o partes de ellas. Así, el LVM proporciona un cierto
nivel de abstracción en relación al espacio físico del disco que permite que su organización pueda ser modificada de una forma mucho más fácil y segura que un reparticionamiento físico. Puede encontrar información adicional a este respecto en la “Tipos de
partición” (Capítulo 1, Instalación mediante YaST, ↑Inicio) y la Sección “Particionamiento” (Capítulo 3, Configuración del sistema con YaST, ↑Inicio)
Figura 2.1
Particionamiento físico frente a LVM
DISCO
PART.
PART.
DISCO 1
PART.
PART.
PART.
DISCO 2
PART.
PART.
VG 1
MP
MP
MP
PART.
VG 2
LV 1
LV 2
LV 3
LV 4
MP
MP
MP
MP
En la Figura 2.1, “Particionamiento físico frente a LVM” (p. 63) puede encontrar una
comparación entre el particionamiento físico (izquierda) y el uso del LVM (derecha).
En el lado izquierdo, se ha dividido un solo disco en tres particiones físicas (PART),
con un punto de montaje (MP) para cada una, de tal forma que el sistema operativo
pueda acceder a ellas. A la derecha, se han dividido dos discos en dos y tres particiones
físicas cada uno. Se han definido dos grupos de volúmenes LVM (VG 1 y VG 2).VG 1
contiene dos particiones del disco DISK 1 y una del DISK 2. VG 2 emplea las dos
particiones restantes del DISK 2. En LVM, las particiones físicas que son incorporadas
a un grupo de volúmenes se denominan volúmenes físicos (Physical volume, PV).
Dentro de los grupos de volúmenes se han definido cuatro volúmenes lógicos (desde
LV 1 hasta LV 4). Estos volúmenes pueden emplearse por el sistema operativo mediante
los puntos de montaje asociados. La línea divisoria entre los diferentes volúmenes lógicos
no tiene por qué coincidir con la división de una partición. Por ejemplo, fíjese en el límite entre LV 1 y LV 2 que se muestra en este ejemplo.
Características de LVM:
Configuración avanzada de disco
63
• Es posible juntar varias particiones o discos para formar una gran partición lógica.
• Si un LV se queda (por ejemplo /usr) sin espacio, es posible aumentar su tamaño
si está correctamente configurado.
• LVM permite añadir discos duros o LV incluso cuando el sistema está en marcha.
Esto requiere, evidentemente, hardware que se pueda cambiar en caliente (hot
swap).
• Es posible utilizar varios discos duros en modo RAID 0 (striping) con el consiguiente
incremento de rendimiento.
• La función snapshot permite, sobre todo en servidores, realizar copias de seguridad
coherentes mientras el sistema está en funcionamiento.
El uso de LVM vale la pena ya a partir de PCs domésticos muy utilizados o en servidores
pequeños. LVM resulta ideal para un volumen de datos creciente como por ejemplo en
el caso de bases de datos, archivos de música, directorios de usuarios, etc. En tal caso
es posible configurar sistemas de archivos más grandes que un solo disco duro. Otra
ventaja del LVM es la de poder crear hasta 256 LVs. Sin embargo, es importante considerar que el trabajo con el LVM se diferencia mucho del trabajo con particiones
convencionales. Puede encontrar información en inglés sobre la configuración del
“Logical Volume Manager” (LVM) en el HowTo oficial de LVM http://tldp
.org/HOWTO/LVM-HOWTO/.
Con la versión 2.6 del kernel, LVM se ha actualizado a la versión 2. Esta versión, que
es compatible con la versión previa de LVM, puede seguir administrando grupos de
volúmenes ya existentes. LVM 2 no necesita parches del kernel y utiliza el mapeador
de dispositivos (device mapper) integrado en el kernel 2.6. A partir de este kernel,
LVM sólo puede utilizarse en su versión 2. Por este motivo, cuando en el capítulo se
habla de LVM nos referimos siempre a la versión 2 de LVM.
2.2.2 Configuración de LVM con YaST
La configuración de LVM mediante YaST se activa desde el módulo correspondiente
de YaST (consulte la Sección “Particionamiento” (Capítulo 3, Configuración del sistema
con YaST, ↑Inicio)). Esta herramienta profesional de particionamiento le permite editar
particiones ya existentes, borrarlas o crear nuevas particiones. Desde aquí puede utilizar
la opción Crear → No formatear y allí escoja el punto 0X8e Linux LVM. Después de
64
crear todas las particiones que se utilizarán por LVM, pulse sobre LVM para iniciar la
configuración LVM.
Creación de grupos de volúmenes (VG)
Si aún no se ha creado ningún VG aparecerá una ventana que pide su creación (ver la
Figura 2.2, “Creación de un grupo de volúmenes” (p. 65)). La propuesta para el nombre
del VG que albergará los datos del sistema SUSE Linux es el nombre system. El valor
Physical Extent Size (abreviado PE size) determina el tamaño de un volumen físico
dentro del grupo de volúmenes. Todo el espacio físico correspondiente a un grupo de
volúmenes se gestiona a partir de este tamaño. Este valor se sitúa normalmente en 4
megabytes y permite 256 gigabytes como tamaño máximo para un volumen físico y
lógico. No aumente el PE size (por ejemplo a 8, 16 ó 32 megabytes), si no necesita
volúmenes lógicos más grandes de 256 gigabytes.
Figura 2.2
Creación de un grupo de volúmenes
LVM: configuración de los volúmenes físicos
La siguiente ventana muestra todas las particiones de los tipos “Linux LVM” o “Linux
native” (no se muestra ninguna partición DOS o de intercambio (swap)). En el caso de
las particiones que ya forman parte del grupo de volúmenes, la lista muestra el nombre
del grupo de volúmenes al que pertenecen. Las particiones no asignadas están marcadas
con “--”.
Configuración avanzada de disco
65
Se puede cambiar el grupo de volúmenes sobre el que se trabaja en la ventana de selección que se encuentra en la parte superior izquierda. Con los botones de la parte superior
derecha se pueden crear nuevos grupos de volúmenes y eliminar los ya existentes. Sin
embargo, sólo se pueden eliminar los VGs que no estén asignados a ninguna partición.
Una partición asignada a un VG se denomina volumen físico (Physical Volume o PV).
Figura 2.3
Configuración de los volúmenes físicos
Para añadir una partición aún no asignada al grupo de volúmenes seleccionado, se debe
elegir primero la partición y pulsar después el botón Añadir volumen debajo de la lista
de particiones. El nombre del grupo de volúmenes aparecerá entonces junto a la partición
seleccionada. Todas las particiones previstas para LVM deben ser asignadas a un grupo
de volúmenes para aprovechar todo el espacio en el disco. No se puede salir del diálogo
antes de haber asignado al menos un volumen físico a cada grupo de volúmenes. Una
vez finalizado el proceso, pulse sobre Siguiente para proceder a la configuración de los
volúmemes lógicos.
Configuración de los volúmenes lógicos
Una vez que un grupo de volúmenes ha sido completado por volúmenes físicos, ha de
definir qué volúmenes lógicos debe utilizar el sistema operativo. Seleccione el grupo
de volúmenes deseado en la lista ubicada en la parte superior izquierda. Aquí también
66
se muestra el espacio libre del grupo escogido. Esta lista contiene todos los volúmenes
lógicos incluidos en el grupo. Asimismo, incluye todas las particiones normales de Linux
que ya tienen un punto de anclaje asignado, todas las particiones de swap y todos los
volúmenes lógicos ya existentes. Añada, modifique o elimine los volúmenes lógicos
según sus necesidades. Asigne al menos un volumen lógico a cada grupo de volúmenes.
Figura 2.4
Administración de volúmenes lógicos
Para crear un nuevo volumen lógico, emplee el botón Añadir, indicando el tamaño, el
tipo de sistema de archivos y el punto de anclaje. Sobre un volumen lógico se crea
normalmente un sistema de archivos (por ejemplo reiserfs, ext2) y se asigna un punto
de anclaje. Este es el punto de acceso para llegar posteriormente a los datos que se
guardan sobre este volumen lógico. Asimismo, es posible distribuir el flujo de datos
en los volúmenes lógicos entre varios volúmenes físicos (striping). Si los volúmenes
físicos residen en varios discos duros, se observará generalmente un aumento en las
prestaciones de lectura y escritura de datos (tal como con RAID 0). Sin embargo, un
LV con n bandas sólo puede crearse correctamente cuando el espacio de disco requerido
por el LV puede distribuirse de forma uniforme en n volúmenes físicos. Si sólo están
disponibles dos PVs, un LV con 3 bandas no sería viable.
Configuración avanzada de disco
67
AVISO: Striping
YaST no es capaz en este instante de verificar la exactitud de las entradas relacionadas con el striping. Cualquier error que se cometa en este punto sólo
podrá advertirse cuando el LVM sea implementado en el disco.
Figura 2.5
Creación de volúmenes lógicos
Si ya ha configurado LVM en el sistema, puede proceder seguidamente a introducir los
volúmenes lógicos existentes. Antes de ello, asigne a cada uno de ellos un punto de
montaje apropiado. Pulse sobre Siguiente para regresar a YaST y finalizar el proceso
de particionamiento.
Gestión directa LVM
Si ya ha configurado LVM y únicamente desea modificar algún aspecto, existe una alternativa para ello. Seleccione Sistema → LVM desde el centro de control de YaST.
Este cuadro de diálogo le permite básicamente llevar a cabo las mismas acciones que
las descritas anteriormente con la excepción del particionamiento físico. Esta opción
68
muestra los volúmenes físicos y lógicos existentes agrupados en dos listas y le permite
gestionar su sistema LVM empleando los métodos mencionados previamente.
2.3 Configuración de RAID de
software
El propósito de RAID (Formación redundante de discos económicos) es combinar varias
particiones de disco duro en un disco duro virtual para optimizar el rendimiento, la seguridad de los datos o ambas cosas. Con este método, sin embargo, una ventaja se sacrifica por la otra. La mayoría de controladores RAID utilizan el protocolo SCSI porque
llega a un número mayor de discos duros de un modo más eficaz que el protocolo IDE
y es más adecuado para el procesamiento paralelo de comandos. Hay algunos controladores RAID que admiten discos duros IDE o SATA. Consulte la base de datos de
hardware en http://cdb.suse.de.
2.3.1 RAID de software
Como un controlador RAID, que a menudo puede ser bastante caro, el RAID de software también es capaz de llevar a cabo estas tareas. SUSE Linux ofrece la opción de
combinar varios discos duros en un sistema RAID de software con la ayuda de YaST:
una alternativa muy razonable al RAID de hardware. RAID implica varias estrategias
para combinar varios discos duros en un sistema RAID, cada una de las cuales tiene
diferentes objetivos, ventajas y características. Las variaciones se denominan normalmente niveles de RAID.
Los niveles normales de RAID son:
RAID 0
Este nivel mejora el rendimiento del acceso a los datos difundiendo los bloques de
cada archivo por varias unidades de disco. En realidad, no se trata de un RAID,
porque no proporciona copias de seguridad de los datos, pero el nombre RAID 0
para este tipo de sistema se ha convertido en la norma. Con RAID 0, se agrupan
dos o más discos duros. El rendimiento es muy bueno, pero el sistema RAID se
destruye y los datos se pierden sólo con que falle un disco duro.
Configuración avanzada de disco
69
RAID 1
Este nivel proporciona una seguridad adecuada para los datos, porque éstos se copian
en otro disco duro 1:1. Esto se denomina copia de discos duros en espejo. Si se
destruye un disco, se podrá conseguir una copia de su contenido en otro. Todos
ellos excepto uno podrían resultar dañados sin poner los datos en peligro. La velocidad de escritura es un poco menor en el proceso de copia en comparación con el
acceso a un único disco (de diez a veinte por ciento más lento), pero el acceso de
lectura es notablemente más rápido con respecto a uno de los discos duros físicos
normales, porque los datos se duplican de modo que se pueden escanear de forma
paralela. En general, se puede decir que el nivel 1 proporciona casi el doble de velocidad de lectura y casi la misma velocidad de escritura de discos únicos.
RAID 2 y RAID 3
Éstas no son implementaciones típicas de RAID. El nivel 2 distribuye los datos por
bits en lugar de por bloques. El nivel 3 reparte los datos por bytes con un disco de
paridad dedicado y no puede ocuparse de varias peticiones a la vez. Los dos niveles
no se utilizan casi nunca.
RAID 4
El nivel 4 distribuye los datos por bloques, como el nivel 0 combinado con un disco
de paridad dedicado. En caso de que el disco de datos falle, se crea un disco de
sustitución con los datos de paridad. Sin embargo, el disco de paridad puede obstaculizar el acceso de escritura. No obstante, el nivel 4 se utiliza a veces.
RAID 5
El RAID 5 es un compromiso optimizado entre el Nivel 0 y el Nivel 1 en cuanto a
rendimiento y seguridad de los datos. Un espacio de disco duro equivale al número
de discos utilizados menos uno. Los datos se distribuyen por los discos duros como
con RAID 0. Los bloques de paridad, creados en una de las particiones, tienen como
finalidad proporcionar la seguridad. Se enlazan entre sí con XOR, lo que permite
que el bloque de paridad correspondiente reconstruya el contenido mediante XOR
en caso de que se produzca un fallo en el sistema. Con RAID 5, no puede fallar más
de un disco duro a la vez. Si un disco duro falla, debe sustituirse en cuanto sea posible para evitar el riesgo de perder datos.
Otros niveles de RAID
Se han desarrollado algunos otros niveles de RAID (RAIDn, RAID 10, RAID 0+1,
RAID 30, RAID 50, etc.), algunos de los cuales son implementaciones creadas por
proveedores de hardware con derechos de propiedad. Estos niveles no están muy
extendidos, de modo que no se explican aquí.
70
2.3.2 Configuración de RAID de software
con YaST
Desde la herramienta de particionamiento en modo avanzado de YaSt, se puede llegar
a la configuración de RAID de software con YaST, como se describe en la Sección “Particionamiento” (Capítulo 3, Configuración del sistema con YaST, ↑Inicio). Esta herramienta profesional de particionamiento le permite editar y eliminar las particiones
existentes y crear otras nuevas para que se utilicen con RAID de software. Con ella,
puede crear particiones RAID: haga clic en Crear → No formatear y, a continuación,
seleccione 0xFD Linux RAID como identificador de la partición. Para RAID 0 y RAID 1,
se necesitan al menos dos particiones: para RAID 1, suelen ser exactamente dos. Si se
utiliza RAID 5, se necesitan al menos tres particiones. Se recomienda tomar sólo particiones del mismo tamaño. Las particiones RAID deberían almacenarse en discos duros
diferentes para disminuir el riesgo de perder datos si una de ellas no es correcta (RAID 1
y 5) y para optimizar el rendimiento de RAID 0. Después de crear todas las particiones
que se van a utilizar con RAID, haga clic en RAID → Crear RAID para iniciar la configuración de RAID.
En el cuadro de diálogo siguiente, elija entre los niveles de RAID 0, 1 y 5 (para obtener
más información, consulte la Sección 2.3.1, “RAID de software” (p. 69)). Al hacer clic
en Siguiente, el siguiente cuadro de diálogo muestra todas las particiones del tipo “Linux
RAID” o “Linux native” (consulte la Figura 2.6, “Particiones RAID” (p. 72)). No se
muestran intercambios ni particiones DOS. Si ya se ha asignado una partición a un volumen de RAID, el nombre del dispositivo RAID (por ejemplo, /dev/md0) aparece
en la lista. Las particiones no asignadas se indican con “--”.
Configuración avanzada de disco
71
Figura 2.6
Particiones RAID
Para añadir una partición no asignada previamente al volumen RAID seleccionado,
haga clic primero en la partición y, a continuación, en Añadir. En este momento, el
nombre del dispositivo RAID se introduce al lado de la partición seleccionada. Asigne
todas las particiones reservadas para RAID. De lo contrario, el espacio de la partición
permanecerá inutilizado. Después de asignar todas las particiones, haga clic en Siguiente
para continuar con el cuadro de diálogo de configuración en el que puede definir de un
modo más preciso el rendimiento (consulte la Figura 2.7, “Configuración del sistema
de archivos” (p. 73)).
72
Figura 2.7
Configuración del sistema de archivos
Al igual que el particionamiento convencional, configure el sistema de archivos por
utilizar y la codificación y el punto de montaje del volumen RAID. La selección de
Superbloque persistente garantiza que las particiones RAID se reconozcan como tal al
arrancar. Después de completar la configuración con Finalizar, compruebe el dispositivo /dev/md0 y los demás indicados con RAID en el particionamiento en modo
avanzado.
2.3.3 Solución de problemas
Compruebe el archivo /proc/mdstats para ver si se ha destruido una partición
RAID. En caso de que el sistema falle, apague el sistema Linux y sustituya el disco
duro por uno nuevo particionado del mismo modo. A continuación, reinicie el sistema
e introduzca el comando mdadm /dev/mdX --add /dev/sdX. Sustituya "X"
por sus propios identificadores de dispositivos. Esto integra el disco duro de forma automática en el sistema RAID y lo reconstruye completamente.
Configuración avanzada de disco
73
2.3.4 Información adicional
Las instrucciones de configuración y más información acerca del RAID de software se
pueden encontrar en las ayudas en:
• /usr/share/doc/packages/raidtools/Software-RAID.HOWTO
.html
• http://en.tldp.org/HOWTO/Software-RAID-HOWTO.html
También están disponibles listas de correo de Linux RAID, como http://www
.mail-archive.com/[email protected].
74
Parte II. Internet
Navegador Web Konqueror
3
Konqueror no es solamente un gestor de archivos versátil, sino que también es un moderno navegador Web. Si inicia el navegador desde el icono que aparece en el panel,
Konqueror se abrirá con el perfil del navegador Web. Como navegador, Konqueror le
permite navegar mediante pestañas, así como la posibilidad de guardar páginas Web
con gráficos, contraseñas de Internet y marcadores. También es compatible con Java y
JavaScript.
Puede iniciar Konqueror desde el menú principal o escribiendo el comando konqueror.
Para que se cargue una página Web, debe escribir la dirección, por ejemplo http://
www.suse.com, en la barra al efecto. Konqueror intentará conectarse a dicha dirección
y mostrar la página. No es estrictamente necesario escribir el protocolo al principio de
la dirección (en este caso, http://). El programa completa la dirección automáticamente, pero esto sólo funciona de forma fiable con las direcciones Web. Para escribir
una dirección FTP, deberá escribir siempre ftp:// al principio del campo.
Navegador Web Konqueror
77
Figura 3.1
Ventana del navegador Konqueror
3.1 Navegación mediante pestañas
Si para navegar suele utilizar más de una página Web al mismo tiempo, la navegación
mediante pestañas puede facilitarle la tarea de pasar de una página a otra. Podrá cargar
sitios Web en pestañas independientes, pero todas ellas en una misma ventana. La
principal ventaja reside en que así se tiene un mayor control sobre el escritorio porque
sólo tendrá abierta una ventana principal. Cuando cierre sesión, la función de gestión
de sesiones de KDE le permite guardar toda la sesión Web en Konqueror, por lo cual,
la próxima vez que inicie sesión, Konqueror cargará exactamente las direcciones URL
que visitó la última vez.
Para abrir una pestaña nueva, seleccione Window → New Tab (Ventana - Nueva pestaña)
o pulse Control + Shift + N . Para cambiar el funcionamiento de las pestañas, acceda a
Settings → Configure Konqueror (Ajustes - Configurar Konqueror). En el cuadro de
diálogo que se abre, seleccione Web Behavior → Tabbed Browsing (Comportamiento
Web - Navegación mediante pestañas). Para abrir nuevas pestañas en lugar de nuevas
ventanas, habilite Open links in new tab instead of in new window (Abrir enlaces en
una nueva pestaña en lugar de en una nueva ventana). También puede ocultar la barra
78
de pestañas con la opción Hide the tab bar when only one tab is open (Ocultar barra
de pestañas cuando sólo haya abierta una pestaña). Para ver más opciones, haga clic en
Advanced Options (Opciones avanzadas).
Si lo desea, puede guardar en un perfil las pestañas con las direcciones URL y la posición
de la ventana. Es un procedimiento distinto del de la gestión de sesiones mencionado
anteriormente. Con los perfiles, las pestañas se guardan y las tendrá a mano sin necesidad
de perder tiempo en el inicio, como ocurre con la gestión de sesiones.
En Konqueror, acceda a Settings → Configure View Profiles (Ajustes - Configurar
perfiles de visualización) y asígnele un nombre al perfil. También puede guardar el tamaño de la ventana en el perfil con la opción pertinente. Asegúrese de que esté seleccionada la opción Save URLs in profile (Guardar direcciones URL en el perfil). Para
aprobar la configuración, haga clic en Save (Guardar). La próxima vez que necesite
acceder a su “colección de pestañas”, deberá hacer clic en Settings → Load View Profile (Ajustes - Cargar perfil de visualización) y buscar el nombre que aparece en la lista
del menú. Cuando seleccione el nombre, Konqueror restablecerá las pestañas.
3.2 Guardado de gráficos y de
páginas Web
Al igual que en otros navegadores, Konqueror le permite guardar páginas Web. Para
ello, seleccione Location → Save as (Sitio - Guardar como) y especifique el nombre
del archivo HTML. Sin embargo, las imágenes no se guardan. Para guardar una página
Web completa, incluidas las imágenes, debe seleccionar Tools → Archive Web Page
(Herramientas - Archivar página Web). Konqueror sugiere un nombre de archivo que
podrá aceptar si lo desea. El nombre de archivo acaba en .war, que es la extensión
de los archivos Web de reserva. Para ver el archivo Web de reserva que ha guardado,
bastará con que haga clic en el archivo que proceda y la página Web se mostrará en
Konqueror junto con las imágenes.
3.3 Palabras clave de Internet
Buscar en Internet con Konqueror es muy fácil. Konqueror define unos 70 filtros de
búsqueda y todo ello con un acceso directo específico. Para buscar un tema concreto
Navegador Web Konqueror
79
en Internet, deberá especificar el acceso directo y la palabra clave separados por dos
puntos. Se mostrará la página pertinente con los resultados de la búsqueda.
Para ver los accesos directos que ya estén definidos, acceda a Settings → Configure
Konqueror (Ajustes - Configurar Konqueror). En el cuadro de diálogo que aparece,
seleccione Web Shortcuts (Accesos directos para Web). Ahora podrá ver los nombres
de los proveedores de búsquedas y los accesos directos. Konqueror establece muchos
filtros de búsqueda: los motores de búsqueda “clásicos”, como Google, Yahoo y Lycos,
y, además, una serie de filtros para propósitos menos habituales como, por ejemplo,
una base de datos de acrónimos, una base de datos de películas en Internet o búsquedas
de aplicaciones para KDE.
Si no encuentra aquí su motor de búsqueda preferido, podrá establecerlo fácilmente.
Por ejemplo, para buscar en nuestra base de datos de asistencia algunos artículos interesantes, normalmente debe acceder a la página de búsqueda de http://portal
.suse.com/ y escribir la consulta. Este procedimiento se puede simplificar usando
accesos directos. En el cuadro de diálogo mencionado, seleccione New (Nuevo) y especifique un nombre para el acceso directo en Search provider name (Nombre del proveedor de búsquedas). Escriba las abreviaturas en URI shortcuts (Accesos directos a URI).
Puede haber varios de ellos separados por comas. El campo de texto importante es
Search URI (Buscar URI). Si pulsa Shift + F1 y hace clic en el campo, se abrirá un
pequeño cuadro de ayuda. La consulta de búsqueda se especifica como \{@}. Lo más
complicado consiste en insertarlo en la posición correcta. En este caso, el ajuste para
la base de datos de asistencia de SUSE es así: Search provider name (Nombre del proveedor de búsquedas) es SUSE Support Database (Base de datos de asistencia
de SUSE), Search URI (Buscar URI) es (una línea) https://portal.suse.com/
PM/page/search.pm?q=\{@}&t=optionSdbKeywords&m=25&l=en&x=
true y URI shortcuts (Accesos directos a URI) es sdb_es.
Después de confirmar la entrada dos veces con OK (Aceptar), escriba la consulta en la
barra de direcciones de Konqueror, por ejemplo, sdb_es:kernel. El resultado se
muestra en la ventana actual.
3.4 Favoritos
En lugar de tener que recordar y volver a escribir las direcciones de los sitios que visite
a menudo, puede registrar dichas direcciones URL como favoritas usando el menú
80
Bookmark (Favoritos). Además de las direcciones de las páginas Web, también puede
usar este procedimiento para registrar como favoritos directorios de su disco local.
Para crear un favorito nuevo en Konqueror, haga clic en Bookmarks → Add Bookmark
(Favoritos - Añadir favoritos). Los favoritos que haya añadido previamente se mostrarán
como elementos del menú. Puede resultar adecuado organizar por temas la colección
de favoritos en una estructura jerárquica para no perder la pista de los distintos elementos.
Si desea crear un nuevo subgrupo para los favoritos, haga clic en New Bookmark Folder
(Nueva carpeta de favoritos). Si selecciona Bookmarks → Edit Bookmarks (Favoritos
- Editar favoritos), se abrirá el editor de favoritos. Use este programa para organizar,
reorganizar, añadir y suprimir favoritos.
Si utiliza Netscape, Mozilla o Firefox como navegadores adicionales, no será necesario
que vuelva a crear los favoritos. La opción File → Import Netscape Bookmarks (Archivo
- Importar favoritos de Netscape) del editor de favoritos le permite integrar los favoritos
de Netscape y Mozilla en su colección actual. También se puede realizar el procedimiento inverso con la opción Export as Netscape Bookmarks (Exportar como favoritos de
Netscape).
Si desea cambiar un favorito, deberá hacer clic con el botón derecho en la entrada.
Aparecerá un menú emergente en el que debe seleccionar la acción que desea llevar a
cabo: cortar, copiar, eliminar, etc. Cuando esté satisfecho con los resultados, guarde el
favorito con la opción File → Save (Archivo - Guardar). Si sólo desea cambiar el
nombre o el enlace, simplemente haga clic con el botón derecho en la entrada de la
barra de herramientas de los favoritos y seleccione Properties (Propiedades). Cambie
el nombre y la ubicación y confirme la acción con Update (Actualizar).
Para guardar la lista de favoritos y tener un acceso instantáneo a ella, haga que los favoritos estén visibles en Konqueror. Seleccione Settings → Toolbars → Bookmark
Toolbar (Konqueror) (Ajustes - Barras de herramientas - Barra de herramientas de favoritos [Konqueror]). Aparecerá automáticamente un panel de favoritos en la ventana
actual de Konqueror.
3.5 Java y JavaScript
Es importante no confundir estos dos lenguajes. Java es un lenguaje de programación
independiente de las plataformas y orientado a objetos desarrollado por Sun Microsystems. A menudo se utiliza para programas pequeños (applets), que se ejecutan en Internet
para aplicaciones de banca en línea, programas de conversación o de compras. JavaScript
Navegador Web Konqueror
81
es un lenguaje de guiones interpretados que se usa fundamentalmente para la estructuración dinámica de las páginas Web, por ejemplo, para los menús y otros efectos.
Konqueror permite habilitar o inhabilitar estos dos lenguajes. Esto se puede hacer incluso
para un dominio específico, lo que significa que puede permitir el acceso a algunos
hosts y bloqueárselo a otros. Java y JavaScript se inhabilitan a menudo por motivos de
seguridad. Lamentablemente, algunas páginas Web requieren que JavaScript esté habilitado para que sea posible visualizarlas correctamente.
3.6 Información adicional
Si tiene alguna pregunta o si le surgen problemas cuando trabaje con Konqueror, consulte el manual de la aplicación, que está disponible a través del menú Help (Ayuda).
Konqueror también tiene una página Web, disponible en la dirección http://www
.konqueror.org.
82
4
Firefox
Junto con SUSE Linux se incluye el navegador Web Mozilla Firefox. Este navegador,
que combina las tecnologías Web más recientes, presenta funciones tales como pestañas,
bloqueo de ventanas emergentes y gestión de descargas e imágenes. Es posible ver más
de una página Web en una sola ventana, suprimir la publicidad molesta o desactivar
las imágenes que sólo ralentizan el trabajo. Su facilidad para acceder a distintos motores
de búsqueda le ayudará a encontrar la información que necesita. El programa se inicia
desde el menú principal o escribiendo el comando firefox. Las funciones principales
del programa se describen a continuación.
4.1 Navegación por sitios Web
Firefox tiene un aspecto similar al de otros navegadores. Es el que se muestra en Figura 4.1, “Ventana de navegación de Firefox” (p. 84). La barra de navegación incluye
los botones Siguiente y Anterior y una barra de ubicación para las direcciones Web.
Asimismo, se proporcionan marcadores para un acceso rápido a las páginas asociadas.
Para obtener más información acerca de las distintas funciones de Firefox, haga clic en
Ayuda en la barra de menús.
Firefox
83
Figura 4.1
Ventana de navegación de Firefox
4.1.1 Navegación en pestañas
Si suele utilizar más de una página Web a la vez, la navegación en pestañas le puede
facilitar el cambio de una a otra. Cargue sitios Web en pestañas distintas de la misma
ventana.
Para abrir una pestaña nueva, seleccione Archivo → Nueva pestaña. De esta forma se
abre una pestaña vacía en la ventana de Firefox. También es posible hacer clic con el
botón derecho en un enlace y seleccionar Abrir en una nueva pestaña. Haga clic con
el botón derecho en la pestaña para acceder a más opciones. Puede crear una pestaña
nueva, recargar una o todas las existentes y cerrarlas.
84
4.1.2 Uso del panel lateral
Utilice el lado izquierdo de la ventana del navegador para ver los marcadores o el historial de navegación. Las extensiones también pueden añadir nuevas formas de utilizar
el panel lateral. Para mostrar el panel lateral, seleccione Ver → Panel lateral y seleccione
el contenido que desee.
4.2 Búsqueda de información
Existen dos formas de buscar información en Firefox: la barra de búsqueda y la barra
Buscar. En la barra de búsqueda se buscan páginas; en la barra Buscar, elementos de
la página actual.
4.2.1 Uso de la barra de búsqueda
Firefox dispone de una barra de búsquedas que puede acceder a distintos motores, como
Google, Yahoo o Amazon. Por ejemplo, si desea buscar información acerca de SUSE
con el motor actual, haga clic en la barra de búsqueda, escriba SUSE y pulse Intro . Los
resultados aparecerán en la ventana. Para elegir el motor de búsqueda, haga clic en el
icono de la barra. Se abrirá un menú con una lista de motores de búsqueda disponibles.
4.2.2 Uso de la barra Buscar
Para realizar búsquedas dentro de una página Web, haga clic en Editar → Buscar en
esta página o pulse Ctrl + F y se abrirá la barra Buscar. Normalmente se muestra en
la parte inferior de la ventana. Escriba la consulta en el campo de entrada. Firefox resaltará todas las apariciones de la frase indicada. Con la opción Resaltar se habilita o inhabilita el resaltado.
4.3 Gestión de marcadores
Los marcadores suponen una forma útil de guardar enlaces a las páginas Web favoritas.
Para añadir el sitio Web actual a la lista de marcadores, haga clic en Marcadores →
Firefox
85
Añadir esta página a marcadores. Si en esos momentos el navegador muestra varias
pestañas de sitios Web, sólo se añadirá la URL de la pestaña seleccionada.
Al añadir un marcador, se puede especificar un nombre alternativo para éste y seleccionar
la carpeta en la que Firefox debe almacenarlo. Para eliminar un sitio Web de la lista de
marcadores, haga clic en Marcadores, haga clic con el botón derecho en el marcador
correspondiente de la lista y, seguidamente, haga clic en Borrar.
4.3.1 Uso del administrador de marcadores
El administrador de marcadores puede utilizarse para gestionar las propiedades de cada
marcador (nombre y dirección de la ubicación), así como para organizar los marcadores
en carpetas y secciones. Tiene el aspecto mostrado en Figura 4.2, “Uso del administrador
de marcadores de Firefox” (p. 86).
Figura 4.2
Uso del administrador de marcadores de Firefox
Para abrir el administrador de marcadores, haga clic en Marcadores → Administrar
marcadores. Se abrirá una ventana en la que se muestran los marcadores. Con la opción
Nueva carpeta se crea una carpeta nueva y se indica un nombre y una descripción. Si
necesita un marcador nuevo, haga clic en Nuevo marcador. De esta forma podrá introducir un nombre, una ubicación, palabras claves y una descripción. La palabra clave
86
es un método abreviado para acceder al marcador. Si necesita mostrar los marcadores
recién creados en el panel lateral, marque la casilla Cargar este marcador en el panel
lateral.
4.3.2 Importación de marcadores
Si ha utilizado un navegador distinto en el pasado, probablemente desee utilizar sus
preferencias y marcadores también en Firefox. De momento es posible importarlos a
partir de Netscape 4.x, 6, 7, Mozilla 1.x y Opera.
Para importar la configuración, haga clic en Archivo → Importar. Seleccione el navegador del que desee importar la configuración. Al hacer clic en Siguiente se importará
la configuración. Los marcadores importados aparecerán en una carpeta nueva, que
comienza por la palabra De.
4.3.3 Marcadores vivos
Los marcadores vivos muestran titulares de noticias en el menú de marcadores y le
permite mantenerse informado con las últimas noticias. De esta forma puede ahorrar
tiempo al echar un vistazo a sus sitios favoritos.
Hay muchos sitios y blogs que admiten este formato. Los sitios Web lo indican mostrando un rectángulo rojo con las letras RSS en el interior en la esquina inferior derecha.
Haga clic en el rectángulo y seleccione la opción para suscribirse al NOMBRE DEL
HILO. Se abrirá un cuadro de diálogo en el que podrá seleccionar el nombre y la ubicación del marcador vivo. Confirme haciendo clic en Añadir.
Algunos sitios no informan a Firefox de que admiten el servicio de noticias, aunque sí
lo hacen. Para añadir manualmente un marcador vivo necesita la URL del hilo. Haga
lo siguiente:
Procedimiento 4.1
Adición de un marcador vivo manualmente
1 Abra el administrador de marcadores con Marcadores → Administrar marcadores.
Se abrirá una ventana nueva.
2 Seleccione Archivo → Nuevo marcador vivo. Se abrirá un cuadro de diálogo.
Firefox
87
3 Escriba un nombre para el marcador vivo y añada la URL, por ejemplo, http://
www.novell.com/newsfeeds/rss/coolsolutions.xml. Firefox
actualizará los marcadores vivos.
4 Cierre el administrador de marcadores.
4.4 Uso del gestor de descargas
Con ayuda del gestor de descargas puede hacer un seguimiento de las descargas actuales
y pasadas. Para abrir el gestor de descargas, haga clic en Herramientas → Descargas.
Firefox abrirá una ventana con las descargas realizadas. Cuando se descarga un archivo
se observa una barra de progreso y el archivo actual. Si es necesario, es posible detener
la descarga y reanudarla posteriormente. Para abrir un archivo descargado, haga clic
en Abrir y para borrarlo haga clic en Eliminar. Si necesita información acerca del archivo, haga clic con el botón derecho en su nombre y seleccione Propiedades.
Si necesita tener más control del gestor de descargas, abra la ventana de configuración
haciendo clic en Herramientas → Preferencias y diríjase a la pestaña Descargas. Aquí
es posible determinar la carpeta de descarga, el comportamiento del gestor y algunos
ajustes sobre los tipos de archivos.
4.5 Personalización de Firefox
Firefox cuenta con la posibilidad de instalar extensiones, cambiar temas y añadir palabras
clave inteligentes para las búsquedas en Internet, lo que permite personalizar ampliamente el programa.
4.5.1 Extensiones
Mozilla Firefox es una aplicación multifuncional, lo que significa que se pueden descargar e instalar programas complementarios, conocidos como extensiones. Por ejemplo,
es posible añadir un gestor de descargas nuevo e iconos de ratón. Esto tiene la ventaja
de que el propio programa de Firefox mantiene su pequeño tamaño y no se infla.
Para añadir una extensión, haga clic en Herramientas → Extensiones. En la esquina
inferior derecha, haga clic en Obtener más extensiones para abrir la página Web de
88
extensiones de Mozilla, en la que podrá elegir entre las disponibles. Haga clic en la
extensión que desee instalar y, seguidamente en el enlace correspondiente para descargarla e instalarla. Al reiniciar Firefox, la nueva extensión estará disponible. También
es posible estudiar las distintas extensiones en http://update.mozilla.org/
.
Figura 4.3
Instalación de extensiones de Firefox
4.5.2 Cambio de temas
Si no le agrada el aspecto estándar de Firefox, puede instalar un tema nuevo. Los temas
no cambian la forma de funcionar del programa, sólo el aspecto del navegador. Al instalar un tema, Firefox pide confirmación: acepte la instalación o cancélela. Tras instalar
un tema nuevo con éxito, podrá activarlo.
1 Haga clic en Herramientas → Temas.
2 Se abrirá un cuadro de diálogo. Haga clic en Obtener más temas. Si ya ha instalado un tema, búsquelo en la lista, como se muestra en la Figura 4.4, “Instalación
de temas de Firefox” (p. 90).
Firefox
89
Figura 4.4
Instalación de temas de Firefox
3 Se abrirá una ventana nueva con el sitio Web https://update.mozilla
.org.
4 Seleccione un tema y haga clic en Instalar ahora.
5 Confirme la descarga y la instalación.
6 Tras descargar el tema se abrirá un cuadro de diálogo en el que se le informa
sobre la lista de temas de que dispone. Active el tema nuevo con Usar tema.
7 Cierre la ventana y reinicie Firefox.
Si un tema está instalado, siempre es posible cambiar a otro distinto sin tener que reiniciar. Basta con hacer clic en Herramientas → Temas y, a continuación, en Usar tema.
Si no va a volver a utilizar el tema puede suprimirlo en el mismo cuadro de diálogo
mediante la opción Desinstalar.
4.5.3 Adición de palabras clave inteligentes
a las búsquedas en Internet
Las búsquedas en Internet son una de las principales tareas que se pueden realizar con
un navegador. Firefox permite definir palabras clave inteligentes propias: abreviaciones
para utilizarlas como “comandos” para realizar búsquedas en Web. Por ejemplo, si
90
utiliza Wikipedia a menudo, utilice una palabra clave inteligente para simplificar esta
tarea:
1 Diríjase a http://en.wikipedia.org.
2 Cuando se muestre la página en Firefox, diríjase al campo de texto de búsqueda.
Haga clic en él con el botón derecho y seleccione Añadir una palabra clave a
esta búsqueda en el menú emergente.
3 Se mostrará el cuadro de diálogo Añadir marcador. En el campo Nombre, indique
el nombre de esta página Web, por ejemplo, Wikipedia (en).
4 En Palabra clave, indique la abreviación de esta página, por ejemplo, wiki.
5 En la lista Crear en puede seleccionar la ubicación que tendrá la entrada en la
sección de marcadores. Puede incluirla en la Barra de marcadores, pero cualquier
otro nivel es también válido.
6 Termine el proceso haciendo clic en Añadir.
Habrá generado correctamente una palabra clave nueva. Cuando necesite realizar búsquedas en Wikipedia, no tendrá que utilizar la URL completa, bastará con que escriba
wiki Linux para ver la entrada acerca de Linux.
4.6 Impresión desde Firefox
En el cuadro de diálogo Configuración de página se puede configurar la forma en que
Firefox imprimirá el contenido que muestra. Haga clic en Archivo → Configurar página
y diríjase a la pestaña Formato y opciones para seleccionar la orientación de los trabajos
de impresión. Se puede ajustar la escala manual o automáticamente. Para imprimir el
fondo, seleccione Imprimir fondo (colores e imágenes). Haga clic en la pestaña Márgenes
y cabecera/pie de página para ajustar los márgenes y seleccionar qué se va a incluir en
los encabezados y los pies de página.
Tras configurar los ajustes, la página Web se imprime con la opción Archivo → Imprimir.
Seleccione la impresora o el archivo en el que se guardará el resultado. En Preferencias
se puede definir el tamaño del papel, indicar un comando de impresión, elegir entre
imprimir en color o en blanco y negro y determinar los márgenes. Cuando quede satisfecho con los ajustes, haga clic en Imprimir.
Firefox
91
4.7 Información adicional
Encontrará información adicional acerca de Firefox en la página oficial en http://
www.mozilla.org/products/firefox/. Consulte la ayuda integrada para
obtener más información sobre opciones y funciones concretas.
92
Linphone: VoIP para escritorios
Linux
5
Linphone es una pequeña aplicación telefónica vía Web para escritorios Linux. Permite
realizar llamadas entre dos ubicaciones a través de Internet. No hay ningún requisito
especial de hardware: una estación de trabajo normal con una tarjeta de sonido configurada de forma adecuada, un micrófono y altavoces o auriculares es todo lo que necesitará para empezar a utilizar Linphone.
5.1 Configuración de Linphone
Antes de empezar a utilizar Linphone es necesario tomar algunas decisiones básicas y
llevar a cabo algunas tareas de configuración. En primer lugar, determine y configure
el modo de ejecución de Linphone, determine el tipo de conexión que desee utilizar e
inicie la configuración de Linphone [Go → Preferences (Ir - Preferencias)] para realizar
los ajustes necesarios.
5.1.1 Determinación del modo de ejecución
de Linphone
Linphone puede ejecutarse en dos modos diferentes, en función del tipo de escritorio
que utilice y su configuración.
Linphone: VoIP para escritorios Linux
93
Aplicación normal
Después de instalar el softwarede Linphone, se puede iniciar desde los menús de
aplicaciones de GNOME o KDE, o bien desde la línea de comandos. Si Linphone
no se está ejecutando, no recibirá las llamadas entrantes.
Applet de panel de GNOME
Linphone puede añadirse al panel de GNOME. Haga clic con el botón derecho en
una zona vacía del panel, seleccione Add to Panel (Añadir a panel) y luego Linphone.
Linphone se añadirá de forma permanente al panel y se iniciará automáticamente
al iniciar una sesión. Mientras no reciba ninguna llamada entrante, se ejecutará en
segundo plano. Al recibir una llamada entrante, se abrirá la ventana principal y recibirá la llamada. Para abrir la ventana principal cuando desee llamar a alguien,
haga clic en el icono del applet.
5.1.2 Determinación del tipo de conexión
Hay varias maneras diferentes de realizar una llamada empleando Linphone. El modo
en que se realizan las llamadas y en que se establece el contacto con el interlocutor dependen del modo en que el usuario esté conectado a la red o a Internet.
Linphone utiliza el protocolo de inicio de sesiones (SIP) para establecer la conexión
con un host remoto. En SIP, cada parte está identificada por una URL SIP:
sip:nombredeusuario@nombredehost
nombredeusuario es el inicio de sesión en el equipo Linux y nombredehost,
el del equipo que esté utilizando. Si utiliza un proveedor de SIP, la dirección URL
tendrá un aspecto similar a la del siguiente ejemplo:
sip:nombredeusuario@servidorsip
nombredeusuario es el nombre de usuario elegido durante el registro en el servidor
SIP. servidorsip es la dirección del servidor SIP del proveedor. Si desea obtener
más información sobre el procedimiento de registro, consulte la Sección 5.1.5, “Configuración de las opciones de SIP” (p. 97) y la documentación de registro del proveedor.
Para obtener una lista de proveedores adecuados para sus fines, consulte las páginas
Web mencionadas en la Sección 5.8, “Información adicional” (p. 105).
La URL que deberá utilizar depende del tipo de conexión que utilice. Si decide llamar
directamente sin ningún redireccionamiento a través de un proveedor SIP, deberá intro-
94
ducir una dirección URL del primer tipo. Si elige llamar a través de un servidor SIP,
deberá introducir una URL del segundo tipo.
Llamadas a la misma red
Si pretende llamar a un amigo o compañero de trabajo de la misma red, sólo necesitará
el nombre de usuario y el nombre de host correcto para crear una URL SIP válida. Esto
es aplicable también a las personas que deseen llamarle. Si no hay ningún cortafuegos
configurado entre el usuario y su interlocutor, no es necesario llevar a cabo ningún
proceso de configuración adicional.
Llamadas a través de redes diferentes o Internet
(configuración con IP estática)
Si está conectado a Internet con una dirección IP estática, cualquier persona que desee
llamarle sólo necesitará su nombre de usuario y el nombre de host o dirección IP de su
estación de trabajo para crear una dirección URL SIP válida, tal como se describe en
la “Llamadas a la misma red” (p. 95). Si usted o la persona que realiza la llamada se
encuentran protegidos por un cortafuegos que protege el tráfico de entrada y de salida,
abra el puerto SIP (5060) y el puerto RTP (7078) en el equipo con el cortafuegos
para que el tráfico de Linphone pueda atravesarlo.
Llamadas a través de redes diferentes o Internet
(configuración con IP dinámica)
Si la configuración IP no es estática (es decir, si obtiene una dirección IP de forma dinámica cada vez que se conecta a Internet), será imposible para los comunicantes crear
una dirección URL SIP válida a partir de su nombre de usuario y una dirección IP. En
estos casos, emplee los servicios ofrecidos por los proveedores SIP o emplee una configuración DynDNS para garantizar que los comunicantes externos se conecten al
equipo host adecuado. Hay más información disponible sobre DynDNS en http://
en.wikipedia.org/wiki/Dynamic_DNS.
Llamadas a través de redes diferentes y cortafuegos
Los equipos protegidos por un cortafuegos no muestran sus direcciones IP en Internet.
Por lo tanto, nadie que intente llamar al usuario de uno de esos equipos puede acceder
Linphone: VoIP para escritorios Linux
95
a ellos directamente. Linphone permite establecer llamadas entre distintas redes y a
través de cortafuegos empleando un alterno SIP o transmitiendo las llamadas a un proveedor SIP. Consulte la Sección 5.1.5, “Configuración de las opciones de SIP” (p. 97)
para acceder a una descripción detallada de los ajustes necesarios para utilizar un servidor
SIP externo.
5.1.3 Configuración de los parámetros de
red
La mayoría de los ajustes de la pestaña Network (Red) no requieren ninguna configuración adicional. Debería ser posible realizar la primera llamada sin necesidad de modificarlos.
NAT Traversal Options (Opciones de NAT Traversal)
Habilite esta opción sólo si se encuentra en una red privada, protegida por un cortafuegos y no utiliza un proveedor SIP para encaminar las llamadas. Marque la casilla
de verificación e introduzca la dirección IP del equipo con el cortafuegos, por
ejemplo 192.168.34.166.
RTP Properties (Propiedades de RTP)
Linphone utiliza el protocolo de transporte en tiempo real (RTP) para transmitir los
datos de audio de las llamadas. El puerto por defecto de RTP es el 7078, y no debe
modificarse a menos que haya otra aplicación que lo utilice. El parámetro de compensación de vibración se utiliza para controlar el número de paquetes de audio que
Linphone almacena en el buffer antes de reproducirlos. Al aumentar el valor de este
parámetro, mejora la calidad de la transmisión. Si hay más paquetes en el buffer,
es más probable que se reproduzca los paquetes que tardan más en llegar.“” Por
otra parte, al aumentar el número de paquetes almacenados en el buffer, también
aumenta la latencia, por lo que la voz del interlocutor se oye con un cierto retraso.
Al modificar este parámetro hay que tener cuidado de mantener el equilibrio entre
ambos factores.
Other (Otros)
Si utiliza una combinación de VoIP y telefonía fija, es posible que desee emplear
la tecnología de frecuencia de tono dual multiplexada (DTMF) para activar determinadas acciones, como una comprobación remota del buzón de voz pulsando determinadas teclas. Linphone es compatible con dos protocolos de transmisión DTMF:
SIP INFO y RTP rfc2833. Si necesita utilizar las funciones DTMF en Linphone,
96
seleccione un proveedor SIP que admita uno de estos protocolos. Para acceder a
una lista completa de proveedores de VoIP, consulte la Sección 5.8, “Información
adicional” (p. 105).
5.1.4 Configuración del dispositivo de
sonido
Si Linux ha detectado correctamente la tarjeta de sonido, Linphone utilizará automáticamente el dispositivo detectado como el dispositivo de sonido por defecto. No modifique el valor de Use sound device (Usar dispositivo de sonido). Utilice Recording
source (Origen de grabación) para determinar el origen de grabación que desee utilizar.
En la mayoría de los casos, será un micrófono (micro). Para seleccionar un sonido
de timbre personalizado, utilice Browse (Examinar) para seleccionar uno y compruebe
su elección empleando Listen (Escuchar). Haga clic en Apply (Aplicar) para aceptar los
cambios.
5.1.5 Configuración de las opciones de SIP
El cuadro de diálogo SIP contiene todos los ajustes de configuración de SIP.
SIP Port (Puerto SIP)
Determina en qué puerto se debe ejecutar el agente de usuario SIP. El puerto por
defecto para SIP es el 5060. No modifique el valor por defecto a menos que
exista otra aplicación o protocolo que necesite ese puerto.
Identity (Identidad)
Cualquiera que desee llamarle directamente sin utilizar un alterno SIP o un proveedor
SIP deberá conocer su dirección SIP válida. Linphone crea una dirección SIP válida
para el usuario.
Remote Services (Servicios remotos)
Esta lista contiene uno o varios proveedores de servicios SIP con los que ha creado
una cuenta de usuario. La información acerca de los servidores puede añadirse,
modificarse o suprimirse en cualquier momento. Consulte Adición de un alterno
SIP y registro en un servidor SIP remoto (p. 98) para conocer el procedimiento de
registro.
Linphone: VoIP para escritorios Linux
97
Authentication Information (Información de autenticación)
Para registrarse en un servidor SIP remoto, deberá proporcionar determinados datos
de autenticación, como un nombre de usuario y una contraseña. Linphone almacena
estos datos cuando los indica. Para desecharlos por motivos de seguridad, haga clic
en Clear all stored authentification data (Borrar todos los datos de autenticación
almacenados).
La lista Remote services (Servicios remotos) puede estar formada por varias direcciones
de alternos SIP remotos o proveedores de servicios.
Procedimiento 5.1 Adición de un alterno SIP y registro en un servidor SIP remoto
1 Seleccione un proveedor SIP adecuado y cree una cuenta con él.
2 Inicie Linphone.
3 Acceda a Go → Preferences → SIP (Ir - Preferencias - SIP).
4 Haga clic en Add proxy/registrar (Añadir alterno/registro) para abrir un formulario
de registro.
5 Indique los valores adecuados en los campos Registration Period (Período de
registro), SIP Identity (Identidad SIP), SIP Proxy (Alterno SIP) y Route (Ruta).
Si trabaja con un equipo protegido por un cortafuegos, seleccione siempre Send
registration (Enviar registro) e introduzca un valor adecuado en Registration
Period (Período de registro). De este modo, se reenviarán los datos de registro
originales cuando transcurra un determinado período de tiempo, a fin de mantener
abiertos en el cortafuegos los puertos que Linphone necesita para funcionar. De
lo contrario, el cortafuegos cerraría automáticamente los puertos al no recibir
más paquetes de ese tipo. El reenvío de los datos de registro también es necesario
para que el servidor SIP se mantenga informado del estado de la conexión en
cada momento y la ubicación del comunicante. En SIP identity (Identidad SIP),
introduzca la URL SIP que debe utilizarse para las llamadas locales. Para utilizar
el servidor también como alterno SIP, introduzca los mismos datos en SIP Proxy
(Alterno SIP). Por último, añada un ruta opcional si es necesario y salga del
cuadro de diálogo haciendo clic en OK (Aceptar).
98
5.1.6 Configuración de los códecs de audio
Linphone es compatible con varios códecs para la transmisión de datos de voz. Establezca el tipo de conexión y seleccione los códecs que prefiera en la lista. Los códecs
no adecuados para el tipo de conexión actual estarán en rojo y no será posible seleccionarlos.
5.2 Comprobación de Linphone
Pruebe la configuración de Linphone utilizando sipomatic, un pequeño programa
de prueba que permite responder a las llamadas realizadas desde Linphone.
Procedimiento 5.2
Comprobación de una configuración de Linphone
1 Abra un terminal.
2 Escriba sipomatic en el indicador de la línea de comandos.
3 Inicie Linphone.
4 Introduzca sip:[email protected]:5064 como dirección SIP y haga clic
en Call or Answer (Llamar o responder).
5 Si Linphone está configurado correctamente, oirá un tono de llamada y, al poco
tiempo, un aviso corto.
Si ha llevado a cabo este procedimiento correctamente, la configuración de audio y la
de red están funcionando de forma adecuada. Si la prueba no se lleva a cabo correctamente, compruebe si el dispositivo de sonido está configurado de forma adecuada y si
el nivel de reproducción tiene un valor razonable. Si sigue sin oír nada, compruebe la
configuración de red, incluidos los números de puertos SIP y RTP. Si hay alguna otra
aplicación o protocolo que emplee los puertos por defecto de Linphone, tenga en
cuenta la posibilidad de modificar los puertos y vuelva a intentarlo.
Linphone: VoIP para escritorios Linux
99
5.3 Realización de una llamada
Cuando haya configurado Linphone correctamente, el proceso de realización de llamadas
es muy sencillo. Dependiendo del tipo de llamada (consulte la Sección 5.1.2, “Determinación del tipo de conexión” (p. 94) como referencia), el procedimiento de llamada
cambia ligeramente.
1 Inicie Linphone desde el menú o desde la línea de comandos.
2 Introduzca la dirección SIP del interlocutor en el indicador SIP address (Dirección
SIP). La dirección debe tener un formato similar a
sip:nombredeusuario@nombrededominio o
nombredeusuario@nombredehost para las llamadas locales directas, o
bien nombredeusuario@servidorsip o iddeusuario@servidorsip
para las llamadas a través de alternos o que utilicen los servicios de un proveedor
SIP.
3 Si utiliza un proveedor de servicios SIP o un alterno, seleccione el alterno o el
proveedor adecuado en Proxy to use (Alterno que se debe utilizar) y proporcione
los datos de autenticación solicitados por el alterno.
4 Haga clic en Call or Answer (Llamar o responder) y espere a que su interlocutor
responda a la llamada.
5 Cuando haya terminado o desee finalizar la llamada, haga clic en Release or
Refuse (Liberar o rechazar) y salga de Linphone.
Si necesita ajustar los parámetros de sonido durante una llamada, haga clic en Show
more (Mostar más) para que aparezcan cuatro pestañas que contienen opciones adicionales. La primera contiene las opciones de Sound (Sonido) Playback level (Nivel de
reproducción) y Recording level (Nivel de grabación). Utilice los deslizadores para
ajustar ambos volúmenes de modo que se adapten a sus necesidades.
La pestaña Presence (Presencia) le permite establecer el estado en línea del usuario.
Esta información se transmitirá a cualquiera que intente ponerse en contacto. Si va a
estar ausente durante un período prolongado y desea informar de ello a las personas
que le llamen, marque Away (Ausente). Si simplemente está ocupado, pero desea que
las personas que le llamen vuelvan a intentarlo, marque Busy, I'll be back in ... min
(Ocupado, volveré dentro de ... min) y especifique durante cuánto tiempo no estará
disponible. Cuando vuelva a estar disponible, vuelva a definir el estado por defecto
100
(Reachable) (Disponible). El que otras personas puedan comprobar su estado en línea
está determinado por el ajuste Subscribe Policy (Directiva de suscripción) de la libreta
de direcciones, tal y como describe la Sección 5.5, “Utilización de la libreta de direcciones” (p. 102). Si cualquier interlocutor incluido en la libreta de direcciones publica
su estado en línea, podrá supervisarlo empleando la pestaña My online friends (Mis
amigos en línea).
La pestaña DTMF puede utilizarse para introducir códigos DTMF para la comprobación
de buzones de voz. Para comprobar su buzón de voz, introduzca la dirección SIP adecuada y utilice el teclado de la pestaña DTMF para introducir el código del buzón. Por
último, haga clic en Call or Answer (Llamar o responder) como si realizase una llamada
normal.
5.4 Respuesta a una llamada
Dependiendo del modo de ejecución seleccionado para Linphone, hay varios modos
en los que se le notificarán las llamadas entrantes:
Aplicación normal
Sólo recibirá y podrá responder a las llamadas entrantes si Linphone ya se está ejecutando. Oirá el sonido del timbre en los auriculares o los altavoces. Si Linphone
no se está ejecutando, no recibirá las llamadas.
Applet de panel de GNOME
Normalmente el applet de panel de Linphone se ejecuta en segundo plano sin que
se perciba su existencia. Esto cambia en el momento en que se recibe una llamada:
se abre la ventana principal de Linphone y se oye un sonido de timbre en los auriculares o altavoces.
Una vez notificada una llamada entrante, haga clic en Call or Answer (Llamar o responder) para responder al teléfono y comenzar a hablar. Si no desea aceptar la llamada,
haga clic en Release of Refuse.
Linphone: VoIP para escritorios Linux
101
5.5 Utilización de la libreta de
direcciones
Linphone ofrece la posibilidad de gestionar los contactos SIP. Abra la libreta de direcciones seleccionando Go → Address book (Ir - Libreta de direcciones). Se abrirá una
ventana de lista vacía. Haga clic en Add (Añadir) para añadir un contacto.
Deberá introducir las siguientes entradas para los contactos válidos:
Nombre
Escriba el nombre del contacto. Puede ser un nombre completo, pero también un
apodo. Seleccione algo que le recuerde de forma inequívoca a la persona. Si decide
que desea ver el estado en línea de la persona, este nombre aparecerá en la pestaña
My online friends (Mis amigos en línea) de la ventana principal.
SIP Address (Dirección SIP)
Introduzca la dirección SIP válida del contacto.
Proxy to Use (Alterno que se debe utilizar)
Si es necesario, introduzca el alterno que desee emplear para esta conexión en concreto. En la mayoría de los casos, será sencillamente la dirección SIP del servidor
SIP que utilice.
Subscribe Policy (Directiva de suscripción)
La directiva de suscripción determina si la presencia o ausencia puede ser observada
por los demás.
Para llamar a un contacto de la libreta de direcciones, selecciónelo con el ratón, haga
clic en Select (Seleccionar) para hacer que la dirección aparezca en el campo de dirección
de la ventana principal e inicie la llamada con Call or Answer (Llamar o responder) del
modo habitual.
5.6 Resolución de problemas
Intento llamar a alguien, pero no puedo establecer la conexión.
Hay varios motivos por los que una llamada puede no llevarse a cabo correctamente:
102
La conexión a Internet se ha interrumpido.
Dado que Linphone utiliza Internet para transmitir las llamadas, compruebe que
el equipo esté conectado y configurado correctamente para hacer uso de Internet.
Esto se puede comprobar fácilmente intentando visualizar una página Web empleando el navegador. Si la conexión a Internet funciona, es posible que el interlocutor no esté disponible.
La persona a la que llama no está disponible.
Si el interlocutor rechaza la llamada, no se establece la conexión. Si Linphone
no se está ejecutando en el equipo del interlocutor cuando se realiza la llamada,
no se establece la conexión. Si la conexión a Internet del interlocutor se ha interrumpido, tampoco es posible establecer la conexión.
Parece que mi llamada establece la conexión, pero no oigo nada.
En primer lugar, compruebe que el dispositivo de sonido esté configurado de forma
adecuada. Para ello, inicie cualquier otra aplicación que emplee sonido, como un
reproductor multimedia. Compruebe que Linphone tenga los permisos necesarios
para abrir el dispositivo. Cierre todos los programas que utilicen el dispositivo de
sonido para evitar conflictos de recursos.
Si las comprobaciones anteriores tienen un resultado satisfactorio, pero sigue sin
oír nada, suba los niveles de grabación y reproducción en la pestaña Sound (Sonido).
La voz en ambos extremos suena extrañamente recortada.
Intente ajustar el buffer de vibración empleando las RTP properties (Propiedades
RTP) de Preferences → Network (Preferencias - Red) para compensar los paquetes
de voz retrasados. Al hacerlo, tenga en cuenta que aumentará la latencia.
DTMF no funciona.
Ha intentado comprobar el buzón de voz empleando el teclado DTMF, pero no se
puede establecer la conexión. Hay tres protocolos diferentes que se utilizan para la
transmisión de datos DTMF, pero Linphone sólo admite dos de ellos (SIP INFO y
RTP rfc2833). Consulte a su proveedor para saber si admite alguno de los dos. El
protocolo que Linphone utiliza por defecto es rfc2833, pero si no funciona, puede
cambiarlo a SIP INFO en Preferences → Network → Other (Preferencias - Red Otros). Si no funciona con ninguno de los dos protocolos, no podrá realizar transmisiones DTMF con Linphone.
Linphone: VoIP para escritorios Linux
103
5.7 Glosario
A continuación encontrará breves descripciones de los términos técnicos más importantes
mencionados en este documento:
VoIP
VoIP significa protocolo de voz sobre IP. Esta tecnología permite la transmisión
de llamadas telefónicas normales por Internet empleando rutas vinculadas a paquetes.
La información de voz se envía en paquetes discretos, como todos los tipos de datos
que se transmiten por Internet a través del protocolo IP.
SIP
SIP significa protocolo de inicio de sesiones. Este protocolo se utiliza para establecer
sesiones de medios en redes. En el contexto de Linphone, SIP es la "magia" que
activa el timbre en el equipo del interlocutor, inicia la llamada y también la finaliza
cuando uno de los interlocutores decide colgar. El encargado de la transmisión
efectiva de los datos de voz es el protocolo RTP.
RTP
RTP significa protocolo de transporte en tiempo real. Permite transportar flujos de
medios en las redes y funciona a través de UDP. Los datos se transmiten mediante
paquetes discretos numerados, que transportan un sello temporal que permite establecer la secuencia temporal correcta y detectar los paquetes perdidos.
DTMF
Un codificador DTMF, al igual que un teléfono normal, emplea pares de tonos para
representar las distintas teclas. Cada tecla está asociada a una combinación exclusiva
de un tono alto y uno bajo. Un descodificador traduce estas combinaciones de tonos
a números. Linphone permite emplear señales DTMF para activar acciones remotas,
como comprobar el buzón de voz.
códec
Los códecs son algoritmos especialmente diseñados para comprimir los datos de
audio y vídeo.
vibración
La vibración es la variación de latencia (los retrasos) de una conexión. Los dispositivos de audio o los sistemas orientados a conexiones, como RDSI o PSTN, necesitan
un flujo continuo de datos. Para compensarlo, los terminales y gateways VoIP incorporan un buffer de vibración que recopila los paquetes antes de enviarlos a otros
104
dispositivos de audio o líneas orientadas a conexiones (como RDSI). Al aumentar
el tamaño del buffer de jitter disminuye la probabilidad de que se pierdan datos,
pero aumenta la latencia de la conexión.
5.8 Información adicional
Para obtener información general sobre VoIP, consulte el artículo Wiki sobre VoIP en
http://voip-info.org/tiki-index.php. Para acceder a una lista completa
de los proveedores que ofrecen servicios VoIP en su país de residencia, consulte
http://voip-info.org/wiki-VOIP+Service+Providers
+Residential.
Linphone: VoIP para escritorios Linux
105
6
Cifrado con KGpg
KGpg es un componente muy importante en la infraestructura de cifrado del sistema.
Con la ayuda de este programa podrá generar y gestionar todas las claves necesarias,
utilizar la función de editor para crear y cifrar archivos rápidamente o utilizar el applet
del panel para cifrar o descifrar mediante el método de arrastrar y soltar. Otros programas, como el de correo electrónico (Kontact o Evolution), acceden a los datos principales
para procesar el contenido firmado o cifrado. Este capítulo trata sobre las funciones
básicas necesarias para trabajar con archivos cifrados.
6.1 Generación de pares de claves
nuevos
Para poder intercambiar mensajes cifrados con otros usuarios, primero se debe generar
un par de claves propio. Una parte, la clave pública, se distribuye a las personas con
las que se suele comunicar, que la pueden utilizar para cifrar los archivos o los mensajes
de correo electrónico que envíen. La otra parte del par de claves, la clave privada, se
utiliza para descifrar el contenido cifrado.
IMPORTANTE: Clave privada frente a clave pública
La clave pública está destinada a los demás usuarios y debe distribuirse a todas
las personas con las que se establece comunicación. No obstante, sólo usted
deberá tener acceso a la clave privada. No otorgue derechos de acceso a estos
datos a ningún otro usuario.
Cifrado con KGpg
107
Inicie KGpg desde el menú principal seleccionando Utilidades → KGpg, o introduzca
kgpg en la línea de comandos. Cuando se inicia un programa por primera vez, aparece
un asistente para guiarle por el proceso de configuración. Siga las instrucciones hasta
que se le solicite que cree una clave. Introduzca un nombre, una dirección de correo
electrónico y, opcionalmente, un comentario. Si no le interesa dejar los ajustes por defecto, defina la hora de caducidad de la clave, su tamaño y qué algoritmo de cifrado se
debe emplear. Consulte Figura 6.1, “KGpg: Creación de claves” (p. 108).
Figura 6.1
KGpg: Creación de claves
Confirme sus ajustes con Aceptar. El siguiente cuadro de diálogo le pide que introduzca
dos veces una contraseña. El programa genera después el par de claves y muestra un
resumen. Es conveniente guardar e imprimir un certificado de revocación inmediatamente. Necesitará este certificado si olvida la contraseña para la clave privada y tiene
que revocarla. Tras confirmar haciendo clic en OK (Aceptar), aparece la ventana principal de KGpg. Consulte la Figura 6.2, “Gestor de claves” (p. 109).
108
Figura 6.2
Gestor de claves
6.2 Exportación de claves públicas
Después de generar el par de claves, debe proporcionar la clave pública al resto de los
usuarios. Esto les permitirá utilizarla para cifrar o para firmar los mensajes o los archivos
que le envíen. Para ello, seleccione Keys (Claves) → Export Public Key(s) (Exportar
claves públicas). El cuadro de diálogo que se abre ofrece cuatro opciones:
Email
Se envía la clave pública por correo electrónico al destinatario que elija. Si activa
esta opción y confirma con OK (Aceptar), aparecerá el recuadro de diálogo para
crear un nuevo mensaje de correo electrónico con KMail. Introduzca el destinatario
y haga clic en Send (Enviar). El destinatario recibirá la clave, tras lo cual podrá enviarle contenido cifrado.
Clipboard
Puede colocar aquí la clave pública antes de continuar procesándola.
Default Key Server
Para facilitar su clave pública a un gran número de personas, expórtela a los servidores de claves en Internet. Para obtener más información, consulte Sección 6.4,
“Cuadro de diálogo Key Server (Servidor de claves)” (p. 111).
Cifrado con KGpg
109
archivo
Si prefiere distribuir la clave como un archivo en un medio de datos, en lugar de
enviarla por correo electrónico, haga clic en esta opción, confirme o cambie el
nombre de archivo y la vía y, a continuación, haga clic en OK (Aceptar).
6.3 Importación de claves
Si recibe una clave en un archivo (por ejemplo como un adjunto de correo electrónico),
intégrela en el patrón de claves mediante la opción Import Key (Importar clave) y utilícela para comunicarse de forma cifrada con el remitente. El procedimiento es similar
al procedimiento de exportación de claves descrito anteriormente.
6.3.1 Firma de claves
Como cualquier otro archivo, las claves se pueden firmar para garantizar su autenticidad
e integridad. Si está completamente seguro de que alguna de las claves importadas
pertenece a la persona especificada como propietario, exprese con una firma su confianza
en la autenticidad de la clave.
IMPORTANTE: Establecimiento de una red de confianza
La comunicación cifrada sólo puede ser segura si se pueden asociar las claves
públicas en circulación con el usuario especificado. Comprobando y firmando
estas claves se contribuye al establecimiento de una red de confianza.
Seleccione la clave que firmar en la lista de claves. Seleccione Keys (Claves) → Sign
Keys (Firmar claves). En el recuadro de diálogo que sigue, designe la clave privada
que se debe utilizar para la firma. Una alerta le recordará que debe comprobar la autenticidad de la clave antes de proceder a firmarla. Si ya lo ha comprobado, haga clic en
Continue (Continuar) e introduzca la contraseña para la clave privada seleccionada en
el paso siguiente. Los demás usuarios podrán ahora comprobar la firma a través de la
clave pública.
110
6.3.2 Confianza en las claves
Normalmente, el programa con el que esté trabajando le preguntará si confía en la clave
(si considera que verdaderamente la utiliza su propietario autorizado). Esto sucede cada
vez que es necesario cifrar un mensaje o comprobar una firma. Para evitarlo, edite el
nivel de confianza de la clave recién importada.
Haga clic con el botón derecho del ratón en la clave recién importada para acceder a
un pequeño menú contextual para gestionar claves. Seleccione Edit Key in Terminal
(Editar clave en terminal). KGpg abre una consola de texto en la que podrá definir el
nivel de confianza a través de ciertos comandos.
En el mensaje de la consola de texto [Command > (Comando)], escriba trust (confiar). En una escala entre 1 (no seguro) y 5 (completa confianza), indique su grado de
confianza con respecto a que los firmantes de la clave importada hayan comprobado
la identidad verdadera del propietario de la clave. Escriba el valor seleccionado en el
mensaje [Your decision? (¿Cuál es su decisión?)]. Si está completamente seguro
de que puede confiar en el firmante, escriba 5. Responda a la pregunta siguiente indicando y (sí). Por último, escriba quit (salir) para salir de la consola y volver a la lista
de claves. La clave tendrá ahora el nivel de confianza zzUltimate.
El nivel de confianza de las claves en su patrón de claves aparece indicado por una barra
de color junto al nombre de la clave. Cuanto más bajo sea el nivel de confianza, menos
confiará en que el firmante de la clave haya comprobado la verdadera identidad de las
claves firmadas. Aunque puede estar totalmente seguro de la identidad del firmante, es
posible que éste no sea lo suficientemente estricto a la hora de comprobar las identidades
de las personas antes de firmar sus claves. Así pues, aunque confíe en él y en su clave,
podría optar por asignarle niveles bajos de confianza en el caso de claves de otros firmadas por él. La función del nivel de confianza sirve tan sólo a modo de recordatorio.
En realidad no activa ninguna acción automática por parte de KGpg.
6.4 Cuadro de diálogo Key Server
(Servidor de claves)
Hay varios servidores de claves basados en Internet que proporcionan las claves públicas
de muchos usuarios. Utilice estos servidores para distribuir su clave pública y establecer
un sistema de comunicación cifrada con un amplio número de usuarios. Con este proCifrado con KGpg
111
pósito, exporte su clave pública a uno de estos servidores. Igualmente, KGpg le permite
localizar uno de estos servidores para las claves de ciertas personas e importar sus claves
públicas desde el servidor. Abra el cuadro de servidor de claves mediante la opción
File (Archivo) → Key Server Dialog (Cuadro de diálogo servidor de claves).
6.4.1 Importación de claves desde un
servidor de claves
La pestaña Importar del recuadro de diálogo de servidor de claves le permite importar
claves públicas desde uno de los servidores de claves basados en Internet. Utilice el
menú desplegable para seleccionar uno de los servidores de claves preconfigurado e
indique una cadena de búsqueda (dirección de correo electrónico de la persona con la
que se comunicará) o el ID de la clave que desee buscar. Al hacer clic en Search (Buscar), el sistema se conecta a Internet y busca en los servidores de claves especificados
una clave que coincida con las especificaciones indicadas. Consulte Figura 6.3, “Pantalla
de búsqueda para importar claves” (p. 112).
Figura 6.3
Pantalla de búsqueda para importar claves
Si la búsqueda en el servidor de claves da fruto, aparecerá una ventana nueva con una
lista de todas las entradas de servidor recuperadas. Seleccione la clave que desee incluir
en el patrón de claves y haga clic en Import (Importar). Consulte la Figura 6.4, “Resultados e importación” (p. 113). Confirme el mensaje siguiente haciendo clic en OK
(Aceptar) y cierre luego el cuadro de diálogo de servidor de claves haciendo clic en
112
Close (Cerrar). La clave importada aparecerá en el resumen principal del gestor de
claves, lista ya para utilizarse.
Figura 6.4
Resultados e importación
6.4.2 Exportación de claves a un servidor
de claves
Para exportar la clave a uno a los servidores de claves de acceso libre en Internet, seleccione la pestaña Export (Exportar) en el cuadro de diálogo de servidor de claves. Designe
el servidor de destino y la clave que desee exportar a través de los dos menús desplegables. A continuación, inicie el proceso de exportación haciendo clic en Export (Exportar).
Cifrado con KGpg
113
Figura 6.5
Exportación de claves a servidores de claves
6.5 Cifrado de textos y archivos
KGpg ofrece también la posibilidad de cifrar texto o contenidos del portapapeles. Haga
clic en el icono del candado y localice las opciones Encrypt clipboard (Cifrar portapapeles) y Decrypt clipboard (Descrifrar portapapeles), así como la opción para abrir el
editor integrado.
6.5.1 Cifrado y descifrado del portapapeles
Los archivos copiados en el portapapeles se pueden cifrar fácilmente con sólo unos
simples pasos. Abra la descripción general de la función haciendo clic en el icono de
KGpg. Seleccione Encrypt Clipboard (Cifrar portapapeles) y designe qué clave utilizar.
En el escritorio aparecerá un mensaje de estado acerca del procedimiento de cifrado.
El contenido cifrado se podrá ahora procesar desde el portapapeles. Descifrar el contenido del portapapeles es igual de fácil, basta con que abra el menú en el panel, seleccione
Decrypt Clipboard (Descifrar portapapeles) e indique la contraseña asociada a la clave
privada. La versión cifrada está ahora disponible para procesarse en el portapapeles y
en el editor de KGpg.
114
6.5.2 Cifrado y descifrado mediante el
método de arrastrar y colocar
Para cifrar y descifrar archivos, haga clic en los iconos del escritorio o en el gestor de
archivos, arrástrelos al candado que hay en el panel y suéltelos. Si el archivo no está
cifrado, KGpg le preguntará qué clave emplear. Cuando seleccione una clave, el archivo
se cifrará sin que aparezcan más mensajes. En el gestor de archivos, los archivos cifrados
se designan mediante el sufijo .asc y el icono de candado. Estos archivos se pueden
descifrar haciendo clic en el icono de archivo, arrastrándolos al símbolo de KGpg en
el panel y soltándolos allí. A continuación, seleccione si el archivo se debe descifrar,
guardar o mostrar en el editor.
6.5.3 Editor de KGpg
En lugar de crear el contenido que se va a cifrar en un editor externo y después cifrarlo
con uno de los métodos descritos arriba, puede utilizar el editor integrado de KGpg
para crear el archivo. Abra el editor [Open Editor (Abrir editor) en el menú contextual],
escriba el texto en cuestión y haga clic en Encrypt (Cifrar). A continuación, seleccione
la clave que desee utilizar y termine el procedimiento de cifrado. Para descifrar archivos,
utilice Decrypt (Descifrar) e indique la contraseña asociada a la clave.
Generar y comprobar firmas es tan fácil como cifrar directamente desde el editor. Diríjase a Signature (Firma) → Generate Signature (Generar firma) y seleccione el archivo
que desee firmar en el recuadro de diálogo de archivos. A continuación, designe la
clave privada que desee utilizar y escriba la contraseña asociada. KGpg le informará
sobre si se ha generado correctamente la firma. Los archivos también se pueden firmar
desde el editor haciendo clic en Sign/Verify (Firmar/Verificar). Para comprobar un archivo firmado, diríjase a Signature (Firma) → Verify Signature (Verificar firma) y seleccione el archivo que desee comprobar en el siguiente cuadro de diálogo. Después
de confirmar la selección, KGpg comprobará la firma e informará acerca de cuál ha
sido el resultado de la operación. Otra opción es cargar el archivo firmado en el editor
y hacer clic en Sign/Verify (Firmar/Verificar).
Cifrado con KGpg
115
6.6 Información adicional
Para obtener información teórica básica sobre el método de cifrado, consulte la sección
de introducción de las páginas del proyecto GnuPG en http://www.gnupg.org/
documentation/howtos.html.en. Este documento proporciona también una
lista con otras fuentes de información.
116
Parte III. Multimedia
7
Sonido en Linux
Linux incluye una amplia gama de aplicaciones multimedia y de sonido. Algunas de
estas aplicaciones forman parte de uno de los principales entornos de escritorio. Con
las aplicaciones que se describen en la presente sección, controle el volumen y el balance
del sonido, reproduzca CDs y archivos de música y grabe y comprima sus datos de
audio.
7.1 Mezcladores
Los mezcladores ofrecen la forma de regular el volumen y el balance de la entrada y
salida de sonido de los equipos. La principal diferencia que existe entre los distintos
mezcladores es la apariencia exterior de la interfaz de usuario. No obstante, existen
varios mezcladores diseñados para un hardware específico. Un ejemplo de ello es
envy24control, un mezclador para el chip de sonido Envy 24. Otro ejemplo es hdspmixer,
que se emplea con las tarjetas RME Hammerfall. Seleccione, entre todos los mezcladores
disponibles, el que mejor se adapte a sus necesidades.
SUGERENCIA: Pruebe su mezclador
Por norma general, se recomienda abrir la aplicación del mezclador antes de
abrir otras aplicaciones de sonido. Utilice el mezclador para probar y adaptar
los ajustes de control de la entrada y de la salida de la tarjeta de sonido.
Sonido en Linux
119
7.1.1 Applet mezclador de KDE
KMix es la aplicación de mezclador de KDE. Se integra en el panel de KDE como un
pequeño applet de panel que se ubica en la bandeja del sistema. Haga clic en el icono
del panel para regular el volumen de sus altavoces con la barra reguladora. Si hace clic
con el botón derecho del ratón en el icono, aparecerá el menú contextual de KMix. Seleccione Mute (Silenciar) para desactivar la salida de sonido. En ese momento se modificará la apariencia del icono del panel. Si vuelve a hacer clic en Mute (Silenciar), se
silenciará el volumen. Para ajustar la configuración del sonido, seleccione Show Mixer
Window (Mostrar ventana del mezclador) y realice los ajustes necesarios en Output
(Salida), Input (Entrada) y Switches (Conmutadores). Cada uno de los dispositivos que
aparece cuenta con su propio menú contextual, al que se accede haciendo clic con el
botón derecho del ratón en el icono del dispositivo correspondiente. Puede silenciar u
ocultar cada uno de ellos por separado.
Figura 7.1
Mezclador KMix
7.1.2 Applet mezclador de GNOME
GMix, el applet de control de volumen del escritorio de GNOME, se integra en el panel
de GNOME. Haga clic en el icono del panel para regular el volumen de los altavoces
con una sencilla barra reguladora. Para desactivar la salida de sonido, haga clic con el
botón derecho del ratón en el icono y, a continuación, seleccione Mute (Silenciar). En
ese momento, se modificará la apariencia del control de volumen. Para silenciar la salida
de sonido, haga clic con el botón derecho del ratón en el icono y, a continuación, selec-
120
cione Mute (Silenciar). Seleccione Open Volume Control (Abrir control de volumen)
para acceder a las funciones avanzadas del mezclador, como se muestra en la Figura 7.2,
“Applet del mezclador de GNOME” (p. 121). Cada dispositivo de sonido cuenta con su
propia pestaña de mezclador.
Figura 7.2
Applet del mezclador de GNOME
7.1.3 alsamixer
El programa alsamixer se puede ejecutar desde la línea de comandos sin el entorno X,
por lo que se puede controlar por completo a través de accesos directos del teclado. La
ventana de alsamixer consta de los siguientes elementos: una fila, que figura en la parte
superior, en la que se incluye información básica sobre el tipo de tarjeta y de chip, el
tipo de vista seleccionado y el elemento del mezclador; las barras de volumen se
muestran debajo del área de información. Utilice las teclas ← y → para desplazarse
a la izquierda y a la derecha si los controles no se pueden mostrar en una única pantalla.
Los nombres de los controles aparecen debajo de éstos; por otra parte, el control que
se encuentre seleccionado aparecerá coloreado en rojo. Cambie el estado del control
de cualquier mezclador de silenciado a no silenciado y viceversa con la tecla M . Si el
volumen de un control está silenciado, aparecerá la marca MM debajo del nombre del
control. Cualquier control que disponga de capacidad de captura (grabación) contará
con un indicador de captura de color rojo.
El programa alsamixer cuenta con tres modos distintos de visualización: Playback
(Playback), Capture (Captura) y All (Todos). Por defecto, alsamixer se inicia en modo
Sonido en Linux
121
Playback (Playback), lo que supone que únicamente se muestren los controles del
mezclador que son relevantes para la reproducción (Volumen maestro, PCM, CD, etc.).
El modo Capture (Captura) muestra solamente los controles empleados para la grabación.
Por su parte, All (Todos) muestra todos los controles disponibles. Cambie los modos
de visualización con las teclas F3 , F4 y F5 .
Seleccione los canales con las teclas → y ← o con N y P . Utilice las teclas ↑ y ↓ o
+ y - para aumentar y disminuir el volumen. Los canales estéreo se pueden regular
de manera independiente mediante el empleo de las teclas Q , W y E para aumentar
el volumen y Z , X y C para disminuirlo. Las teclas numéricas comprendidas entre 0
y 9 se pueden emplear para cambiar de forma rápida el volumen absoluto. Estas teclas
se corresponden con los valores comprendidos entre el cero y el noventa por ciento del
volumen total.
7.1.4 Apariencia de las aplicaciones de
mezcla de sonido
La apariencia de este tipo de aplicaciones depende del tipo de tarjeta de sonido empleada.
Algunos controladores, como SB Live!, cuentan con muchos elementos de mezcla regulables (sintonizables), mientras que los controladores para tarjetas de sonido profesionales pueden tener muchos elementos con nombres totalmente distintos.
Chip de sonido integrado
La mayor parte de los chips de sonido PCI integrados se basan en un códec AC97.
Master (Maestro) regula el volumen principal de los altavoces delanteros. Surround
(Surround), Center (Center) y LFE (LFE) regulan los altavoces traseros, centrales y de
realce de graves. Cada uno de ellos tiene un conmutador para silenciar el volumen.
Además, algunas tarjetas cuentan con volúmenes individuales para Headphone (Auriculares) y Master Mono (Maestro mono). El último de ellos se emplea para el altavoz
integrado de algunos equipos portátiles.
PCM regula el nivel de volumen interno del reproductor digital WAVE. PCM es el
acrónimo de Pulse Code Modulation (Modulación por impulsos codificados), uno de
los formatos de señales digitales. Este control cuenta también con un conmutador individual para silenciar el volumen.
122
Otros volúmenes, como CD (CD), Line (Línea), Mic (Mic.) y Aux (Aux.), controlan el
volumen del circuito cerrado desde la salida correspondiente hasta la entrada principal.
Estos volúmenes no influyen en el nivel de grabación, solamente en los volúmenes de
reproducción.
Para realizar tareas de grabación, encienda el conmutador Capture (Captura). Éste es
el conmutador maestro de grabación. El volumen de Capture (Captura) es la amplificación de la entrada para la grabación. Este conmutador se establece por defecto en cero.
Seleccione una fuente de grabación, por ejemplo, Line (Línea) o Mic (Mic.). La fuente
de grabación es exclusiva, por lo que no se pueden seleccionar dos fuentes al mismo
tiempo. Mix (Mezcla) es una fuente de grabación especial. Se puede grabar la señal que
se esté reproduciendo en ese momento en esa señal.
Además, en función del chip del códec AC97, están disponibles efectos especiales,
como 3D o graves/agudos.
Familia SoundBlaster Live! y Audigy
SoundBlaster Live! y SB Audigy1 cuentan con numerosos controladores del mezclador
para el chip del códec AC97 y el motor DSP. Además de los controles que se han descrito, disponen también de volúmenes Wave (Wave), Music (Música) y AC97 (AC97)
para regular la atenuación y el encaminamiento de señales internas para la mezcla con
PCM, WaveTable MIDI y AC97. Mantenga el volumen al 100 % para poder escuchar
todos los volúmenes. SB Audigy2 (según el modelo) dispone de menos controles que
SB Live; sin embargo, cuenta con los controles Wave (Wave) y Music (Música).
La grabación con SB Live es similar a la grabación realizada con el chip integrado. Es
posible seleccionar Wave (Wave) y Music (Música) como la fuente de grabación adicional para grabar las señales PCM y WaveTable reproducidas.
Dispositivos de audio USB
Los dispositivos de audio USB habitualmente disponen de un número reducido de
controladores de mezclador. Incluso, en ocasiones no cuentan con ninguno. La mayor
parte de los dispositivos tienen un conmutador de control Master (Maestro) o PCM
(PCM) para regular el volumen de reproducción.
Sonido en Linux
123
7.1.5 Mezclador para el chip de sonido
Envy24
envy24control es una aplicación de mezcla para tarjetas de sonido que emplean el chip
Envy24 (ice1712). La flexibilidad del chip Envy24 puede dar como resultado la presencia
de funciones diferentes en tarjetas de sonido distintas. Los detalles más recientes de
este chip de sonido están disponibles en /usr/share/doc/packages/
alsa-tools/envy24control.
Figura 7.3
Mezclador de control y mezclador digital de envy24control
El mezclador de control de envy24control muestra los niveles de señales que se pueden
mezclar digitalmente en la tarjeta de sonido. Las señales designadas como PCM Out
(Salida PCM) las generan aplicaciones que envían datos PCM a la tarjeta de sonido.
Las señales de las entradas análogas se muestran en H/W In (Entrada H/W). Las entradas
S/PDIF (S/PDIF) se muestran en la parte derecha. Establezca los valores de entrada y
de salida de los canales analógicos en Analog Volume (Volumen analógico).
Utilice las barras reguladoras del mezclador de control para la mezcla digital. Los niveles
correspondientes se muestran en el mezclador digital. Para cada canal de salida, el
Patchbay (Panel de conexiones) contiene una fila de botones circulares para seleccionar
la fuente de canal deseada.
Ajuste la amplificación de los convertidores de analógico a digital y de digital a analógico en Analog Volume (Volumen Analógico). Utilice las barras reguladoras de DAC
(Convertidor D/A) para los canales de salida y las barras reguladoras de ADC (Convertidor A/D) para los canales de entrada.
124
Los ajustes de canal S/PDIF se pueden realizar en Hardware Settings (Configuración
de hardware). El chip Envy24 reacciona a los cambios de volumen con un retardo que
se puede configurar con Volume Change (Cambio de volumen).
7.2 Reproductores multimedia
7.2.1 amaroK
El reproductor multimedia amaroK gestiona diferentes formatos de audio y reproduce
los flujos de audio de las difusiones de emisoras de radio de Internet. El programa
gestiona todos los tipos de archivos admitidos por el servidor de sonido que actúe como
sistema de apoyo, actualmente aRts o GStreamer.
La primera vez que se emplea amaroK, se inicia el First-Run Wizard (Asistente de
primera ejecución), que ayuda a configurar amaroK. En el primer paso, configure la
apariencia que desee que tenga amaroK. Seleccione si desea que el reproductor y la
lista de reproducción se muestren en ventanas separadas (a este respecto, consulte Figura 7.4, “Reproductor multimedia amaroK” (p. 126)) o si prefiere combinar ambas funciones en una única ventana. En el segundo paso, especifique dónde debe buscar amaroK
su colección musical. El programa amaroK explora estas carpetas en búsqueda de archivos que se puedan reproducir. Por defecto, amaroK está configurado para explorar las
carpetas seleccionadas de forma recurrente (para incluir todos los subdirectorios en la
exploración), controlar los cambios realizados en el contenido de los directorios seleccionados e importar cualquier lista de reproducción que se ubique en las carpetas en
cuestión. Todos los ajustes realizados con el asistente se pueden modificar después
iniciando nuevamente el asistente con Tools (Herramientas) → First-Run Wizard
(Asistente de primera ejecución).
Sonido en Linux
125
Figura 7.4
Reproductor multimedia amaroK
Gestión de las listas de reproducción
Al iniciar amaroK, el programa realiza una búsqueda en el sistema de archivos multimedia de acuerdo con los ajustes que se han especificado en el asistente. En la parte
derecha de la ventana de la listas de reproducción se muestran las listas que se han encontrado. Reproduzca las listas en el orden que prefiera. Si no se ha encontrado ninguna
lista de reproducción, cree una. Para ello, la mejor forma de hacerlo es utilizando la
barra lateral que se encuentra situada a la izquierda de la ventana. En el extremo izquierdo se encuentran diversas pestañas que se pueden emplear para abrir vistas diferentes.
En cada una de estas vistas, arrastre los títulos uno por uno o los directorios completos
y suéltelos en la lista de reproducción para incluirlos en la lista. A continuación, se
muestra una descripción de las funciones de cada pestaña.
Context (Contexto)
Esta pestaña permite visualizar la información relativa a su colección y al artista
actual. Por ejemplo, esta vista le informará sobre sus títulos favoritos, sobre los títulos
más recientes añadidos a la colección y sobre otros detalles. La vista Home (Inicio)
126
le ofrece estadísticas sobre sus hábitos de escucha, al tiempo que elabora listas con
las pistas favoritas, las más recientes y las menos reproducidas. Current Track
(Pista actual) proporciona datos referidos a la pista que se esté reproduciendo en
ese momento; al mismo tiempo, muestra la carátula del álbum (a este respecto,
consulte la “Cover Manager (Gestor de carátulas)” (p. 128)), las estadísticas de escucha de esta pista y muchos más datos. Por otra parte, para ver la letra de la canción,
utilice la pestaña Lyrics (Letra).
Collection Browser (Navegador de la colección)
Utilice esta vista para gestionar y mostrar su colección personal de títulos. La colección puede incluir archivos localizados en ubicaciones distintas. El icono de la llave
inglesa que se encuentra en la barra de herramientas le permite determinar qué
ubicaciones se deben explorar para localizar archivos de música. Una vez que haya
seleccionado los directorios, la exploración se iniciará automáticamente. El resultado
se mostrará como una estructura en árbol. Mediante el empleo de las opciones Primary (Primaria) y Secondary (Secundaria), organice las dos ramificaciones superiores
del árbol de acuerdo con los criterios Album (Álbum), Artist (Artista), Genre (Género) y Year (Año). Una vez que esté lista la vista de árbol, localice los títulos de
forma sencilla escribiéndolos en el campo de entrada. La selección de las tres vistas
muestra automáticamente la primera entrada que coincida con los datos introducidos.
Para actualizar los datos de la colección, inicie la exploración del sistema de archivos
mediante el empleo de las opciones Tools (Herramientas) → Rescan Collection
(Volver a explorar colección).
Playlist Browser (Navegador de listas de reproducción)
El navegador de listas de reproducción se divide en dos partes. La parte superior
enumera todas las listas de reproducción personalizadas que se han creado arrastrando
las listas a la ventana de la lista de reproducción y haciendo clic en Save Playlist
As (Guardar lista de reproducción como). Visualice los contenidos de las listas haciendo clic en el símbolo + que se encuentra junto al nombre de la lista de reproducción. Para modificar las listas de reproducción, utilice la opción de arrastrar y soltar.
Para cargar una lista, haga doble clic en la lista de reproducción.
IMPORTANTE: Uso compartido de las listas de reproducción con otros
reproductores
Guarde las listas de reproducción en formato m3u o pls para poder compartirlas con otros reproductores que emplean estos formatos.
Sonido en Linux
127
amaroK puede compilar en el instante listas de reproducción muy útiles (“Smart
Playlists” [Listas de reproducción inteligentes]) . Utilice la parte inferior del navegador de listas de reproducción para seleccionar una de las listas de reproducción
inteligente o haga clic en la opción Create Smart Playlist (Crear lista de reproducción
inteligente) para definir una lista de reproducción inteligente y personalizada. Escriba
un nombre, los criterios de búsqueda, el orden y el límite de pistas opcional.
File Browser (Navegador de archivos)
Esta pestaña abre un navegador de archivos. Se corresponde con el cuadro de diálogo
estándar del selector de archivos de KDE, que cuenta con los controles habituales
para permitir la navegación por el sistema de archivos. Escriba una URL o un directorio en el campo de entrada de texto. De los contenidos que se muestran, arrastre
los elementos que desee incluir a la lista de reproducción. También puede realizar
una búsqueda recursiva de archivos en un directorio dado. Para realizar esta operación, introduzca una cadena de texto para el título y la ubicación en la que desea
iniciar la búsqueda. A continuación, seleccione Search (Buscar) y espere a que los
resultados se muestren en la parte inferior de la ventana.
Cover Manager (Gestor de carátulas)
amaroK incluye un gestor de carátulas que permite que los datos de música y de imagen
de los álbumes que se reproducen coincidan. Inicie Cover Manager (Gestor de carátulas)
con Tools (Herramientas) → Cover Manager (Gestor de carátulas). Se abrirá una vista
en árbol en la parte izquierda de la ventana, en la que se muestran todos los álbumes
de su colección. Las carátulas obtenidas de Amazon se muestran en la parte derecha de
la ventana. Mediante la opción View (Ver), seleccione la imagen que se muestra en la
vista de la lista de carátulas. La opción All albums (Todos los álbumes), por su parte,
enumera todos los álbumes de su colección, con independencia de si los álbumes
cuentan con una imagen de carátula o no. En Albums with cover (Álbumes con carátula)
se enumeran únicamente aquellos álbumes que cuentan con carátula, mientras que en
Albums without cover (Álbumes sin carátula) se muestran solamente aquéllos que carecen
de ella. Para recuperar los datos de las carátulas, seleccione su Amazon Locale (Amazon
local) y, a continuación, haga clic en Fetch Missing Covers (Recuperar carátulas que
faltan); de esta forma, amaroK intentará conseguir las carátulas de todos los álbumes
que contiene su colección.
128
Efectos
Seleccione el botón FX (FX) de la ventana del reproductor, o bien utilice el menú de
la aplicación amaroK para abrir un cuadro de diálogo en el que se podrán habilitar y
configurar diversos efectos de sonido, como el ecualizador, el balance de estéreo y el
efecto Hall. Seleccione los efectos deseados y modifique los ajustes, si es posible, de
dichos efectos.
Visualizaciones
amaroK ofrece una serie de visualizaciones que muestran diversos efectos gráficos en
la música reproducida. Las visualizaciones originales de amaroK se muestran en la
ventana del reproductor. Vea los distintos modos de visualización que se encuentran
disponibles haciendo clic en la animación.
Debe tenerse en cuenta, además, que amaroK es compatible con los complementos de
visualización del reproductor multimedia XMMS. Para utilizar estos complementos,
instale en primer lugar el paquete xmms-plugins y, a continuación, seleccione Visualizations (Visualizaciones) en el menú de amaroK. Se abrirá una ventana que contendrá una lista con los complementos disponibles. Los complementos de XMMS se
muestran siempre en una ventana adicional. En algunos casos, existe una opción que
permite visualizarlos en modo de pantalla completa. Es probable que con algunos
complementos no pueda conseguir unos efectos visuales nítidos a menos que utilice
una tarjeta gráfica aceleradora en 3D.
7.2.2 XMMS
XMMS es un completo reproductor multimedia que dispone de funciones de audio
avanzadas que hacen que la presencia de saltos o interrupciones durante la reproducción
sea más que esporádica. La aplicación es muy sencilla de usar. El botón para visualizar
el menú se encuentra en la esquina superior izquierda de la ventana del programa. Para
aquellos usuarios que prefieran una apariencia similar a los programas de GNOME,
existe una versión GTK2 de XMMS disponible, llamada Beep Media Player. Para ello,
solamente basta con instalar el paquete bmp. Sin embargo, no todos los complementos
de XMMS son compatibles con este puerto de XMMS.
Sonido en Linux
129
Figura 7.5 XMMS con complementos del ecualizador, del analizador de espectro
OpenGL y de Infinity
Seleccione el módulo de los complementos de salida con Options (Opciones) → Preferences (Preferencias) → Audio I/O Plugins (Complementos de E/S de audio). Si el
paquete xmms-kde está instalado, el servidor de sonido aRts se puede configurar aquí.
IMPORTANTE: Utilización del complemento de grabadora de discos
XMMS redirige automáticamente los datos de salida a Disk Writer Plugin
(Complemento de grabadora de discos) si no es capaz de encontrar una tarjeta
de sonido configurada. En este caso, los archivos que se reproducen se escriben
en el disco duro como archivos WAV. Como consecuencia, la visualización del
tiempo se da con más rapidez que cuando se reproducen los datos de salida
a través de una tarjeta de sonido.
Inicie diversos complementos de visualización mediante Options (Opciones) → Preferences (Preferencias) → Visualization Plugins (Complementos de visualización). Si
dispone de una tarjeta gráfica con aceleración 3D, seleccione una aplicación, como el
analizador de espectro OpenGL. Si el paquete xmms-plugins está instalado, pruebe
el complemento de Infinity.
En la parte izquierda, debajo del botón de menú, se encuentran cinco botones con letras
distintas. Estos botones permiten el acceso rápido a menús, cuadros de diálogos y con-
130
figuraciones adicionales. Abra la lista de reproducción con PL (PL) y el ecualizador
con EQ (EQ).
7.3 CDs: reproducción y extracción
de contenido
Puede escuchar sus pistas de música favoritas de muchas formas. Debe tener en cuenta,
además, que es posible reproducir un CD o una versión digitalizada de éste. En la siguiente sección se abordan algunas aplicaciones para la reproducción de CDs, así como
algunas aplicaciones que pueden emplearse para la extracción de contenido y para la
codificación de CDs de audio.
IMPORTANTE: Reproducción de CDs en forma CDDA y analógica
Hay dos formas diferentes de reproducir CDs de audio. Los controladores de
CDs y DVD que pueden desempeñar labores de reproducción analógica de CDs
leen los datos de audio y los envían al dispositivo de salida del sonido. Algunos
controladores externos conectados a través de PCMCIA, FireWire o USB precisan
utilizar CDDA (Audio digital de disco compacto) para, en primer lugar, extraer
los datos de audio y, a continuación, reproducirlos como PCM digital. Los reproductores a los que se hace referencia en las secciones siguientes no son
compatibles con CDDA. Utilice XMMS si precisa de compatibilidad con CDDA.
7.3.1 Reproductor de CDs de audio KsCD
KsCD es un reproductor de CDs de audio muy fácil de usar. Se integra en la barra de
tareas de KDE y puede configurarse para comenzar a reproducir el CD de forma automática cada vez que se inserte. Para acceder al menú de la configuración, seleccione
Extras (Funciones adicionales) → Configure KsCD (Configurar KsCD). Puede recuperar
de un servidor CDDB de Internet información acerca del álbum y de las pistas; para
ello, sin embargo, es preciso que KsCD se encuentre configurado adecuadamente.
También puede cargar información CDDB para compartirla con otros usuarios. Utilice
el cuadro de diálogo CDDB (CDDB) para recuperar y cargar información.
Sonido en Linux
131
Figura 7.6
Interfaz de usuario de KsCD
7.3.2 Applet de GNOME para la
reproducción de CDs
Se trata de un sencillo applet que se integra en el panel de GNOME. Con el icono de
herramientas, configure el funcionamiento del reproductor y seleccione un tema. Regule
la reproducción haciendo uso de los botones que se encuentran en la parte inferior de
la ventana del reproductor o utilizando el menú contextual, que se abre haciendo clic
con el botón derecho del ratón en el icono del panel o en la ventana del reproductor.
7.3.3 Compresión de datos de audio
La compresión de audio la pueden utilizar diversas herramientas. Las siguientes secciones incluyen descripciones de aplicaciones de líneas de comandos para la codificación
y la reproducción de datos de audio, así como algunas aplicaciones gráficas que pueden
realizar operaciones de compresión de audio.
Herramientas de líneas de comandos para la
codificación y la reproducción de datos de audio
Ogg Vorbis (que se encuentra en el paquete vorbis-tools) es un formato de compresión de audio gratuito que en la actualidad es compatible con la mayor parte de reproductores de audio e incluso de reproductores de MP3 portátiles. La página Web del
proyecto es http://www.xiph.org/ogg/vorbis.
SUSE Linux incluye algunas herramientas que son compatibles con Ogg Vorbis.
oggenc es una herramienta de línea de comandos que se emplea para codificar los
132
archivos WAV en Ogg. Basta con ejecutar oggenc myfile.wav para transformar
un archivo .wav en Ogg Vorbis. La opción -h muestra una descripción general del
resto de parámetros. Oggenc admite la codificación con una tasa de bits variable. De
esta forma, se puede lograr un grado de compresión aún mayor. En vez de indicar la
tasa de bits, especifique la calidad deseada mediante el empleo del parámetro -q; Por
su parte, -b determina la tasa media de bits; -m y -M especifican la tasa de bits mínima
y máxima.
ogg123 es un reproductor Ogg basado en líneas de comandos. Inícielo con el comando
del tipo ogg123 pistadeaudio.ogg.
Compresión de datos de audio con Grip
Grip es un reproductor y extractor de contenido de CDs de GNOME (a este respecto,
consulte la Figura 7.7, “Extracción del contenido de CDs de audio con Grip” (p. 134)).
La funcionalidad del reproductor de CDs se controla por completo mediante el uso de
los botones que se encuentran en la parte inferior de la ventana. Controle la funcionalidad
de extracción de contenido y de codificación con las pestañas que se encuentran en la
parte superior de la ventana. Para visualizar y editar la información de las pistas y del
álbum o para seleccionar las pistas cuyo contenido desea extraer, abra la pestaña Tracks
(Pistas). Seleccione una pista haciendo clic en la casilla de verificación que se encuentra
junto al título de la pista. Para editar la información de las pistas, haga clic en Toggle
disc editor (Activar o desactivar editor de discos) y envíe sus modificaciones. La pestaña
Rip (Extraer) selecciona el modo de extracción deseado y controla el proceso de extracción. Para consultar la configuración de Grip, acceda a la pestaña Config (Configurar).
Utilice Status (Estado) para consultar el estado de la aplicación.
Sonido en Linux
133
Figura 7.7
Extracción del contenido de CDs de audio con Grip
Compresión de datos de audio con KAudioCreator
KAudioCreator es una completa aplicación para la extracción del contenido de CDs
(consulte la Figura 7.8, “Extracción del contenido de CDs de audio con KAudioCreator”
(p. 135)). Una vez que se haya iniciado, enumera todas las pistas del CD en la pestaña
CD Tracks (Pistas del CD). Seleccione las pistas cuyo contenido desea extraer y codificar. Para editar la información de las pistas, utilice Album Editor (Editor de álbumes),
que se ubica en File (Archivo) → Edit Album (Editor de álbumes). Si no desea editar
la información, inicie el proceso de extracción y codificación con la opción File (Archivo) → Rip Selection (Selección de extracción). Realice el seguimiento del progreso de
estas tareas en la pestaña Jobs (Tareas). KAudioCreator, siempre y cuando esté configurado adecuadamente, genera también archivos de listas de reproducción para la selección que pueden reproducirse en reproductores, tales como amaroK o XMMS.
134
Figura 7.8
Extracción del contenido de CDs de audio con KAudioCreator
Compresión de CDs de audio con Konqueror
Antes de iniciar el proceso de compresión con Konqueror, configure la gestión de CDs
de audio y del codificador Ogg Vorbis en el Centro de Control de KDE. Seleccione
Sound & Multimedia (Sonido y multimedia) → Audio CDs (CDs de audio). El módulo
de configuración se divide en tres pestañas: General (General), Names (Nombres) y
Ogg Vorbis Encoder (Codificador Ogg Vorbis). Habitualmente, los dispositivos de CD
correctos se detectan automáticamente. No modifique la configuración por defecto a
menos que la detección automática falle y necesite establecer el dispositivo del CD. La
corrección de errores y la prioridad del codificador también pueden establecerse aquí.
En la pestaña Ogg Vorbis Encoder (Codificador Ogg Vorbis) se determina la calidad
de la codificación. Para configurar la consulta en línea de la información acerca del álbum, las pistas y el artista, seleccione la opción Add Track Information (Añadir información sobre las pistas).
Inicie el proceso de extracción insertando el CD en la unidad de CD-ROM y escriba
audiocd:/ en la barra Location (Ubicación). Konqueror mostrará una lista con las
Sonido en Linux
135
pistas contenidas en el CD y algunas carpetas (consulte la Figura 7.9, “Extracción de
datos de audio con Konqueror” (p. 136)).
Figura 7.9
Extracción de datos de audio con Konqueror
Para conservar en su disco los datos de audio sin comprimir, basta con seleccionar los
archivos .wav y arrastrarlos a otra ventana de Konqueror para, a continuación, copiarlos
en su destino final. Para iniciar la codificación con Ogg Vorbis, arrastre la carpeta Ogg
Vorbis a otra ventana de Konqueror. La codificación se iniciará cuando suelte la
carpeta de Ogg Vorbis en su destino.
7.4 Grabación en disco duro con
Audacity
Grabe y edite archivos de audio con Audacity (paquete audacity). Esta operación
se denomina grabación en disco duro. Seleccione el idioma la primera vez que inicie
el programa. En otras ocasiones, si desea modificar la configuración del lenguaje, utilice
la opción File (Archivo) → Preferences (Preferencias) → Interface (Interfaz). La modificación del idioma será efectiva la próxima vez que inicie el programa.
136
Figura 7.10
Vista espectral de los datos de audio
7.4.1 Grabación de archivos WAV e
importación de archivos
Haga clic en el botón de grabación de color rojo para crear una pista vacía en estéreo
y comenzar la grabación. Para modificar los parámetros estándar, realice los ajustes
deseados mediante la opción File (Archivo) → Preferences (Preferencias). Las opciones
Audio I/O (E/S de audio) y Quality (Calidad) son importantes para la grabación. Al
pulsar el botón de grabación se crean nuevas pistas incluso si ya existen otras. En un
principio, esto podría llevar a confusiones, debido a que estas pistas no pueden verse
en la ventana del programa en su tamaño normal.
Para importar archivos de audio, seleccione la opción Project (Proyecto) → Import
Audio (Importar audio). El programa es compatible con el formato WAV y el formato
Ogg Vorbis comprimido. Para obtener más información sobre este formato, consulte
la Sección 7.3.3, “Compresión de datos de audio” (p. 132).
Sonido en Linux
137
7.4.2 Edición de archivos de audio
Abra el menú AudioTrack (AudioTrack), que se encuentra situado a la izquierda de la
pista. Este menú ofrece diversas opciones de vistas distintas y operaciones básicas de
edición. Para cambiar el nombre de la pista, seleccione la opción Name (Nombre) y
escriba un nombre nuevo. Los distintos modos de visualización de que dispone Audacity
incluyen Waveform (Configuración de onda), Waveform (dB) (Configuración de onda
[dB]), Spectrum (Espectro) y Pitch (Tono). Elija el modo que mejor se adapte a sus
necesidades. Si desea editar por separado cada canal de una pista en estéreo, seleccione
Split Track (Dividir pista). Como consecuencia, cada canal se tratará como una pista
independiente. Establezca el Sample Format (Formato de muestra) en bits y la Sample
Rate (Tasa de muestra) en Hz para cada pista.
Antes de poder hacer uso de la mayor parte de las herramientas que se encuentran en
el menú Edit (Editar), seleccione en primer lugar el canal y el segmento de la pista que
desea editar. Una vez que haya realizado su selección, podrá aplicar toda clase de modificaciones y efectos a la pista seleccionada.
En función del tipo de archivo elegido, se ofrecen diversos formatos de visualización
para la selección de segmentos en la opción View (Ver) → Set Selection Format (Establecer formato de selección). Con la opción Set Snap-To Mode (Establecer modo ajustar),
los límites del segmento se pueden adaptar automáticamente al formato de visualización
seleccionado. Por ejemplo, si selecciona la opción PAL frames (Tramas PAL) como
formato de visualización y activa Snap-To (Ajustar), los límites del segmento se seleccionan siempre en múltiplos de tramas.
Todas las herramientas de edición incluyen una serie de consejos que hacen que su
empleo no plantee grandes dificultades. La función Undo History (Deshacer historial),
a la que se accede a través de View (Ver) → History (Historial), es una función de gran
utilidad que permite visualizar los pasos de edición más recientes y deshacerlos haciendo
clic en la lista. Utilice la opción Discard (Descartar) con precaución, pues tal opción
elimina los pasos de edición de la lista. Una vez descartados, estos pasos no se podrán
deshacer en otra ocasión.
138
Figura 7.11
Espectro
El analizador integrado de espectro ayuda a localizar rápidamente la presencia de
cualquier ruido. Visualice el espectro del segmento seleccionado con la opción View
(Ver) → Plot Spectrum (Trazar espectro). Seleccione una escala de frecuencia logarítmica en octavas con la opción Log frequency (Frecuencia logarítmica). Si desplaza el
puntero del ratón por el espectro, las frecuencias de los picos se muestran de forma
automática junto con las notas correspondientes.
Elimine las frecuencias no deseadas con la opción Effect (Efecto) → FFT Filter (Filtro
FFT). En relación con el proceso de filtrado, puede ser necesario reajustar la amplitud
de la señal mediante el empleo de la opción Amplify (Amplificar). Utilice esta misma
opción, Amplify (Amplificar) para comprobar la amplitud. El valor establecido por defecto en New Peak Amplitude (Amplitud de pico nuevo) es 0,0 dB. Este valor representa
la amplitud máxima posible del formato de audio seleccionado. La opción Amplification
(Amplificación), por su parte, muestra el valor necesario para amplificar el segmento
seleccionado a este valor de pico. La presencia de un valor negativo es señal de sobreamplificación.
7.4.3 Almacenamiento y exportación
Para guardar el proyecto completo, seleccione File (Archivo) → Save Project (Guardar
proyecto) o Save Project As (Guardar proyecto como). Esta operación generará un ar-
Sonido en Linux
139
chivo XML con la extensión .aup, que indicará, por lo tanto, que se trata de un proyecto. Los datos de audio reales se guardan en un directorio con nombre idéntico al
nombre del proyecto al que se le añade _data.
El proyecto completo o el segmento que se encuentre seleccionado en ese momento
puede exportarse igualmente como archivo WAV estéreo. Para exportar el proyecto en
formato Ogg Vorbis, consulte la información que se encuentra disponible en la Sección 7.3.3, “Compresión de datos de audio” (p. 132).
7.5 Grabación y reproducción
directas de archivos WAV
Los comandos arecord y aplay del paquete alsa ofrecen una interfaz muy sencilla
y flexible para el empleo de dispositivos PCM. Dichos comandos, arecord y aplay,
se pueden emplear para grabar y reproducir datos de audio en formato WAV y en otros
formatos. El comando arecord -d 10 -f cd -t wav mysong.wav permite
grabar un archivo WAV de 10 segundos de duración con calidad de CD (16 bits, 44,1
kHz). Consulte todas las opciones de arecord y aplay ejecutando ambos comandos
con la opción --help.
qaRecord (incluido en el paquete kalsatools) es un sencillo programa de grabación
que cuenta con una interfaz gráfica y una pantalla de niveles. Debido a que este programa
utiliza un buffer interno de aproximadamente 1 MB (configurable mediante la opción
--buffersize), es posible hacer uso de la función de grabación ininterrumpida incluso con hardware lento, especialmente si se ejecuta con prioridad de tiempo real.
Durante la grabación, el tamaño de buffer que se esté empleando en ese momento se
muestra en la línea de estado que se encuentra en la opción Buffer (Buffer), mientras
que el tamaño máximo de buffer necesario hasta ese momento para la grabación se
muestra en la opción Peak (Pico).
140
Figura 7.12
QARecord, una sencilla aplicación para la grabación en disco duro
Sonido en Linux
141
Televisión, vídeo, radio y cámara
web
8
En este capítulo se introducen algunas aplicaciones Linux básicas de televisión, vídeo,
radio y cámara web. Aprenda a configurar y a utilizar motv para ver televisión analógica,
mediante una cámara web, y para examinar las páginas del teletexto. Utilice xawtv4
para difusiones digitales de vídeo. Las cámaras web se pueden ejecutar con gqcam. Se
puede acceder a la información EPG con nxtvepg o xawtv4.
8.1 Uso de motv para ver la
televisión
motv es un sucesor mejorado de xawtv. Incorpora todas las funciones esenciales en la
interfaz de usuario. Inicie la aplicación con Multimedia (Multimedia) → Video (Vídeo)
→ motv. Iníciela en la línea de comandos con motv. Al principio, cuando se inicia la
aplicación, sólo aparece una ventana de televisión. Abra una ventana de menú haciendo
clic con el botón derecho en ella.
Televisión, vídeo, radio y cámara web
143
Figura 8.1
Aplicación de televisión motv
8.1.1 Origen de vídeo y búsqueda en la red
En Settings (Ajustes) → Input (Entrada), seleccione el origen de vídeo. Si selecciona
Television (Televisión), configure la red de difusión antes de iniciar la aplicación. Esto
se lleva a cabo de forma automática con la búsqueda en la red, que se encuentra también
en el menú Settings (Ajustes). Si hace clic en Save settings (Guardar ajustes), la red
encontrada se introducirá en el archivo .xawtv del directorio personal y estará disponible la siguiente vez que inicie la aplicación.
SUGERENCIA: Selección de canales
Si no desea examinar todos los canales disponibles, busque el siguiente canal
con Ctrl + ↑ . Si es necesario, ajuste después la frecuencia de difusión con ←
o →.
8.1.2 Recuperación de datos de audio
La salida de audio de la tarjeta de televisión se conecta a la entrada de línea de la tarjeta
de sonido, a los altavoces o a un amplificador. Algunas tarjetas de televisión pueden
cambiar el volumen de la salida de audio. Por tanto, el volumen se puede definir con
las barras reguladoras que aparecen después de seleccionar Settings (Ajustes) → Slider
144
(Barra reguladora). Esta ventana también proporciona las barras reguladoras de brillo,
contraste y color.
Para utilizar la tarjeta de sonido para realizar playback de audio, compruebe los ajustes
del mezclador mediante gamix, que se describe en la Sección 7.1, “Mezcladores” (p. 119).
Para las tarjetas de sonido que cumplan con las especificaciones AC97, defina InputMUX (Multiplexor de entrada) en Line (Línea). A continuación, el volumen se puede
ajustar con las barras reguladoras Master (Maestro) y Line (Línea).
8.1.3 Proporciones de pantalla y modo de
pantalla completa
La mayoría de las imágenes de televisión tienen una proporción de altura y de anchura
de 4:3. Estas proporciones se pueden definir en Tools (Herramientas) → Screen Dimensions (Dimensiones de pantalla). Si 4:3 se selecciona aquí (éste es el ajuste por defecto),
las dimensiones de la pantalla se conservan de forma automática, incluso cuando se
cambia el tamaño de la pantalla.
Con F o Tools (Herramientas) → Fullscreen (Pantalla completa), cambia al modo de
pantalla completa. Si la imagen de televisión en modo de pantalla completa no se aumenta hasta el tamaño de monitor completo, es necesario ajustarla de forma más precisa.
Muchas tarjetas gráficas pueden aumentar la imagen de televisión en modo de pantalla
completa hasta el tamaño completo del monitor sin cambiar el modo gráfico. Si la tarjeta no admite esta función, el modo de edición gráfica debe cambiarse a 640x480 para
el modo de pantalla completa. Cree la configuración relacionada en Settings (Ajustes)
→ Configuration (Configuración). Después de reiniciar motv, el modo de monitor
también se cambia si se ha cambiado al modo de pantalla.
SUGERENCIA: Almacenamiento de la configuración en .xawtv
El archivo .xawtv se crea de forma automática y se actualiza haciendo clic en
Settings (Ajustes) → Save settings (Guardar ajustes). Los difusores se guardan
junto con la configuración. En la página Man encontrará más información
acerca del archivo de configuración de xawtvrc.
Televisión, vídeo, radio y cámara web
145
8.1.4 Menú del lanzador
Utilice el menú del lanzador para iniciar otras aplicaciones que vaya a utilizar con motv.
Inicie el mezclador de audio gamix y la aplicación de teletexto alevt, por ejemplo, mediante un acceso directo del teclado. Las aplicaciones que se inician desde motv deben
introducirse en el archivo .xawtv. Las entradas deberían tener el siguiente aspecto:
[launch] Gamix = Ctrl+G, gamix AleVT = Ctrl+A, alevt
El nombre de la aplicación debería ir seguido del acceso directo y del comando utilizado
para iniciar la aplicación. Inicie las aplicaciones introducidas en [launch] mediante el
menú Tool (Herramientas).
8.2 Compatibilidad con el teletexto
Utilice alevt para examinar las páginas del teletexto. Inicie la aplicación con Multimedia
(Multimedia) → Video (Vídeo) → alevt o en la línea de comandos con alevt.
La aplicación guarda todas las páginas de la estación seleccionada que motv acaba de
activar. Examine las páginas introduciendo el número de página deseado o haciendo
clic en un número de página. Avance o retroceda por las páginas haciendo clic en <<
o en >>, ubicado en la parte inferior de la ventana.
Las versiones recientes de motv y de su sucesor xawtv4 incluyen sus propias aplicaciones
de visores de teletexto: mtt (motv) y mtt4 (xawtv4). mtt4 admiten incluso tarjetas DVB.
8.3 Cámaras web y motv
Si su cámara web es ya compatible con Linux, acceda a ella con motv. Encontrará un
resumen de los dispositivos USB compatibles en http://www.linux-usb.org.
Si ya ha utilizado motv para acceder a la tarjeta de televisión antes de acceder a la cámara web, se cargará el controlador bttv. El controlador de la cámara web se carga de
forma automática al conectar la cámara web al USB. Inicie motv en la línea de comandos
con el parámetro -c /dev/video1 para acceder a la cámara web. Acceda a la tarjeta
de televisión con motv -c /dev/video0.
146
Al conectar la cámara web al USB antes de haber cargado de forma automática el
controlador bttv (por ejemplo, iniciando una aplicación de televisión), /dev/video0
se reserva para la cámara web. En este caso, si inicia motv con el parámetro -c
/dev/video1 para acceder a la tarjeta de televisión, puede que aparezca un mensaje
de error porque el controlador bttv no se haya cargado de forma automática. Resuelva
este problema cargando el controlador por separado con modprobe bttv como
usuario root. Acceda a una descripción general de los dispositivos de vídeo configurables del sistema con motv -hwscan.
8.4 La revista de televisión para
equipos nxtvepg
En algunos difusores, se transmite una señal de EPG (Guía electrónica del programa)
junto con la señal de teletexto. Puede ver esta guía electrónica de forma sencilla mediante
el programa nxtvepg. Para hacerlo, sin embargo, debe disponer de una tarjeta de televisión compatible con el controlador bttv y poder recibir una de las difusiones de canales
con una EPG.
Con nxtvepg, las difusiones se clasifican de acuerdo con el canal y el tema, como movie
(película) y sport (deporte), y se filtran según los criterios, como Live (Directo), Stereo
(Estéreo) o Subtitle (Subtítulo). Inicie la aplicación con Multimedia (Multimedia) →
Video (Vídeo) → nxtvepg o en la línea de comandos con nxtvepg.
8.4.1 Importación de la base de datos EPG
Para configurar y actualizar la base de datos del programa mediante la señal EPG,
configure el sintonizador de la tarjeta de televisión en una estación que difunda EPG.
Esto se puede hacer con una aplicación de televisión, como motv o nxtvepg. Las aplicaciones sólo pueden acceder al sintonizador de una en una.
Si configura un difusor de EPG en motv, nxtvepg comienza de forma inmediata a importar la lista actual de programas de televisión. Se muestra el progreso.
Televisión, vídeo, radio y cámara web
147
Figura 8.2
La revista de televisión electrónica nxtvepg
Si no ha iniciado una aplicación de televisión, deje que nxtvepg busque difusores de
EPG. Para hacerlo, utilice Configure (Configurar) → Provider scan (Búsqueda de
proveedores). Use .xatv (Utilizar .xatv) se activa por defecto. Esto indica que nxtvepg
está accediendo a los difusores guardados en este archivo.
SUGERENCIA: Solución de problemas
Si surgen problemas, compruebe si se ha elegido el origen de vídeo adecuado
en TV card input (Entrada de tarjeta de televisión).
Seleccione uno de los proveedores de EPG encontrados en Configure (Configurar) →
Select Provider (Seleccionar proveedor). Configure (Configurar) → Merge Providers
(Fusionar proveedores) crea asociaciones flexibles entre las distintas bases de datos
de proveedores.
8.4.2 Clasificación de los programas
nxtvepg proporciona una función de filtro muy útil para gestionar incluso las ofertas
de programas más amplias. Active una lista de selección de red con Configure (Configurar) → Show networks (Mostrar redes). El menú Filter (Filtro) ofrece muchas de
148
las funciones de filtro. Haga clic con el botón derecho en la lista de programas para
abrir un menú de filtros especiales en el que activar funciones contextuales de filtro.
El menú Navigate (Navegar) tiene especial interés. Éste se construye directamente a
partir de los datos EPG. Aparece en el idioma proporcionado por la red.
8.5 Uso de xawtv4 para ver
difusiones digitales de vídeo
Como el hardware se ha configurado de forma correcta con YaST, inicie xawtv4 en el
menú principal (Multimedia [Multimedia] → Video [Vídeo] → xawtv4 ). Antes de que
pueda ver sus difusiones favoritas, cree una base de datos de estaciones DVB.
Figura 8.3
Ejecución de xawtv4
Haga clic con el botón derecho en la ventana de inicio para abrir la ventana de control
(consulte la Figura 8.3, “Ejecución de xawtv4” (p. 149)). Inicie un escaneo en las estaciones DVB disponibles con Edit (Editar) → Scan DVB (Escanear DVB). Se abrirán
un escáner de canales y una ventana del navegador. Seleccione un grupo para preparar
el escaneo. Esto se puede realizar de forma manual con Commands (Comandos) →
Tune manually (Sintonizar de forma manual) si ya conoce los parámetros de sintonizaTelevisión, vídeo, radio y cámara web
149
ción del grupo o solicitándolos en una base de datos incorporada de xawtv4 mediante
Database → _country_ → _channel number_ (replace _country_ y
_channel_number_) por los valores de la ubicación.
En cuanto se sintoniza el escáner, los primeros datos se muestran en la ventana del navegador. Lance un escaneo completo de todas las estaciones disponibles con Command
(Comando) → Full Scan (Escaneo completo). Mientras se ejecuta el escáner, puede
seleccionar sus estaciones favoritas y añadirlas a la lista de estaciones arrastrándolas a
la ventana de control. Salga del escáner de canales y seleccione uno de los canales para
comenzar a ver la difusión.
SUGERENCIA: Edición de la lista de estaciones
Con los accesos directos del teclado, controle la selección de canales con el
teclado. Para obtener un acceso directo a una estación de la lista, seleccione
la estación y haga clic en Edit (Editar) → Edit Station (Editar estación). Se abrirá
un cuadro de diálogo denominado TV Station Properties (Propiedades de estación de televisión). Introduzca el acceso directo y salga del cuadro de diálogo
con OK (Aceptar). Este cuadro de diálogo también le permite definir submenús
que contengan grupos de estaciones (como “news” [noticias] o “private” [privadas]).
El paquete de software xawtv4 contiene varias aplicaciones multimedia independientes
más útiles:
pia4
Reproductor de películas controlado por la línea de comandos que se puede utilizar
para reproducir flujos de vídeo grabados por xawtv4.
mtt4
Navegador de teletexto (consulte la Figura 8.4, “Navegador de teletexto mtt4”
(p. 151)).
150
Figura 8.4
Navegador de teletexto mtt4
alexplore
Aplicación de escáner de canales DVB independiente. Su funcionalidad se integra
en xawtv4.
dvbradio
Reproductor de radio DVB. Utilícelo para escuchar los flujos de radio DVB-S
cuando haya terminado el escaneo de estaciones inicial (consulte la Figura 8.5,
“Radio DVB” (p. 151)).
Figura 8.5
Radio DVB
Televisión, vídeo, radio y cámara web
151
dvbrowse
Aplicación de navegador EPG. Utilícelo para obtener información EPG cuando
haya terminado el escaneo de estaciones inicial.
152
K3b: Grabación de CDs o DVD
9
K3b es un programa completo para escribir CDs y DVD de datos y de audio. Inicie el
programa desde el menú principal o introduciendo el comando k3b. En las siguientes
secciones se le explica brevemente cómo comenzar un proceso de grabación básico
para grabar su primer CD o DVD en Linux.
9.1 Creación de un CD de datos
Para crear un CD de datos, vaya a Archivo → New Project (Nuevo proyecto) → New
Data Project (Nuevo proyecto de datos). La vista del proyecto aparece en la parte inferior
de la ventana, como se muestra en la Figura 9.1, “Creación de un CD de datos nuevo”
(p. 154). Arrastre los directorios o archivos por separado que desee desde el directorio
personal a la carpeta del proyecto y suéltelos allí. Guarde el proyecto con el nombre
que prefiera mediante File (Archivo) → Save as (Guardar como).
K3b: Grabación de CDs o DVD
153
Figura 9.1
Creación de un CD de datos nuevo
A continuación, seleccione Burn (Grabar) en la barra de herramientas o pulse Control
+ B . Se abre un cuadro de diálogo con seis pestañas que ofrece varias opciones para
escribir CD. Consulte la Figura 9.2, “Personalización del proceso de grabación” (p. 154).
Figura 9.2
Personalización del proceso de grabación
La pestaña Writing (Escritura) tiene varios ajustes para el dispositivo de grabación,
para la velocidad y para las opciones de grabación. Las siguientes opciones se ofrecen
aquí:
154
Dispositivo de grabación
La grabadora detectada se muestra en este menú emergente. En esta pestaña también
puede seleccionar la velocidad.
AVISO: Seleccione la velocidad de escritura con cuidado
Normalmente, debería seleccionar Auto (Automático), que elige la máxima
velocidad de escritura posible. Sin embargo, si aumenta este valor pero el
sistema no es capaz de enviar datos lo suficientemente rápido, aumenta el
riesgo de que se produzcan errores con el búfer.
Modo de escritura
Esta opción determina cómo escribe un CD el láser. En DAO (disco al instante), el
láser no se desactiva mientras se escribe el CD. Se recomienda este modo para crear
CD de audio. Sin embargo, no todas las grabadoras de CD lo admiten. En modo
TAO (pista al instante), se utiliza un proceso de escritura diferente para cada pista.
El modo RAW no se utiliza muy a menudo, porque la grabadora no corrige los datos.
La mejor configuración es Auto (Automático), porque permite que K3b utilice la
configuración más adecuada.
Simulate (Simular)
Esta función se puede utilizar para comprobar si el sistema admite la velocidad de
escritura seleccionada. La escritura se lleva a cabo con el láser desactivado para
probar el sistema.
On the Fly (Grabación directa)
Graba los datos deseados sin crear primero un archivo de imagen (no utilice esta
función en máquinas que tengan un rendimiento bajo). Un archivo de imagen
(también denominado imagen ISO) es un archivo que contiene todo el contenido
del CD que se escribe después en el CD exactamente cómo es.
Only Create Image (Crear sólo imagen)
Esta opción crea un archivo de imagen. Defina la vía para este archivo en Temporary
File (Archivo temporal). El archivo de imagen se puede escribir en CD después.
Para hacerlo, utilice Tools (Herramientas) → CD (CD) → Burn CD Image (Grabar
imagen de CD). Si se utiliza esta opción, todas las demás de esta sección se desactivan.
Remove Image (Eliminar imagen)
Elimina el archivo de imagen temporal del disco duro cuando se ha acabado.
K3b: Grabación de CDs o DVD
155
Verify Written Data (Verificar datos escritos)
Comprueba la integridad de los datos escritos comparando las sumas de MD5 de
los datos originales y grabados.
Sólo se puede acceder a la pestaña Image (Image) si se ha seleccionado la opción Only
create image (Crear sólo imagen) de la pestaña anterior. En este caso, puede determinar
el archivo en el que se escribe el ISO.
La pestaña Settings (Ajustes) contiene dos opciones: Datatrack Mode (Modo Pista de
datos) y Multisession Mode (Modo Multisesión). Las opciones del modo Datatrack
Mode (Modo Pista de datos) contienen la configuración de cómo se deben escribir las
pistas de datos. En general, auto (automático) se considera el método mejor adaptado.
El modo Multisession Mode (Modo Multisesión) se utiliza para añadir datos a un CD
escrito pero no finalizado.
En la pestaña Volume Desc (Descripción del volumen), introduzca información general
que se pueda utilizar para identificar un proyecto de datos en concreto, su autor y editor,
así como la aplicación y el sistema operativo utilizados en la creación de este proyecto.
En File system (Sistema de archivos), especifique la configuración del sistema de archivos del CD (RockRidge, Joliet o UDF). Determine también cómo se tratan los enlaces
simbólicos, los permisos de archivos y los espacios en blanco. En la pestaña Advanced
(Avanzados), los usuarios experimentados pueden realizar más ajustes.
Después de adaptar todos los ajustes a sus necesidades, comience el proceso de grabación
con Burn (Grabar). Como alternativa, guarde esta configuración para utilizarla y ajustarla en el futuro con Save (Guardar).
9.2 Creación de un CD de audio
Fundamentalmente, no hay diferencias significativas entre crear un CD de audio y crear
un CD de datos. Seleccione File (Archivo) → New Audio Project (Nuevo proyecto de
audio). Arrastre y suelte cada pista de audio a la carpeta del proyecto. Los datos de
audio deben estar en formato WAV u Ogg Vorbis. Determine la secuencia de las pistas
moviéndolas hacia arriba o hacia abajo en la carpeta del proyecto.
Con la ayuda de Texto de CD, puede añadir cierta información de texto a un CD, como
el título del CD, el nombre del artista y el nombre de la pista. Los reproductores de CD
que admiten esta función pueden leer y mostrar esta información. Para añadir informa-
156
ción de Texto de CD a las pistas de audio, seleccione primero la pista. Haga clic con
el botón derecho y seleccione Properties (Propiedades). Se abre una nueva ventana en
la que introducir información.
El cuadro de diálogo para grabar un CD de audio no es muy diferente del cuadro de
diálogo para grabar un CD de datos. Sin embargo, los modos Disc at once (Disco al
instante) y Track at once (Pista al instante) tienen más importancia. El modo Track at
once (Pista al instante) introduce un silencio de dos segundos después de cada pista.
SUGERENCIA: Protección de la integridad de los datos
Al grabar CD de audio, elija una velocidad de grabación menor para reducir el
riesgo de errores de grabación.
Después de adaptar todos los ajustes a sus necesidades, comience el proceso de grabación
con Burn (Grabar). Como alternativa, guarde esta configuración para utilizarla y ajustarla en el futuro con Save (Guardar).
9.3 Copia de un CD o DVD
Seleccione Tools (Herramientas) → Copy CD (Copiar CD) o Tools (Herramientas)
→ Copy DVD (Copiar DVD) en función del medio. En el cuadro de diálogo que se
abre, configure los ajustes del dispositivo de lectura y de escritura como se muestra en
la Figura 9.3, “Copia de un CD” (p. 158). Las opciones de escritura explicadas también
están disponibles aquí. Una función adicional habilita la creación de varias copias del
CD o del DVD.
K3b: Grabación de CDs o DVD
157
Figura 9.3
Copia de un CD
Marque On the fly (Grabación directa) para grabar el CD tan pronto como se haya leído
o seleccione Only create image (Crear sólo imagen) para crear una imagen en la vía
especificada en Temp Directory (Directorio temporal) → Write image file to (Escribir
archivo de imagen en) y grabar la imagen posteriormente.
9.4 Escritura de imágenes ISO
Si ya dispone de una imagen ISO, vaya a Tools (Herramientas) → CD (CD) → Burn
CD image (Grabar imagen de CD). Se abre una ventana en la que introducir la ubicación
de la Image to Burn (Imagen por grabar). K3b calcula una suma de comprobación y la
muestra en MD5 Sum (Suma de MD5). Si el archivo ISO se descargó de Internet, esta
suma muestra si la descarga fue correcta.
Utilice las pestañas Options (Opciones) y Advanced (Avanzados) para establecer las
preferencias. Para grabar el CD, haga clic en Start (Iniciar).
158
9.5 Creación de un CD o DVD
multisesión
Los discos multisesión se pueden utilizar para escribir datos en más de una sesión de
grabación. Esto es útil, por ejemplo, para escribir copias de seguridad más pequeñas
que el medio. En cada sesión, puede añadir otra copia de seguridad. Lo más interesante
es que no sólo está limitado a CDs y DVD de datos. También es posible añadir sesiones
de audio en un disco multisesión.
Para iniciar un nuevo disco multisesión, haga lo siguiente:
1 Cree primero el disco de datos y añada todos los archivos. No es posible comenzar
con una sesión de CD de audio. Asegúrese de que no llena todo el disco porque,
de lo contrario, no podrá añadir ninguna sesión nueva.
2 Grabe los datos con Project (Proyecto) → Burn (Grabar). Aparecerá un cuadro
de diálogo.
3 Vaya a la pestaña Settings (Ajustes) y seleccione Start Multisession (Iniciar
multisesión).
4 Configure las demás opciones cuando sea necesario. Consulte también la Sección 9.1, “Creación de un CD de datos” (p. 153).
5 Inicie la sesión de grabación con Burn (Grabar).
Después de llevar a cabo un proceso de grabación con éxito, ya ha creado un disco
multisesión. Siempre que el medio contenga suficiente espacio, si lo desea, puede añadir
más sesiones. Finalice los discos sólo si está seguro de que no necesita ninguna sesión
nueva o si el espacio está ocupado.
NOTA: Acerca del espacio de almacenamiento en discos multisesión
Tenga en cuenta que los discos multisesión necesitan espacio para contabilizar
todas las entradas de las sesiones. Esto reduce la cantidad de espacio libre en
disco. La cantidad depende del número de sesiones.
K3b: Grabación de CDs o DVD
159
9.6 Información adicional
Aparte de las dos funciones principales descritas anteriormente, K3b ofrece otras funciones, como la creación de copias de DVD, la lectura de datos de audio en formato
WAV, la reescritura de CD y la reproducción de música con el reproductor de audio
integrado. En http://k3b.sourceforge.net encontrará una descripción detallada de todas las funciones del programa disponibles.
160
Parte IV. Oficina
El paquete de ofimática
OpenOffice.org
10
OpenOffice.org es un potente paquete de ofimática que ofrece herramientas para todo
tipo de tareas, como la elaboración de textos, el uso de hojas de cálculo o la creación
de gráficos y presentaciones. Con OpenOffice.org es posible utilizar los mismos datos
en diferentes plataformas informáticas. Asimismo, se pueden abrir y editar archivos en
formatos de Microsoft Office y guardarlos de nuevo en este formato, si es necesario.
En este capítulo sólo se indican los conocimientos básicos necesarios para empezar a
trabajar con OpenOffice.org. Inicie la aplicación desde el menú SUSE o mediante el
comando ooffice.
OpenOffice.org consta de varios módulos de aplicación (subprogramas) diseñados para
interactuar unos con otros. En la Tabla 10.1, “Módulos de las aplicaciones de OpenOffice.org” (p. 163) se muestra una lista. Las explicaciones de este capítulo se centran en
Writer. En la ayuda en línea, descrita en Sección 10.6, “Información adicional” (p. 170),
hay una descripción completa de cada módulo.
Tabla 10.1
Módulos de las aplicaciones de OpenOffice.org
Writer
Potente aplicación de procesamiento de textos
Calc
Aplicación de hojas de cálculo que incluye una utilidad para
diagramas
Draw
Aplicación de dibujo para crear gráficos vectoriales
Math
Aplicación para la generación de fórmulas matemáticas
El paquete de ofimática OpenOffice.org
163
Impress
Aplicación para la creación de presentaciones
Base
Aplicación de base de datos
La apariencia de las aplicaciones varía en función del escritorio o del gestor de ventanas
que se utilice. Además, para los cuadros de diálogo de apertura y cierre se utiliza el
formato del escritorio en uso. Independientemente de la apariencia, la distribución y
las funciones básicas son las mismas.
10.1
Compatibilidad con otras
aplicaciones ofimáticas
OpenOffice.org puede trabajar con documentos, hojas de cálculo, presentaciones y bases
de datos de Microsoft Office. Pueden abrirse sin problemas como cualquier otro archivo
y guardarse de nuevo en su formato. Debido a que los formatos de Microsoft son cerrados
y a que las especificaciones no están disponibles para otras aplicaciones, en ocasiones
se dan problemas de formato. Si tiene problemas con algún documento, considere la
opción de abrirlo de nuevo con su aplicación original y volver a guardarlo en un formato
abierto, como por ejemplo RTF para documentos o CSV para hojas de cálculo.
Para convertir varios documentos, por ejemplo al utilizar por primera vez la aplicación,
seleccione File (Archivo) → Wizard (Asistente) → Document Converter (Conversor
de documentos). Elija el formato de archivo a partir del que se realizará la conversión.
Hay disponibles varios formatos de StarOffice y Microsoft Office. Una vez seleccionado
el formato, haga clic en Next (Siguiente) y especifique las ubicaciones en las que OpenOffice.org debe buscar plantillas y documentos para la conversión y en qué directorio
se colocarán los archivos convertidos. Antes de continuar, asegúrese de que los ajustes
sean los adecuados. Haga clic en Next (Siguiente) para ver un resumen de las acciones
que se realizarán, lo que le da una nueva oportunidad de comprobar que todos los
ajustes son correctos. Finalmente, comience la conversión haciendo clic en Convert
(Convertir).
IMPORTANTE: Búsqueda de archivos de Windows
Los documentos de una partición Windows suelen encontrarse en un subdirectorio de /windows.
164
Existen varias opciones para compartir documentos con otros usuarios. Si el destinatario
sólo necesita ver el documento, expórtelo a PDF con File (Archivo) → Exportar as
PDF (Exportar como PDF). Los archivos PDF se pueden ver en cualquier plataforma
con un visor como Adobe Acrobat Reader. Para compartir un documento para editarlo,
utilice uno de los formatos de documento normales. Los formatos por defecto cumplen
con el estándar OASIS para formato XML, por lo que son compatibles con un gran
número de aplicaciones. Los formatos TXT y RTF, aunque tienen pocas opciones de
formato, pueden ser una buena opción para documentos de texto. CSV es útil para hojas
de cálculo. OpenOffice.org también ofrece otros formatos que el destinatario puede
preferir, en especial formatos de Microsoft.
OpenOffice.org está disponible para varios sistemas operativos. Esto lo convierte en
una herramienta excelente para grupos de usuarios que necesiten compartir archivos
con frecuencia y no utilicen el mismo sistema en sus equipos.
10.2
Figura 10.1
Procesamiento de textos con
Writer
Writer de OpenOffice.org
El paquete de ofimática OpenOffice.org
165
Existen dos maneras de crear un documento nuevo. Para crear un documento desde
cero, utilice File (Archivo) → New (Nuevo) → Text document (Documento de texto).
Si desea utilizar un formato estándar y elementos predefinidos para los documentos,
pruebe con un asistente. Los asistentes son pequeñas utilidades que permiten tomar algunas decisiones básicas para, a continuación, crear un documento a partir de una
plantilla. Por ejemplo, para crear una carta comercial, haga clic en File (Archivo) →
Wizards (Asistentes) → Letter (Carta). Mediante los cuadros de diálogo del asistente,
cree con facilidad un documento básico con un formato estándar. Puede verse un
ejemplo del cuadro de diálogo de un asistente en la Figura 10.2, “Un asistente de OpenOffice.org” (p. 166).
Figura 10.2
Un asistente de OpenOffice.org
Introduzca el texto que desee en la ventana del documento. Utilice la barra de herramientas Formatting (Aplicar formato) o el menú Format (Formato) para ajustar la
apariencia del documento. Utilice el menú File (Archivo) o los botones correspondientes
de la barra para imprimir y guardar el documento. Añada elementos adicionales al documento, como por ejemplo tablas, imágenes y diagramas, con las opciones del menú
Insert (Insertar).
166
10.2.1 Selección de texto
Para seleccionar texto, haga clic al comienzo del texto que desee seleccionar y, sin
soltar el botón del ratón, mueva el cursor hacia el final del intervalo (que puede incluir
desde varios caracteres o líneas hasta párrafos enteros). Suelte el botón cuando todo el
texto que desee aparezca seleccionado. El texto seleccionado aparece con los colores
invertidos. Abra un menú contextual haciendo clic con el botón derecho en la selección.
Utilice el menú contextual para cambiar la fuente, el estilo de la fuente y otras propiedades del texto.
El texto seleccionado se pude cortar o copiar en el portapapeles. El texto cortado o copiado se puede pegar de nuevo en otro lugar del documento. Utilice el menú contextual,
el menú Edit (Editar) o los iconos correspondientes de la barra para acceder a estas
funciones.
10.2.2 Desplazamiento por documentos
grandes
El navegador muestra información sobre el contenido de los documentos. También
permite desplazarse rápidamente a los diferentes elementos incluidos. Por ejemplo,
utilice el navegador para ver una descripción general de todos los capítulos o una lista
de las imágenes incluidas en el documento. Para abrirlo, seleccione Edit (Editar) →
Navigator (Navegador). La Figura 10.3, “Navegador de Writer.” (p. 168) muestra el
navegador en acción. Los elementos que aparecen en el navegador varían en función
del documento cargado en Writer.
El paquete de ofimática OpenOffice.org
167
Figura 10.3
Navegador de Writer.
10.2.3 Aplicación de formatos mediante
estilos
El cuadro de diálogo que se abre con Format (Formato) → Styles and Formatting
(Estilos y formato) es útil para aplicar formato al texto de diversas maneras. Si define
la lista desplegable de la parte inferior del cuadro como Automatic (Automático),
OpenOffice.org intentará ofrecer una selección de estilos adaptada a la tarea en curso.
Si selecciona All Styles (Todos los estilos), el menú mostrará todos los estilos del grupo
activo en ese momento. Seleccione los distintos grupos con los botones de la parte superior.
Al dar formato al texto con este método, a veces denominado formato suave, no se
aplica directamente un formato al texto. En lugar de ello, se le aplica un estilo. El estilo
puede modificarse fácilmente, lo que provoca automáticamente un cambio en el formato
de todo el texto al que se le haya asignado.
Para asignar un estilo a un párrafo, seleccione el estilo que desee usar y haga clic en el
icono del cubo de Styles and Formatting (Estilos y formato). Haga clic en los párrafos
a los que desee asignar el estilo. Finalice la asignación de estilo pulsando Esc o haciendo
clic de nuevo en el icono del cubo.
168
Cree con facilidad sus propios estilos dando el formato que desee a un párrafo o a un
carácter con el menú o la barra Format (Formato). Seleccione el elemento al que ha
dado formato a partir del cual se copiará el estilo. A continuación, en Styles and Formatting (Estilos y formato), mantenga pulsado el botón a la derecha del cubo y seleccione New Style from Selection (Nuevo estilo a partir de selección) en el menú que
aparece. Introduzca un nombre para el estilo y haga clic en OK (Aceptar). El estilo
puede entonces aplicarse a otros textos.
Cambie los detalles de un estilo seleccionándolo en la lista, haciendo clic en él con el
botón derecho y seleccionando Modify (Modificar) en el menú. Esto abrirá un cuadro
de diálogo en el que todas las posibilidades de formato posibles estarán disponibles
para su modificación.
10.3
Introducción a Calc
Calc es la aplicación de hoja de cálculo de OpenOffice.org. Cree una nueva hoja de
cálculo con File (Archivo) → New (Nuevo) → Spreadsheet (Hoja de cálculo) o abra
una con File (Archivo) → Open (Abrir). Calc puede leer y guardar en el formato de
Microsoft Excel.
En las celdas de la hoja de cálculo, introduzca datos fijos o fórmulas. Las fórmulas
pueden utilizar datos de otras celdas para generar un valor para la celda en la que se
inserten. También es posible crear diagramas a partir de los valores de las celdas.
10.4
Introducción a Impress
Impress está diseñado para la creación de presentaciones que se visualizarán en pantalla
o que se imprimirán, por ejemplo, en transparencias. Cree una presentación desde cero
con File (Archivo) → New (Nuevo) → Presentation (Presentación). Para crear una con
la ayuda de un asistente, utilice File (Archivo) → Wizards (Asistentes) → Presentation
(Presentación). Abra una presentación existente con File (Archivo) → Open (Abrir).
Impress puede abrir y guardar presentaciones de Microsoft PowerPoint.
El paquete de ofimática OpenOffice.org
169
10.5
Introducción a Base
OpenOffice 2.0 presenta un nuevo módulo de base de datos. Cree una base de datos
con File (Archivo) → New (Nuevo) → Database (Base de datos). Se abre un asistente
que le guiará en la creación de la base de datos. Base también trabaja con bases de datos
de Microsoft Access.
Figura 10.4
Bases de datos Base en OpenOffice.org
Se pueden crear tablas, formularios, consultas e informes manualmente o mediante
prácticos asistentes. Por ejemplo, el asistente para tablas contiene un gran número de
campos habituales para uso profesional y personal. Las bases de datos creadas con
Base se pueden utilizar como fuentes de datos, por ejemplo, al crear cartas tipo.
10.6
Información adicional
OpenOffice.org incluye varias opciones de ayuda que ofrecen diferentes niveles de información. Para familiarizarse rápidamente con un tema, seleccione Help (Ayuda) →
170
OpenOffice.org Help (Ayuda de OpenOffice.org). El sistema de ayuda proporciona información detallada acerca de cada uno de los módulos de OpenOffice.org (Writer,
Calc, Impress etc.).
La primera vez que se inicia la aplicación, ésta muestra Tips (Consejos), informaciones
cortas acerca de los botones cuando el ratón se detiene sobre ellos, así como el Help
Agent (Agente de ayuda), información basada en las acciones que se realicen. Para obtener más información sobre los botones que la ofrecida por los Tips (Consejos), utilice
Help (Ayuda) → What's This (¿Qué es esto?) y a continuación desplácese sobre los
botones deseados. Para salir del modo What's This (¿Qué es esto?), haga clic. Si utiliza
esta función a menudo, considere la posibilidad de habilitar Extended Tips (Consejos
ampliados) en Tools (Herramientas) → Options (Opciones) → OpenOffice.org (OpenOffice.org) → General (General). También es posible habilitar e inhabilitar el Help
Agent (Agente de ayuda) y los Tips (Consejos) desde aquí.
El sitio Web de OpenOffice es http://www.openoffice.org. Aquí se pueden
encontrar listas de correo, artículos e información sobre errores. El sitio ofrece descargas
de versiones para diferentes sistemas operativos.
El paquete de ofimática OpenOffice.org
171
Evolution: un programa de
calendario y correo electrónico
11
Evolution es un paquete de software groupware que ofrece las funciones de correo
electrónico habituales, además de otras avanzadas, como listas de tareas o un calendario.
Asimismo, la aplicación proporciona una completa libreta de direcciones capaz de enviar
información de contacto a otros en formato de tarjeta digital.
Evolution se inicia desde el menú principal o haciendo uso de evolution. Cuando
se inicia por primera vez, Evolution activa un asistente de configuración. Su uso se
describe en Sección 11.3.1, “Configuración de cuentas” (p. 176).
IMPORTANTE: Cuentas de Microsoft Exchange
Para utilizar Evolution con Microsoft Exchange, debe instalar el paquete del
conector Ximian. Instálelo con YaST.
11.1
Importación de mensajes de
correo electrónico desde otros
programas de correo
Para importar correo electrónico desde otros programas de correo, como Netscape, seleccione File (Archivo) → Import (Importar). Para formatos mbox, seleccione Import
a single file (Importar un solo archivo). En Netscape, seleccione Import data and settings
from older programs (Importar datos y ajustes desde antiguos programas). Para trabajar
Evolution: un programa de calendario y correo electrónico
173
con datos de programas que utilizan el formato maildir, como KMail, configure una
cuenta que acceda al directorio de correo.
11.2
Descripción general de
Evolution
La ventana que aparece por defecto se muestra en la Figura 11.1, “Ventana de Evolution
con correo” (p. 174). La disponibilidad de los menús y elementos de menús, junto con
la de los iconos de la barra de herramientas varía en función del componente abierto.
Utilice la trama izquierda para seleccionar la información que desea visualizar en la
trama derecha. Ajuste el tamaño de las tramas arrastrando las barras de separación.
Figura 11.1
Ventana de Evolution con correo
11.2.1 Mail (Correo)
En esta vista, la mitad superior de la ventana muestra el contenido de la carpeta actual.
La mitad inferior es un panel de vista previa utilizado para ver el mensaje de correo
174
electrónico seleccionado. Para ver una carpeta diferente, seleccione una de la lista de
carpetas de la trama izquierda.
Utilice la barra de búsqueda para buscar mensajes en una carpeta. Para clasificar los
mensajes de acuerdo con uno de los encabezados de la tabla, haga clic en el encabezado
que desee. La flecha que aparece a la derecha indica si la columna tiene un orden ascendente o descendente. Haga clic en el encabezado de la columna hasta que los mensajes
se ordenen en la dirección deseada.
11.2.2 Contacts (Contactos)
Esta vista muestra todas las direcciones que figuran en la libreta de direcciones. Para
localizar una dirección particular, utilice la barra de búsqueda o haga clic en el botón
de la derecha en el que aparezca la primera letra del apellido del contacto. Añada contactos o listas con la barra de herramientas.
11.2.3 Calendar (Calendario)
La pantalla inicial muestra una vista del día y mes actuales y, a la derecha, un panel
adicional con una lista de tareas. Las vistas de semana, semana de trabajo y mes también
están disponibles en la barra de herramientas o en el menú View (Vista). Utilice la barra
de búsqueda para encontrar una cita que figure en el calendario. Añada citas y tareas
mediante los botones de la barra de herramientas. También puede utilizar la barra de
herramientas para ir a distintos puntos del calendario o a una fecha específica.
11.2.4 Tasks (Tareas)
Tasks (Tareas) proporciona al usuario una lista de tareas. En la parte inferior de la
ventana aparecen los detalles de la tarea seleccionada. Utilice File (Archivo) → New
(Nuevo) → Task (Tarea) para añadir una nueva tarea. Efectúe búsquedas de tareas con
la barra de búsquedas. Pueden asignarse tareas a otros haciendo clic con el botón derecho
sobre la tarea y seleccionando Assign Task (Asignar tarea). Seleccione Open (Abrir)
para abrir la tarea y añadir más detalles, como el plazo y el estado.
Evolution: un programa de calendario y correo electrónico
175
11.3
Correo
El componente de correo de Evolution puede trabajar con varias cuentas en múltiples
formatos. Ofrece funciones útiles, como carpetas virtuales para mostrar los resultados
de la búsqueda y filtrar el correo basura. Para configurar la aplicación, vaya a Edit
(Editar) → Preferences (Preferencias).
11.3.1 Configuración de cuentas
Evolution puede recuperar los mensajes de correo electrónico de varias cuentas. La
cuenta desde la que se quiera enviar el mensaje de correo electrónico puede seleccionarse
al escribirlo. La configuración de las cuentas de correo puede efectuarse en Edit (Editar)
→ Preferences (Preferencias) → Mail Accounts (Cuentas de correo). Para cambiar
una configuración existente, selecciónela y haga clic en Edit (Editar). Para eliminar una
cuenta, selecciónela y haga clic en Delete (Suprimir).
Para añadir una cuenta nueva, haga clic en Add (Añadir). Al hacerlo, se abre el asistente
de configuración. Haga clic en Forward (Siguiente) para utilizarlo. Escriba su nombre
y dirección de correo electrónico en los campos correspondientes. Especifique la información opcional si lo desea. Marque Make this my default account (Establecer como
cuenta por defecto) para definirla como la cuenta que se utilizará por defecto al escribir
mensajes de correo electrónico. Haga clic en Forward (Siguiente).
En Server Type (Tipo de servidor), seleccione el formato apropiado de correo entrante
para esta dirección. POP es el formato más común para la descarga de correo electrónico
desde un servidor remoto. IMAP trabaja con carpetas de correo en un servidor especial.
Puede conseguir esta información consultando al ISP o al administrador del sistema
correspondiente. Rellene los otros campos relevantes que aparecen al seleccionar el tipo
de servidor. Una vez que haya terminado, haga clic en Forward (Siguiente). Seleccione,
si están disponibles, las Receiving Options (Opciones de recepción). Haga clic en Forward (Siguiente).
A continuación, configure las opciones de envío de correo. Para enviar un mensaje de
correo electrónico saliente al sistema local, seleccione Sendmail (EnviarCorreo). En el
caso de un servidor remoto, seleccione SMTP. Obtenga los detalles consultando al ISP
o al administrador del sistema correspondiente. Para SMTP, rellene los otros campos
que se muestran tras efectuar la selección. Una vez que haya terminado, haga clic en
Forward (Siguiente).
176
La dirección de correo electrónico se utiliza, por defecto, como nombre para identificar
la cuenta. Escriba otro nombre si lo desea. Haga clic en Forward (Siguiente). Haga clic
en Apply (Aplicar) para guardar la configuración de la cuenta.
Para establecer una cuenta para el envío de correo electrónico por defecto, seleccione
la cuenta deseada y, a continuación, pulse Default (Por defecto). Para inhabilitar la recuperación de mensajes de correo electrónico desde una cuenta, seleccione esta última
y, a continuación, haga clic en Disable (Inhabilitar). No obstante, una cuenta inhabilitada puede utilizarse como la dirección de envío, pero no se revisa el correo entrante.
Si es necesario, vuelva a habilitar la cuenta mediante Enable (Habilitar).
11.3.2 Creación de mensajes
Para escribir un nuevo mensaje, haga clic en New (Nuevo) → Mail Message (Mensaje
de correo). Al responder o reenviar un mensaje, se abre el mismo editor de mensajes.
Vaya a From (Desde), seleccione la cuenta desde la que desea enviar el mensaje. En
los campos de los destinatarios, escriba una dirección de correo electrónico o parte de
un nombre o una dirección que aparezca en su libreta de direcciones. Si Evolution encuentra una coincidencia en la libreta de direcciones con la cadena que escriba, aparecerá una lista de selección. Haga clic en el contacto deseado o complete la cadena escrita
si no hay coincidencias. Para seleccionar un destinatario directamente en la libreta de
direcciones, haga clic en To (Para) o CC (Con copia).
Evolution puede enviar mensajes de correo electrónico como sólo texto o HTML. Para
dar formato HTML al correo, seleccione Format (Dar formato) en la barra de herramientas. Para enviar adjuntos, seleccione Attach (Adjuntar) o Insert (Insertar) → Adjunto.
Para enviar el mensaje, haga clic en Send (Enviar). Si no está listo para enviarlo inmediatamente, seleccione cualquier otra cosa que desee en File (Archivo). Por ejemplo,
guarde el mensaje como borrador o envíelo más tarde.
11.3.3 Firmas y mensajes de correo
electrónico cifrados
Evolution admite el cifrado de mensajes de correo electrónico con PGP. Puede firmar
mensajes de correo electrónico y comprobar mensajes de correo electrónico firmados.
Evolution: un programa de calendario y correo electrónico
177
Para utilizar estas funciones, genere y gestione claves con una aplicación externa, como
gpg o KGpg.
Para firmar un mensaje de correo electrónico antes de enviarlo, seleccione Security
(Seguridad) → PGP sign (Firma PGP). Al hacer clic en Send (Enviar), un cuadro de
diálogo solicita la contraseña de su clave secreta. Escriba la contraseña y salga del
cuadro de diálogo mediante OK (Aceptar) para enviar el mensaje de correo electrónico
firmado. Para firmar otros mensajes de correo electrónico en el transcurso de una sesión,
sin necesidad de “desbloquear” varias veces la clave secreta, marque Remember this
password for the remainder of this session (Recordar contraseña durante el resto de
esta sesión).
Al recibir un mensaje de correo electrónico firmado de otros usuarios, aparece un pequeño icono de un candado al final del mensaje. Si hace clic en este símbolo, Evolution
inicia un programa externo (gpg) para comprobar la firma. Si la firma es válida, una
marca verde aparecerá junto al símbolo del candado. Si, por el contrario, no lo es, aparecerá un candado roto.
El procedimiento de cifrado y descifrado es así de sencillo. Tras escribir el mensaje de
correo electrónico, vaya a Seguridad → PGP encrypt (Cifrado PGP) y envíe el mensaje.
Al recibir mensajes cifrados, un cuadro de diálogo solicita la contraseña de su clave
secreta. Escriba la contraseña para descifrar el mensaje de correo electrónico.
11.3.4 Carpetas
A menudo, es recomendable clasificar los mensajes de correo electrónico en varias
carpetas. En la trama izquierda se muestra el árbol de carpetas. Si se accede al correo
mediante IMAP, las carpetas IMAP también aparecen en esta barra de carpetas. Para
la mayoría de los formatos, incluido POP, las carpetas se almacenan localmente, clasificadas en Local Folders (Carpetas locales).
Se incluyen varias carpetas por defecto. Inbox (Bandeja de entrada) es la ubicación en
la que se guardan, inicialmente, los nuevos mensajes procedentes de un servidor. Sent
(Enviado) se utiliza para guardar copias de mensajes enviados de correo electrónico.
La Outbox (Bandeja de entrada) proporciona almacenamiento temporal para los mensajes
de correo electrónico que aún no han sido enviados. Resulta útil cuando se trabaja fuera
de línea o cuando el servidor de correo saliente deja de estar disponible temporalmente.
Drafts (Borradores) se utiliza para guardar copias de mensajes de correo electrónico
inacabados. La carpeta Trash (Papelera) está diseñada para el almacenamiento temporal
178
de elementos eliminados. Junk (Correo basura) se reserva para la función de filtrado
de correo basura de Evolution.
Se pueden crear nuevas carpetas en On This Computer (En este equipo) o subcarpetas
de carpetas existentes. Puede crear una jerarquía de carpetas tan compleja como desee.
Para crear una nueva carpeta, seleccione File (Archivo) → New (Nuevo) → Mail Folder
(Carpeta de correo). En el cuadro de diálogo de Mail Folder (Carpeta de correo), escriba
el nombre de la nueva carpeta. Utilice el ratón para establecer en qué carpeta va a colocarse la nueva carpeta. Salga del cuadro de diálogo mediante OK (Aceptar).
Para mover un mensaje a una carpeta, seleccione el mensaje en cuestión. Haga clic con
el botón derecho del ratón para abrir el menú contextual. Seleccione Move to Folder
(Mover a carpeta) y, en el cuadro de diálogo que se abre, la carpeta de destino. Haga
clic en OK (Aceptar) para mover el mensaje. El encabezado del mensaje de la carpeta
original se muestra con una línea transversal, que indica que el mensaje está marcado
para su eliminación de esa carpeta. El mensaje se almacena en la nueva carpeta. La
copia de mensajes puede llevarse a cabo de una forma similar.
El traslado de varios mensajes a diferentes carpetas puede llevar tiempo. Se pueden
usar filtros para automatizar este procedimiento.
11.3.5 Filtros
Evolution ofrece varias opciones para el filtrado del correo electrónico. Los filtros
pueden usarse para mover un mensaje a una carpeta concreta o para borrar un mensaje.
Los mensajes también pueden moverse directamente a la papelera mediante un filtro.
Hay dos opciones para crear un nuevo filtro: crearlo desde cero o a partir de un mensaje
que va a filtrarse. La segunda opción es muy útil para filtrar mensajes enviados a una
lista de correo.
Configuración de filtros
Seleccione Tools (Herramientas) → Filters (Filtros). Este cuadro de diálogo enumera
los filtros existentes, que pueden editarse o borrarse. Haga clic en Add (Añadir) para
crear un nuevo filtro. De forma alternativa, para crear un filtro basado en un mensaje,
seleccione este último y, a continuación, Tools (Herramientas) → Create Filter from
Message (Crear filtro a partir de mensaje).
Evolution: un programa de calendario y correo electrónico
179
Escriba un nombre para el nuevo filtro en Rule Name (Nombre de regla). Seleccione
los criterios que van a utilizarse para el filtro. Las opciones incluyen el remitente, los
destinatarios, la cuenta de origen, el tema, la fecha y el estado. El buzón en el que se
lee Contains (Contiene) ofrece varias opciones, como contains (contiene), is (es) y
también is not (no es). Seleccione las condiciones adecuadas. Escriba el texto que desea
buscar. Haga clic en Add (Añadir) para añadir más criterios de filtrado. Utilice Execute
actions (Ejecutar acciones) para determinar si todos, o tan sólo algunos de los criterios
deben cumplirse para aplicar el filtro.
En la parte inferior de la ventana, defina la acción que ha de llevarse a cabo cuando se
cumplan los criterios de filtrado. Por ejemplo, los mensajes se pueden mover a una
carpeta o copiarlos en ella, o se les puede asignar un color especial. Al mover o copiar,
haga clic para seleccionar la carpeta de destino. Seleccione la carpeta en la lista de
carpetas que aparece. Para crear una nueva carpeta, haga clic en New (Nueva). Haga
clic en OK (Aceptar) tras seleccionar la carpeta correcta. Cuando termine de crear el
filtro, haga clic en OK (Aceptar).
Aplicación de filtros
Los filtros se aplican según el orden que figura en el cuadro de diálogo al que se accede
mediante Tools (Herramientas) → Filters (Filtros). Cambie el orden resaltando un filtro
y haciendo clic en Up (Arriba) o Down (Abajo). Haga clic en OK (Aceptar) para cerrar
el cuadro de diálogo de filtros una vez que haya terminado.
Los filtros se aplican a todos los mensajes de correo electrónico nuevos. No se aplican
a los mensajes de correo que ya se encuentren en sus carpetas. Para aplicar filtros a los
mensajes ya recibidos, seleccione los mensajes deseados y, a continuación, seleccione
Actions (Acciones) → Apply Filters (Aplicar filtros).
11.4
Contactos
Evolution puede hacer uso de varias libretas de direcciones diferentes. Las libretas
disponibles aparecen en la trama izquierda en forma de lista. Busque un contacto concreto mediante la barra de búsqueda. Añada contactos en varios formatos a la libreta
de direcciones de Evolution mediante File (Archivo) → Import (Importar). Haga clic
con el botón derecho en un contacto para abrir un menú con varias opciones, como
reenviar el contacto o guardarlo como una tarjeta digital. Haga doble clic en un contacto
para editarlo.
180
Figura 11.2
Libreta de direcciones de Evolution
11.4.1 Adición de contactos
Evolution, además del nombre y la dirección de correo electrónico, puede almacenar
más información de contacto y de dirección de una persona. Añada rápidamente la dirección de correo electrónico de un remitente haciendo clic con el botón derecho en la
dirección marcada en la vista previa del mensaje. Para introducir un contacto totalmente
nuevo, haga clic en New Contact (Nuevo contacto) en la vista Contacts (Contactos).
Con ambos métodos se abre un cuadro de diálogo en el que puede escribir la información
de contacto.
En la pestaña Contact (Contacto), escriba el nombre del contacto, las direcciones de
correo electrónico, los números de teléfono y las identidades de mensajería instantánea
correspondientes. Personal Information (Información personal) se reserva para las direcciones Web y otros tipos de información detallada. Escriba información sobre otras
direcciones de correo del contacto en Mailing Address (Dirección de correo). Tras especificar toda la información deseada para el contacto, haga clic en OK (Aceptar) para
añadirla a la libreta de direcciones.
Evolution: un programa de calendario y correo electrónico
181
11.4.2 Elaboración de listas
Si manda con frecuencia mensajes de correo electrónico a un grupo de personas, puede
simplificar el proceso creando una lista en la que figuren las direcciones de los componentes de ese grupo. Haga clic en File (Archivo) → New (Nuevo) → Contact List (Lista
de contactos). Se abrirá el editor de listas de contacto. Especifique un nombre para la
lista. Añada direcciones escribiéndolas en el cuadro y haciendo clic en Add (Añadir),
o arrastrando los contactos desde la vista Contacts (Contactos) y soltándolos en el
cuadro. Habilite o inhabilite Hide addresses (Ocultar direcciones) para que los destinatarios puedan ver o no quién más ha recibido el mensaje. Una vez que haya terminado,
haga clic en OK (Aceptar). Con ello, la lista se convertirá en uno de sus contactos y
aparecerá en la ventana de composición al escribir las primeras letras.
11.4.3 Adición de libretas de direcciones
Configure libretas de direcciones adicionales GroupWise y Exchange en la configuración
de una cuenta. Para añadir otras libretas locales o LDAP, seleccione File (Archivo) →
New (Nuevo) → Address Book (Libreta de direcciones). En el cuadro de diálogo que
se abre, seleccione el tipo de libreta de direcciones y especifique la información solicitada.
11.5
Calendarios
Evolution puede funcionar con varios calendarios. Con File (Archivo) → Import (Importar), puede importar calendarios en formato iCalendar. Utilice el calendario para
fijar citas y reuniones programadas. Si lo desea, establezca recordatorios para informarle
de cuándo darán comienzo las citas programadas.
182
Figura 11.3
El calendario de Evolution
11.5.1 Adición de citas
Para añadir una nueva cita al calendario, haga clic en File (Archivo) → New (Nuevo)
→ Appointment (Cita). En la pestaña Appointment (Cita), especifique los detalles de
la cita. Seleccione una categoría, si lo desea, para facilitar la búsqueda y ordenación
posteriores. Utilice Alarm (Alarma), de forma optativa, para activar una alarma con la
que Evolution le recordará el comienzo de la cita antes de que ésta comience. Si la cita
tiene lugar regularmente, establezca las fechas en las que se repite en Recurrence (Repetición). Haga clic en OK (Aceptar) tras definir todos los ajustes. Con ello, la nueva
cita aparecerá en el calendario.
11.5.2 Programación de reuniones
Para programar una reunión, seleccione File (Archivo) → New (Nuevo) → Meeting
(Reunión). Especifique la información como en el caso de las citas. Añada a los asistentes
en Invitations (Invitaciones) o Scheduling (Programación). Para introducir asistentes a
partir de la libreta de direcciones, utilice Contacts (Contactos) para abrir una lista de
Evolution: un programa de calendario y correo electrónico
183
los contactos de la guía. Scheduling (Programación) también se puede utilizar para
programar un hora adecuada para todos los asistentes. Pulse Autopick (Fijar automáticamente) tras efectuar la configuración de los participantes para asignar una hora de
forma automática.
11.5.3 Adición de calendarios
Los calendarios GroupWise y Exchange deberían configurarse en la configuración de
la cuenta. Para añadir calendarios locales o LDAP adicionales, seleccione File (Archivo)
→ New (Nuevo) → Calendar (Calendario). Seleccione el tipo deseado y especifique
la información requerida.
11.6
Sincronización de datos con un
dispositivo portátil
Evolution está diseñado para que sus datos puedan sincronizarse con un dispositivo
portátil, como un Palm. La sincronización utiliza GNOME Pilot. Seleccione Tools
(Herramientas) → Pilot Settings (Ajustes de Pilot) para abrir el asistente de configuración. Consulte la ayuda para obtener más información.
11.7
Evolution para usuarios de
GroupWise
Los usuarios de GroupWise no deberían tener problemas para acceder a sus cuentas de
GroupWise al utilizar Evolution. Evolution y GroupWise cuentan con una tecnología
muy similar. Los usuarios familiarizados con un sistema aprenderán a utilizar el otro
sin mucho esfuerzo.
184
11.7.1 Configuración de Evolution para el
acceso al sistema GroupWise
Utilice el Asistente de configuración de correo de Evolution para configurar Evolution
de modo que pueda acceder al sistema GroupWise. Para iniciar el Asistente de configuración de correo de Evolution, haga clic en Preferences (Preferencias) → Mail Accounts
(Cuentas de correo) → Add (Añadir) y, a continuación, haga clic en Forward (Siguiente).
En la página Identidad, especifique su dirección de correo electrónico correspondiente
al sistema GroupWise (por ejemplo, [email protected]) y, a continuación, haga
clic en Forward (Siguiente).
En la página Receiving Email (Recepción de correo electrónico), seleccione IMAP en
la lista Tipo de servidor; especifique el nombre de host de su servidor de GroupWise
en el campo Host; establezca el resto de ajustes en la página Receiving Options (Opciones de recepción) como corresponda en su sistema y, a continuación, haga clic en
Forwared (Siguiente).
En la página Sending Email (Envío de correo electrónico), seleccione SMTP en la lista
Tipo de servidor; especifique el nombre de host de su servidor de GroupWise en el
campo Host; establezca el resto de las opciones en la página Sending Options (Opciones
de envío) como corresponda en su sistema y, a continuación, haga clic en Forward
(Siguiente).
En la página Account Management (Gestión de cuentas), especifique el nombre que
desea utilizar para identificar la cuenta en la página Evolution Settings (Ajustes de
Evolution) y, a continuación, haga clic en Forward (Siguiente).
Haga clic en Apply (Aplicar) para crear la cuenta de GroupWise. Con ello, su buzón
de GroupWise aparecerá en la lista de cuentas de correo electrónico disponibles.
11.8
Información adicional
Evolution ofrece un amplio número de páginas de ayuda internas. Utilice el menú Help
(Ayuda) para acceder a esta información. Para obtener más información sobre Evolution,
consulte el sitio Web del proyecto en la dirección http://www.gnome.org/
projects/evolution/.
Evolution: un programa de calendario y correo electrónico
185
Kontact: un programa de
calendario y correo electrónico
12
Kontact combina la funcionalidad de un gran número de aplicaciones KDE en una interfaz única de gran utilidad que le permitirá gestionar toda su información personal.
Estas aplicaciones incluyen KMail para el correo electrónico, KOrganizer para el calendario, KAddressbook para los contactos y, por último, KNotes para las notas. También
es posible sincronizar los datos con dispositivos externos, tales como PalmPilot u otros
dispositivos de mano. Kontact se integra de forma sencilla con el resto de productos
del escritorio KDE y se conecta a una gran variedad de servidores de groupware. Incluye,
además, funciones adicionales, como, por ejemplo, filtro de correo spam y de virus, así
como lector RSS.
Inicie Kontact desde el menú principal con Office (Office) → Kontact (Personal Information Manager) (Kontact [Gestor de información personal]). En su lugar, también
puede escribir el comando kontact en una línea de comando. También puede abrir
los componentes individuales de Kontact en vez de la aplicación conjunta si solamente
tiene que hacer uso parcial de la funcionalidad.
12.1
Importación de mensajes de
correo electrónico desde otros
programas de correo
Para importar mensajes de correo electrónico desde otras aplicaciones, seleccione Tools
(Herramientas) → Import Messages (Importar mensajes) desde la vista de correo
electrónico de Kontact. Kontact incluye filtros para importar mensajes de Outlook Ex-
Kontact: un programa de calendario y correo electrónico
187
press, en formato mbox o en formato texto, mensajes de Pegasus Mail, Opera, Evolution
y muchos más. La función de importación se puede iniciar por separado mediante el
comando kmailcvt.
Seleccione la aplicación correspondiente y confirme su elección con Continue (Continuar). Se le proporcionará un archivo o una carpeta, en función del tipo seleccionado.
A continuación, Kontact completará el proceso.
12.2
Descripción general de Kontact
La vista por defecto de la ventana, en la que se muestra el Summary (Resumen), se
muestra en la Figura 12.1, “Vista de la ventana Summary (Resumen) de Kontact”
(p. 189). Utilice los botones que se encuentran situados en la parte izquierda de la ventana para acceder a los distintos componentes.
La opción Summary (Resumen) ofrece información básica, incluidos los cumpleaños
y los elementos pendientes, el pronóstico meteorológico y el estado de KPilot. La sección
de noticias puede acceder a alimentadores RSS para ofrecerle información actualizada
de interés. Utilice la opción Settings (Configuración) → Configure Summary View
(Configurar vista del resumen) para configurar la información que se muestra en la
pantalla.
188
Figura 12.1
Vista de la ventana Summary (Resumen) de Kontact
12.2.1 Correo electrónico
La zona de carpetas que se encuentra situada a la izquierda contiene una lista de las
carpetas de mensajes de correo electrónico (buzones, en definitiva) en la que se indica
el número total de mensajes y cuántos de ellos no se han leído aún. Para seleccionar
una carpeta, haga clic en ella. Los mensajes de la carpeta en cuestión aparecerán en la
trama que se encuentra situada en el extremo superior derecho de la pantalla. El número
de mensajes contenidos en dicha carpeta se muestra también en la barra de estado que
se sitúa en la parte inferior de la ventana de la aplicación.
El asunto, remitente y tiempo de recepción de cada mensaje figura en la zona del encabezado, que se encuentra situada en la parte derecha de la ventana. Haga clic en un
mensaje para seleccionarlo y visualizarlo en la ventana de mensajes. Ordene los mensajes
haciendo clic en el encabezado de la columna deseado (asunto, remitente, fecha, etc.).
El contenido del mensaje seleccionado se muestra en la trama de mensajes de la ventana.
Los archivos adjuntos se representan mediante iconos que se encuentran situados al final
del mensaje, para lo que se toma como base el tipo MIME de archivo; también se pueden
mostrar dentro del mensaje.
Kontact: un programa de calendario y correo electrónico
189
Los mensajes se pueden marcar con distintos indicadores de estado. Para modificar el
estado del mensaje, utilice las opciones Message (Mensaje) → Mark Message (Marcar
mensaje). Puede utilizar esta función para asignar un estado concreto a un mensaje,
como, por ejemplo, importante o no tenido en cuenta. Por ejemplo, puede resaltar los
mensajes relevantes que no se pueden olvidar. Consulte únicamente los mensajes que
tengan un estado determinado utilizando la opción Status (Estado) de la barra de búsqueda.
12.2.2 Contactos
La trama superior izquierda de este elemento muestra todas las direcciones de las libretas
de direcciones que se encuentran activadas en ese momento. En la trama inferior izquierda aparece un lista con las libretas de direcciones, al tiempo que se muestra cuál de
ellas se encuentra activa en ese momento. La trama situada a la derecha muestra el
contacto que se encuentra seleccionado en ese momento. Utilice la barra de búsqueda
que se encuentra en la parte superior para localizar un contacto determinado.
12.2.3 Lista de tareas pendientes
La opción To-do List (Lista de tareas pendientes) muestra su lista de tareas. Haga clic
en el campo que se encuentra situado en el campo superior para añadir un elemento
nuevo a la lista. Haga clic con el botón derecho del ratón en la columna de un elemento
existente para realizar los cambios deseados en el valor de dicha columna. Un elemento
se puede dividir en distintos subelementos. Haga clic con el botón derecho del ratón y
seleccione la opción New Sub-to-do (Nueva subtarea pendiente) para crear un subelemento. También puede asignar tareas pendientes a otras personas.
12.2.4 Calendario
La vista del calendario se divide en una serie de tramas distintas. Por defecto, se ofrece
la visualización de un pequeño calendario con el mes en el que se encuentre y una vista
semanal de la semana en cuestión. Así mismo, encontrará también una lista de las tareas
pendientes, una vista detallada del acontecimiento o de la tarea pendiente y una lista
de los calendarios con el estado de cada uno de ellos. Seleccione una vista diferente en
la barra de herramientas o en el menú View (Ver).
190
12.2.5 Notas
Utilice el elemento Notas para apuntar elementos que desee recordar. Si está empleando
KDE, utilice el icono KNote de la bandeja del sistema para poder visualizar las notas
en el escritorio.
12.3
Correo electrónico
Kontact utiliza KMail como elemento de gestión del correo electrónico. Para configurarlo, abra el elemento de correo electrónico y, a continuación, seleccione Settings
(Configuración) → Configure KMail (Configurar KMail). KMail es un cliente de correo
electrónico muy completo que, además, es compatible con un gran número de protocolos.
La opción Tools (Herramientas) contiene diversas herramientas de gran utilidad para
la gestión de los mensajes de correo electrónico no deseados. Utilice la opción Find
(Buscar) para realizar una búsqueda detallada de mensajes. La opción Anti-Spam Wizard
(Asistente anticorreo spam) puede ayudarle a gestionar una serie de herramientas que
filtran los mensajes comerciales de correo electrónico no deseados. El Anti-Virus Wizard
(Asistente antivirus), por su parte, le ayudará a gestionar los detectores de virus para
mensajes de correo electrónico. Los dos asistentes mencionados trabajan con software
antivirus y anticorreo spam de carácter externo. Si las opciones están inhabilitadas,
instale paquetes adicionales de protección frente a virus y correo spam.
Kontact: un programa de calendario y correo electrónico
191
Figura 12.2
Elemento de correo electrónico de Kontact
12.3.1 Configuración de cuentas
Kontact puede gestionar al mismo tiempo diversas cuentas de correo electrónico, como,
por ejemplo, su cuenta personal y su cuenta profesional. Cuando vaya a escribir un
mensaje de correo electrónico, seleccione una de las identidades que se hayan definido
previamente haciendo clic en View (Ver) → Identity (Identidad). Para crear un nuevo
perfil, seleccione Settings (Configuración) → Configure KMail (Configurar KMail) y,
a continuación, Identities (Identidades) → New (Nueva). En el cuadro de diálogo que
se abrirá, asigne un nombre a la nueva identidad, como por ejemplo “particular” o
“trabajo.” Haga clic en OK (Aceptar) para abrir un cuadro de diálogo en el que podrá
incluir información adicional. También es posible asignar una identidad a una carpeta,
de forma tal que se seleccione dicha identidad cuando responda a un mensaje alojado
en la carpeta en cuestión.
En la pestaña General, introduzca su nombre, el nombre de la organización y su dirección
de correo electrónico. En la opción Cryptography (Cifrado), seleccione su clave para
enviar mensajes cifrados o con firma digital. Para poder utilizar las funciones de cifrado,
deberá crear con anterioridad una clave con KGpg, según se explica en el Capítulo 6,
Cifrado con KGpg (p. 107).
192
En la opción Advanced (Características avanzadas) puede incluir una dirección de respuesta y una dirección de copia oculta; al mismo tiempo, también podrá realizar otras
tareas, como elegir un diccionario, seleccionar las carpetas para archivar los mensajes
enviados y de borrador, así como definir el modo en que desea que se envíen los mensajes. En la opción Signature (Firma), determine, si lo desea, la firma que se incluirá
como un bloque de texto adicional al final de sus mensajes. Por ejemplo, podrá firmar
todos sus mensajes de correo electrónico con su dirección de contacto. Para activar esta
opción, seleccione Enable Signature (Habilitar firma) y especifique de dónde se deberá
obtener la firma: de un archivo, de un campo de entrada o de los datos de salida de un
comando. Una vez que haya terminado de especificar los ajustes de la identidad, confirme dichos ajustes con OK (Aceptar).
Los ajustes que se encuentran en Network (Red) determinan la forma en la que Kontact
recibe y envía los mensajes de correo electrónico. Son dos las pestañas existentes, cada
una de ellas referida respectivamente al envío y la recepción de mensajes de correo
electrónico. Muchos de estos ajustes variarán en función del sistema y de la red en
donde se localiza su servidor de correo electrónico. Si no está seguro de los ajustes o
de los elementos que debe seleccionar, consulte con su ISP o administrador del sistema.
Para crear buzones de mensajes salientes en la pestaña Envío, haga clic en Add (Añadir).
Seleccione entre el tipo de transporte SMTP y sendmail. SMTP es la elección más
conveniente en la mayoría de los casos. Después de hacer esta selección, aparecerá una
ventana en la que deberá introducir los datos del servidor SMTP. Proporcione un
nombre y escriba la dirección del servidor que le habrá facilitado su ISP. Si el servidor
quiere que se autentique, habilite Server requires authentication (El servidor precisa
autenticación). Los ajustes de seguridad se encuentran en la pestaña Security (Seguridad).
En esta pestaña deberá especificar el método de cifrado preferido.
Especifique los ajustes para la recepción de mensajes de correo electrónico en la pestaña
Receiving (Recepción). Utilice la opción Add (Añadir) para crear una cuenta nueva.
Realice su selección entre los distintos métodos para la recuperación de mensajes de
correo electrónico, tales como local (almacenados en formato Mbox o Maildir), POP3
o IMAP. Defina los ajustes adecuados para su servidor.
12.3.2 Creación de mensajes
Para redactar nuevos mensajes, seleccione Message (Mensaje) → New Message
(Mensaje nuevo) o haga clic en el icono correspondiente de la barra de herramientas.
Para enviar mensajes desde cuentas de correo electrónico distintas, seleccione la iden-
Kontact: un programa de calendario y correo electrónico
193
tidad correspondiente; para ello, siga las indicaciones que se dan en la Sección 12.3.1,
“Configuración de cuentas” (p. 192). En la opción To (Para), escriba la dirección de
correo electrónico o parte del nombre o de la dirección, siempre y cuando aparezca en
su libreta de direcciones. Si Kontact puede encontrar una coincidencia en la libreta de
direcciones con la cadena que haya escrito, aparecerá una lista de selección. Haga clic
en el contacto deseado o complete los datos de entrada si no hay coincidencias. Para
seleccionar una dirección directamente en la libreta de direcciones, haga clic en el botón
..., que se encuentra situado junto al campo Address (Dirección).
Para adjuntar archivos al mensaje, haga clic en icono del clip y seleccione el archivo
que desea adjuntar. Como alternativa, también puede arrastrar un archivo desde el escritorio o desde otra carpeta a la ventana New Message (Mensaje nuevo), o bien seleccione una de las opciones que figuran en el menú Attach (Adjuntar). Como norma general, el formato del archivo adjunto se reconoce correctamente. Si el formato no se
reconoce, haga clic en el icono con el botón derecho del ratón. Seleccione la opción
Properties (Propiedades) en el menú que aparecerá. Defina el formato y el nombre de
archivo en el cuadro de diálogo que aparecerá a continuación y añada una descripción.
Deberá indicar, de igual modo, si el archivo adjunto debe estar firmado o cifrado.
Una vez que haya terminado de redactar el mensaje, envíelo de inmediato utilizando
para ello Message (Mensaje) → Send (Enviar), o bien mueva el mensaje al buzón de
salida con las opciones Message (Mensaje) → Queue (Poner en cola). Una vez que se
haya enviado el mensaje de correo electrónico de forma satisfactoria, se guardará una
copia del mensaje en cuestión en sent-mail. Los mensajes que se han movido a
outbox pueden editarse o suprimirse.
12.3.3 Firmas y mensajes de correo
electrónico cifrados
Para cifrar un mensaje de correo electrónico, será necesario que genere previamente
un par de claves, según se describe en el Capítulo 6, Cifrado con KGpg (p. 107). Para
configurar los detalles del procedimiento de cifrado, seleccione Settings (Configuración)
→ Configure KMail (Configurar KMail) → Identities (Identidades) para especificar la
identidad con la que se enviarán los mensajes firmados y cifrados. A continuación,
pulse Modify (Modificar). Después de confirmar las modificaciones con la opción OK
(Aceptar), deberá aparecer la clave en el campo correspondiente. Cierre el cuadro de
diálogo de configuración con la opción OK (Aceptar).
194
12.3.4 Carpetas
Las carpetas de mensajes son de gran utilidad para organizar los mensajes de correo
electrónico. Tales carpetas se localizan por defecto en el directorio ~/.kde/share/
apps/kmail/mail. Al iniciar KMail por primera vez, el programa crea diversas
carpetas. Es en inbox donde se sitúan en un principio los mensajes nuevos suministrados por el servidor. Por su parte, outbox se utiliza solamente para el almacenamiento
de los mensajes que se encuentran en cola para su envío. Las copias de los mensajes
enviados se encuentran en sent-mail. En trash se incluyen las copias de todos
los mensajes de correo electrónico que se han suprimido con Del o con Edit (Editar)
→ Delete (Suprimir). Por último, los mensajes sin terminar se guardan en drafts. Si
utiliza IMAP, las carpetas IMAP aparecerán por debajo de las carpetas locales. Cada
servidor de correo entrante, como por ejemplo, el servidor local o IMAP, tiene sus
carpetas ubicadas en la lista de carpetas.
Si desea organizar sus mensajes en carpetas adicionales, cree carpetas nuevas seleccionando Folder (Carpeta) → New Folder (Carpeta nueva). Se abrirá una ventana en la
que deberá especificar el nombre y el formato de la carpeta nueva.
Haga clic con el botón derecho del ratón para visualizar el menú contextual, en el que
aparecen diversas opciones de carpeta. Haga clic en Expire (Caducar) para especificar
la fecha de caducidad de los mensajes leídos y no leídos, qué debería ocurrir con dichos
mensajes una vez llegada la fecha de caducidad y, por último, si los mensajes caducados
se deben suprimir o deben enviarse a una carpeta. Si desea utilizar la carpeta para
guardar mensajes provenientes de una lista de correo, defina las opciones necesarias
en Folder (Carpeta) → Mailing List Management (Gestión de la lista de correo).
Para mover uno o varios mensajes de una carpeta a otra, resalte los mensajes que desea
mover y, a continuación, pulse M , o bien seleccione Message (Mensaje) → Move to
(Mover a). En la lista de carpetas que aparecerá, seleccione la carpeta a la que desea
mover los mensajes. Los mensajes se pueden mover también arrastrándolos desde la
ventana de la parte superior y soltándolos en la carpeta deseada de las que se encuentran
ubicadas en la ventana de la izquierda.
12.3.5 Filtros
El empleo de filtros es de gran utilidad para el procesamiento automático del correo
entrante. Los filtros emplean diversos criterios del correo electrónico, tales como el
Kontact: un programa de calendario y correo electrónico
195
remitente o el tamaño, para mover los mensajes a determinadas carpetas, suprimir el
correo electrónico no deseado, devolver mensajes al remitente o realizar otras acciones.
Configuración de filtros
Para crear un filtro desde el principio, seleccione Settings (Configuración) → Configure
Filters (Configurar filtros). Para crear un filtro tomando como base un mensaje ya
existente, seleccione el mensaje deseado en la lista Header (Encabezado) y, a continuación, seleccione Tools (Herramientas) → Create Filter (Crear filtro) y los criterios
deseados para los filtros.
Seleccione el método de correspondencia para los criterios de filtrado (todos o ninguno).
A continuación, seleccione los criterios que se aplican únicamente a los mensajes deseados. En Filter Actions (Acciones de filtro), establezca qué debería hacer el filtro en
los mensajes que cumplan los criterios. Advanced Options (Opciones avanzadas) permite realizar un seguimiento sobre cuándo se aplica el filtro, al tiempo que permite saber
si otros filtros adicionales deberían aplicarse a los mensajes en cuestión.
Aplicación de filtros
Los filtros se aplican según el orden que figura en el cuadro de diálogo, al que se accede
mediante Settings (Configuración) → Configure Filters (Configurar filtros). Modifique
el orden si lo desea, seleccionando para ello un filtro y haciendo clic en los botones de
flecha. Los filtros se aplican solamente a los mensajes entrantes nuevos o a los mensajes
enviados, según se haya especificado en las opciones avanzadas del filtro. Para aplicar
filtros a los mensajes existentes, seleccione los mensajes deseados y, a continuación,
seleccione la opción Message (Mensaje) → Apply Filters (Aplicar filtros).
Si los filtros no actúan de la forma esperada, monitorícelos con la opción Tools (Herramientas) → Filter Log Viewer (Visor de registro de filtros). Cuando la opción de registro
está habilitada en este cuadro de diálogo, es posible ver cómo los filtros procesan los
mensajes, lo que le podrá ayudar a localizar el problema.
12.4
Contactos
El elemento de contactos utiliza KAddressBook. Configúrelo con la opción Settings
(Configuración) → Configure KAddressBook (Configurar KAddressBook). Para buscar
196
un contacto determinado, utilice la barra de búsqueda. Con la opción Filter (Filtro),
seleccione si desea visualizar únicamente los contactos de una categoría en particular.
Haga clic con el botón derecho del ratón en el contacto deseado para abrir un menú, en
el que podrá elegir de entre una gran variedad de opciones, como por ejemplo, enviar
la información de contacto a través de un mensaje de correo electrónico.
Figura 12.3
Libreta de direcciones de Kontact
12.4.1 Adición de contactos
Para añadir un contacto con el nombre y la dirección de correo electrónico de un mensaje de correo electrónico, haga clic con el botón derecho del ratón en la dirección que
se encuentra en el elemento del mensaje y, a continuación, seleccione Open in Address
Book (Abrir en libreta de direcciones). Para añadir un contacto nuevo no proveniente
de un mensaje de correo electrónico, seleccione la opción File (Archivo) → New Contact
(Contacto nuevo) en el elemento de direcciones. Con ambos métodos se abrirá un cuadro
de diálogo en el que podrá escribir información sobre el contacto.
En la etiqueta General (General), escriba la información básica de contacto, como, por
ejemplo, el nombre, las direcciones de correo electrónico y los números de teléfono.
Las categorías, por otra parte, se pueden utilizar para clasificar las direcciones. En
Kontact: un programa de calendario y correo electrónico
197
cuanto a la opción Details (Detalles), en ella se incluye información específica, como
por ejemplo, la fecha de cumpleaños y el nombre de la pareja del contacto.
Si su contacto utiliza algún servicio de mensajería instantánea, podrá añadir su identidad
mediante la opción IM Addresses (Direcciones de IM). Si realiza esta operación y
cuenta con Kopete o con cualquier otro programa de conversación de KDE que esté
ejecutándose al mismo tiempo que Kontact podrá ver en Kontact la información de estado de las identidades en cuestión. En la opción Crypto Settings (Configuración de
cifrado), escriba los datos de cifrado del contacto y la clave pública.
Por su parte, Misc (Varios) dispone de información adicional, como por ejemplo, la
fotografía del contacto y la ubicación de la información sobre la disponibilidad del
usuario. Utilice Custom Fields (Campos personales) para añadir su propia información
en el contacto o en la libreta de direcciones.
Los contactos se pueden importar también en una gran variedad de formatos. Utilice
File (Archivo) → Import (Importar) y seleccione el formato adecuado. A continuación,
seleccione el archivo que desea importar.
12.4.2 Elaboración de listas de distribución
Si envía con frecuencia mensajes de correo electrónico al mismo grupo de personas, la
creación de una lista de distribución le permitirá almacenar diversas direcciones de
correo electrónico como un único elemento de contacto, de manera que no tendrá que
escribir todos y cada uno de los nombres en cada mensaje que envíe a los miembros de
ese grupo. En primer lugar, haga clic en Settings (Configuración) → Show Extension
Bar (Mostrar barra de opciones avanzadas) → Distribution List Editor (Editor de listas
de distribución). En la nueva sección que aparecerá, haga clic en Lista nueva. Escriba
el nombre que desea dar a la lista y, a continuación, haga clic en OK (Aceptar). Añada
los contactos a la lista arrastrándolos desde la lista de direcciones y soltándolos en la
ventana de la lista de distribución. Cuando vaya a redactar un mensaje de correo electrónico, utilice esta lista como si se tratara de un contacto individual.
198
12.4.3 Adición de libretas de direcciones
IMPORTANTE: Libretas de direcciones de groupware
La mejor manera de añadir recursos de groupware es mediante el empleo de
la herramienta independiente Asistente de groupware. Para utilizar el asistente,
cierre Kontact y, a continuación, ejecute groupwarewizard en una línea de
comandos o desde el grupo Office del menú KDE. Seleccione el tipo de servidor,
por ejemplo, SLOX, GroupWise o Exchange, de la lista que se mostrará y, a
continuación, escriba la dirección y los datos de autenticación. El asistente
añadirá entonces a Kontact los recursos disponibles.
Kontact puede acceder a varias libretas de direcciones, como por ejemplo, las ofrecidas
por Novell GroupWise o por un servidor LDAP. Seleccione Settings (Configuración)
→ Show Extension Bar (Mostrar barra de opciones avanzadas) → Address Books
(Libretas de direcciones) para visualizar las libretas de direcciones actuales. Pulse Add
(Añadir) para añadir una libreta de direcciones y a continuación seleccione el tipo e
introduzca la información necesaria.
Las casillas de verificación que se encuentran delante de las libretas de direcciones
muestran el estado de activación de cada una. Si no desea que se muestre alguna de las
libretas sin eliminarla, inhabilite la casilla correspondiente. La opción Remove (Eliminar)
suprime la libreta seleccionada de la lista.
12.5
Calendario
Kontact utiliza KOrganizer como elemento de calendario. Para configurarlo, utilice
Settings (Configuración) → Configure KOrganizer (Configurar KOrganizer). Con el
calendario podrá fijar citas y programar reuniones. Si lo desea, se le pueden notificar
las próximas citas. También puede importar, exportar y archivar calendarios utilizando
las opciones que se encuentra en File (Archivo).
Kontact: un programa de calendario y correo electrónico
199
Figura 12.4
Calendario Kontact
12.5.1 Organización de una cita
Añada una cita nueva o una reunión mediante Actions (Acciones) → New Event (Cita
nueva). Escriba la información deseada. En la opción Reminder (Recordatorio), especifique con cuántos minutos, horas o días de antelación desea que se le recuerde la cita
a los asistentes. Si la cita se repite, especifique el intervalo adecuado. Otra forma de
crear una cita en un punto determinado del calendario es haciendo doble clic en el
campo correspondiente de una de las vistas del calendario del programa. Esta opción
hará que se abra el mismo cuadro de diálogo que la que está disponible a través del
menú. Como alternativa, seleccione un intervalo de tiempo en la vista del calendario y
haga clic con el botón derecho del ratón.
Especifique quiénes van a ser los asistentes a la cita escribiendo sus datos de forma
manual en el cuadro de diálogo o insertando los datos desde la libreta de direcciones.
Para escribir los datos de forma manual, seleccione New (Nuevo). Para importar los
datos desde la libreta de direcciones, haga clic en Select Addressee (Seleccionar destinatario) y, a continuación, seleccione las entradas correspondientes del cuadro de diálogo. Para programar la cita en función de la disponibilidad de los participantes, vaya
a Free/Busy (Disponibilidad) y haga clic en Pick Date (Seleccionar fecha).
Utilice la pestaña Recurrence (Repetición) para configurar una cita que tiene lugar con
una frecuencia regular. La opción Attachments (Adjuntos) puede ser de utilidad para
200
adjuntar otras informaciones a la cita, como por ejemplo, el orden del día para una
reunión.
12.5.2 Adición de calendarios
IMPORTANTE: Calendarios de groupware
la mejor manera de añadir recursos de groupware es mediante el empleo de
la herramienta independiente Asistente de groupware. Para utilizar el asistente,
cierre Kontact y, a continuación, ejecute groupwarewizard en una línea de
comandos o desde el grupo Office del menú KDE. Seleccione el tipo de servidor,
por ejemplo, SLOX, GroupWise o Exchange, de la lista que se mostrará y, a
continuación, escriba la dirección y los datos de autenticación. El asistente
añadirá a Kontact los recursos disponibles.
El módulo del calendario se puede conectar de forma simultánea a diversos calendarios.
Esta opción es de utilidad, por ejemplo, para combinar un calendario personal con un
calendario profesional. Para añadir un calendario nuevo, haga clic en Add (Añadir) y,
a continuación, seleccione el tipo de calendario. Complete los campos necesarios.
Las casillas de verificación que se encuentran delante de los calendarios muestran el
estado de activación de cada uno. Si no desea que se muestre alguno de los calendarios
sin eliminarlo, inhabilite la casilla correspondiente. La opción Remove (Eliminar) suprime la libreta seleccionada de la lista.
12.6
Sincronización de datos con un
dispositivo portátil
Kontact está diseñado de forma tal que los datos puedan sincronizarse con un dispositivo
de mano, como por ejemplo, un dispositivo Palm. Consulte la información adicional
sobre el estado de KPilot en el resumen. Para obtener más información sobre la configuración y el uso de KPilot, consulte el Capítulo 13, Sincronización de un equipo portátil mediante KPilot (p. 205).
Kontact: un programa de calendario y correo electrónico
201
12.7
Kontact para usuarios de
GroupWise
Si está habituado a trabajar con GroupWise, es probable que pueda encontrar algunas
dificultades sin importancia al comenzar a trabajar con Kontact. Los dos programas
comparten muchos conceptos, y muchos de los servicios que ofrecen son idénticos. En
la presente sección se tratan las diferencias terminológicas más destacadas entre ambos
programas, así como una serie de consejos para ayudar a que los usuarios de GroupWise
puedan sacar el máximo partido de Kontact.
12.7.1 Diferencias terminológicas
La tabla que se muestra a continuación indica las diferencias terminológicas entre
Kontact y GroupWise más destacadas.
Tabla 12.1
Diferencias terminológicas entre Kontact y GroupWise
GroupWise
Kontact
Appointments (Acontecimientos)
Events (Citas)
Busy search (Buscar no disponible)
Free/Busy (Disponibilidad)
Notes (Notas)
Journal entries (Entradas de diario)
Posted, nonposted items (Elementos
enviados y no enviados)
Las citas sin asistentes se envían. Si una cita
tiene asistentes, se trata de un Sent item
(Elemento enviado).
Tasks (Tareas)
To-dos (Tareas pendientes)
12.7.2 Consejos para usuarios GroupWise
Esta sección contiene una serie de recomendaciones para facilitar que los usuarios de
GroupWise puedan trabajar salvando las diferencias entre GroupWise y Kontact.
202
Información de contacto
Puede añadir sus contactos de Messenger y de correo electrónico de GroupWise a la
información de contacto de Kontact. A continuación, podrá redactar un mensaje de
correo electrónico o una sesión de mensajería instantánea con el contacto deseado haciendo clic con el botón derecho del ratón en el nombre situado en la vista Contact
(Contacto).
Códigos de color
Puede ser de gran utilidad utilizar colores para marcar elementos de GroupWise, así
como elementos provenientes de otras fuentes. El empleo de códigos de color hace que
sea muy sencillo explorar sus mensajes de correo electrónico, contactos y otras informaciones de elementos provenientes de una fuente concreta.
Invitación a los participantes de las citas
A diferencia de GroupWise, Kontact no le incluye de forma automática como participante de las citas organizadas por usted. No olvide, por lo tanto, invitarse a sí mismo
cuando sea necesario.
12.8
Información adicional
Kontact incluye ayuda referida tanto al programa mismo como a diversos elementos.
Para acceder a la ayuda, utilice la opción Help (Ayuda) → Kontact Handbook (Documentación de Kontact). La página Web del proyecto, http://www.kontact.org,
contiene también información sobre Kontact.
Kontact: un programa de calendario y correo electrónico
203
Sincronización de un equipo
portátil mediante KPilot
13
Los equipos portátiles se han implantado entre usuarios que necesitan llevar siempre
consigo su planificación, así como listas de tareas y notas. A menudo, los usuarios desean
disponer de los mismos datos tanto en el equipo de escritorio como en el dispositivo
portátil. Para ello se ha creado KPilot: una herramienta para sincronizar datos en un
dispositivo portátil que puede utilizarse en las aplicaciones KDE KAddressBook,
KOrganizer y KNotes, incluidas en Kontact.
El propósito principal de KPilot es compartir datos entre las aplicaciones de un equipo
portátil y sus equivalentes en KDE. KPilot tiene su propio visor de notas, visor de direcciones e instalador de archivos integrados, pero no se pueden utilizar fuera del entorno
KPilot. Las aplicaciones KDE independientes están disponibles para todas estas funciones excepto para el instalador de archivos.
Para establecer la comunicación entre el dispositivo portátil y los diferentes programas
del escritorio, KPilot utiliza canales. KPilot es el programa que supervisa cualquier intercambio de datos entre ambos equipos. La utilización de una determinada función del
dispositivo portátil en el equipo de escritorio requiere que el correspondiente canal esté
habilitado y configurado. En la mayoría de los casos, estos canales están diseñados
para interactuar con programas KDE específicos, por lo que, en general, no se pueden
utilizar con otras aplicaciones de escritorio.
El canal de sincronización de hora es especial, puesto que no existe un programa visible
para el usuario. Se activa en segundo plano en cada operación de sincronización, pero
sólo se puede habilitar en equipos que utilicen un servidor horario de red para corregir
su propio su desajuste horario.
Sincronización de un equipo portátil mediante KPilot
205
Al iniciar una sincronización, los canales se habilitan sucesivamente para llevar a cabo
la transferencia de datos. Existen dos métodos diferentes de sincronización: una operación HotSync sólo sincroniza los datos que no disponen de canales habilitados cuando
una operación de copia de seguridad realiza una copia completa de todos los datos almacenados en el dispositivo portátil.
Algunos canales abren un archivo durante una operación de sincronización, lo que
significa que el programa correspondiente no debe funcionar a la vez. Concretamente,
KOrganizer no debe funcionar durante una operación de sincronización.
13.1
Canales utilizados por KPilot
Los canales utilizados por KPilot se pueden habilitar y configurar después de haber
seleccionado Ajustes → Configure KPilot (Configurar KPilot). A continuación, se expone una lista de algunos canales importantes:
Libreta de direcciones
Este canal gestiona el intercambio de datos con la libreta de direcciones del dispositivo portátil. La función KDE correspondiente para la gestión de los contactos es
KAddressBook. Se puede iniciar desde el menú principal o mediante el comando
kaddressbook.
KNotes/Notas
Este canal permite la transferencia de notas creadas con KNotes a la aplicación de
notas del dispositivo portátil. Se puede iniciar la aplicación KDE desde el menú
principal o mediante el comando knotes.
Calendario (KOrganizer)
Este canal se encarga de sincronizar las citas (acontecimientos) del dispositivo
portátil. El equivalente en el escritorio es KOrganizer.
Tareas pendientes (KOrganizer)
Este canal se encarga de sincronizar las tareas pendientes. El equivalente en el escritorio es KOrganizer.
Canal de sincronización de hora
Al habilitar este canal, el reloj del dispositivo portátil se ajusta al del equipo de escritorio durante cada operación de sincronización. Resulta útil sólo si un servidor
horario corrige con frecuencia el reloj del equipo de escritorio.
206
Figura 13.1
13.2
Cuadro de diálogo de configuración con los canales disponibles
Configuración de la conexión
portátil
Para utilizar KPilot, primero configure la conexión con el equipo portátil. La configuración depende del tipo de soporte (unidad de anclaje) utilizado en el dispositivo portátil.
Existen dos tipos: soporte USB o cable y soporte en serie o cable.
13.2.1 Configuración de la conexión desde
KPilot
La manera más sencilla de configurar la conexión es mediante el asistente de configuración. Seleccione Settings (Ajustes) → Configuration Assistant (Asistente de configuración) para iniciar el asistente. Primero, introduzca el nombre de usuario y el nombre
del dispositivo al que está conectado el dispositivo portátil. El asistente intenta detectar
si el usuario ha seleccionado Autodetect Handheld & Username (Dispositivo portátil
detectado automáticamente y nombre de usuario). Si la detección automática falla,
consulte la Sección 13.2.2, “Creación de un enlace /dev/pilot” (p. 208).
Después de realizar la confirmación pulsando Siguiente, el asistente le solicitará que
especifique las aplicaciones que deben utilizarse para la sincronización. Puede seleccionar entre un paquete de aplicaciones KDE (por defecto), Evolution y ninguno. Después
de haber realizado la selección, cierre la ventana en Finalizar.
Sincronización de un equipo portátil mediante KPilot
207
13.2.2 Creación de un enlace /dev/pilot
La configuración de la conexión con un soporte portátil en serie difiere de la de un soporte USB. En función del soporte utilizado, puede o no tener la necesidad de crear un
enlace simbólico denominado /dev/pilot.
USB
Generalmente, un soporte USB se detecta de forma automática y no requiere el enlace simbólico mencionado anteriormente.
En serie
Con un soporte en serie, necesitará saber qué puerto en serie está conectado. Los
dispositivos en serie se denominan /dev/ttyS? y, para el primer puerto, se inician
desde /dev/ttyS0. Para configurar un soporte conectado al primer puerto en
serie, introduzca el comando siguiente:
ln -s /dev/ttyS0 /dev/pilot
13.3
Configuración del canal
KAddressBook
Inicialmente, basta con habilitar el canal KAddressBook sin modificar ninguno de los
valores por defecto. Después de haber sincronizado los datos por primera vez, deberá
configurar los detalles: qué hacer en caso de conflicto, modo de almacenamiento de las
bases de datos de copias de seguridad y cómo, al almacenar determinados campos en
el dispositivo portátil, dichos campos se asignan a campos previstos por KAddressBook.
13.4
Gestión de tareas pendientes y
acontecimientos
En el escritorio KDE, KOrganizer gestiona las tareas pendientes (tareas) y los acontecimientos (citas). Inicie la aplicación desde el menú principal con el comando
korganizer o como parte de Kontact. Después de habilitar el calendario y el canal
de tareas de KPilot, establezca algunas opciones de configuración antes de utilizarlas.
208
Figura 13.2
Configuración KPilot
KOrganizer almacena los archivos en el directorio ~/.kde/share/apps/
korganizer. Sin embargo, puesto que el directorio .kde/ comienza por un punto,
puede que no aparezca en el cuadro de diálogo de selección de archivos. En este caso,
introduzca la vía completa de forma manual o cambie la visualización de los archivos
ocultos (aquéllos que comienzan por un punto) en el cuadro de diálogo de selección de
archivos. El acceso directo es F8 .
Después de abrir el directorio ~/.kde/share/apps/korganizer, seleccione un
archivo que KOrganizer pueda utilizar como archivo de calendario. En este ejemplo,
el archivo en cuestión es palm.ics. En el caso de un usuario denominado tux, la
vía y el nombre de archivo completos son /home/tux/.kde/share/apps/
korganizer/palm.ics, tal y como se muestra en la Figura 13.3, “Cuadro de diálogo con la vía de un archivo de calendario KOrganizer” (p. 210).
Sincronización de un equipo portátil mediante KPilot
209
Figura 13.3 Cuadro de diálogo con la vía de un archivo de calendario KOrganizer
KOrganizer no debe estar en funcionamiento cuando se intercambian datos con el dispositivo portátil. Si no, KPilot producirá un fallo al llevar a cabo la operación de sincronización.
13.5
Funcionamiento de KPilot
La sincronización de los datos de las aplicaciones KDE con los datos del dispositivo
portátil es bastante sencilla. Sólo tiene que iniciar KPilot pulsando el botón HotSync
en el soporte o conectar el dispositivo para iniciar la operación de sincronización.
210
Figura 13.4
Ventana principal de KPilot
13.5.1 Realización de copias de seguridad
de datos desde el dispositivo portátil
Para realizar una copia de seguridad completa, seleccione File (Archivo) → Backup
(Copia de seguridad). La copia de seguridad se realiza durante la siguiente operación
de sincronización. A continuación, para volver, seleccione File (Archivo) → HotSync
en el menú. Si no, la copia de seguridad completa, que lleva bastante tiempo, se volverá
a realizar durante la siguiente operación de sincronización.
Después de realizar una copia de seguridad completa, todas las copias de los programas
y bases de datos del dispositivo portátil se encuentran en ~/.kde/share/apps/
kpilot/DBBackup/USERNAME, donde USERNAME (Nombre de usuario) es el
nombre del usuario registrado en el dispositivo portátil.
Los dos visores incorporados en KPilot se pueden utilizar para echar un vistazo a las
direcciones o notas, pero no están diseñados para gestionar esos datos. Las aplicaciones
KDE mencionadas anteriormente son las más adecuadas para realizar este tipo de tareas.
Sincronización de un equipo portátil mediante KPilot
211
13.5.2 Instalación de programas en el
dispositivo portátil
El módulo Instalador de archivos es una herramienta interesante y útil para la instalación
de programas en el dispositivo portátil. Generalmente, estos programas tienen la extensión .prc y están listos para iniciarse inmediatamente después de su carga en el dispositivo portátil. Antes de utilizar estos programas complementarios, lea las licencias y
las instrucciones incluidas.
13.5.3 Sincronización de la libreta de
direcciones y de los calendarios
Para sincronizar los calendarios y direcciones, utilice las herramientas MultiSynK de
KDE. Inicie la herramienta con el comando multisynk. Cree un par de conectores
Konnector antes de sincronizar los datos. Vaya a File (Archivo) → New (Nuevo) y seleccione los conectores Konnector. Para salir haga clic en Aceptar.
El nombre aparecerá en una lista en la ventana principal. Para sincronizar el equipo
portátil vaya a File (Archivo) → Sync (Sincronizar).
212
Utilización de Beagle
14
Beagle es una herramienta de búsqueda que crea índices del espacio de información
personal para ayudarle a encontrar lo que está buscando. Emplee Beagle para buscar
documentos, correos electrónicos, historial Web, conversaciones de mensajería instantánea y de ITC, código fuente, imágenes, archivos de música, aplicaciones, etc.
Beagle admite los siguientes orígenes de datos:
• Sistema de archivos
• Lanzadores de aplicaciones
• Correo y libreta de direcciones de Evolution
• Registros de mensajería instantánea de Gaim
• Páginas Web de Firefox (conforme las ve)
• Agregadores de RSS Blam y Liferea
• Notas de Tomboy
También admite los siguientes formatos de archivo:
• OpenOffice.org
• Microsoft Office (doc, ppt, xls)
• HTML
Utilización de Beagle
213
• PDF
• Imágenes (jpeg, png)
• Sonido (mp3, ogg, flac)
• AbiWord
• Formato de texto enriquecido (rtf)
• Texinfo
• Páginas Man
• Código fuente (C, C++, C#, Fortran, Java, JavaScript, Pascal, Perl, PHP, Python)
• Sólo texto
Beagle crea automáticamente un índice de todo el directorio personal, aunque el usuario
puede excluir algunos archivos o directorios si lo desea. Beagle también incluye una
variedad de herramientas que puede usar para buscar los datos.
14.1
Indexación de datos
El daemon Beagle (beagled) realiza automáticamente toda la indexación. Por defecto,
se indexa todo lo que hay en el directorio personal. Beagle detecta los cambios realizados
en él y, por consiguiente, vuelve a indexar los datos.
• Los archivos se indexan inmediatamente cuando se crean, se vuelven a indexar
cuando se modifican y se quitan del índice cuando se suprimen.
• Los correos electrónicos se indexan en cuanto llegan.
• Las conversaciones de mensajería instantánea se indexan mientras conversa, línea
por línea.
La indexación de datos requiere bastante capacidad de proceso del equipo, pero el
daemon Beagle trata de ser lo más discreto posible. Contiene un programador que
funciona para dar prioridad a las tareas y controlar el uso de la CPU dependiendo de si
se está utilizando activamente la estación de trabajo.
214
14.1.1 Cómo impedir que se indexen
archivos y directorios
Si quiere evitar que se indexe un directorio (y todos sus subdirectorios), cree un archivo
vacío denominado .noindex y colóquelo en el directorio. Puede añadir una lista de
archivos y directorios al archivo .noindex para impedir que se indexen. En el archivo
.noindex están permitidos los comodines.
También puede colocar un archivo .neverindex en el directorio personal con una
lista de archivos que nunca deberían indexarse. En este archivo también se permiten
comodines. Utilice los mismos comodines que emplee para glob (por ejemplo, f*le
??.txt). También puede usar expresiones regulares más potentes añadiendo una barra
antes y después del patrón (por ejemplo, /file.*.txt/). Para obtener más información, consulte el sitio Web de glob-UNIX
(http://docs.python.org/lib/module-glob.html).
14.1.2 Indexación manual
Beagle cuenta con un sistema efectivo para determinar cuándo indexar los archivos a
la vez que intenta no interferir con otras aplicaciones que se pueden estar ejecutando.
Programa la indexación de manera intencionada según la carga de trabajo y si el sistema
está inactivo, de manera que no afecte en gran medida las tareas de escritorio. Sin embargo, si desea indexar el directorio personal en cualquier momento, introduzca el siguiente comando en una ventana de terminal antes de ejecutar Beagle:
export BEAGLE_EXERCISE_THE_DOG=1
14.1.3 Comprobación del estado del índice
Beagle incluye los siguientes comandos para permitir ver el estado de indexación actual:
beagle-index-info
Muestra el número de documentos y el tipo de documentos que se han indexado.
beagle-status
Muestra el trabajo actual que el daemon Beagle está realizando (siguiendo criterios
de continuidad).
Utilización de Beagle
215
14.2
Búsqueda de datos
Beagle ofrece las siguientes herramientas que permiten buscar en los datos indexados.
14.2.1 Best
Best (Bleeding Edge Search Tool) es una herramienta gráfica que busca en la información indexada. La herramienta Best no consulta el índice directamente sino que traslada
los términos de búsqueda al daemon Beagle, que a su vez envía las coincidencias de
vuelta a Best. A continuación Best procesa los resultados y permite realizar acciones
en los objetos coincidentes.
Para abrir Best en KDE, haga clic en el menú K → Sistema → Sistema de archivos →
Búsqueda Beagle. En GNOME, haga clic en Aplicaciones → Sistema → Sistema de
archivos → Búsqueda Beagle.
Para usar Best, escriba simplemente el texto de búsqueda en el cuadro de entrada en la
parte superior y, a continuación, pulse Intro o haga clic en Buscar. Best consulta los
archivos indexados y devuelve los resultados.
216
Figura 14.1
Búsqueda Beagle
Puede usar la lista de resultados para abrir archivos, enviarlos, enviar mensajes instantáneos, volver a reproducir archivos, remitir archivos o mostrarlos en el gestor de archivos. Las opciones disponibles para cada archivo dependen de su tipo.
También puede usar el botón Anywhere (En cualquier parte) para limitar la búsqueda
a archivos en un sitio concreto, como la libreta de direcciones o páginas Web, o para
mostrar sólo un tipo específico de archivo en la lista de resultados.
14.2.2 beagle-query
Beagle cuenta con una herramienta de línea de comando que puede usar para buscar
en el índice de Beagle. Para usarla, escriba el siguiente comando en la ventana de terminal:
beagle-querybúsqueda
Utilización de Beagle
217
Sustituya búsqueda por el texto que debe buscarse y la herramienta beagle-query
devolverá los resultados. Pueden usarse comodines con este comando.
Utilice beagle-query --verbose búsqueda para mostrar información detallada sobre los resultados de búsqueda.
218
Parte V. Gráficos
15
Cámaras digitales y Linux
Gestionar fotografías desde su cámara puede ser divertido si cuenta con las herramientas
adecuadas. Linux ofrece varias utilidades que le ayudarán a ordenar y organizar sus
fotografías. Estas utilidades incluyen gphoto2, Konqueror, Digikam y f-spot.
En http://www.gphoto.org/proj/libgphoto2/support.php podrá ver
una lista completa de cámaras compatibles. Si tiene instalado gphoto2, recupere la lista
con el comando gphoto2 --list-cameras. Obtenga información sobre los comandos disponibles con gphoto2 --help.
SUGERENCIA: Cámaras no compatibles
Si no encuentra su cámara en la lista desde gphoto, no desespere. Es muy
probable que su cámara sea compatible como dispositivo de almacenamiento
en masa USB. Podrá obtener más información en la Sección 15.2, “Acceso a la
cámara” (p. 222).
15.1
Conexión con la cámara
La manera más rápida y cómoda de conectar cámaras digitales al equipo es mediante
el puerto USB, siempre que el núcleo, la cámara y el equipo ofrezcan esta compatibilidad.
El núcleo estándar de SUSE proporciona dicha compatibilidad. También es necesario
disponer del cable adecuado.
Cámaras digitales y Linux
221
Simplemente conecte la cámara al puerto USB y enciéndala. Tal vez tenga que poner
la cámara en un modo especial de transferencia. Para saber cómo hacerlo, consulte el
manual de su cámara digital.
15.2
Acceso a la cámara
Hay tres maneras de acceder a las imágenes guardadas en la cámara. La más adecuada
en su caso dependerá de la cámara en cuestión y el protocolo compatible. Normalmente
se hace con almacenamiento USB en masa, el cual gestiona el sistema HotPlug o PTP
(también conocido como PictBridge). Algunos modelos de cámara no funcionan con
ninguno de estos protocolos. Para proporcionar la compatibilidad necesaria, gphoto2
incluye controladores específicos.
Lo más fácil es que la cámara sea compatible con el sistema de almacenamiento USB
en masa. Lea la documentación de su cámara si no está seguro de poder utilizar este
sistema. Algunas cámaras admiten dos protocolos, como por ejemplo PTP y almacenamiento USB en masa. Desafortunadamente, también hay algunas cámaras que se comunican con un protocolo suyo propio, lo cual puede complicar la tarea. Si su cámara no
es compatible con el almacenamiento USB en masa o con PTP, estas descripciones no
funcionarán. Pruebe gphoto2 --list-cameras y la información provista en
http://www.gphoto.org/.
Seleccione esta opción si su cámara se puede cambiar a un dispositivo de almacenamiento USB en masa. Cuando la conecte mediante el puerto USB del equipo y la encienda,
el sistema HotPlug la detectará. Esta operación monta el dispositivo automáticamente
para que sea fácilmente accesible. El escritorio de KDE muestra un icono de cámara
después de que el dispositivo se haya montado correctamente.
Una vez montada correctamente la cámara, verá un nuevo directorio en /media que
empezará con usb e irá seguido de muchos números. Cada proveedor y cada producto
lleva su número, por lo que cuando conecte un dispositivo al equipo, siempre tendrá el
mismo nombre. Se mostrarán entradas diferentes dependiendo de lo que se haya conectado al bus USB. Lo único que queda es localizar la entrada correcta para la cámara.
Pruebe a obtener una lista de uno de estos directorios (DCIM/xxx) y vea qué ocurre.
Cada cámara tiene una estructura de árbol diferente, por lo que no existe una regla general. Si ve archivos JPEG en un directorio, probablemente haya dado con él.
222
Cuando encuentre el directorio correcto, podrá copiar, desplazar o eliminar los archivos
de su cámara con un gestor de archivos como Konqueror, o con comandos shell sencillos
(consulte la Sección 27.3, “Comandos importantes de Linux” (p. 433) y la Referencia).
15.3
Uso de Konqueror
Los usuarios de KDE pueden acceder fácilmente a las cámaras digitales a través de la
conocida interfaz de Konqueror. Conecte la cámara al puerto USB. Deberá aparecer en
el escritorio el icono de una cámara. Haga clic en este icono para abrir la cámara con
Konqueror. Otra manera de acceder a la cámara es escribir la URL camera:/ en
Konqueror. Navegue por la estructura de directorios de la cámara hasta ver los archivos.
Utilice las funciones de gestión de archivos de Konqueror habituales para copiar los
archivos según proceda. Hay más información sobre cómo utilizar Konqueror en el
Capítulo 3, Navegador Web Konqueror (p. 77).
15.4
Uso de Digikam
Digikam es un programa de KDE para descargar fotografías desde cámaras digitales.
La primera vez que lo ejecute, Digikam le preguntará dónde desea guardar el álbum de
fotos. Si indica un directorio que ya contiene una colección de fotografías, Digikam
tratará a esa subcarpeta como un álbum.
Al iniciarse, Digikam muestra una ventana con dos secciones: los álbumes aparecen a
la izquierda y las fotografías del álbum abierto a la derecha. Consulte la Figura 15.1,
“Ventana principal de Digikam” (p. 223).
Figura 15.1
Ventana principal de Digikam
Cámaras digitales y Linux
223
15.4.1 Configuración de la cámara
Para configurar la cámara en Digikam, seleccione Camera → Add Camera (Cámara Añadir cámara). Intente primero detectar automáticamente la cámara con Auto-Detect
(Detección automática). Si falla, examine la lista en busca del modelo mediante Add
(Añadir). Si el modelo de la cámara no aparece en la lista, pruebe con un modelo más
antiguo o utilice USB/IEEE mass storage camera (Cámara de almacenamiento
USB/IEEE en masa). Confirme haciendo clic en Ok (Aceptar).
15.4.2 Descarga de imágenes desde la
cámara
Una vez que se haya configurado correctamente la cámara, conéctela con el menú Camera (Cámara) y el nombre que proporcionó en el cuadro de diálogo descrito en la
Sección 15.4.1, “Configuración de la cámara” (p. 224). Digikam abrirá una ventana y
comenzará a descargar miniaturas, las cuales mostrará como aparece en la Figura 15.2,
“Descarga de imágenes desde la cámara” (p. 225). Haga clic con el botón derecho del
ratón en una imagen para abrir un menú emergente con las opciones View (Ver), Properties (Propiedades) o EXIF Information (Información EXIF), Download (Descargar)
y Delete (Suprimir). Advanced (Avanzado) le permite seleccionar opciones para cambiar
nombres e indicar cómo se debe gestionar la información proporcionada por la cámara
(EXIF).
224
Figura 15.2
Descarga de imágenes desde la cámara
Las opciones para cambiar nombres pueden ser muy cómodas si la cámara no utiliza
nombres de archivo de claro significado. También puede dejar que Digikam cambie el
nombre de las fotografías automáticamente. Basta que con que indique un prefijo exclusivo y, si lo desea, una fecha, una hora o un número secuencial. Digikam hará el resto.
Seleccione todas las fotografías que desee descargar de la cámara pulsando el botón
izquierdo del ratón o haciendo clic en fotografías individuales manteniendo pulsada la
tecla Control . Las fotografías seleccionadas aparecerán con los colores invertidos. Haga
clic en Download (Descargar). Seleccione el destino en la lista al efecto o cree un álbum
nuevo con New Album (Nuevo álbum). Se sugerirá automáticamente un nombre de archivo con la fecha en curso. Confirme su elección mediante Ok (Aceptar) para iniciar
el proceso de descarga.
Cámaras digitales y Linux
225
15.4.3 Obtención de información
Obtener información acerca de la fotografía no es difícil. Si coloca el puntero del ratón
sobre una miniatura, aparecerá un pequeño resumen en forma de sugerencia. Si precisa
más información, haga clic con el botón derecho del ratón en la fotografía y seleccione
Properties (Propiedades) en el menú. Se abrirá un cuadro de diálogo con tres pestañas:
General (General), EXIF (EXIF) e Histogram (Histograma).
General (General) indica el nombre, el tipo, el propietario y otros datos básicos. La
sección más interesante es la que ofrece la pestaña EXIF (EXIF). La cámara almacena
ciertos metadatos por cada fotografía. Digikam lee estas propiedades y las muestra en
esta lista. Puede encontrar el tiempo de exposición, las medidas de píxeles y más cosas.
Para obtener más información sobre una entrada seleccionada, pulse las teclas Shift +
F1 . Al hacerlo, aparecerá una pequeña sugerencia. La última pestaña, Histogram
(Histograma), muestra información estadística.
15.4.4 Gestión de álbumes
Digikam inserta una carpeta My Albums (Mis álbumes) por defecto en la que se van
recopilando todas las fotografías. Más adelante podrá almacenarlas en subcarpetas. Los
álbumes se pueden ordenar según el diseño del directorio, según el nombre de colección
definido en las propiedades del álbum o según la fecha en la que se crearon (esta fecha
también se puede cambiar en las propiedades de cada álbum).
Hay varias maneras de crear un álbum:
• Cargar las nuevas fotos desde la cámara.
• Crear un álbum nuevo haciendo clic en el botón New Album (Álbum nuevo) de la
barra de herramientas.
• Importar una carpeta existente desde el disco duro [seleccione Album → Import
→ Import Folders (Álbum - Importar - Importar carpetas)].
• Haciendo clic con el botón derecho del ratón en My Albums (Mis álbumes) y seleccionando New Album (Nuevo álbum).
Después de crear un álbum de la forma elegida, aparecerá un cuadro de diálogo. Indique
un nombre para el álbum. También puede elegir una colección, insertar comentarios y
226
seleccionar una fecha para el álbum. Las colecciones son formas de organizar los álbumes con una etiqueta común. Esta etiqueta se utiliza al seleccionar View → Sort Albums
→ By Collection (Ver - Ordenar álbumes - Por colección). El comentario aparecerá en
la banda superior de la ventana principal. La fecha del álbum se utiliza cuando se selecciona View → Albums → By Date (Ver - Álbumes - Por fecha).
Digikam utiliza la primera fotografía del álbum como icono de vista previa en la lista
My Albums (Mis álbumes). Para seleccionar una diferente, haga clic con el botón derecho
en la fotografía en cuestión y seleccione Set as Album Thumbnail (Definir como miniatura de álbum) en el menú contextual.
15.4.5 Gestión de etiquetas
A veces, gestionar muchas fotografías diferentes en álbumes distintos puede resultar
complejo. Digikam incluye el sistema My Tag (Mi etiqueta) para ayudarle a organizar
las fotografías individuales.
Por ejemplo, supongamos que tiene fotos de su amigo Juan de ocasiones diferentes y
quiere recopilar todas sus imágenes, fuera de los correspondientes álbumes. Las etiquetas
le permiten localizar todas las fotografías muy fácilmente. Primero, cree una etiqueta
nueva haciendo clic en My Tags → People (Mis etiquetas - Gente). En el menú contextual, seleccione New Tag (Nueva etiqueta). En el cuadro de diálogo que aparece, escriba
Juan como título y, si lo desea, defina un icono. Confirme haciendo clic en Ok (Aceptar).
Después de crear la etiqueta, asígnele las imágenes que desee. Diríjase a cada álbum y
seleccione las correspondientes fotografías. Haga clic con el botón derecho y seleccione
Assign Tag → People → Juan (Asignar etiqueta - Gente - Juan) en el menú emergente.
También puede arrastrar las fotografías al nombre de etiqueta bajo My Tags (Mis etiquetas) y soltarlas allí. Repita estos pasos con el resto de los álbumes. Compruebe todas
las imágenes haciendo clic en My Tags → People → Juan (Mis etiquetas - Gente Juan). Puede asignar más de una etiqueta a cada fotografía.
Editar las etiquetas y los comentarios puede resultar una pesada tarea. Para simplificarla,
haga clic con el botón derecho del ratón en una fotografía y seleccione Edit Comments
& Tags (Editar comentarios y etiquetas). Se abrirá un cuadro de diálogo con una vista
previa, un campo de comentario y una lista de etiquetas. Ahora podrá insertar todas las
etiquetas necesarias y añadir un comentario. Sírvase de los botones Forward (Adelante)
y Back (Atrás) para navegar por el álbum. Guarde los cambios haciendo clic en Apply
(Aplicar) y salga con Ok (Aceptar).
Cámaras digitales y Linux
227
15.4.6 Exportación de colecciones de
imágenes
Digikam proporciona varias opciones de exportación para ayudarle a archivar y publicar
sus colecciones personales de imágenes: archivar en un CD o en un DVD (vía k3b),
exportar a HTML y exportar a una galería remota.
Para guardar una colección de imágenes en un CD o en un DVD, siga estos pasos:
1 Seleccione File → Export → Archive to CD/DVD (Archivo - Exportar - Archivar
en CD/DVD).
2 Realice los ajustes necesarios en el cuadro de diálogo Create CD/DVD Archive
(Crear archivo de reserva en CD/DVD) a través de sus distintos submenús.
Cuando termine, haga clic en OK (Aceptar) para iniciar el proceso de grabación.
a Selection (Selección): determine qué parte de la colección debe archivarse
seleccionando álbumes y etiquetas.
b HTML Interface (Interfaz HTML): decida si se podrá acceder a la colección
de imágenes a través de una interfaz HTML y si se debe añadir la función
de ejecución automática al archivo de reserva de CD/DVD. Defina un título
y una imagen para la selección, junto con una fuente y propiedades del
fondo.
c Media Volume Descriptor (Descriptor de volumen de medios): cambie los
ajustes de descripción del volumen si lo desea.
d Media Burning (Grabación de medios): ajuste las opciones de grabación de
acuerdo con sus necesidades si lo estima oportuno.
Proceda como sigue para exportar la colección de imágenes a HTML:
1 Seleccione File → Export → HTML Export (Archivo - Exportar - Exportación
HTML).
2 Ajuste los valores de Create Image Galleries (Crear galerías de imágenes) según
estime oportuno a través de los distintos submenús. Cuando termine, haga clic
en OK (Aceptar) para iniciar el proceso de creación de la galería.
228
a Selection (Selección): determine qué parte de la colección debe archivarse
seleccionando álbumes y etiquetas.
b Look (Aspecto): defina el título y aspecto de la galería HTML.
c Album (Álbum): determine la ubicación de la galería en el disco y el tamaño
de imagen, la compresión, el formato y la cantidad de metadatos que se verán
en la galería final.
d Thumbnails (Miniaturas): como con las imágenes de destino, deberá especificar el tamaño, la compresión y el tipo de archivo para las miniaturas utilizadas para navegar por la galería.
Proceda como sigue para exportar la colección a una galería de imágenes externa en
Internet:
1 Hágase con una cuenta en un sitio Web externo en el que hospedar la galería.
2 Seleccione File → Export → Export to Remote Gallery (Archivo - Exportar Exportar a galería remota) e indique la URL, el nombre de usuario y la contraseña
del sitio externo cuando así se le solicite.
Digikam establece conexión con el sitio especificado y abre una ventana nueva
llamada Gallery Export (Exportación de galería).
3 Determine la ubicación del nuevo álbum dentro de la galería.
4 Haga clic en New Album (Nuevo álbum) e indique la información que le pida
Digikam.
5 Cargue las imágenes en el nuevo álbum con Add Photos (Añadir fotos).
15.4.7 Herramientas útiles
Digikam proporciona varias herramientas que simplifican algunas tareas. Las encontrará
en el menú Tools (Herramientas). A continuación se incluye una pequeña colección de
herramientas disponibles.
Cámaras digitales y Linux
229
Creación de calendarios
Si desea agradar a alguien en particular, seguro que le gustará recibir un calendario
personalizado. Diríjase a Tools → Create Calendar (Herramientas - Crear calendario).
Al hacerlo, se abrirá un cuadro de diálogo de asistente como el que se muestra en la
Figura 15.3, “Creación de plantillas para calendarios” (p. 230).
Figura 15.3
Creación de plantillas para calendarios
Personalice los ajustes (tamaño de papel, posición de imagen, fuente, etc.) y confirme
con Next (Siguiente). Introduzca el año y seleccione qué imágenes desea utilizar. Después
de hacer clic de nuevo en Next (Siguiente), aparecerá un resumen. El último Next (Siguiente) abre el cuadro de diálogo de la impresora de KDE. En este punto deberá decidir
si desea obtener una vista previa, guardar como PDF o imprimir directamente.
Búsqueda de fotografías duplicadas
A veces se fotografían escenas parecidas que aparecen repetidas y se prefiere guardar
sólo las mejores. Esta es la tarea prefecta para el módulo auxiliar Find Duplicate
(Buscar duplicado).
230
Diríjase a Tools → Find Duplicate Images (Herramientas - Buscar imágenes duplicadas).
Seleccione los álbumes o las etiquetas que desee gestionar. En Method & Cache (Método y caché), seleccione el método de búsqueda: uno más preciso o un más rápido.
Tras confirmar haciendo clic en OK (Aceptar), Digikam procede con la búsqueda.
Si se encuentran duplicados, éstos aparecen en una ventana como en la que se muestra
en la Figura 15.4, “Resultados de la búsqueda” (p. 231). Decida qué imágenes suprimir
habilitando las casillas correspondientes y haciendo clic en Delete (Suprimir). Para cerrar
la ventana, haga clic en Close (Cerrar).
Figura 15.4
Resultados de la búsqueda
Procesos por lotes
Digikam también ofrece procesos por lotes para realizar tareas específicas en lotes de
archivos. Estas tareas pueden ser cambiar de nombre los archivos, convertirlos, cambiarles el tamaño, etc. Podrá encontrar estos procesos en Tools → Batch Processes
(Herramientas - Procesos por lotes).
Cámaras digitales y Linux
231
15.4.8 Visualización y edición básica de
imágenes con Digikam
Digikam incluye su propio programa para ver y editar imágenes. Este programa se abre
automáticamente al hacer doble clic en una imagen en miniatura.
Utilice esta herramienta para realizar algunas tareas básicas de edición en las imágenes
que haya descargado de la cámara. Puede recortar, girar la imagen o invertirla, realizar
ajustes básicos en el color, aplicar varios filtros de color (por ejemplo para exportar
una imagen en color a una en blanco y negro) y reducir de forma eficaz los ojos rojos
en los retratos.
Los menús más importantes son:
Image (Imagen)
Utilice Edit Comments & Tags (Editar comentarios y etiquetas) para escribir comentarios sobre una imagen concreta y para asignar una etiqueta (categorías) a la imagen.
Properties (Propiedades) le lleva a una ventana con tres pestañas con información
general, información EXIF y el histograma de la imagen.
Fix (Reparar)
Este menú contiene algunas de las funciones de edición más necesarias para la fotografía digital. Colors (Colores) le lleva a un submenú en el que se pueden modificar
todos los ajustes básicos del color. También puede difuminar o enfocar la imagen
completa o sólo la parte que seleccione. Para reducir el efecto de ojos rojos en un
retrato, seleccione la zona de los ojos en la cara haciendo clic con el botón izquierdo
del ratón y manteniéndolo pulsado ampliando gradualmente la selección, seleccione
Red Eye Reduction (Reducción de ojos rojos) y elija entre una reducción leve o
importante, según se haya seleccionado toda la zona o sólo los ojos.
Transform (Transformar)
El menú Transform (Transformar) ofrece las funciones de recorte, giro, inversión
y cambio de tamaño. También puede utilizar la opción Aspect Ratio Crop (Recorte
en proporción) para hacer recortes según una proporción fija.
Filters (Filtros)
En caso de tener que transformar los colores de una fotografía en blanco y negro,
o si se quiere conseguir un efecto de antigüedad, consulte el menú Filters (Filtros)
y elija una de las distintas opciones.
232
Podrá ver una descripción más detallada de esta herramienta en la ayuda en línea de
Digikam en digiKam Image Editor (Editor de imágenes de digiKam), a la cual se accede
con el botón Help (Ayuda) de la barra de herramientas de Digikam.
SUGERENCIA: Procesamiento avanzado de imágenes
Utilice GIMP para realizar operaciones de edición profesionales. Hay más información sobre cómo utilizar GIMP en el Capítulo 17, Manejo de gráficos con
GIMP (p. 249).
15.5
Uso de f-spot
f-spot es una herramienta de gestión para colecciones de imágenes personalizadas para
el escritorio de GNOME. Esta herramienta le permite asignar etiquetas diferentes a las
imágenes para ordenarlas por categorías, y además ofrece varias interesantes opciones
de edición de imágenes.
La primera vez que ejecute f-spot, indique dónde localizar las imágenes que se importarán a la colección de f-spot. Si ya tiene la colección de imágenes almacenadas en el
disco duro, escriba la vía hacia el directorio correspondiente e incluya las subcarpetas
en cuestión, de haberlas. f-spot importará estas imágenes a su base de datos.
SUGERENCIA: Etiquetación de imágenes para importarlas
Si todas las imágenes que se están importando pertenecen a la misma categoría,
podrá adjuntar la etiqueta correspondiente en la importación. Seleccione Attach
Tag (Adjuntar etiqueta) y elija la etiqueta coincidente en el menú desplegable.
Figura 15.5
Importación de imágenes a f-spot
La ventana principal de f-spot se divide en tres áreas principales. La barra lateral a la
izquierda muestra las categorías, las etiquetas e información detallada acerca de las
Cámaras digitales y Linux
233
imágenes seleccionadas, mientras que la parte derecha de la ventana muestra miniaturas
de las imágenes con la categoría o la etiqueta seleccionada o, si no se ha seleccionado
ninguna, la colección completa.
Figura 15.6
Ventana principal de f-spot
La barra de menús que hay en la parte superior de la ventana le permite acceder a los
menús principales. La barra de herramientas situada debajo ofrece varias funciones representadas por su correspondiente icono:
Rotate Left (Girar a la izquierda) y Rotate Right (Girar a la derecha)
Utilice este acceso directo para cambiar la orientación de una imagen.
Browse (Examinar)
El modo Browse (Examinar) le permite ver y buscar colecciones enteras o subconjuntos etiquetados de colecciones. También puede utilizar la línea temporal para
buscar imágenes según la fecha de creación.
Edit Image (Editar imagen)
Este modo también le permite seleccionar una imagen y procesarla a nivel básico.
Podrá consultar información detallada en la Sección 15.5.6, “Procesamiento básico
de imágenes con f-spot” (p. 239).
234
Fullscreen (Pantalla completa)
Cambie el modo de visualización a pantalla completa.
Slideshow (Presentación de diapositivas)
Inicie una presentación de diapositivas.
15.5.1 Descarga de imágenes de la cámara
Importe imágenes nuevas desde la cámara digital conectada al puerto USB del equipo
mediante el menú File → Import from Camera (Archivo - Importar desde cámara). El
tipo de cámara se detectará automáticamente.
Figura 15.7
Importación desde la cámara
f-spot abre una ventana de vista previa con todas las imágenes disponibles para descargar
desde la cámara. Los archivos se copian en el directorio de destino especificado con
Copy Files to (Copiar archivos a). Si se selecciona Import files after copy (Importar
Cámaras digitales y Linux
235
archivos después de copiar), todas las imágenes que se hayan copiado desde la cámara
se importarán automáticamente a la base de datos de f-spot. Durante el proceso de importación se puede también realizar el etiquetado, seleccionando la etiqueta adecuada
con Select Tags (Seleccionar etiquetas). Si prefiere no importar todas las imágenes de
la cámara a la base de datos, basta con que deseleccione las imágenes no deseadas en
la ventana de vista previa.
15.5.2 Obtención de información
Cuando se seleccione una imagen, aparecerá información estadística sobre ella en la
parte inferior izquierda de la ventana. Esta información incluye el nombre de archivo,
su versión (copia o imagen original), la fecha de creación, su tamaño y la exposición
empleada al crear la imagen particular. Consulte los datos EXIF asociados al archivo
de imagen mediante View → EXIF Data (Ver - Datos EXIF).
15.5.3 Gestión de etiquetas
Utilice etiquetas para organizar en categorías las imágenes a fin de crear subconjuntos
fáciles de gestionar dentro de las colecciones. Supongamos que por ejemplo desea ordenar la colección de retratos de sus amigos y su familia. Para hacerlo, siga este procedimiento:
1 Seleccione el modo Browse (Examinar) en f-spot.
2 En el marco izquierdo de la ventana de f-spot, seleccione la categoría People
(Gente), haga clic en ella con el botón derecho y seleccione Create New Tag
(Crear nueva etiqueta). Las etiquetas nuevas aparecerán como subcategorías debajo de la categoría People (Gente):
a Cree una nueva etiqueta llamada Amigos.
b Cree una nueva etiqueta llamada Familia.
3 Ahora, adjunte etiquetas a las imágenes o los grupos de imágenes seleccionadas.
Haga clic con el botón derecho en una imagen, elija Attach Tag (Adjuntar etiqueta)
y, a continuación, seleccione la etiqueta adecuada para la imagen. Para adjuntar
una etiqueta a un grupo de imágenes, haga clic en la primera de ellas, pulse la
236
tecla Shift y vaya seleccionando en resto sin levantar el dedo de la tecla Shift .
Haga clic con el botón derecho del ratón para abrir el menú de etiquetas y seleccione la categoría adecuada.
Una vez que se hayan aplicado categorías a las imágenes, podrá buscar en la colección
según las etiquetas. Bastará con que marque People → Familia (Gente - Familia). La
colección mostrada quedará limitada a las imágenes etiquetadas como Familia.
También puede buscar en la colección según etiquetas mediante Find (Buscar) → Find
by Tag (Buscar por etiqueta). El resultado de la búsqueda aparecerá en la ventana de
miniaturas.
Eliminar etiquetas de imágenes o de grupos de imágenes es parecido a adjuntarlas. Otra
forma de acceder a las funciones de edición de etiquetas es el menú Tags (Etiquetas)
de la barra de menús superior.
15.5.4 Búsquedas
Tal y como se ha dicho en la Sección 15.5.3, “Gestión de etiquetas” (p. 236), las etiquetas
se pueden utilizar también para encontrar imágenes. Otra forma, bastante exclusiva de
f-spot, es utilizar la opción Timeline (Línea temporal), situada debajo de la barra de
herramientas. Arrastrando el pequeño marco que hay a lo largo de la línea temporal, se
limitan las imágenes mostradas en el resumen de miniaturas a las incluidas dentro del
marco temporal seleccionado. f-spot empieza con una línea temporal por defecto, la
cual se puede modificar moviendo las barras deslizantes hacia los extremos derecho e
izquierdo de la línea temporal.
15.5.5 Exportación de colecciones de
imágenes
f-spot ofrece varias funciones de exportación de colecciones en File → Export (Archivo
- Exportar). Probablemente las más utilizadas sean Export to Web Gallery (Exportar a
galería Web) y Export to CD (Exportar a CD).
Para exportar una selección de imágenes a una galería Web, siga este procedimiento:
1 Seleccione las imágenes que quiera exportar.
Cámaras digitales y Linux
237
2 Haga clic en File → Export → Export to Web Gallery (Archivo - Exportar Exportar a galería Web) y seleccione la galería a la que exportar las imágenes o
añada una nueva. f-spot establecerá conexión con la ubicación Web que se indique
como galería Web. Seleccione el álbum al que exportar las imágenes y decida si
desea adaptar a escala las imágenes automáticamente y exportar los títulos y los
comentarios.
Figura 15.8
Exportación de imágenes a galerías Web
Para exportar una selección de imágenes a un CD, siga este procedimiento:
1 Seleccione las imágenes que quiera exportar.
2 Haga clic en File → Export → Export to CD (Archivo - Exportar - Exportar a
CD) y haga clic en OK (Aceptar).
f-spot copiará los archivos y abrirá el cuadro de diálogo de grabación de CD.
Asigne un nombre al disco y determine la velocidad de grabación. Haga clic en
Write (Grabar) para iniciar el proceso de grabación de CD.
238
Figura 15.9
Exportación de imágenes a CD
15.5.6 Procesamiento básico de imágenes
con f-spot
f-spot ofrece varias funciones de edición básica de imágenes. Entre en el modo de edición
de f-spot haciendo clic en el icono Edit Image (Editar imagen) de la barra de herramientas, o haciendo doble clic en la imagen que quiera editar. Cambie de una imagen a otra
con los botones de flecha que hay en la parte inferior derecha. Elija una de las siguientes
funciones de edición:
Sharpen (Enfocar)
Acceda a esta función con Edit → Sharpen (Editar - Enfocar). Ajuste los valores
de Amount (Cantidad), Radius (Radio) y Threshold (Umbral) según el caso y haga
clic en OK (Aceptar).
Crop Image (Recortar imagen)
Para recortar imágenes de una selección, elija una proporción de recorte fija o bien
la opción No Constraint (Sin restricciones) en el menú desplegable que hay en la
Cámaras digitales y Linux
239
parte inferior izquierda, seleccione la zona que quiera recortar y haga clic en el
icono de tijeras que hay junto al menú de proporción.
Red Eye Reduction (Reducción de ojos rojos)
Seleccione en el retrato el área de los ojos y haga clic en el icono del ojo rojo.
Adjust Color (Ajustar color)
Consulte el histograma empleado en la creación de la fotografía y corrija la exposición y la temperatura del color si lo estima oportuno.
SUGERENCIA: Procesamiento avanzado de imágenes
GIMP permite realizar operaciones de edición de imágenes a nivel profesional.
Hay más información sobre cómo utilizar GIMP en el Capítulo 17, Manejo de
gráficos con GIMP (p. 249).
15.6
Información adicional
Para obtener más información acerca de cómo utilizar cámaras digitales con Linux,
consulte los siguientes sitios Web:
• http://digikam.sourceforge.net/: información sobre Digikam
• http://www.gphoto.org: información sobre gPhoto2
• http://www.gphoto.org/proj/libgphoto2/support.php: una
completa lista de cámaras compatibles
• http://www.thekompany.com/projects/gphoto/: información sobre
Kamera e interfaces KDE para usuarios para gPhoto2
240
Kooka: una aplicación de escaneo
16
Kooka es una aplicación de entorno KDE diseñada para escanear. Este capítulo explica
la interfaz de usuario y la funcionalidad de la aplicación. Además de crear archivos de
imagen a partir de medios impresos, como fotografías o revistas, Kooka tiene capacidades de reconocimiento de caracteres. Esto significa que puede ayudarle a convertir
texto escrito en un archivo de texto que puede editarse.
Inicie Kooka en el menú principal o escriba el comando kooka. Al iniciarse, Kooka
abre una ventana de tres tramas con una barra de menú que se encuentra en la parte
superior izquierda y con una barra de herramientas situada justo debajo. Todas las
ventanas pueden reajustarse o redistribuirse sin restricción alguna mediante el ratón.
También es posible separar completamente las tramas de la ventana de Kooka para
colocarlas en el escritorio. Para mover las tramas, haga clic en la línea doble y delgada
que se encuentra justo encima ellas. Cualquier trama, con la excepción de la ventana
principal, puede colocarse dentro de cualquier otra trama alineada a la izquierda, a la
derecha o a las partes superior, inferior y central. Las ventanas centradas tienen el
mismo tamaño, se solapan unas con otras y pueden traerse a un primer plano mediante
pestañas.
Las tramas Image Viewer (Visor de imágenes) y Scan Preview (Vista previa de escaneo)
comparten, por defecto, una ventana. Las pestañas permiten cambiar de una a otra. La
trama izquierda contiene la galería. Es un pequeño explorador de archivos mediante el
que se accede a las imágenes escaneadas. OCR (Reconocimiento óptico de caracteres)
y las miniaturas, que pueden cargarse en el visor de imágenes con sólo hacer clic con
el ratón, comparten la trama de la parte inferior derecha. Consulte la Figura 16.1,
“Ventana principal de Kooka” (p. 242).
Kooka: una aplicación de escaneo
241
Figura 16.1
16.1
Ventana principal de Kooka
Vista previa
Una vista previa debería crearse siempre que el objeto escaneado sea más pequeño que
el área total de escaneo. Defina algunos parámetros en la parte izquierda de la trama
de vista previa. Seleccione el tamaño del resultado del escaneo mediante Custom (Personalizar) o especifique uno de los formatos estándar. Consulte la Figura 16.2, “Ventana
de vista previa de Kooka” (p. 243). El ajuste Custom (Personalizar) es el que ofrece una
mayor flexibilidad, puesto que permite la selección del área deseada con el ratón. Una
vez definidos los ajustes, solicite una presentación de la vista previa de la imagen que
se va a escanear haciendo clic en Preview Scan (Previsualizar escaneo) en Scan Parameters (Parámetros de escaneo).
242
Figura 16.2
16.2
Ventana de vista previa de Kooka
Escaneo final
Si ha seleccionado Custom (Personalizar) para el tamaño del escaneo, utilice el ratón
para seleccionar el área rectangular que desee escanear. El área seleccionada queda
delimitada por una línea de puntos.
Elija entre escaneo en color o en blanco y negro, y defina la resolución mediante la
barra reguladora. Consulte la Figura 16.3, “Parámetros de escaneo de Kooka” (p. 244).
Cuanto mayor es la resolución, mejor es la calidad de la imagen escaneada. No obstante,
una alta resolución también tiene como resultado un archivo de mayor tamaño y un
mayor tiempo de escaneo. Active Use custom gamma table (Utilizar tabla gamma personalizada) y haga clic en Edit (Editar).
Kooka: una aplicación de escaneo
243
Figura 16.3
Parámetros de escaneo de Kooka
Una vez definidos todos los ajustes, haga clic en Final Scan (Escaneo final) para escanear
la imagen. Entonces, la imagen escaneada se mostrará en el visor de imágenes, además
de como una miniatura. Cuando se le solicite, seleccione el formato con el que quiera
guardar la imagen. Para guardar todas las imágenes escaneadas posteriormente en el
mismo formato, marque la casilla correspondiente. Confirme haciendo clic en OK
(Aceptar).
16.3
Menús
Algunas de las funciones de la barra de herramientas también están disponibles en los
menús File (Archivo) e Image (Imagen). Cambie los ajustes de preferencias de Kooka
en Settings (Ajustes).
File (Archivo)
Utilice este menú para iniciar el asistente de impresión KPrinter, crear una nueva
carpeta para las imágenes y guardar, borrar y cerrar archivos. Los resultados de
OCR de un documento de texto escaneado pueden guardarse aquí. Utilice también
este menú para cerrar Kooka.
Image (Imagen)
El menú Image (Imagen) permite iniciar una aplicación de edición gráfica para el
posprocesado de la imagen o el reconocimiento óptico de caracteres de una imagen.
244
El texto reconocido a partir de una operación de OCR se muestra en su propia trama.
Se encuentran disponibles varias herramientas para girar o invertir una imagen y
para ajustar su tamaño. También es posible acceder a estas funciones desde el menú
de herramientas. Create From Selection (Crear a partir de selección) permite guardar
un área de una imagen marcada previamente con el ratón.
Settings (Ajustes)
Settings (Ajustes) ajusta la apariencia y el manejo de Kooka. La barra de herramientas
y la barra de estado pueden activarse y desactivarse, y se pueden definir las combinaciones de teclas para las entradas de menú. Configure Toolbars (Configurar barras
de herramientas) proporciona una lista de todas las funciones disponibles de la barra
de herramientas. Configure Kooka (Configurar Kooka) abre un cuadro de diálogo
de configuración en el que puede modificarse la apariencia y el manejo de Kooka.
No obstante, los ajustes por defecto suelen ser suficientes. En Tool Views (Vistas
de herramientas) pueden habilitarse e inhabilitarse el visor de miniaturas, la vista
previa, la galería, los parámetros de escaneo y la ventana de resultados de OCR.
Help (Ayuda)
El menú Help (Ayuda) proporciona acceso al manual de ayuda en línea de Kooka.
También puede utilizarse para acceder al canal de comentarios mediante el que
puede dejar constancia de sus problemas y sugerencias. También proporciona información sobre la versión, los autores y la licencia de Kooka y KDE.
16.4
Galería
La ventana de la galería muestra la carpeta en la que, por defecto, Kooka almacena todos
los archivos de imagen. Puede verse un ejemplo en la Figura 16.4, “Galería de Kooka”
(p. 246). Para guardar una imagen en su directorio personal, haga clic en la miniatura
para seleccionarla y, a continuación, seleccione File (Archivo) → Save Image (Guardar
imagen). A continuación, especifique su directorio personal y déle al archivo un nombre
descriptivo.
Kooka: una aplicación de escaneo
245
Figura 16.4
Galería de Kooka
Para añadir imágenes a la galería, tan sólo tiene que arrastrarlas y soltarlas desde Konqueror. Inicie Konqueror, desplácese hasta el directorio en el que se encuentran las
imágenes que desea añadir a la galería y arrástrelas con el ratón a una carpeta de la galería de Kooka.
16.5
Reconocimiento óptico de
caracteres
Si el módulo de reconocimiento de caracteres está instalado, los documentos pueden
escanearse en el modo lineart, guardarse en el formato propuesto y, a continuación,
procesarse para el reconocimiento de texto en el menú Image (Imagen). Se puede procesar todo el documento o tan sólo un área previamente seleccionada. Un cuadro de
diálogo de configuración informa al módulo de si el texto original es de tipo impreso,
manuscrito o de tipo estándar. También puede definirse el lenguaje para que el módulo
pueda procesar correctamente el documento. Consulte la Figura 16.5, “OCR con Kooka”
(p. 247).
246
Figura 16.5
OCR con Kooka
Cambie a la ventana OCR Result Text (Texto resultante de OCR) y compruebe el texto,
puesto que puede necesitar una revisión. Para ello, guarde el texto con File (Archivo)
→ Save OCR Result Text (Guardar texto resultante de OCR). El texto puede procesarse
con OpenOffice.org o KWrite.
Kooka: una aplicación de escaneo
247
Manejo de gráficos con GIMP
17
El programa GIMP (Programa de manipulación de imágenes de GNU) permite crear
y editar gráficos de píxeles. En gran parte, sus funciones son comparables con las de
Adobe Photoshop y otros programas comerciales. Utilícelo para retocar imágenes y
modificar su tamaño, diseña gráficos para páginas Web, crea carátulas para sus CDs,
o, en definitiva, para realizar prácticamente cualquiera de los proyectos de gráficos que
pueda imaginar. Cubre las necesidades tanto de aficionados como de profesionales.
Como muchos otros programas de Linux, GIMP es fruto del esfuerzo conjunto de desarrolladores de todo el mundo que han aportado al proyecto de forma desinteresada su
tiempo y su código. Este programa se encuentra en constante evolución, por lo que la
versión incluida en su SUSE Linux puede variar ligeramente con respecto a la versión
que se trata aquí. El diseño de las ventanas individuales y de las secciones de ventanas
son los elementos en los que es mayor la probabilidad de que se produzcan variaciones.
GIMP es un programa extremadamente complejo. Por esta razón, sólo se tratarán en el
presente capítulo un reducido número de funciones, herramientas y elementos del menú.
Consulte la Sección 17.6, “Información adicional” (p. 257) para recibir sugerencias sobre
dónde obtener información adicional acerca del programa.
17.1
Formatos de gráficos
Son dos los formatos principales de gráficos que existen: los píxeles y los vectores.
GIMP trabaja únicamente con gráficos de píxeles, que es el formato normal para fotografías e imágenes escaneadas. Los gráficos de píxeles consisten en pequeños bloques
de color que, una vez juntos, dan lugar a la imagen completa. Gracias a esto, los archivos
Manejo de gráficos con GIMP
249
se pueden aumentar considerablemente en cuanto al tamaño. No obstante, no es posible
aumentar el tamaño de una imagen de píxeles sin que se produzca una pérdida de calidad.
Al contrario de lo que ocurre en los gráficos de píxeles, los gráficos vectoriales no
guardan la información de todos los píxeles individuales. En su lugar, guardan información sobre cómo se agrupan los puntos, las líneas o las zonas de la imagen. Además,
las imágenes vectoriales se pueden ampliar fácilmente. La aplicación de dibujo de
OpenOffice.org, por ejemplo, utiliza este formato.
17.2
Inicio de GIMP
Inicie GIMP desde el menú principal. En su lugar, puede también escribir el comando
gimp & en una línea de comando.
17.2.1 Configuración inicial
Cuando inicie GIMP por primera vez, se abrirá un asistente para la configuración que
le ayudará a realizar la configuración del programa. Los ajustes que se dan por defecto
son válidos para la mayoría de las finalidades del programa. Pulse Continue (Continuar)
en cada uno de los cuadros de diálogo, salvo si está familiarizado con los ajustes y
prefiere una configuración distinta.
17.2.2 Ventanas por defecto
Aparecen tres ventanas por defecto. Dichas ventanas se pueden organizar en la pantalla
y, excepto en el caso de la caja de herramientas, se pueden cerrar si no son necesarias.
Si se cierra la caja de herramientas, se cerrará la aplicación. En la configuración por
defecto, GIMP guarda la disposición que tenía la ventana ventana en el momento de
salir de la aplicación. Los cuadros de diálogo que estaban abiertos volverán a aparecer
la próxima vez que inicie el programa.
Caja de herramientas
La ventana principal de GIMP, que se muestra en la Figura 17.1, “Ventana principal”
(p. 251), contiene los controles principales de la aplicación. Si se cierra la ventana, se
finaliza la aplicación. En la parte superior de la ventana, la barra de menú ofrece acceso
250
a las funciones de archivo, a las extensiones y a la ayuda. Inmediatamente debajo de
la barra mencionada se encuentran iconos de las distintas herramientas. Desplace el
ratón por encima de los iconos para visualizar la información referida a cada icono.
Figura 17.1
Ventana principal
Los colores actuales del primer plano y del fondo se muestran en dos cuadros que se
solapan. Los colores que aparecen por defecto son el negro para el primer plano y el
blanco para el fondo. Haga clic en el cuadro para abrir un cuadro de diálogo de selección
del color. Intercambie el color del primer plano y del fondo con el símbolo de flecha
bidireccional que se encuentra en la parte superior derecha de los cuadros. Utilice el
símbolo de color blanco y negro que se encuentra situado el extremo inferior izquierdo
para restablecer los colores por defecto.
En la parte derecha se muestran el pincel actual, el patrón y el degradado. Haga clic en
el elemento que se muestra para acceder al cuadro de diálogo de selección. La parte
inferior de la ventana contiene las configuraciones posibles para las distintas opciones
de la herramienta actual.
Capas, canales, vías, deshacer
En la primera sección, utilice el cuadro de diálogo desplegable para seleccionar la
imagen a la que hacen referencia las pestañas. Haga clic en Auto (Automático), para
comprobar si la imagen activa se ha seleccionado automáticamente. Por defecto, la
opción Auto (Automático) está habilitada.
Manejo de gráficos con GIMP
251
La opción Layers (Capas), que muestra las diferentes capas de las imágenes actuales,
puede emplearse para manipular las capas. La opción Channels (Canales) muestra y
permite la manipulación de los canales de color de la imagen.
El método de vías es un método avanzado para la selección de partes de una imagen.
También se puede emplear para dibujar. La opción Paths (Vías) muestra las vías disponibles de la imagen en cuestión y proporciona acceso a las funciones de las vías. La
opción Undo (Deshacer) muestra un historial limitado con las modificaciones que se
han realizado en la imagen actual.
La parte inferior de la ventana contiene tres pestañas. Seleccione con ellas el pincel
actual, el degradado y el patrón.
17.3
Primeros pasos con GIMP
Aunque GIMP puede abrumar a sus nuevos usuarios, la mayoría comprueba cómo su
manejo, tras unas nociones básicas, es muy sencillo. Las funciones básicas más destacadas son cómo crear, abrir y guardar imágenes.
17.3.1 Creación de una imagen nueva
Para crear una imagen nueva, seleccione File (Archivo) → New (Nuevo) o pulse Ctrl
+ N . Se abrirá un cuadro de diálogo en el que se pueden definir los ajustes para la
imagen nueva. Si lo desea, utilice Template (Plantilla) para seleccionar una plantilla en
la que se basará la imagen nueva. GIMP incluye una amplia variedad de plantillas, que
van desde las páginas en formato A4 a las carátulas de CDs, de entre las cuales podrá
elegir la que mejor se adapte a sus necesidades. Para crear una plantilla personalizada,
seleccione File (Archivo) → Dialogs (Diálogos) → Templates (Plantillas) y haga uso
de los controles que aparecen en la ventana abierta.
En la sección Image Size (Tamaño de imagen), defina el tamaño de la imagen que se
va a crear en píxeles o en otra unidad. Haga clic en la unidad para seleccionar otra
unidad de la lista de unidades disponibles. La proporción entre los píxeles y una unidad
se define en Resolution (Resolución), que aparece al abrir la sección Advanced Options
(Opciones avanzadas). Una resolución de 72 píxeles por pulgada se corresponde con
la visualización en la pantalla. Es una resolución suficiente, por lo tanto, para los gráficos
de páginas Web. Una resolución mayor se recomienda, por su parte, para las imágenes
252
destinadas a la impresión. En la mayoría de impresoras, una resolución de 300 píxeles
por pulgada ofrecerá una calidad aceptable.
En Colorspace (Espacio de colores), seleccione si la imagen debería estar en color
(RGB [RGB]) o en Grayscale (Escala de grises). Seleccione el Fill Type (Tipo de relleno)
para la nueva imagen. Las opciones Foreground Color (Color del primer plano) y
Background Color (Color del fondo) utilizan los colores seleccionados en la caja de
herramientas. White (Blanco) utilizará un fondo blanco para la imagen. Transparent
(Transparente) crea una imagen clara. La Transparency (Transparencia) se representa
mediante un patrón ajedrezado de color gris. Inserte un comentario para la imagen
nueva en Comment (Comentario).
Cuando los ajustes concuerden con sus necesidades, pulse OK (Aceptar). Para restaurar
los ajustes por defecto, pulse Reset (Restablecer). Si pulsa Cancel (Cancelar), se anulará
la creación de la imagen nueva.
17.3.2 Apertura de una imagen existente
Para abrir una imagen ya existente, seleccione File (Archivo) → Open (Abrir) o pulse
Ctrl + O . En el cuadro de diálogo que se abrirá, seleccione el archivo deseado. Haga
clic en OK (Aceptar) para abrir la imagen seleccionada. Pulse Cancel (Cancelar) para
anular la apertura de la imagen.
17.3.3 Ventana de la imagen
La imagen nueva o ya existente se abre en su propia ventana. La barra de menú que se
encuentra situada en la parte superior de la ventana proporciona acceso a todas las
funciones de la imagen. También puede acceder al menú haciendo clic en la imagen
con el botón derecho del ratón o haciendo clic en el pequeño botón de flecha que se
encuentra en la esquina izquierda de las reglas.
File (Archivo) ofrece las opciones estándar de archivos, tales como Save (Guardar) y
Print (Imprimir). Close (Cerrar) cierra la imagen actual. Quit (Salir) cierra toda la
aplicación.
Con los elementos del menú View (Ver), seleccione la visualización de la imagen y de
la ventana de la imagen. New View (Vista nueva) abre una segunda vista de la ventana
con la imagen en uso. Los cambios realizados en una vista se reflejan en las vistas res-
Manejo de gráficos con GIMP
253
tantes de la imagen en cuestión. El empleo de distintas vistas al mismo tiempo es de
gran utilidad para ampliar una parte de la imagen para su manipulación mientras que
en otra vista se dispone de la imagen completa. Se puede ajustar el grado de ampliación
de la ventana que esté abierta con Zoom (Zoom). Cuando se selecciona Shrink Wrap
(Ajustar tamaño), el tamaño de la ventana de la imagen se modifica para ajustarse al
tamaño de la imagen en cuestión.
17.4
Guardado de imágenes
Ninguna función de la imagen es tan importante como File (Archivo) → Save (Guardar).
Es recomendable guardar con frecuencia antes que hacerlo muy esporádicamente. Utilice la opción File (Archivo) → Save as (Guardar como) para guardar la imagen con
un nombre de archivo nuevo. Una sugerencia que puede resultarle útil es guardar las
distintas fases de la imagen con nombres diferentes o hacer copias de seguridad en otro
directorio, de forma tal que pueda restaurar de forma sencilla la imagen a estado previo.
Cuando guarde la imagen por primera vez o cuando utilice la opción Save as (Guardar
como), se abrirá un cuadro de diálogo en el que se deberá especificar el nombre y el
tipo de archivo. Escriba el nombre de archivo en la parte superior. Para la opción Save
in folder (Guardar en carpeta), seleccione, de una lista de directorios usados con frecuencia, el directorio en el que desea guardar los directorios. Para utilizar un directorio
diferente o crear uno nuevo, abra Browse for other folders (Examinar otras carpetas).
En la opción Select File Type (Seleccionar tipo de archivo), se recomienda seleccionar
By Extension (Por extensión). Si se selecciona tal ajuste, GIMP determina el tipo de
archivo basándose en la extensión del nombre de archivo. Los tipos de archivos que se
indican a continuación podrán serle de utilidad:
XCF
Es el formato original de la aplicación. Guarda toda la información sobre las capas
y las vías, así como la imagen propiamente dicha. Incluso en aquellos casos en los
que precise que la imagen tenga otro formato, normalmente es recomendable guardar
una copia de la imagen como XCF para simplificar futuras modificaciones.
PAT
Es el formato utilizado para los patrones GIMP. Si se guarda una imagen con este
formato, será posible utilizar dicha imagen como patrón de relleno en GIMP.
254
JPG
JPG o JPEG es un formato de uso habitual en fotografías y gráficos de páginas Web
sin transparencia. Su método de compresión permite la reducción del tamaño de los
archivos; sin embargo, la información se pierde cuando se efectúa la compresión.
Puede ser recomendable utilizar la opción de vista previa cuando se vaya a ajustar
el nivel de compresión. Los niveles entre 85 y 75 % ofrecen, normalmente, unos
resultados aceptables en cuanto a la calidad de la imagen y, al mismo tiempo, una
compresión razonable. También es recomendable guardar una copia de seguridad
de la imagen en un formato que no conlleve una pérdida de la información, como
es el caso del formato XCF. Si va a editar una imagen, guarde únicamente la imagen
ya terminada como JPG. La carga reiterada y la grabación de una imagen JPG
puede dar como resultado inmediato una mala calidad de dicha imagen.
GIF
Aunque se trató de un formato muy popular en el pasado para el tratamiento de
gráficos transparentes, el formato GIF se utiliza cada vez con menor frecuencia
debido a cuestiones relacionadas con las licencias de este formato. GIF también se
emplea con imágenes animadas. El formato solamente puede guardar imágenes indizadas. Frecuentemente, el tamaño del archivo puede ser demasiado pequeño si se
emplea un número reducido de colores.
PNG
Gracias a la existencia de una opción de transparencia, a la compresión sin pérdida
de información, a su naturaleza gratuita y a una compatibilidad cada vez mayor con
los navegadores, el formato PNG está sustituyendo al formato GIF como el formato
preferido para gráficos de páginas con transparencia. Una ventaja añadida de este
formato es el hecho de que PNG ofrece transparencia parcial a las imágenes, opción
que no ofrece el formato GIF. Esta opción permite una transición más sutil entre
las zonas coloreadas y las zonas transparentes (suavización de contornos).
Para guardar la imagen en el formato seleccionado, pulse Save (Guardar). Para anular
la operación, pulse Cancel (Cancelar). Si la imagen cuenta con funciones que no se
pueden guardar en el formato elegido, aparecerá un cuadro de diálogo que ofrecerá
opciones que permitan solucionar la situación. La opción Export (Exportar), siempre
y cuando esté disponible, ofrece por norma general los resultados deseados. Se abrirá
entonces una ventana con las opciones del formato. Los valores que se ofrecen son valores razonables por defecto.
Manejo de gráficos con GIMP
255
17.5
Impresión de imágenes
Para imprimir una imagen, seleccione File (Archivo) → Print (Imprimir) en el menú
de la imagen. Si la impresora está configurada en SUSE, debería figurar en la lista. En
algunos casos, es probable que sea necesario seleccionar un controlador apropiado con
Setup Printer (Configurar impresora). Seleccione el tipo de papel adecuado en la opción
Media Size (Tamaño de papel) y el tipo, en Media Type (Tipo de papel). Otros ajustes
están disponibles en la pestaña Image / Output Settings (Imagen/Ajustes de salida).
Figura 17.2
Cuadro de diálogo Imprimir
En la parte inferior de la ventana, ajuste el tamaño de la imagen. Pulse Use Original
Image Size (Utilizar tamaño original de imagen) para tomar estos ajustes de la imagen
en cuestión. Se recomienda utilizar esta opción si se ha fijado en la imagen un tamaño
de impresión y una resolución adecuadas. Ajuste la posición de la imagen en la página
modificando los campos de Position (Posición) o moviendo la imagen directamente en
la opción Preview (Vista previa).
Cuando los ajustes sean los deseados, pulse Print (Imprimir). Para guardar los ajustes
para su uso en un futuro, utilice en su lugar la opción Print and Save Settings (Imprimir
y guardar ajustes). La opción Cancel (Cancelar), por su parte, anula la impresión.
256
17.6
Información adicional
La lista de recursos que se ofrece a continuación pueden ser de utilidad para el usuario
de GIMP. Debe tenerse en cuenta, sin embargo, que muchos de los recursos hacen referencia a versiones anteriores a ésta.
• La opción Help (Ayuda) proporciona acceso al sistema interno de ayuda del programa. Esta documentación se encuentra también disponible en formato HTML y PDF
en http://docs.gimp.org.
• El Grupo de usuarios GIMP User Group dispone de una interesante página Web,
con un contenido meramente informativo, en http://gug.sunsite.dk.
• http://www.gimp.org es la página Web oficial de GIMP.
• Grokking the GIMP es un excelente libro de Carey Bunks basado, eso sí, en una
versión anterior de GIMP. Aunque algunos aspectos del programa han cambiado,
ofrece una ayuda inestimable para todo lo concerniente a la manipulación de imágenes. Existe una versión en línea de este libro en http://gimp-savvy.com/
BOOK/.
• http://gimp-print.sourceforge.net es la página Web del complemento
de impresión de GIMP. La guía del usuario que se encuentra disponible en la página
Web mencionada ofrece información detallada sobre la configuración y el manejo
del programa.
Manejo de gráficos con GIMP
257
Parte VI. Movilidad
Informática móvil con Linux
18
Este capítulo proporciona una descripción general de los distintos aspectos relacionados
con el uso de Linux en informática móvil. Se describen brevemente los diferentes
campos de uso, así como las funciones esenciales del hardware utilizado. También se
tratan las soluciones de software para requisitos especiales y las opciones disponibles
para obtener un máximo rendimiento, junto con las posibilidades de reducir el consumo
de energía al mínimo. El capítulo termina con una descripción general de las fuentes
de información más importantes sobre el tema.
La mayoría de las personas asocian la informática móvil con equipos portátiles, dispositivos PDA y teléfonos móviles, junto con el intercambio de datos entre ellos. Este
capítulo amplía el enfoque a componentes de hardware móviles, como por ejemplo
discos duros externos, unidades flash o cámaras digitales, los cuales se pueden conectar
a portátiles y a sistemas de escritorio.
18.1
Equipos portátiles
El hardware para equipos portátiles difiere del hardware para sistemas de escritorio
normales. Esto se debe a que ciertos criterios, como la intercambiabilidad, el espacio
ocupado y el consumo de energía son propiedades fundamentales. Los fabricantes de
hardware móvil han desarrollado el estándar PCMCIA (Asociación internacional de
tarjetas de memoria para computadoras personales). Este estándar cubre tarjetas de
memoria, tarjetas de interfaz de red, tarjetas de módem y RDSI y discos duros externos.
El Capítulo 19, PCMCIA (p. 271) describe la compatibilidad para este tipo de hardware
en Linux, qué necesidades han de tenerse en cuenta a la hora de configurarlo, qué
Informática móvil con Linux
261
software hay disponible para controlar los componentes PCMCIA y cómo solucionar
posibles problemas.
18.1.1 Conservación de energía
En la fabricación de equipos portátiles, la inclusión de componentes de sistema de
consumo optimizado de energía contribuye a su idoneidad para usarse en caso de no
tener acceso a la red de suministro eléctrico. Su contribución con respecto a la conservación de energía es, cuanto menos, tan importante como el sistema operativo. SUSE
Linux admite varios métodos que influyen en el consumo de energía de un equipo
portátil y afectan de distinta manera al tiempo de funcionamiento con batería. La siguiente lista aparece en orden descendente en cuanto a contribución a conservación de la
energía:
• Limitación de la velocidad de la CPU
• Desconexión de la iluminación de la pantalla en las pausas
• Ajuste manual de la iluminación de la pantalla
• Desconexión de accesorios HotPlug no utilizados (CD-ROM USB, ratón externo,
tarjetas PCMCIA no utilizadas, etc.)
• Reducción de la rotación del disco duro en estado inactivo
Hay más información detallada sobre gestión de energía en SUSE Linux y sobre cómo
utilizar el módulo de gestión de energía de YaST en Capítulo 21, Gestión de energía
(p. 285).
18.1.2 Integración en entornos operativos
cambiantes
El sistema necesita adaptarse a los entornos operativos cambiantes si se le quiere dar
un uso móvil. Muchos servicios dependen del entorno y deben volver a configurarse
clientes subyacentes. SUSE Linux hace este trabajo por usted.
262
Figura 18.1
Integración de equipos portátiles en redes
?
?
Imprimir
Correo
?
?
?
?
?
?
Alterno (proxy)
Configuración de X
Red
Los servicios que se ven afectados cuando el equipo portátil cambia constantemente
de una pequeña red casera a una red de oficina y viceversa son:
Configuración de red
Este servicio incluye la asignación de dirección IP, resolución de nombres, conectividad a Internet y conectividad a otras redes.
Impresión
Dependiendo de la red, es necesario disponer de una base de datos con impresoras
disponibles y un servidor de impresión disponible.
Correo electrónico y alternos
Al igual que para la impresión, la lista de servidores correspondientes debe estar
actualizada.
Configuración de X
Si el equipo portátil está temporalmente conectado a un proyector o a un monitor
externo, deberán estar disponibles las diferentes configuraciones de pantalla.
SUSE Linux ofrece dos maneras de integrar un equipo portátil en los entornos operativos
existentes. Estos métodos se pueden combinar.
Informática móvil con Linux
263
SCPM
SCPM (gestión de perfiles de configuración de sistemas) permite almacenar estados
de configuración arbitrarios de un sistema en una especie de “instantánea” que recibe
el nombre de perfil. Los perfiles se pueden crear con vistas a situaciones diferentes
y resultan útiles cuando el sistema trabaja en entornos cambiantes (redes domésticas
y de oficina). Siempre se puede cambiar de un perfil a otro. Hay más información
sobre SCPM en el Capítulo 20, Gestión de perfiles de la configuración del sistema
(p. 273). El applet de inicio Profile Chooser (Selector de perfiles) de KDE permite
cambiar de un perfil a otro. La aplicación exige la contraseña raíz antes de cambiar
entre un perfil y otro.
SLP
El protocolo de ubicación de servicios (SLP) simplifica la conexión de los portátiles
a las redes existentes. Sin SLP, el administrador del portátil normalmente necesitaría
un detallado conocimiento de los servicios disponibles en la red. SLP difunde la
disponibilidad de ciertos tipos de servicios a todos los clientes de la red local. Las
aplicaciones compatibles con SLP pueden procesar la información emitida por SLP
y se pueden configurar automáticamente. SLP puede utilizarse incluso para instalar
un sistema y evitar así la necesidad de buscar fuentes de instalación adecuadas. Hay
más información sobre SLP en el Capítulo 39, Servicios SLP en la red (p. 647).
La importancia de SCPM recae en la posibilidad de habilitar y mantener condiciones
de sistema reproducibles. SLP facilita en gran manera la tarea de configurar equipos
en red automatizando gran parte del proceso.
18.1.3 Opciones de software
Hay varias tareas especiales en el uso móvil de las cuales se encargan programas de
software dedicados: la monitorización del sistema (especialmente la carga de la batería),
la sincronización de datos y la comunicación inalámbrica con periféricos e Internet.
Las secciones siguientes tratan sobre las aplicaciones más importantes que utiliza SUSE
Linux para cada tarea.
Monitorización del sistema
SUSE Linux incluye dos herramientas de monitorización del sistema de KDE. La visualización del estado puro de la batería recargable del portátil la gestiona el applet KPowersave del iniciador. Las tareas de monitorización del sistema más complejas las rea-
264
liza KSysguard. En el caso de GNOME, estas funciones las proporciona GNOME
ACPI (como applet de panel) y System Monitor (Monitor del sistema).
KPowersave
KPowersave es un applet que muestra el estado de la batería recargable en el panel
de control. El icono se adapta al tipo de suministro eléctrico. Si se trabaja con suministro de CA, aparece el icono de un pequeño enchufe. Si se trabaja con baterías,
el icono cambia a una batería. El menú correspondiente abre el módulo de YaST
de gestión de energía después de solicitar la contraseña raíz. Esto permite definir
el comportamiento del sistema bajo diferentes tipos de suministro de energía. Podrá
encontrar información sobre la gestión de energía y sobre el módulo de YaST correspondiente en el Capítulo 21, Gestión de energía (p. 285).
KSysguard
KSysguard es una aplicación independiente que reúne todos los parámetros medibles
del sistema en un entorno de monitorización. KSysguard tiene monitores para ACPI
(estado de la batería), carga de la CPU, red, particiones y uso de la memoria. También
puede ver y mostrar todos los procesos del sistema. Es posible personalizar la presentación y el filtrado de los datos recopilados. Se pueden monitorizar diferentes
parámetros del sistema en varias páginas de datos o recopilar los datos de varias
máquinas en paralelo a través de la red. KSysguard también se puede ejecutar como
un daemon en máquinas sin un entorno KDE. Podrá consultar más información sobre
este programa en su función de ayuda integrada o en las páginas de ayuda de SUSE.
Figura 18.2
Monitorización del estado de la batería con KSysguard
Informática móvil con Linux
265
Sincronización de los datos
Cuando se pasa de trabajar en una máquina móvil desconectada de la red a trabajar en
una estación de trabajo en red dentro de una oficina, es necesario mantener los datos
procesados sincronizados en todas las instancias. Esto puede incluir carpetas de correo
electrónico y de directorios y archivo individuales que deben estar presentes para trabajar
tanto fuera como dentro de la oficina. La solución en ambos casos es la siguiente:
Sincronización del correo electrónico
Utilice una cuenta IMAP para almacenar sus mensajes de correo electrónico en la
red de la oficina. Podrá acceder entonces a los mensajes de correo electrónico desde
la estación de trabajo mediante cualquier cliente de correo electrónico compatible
con IMAP desconectado, como Mozilla Thunderbird Mail, Evolution o KMail, tal
y como se describe en el Inicio. El cliente de correo electrónico debe estar configurado de modo que se entre siempre en la misma carpeta para los mensajes
enviados. Esto garantiza que todos los mensajes estén disponibles, junto con la
información de estado, después de terminar el proceso de sincronización. Utilice
un servidor SMTP implementado en el cliente de correo para enviar mensajes en
lugar de Postfix de MTA para todo el sistema o Sendmail para recibir información
fiable acerca del correo no enviado.
Sincronización de archivos y directorios
Hay varias utilidades disponibles para sincronizar datos entre un equipo portátil y
una estación de trabajo. Para obtener información detallada, consulte el Capítulo 47,
Sincronización de archivos (p. 779).
Comunicación inalámbrica
Al igual que pueden conectarse a la red doméstica o a la de la oficina con un cable, los
equipos portátiles también puede conectarse inalámbricamente a otros equipos, periféricos, teléfonos móviles o dispositivos PDA. Linux admite tres tipos de comunicación
inalámbrica:
WLAN
Con el mayor alcance dentro de las tecnologías inalámbricas, WLAN es la única
tecnología adecuada para trabajar con redes amplias y a veces separadas en el espacio. Las máquinas se pueden conectar entre sí para formar una red inalámbrica independiente o para acceder a Internet. Unos dispositivos llamados "puntos de acceso"
funcionan como estaciones base para los dispositivos con WLAN habilitado y actúan
266
como intermediarios para acceder a Internet. El usuario móvil puede cambiar de
punto de acceso según la ubicación en la que esté y según qué punto de acceso
ofrezca la mejor conexión. Al igual que en la telefonía móvil, los usuarios de WLAN
tienen a su disposición una amplia red que no los ata a una ubicación concreta para
acceder a ella. Hay más información sobre WLAN en la Sección 22.1, “LAN inalámbrica” (p. 313).
Bluetooth
Bluetooth dispone del espectro más amplio de aplicaciones de todas las tecnologías
inalámbricas. Bluetooth se puede utilizar para comunicar equipos entre sí (portátiles)
y dispositivos PDA o teléfonos móviles, como sucede con IrDA. También se puede
utilizar para conectar varios equipos dentro de una distancia visible. Bluetooth se
utiliza igualmente para conectar entre sí componentes de sistemas inalámbricos,
como teclados y ratones. El alcance de esta tecnología, sin embargo, no es suficiente
para conectar sistemas remotos a una red. WLAN es la tecnología adecuada para
comunicarse a través de obstáculos físicos como por ejemplo paredes. Hay más información sobre Bluetooth, sus aplicaciones y su configuración en la Sección 22.2,
“Bluetooth” (p. 324).
IrDA
IrDA es la tecnología inalámbrica de alcance más corto. Las dos partes comunicantes
deben estar a una distancia visible la una de la otra. Obstáculos como paredes no
pueden vencerse. Una posible aplicación de IrDA es la transmisión de archivos de
un portátil a un teléfono móvil. El corto trayecto desde el portátil al teléfono móvil
queda cubierto con IrDA. El transporte de largo alcance del archivo al receptor del
archivo lo gestiona la red móvil. Otra posible aplicación de IrDA es la transmisión
inalámbrica de trabajos de impresión en una oficina. Hay más información sobre
IrDA en la Sección 22.3, “Transmisión de datos mediante infrarrojos” (p. 336).
18.1.4 Seguridad de los datos
Lo ideal es que se protegan los datos del equipo portátil de varias maneras frente a accesos no autorizados. Se pueden tomar medidas de seguridad en las siguientes áreas:
Protección frente a robos
En la medida de lo posible, asegure siempre su sistema físicamente frente a robos.
Puede adquirir varios dispositivos de seguridad, como cadenas.
Informática móvil con Linux
267
Seguridad de los datos del sistema
Los datos clave no sólo deben estar cifrados al transmitirse, sino que también deben
estar cifrados en el disco duro. Esto garantiza la seguridad en caso de robo. En la
Sección 23.3, “Cifrado de particiones y archivos” (p. 359) se describe cómo crear
una partición cifrada con SUSE Linux.
IMPORTANTE: Seguridad de los datos y suspensión en disco
Las particiones cifradas no se desmontan durante un evento de suspensión
en disco. Por lo tanto, todos los datos de estas particiones quedarán a disposición de cualquiera que consiga robar el hardware y reanude el disco
duro.
Seguridad de la red
Siempre que se transfieran datos, independientemente de cómo se haga, debe hacerse
de forma segura. Podrá consultar problemas generales de seguridad relacionados
con Linux y el uso de redes en la Sección 23.4, “Seguridad y confidencialidad”
(p. 363). También se incluyen medidas de seguridad relacionadas con el uso de redes
inalámbricas en el Capítulo 22, Comunicación inalámbrica (p. 313).
18.2
Hardware móvil
SUSE Linux admite la detección automática de dispositivos de almacenamiento móviles
mediante Firewire (IEEE 1394) o USB. El término dispositivo de almacenamiento
móvil se aplica a cualquier tipo de disco duro Firewire o USB, unidad flash USB o cámara digital. Estos dispositivos se detectan automáticamente y se configuran a través
de HotPlug nada más conectarse al sistema mediante la interfaz correspondiente. subfs
y submount garantizan que los dispositivos se monten en sus ubicaciones correspondientes en el sistema de archivos. El usuario queda totalmente libre de realizar las tareas
de montaje y desmontaje manual que sí tenía que llevar a cabo en las versiones anteriores
de SUSE Linux. Bastará con desconectar el dispositivo en cuanto el programa que lo
estaba usando deje de acceder a él.
Discos duros externos (USB y Firewire)
En cuanto el sistema reconozca correctamente el disco duro externo, aparecerá su
icono en My Computer (Mi equipo) en KDE o en Computer (Equipo) en GNOME
en la lista de unidades montadas. Al hacer clic en el icono se mostrará el contenido
de la unidad. Aquí se podrán crear carpetas y archivos, así como editarlos y supri-
268
mirlos. Para cambiar el nombre que le haya dado el sistema al disco duro, seleccione
el elemento de menú correspondiente en el menú que se abre al hacer clic con el
botón derecho del ratón en el icono. El cambio de nombre sólo se aplica a su visualización en el gestor de archivos. El descriptor por el que está montado el dispositivo
en /media/usb-xxx o /media/ieee1394-xxx permanece igual.
Unidades flash USB
El sistema gestiona estos dispositivos como si fueran discos externos. Así, también
es posible cambiar el nombre de las entradas en el gestor de archivos.
Cámaras digitales (USB y Firewire)
Las cámaras digitales que reconoce el sistema también aparecen como unidades
externas en la descripción del gestor de archivos. KDE permite leer las imágenes y
acceder a ellas en la URL camera:/. Después, las imágenes se pueden procesar
con Digikam o con The GIMP. Si se utiliza GNOME, Nautilus muestra las imágenes
en sus propias carpetas. f-spot es una sencilla utilidad de gestión y procesamiento
de imágenes. The GIMP permite realizar tareas de procesamiento fotográfico
avanzadas. Para obtener más información sobre cámaras digitales y gestión de
imágenes, consulte el Capítulo 15, Cámaras digitales y Linux (p. 221).
18.3
Teléfonos móviles y dispositivos
PDA
Los sistemas de escritorio y los portátiles se pueden comunicar con los teléfonos móviles
a través de Bluetooth o de IrDA. Algunos modelos admiten los dos protocolos, mientras
que otros sólo uno de los dos. Las áreas de uso de los dos protocolos, así como la documentación correspondiente ampliada, ya se han mencionado en la “Comunicación inalámbrica” (p. 266). La configuración de estos protocolos, así como la de los teléfonos
móviles en sí, se describe en sus respectivos manuales. La configuración del sistema
Linux se describe en la Sección 22.2, “Bluetooth” (p. 324) y la Sección 22.3, “Transmisión de datos mediante infrarrojos” (p. 336).
Evolution y Kontact incluyen de fábrica la compatibilidad necesaria para sincronizarse
con los dispositivos de mano fabricados por Palm, Inc. La conexión inicial con el dispositivo se lleva cabo fácilmente en ambos casos con la ayuda de un asistente. Una vez
configurada la compatibilidad con una unidad Palm Pilot, habrá que determinar qué tipo
Informática móvil con Linux
269
de datos se deben sincronizar (direcciones, citas, etc.). Ambas aplicaciones de trabajo
en grupo se describen en el Inicio.
El programa KPilot, tal como viene integrado en Kontact, también se puede adquirir
como una utilidad independiente. Podrá consultarlo en el Inicio. El programa KitchenSync también puede utilizarse para sincronizar datos de direcciones.
18.4
Información adicional
El punto de referencia central para todas las preguntas relacionadas con dispositivos
móviles y Linux es http://tuxmobil.org/. Dicho sitio Web incluye varias secciones dedicadas a aspectos de hardware y de software para portátiles, dispositivos
PDA, teléfonos móviles y otro tipo de hardware móvil.
Un acercamiento parecido al de http://tuxmobil.org/ es el de http://www
.linux-on-laptops.com/. Aquí podrá encontrar más información sobre portátiles
y dispositivos de mano.
SUSE mantiene una lista de correo en alemán dedicada a portátiles. Consulte http://
lists.suse.com/archive/suse-laptop/. En esta lista, tanto usuarios como
desarrolladores hablan sobre aspectos relacionados con la informática móvil y SUSE
Linux. Si bien se dan respuestas en inglés, la mayoría de la información archivada está
sólo en alemán.
Si tiene problemas de gestión de energía con SUSE Linux en equipos portátiles, se recomienda leer el archivo README (Léame) en /usr/share/doc/packages/
powersave. Este directorio suele contener información de última hora publicada por
desarrolladores e ingenieros de pruebas, por lo que proporciona útiles consejos para
solucionar problemas.
270
19
PCMCIA
En la presente sección se abordan aspectos especiales referidos al hardware y software
de PCMCIA que se encuentra en los equipos portátiles. PCMCIA, que hace referencia
a la Personal Computer Memory Card International Association (Asociación internacional de tarjetas de memoria para equipos personales), se emplea como término genérico para todo el hardware y software relacionado.
19.1
Hardware
El componente más importante es la tarjeta PCMCIA. Son dos los tipos de tarjeta
PCMCIA existentes:
Tarjetas PC
Estas tarjetas se han venido empleando desde la aparición de PCMCIA. Emplean
un bus de 16 bits para la transmisión de datos y, habitualmente, su precio es bastante
reducido. Algunos bridges PCMCIA modernos encuentran dificultades a la hora de
detectar estas tarjetas. No obstante, una vez que se logra su detección, su funcionamiento habitual es el correcto y no suelen causar grandes problemas.
Tarjetas CardBus
Se trata de un estándar más reciente. Estas tarjetas emplean un bus de 32 bits, lo
que hace que este tipo de tarjeta sea más rápido pero, al mismo tiempo, también
más caro. Se integran en el sistema como las tarjetas PCI y su funcionamiento no
presenta ningún problema.
PCMCIA
271
El segundo componente relevante es el controlador PCMCIA o el bridge de la tarjeta
PC o CardBus, que establece la conexión entre la tarjeta y el bus PCI. El controlador
es compatible con todos los modelos habituales. Si se trata de un dispositivo PCI integrado, podrá obtener más información mediante el comando lspci -vt.
19.2
Software
Con el núcleo actual, las tarjetas PCMCIA y los bridges PCMCIA son gestionados por
subsistema HotPlug. Existen sucesos pcmcia_socket para cada bridge y para cada
suceso pcmcia. Por su parte, udevd carga todos los módulos necesarios y llama a las
herramientas necesarias para configurar estos dispositivos. Estas acciones se definen
en /etc/udev/rules.d/.
Para la configuración de los recursos se emplea /etc/pcmcia/config.opts. El
controlador necesario lo determinan las tablas de dispositivos de los controladores.
Para obtener información acerca del estado de los zócalos y de las tarjetas, consulte
/sys/class/pcmcia_socket/ o utilice el comando pccardctl.
Como consecuencia de los cambios que se están produciendo continuamente en el sistema PCMCIA, esta documentación no está completa. Para una descripción exhaustiva,
consulte /usr/share/doc/packages/pcmciautils/README.SUSE.
272
Gestión de perfiles de la
configuración del sistema
20
Con la ayuda de SCPM (gestión de perfiles de la configuración del sistema), adapte la
configuración del equipo a los distintos entornos operativos o configuraciones de
hardware. SCPM gestiona un conjunto de perfiles de sistema para las distintas situaciones. SCPM permite cambiar fácilmente entre perfiles de sistema, con lo que se elimina
la necesidad de volver a configurar el sistema manualmente.
En algunas situaciones es necesario modificar la configuración del sistema. Este sería
el caso de equipos móviles que están funcionando en distintas ubicaciones. Si un sistema
de escritorio debe estar funcionando temporalmente con otros componentes de hardware
distintos a los habituales, SCPM viene como anillo al dedo. La restauración de la configuración original del sistema debe ser sencilla y la modificación de la configuración
del sistema debe poder reproducirse. Gracias a SCPM, cualquier parte de la configuración
del sistema puede mantenerse en un perfil personalizado.
El campo principal de la aplicación de SCPM es la configuración en red de equipos
portátiles. Las distintas configuraciones de red requieren con frecuencia ajustes diferentes
de otros servicios como el correo electrónico o los alternos. También otros elementos,
como las diferentes impresoras domésticas y de la oficina, la configuración personalizada del servidor X para el proyector multimedia en conferencias, ajustes especiales
de ahorro de energía para cuando se esté de viaje o una zona horaria distinta en una
subsidiaria en el extranjero.
Gestión de perfiles de la configuración del sistema
273
20.1
Terminología
A continuación se explican algunos términos empleados en la documentación de SCPM
y en el módulo YaST.
• El término configuración del sistema se refiere a la configuración completa del
equipo. Cubre todos los ajustes fundamentales, como el uso de particiones de disco
duro, los ajustes de red, la selección de zona horaria y las asignaciones del teclado.
• Un perfil, también denominado perfil de configuración, es un estado concreto preservado que se puede restaurar en cualquier momento.
• Un perfil activo hace referencia al último perfil seleccionado. Esto no quiere decir
que la configuración del sistema actual se corresponde exactamente con este perfil
ya que puede modificarse la configuración en cualquier momento.
• Un recurso en el contexto de SCPM es un elemento que contribuye a la configuración del sistema. Puede ser un archivo o un enlace simbólico incluidos los metadatos
(como el usuario), los permisos o el tiempo de acceso. También puede tratarse de
un servicio del sistema que se ejecuta en este perfil pero que se desactiva en otro.
• Cada recurso pertenece a un grupo de recursos determinado. Estos grupos contienen
todos los recursos que van juntos de manera lógica (la mayoría de grupos contendrían tanto un servicio como sus archivos de configuración). Es muy sencillo ensamblar los recursos gestionados por SCPM porque no exige ningún conocimiento
de los archivos de configuración del servicio deseado. SCPM incorpora una selección
de grupos de recursos preconfigurados que debería ser suficiente para la mayoría
de situaciones.
20.2
Utilización del gestor de
perfiles de YaST
Inicie el gestor de perfiles de YaST desde el centro de control de YaST mediante Sistema
→ Gestor de perfiles. En un primer momento, habilite concretamente SCPM seleccionando Activado en el cuadro de diálogo Opciones SCPM tal y como se muestra en la
Figura 20.1, “Opciones SCPM de YaST” (p. 275). En Configuración, determine si los
mensajes emergentes de progreso deben cerrarse automáticamente y si deben mostrarse
274
mensajes detallados sobre el progreso de configuración de SCPM. Para Modo de cambio
determine si los recursos modificados del perfil activo deberían guardarse o descartarse
al cambiar de perfil. Si Modo de cambio está definido en Normal, se guardarán todos
los cambios en el perfil activo al cambiar. Para definir el comportamiento de SCPM en
el momento de arranque, defina el Modo de arranque en Guardar los cambios (ajuste
por defecto) o en Desechar los cambios.
Figura 20.1
Opciones SCPM de YaST
20.2.1 Configuración de grupos de recursos
Para realizar cambios en la configuración actual de recursos, seleccione Configurar
recursos en el cuadro de diálogo Opciones SCPM. El cuadro de diálogo siguiente, que
se muestra en la Figura 20.2, “Configuración de grupos de recursos” (p. 276), muestra
todos los grupos de recursos disponibles en el sistema. Para añadir o editar un grupo
de recursos, especifique o modifique Grupo de recursos y Descripción. Para un servicio
LDAP, por ejemplo, introduzca ldap como Grupo de recursos y Servicio de
cliente LDAP como Descripción. A continuación, introduzca los recursos adecuados
(servicios, archivos de configuración o ambos) o modifique los existentes. Suprima los
que no se han usado. Para restaurar el estado de los recursos seleccionados (descartar
cualquier cambio que hayan sufrido y restaurar sus valores de configuración iniciales)
seleccione Reiniciar grupo. Los cambios se guardarán en el perfil activo.
Gestión de perfiles de la configuración del sistema
275
Figura 20.2
Configuración de grupos de recursos
20.2.2 Creación de un perfil nuevo
Para crear un perfil nuevo, haga clic en Añadir en el cuadro de diálogo de inicio (Gestión
de perfiles de la configuración del sistema). En la ventana que se abre, seleccione si el
nuevo perfil debe estar basado en la configuración actual del sistema (SCPM recuperará
automáticamente la configuración actual y la escribirá en el perfil) o en un perfil existente. Si usa la configuración actual del sistema como la base del nuevo perfil, puede
marcarlo como el perfil activo nuevo. De esta forma no se hacen cambios al perfil antiguo y no se inicia ni se detiene ningún servicio.
Dé un nombre y una descripción breve al nuevo perfil en el siguiente cuadro de diálogo.
Para que SCPM ejecute los guiones especiales en un cambio de perfiles, introduzca las
vías a cada ejecutable (consulte la Figura 20.3, “Ajustes de perfil especiales” (p. 277)).
Consulte la Sección 20.3.4, “Ajustes avanzados de perfil” (p. 281) para obtener más
información. SCPM lleva a cabo una comprobación de los recursos del nuevo perfil.
Después de completar con éxito esta prueba, ya se podrá usar el perfil nuevo.
276
Figura 20.3
Ajustes de perfil especiales
20.2.3 Modificación de los perfiles
existentes
Para modificar un perfil existente, seleccione Editar en el cuadro de diálogo de inicio
(Gestión de perfiles de la configuración del sistema). A continuación, modifique el
nombre, la descripción, los guiones y los recursos según sus necesidades.
20.2.4 Cambio de perfiles
Para cambiar perfiles, abra el gestor de perfiles. El perfil activo está marcado con una
flecha. Seleccione el perfil al que desee cambiar y haga clic en Cambiar a. SCPM
comprobará los recursos nuevos o modificados y los añadirá, si fuera necesario.
Si se ha modificado un recurso, YaST abrirá el cuadro de diálogo Confirmar cambio.
Grupos modificados de recursos del perfil activo muestra todos los grupos de recursos
del perfil activo que se han modificado pero que no se han guardado aún en el perfil
activo. La opción Guardar o ignorar para el grupo de recursos seleccionado actualmente
determina si los cambios a este grupo de recursos deberían guardarse en el perfil activo
o descartarse. Otra posibilidad es seleccionar cada recurso y hacer clic en Detalles para
Gestión de perfiles de la configuración del sistema
277
analizar los cambios con detenimiento. Se mostrará una lista de todos los archivos de
configuración o ejecutables que pertenecen a este grupo de recursos que se han modificado. Para obtener una comparación línea a línea de la versión antigua y la nueva, haga
clic en Mostrar los cambios. Después de analizar los cambios, decida lo que desea hacer
con ellos en Acción:
Guardar recurso
Guarda este recurso en el perfil activo pero no toca el resto de perfiles.
Ignorar recurso
Deja sin tocar el recurso activo. Se descarta este cambio.
Guardar en todos los perfiles
Copia toda la configuración de este recurso en todos los perfiles.
Parchear en todos los perfiles
Aplica sólo los cambios más recientes a todos los perfiles.
Guardar o ignorar todo sólo guarda o descarta los cambios de todos los recursos que
se muestran en este cuadro de diálogo.
Después de confirmar los cambios en el perfil activo, abandone el cuadro de diálogo
Confirmar cambio haciendo clic en Aceptar. SCPM cambiará a continuación al nuevo
perfil. Al cambiar ejecuta los guiones anteriores y posteriores a la detención del perfil
antiguo y los guiones anteriores y posteriores al inicio para el nuevo perfil.
20.3
Configuración de SCPM
mediante la línea de comando
En esta sección se explica la configuración de la línea de comando de SCPM. Aprenda
cómo iniciarla, configurarla y trabajar con perfiles.
278
20.3.1 Inicio de SCPM y definición de los
grupos de recursos
SCPM debe activarse antes de usarse. Active SCPM mediante scpm enable.
Cuando se ejecuta por primera vez, SCPM se inicializa, lo que tarda algunos segundos.
Desactive SCPM con scpm disable en cualquier momento para impedir el cambio
involuntario de perfiles. La reactivación posterior reanudará simplemente la inicialización.
Por defecto, SCPM gestiona los ajustes de red y de impresora además de la configuración
de X.Org. Para gestionar servicios o archivos de configuración especiales, active los
grupos de recursos respectivos. Para mostrar los grupos de recursos predefinidos, utilice
scpm list_groups. Para ver sólo los grupos ya activados, utilice scpm
list_groups -a. Emita estos comandos como usuario Root en la línea de comando.
scpm list_groups -a
nis
mail
ntpd
xf86
autofs
network
printer
Cliente del Servicio de información de red (NIS)
Subsistema de correo
Daemon del protocolo horario de red (NTP)
Ajustes del servidor X
Servicio automounter
Ajustes básicos de red
Ajustes de la impresora
Active o desactive un grupo con scpm activate_group NOMBRE o scpm
deactivate_group NOMBRE. Sustituya NOMBRE con el nombre correspondiente
del grupo.
20.3.2 Creación y gestión de perfiles
Ya existe un perfil denominado default después de activar SCPM. Obtenga una
lista de todos los perfiles disponibles con scpm list. Este perfil existente también
es el activo, lo que puede comprobarse mediante scpm active. El perfil default
es una configuración básica desde la que derivan los otros perfiles. Por esta razón, todos
los ajustes que deban ser idénticos en todos los perfiles deberían realizarse en primer
lugar. A continuación, almacene estas modificaciones en el perfil activo con scpm
reload. Se puede copiar o renombrar el perfil default como base para los nuevos
perfiles.
Gestión de perfiles de la configuración del sistema
279
Existen dos maneras de añadir un perfil. Si el perfil nuevo (al que llamaremos trabajo)
debe basarse en el perfil default, créelo con scpm copy default trabajo.
El comando scpm switch trabajo cambia al nuevo perfil, que ya podrá modificarse. Es posible que quiera modificar la configuración del sistema por algún motivo
especial y guardar los cambios en un nuevo perfil. El comando scpm add trabajo
crea un nuevo perfil al guardar la configuración actual del sistema en el perfil trabajo
y al marcarlo como activo. Al ejecutar scpm reload se guardarán los cambios en
el perfil trabajo.
Se pueden renombrar o suprimir los perfiles con los comandos scpm rename x y
y scpm delete z. Por ejemplo, para renombrar trabajo a proyecto, introduzca
scpm rename trabajo proyecto. Para suprimir proyecto, introduzca scpm
delete proyecto. El perfil activo no puede suprimirse.
20.3.3 Cambio de perfiles de configuración
El comando scpm switch trabajo cambia a otro perfil (el perfil trabajo, en
este caso). Cambie al perfil activo para incluir los ajustes modificados de la configuración
del sistema en el perfil. Esto se corresponde con el comando scpm reload.
Al cambiar perfiles, SCPM comprueba primero los recursos del perfil activo que se
han modificado. A continuación se le preguntará si la modificación de cada recurso
debería añadirse al perfil activo o desecharse. Si prefiere una lista por separado de los
recursos (tal y como ocurre en versiones anteriores de SCPM), utilice el comando de
cambio con el parámetro -r: scpm switch -r trabajo.
scpm switch -r trabajo
Comprobación
Comprobación
Comprobación
Restauración
de los recursos modificados
de los recursos que deben iniciarse/apagarse
de dependencias
del perfil defaul
SCPM compara a continuación la configuración del sistema actual con el perfil al que
cambiar. En esta fase, SCPM evalúa los servicios de sistema que deben detenerse o
reiniciarse debido a las dependencias mutuas o para reflejar los cambios en la configuración. Es como un reinicio parcial del sistema que sólo concierne a una pequeña parte
de éste mientras el resto continúa funcionando sin cambios. Sólo en este punto se detienen los servicios de sistema, todos los recursos modificados (como los archivos de
configuración) se escriben y los servicios de sistema se reinician.
280
20.3.4 Ajustes avanzados de perfil
Puede introducir una descripción para cada perfil que se muestra con scpm list.
Para el perfil activo, defínalo con scpm set description "text". Escriba el
nombre del perfil para los perfiles inactivos, por ejemplo, scpm set description
"text" trabajo. En algunas ocasiones, podría ser conveniente realizar algunas
acciones adicionales que no ofrece SCPM al cambiar perfiles. Interconecte hasta cuatro
ejecutables por cada perfil. Se invocan en distintas fases del proceso de cambio. Estas
fases se denominan:
Anterior a la detención
Antes de detener los servicios al abandonar el perfil
Posterior a la detención
Después de detener los servicios al abandonar el perfil
Anterior al inicio
Antes de iniciar los servicios al activar el perfil
Posterior al inicio
Después de iniciar los servicios al activar los perfiles
Inserte estas acciones con el comando set introduciendo scpm set prestop
filename, scpm set poststop filename, scpm set prestart
filename o scpm set poststart filename. Los guiones deben ser ejecutables y hacer referencia al intérprete correcto.
AVISO: Integración de un guión personalizado
El súperusuario (Root) debe poder leer y ejecutar los guiones adicionales que
SCPM va a ejecutar. El acceso a estos archivos debe estar bloqueado para el
resto de usuarios. Introduzca los comandos chmod 700 filename y chown
root:root filename para proporcionar al usuario Root permisos exclusivos
a los archivos.
Consulte todos los ajustes adicionales introducidos con set mediante get. El comando
scpm get poststart, por ejemplo, devuelve el nombre de la llamada posterior
al inicio o no devuelve nada si no se ha adjuntado nada. Restaure tales ajustes sobres-
Gestión de perfiles de la configuración del sistema
281
cribiendo con "". El comando scpm set prestop "" elimina el programa anterior
a la detención adjunto.
Pueden aplicarse todos los comandos set y get a un perfil arbitrario de la misma
manera en que se han añadido los comentarios. Por ejemplo, scpm get prestop
filename trabajo o scpm get prestop trabajo.
20.4
Uso del applet selector de
perfiles
El applet selector de perfiles en el panel de escritorio de GNOME o KDE le permite
controlar fácilmente los ajustes de SCPM. Cree, modifique o suprima perfiles mediante
YaST tal y como se describe en la Sección 20.2, “Utilización del gestor de perfiles de
YaST” (p. 274) y cámbielos. El cambio de perfiles puede realizarse como un usuario
normal siempre que el administrador del sistema permita que esto ocurra. Inicie el selector de perfiles desde el menú del escritorio mediante Sistema → Miniaplicación de
escritorio → Selector de perfiles.
Si pulsa con el botón derecho en el icono Selector de perfiles situado en el panel del
escritorio y elige Permitir el cambio a los usuarios en el menú que se abre, habilitará
a los usuarios normales de modo que puedan cambiar perfiles. Introduzca la contraseña
del usuario Root. Cualquier usuario autorizado en el sistema podrá cambiar los perfiles
de ahora en adelante.
Todos los perfiles configurados en YaST, ya sea directamente a través de una llamada
de YaST o a través de Iniciar el módulo de gestor de perfiles de YaST2 se muestran
después de hacer clic en el icono Selector de perfiles. Seleccione el que se va a cambiar
para utilizar las teclas de cursor y los cambios de SCPM en el nuevo perfil automáticamente.
20.5
Resolución de problemas
En esta sección se describen los problemas más frecuentes que se han detectado con
SCPM. Aprenda cómo se producen y cómo puede resolverlos.
282
20.5.1 Terminación durante el proceso de
cambio
En algunas ocasiones SCPM detiene el funcionamiento durante un procedimiento de
cambio. Puede producirse debido a algún efecto exterior, como que el usuario lo aborte,
un fallo de alimentación o incluso un error en el propio SCPM. Si esto ocurre, se mostrará un mensaje de error con información sobre el bloqueo de SCPM la próxima vez
que inicie SCPM. El objetivo es proteger la seguridad del sistema, puesto que los datos
almacenados en la base de datos pueden ser distintos de los del estado del sistema. Para
resolver este problema, ejecute scpm recover. SCPM llevará a cabo todas las operaciones que faltaban de la ejecución anterior. También puede ejecutar scpm recover
-b, que intentará deshacer todas las operaciones realizadas de la ejecución anterior. Si
está utilizando el gestor de perfiles de YaST, obtenga un cuadro de diálogo de recuperación al inicio que le ofrezca la posibilidad de ejecutar los comandos descritos anteriormente.
20.5.2 Cambio de la configuración del
grupo de recursos
Para modificar la configuración del grupo de recursos cuando SCPM ya se ha inicializado, introduzca scpm rebuild después de añadir o eliminar grupos. De este modo
se añadirán nuevos recursos a todos los perfiles y los recursos eliminados se suprimirán
permanentemente. Si los recursos suprimidos se configuran de manera diferente en los
distintos perfiles, se perderán estos datos de configuración excepto para la versión actual
del sistema, que no resultará alterada por SCPM. Si modifica la configuración con
YaST, no será necesario introducir el comando rebuild porque será YaST quien lo
gestione.
20.6
Selección de un perfil al
arrancar el sistema
Para seleccionar un perfil al arrancar el sistema, pulse F3 en la pantalla de arranque
para acceder a la lista de perfiles disponibles. Utilice las teclas de flecha para seleccionar
Gestión de perfiles de la configuración del sistema
283
un perfil y confirmar la selección con
de arranque.
20.7
Intro
. Se usará el perfil seleccionado como opción
Información adicional
La documentación más reciente está disponible en las páginas de información de SCPM
(info scpm). La información para desarrolladores está disponible en /usr/share/
doc/packages/scpm.
284
Gestión de energía
21
La gestión de energía es especialmente importante en el caso de los equipos portátiles,
pero también es un aspecto importante en otros sistemas. Hay disponibles dos tecnologías: APM (gestión de energía avanzada, del inglés Advanced Power Management) y
ACPI (interfaz avanzada de configuración y energía, del inglés Advanced Configuration
and Power Interface). Además de estas tecnologías, también es posible ajustar la frecuencia de la CPU para ahorrar energía o reducir el ruido. Estas opciones se pueden
configurar de forma manual o usando un módulo de YaST.
A diferencia de APM, que se usaba anteriormente en los equipos portátiles sólo para
la gestión de energía, la información sobre el hardware y la herramienta de configuración
de ACPI están disponibles en todos los equipos modernos (portátiles, equipos de sobremesa y servidores). Todas las tecnologías de gestión de energía requieren hardware
adecuado y rutinas de BIOS. La mayoría de los portátiles y muchos de los equipos de
sobremesa y los servidores modernos se ajustan a estos requisitos.
APM se utilizaba en muchos equipos antiguos. Dado que APM consiste en bastante
medida en un conjunto de funciones implementado en el BIOS, el grado de compatibilidad con APM puede variar en función del hardware. Este hecho es aún más evidente
en el caso de ACPI, ya que presenta una mayor complejidad. Por esta razón no tiene
mucho sentido recomendar uno u otro sistema. Lo mejor que puede hacer es probar los
distintos procedimientos con su hardware y elegir la tecnología con la que obtenga los
mejores resultados.
Gestión de energía
285
IMPORTANTE: Gestión de energía en los procesadores AMD64
Los procesadores AMD64 con un núcleo de 64 bits sólo admiten el uso de
ACPI.
21.1
Funciones de ahorro de energía
Las funciones de ahorro de energía no sólo son importantes para el uso móvil de los
equipos portátiles, sino también para los sistemas de sobremesa. Las funciones principales y su uso en los sistemas de gestión de energía APM y ACPI son:
Stand-by
En este modo de funcionamiento se apaga la pantalla. En algunos equipos, el rendimiento del procesador se puede limitar. Esta función no está disponible en todas las
implementaciones APM, y se corresponde con los estados S1 o S2 de ACPI.
Suspender (volcado en la memoria)
Este modo vuelca toda la información de estado del sistema en la memoria RAM.
Posteriormente, todo el sistema (excepto la RAM) pasa a estar en reposo. En este
estado, el equipo consume muy poca energía. La ventaja que ofrece es la posibilidad
de reanudar el trabajo en el mismo punto en el que se dejó en sólo unos segundos,
sin necesidad de arrancar y reiniciar las aplicaciones. Los dispositivos que utilizan
APM se pueden suspender normalmente cerrando la cubierta del portátil y se activan
al volver a abrirla. Esta función se corresponde con el estado S3 de ACPI. La compatibilidad con este estado está todavía en desarrollo y, en consecuencia, depende
en gran medida del hardware.
Hibernación (volcado en el disco)
En este modo de funcionamiento, todo el estado del sistema se vuelca en el disco
duro y el sistema se apaga. La reactivación para salir de este estado puede requerir
entre 30 y 90 segundos y se vuelve al estado previo a la suspensión. Algunos fabricantes ofrecen variantes de este modo como, por ejemplo, la función RediSafe de
los Thinkpads de IBM. En ACPI el estado que se corresponde con la hibernación
es el S4. En Linux, el volcado de la información en el disco se realiza mediante rutinas del núcleo que son independientes de APM y de ACPI.
286
Monitorización de la batería
ACPI y APM comprueban la carga de la batería y proporcionan información acerca
del estado de carga. Además, ambos sistemas coordinan las acciones que se deben
llevar a cabo cuando se alcanza un nivel de carga preocupante.
Desconexión automática
Después de apagar, el equipo se desconecta. Esto es especialmente importante
cuando se realiza un apagado automático justo antes de que se agote la batería.
Apagado de los componentes del sistema
Desconectar el disco duro es el aspecto que ahorra más energía en todo el sistema.
En función de la fiabilidad de todo el sistema, el disco duro puede ponerse en reposo
durante algún tiempo. Sin embargo, el riesgo de perder datos aumenta a medida que
incrementa el período de reposo. Otros componentes se pueden desactivar mediante
ACPI (al menos, en teoría) o se pueden desactivar de forma permanente en la configuración del BIOS.
Control de la velocidad del procesador
En lo que respecta a la CPU, se puede ahorrar energía de estas tres formas: se puede
ajustar la frecuencia y el voltaje (PowerNow! o Speedstep), se pueden establecer
limitaciones en la CPU y se puede poner el procesador en reposo (estados C). Dependiendo del modo de funcionamiento del equipo, estos métodos se pueden combinar también entre sí.
21.2
APM
Algunas de las funciones de ahorro de energía las realiza el propio BIOS APM. En
muchos equipos portátiles, se pueden activar los estados stand-by y suspensión usando
una combinación de teclas o cerrando la cubierta sin ninguna función de sistema operativo especial. Sin embargo, para activar estos modos con un comando, se deben realizar
ciertas acciones antes de que el sistema entre en suspensión. Para ver el nivel de carga
de la batería, se necesitan paquetes de programas especiales y un núcleo adecuado.
Los núcleos de SUSE Linux llevan incorporada la compatibilidad con APM. Sin embargo, APM se activa sólo si ACPI no está implementada en el BIOS y si se detecta un
BIOS APM. Para activar la compatibilidad con APM, ACPI debe desactivarse usando
acpi=off en el indicador de arranque. Especifique cat /proc/apm para comprobar
si APM está activa. Se mostrará un resultado compuesto por varios números para indicar
Gestión de energía
287
que todo es correcto. Ahora puede apagar el equipo usando el comando shutdown
-h.
Las implementaciones del BIOS que no sean totalmente estándares pueden provocar
problemas con APM. Algunos de estos problemas se pueden evitar usando parámetros
de arranque especiales. Todos los parámetros se especifican en el indicador de arranque
con el formato apm=parámetro:
on/off
Habilita o inhabilita la compatibilidad con APM.
(no-)allow-ints
Permite que se produzcan interrupciones durante la ejecución de las funciones del
BIOS.
(no-)broken-psr
La función “GetPowerStatus” del BIOS no funciona correctamente.
(no-)realmode-power-off
Restablece el procesador al modo normal antes del apagado.
(no-)debug
Registra los eventos de APM en el registro del sistema.
(no-)power-off
Desconecta el sistema después de un apagado.
bounce-interval=n
Tiempo (en centésimas de segundo) después de un evento de suspensión durante el
cual se hace caso omiso de otros eventos de suspensión adicionales.
idle-threshold=n
Porcentaje de inactividad del sistema a partir del cual se ejecuta la función de BIOS
idle (0=siempre, 100=nunca).
idle-period=n
Tiempo (en centésimas de segundo) después del cual se mide la actividad del sistema.
El daemon de APM (apmd) ha dejado de utilizarse. Sus funciones las ejerce ahora la
nueva función powersaved, que también es compatible con ACPI y con los ajustes de
frecuencia de la CPU.
288
21.3
ACPI
ACPI se ha diseñado para hacer posible que el sistema operativo configure y controle
los componentes de hardware individuales. ACPI sustituye a los sistemas anteriores
PnP y APM. Proporciona información acerca de la batería, el adaptador de CA, la
temperatura, el ventilador y los eventos del sistema como, por ejemplo, que se debe
cerrar la cubierta o que la batería está baja.
El BIOS proporciona tablas que contienen información acerca de los métodos de acceso
al hardware y a los componentes individuales. El sistema operativo se sirve de esta información para tareas como la asignación de interrupciones o la activación y desactivación de componentes. Como el sistema operativo ejecuta los comandos almacenados
en el BIOS, el funcionamiento depende de la implementación del BIOS. Las tablas que
ACPI puede detectar y cargar se indican en /var/log/boot.msg. Consulte Sección 21.3.4, “Resolución de problemas” (p. 294) para obtener más información acerca
de la resolución de los problemas de ACPI.
21.3.1 Activación de ACPI
Si el núcleo detecta un BIOS ACPI al arrancar el sistema, ACPI se activa automáticamente y APM se desactiva. El parámetro de arranque acpi=force puede ser necesario
para algunas máquinas antiguas. El equipo debe ser compatible con ACPI 2.0 o posterior.
Consulte los mensajes de arranque del núcleo en /var/log/boot.msg para ver si
ACPI está activada.
A continuación, es necesario cargar una serie de módulos, de lo que se ocupa el guión
de inicio del daemon Powersave. Si alguno de estos módulos causa problemas, puede
impedirse su carga o descarga en /etc/sysconfig/powersave/common. En
el registro del sistema (/var/log/messages) se encuentran los mensajes de los
módulos, lo que le permite ver qué componentes se han detectado.
En /proc/acpi aparecen ahora varios archivos que informan sobre el estado del
sistema o que se pueden usar para modificar algunos de los estados. Algunas funciones
no están totalmente operativas, ya que se encuentran todavía en desarrollo y el uso de
otras depende en gran medida de la implementación del fabricante.
Todos los archivos (excepto dsdt y fadt) se pueden leer con cat. En algunos archivos, es posible incluso modificar opciones con echo, por ejemplo, echo X >
Gestión de energía
289
archivo para especificar valores adecuados para X. Para acceder a esta información
y a las opciones de control, se recomienda utilizar siempre el comando powersave.
A continuación, se describen los archivos más importantes:
/proc/acpi/info
Información general acerca de ACPI.
/proc/acpi/alarm
Aquí se especifica cuándo debe activarse el sistema después de haber estado en reposo. Por ahora, esta función no se admite totalmente.
/proc/acpi/sleep
Proporciona información acerca de los posibles estados de reposo.
/proc/acpi/event
Aquí se registran los eventos y el daemon Powersave los procesa (powersaved).
Si ningún daemon accede a este archivo, los eventos (como, por ejemplo, presionar
el botón de encendido o cerrar la cubierta) se podrán leer con cat
/proc/acpi/event (se sale de ellos con Ctrl + C ).
/proc/acpi/dsdt y /proc/acpi/fadt
Estos archivos contienen las tablas ACPI DSDT (tabla de descripción de sistemas
diferenciados, del inglés Differentiated System Description Table) y FADT (tabla
de descripción de ACPI fija, del inglés Fixed ACPI Description Table). Dichas tablas
pueden leerse con acpidmp, acpidisasm y dmdecode. Puede encontrar estos
programas junto con la correspondiente documentación en el paquete pmtools,
por ejemplo, acpidmp DSDT | acpidisasm.
/proc/acpi/ac_adapter/AC/state
Muestra si está conectado el adaptador de CA.
/proc/acpi/battery/BAT*/{alarm,info,state}
Información detallada sobre el estado de la batería. Para conocer el nivel de carga,
es necesario comparar el valor de last full capacity (última capacidad total)
de info (información) con el de remaining capacity (capacidad restante)
de state (estado). Una forma más fácil de hacerlo es usar alguno de los programas
especiales que se describen en Sección 21.3.3, “Herramientas de ACPI” (p. 294). El
nivel de carga que provocará que se desencadene un evento se puede especificar en
alarm (alarma).
290
/proc/acpi/button
Este directorio contiene información sobre diversos conmutadores.
/proc/acpi/fan/FAN/state
Muestra si el ventilador está funcionando en ese momento. Puede activar o desactivar
el ventilador automáticamente escribiendo en este archivo 0 (encender) o 3 (apagar).
No obstante, hay que tener en cuenta que tanto el código ACPI del núcleo como el
hardware (o el BIOS) hacen caso omiso de estos valores cuando la temperatura es
demasiado elevada.
/proc/acpi/processor/*
Se crea un subdirectorio independiente para cada CPU incluida en el sistema.
/proc/acpi/processor/*/info
Información sobre las posibilidades de ahorro de energía del procesador.
/proc/acpi/processor/*/power
Información sobre el estado actual del procesador. Un asterisco junto a C2 significa
que el procesador está inactivo, que es el estado más frecuente, como puede apreciarse por el valor de usage (uso).
/proc/acpi/processor/*/throttling
Se puede utilizar para limitar el reloj del procesador. Normalmente, esto se puede
hacer en 8 niveles. Esta opción es independiente del ajuste de la frecuencia de la
CPU.
/proc/acpi/processor/*/limit
Si el rendimiento (obsoleto) y las limitaciones se controlan de forma automática
mediante un daemon, se pueden especificar aquí los límites máximos. Existen algunos
límites fijados por el sistema y otros establecidos por el usuario.
/proc/acpi/thermal_zone/
Hay un subdirectorio independiente para cada zona térmica. Una zona térmica es
un área con propiedades térmicas semejantes, cuyo número y nombre están diseñados
por el fabricante del hardware. No obstante, muchas de las posibilidades que ofrece
ACPI no se llegan a implementar nunca. En su lugar, el BIOS se ocupa normalmente
de controlar la temperatura sin que el sistema operativo intervenga, ya que lo que
está en juego aquí es la duración del hardware. En consecuencia, algunos de los archivos siguientes sólo tienen valor en la teoría.
Gestión de energía
291
/proc/acpi/thermal_zone/*/temperature
La temperatura actual de la zona térmica.
/proc/acpi/thermal_zone/*/state
El estado indica si todo está en orden (ok) o si ACPI refrigera de forma active
(activa) o passive (pasiva). En los casos en los que el control del ventilador no
depende de ACPI, el estado es siempre ok.
/proc/acpi/thermal_zone/*/cooling_mode
Seleccione el método de refrigeración controlado por ACPI. Puede optar por el
modo pasivo (menor rendimiento pero más económico) o por el activo (máximo
rendimiento, pero el ventilador hace ruido).
/proc/acpi/thermal_zone/*/trip_points
Permite establecer la temperatura a partir de la cual se deben realizar acciones específicas en el equipo como, por ejemplo, la refrigeración activa o pasiva, la suspensión
(cuando el estado es hot [caliente]) o el apagado (cuando el estado es critical
[crítico]). Las acciones posibles se encuentran definidas en DSDT en función del
dispositivo. Los puntos que se determinan en la especificación ACPI son: critical
(crítico), hot (caliente), passive (pasivo), active1 (activo1) y active2
(activo2). Aunque no estén implementados todos ellos, es necesario especificarlos
en este orden en el archivo. Por ejemplo, la entrada echo 90:0:70:0:0 >
trip_points asigna a la temperatura un valor critical (crítico) de 90 grados
y un valor passive (pasivo) de 70 grados (todas las temperaturas se miden en
grados Celsius).
/proc/acpi/thermal_zone/*/polling_frequency
Si el valor de temperature (temperatura) no se actualiza automáticamente
cuando cambia la temperatura, puede cambiar al modo de sondeo aquí. El comando
echo X > /proc/acpi/thermal_zone/*/polling_frequency hace
que se consulte la temperatura cada X segundos. Si X=0 se inhabilitará el sondeo.
Las opciones de configuración, la información y los eventos mencionados no requieren
una edición manual. Para ello, se puede utilizar el daemon Powersave (powersaved) y
distintas aplicaciones como powersave, kpowersave y wmpowersave. Consulte la Sección 21.3.3, “Herramientas de ACPI” (p. 294). Puesto que powersaved incluye ahora
las funciones de la antigua aplicación acpid, esta última ha dejado de utilizarse.
292
21.3.2 Control del rendimiento de la CPU
Existen tres métodos de ahorro de energía para la CPU. Dependiendo del modo de
funcionamiento del equipo, estos métodos se pueden combinar también entre sí. El
ahorro de energía también significa que el sistema se calienta menos y, por lo tanto, el
ventilador debe activarse con menos frecuencia.
Ajuste de la frecuencia y el voltaje
PowerNow! y Speedstep son los nombres que han establecido las empresas AMD
e Intel para esta tecnología que, por otra parte, incorporan también los procesadores
de otros fabricantes. Este método consiste en reducir conjuntamente la frecuencia
del reloj de la CPU y su voltaje central, con lo cual se consigue un ahorro de energía
superior al lineal. Esto significa que con la mitad de la frecuencia (es decir, a medio
rendimiento) se requiere mucho menos de la mitad de energía. Esta tecnología
funciona independientemente de APM y de ACPI y requiere un daemon que ajuste
la frecuencia y los requisitos de rendimiento actuales. Los ajustes se pueden realizar
en el directorio /sys/devices/system/cpu/cpu*/cpufreq/.
Limitación de la frecuencia del reloj
Esta tecnología consiste en omitir un porcentaje determinado de los impulsos de la
señal del reloj para la CPU. Con una limitación del 25%, se omite uno de cada
cuatro impulsos; mientras que con una reducción del 87,5%, sólo uno de cada ocho
impulsos llega al procesador. No obstante, el ahorro de energía es algo menor que
el lineal. Normalmente, esta técnica se aplica solamente cuando no está disponible
el ajuste de la frecuencia o para lograr el máximo ahorro de energía. Por otra parte,
esta técnica requiere un proceso propio que la controle. La interfaz del sistema es
/proc/acpi/processor/*/throttling.
Cómo poner el procesador en reposo
El sistema operativo pone el procesador en estado de reposo cuando no hay ningún
tipo de actividad. En este caso, el sistema operativo envía a la CPU el comando
halt. Existen tres niveles: C1, C2 y C3. En el estado de máximo ahorro de energía
(C3), se detiene incluso la sincronización del caché del procesador con la memoria
principal, por lo que este estado se adopta únicamente cuando no existe ningún
dispositivo que modifique el contenido de la memoria principal a través de la actividad maestra del bus. Algunos controladores no permiten el uso de C3. El estado
actual se muestra en /proc/acpi/processor/*/power.
El ajuste de la frecuencia y las limitaciones son sólo relevantes cuando el procesador
está ocupado, ya que, si éste se encuentra inactivo, se utiliza de todas formas el estado
Gestión de energía
293
C más económico. Si la CPU está ocupada, el ajuste de la frecuencia es el mejor método
para ahorrar energía. A menudo, el procesador no trabaja al máximo de su capacidad
y basta con bajar su frecuencia. En la mayoría de los casos, el método más adecuado
consiste en un ajuste dinámico de la frecuencia por medio de un daemon como, por
ejemplo powersaved. Cuando el equipo funciona con baterías o debe mantener una
baja temperatura y hacer poco ruido, se recomienda establecer un ajuste estático a baja
frecuencia.
La función de limitación debería utilizarse como último recurso, por ejemplo, para
prolongar el tiempo de funcionamiento con baterías a pesar de que el sistema esté trabajando a pleno ritmo. No obstante, algunos sistemas no funcionan correctamente si la
limitación aplicada es demasiado estricta. Por otra parte, la limitación de la CPU no
sirve de nada cuando ésta tiene poca actividad.
En SUSE Linux, estas técnicas se controlan a través del daemon powersave. La configuración se describe en Sección 21.5, “Paquete powersave” (p. 298).
21.3.3 Herramientas de ACPI
ACPI cuenta con una serie de herramientas más o menos completas. Entre ellas se encuentran las herramientas puramente informativas que muestran el estado de la batería
o la temperatura (acpi, klaptopdaemon, wmacpimon, etc.); las que facilitan el acceso a
estructuras en /proc/acpi; las que ayudan a monitorizar cambios (akpi, acpiw o
gtkacpiw) y, por último, las que permiten editar las tablas ACPI en el BIOS (paquete
pmtools).
21.3.4 Resolución de problemas
Se puede distinguir entre dos tipos de problemas. Por una parte, puede haber fallos en
el código ACPI del núcleo que no se hayan detectado a tiempo. En este caso, se proporcionará una solución para que la descargue. Los otros problemas son los más frecuentes:
los que están causados por el BIOS. En algunos casos, se integran a propósito en el
BIOS desviaciones de las especificaciones de ACPI para evitar fallos en la implementación ACPI en otros sistemas operativos de uso extendido. Existen también componentes
de hardware con fallos graves en la implementación ACPI, por lo que se han incluido
en una "lista negra" para impedir que el núcleo de Linux utilice en ellos ACPI.
294
Si surgen problemas, en primer lugar se debe actualizar el BIOS. Si el equipo no
arrancar en absoluto, pruebe a utilizar algunos de los siguientes parámetros de arranque:
pci=noacpi
No utilizar ACPI para configurar los dispositivos PCI.
acpi=oldboot
Ejecutar sólo una configuración de recursos simples. No utilizar ACPI para otros
propósitos.
acpi=off
Inhabilita la ACPI.
AVISO: Problemas al arrancar sin ACPI
Algunos equipos nuevos, especialmente los sistemas SMP y AMD64, requieren
ACPI para que el hardware se configure correctamente. Por lo tanto, el desactivar ACPI puede ocasionar problemas.
Monitorice los mensajes de arranque del sistema con el comando dmesg | grep
-2i acpi después del arranque. También puede monitorizar todos los mensajes, ya
que puede que el problema no esté causado por ACPI. Si ocurre un error durante el
análisis de una tabla ACPI, la tabla más importante (que es DSDT) puede sustituirse
por una versión mejorada. En estas circunstancias, se hace caso omiso de la tabla DSDT
defectuosa del BIOS. El procedimiento se describe en Sección 21.5.4, “Resolución de
problemas” (p. 304).
En la configuración del núcleo existe un conmutador para activar los mensajes de depuración de ACPI. Si se ha compilado e instalado un núcleo con depuración ACPI, esta
información detallada puede servir de ayuda a los técnicos que traten de identificar el
error.
Si se producen problemas con el hardware o el BIOS, es aconsejable ponerse en contacto
con los fabricantes. A menudo, los fabricantes no proporcionan asistencia si se trata de
Linux, por lo que es importante que tomen conciencia de los distintos problemas. No
se tomarán el asunto en serio hasta que se den cuenta de que un número importante de
sus clientes utiliza Linux.
Gestión de energía
295
Información adicional
Puede obtener información adicional y material de ayuda sobre ACPI:
• http://www.cpqlinux.com/acpi-howto.html (información detallada
sobre procedimientos de ACPI y revisiones para DSDT)
• http://www.intel.com/technology/iapc/acpi/faq.htm (preguntas
frecuentes sobre ACPI de @Intel)
• http://acpi.sourceforge.net/ (el proyecto ACPI4Linux en Sourceforge)
• http://www.poupinou.org/acpi/ (revisiones de DSDT de Bruno Ducrot)
21.4
Detención del disco duro
En Linux, es posible poner completamente en reposo el disco duro cuando no se necesita o hacer que funcione en modo silencioso o de ahorro de energía. En los equipos
portátiles modernos, no es necesario desactivar manualmente los discos duros, ya que
éstos adoptan por sí mismos el modo de ahorro de energía cuando no se necesitan. Sin
embargo, si desea ahorrar el máximo de energía, puede probar algunos de los siguientes
métodos. Casi todas las funciones se controlan con powersaved y el módulo de gestión
de energía de YaST, que se describe con mayor profundidad en Sección 21.6, “Módulo
de gestión de energía de YaST” (p. 307).
La aplicación hdparm se utiliza para modificar los distintos ajustes del disco duro. La
opción -y hace que el disco duro pase inmediatamente al modo stand-by, mientras que
-Y lo pone en reposo. La opción hdparm -S x hace que el disco duro se apague tras
un determinado período de inactividad. Puede asignar los siguientes valores a x: 0
apaga el mecanismo, por lo que el disco duro sigue ejecutándose continuamente. Los
valores entre 1 y 240 se multiplican por 5 segundos. Los valores entre 241 y 251 se
corresponden con 30 minutos entre 1 y 11 veces.
Las posibilidades internas de ahorro de energía del disco duro se controlan mediante
la opción -B. Seleccione un valor entre 0 y 255: el mayor ahorro de energía es el 0 y
el rendimiento máximo es el 255. El resultado dependerá del disco duro que se use y
es difícil de evaluar. Para que el disco duro sea más silencioso, use la opción -M. Selec-
296
cione un valor entre 128 y 254 para definir un estado entre silencioso (128) y rápido
(254).
Sin embargo, a menudo no es fácil poner en reposo el disco duro, puesto que Linux
cuenta con numerosos procesos que escriben datos en él, por lo que lo activan constantemente. En consecuencia, es importante conocer la forma en que Linux gestiona los
datos que deben escribirse en el disco duro. En primer lugar, todos los datos se almacenan
en un buffer en la memoria RAM. El daemon de actualización del núcleo (kupdated)
se encarga de monitorizar este buffer. Cuando los datos alcancen una determinada antigüedad o cuando el buffer esté lleno hasta un nivel concreto, los datos se pasarán al
disco duro. El tamaño del buffer es dinámico y depende del tamaño de la memoria y
de la carga del sistema. Por defecto, kupdated está configurado para funcionar a pequeños
intervalos y conseguir así la mayor integridad de datos posible. Comprueba el buffer
cada 5 segundos e informa al daemon bdflush si hay datos cuya antigüedad sea superior
a los 30 segundos o si el buffer ha alcanzado un nivel de llenado del 30%. Entonces,
el daemon bdflush escribe los datos en el disco duro, aunque también lo hace independientemente de kupdated si, por ejemplo, el buffer está lleno.
AVISO: Problemas con la integridad de los datos
Hacer cambios en los ajustes del daemon de actualización del núcleo puede
poner en peligro la integridad de los datos.
Además de estos procesos, los sistemas de archivos llamados "journaling", como ReiserFS y Ext3, escriben sus metadatos en el disco duro con independencia de bdflush,
lo cual también impide que el disco duro quede inactivo. Para evitarlo, se ha desarrollado
una ampliación del núcleo específica para dispositivos móviles. Consulte /usr/src/
linux/Documentation/laptop-mode.txt para obtener más información.
Otro elemento importante es la forma en que se comportan los programas activos. Por
ejemplo, los editores de texto de calidad escriben periódicamente en el disco duro copias
de seguridad del archivo que se esté modificando, lo que hace que el disco se reactive.
Estas funciones se pueden desactivar, aunque ello va en detrimento de la integridad de
los datos.
En este contexto, el daemon de correo postfix utiliza la variable POSTFIX_LAPTOP.
Si esta variable está definida como yes (sí), postfix accederá al disco duro con menor
frecuencia. No obstante, este hecho carece de importancia si el intervalo de kupdated
se ha aumentado.
Gestión de energía
297
21.5
Paquete powersave
El paquete powersave se ocupa de la función de ahorro de energía cuando un equipo
portátil funciona en el modo de batería. No obstante, algunas de sus funciones resultan
también muy interesantes para estaciones de trabajo o servidores como, por ejemplo,
los modos stand-by y de suspensión, la función de las teclas ACPI y la puesta en reposo
los discos duros IDE.
Este paquete incorpora todas las funciones de ahorro de energía del equipo y es compatible con cualquier hardware que utilice ACPI, APM, discos duros IDE y las tecnologías
PowerNow! y SpeedStep. Todas las prestaciones de los paquetes apmd, acpid,
ospmd y cpufreqd (ahoracpuspeed) se han agrupado ahora en el paquete
powersave.. Los daemons de estos paquetes y el daemon de powersave no deben
ejecutarse simultáneamente.
Incluso aunque el sistema no disponga de todos los componentes de hardware mencionados anteriormente, se recomienda utilizar el daemon de powersave para regular la
función de ahorro de energía. Como ACPI y APM se excluyen mutuamente, sólo podrá
usar uno de ellos en su equipo. El daemon detecta automáticamente cualquier cambio
en la configuración del hardware.
21.5.1 Configuración del paquete
powersave
Normalmente, la configuración de powersave está distribuida en varios archivos:
/etc/sysconfig/powersave/common
Este archivo contiene ajustes generales para el daemon powersave. Por ejemplo, se
puede obtener una mayor cantidad de mensajes de depuración en /var/log/
messages incrementando el valor de la variable DEBUG.
/etc/sysconfig/powersave/events
El daemon powersave necesita este archivo para procesar los eventos que se producen
en el sistema. A estos eventos se les pueden asignar acciones externas o internas
(ejecutadas por el daemon). Se habla de una acción externa cuando el daemon intenta
activar un archivo ejecutable guardado en /usr/lib/powersave/scripts/
. Las acciones internas predefinidas son:
298
• ignore
• throttle
• dethrottle
• suspend_to_disk
• suspend_to_ram
• standby
• do_suspend_to_disk
• do_suspend_to_ram
• do_standby
throttle limita el procesador en función del valor establecido en
MAX_THROTTLING. Este valor depende del esquema actual. dethrottle hace
que el procesador funcione a pleno rendimiento. suspend_to_disk,
suspend_to_ram y standby desencadenan eventos de sistema para el modo
de reposo. Estas tres acciones son generalmente responsables de activar el modo de
reposo, pero siempre deben asociarse a eventos del sistema específicos.
El directorio /usr/lib/powersave/scripts contiene guiones para procesar
los eventos:
notify
Notificación acerca de un evento mediante la consola, X Window o una señal
acústica.
screen_saver
Activa el salvapantallas.
switch_vt
Es muy útil si la pantalla se muestra distorsionada después de haber estado en
reposo o en stand-by.
wm_logout
Guarda los ajustes y cierra la sesión de GNOME, KDE o de otros gestores de
ventanas.
Gestión de energía
299
wm_shutdown
Guarda los ajustes de GNOME o de KDE y apaga el sistema.
Por ejemplo, si se define la variable
EVENT_GLOBAL_SUSPEND2DISK="prepare_suspend_to_disk
do_suspend_to_disk", los dos guiones o acciones se procesarán en el orden
especificado en el momento en que el usuario ejecute el comando necesario de powersaved para el modo de reposo, que es suspend to disk (Suspender en
disco). El daemon inicia el guión externo /usr/lib/powersave/scripts/
prepare_suspend_to_disk y, una vez que el guión se ha procesado correctamente, el daemon ejecuta la acción interna do_suspend_to_disk y pone el
equipo definitivamente en modo de reposo después de que el guión haya detenido
los servicios y descargado los módulos críticos.
Las acciones para el evento de un botón de reposo (Sleep) se pueden modificar,
como en EVENT_BUTTON_SLEEP="notify suspend_to_disk". En este
caso, se informa al usuario sobre la suspensión mediante el guión externo notify
(Notificar). A continuación, se genera el evento
EVENT_GLOBAL_SUSPEND2DISK, que origina las acciones mencionadas y garantiza que el sistema pase al modo de suspensión. El guión notify se puede
personalizar usando la variable NOTIFY_METHOD en /etc/sysconfig/
powersave/common.
/etc/sysconfig/powersave/cpufreq
Contiene variables para optimizar el ajuste dinámico de la frecuencia de la CPU.
/etc/sysconfig/powersave/battery
En él se definen los límites de las baterías y otros ajustes específicos de la batería.
/etc/sysconfig/powersave/sleep
En este archivo se activan los modos de reposo y se puede definir qué módulos
críticos deben descargarse y qué servicios deben detenerse antes de que se produzca
un evento de suspensión o de stand-by. Estos módulos se cargarán y los servicios
se reiniciarán cuando el sistema se restablezca. Si lo desea, puede incluso retrasar
un modo de reposo que se haya iniciado para guardar archivos, por ejemplo. Los
ajustes por defecto afectan sobre todo a los módulos USB y PCMCIA. Hay ciertos
módulos que pueden provocar fallos en los modos de suspensión o de stand-by.
Consulte la Sección 21.5.4, “Resolución de problemas” (p. 304) para obtener más
información acerca de la identificación del error.
300
/etc/sysconfig/powersave/thermal
Activa los controles térmicos y de refrigeración. Puede obtener información adicional
sobre este tema en el archivo /usr/share/doc/packages/powersave/
README.thermal.
/etc/sysconfig/powersave/scheme_*
Este archivo contiene varios esquemas que regulan el consumo de energía en función
de las distintas situaciones de aplicación. Algunos de estos esquemas están ya preconfigurados y pueden utilizarse tal y como están. Aquí también puede almacenar
sus propios esquemas personalizados.
21.5.2 Configuración de APM y ACPI
Modos de suspensión y stand-by
Los modos de reposo están inactivos por defecto porque todavía no funcionan en algunos
equipos. Existen tres modos de reposo básicos ACPI y dos APM:
Suspender en disco (ACPI S4, suspensión APM)
Guarda todo el contenido de la memoria en el disco duro. El equipo se apaga por
completo y no consume electricidad.
Suspender en RAM (ACPI S3, suspensión APM)
Guarda los estados de todos los dispositivos en la memoria principal. Sólo la memoria
principal consume electricidad.
Stand-by (ACPI S1, stand-by APM)
Apaga algunos dispositivos (en función del fabricante).
Asegúrese de que las siguientes opciones por defecto estén configuradas en el archivo
/etc/sysconfig/powersave/events para que sea correcto el procesamiento
de los modos de suspensión, stand-by y reanudación (son los ajustes por defecto tras
la instalación de SUSE Linux):
EVENT_GLOBAL_SUSPEND2DISK=
"prepare_suspend_to_disk do_suspend_to_disk"
EVENT_GLOBAL_SUSPEND2RAM=
"prepare_suspend_to_ram do_suspend_to_ram"
EVENT_GLOBAL_STANDBY=
"prepare_standby do_standby"
EVENT_GLOBAL_RESUME_SUSPEND2DISK=
Gestión de energía
301
"restore_after_suspend_to_disk"
EVENT_GLOBAL_RESUME_SUSPEND2RAM=
"restore_after_suspend_to_ram"
EVENT_GLOBAL_RESUME_STANDBY=
"restore_after_standby"
Estados personalizados de la batería
En el archivo /etc/sysconfig/powersave/battery, puede definir tres estados
de carga de la batería (expresados en forma de porcentaje). Cuando se alcanzan dichos
estados, el sistema genera alertas o lleva a cabo acciones específicas.
BATTERY_WARNING=20
BATTERY_LOW=10
BATTERY_CRITICAL=5
En el archivo de configuración /etc/sysconfig/powersave/events se definen
las acciones o los guiones que han de ejecutarse cuando el nivel de carga es inferior al
especificado. En la Sección 21.5.1, “Configuración del paquete powersave” (p. 298) se
describe cómo se pueden modificar las acciones por defecto para los botones.
EVENT_BATTERY_NORMAL="ignore"
EVENT_BATTERY_WARNING="notify"
EVENT_BATTERY_LOW="notify"
EVENT_BATTERY_CRITICAL="wm_shutdown"
Ajuste del consumo de energía en función de las
condiciones de trabajo
El rendimiento del sistema se puede adaptar al tipo de suministro de energía. Así, por
ejemplo, el consumo de energía del sistema se puede reducir cuando el equipo esté
desconectado de la red de suministro eléctrico y funcione con batería. Del mismo modo,
el rendimiento se puede aumentar automáticamente en el momento en que el equipo se
conecte de nuevo a la red eléctrica. Para ajustar el consumo, se pueden modificar aspectos como la frecuencia de la CPU, la función de ahorro de energía de IDE y otros parámetros.
En el archivo /etc/sysconfig/powersave/events se definen las acciones
que se deben ejecutar cuando se conecta el equipo a la red eléctrica o cuando se desconecta de ella. Seleccione los esquemas que se deben usar en /etc/sysconfig/
powersave/common:
302
AC_SCHEME="performance"
BATTERY_SCHEME="powersave"
Los esquemas se almacenan en archivos en /etc/sysconfig/powersave. Los
nombres de archivo tienen el formato scheme_nombre-del-esquema. En el
ejemplo, se hace referencia a dos esquemas: scheme_performance y scheme
_powersave. Los esquemas performance, powersave, presentation y
acoustic son esquemas preconfigurados. Los esquemas existentes se pueden editar,
crear o suprimir, así como asociarlos a los distintos estados de suministro de energía
con la ayuda del módulo de gestión de energía de YaST, que se describe en la Sección 21.6, “Módulo de gestión de energía de YaST” (p. 307).
21.5.3 Funciones ACPI adicionales
Si utiliza ACPI, podrá controlar cómo responde el sistema cuando se usan las teclas
ACPI (Power, Sleep y las teclas para abrir y cerrar la cubierta). En el archivo /etc/
sysconfig/powersave/events se establece qué acciones se deben llevar a cabo.
Puede obtener información adicional sobre cada una de las opciones en este archivo de
configuración.
EVENT_BUTTON_POWER="wm_shutdown"
Al pulsar la tecla Power, el sistema apaga el gestor de ventanas correspondiente
(KDE, GNOME, fvwm, etc.).
EVENT_BUTTON_SLEEP="suspend_to_disk"
Si pulsa la tecla Sleep, el sistema pasa al modo suspender en disco.
EVENT_BUTTON_LID_OPEN="ignore"
No pasa nada cuando se abre la cubierta del equipo portátil.
EVENT_BUTTON_LID_CLOSED="screen_saver"
Cuando se abre la cubierta, se activa el salvapantallas.
Si la carga de la CPU no supera un umbral especificado durante un período de tiempo
concreto, se puede limitar su potencia. Para ello, especifique un límite de carga en
PROCESSOR_IDLE_LIMIT y un tiempo de espera en CPU_IDLE_TIMEOUT. Si
la carga de la CPU se mantiene por debajo del límite durante el tiempo de espera, se
activará el evento configurado en EVENT_PROCESSOR_IDLE.. Si la CPU vuelve a
estar ocupada, se ejecutará EVENT_PROCESSOR_BUSY.
Gestión de energía
303
21.5.4 Resolución de problemas
Todos los mensajes de error y los avisos del sistema se recogen en el archivo /var/
log/messages. Si no encuentra la información que necesita, aumente el nivel de
detalle de los mensajes de powersave usando la opción DEBUG del archivo /etc/
sysconfig/powersave/common. Establezca el valor de la variable en 7 o incluso
en 15, y reinicie el daemon. Cuanto más detallados sean los mensajes de error de
/var/log/messages, más fácil será identificar los errores. En las siguientes secciones figuran los problemas más habituales que pueden surgir con powersave.
ACPI está activado y es compatible con el hardware
pero las funciones no están disponibles
Si surgen problemas con ACPI, use el comando dmesg|grep -i acpi para buscar
la salida de dmesg en los mensajes específicos de ACPI. Para solucionar el error puede
ser necesario actualizar el BIOS. Con este fin, visite la página Web del fabricante del
equipo portátil, busque una versión actualizada del BIOS e instálela. Informe al fabricante de que debe ajustarse a las especificaciones ACPI más recientes. Si el error persiste después de actualizar el BIOS, proceda de la siguiente forma para sustituir la tabla
DSDT defectuosa en el BIOS por una DSDT actualizada:
1 Descargue una DSDT adecuada para el sistema desde http://acpi
.sourceforge.net/dsdt/tables. Compruebe si el archivo está descomprimido y compilado. Lo reconocerá por la extensión .aml (Lenguaje del equipo
ACPI, del inglés ACPI Machine Language). Si éste es el caso, continúe con el
paso 3.
2 Si la extensión de archivo de la tabla descargada es .asl (Lenguaje fuente
ACPI, del inglés ACPI Source Language), deberá compilarla con la herramienta
iasl (paquete pmtools). Ejecute el comando iasl -sa file.asl. La
versión más reciente de iasl (compilador de ACPI para Intel) está disponible en
http://developer.intel.com/technology/iapc/acpi/
downloads.htm.
3 Copie el archivo DSDT.aml donde desee (se recomienda usar /etc/DSDT
.aml). A continuación, edite /etc/sysconfig/kernel y modifique la vía
al archivo DSDT en función de los pasos anteriores. Inicie mkinitrd (paquete
304
mkinitrd). Cuando desinstale el núcleo y use mkinitrd para crear initrd,
la DSDT modificada se integrará y se cargará al arrancar el sistema.
La función de frecuencia de la CPU no funciona
Consulte las fuentes del núcleo (kernel-source) para averiguar si el procesador
es compatible. Puede que necesite usar un módulo del núcleo o una opción del módulo
especiales para activar el control de frecuencia de la CPU. Esta información está disponible en /usr/src/linux/Documentation/cpu-freq/*. En caso de que
sea necesario emplear un módulo o una opción específicos, configúrelos en el archivo
/etc/sysconfig/powersave/cpufreq mediante las variables
CPUFREQD_MODULE y CPUFREQD_MODULE_OPTS.
Los modos de suspensión y stand-by no funcionan
Se conocen varios problemas relacionados con el núcleo que pueden ser la causa de
que los modos de suspensión y stand-by no funcionen en sistemas ACPI:
• Actualmente, los sistemas con más de 1 GB de RAM no admiten el modo de suspensión.
• Los sistemas con multiprocesador o con un procesador P4 (con tecnología HyperThread) no admiten actualmente el modo de suspensión.
El problema también puede deberse a una implementación defectuosa de la DSDT
(BIOS). En este caso, deberá instalar una DSDT nueva.
En sistemas ACPI y APM: cuando el sistema trata de descargar módulos defectuosos,
el equipo se bloquea o el evento de suspensión no se activa. También puede ocurrir lo
mismo si no se descargan o no se detienen los módulos o los servicios que impiden el
paso al modo de suspensión. En ambos casos, se recomienda localizar el módulo defectuoso que ha impedido que se pase al modo de reposo. Para ello pueden utilizarse los
archivos de registro que el daemon powersave almacena en /var/log/sleep mode
.. Si el equipo ni siquiera pasa al modo de reposo, la causa del problema debe buscarse
en el módulo descargado en último lugar. Puede manipular los siguientes ajustes del
archivo /etc/sysconfig/powersave/sleep para descargar los módulos problemáticos antes de pasar a los modos de suspensión o stand-by.
UNLOAD_MODULES_BEFORE_SUSPEND2DISK=""
UNLOAD_MODULES_BEFORE_SUSPEND2RAM=""
Gestión de energía
305
UNLOAD_MODULES_BEFORE_STANDBY=""
SUSPEND2DISK_RESTART_SERVICES=""
SUSPEND2RAM_RESTART_SERVICES=""
STANDBY_RESTART_SERVICES=""
Si se utilizan los modos de suspensión o stand-by en entornos de red cambiantes o con
sistemas de archivos montados de forma remota (por ejemplo, Samba o NIS), se recomienda montarlos con automounter o añadir los servicios correspondientes como, por
ejemplo, smbfs o nfs, a las variables mencionadas arriba. En caso de que un programa
acceda a un sistema de archivos montado de forma remota antes de iniciarse el modo
de suspensión o de stand-by, el servicio no se detendrá correctamente ni el sistema de
archivos se desmontará de forma adecuada. Después de restablecer el sistema, puede
que el sistema de archivos esté dañado y deba montarse de nuevo.
Al utilizar ACPI, el daemon Powersave no detecta los
umbrales establecidos para la batería
En sistemas con ACPI, el sistema operativo puede pedir al BIOS que envíe un mensaje
cuando la carga de la batería sea inferior a un límite especificado. La ventaja de este
método es que no es necesario consultar continuamente el estado de la batería, lo que
repercutiría negativamente en el rendimiento del equipo. No obstante, puede ocurrir
que, a pesar de que el BIOS sea compatible con esta función, la notificación no se
produzca, ni siquiera cuando el nivel de carga sea inferior al especificado. Si ocurre
esto, establezca la variable FORCE_BATTERY_POLLING del archivo /etc/
sysconfig/powersave/battery en un valor afirmativo (yes) para forzar la
consulta del estado de la batería.
21.5.5 Información adicional
Hay más información disponible sobre el paquete powersave en /usr/share/doc/
packages/powersave.
306
21.6
Módulo de gestión de energía
de YaST
El módulo de gestión de energía de YaST le permite configurar todos los ajustes de
gestión de energía descritos en las secciones anteriores. Cuando se inicia el módulo
desde el Centro de control de YaST, mediante Sistema → Gestión de energía, se
muestra el primer cuadro de diálogo. Es el que se muestra en la Figura 21.1, “Selección
de esquemas” (p. 307).
Figura 21.1
Selección de esquemas
En este cuadro de diálogo, seleccione los esquemas que se deben usar para el funcionamiento con batería y con conexión a la red eléctrica. Para añadir o modificar esquemas,
haga clic en Editar perfiles. Se abrirá una descripción de los esquemas existentes como
la que se muestra en la Figura 21.2, “Descripción general de los esquemas existentes”
(p. 308).
Gestión de energía
307
Figura 21.2
Descripción general de los esquemas existentes
En la descripción general del esquema, seleccione el esquema que desee modificar y
haga clic en Editar. Para crear un esquema nuevo, haga clic en Añadir. El cuadro de
diálogo que se abre es igual en ambos casos y es el que se muestra en la Figura 21.3,
“Configuración de esquemas” (p. 309).
308
Figura 21.3
Configuración de esquemas
En primer lugar, asigne un nombre y una descripción adecuados al perfil que desee
crear o modificar. Determine si desea regular el rendimiento de la CPU para este esquema. En caso afirmativo, establezca si se deben usar las funciones de ajuste de la frecuencia y de limitación y cómo se debe hacer. En el siguiente cuadro de diálogo para el
disco duro, establezca una directiva para el uso de la función stand-by mediante la opción
Stand-by Policy a fin de obtener el máximo rendimiento o para ahorrar la máxima
cantidad de energía. Los niveles de ruido del disco duro se pueden ajustar mediante la
opción Acoustic Policy (la admiten pocos discos duros). La opción Cooling Policy
permite determinar el método de refrigeración que se debe usar. Desafortunadamente,
el BIOS sólo admite este tipo de control térmico en raras ocasiones. Consulte /usr/
share/doc/packages/powersave/README.thermal para obtener más información acerca de cómo debe usar el ventilador y los métodos pasivos de refrigeración.
También se pueden efectuar ajustes globales de gestión de energía desde el cuadro de
diálogo inicial usando las opciones Avisos de la batería, Configuración ACPI o Activar
suspend. Haga clic en Avisos de la batería para acceder al cuadro de diálogo que
muestra el nivel de carga de la batería (el que aparece en laFigura 21.4, “Nivel de carga
de la batería” (p. 310)).
Gestión de energía
309
Figura 21.4
Nivel de carga de la batería
El BIOS del sistema notifica al sistema operativo si los niveles de carga caen por debajo
de ciertos límites que se pueden configurar. En este cuadro de diálogo puede establecer
tres ajustes: Aviso del nivel de batería, Batería baja y Nivel crítico de batería. Cuando
la carga de la batería cae por debajo de estos umbrales, se llevan a cabo acciones específicas. Normalmente, con los dos primeros estados se envía simplemente una nota al
usuario. Con el tercero de ellos, se apaga el sistema porque la batería que queda no es
suficiente para continuar con el funcionamiento del sistema. Seleccione los niveles de
carga adecuados y la acción que se debe realizar. A continuación, haga clic en Aceptar
para volver al cuadro de diálogo de inicio.
310
Figura 21.5
Configuración ACPI
La opción Configuración ACPI se utiliza para acceder al cuadro de diálogo que permite
configurar las teclas ACPI. Es el que se muestra en la Figura 21.5, “Configuración
ACPI” (p. 311). Los ajustes para las teclas ACPI determinan cómo debe responder el
sistema ante ciertos conmutadores; por ejemplo, puede configurar cómo debe responder
el sistema cuando se pulsen los botones Power o Sleep o cuando se cierre la cubierta
del equipo portátil. Haga clic en Aceptar para finalizar la configuración y volver al
cuadro de diálogo de inicio.
Haga clic en Activar suspend para acceder a un cuadro de diálogo que le permite establecer si los usuarios del sistema pueden usar las funciones de suspensión y stand-by
y, en caso afirmativo, cómo deben usarlas. Haga clic en Aceptar para volver al cuadro
de diálogo principal. Haga clic en Aceptar de nuevo para salir del módulo y confirmar
los ajustes de gestión de energía.
Gestión de energía
311
Comunicación inalámbrica
22
Hay varias maneras de utilizar los sistemas Linux para comunicarse con otros equipos,
teléfonos móviles o dispositivos periféricos. Para conectar portátiles en red, se puede
utilizar el método WLAN (LAN inalámbrica). Para conectar entre sí componentes de
sistema individuales (ratón y teclado), dispositivos periféricos, teléfonos móviles, dispositivos PDA y equipos independientes, se puede utilizar el sistema Bluetooth. IrDA
es el más utilizado para establecer comunicación con dispositivos PDA y teléfonos
móviles. Este capítulo presenta estas tres tecnologías y su modo de configuración.
22.1
LAN inalámbrica
Las redes de área local (LAN) inalámbricas de han convertido en un aspecto imprescindible de la informática móvil. Hoy en día, la mayoría de portátiles cuentan con tarjetas
WLAN integradas. La organización IEEE (Instituto de ingenieros eléctricos y electrónicos) preparó el estándar 802.11 para la comunicación inalámbrica de las tarjetas
WLAN. En un principio este estándar ofrecía una velocidad máxima de transmisión de
2 MBit/s. Desde entonces se han añadido varios suplementos para aumentar la velocidad
de los datos. En estos suplementos se definen detalles como la modulación, la salida y
las velocidades de transmisión:
Comunicación inalámbrica
313
Tabla 22.1
Descripción de los distintos estándares de WLAN
Nombre
Banda
(GHz)
Velocidad máxima de transmisión (MBit/s)
Nota
802.11
2,4
2
Obsoleto, ya no queda prácticamente ningún dispositivo final
disponible
802.11b
2,4
11
Muy extendido
802.11a
5
54
Menos común
802.11g
2,4
54
Compatibilidad inversa con el
11b
Además, hay estándares patentados como la variación 802.11b de Texas Instruments
con una velocidad máxima de transmisión de 22 MBit/s (en ocasiones se hace referencia
a ella como 802.11b+). Sin embargo, la popularidad de las tarjetas que usan este estándar
es limitada.
22.1.1 Hardware
SUSE Linux no admite las tarjetas 802.11. Sí que son compatibles la mayoría de las
tarjetas que usen los estándares 802.11a, 802.11b y 802.11g. Las nuevas tarjetas normalmente cumplen con el estándar 802.11g pero siguen estando disponibles las que
usan el 802.11b. Normalmente, se admiten las tarjetas con los chips siguientes:
• Aironet 4500, 4800
• Atheros 5210, 5211, 5212
• Atmel at76c502, at76c503, at76c504, at76c506
• Intel PRO/Wireless 2100, 2200BG, 2915ABG
• Intersil Prism2/2.5/3
314
• Intersil PrismGT
• Lucent/Agere Hermes
• Ralink RT2400, RT2500
• Texas Instruments ACX100, ACX111
• ZyDAS zd1201
También son compatibles un buen número de tarjetas antiguas que apenas se usan y
que ya no están disponibles. Hay disponible una lista exhaustiva de tarjetas WLAN y
chips que se usan en el sitio Web de AbsoluteValue Systems: http://www
.linux-wlan.org/docs/wlan_adapters.html.gz. http://wiki
.uni-konstanz.de/wiki/bin/view/Wireless/ListeChipsatz ofrece
una descripción general de los distintos chips de WLAN.
Algunas tarjetas necesitan una imagen de firmware que debe cargarse en la tarjeta
donde se ha inicializado el controlador. Este es el caso de Intersil PrismGT, Atmel, TI
ACX100 y ACX111. El firmware se puede instalar fácilmente con la actualización en
línea de YaST. El firmware para las tarjetas Intel PRO/Wireless está incluido en SUSE
Linux y YaST las instala automáticamente tan pronto como se ha detectado una tarjeta
de este tipo. Hay disponible más información sobre este asunto en la vía /usr/share/
doc/packages/wireless-tools/README.firmware del sistema, una vez
instalado.
Se pueden usar las tarjetas sin compatibilidad nativa de Linux ejecutando la aplicación
ndiswrapper. Ésta utiliza los controladores de Windows que vienen con la mayoría de
las tarjetas WLAN. Encontrará una descripción de ndiswrapper en /usr/share/
doc/packages/ndiswrapper/README.SUSE, una vez instalado el paquete
ndiswrapper. Para obtener información detallada acerca de ndiswrapper, consulte
el sitio Web del proyecto en http://ndiswrapper.sourceforge.net/
support.html.
22.1.2 Función
En las redes inalámbricas, se usan varias técnicas y configuraciones para asegurar conexiones rápidas, de alta calidad y seguras. Los distintos tipos operativos se adaptan a
Comunicación inalámbrica
315
distintas configuraciones. Puede ser difícil seleccionar el método correcto de autenticación. Los métodos de cifrado disponibles tienen distintas ventajas y riesgos.
Modo operativo
Básicamente, las redes inalámbricas pueden clasificarse como redes gestionadas o adhoc. Las redes gestionadas cuentan con un elemento de gestión: el punto de acceso. En
este modo (al que también se hace referencia como "modo de infraestructura"), todas
las conexiones de las estaciones WLAN en la red funcionan por el punto de acceso,
que también puede servir como conexión a una ethernet. Las redes ad-hoc no cuentan
con un punto de acceso. Las estaciones se comunican directamente unas con otras. La
velocidad de transmisión y el número de estaciones participantes están muy limitadas
en las redes ad-hoc. Por lo tanto, un punto de acceso suele ser más eficaz. Es incluso
posible usar una tarjeta WLAN como punto de acceso. La mayoría de tarjetas admiten
esta funcionalidad.
Debido a que es más fácil interceptar y poner en peligro una red inalámbrica que una
fija, los distintos estándares incluyen métodos de autenticación y de cifrado. En la versión
original del estándar IEEE 802.11, se describen con el término WEP. Sin embargo,
debido a que WEP ha resultado ser inseguro (consulte la “Seguridad” (p. 322)), la industria de WLAN (unida bajo el nombre Wi-Fi Alliance) ha definido una nueva extensión
denominada "WPA" que debería eliminar los puntos vulnerables de WEP. El estándar
posterior IEEE 802.11i (también conocido como "WPA2" debido a que WPA está basado en la versión no final de 802.11i) incluye WPA y algunos otros métodos de autenticación y cifrado.
Autenticación
Para garantizar que sólo se puedan conectar las estaciones autorizadas, en las redes
gestionadas se usan varios mecanismos de autenticación:
Abrir
Un sistema abierto es un sistema que no requiere autenticación. Cualquier estación
puede unirse a la red. No obstante, se puede usar el cifrado WEP (consulte la “Cifrado” (p. 318)).
Clave compartida (según el estándar IEEE 802.11)
En este procedimiento, se usa la clave WEP para la autenticación. Sin embargo, no
se recomienda este procedimiento porque la clave WEP es más propensa a recibir
316
ataques. Todo lo que necesita hacer un atacante es escuchar el tiempo suficiente la
comunicación entre la estación y el punto de acceso. Durante el proceso de autenticación, ambos lados intercambian la misma información, una vez de manera cifrada
y otra no cifrada. Esto hace posible que la clave se reconstruya con herramientas
adecuadas. Puesto que este método hace uso de la clave WEP para la autenticación
y el cifrado, no mejora la seguridad de la red. Una estación que tiene la clave WEP
correcta puede autenticar, cifrar y descifrar. Una estación que no cuenta con la clave
correcta no puede descifrar los paquetes recibidos. De la misma forma, no puede
comunicarse, sin tener en cuenta si tuvo que autenticarse a sí misma.
WPA-PSK (según el estándar IEEE 802.1x)
WPA-PSK (PSK significa "preshared key", clave compartida previamente) funciona
de manera parecida al procedimiento de clave compartida. Todas las estaciones
participantes y el punto de acceso necesitan la misma clave. La clave tiene 256 bits
de longitud y normalmente se introduce como una contraseña. Este sistema no necesita una gestión compleja de claves como WPA-EAP y es más adecuado para uso
privado. Por tanto, en ocasiones se hace referencia a WPA-PSK como “Home”.
WPA-EAP (según el estándar IEEE 802.1x)
En realidad, WPA-EAP no es un sistema de autenticación sino un protocolo para
transportar información de autenticación. WPA-EAP se utiliza para proteger redes
inalámbricas en empresas. En redes privadas, apenas se usa. Por esta razón, a veces
se hace referencia a WPA-EAP como WPA “Enterprise”.
WPA-EAP necesita un servidor Radius para autenticar usuarios. EAP ofrece tres
métodos distintos de conectar y autenticar con el servidor: TLS (Seguridad de nivel
de transporte), TTLS (Seguridad de nivel de transporte con forma de túnel) y PEAP
(Protocolo de autenticación extensible protegida). En pocas palabras, estas opciones
funcionan de la siguiente forma:
EAP-TLS
La autenticación TLS se basa en el intercambio mutuo de certificados tanto para
el servidor como para el cliente. En primer lugar, el servidor presenta este certificado al cliente donde se evalúa. Si el certificado se considera válido, el cliente
presenta su certificado al servidor. Aunque TLS es seguro, necesita una infraestructura de gestión de certificación en funcionamiento en la red. Esta infraestructura apenas se encuentra en redes privadas.
Comunicación inalámbrica
317
EAP-TTLS y PEAP
Tanto TTLS como PEAP son protocolos de dos fases. En la primera, se establece
un modo seguro y en la segunda se intercambian los datos de autenticación del
cliente. Necesitan mucho menos sobrecargo de gestión de certificación que TLS
(o ninguno en absoluto).
Cifrado
Existen varios métodos de cifrado para asegurar que ninguna persona sin autorización
pueda leer los paquetes de datos que se intercambian en una red inalámbrica o tenga
acceso a la red:
WEP (definido en IEEE 802.11)
Este estándar hace uso del algoritmo de cifrado RC4, con una longitud de clave
original de 40 bits, posteriormente con 104 bits. Con frecuencia, la longitud es de
64 bits o 128 bits, dependiendo de si se incluyen los 24 bits del vector de inicialización. Sin embargo, este estándar tiene algunos puntos débiles. Los ataques contra
las claves generadas por este sistema pueden tener éxito. No obstante, es mejor usar
WEP que no cifrar en absoluto la red.
TKIP (definido en WPA/IEEE 802.11i)
Este protocolo de gestión de claves definido en el estándar WPA emplea el mismo
algoritmo de cifrado que WEP pero elimina su debilidad. Debido a que se genera
una nueva clave para cada paquete de datos, los ataques contra estas claves son infructuosos. TKIP se usa junto con WPA-PSK.
CCMP (definido en IEEE 802.11i)
CCMP describe la gestión de claves. Normalmente se usa en conexión con WPAEAP, pero también se puede usar con WPA-PSK. El cifrado tiene lugar según AES
y es más fuerte que el cifrado RC4 del estándar WEP.
22.1.3 Configuración con YaST
Para configurar la tarjeta de red inalámbrica, inicie el módulo Tarjeta de red de YaST.
En Configuración de la dirección de red, seleccione el tipo de dispositivo Inalámbrico
y haga clic en Siguiente. En Configuración de la tarjeta de red inalámbrica que aparece
en la Figura 22.1, “YaST: configuración de la tarjeta de red inalámbrica” (p. 319), realice
los ajustes básicos para la operación WLAN:
318
Figura 22.1
YaST: configuración de la tarjeta de red inalámbrica
Modo operativo
Las estaciones pueden integrarse en una WLAN de tres modos distintos. El modo
adecuado depende de la red en la que comunicar: Ad-hoc (red par a par sin punto
de acceso), Gestionado (la red está gestionada por un punto de acceso) o Maestro
(la tarjeta de red debería usarse como el punto de acceso). Para usar cualquiera de
los modos WPA-PSK o WPA-EAP, el modo operativo debe definirse en Gestionado.
Nombre de la red (ESSID)
Todas las estaciones de una red inalámbrica necesitan el mismo ESSID para comunicarse entre ellas. Si no se especifica nada, la tarjeta seleccionará automáticamente
un punto de acceso que puede no ser el deseado.
Modo de autenticación
Seleccione un método de autenticación adecuado para la red: Abierto, Clave compartida, WPA-PSK o WPA-EAP. Si selecciona la autenticación WPA, deberá definir
un nombre de red.
Configuración avanzada
Este botón abre un cuadro de diálogo para la configuración detallada de la conexión
WLAN. Más adelante se ofrecerá una descripción detallada de este cuadro de diálogo.
Comunicación inalámbrica
319
Después de completar los ajustes básicos, la estación estará lista para su implantación
en la WLAN.
IMPORTANTE: Seguridad en redes inalámbricas
Asegúrese de usar los métodos de cifrado y autenticación compatibles para
proteger el tráfico de la red. Las conexiones WLAN sin cifrar permiten que
terceros intercepten todos los datos de la red. Un cifrado débil (WEP) es mejor
que no tener ninguno. Consulte la “Cifrado” (p. 318) y la “Seguridad” (p. 322)
para obtener información.
Según el método de autenticación seleccionado, YaST le pedirá que defina los ajustes
en otro cuadro de diálogo. En el caso de Abierto no hay nada que configurar porque
este ajuste implanta la operación no cifrada sin autenticación.
Claves WEP
Defina un tipo de clave de entrada. Elija entre Contraseña, ASCII o Hexadecimal.
Puede mantener hasta cuatro claves distintas para cifrar los datos transmitidos. Haga
clic en Claves múltiples para entrar en el cuadro de diálogo de configuración. Defina
la longitud de la clave: 128 bits o 64 bits. El ajuste por defecto es 128 bits. En el
área de la lista situada en la parte inferior del cuadro de diálogo, se pueden especificar hasta cuatro claves distintas que la estación usará para cifrar. Pulse Definir
como predeterminada para definir una de ellas como la clave por defecto. A menos
que lo cambie, YaST usará la primera clave introducida como la clave por defecto.
Si se suprime la clave estándar, una de las otras claves deberá marcarse manualmente
como la clave por defecto. Haga clic en Editar para modificar las entradas de la
lista existentes o crear nuevas claves. En este caso, una ventana emergente le pedirá
que seleccione un tipo de entrada (Contraseña, ASCII o Hexadecimal). Si selecciona
Contraseña, escriba una palabra o cadena de caracteres a partir de la cual se generará una clave de acuerdo con la longitud previamente especificada. ASCII necesita
una entrada de 5 caracteres para una clave de 64 bits y 13 caracteres para una de
128 bits. En el caso de Hexadecimal introduzca 10 caracteres para una clave de 64
bits o 26 caracteres para una de 128 bits en notación hexadecimal.
WPA-PSK
Para introducir una clave para WPA-PSK, seleccione el método de entrada: Contraseña o Hexadecimal. En el modo Contraseña la entrada debe tener de 8 a 63 caracteres. En el modo Hexadecimal introduzca 64 caracteres.
320
WPA-EAP
Introduzca las credenciales que el administrador de red le haya proporcionado. En
el caso de TLS, introduzca el certificado de cliente y el certificado de servidor.
TTLS y PEAP necesitan la identidad y la contraseña. El certificado de servidor es
opcional. YaST busca cualquier certificado en /etc/cert así que guarde los
certificados que reciba en esa ubicación y restrinja el acceso a estos archivos a 0600
(derechos de lectura y escritura del propietario).
Haga clic en Configuración avanzada para abandonar el cuadro de diálogo de la configuración básica de la conexión WLAN e introducir la configuración avanzada. Las siguientes opciones están disponibles en este cuadro de diálogo:
Canal
La especificación de un canal en el que la estación WLAN debería trabajar sólo es
necesaria en los modos Ad-hoc y Maestro. En el modo Gestionado, la tarjeta busca
automáticamente los canales disponibles para los puntos de acceso. En el modo Adhoc seleccione uno de los 12 canales que se ofrecen para la comunicación de la estación con las demás. En el modo Maestro, determine el canal en el que la tarjeta
debería ofrecer funciones de punto de acceso. El ajuste por defecto para esta opción
es Auto.
Tasa de bits
Según el rendimiento de la red, puede querer definir una tasa de bits para la transmisión de un punto a otro. En el ajuste por defecto Auto, el sistema intentará usar
la tasa de transmisión de datos más alta posible. Algunas tarjetas WLAN no admiten
este ajuste de tasa de bits.
Puntos de acceso
En un entorno con varios puntos de acceso, puede seleccionarse uno de ellos previamente especificando la dirección MAC.
Usar gestión de energía
Cuando está viajando, utilice las tecnologías de ahorro de energía para maximizar
el tiempo de funcionamiento de la batería. Hay más información disponible sobre
la gestión de energía en el Capítulo 21, Gestión de energía (p. 285).
Comunicación inalámbrica
321
22.1.4 Utilidades
hostap (paquete hostap) se usa para ejecutar una tarjeta WLAN como un punto de
acceso. Hay más información disponible sobre este paquete en la página de principal
del proyecto (http://hostap.epitest.fi/).
kismet (paquete kismet) es una herramienta de diagnóstico de red con la que escuchar
el tráfico de paquetes de WLAN. De esta forma, también puede detectar cualquier intento de intrusión en la red. Hay más información disponible en http://www
.kismetwireless.net/ y en la lista concisa de comandos.
22.1.5 Sugerencias y consejos prácticos
para configurar una WLAN
Estos consejos le ayudarán a conseguir más velocidad y estabilidad además de mejorar
algunos aspectos de seguridad de la WLAN.
Estabilidad y velocidad
El rendimiento y fiabilidad de una red inalámbrica depende principalmente de si las
estaciones participantes reciben una señal limpia de las otras estaciones. Los obstáculos
como los cortafuegos contribuyen a debilitar la señal. Cuanto más disminuye la fuerza
de la señal, más se ralentiza la transmisión. Durante la operación, compruebe la fuerza
de la señal con la utilidad iwconfig en la línea de comando (campo Calidad del
enlace) o con KInternet en KDE. Si tiene problemas con la calidad de la señal,
pruebe a configurar los dispositivos en otro lugar o a ajustar la posición de las antenas
de los puntos de acceso. Hay antenas auxiliares que mejoran en gran medida la recepción
para muchas tarjetas PCMCIA WLAN. La tasa especificada por el fabricante, como
54 MBit/s, es un valor nominal que representa la velocidad máxima teórica. En la
práctica, el rendimiento máximo de los datos no es superior a la mitad de este valor.
Seguridad
Si desea configurar una red inalámbrica, recuerde que cualquier persona dentro de su
rango de transmisión puede acceder fácilmente si no se implantan medidas de seguridad.
Por tanto, asegúrese de activar un método de cifrado. Todas las tarjetas WLAN y los
322
puntos de acceso admiten el cifrado WEP. Aunque no es completamente seguro, presenta un obstáculo a un atacante potencial. WEP normalmente es suficiente para el uso
privado. WPA-PSK sería incluso mejor pero no está implantado en puntos de acceso
más antiguos o routers con funciones de WLAN. En algunos dispositivos, puede implantarse WPA mediante una actualización de firmware. Además, Linux no admite
WPA en todos los componentes de hardware. En el momento de la redacción de este
documento, WPA sólo funcionaba con tarjetas que usaban chips Atheros, Intel
PRO/Wireless o Prism2/2.5/3. En el caso de Prism2/2.5/3, WPA sólo funciona si se
utiliza el controlador de hostap (consulte la“Problemas con las tarjetas Prism2” (p. 323)).
Si WPA no está disponible, WEP es mejor que no usar ningún cifrado. En empresas
con requisitos avanzados de seguridad, las redes inalámbricas sólo deberían funcionar
con WPA.
22.1.6 Resolución de problemas
Si la tarjeta WLAN no responde, compruebe si ha descargado el firmware necesario.
Consulte la Sección 22.1.1, “Hardware” (p. 314). Los párrafos que vienen a continuación
explican algunos problemas conocidos.
Varios dispositivos de red
Los portátiles modernos normalmente tienen una tarjeta de red y una WLAN. Si ha
configurado ambos dispositivos con DHCP (asignación automática de direcciones), es
posible que tenga problemas con la resolución de nombres y el gateway por defecto.
Este problema es fácilmente identificable porque puede hacer ping en el router pero no
puede navegar por Internet. La base de datos de asistencia técnica en http://portal
.suse.com cuenta con un artículo sobre este asunto. Para encontrar el artículo, introduzca “DHCP” en el cuadro de diálogo de búsqueda.
Problemas con las tarjetas Prism2
Hay varios controladores disponibles para dispositivos con chips Prism2. Esas tarjetas
funcionan relativamente bien con los distintos controladores. Con estas tarjetas, sólo
es posible usar WPA con el controlador hostap. Si una de esas tarjetas no funciona correctamente, no funciona en absoluto o desea usar WPA, lea /usr/share/doc/
packages/wireless-tools/README.prism2.
Comunicación inalámbrica
323
WPA
La compatibilidad de WPA es bastante reciente en SUSE Linux y todavía está en fase
de desarrollo. Por tanto, YaST no admite la configuración de todos los modos de autenticación de WPA. No todas las tarjetas LAN inalámbricas y controladores admiten
WPA. Algunas tarjetas necesitan una actualización de firmware para habilitar WPA.
Si desea usar WPA, lea /usr/share/doc/packages/wireless-tools/
README.wpa.
22.1.7 Información adicional
Las páginas de Internet de Jean Tourrilhes, desarrollador de las herramientas inalámbricas para Linux, contienen información muy útil y valiosa sobre redes inalámbricas.
Consulte http://www.hpl.hp.com/personal/Jean_Tourrilhes/Linux/
Wireless.html.
22.2
Bluetooth
Bluetooth es una tecnología inalámbrica que permite conectar varios dispositivos, como
teléfonos móviles, PDA, dispositivos periféricos o componentes del sistema, como el
teclado o el ratón. El nombre tiene su origen en el rey danés Harold Bluetooth, que logró
unir varias facciones enfrentadas de la región escandinava. El logotipo de Bluetooth se
basa en las runas de sus iniciales “H” (parecido a una estrella) y “B.”
Bluetooth se diferencia de IrDA en algunos aspectos importantes: por una parte, los
dispositivos no necesitan “verse” el uno al otro directamente y, por otra, varios dispositivos pueden agruparse y formar redes completas. No obstante, la transferencia máxima
de datos es de 720 Kbps (en la versión actual, que es la 1.2). En teoría, con Bluetooth
se pueden establecer conexiones entre dispositivos separados por una pared. En la
práctica, sin embargo, esto depende del tipo de pared y de la clase de dispositivos.
Existen tres clases de dispositivos con alcances de transmisión de entre 10 y 100 metros.
324
22.2.1 Fundamentos
En las siguientes secciones se describen los principios básicos del funcionamiento de
Bluetooth. Conozca qué requisitos de software se deben cumplir, cómo interactúa
Bluetooth con su sistema y cómo configura Bluetooth el trabajo mediante perfiles.
Software
Para poder utilizar Bluetooth es necesario contar con un adaptador Bluetooth (integrado
en el dispositivo o bien un dispositivo externo), controladores y el stack de protocolo
para Bluetooth. El núcleo de Linux contiene ya los controladores básicos para usar
Bluetooth. En cuanto al stack de protocolo, se utiliza el sistema Bluez. Para asegurarse
de que las aplicaciones funcionan con Bluetooth, es necesario instalar los paquetes básicos bluez-libs y bluez-utils. Dichos paquetes proporcionan servicios y
utilidades que el sistema necesita. Además, para algunos adaptadores como Broadcom
o AVM BlueFritz!, se requiere también el paquete bluez-firmware. El paquete
bluez-cups permite imprimir a través de conexiones Bluetooth.
Interacción general
Los sistemas Bluetooth están formados por cuatro capas interdependientes, cada una
de las cuales cumple una función determinada:
Hardware
El adaptador y un controlador adecuado que garantiza la compatibilidad con el núcleo
de Linux.
Archivos de configuración
Se utilizan para controlar el sistema Bluetooth.
Daemons
Servicios que proporcionan diversas funciones y que están controlados a través de
los archivos de configuración.
Aplicaciones
Programas que ponen al alcance del usuario las funciones proporcionadas por los
daemons y que les permiten controlar dichas funciones.
Comunicación inalámbrica
325
Al conectar un adaptador Bluetooth, el controlador correspondiente se carga a través
del sistema HotPlug. Una vez que el controlador está cargado, se comprueba por medio
de los archivos de configuración si Bluetooth debe iniciarse. En caso afirmativo, se
determina qué servicios deben iniciarse y, dependiendo de estos datos, se activan los
daemons correspondientes. Los adaptadores de Bluetooth se prueban en la instalación.
Si se encuentran uno o varios, Bluetooth se activa. De lo contrario, el sistema Bluetooth
se desactiva. Los dispositivos Bluetooth que se añadan posteriormente deberán habilitarse de forma manual.
Perfiles
Los servicios en Bluetooth se definen por medio de perfiles como, por ejemplo, el
perfil de transferencia de archivos, el perfil de impresión básica y el perfil de red de
área personal. Para que un dispositivo pueda utilizar un servicio de otro, ambos deben
entender el mismo perfil. Desafortunadamente, ni el manual ni la caja del dispositivo
suelen incluir esta información. Otro problema es que algunos fabricantes respetan escrupulosamente la definición de los perfiles individuales, pero otros no. A pesar de todo
esto, las comunicaciones entre los dispositivos suelen funcionar sin problema.
En el siguiente texto, los dispositivos locales son los que están conectados físicamente
al equipo. Los demás dispositivos que sólo pueden acceder mediante conexiones inalámbricas reciben el nombre de "dispositivos remotos".
22.2.2 Configuración
En esta sección se presenta la configuración de Bluetooth. Conozca qué archivos de
configuración participan, qué herramientas se necesitan y cómo se configura Bluetooth
con YaST o de forma manual.
Configuración de Bluetooth con YaST
El módulo Bluetooth de YaST (que se muestra en la Figura 22.2, “Configuración de
Bluetooth con YaST” (p. 327)) le permite configurar la compatibilidad de Bluetooth
con su sistema. En el momento en que HotPlug detecta un adaptador Bluetooth en el
sistema (por ejemplo, durante el arranque o cuando se conecta un adaptador), Bluetooth
se inicia automáticamente con los ajustes establecidos en este módulo.
326
Figura 22.2
Configuración de Bluetooth con YaST
En el primer paso de la configuración, debe determinar si los servicios Bluetooth tienen
que iniciarse en el sistema. Si ha habilitado los servicios de Bluetooth, hay dos cosas
que se pueden configurar. En primer lugar, el Nombre del dispositivo. Éste es el nombre
que muestran otros dispositivos cuando se detecta su equipo. Hay dos marcadores de
posición disponibles: %h hace referencia al nombre de host del sistema (es útil, por
ejemplo, si se usa una asignación dinámica mediante DHCP) y %d, que inserta el número de interfaz (es útil sólo si dispone de más de un adaptador Bluetooth en el equipo).
Por ejemplo, si escribe Portátil %h en el campo y DHCP asigna el nombre
unit123 al equipo, los demás dispositivos remotos verán su equipo con el nombre
Portátil unit123.
El parámetro Administrador de seguridad está relacionado con el comportamiento del
sistema local cuando un dispositivo remoto intenta conectarse. La diferencia radica en
la gestión que se hace del número PIN. Se puede establecer que cualquier dispositivo
pueda conectarse sin usar un PIN o se puede determinar cómo se elige el PIN correcto
en caso de que se necesite uno. Puede especificar un PIN (almacenado en un archivo
de configuración) en el campo de entrada pertinente. Si un dispositivo intenta conectarse,
usará en primer lugar este PIN. Si falla, intentará conectarse sin PIN. Para obtener la
mayor seguridad, se aconseja elegir Pedir siempre el PIN al usuario. Esta opción permite usar diferentes PIN para los distintos dispositivos remotos.
Comunicación inalámbrica
327
Haga clic en Configuración avanzada del daemon para acceder al cuadro de diálogo
con objeto de seleccionar y configurar los servicios disponibles (llamados perfiles en
Bluetooth). Se muestra una lista de todos los servicios disponibles, los cuales puede
activar o desactivar con los botones de activación o desactivación. Haga clic en Editar
para abrir un cuadro de diálogo en el que podrá especificar argumentos adicionales
para el servicio seleccionado (daemon). No haga ningún cambio, a menos que esté familiarizado con el servicio. Después de configurar el daemon, salga de este cuadro de
diálogo haciendo clic en Aceptar.
En el cuadro de diálogo principal, haga clic en Opciones de seguridad para acceder al
cuadro de diálogo de seguridad con objeto de especificar las opciones de cifrado, autenticación y exploración. A continuación, salga del cuadro de diálogo de seguridad para
volver al principal. Cuando cierre el cuadro de diálogo principal con la opción Finalizar,
el sistema Bluetooth estará listo para su uso.
Desde el cuadro de diálogo principal, puede acceder también al cuadro de diálogo
Clases de dispositivos y servicios. Los dispositivos Bluetooth se agrupan en distintas
clases de dispositivos. En este cuadro de diálogo, elija la clase adecuada para su equipo
como, por ejemplo, Escritorio o Portátil. La clase de dispositivo no es muy relevante,
a diferencia de las clases de servicios, que también se configuran aquí. En ocasiones,
los dispositivos Bluetooth remotos como, por ejemplo, los teléfonos móviles, sólo
permiten ciertas funciones si pueden detectar la clase de servicios adecuada establecida
en el sistema. Suele ser el caso de los teléfonos móviles que esperan una clase llamada
Transferencia de objetos antes de permitir la transferencia de archivos con el equipo.
Puede elegir varias clases, aunque no es eficaz seleccionarlas todas sólo “por si acaso”.
La selección por defecto suele ser adecuada en la mayoría de los casos.
Para usar Bluetooth para configurar una red, active PAND en el cuadro de diálogo
Configuración avanzada del daemon y defina el modo del daemon con Editar. Para
que la conexión de red Bluetooth funcione, pand debe operar en el modo de escucha y
el par en el modo de búsqueda. El modo por defecto es el de escucha. Si es necesario,
ajuste el modo del pand local. Además, configure le interfaz bnepX (X hace referencia
al número de dispositivo en el sistema) en el módulo Tarjeta de red de YaST.
Configuración manual de Bluetooth
Los archivos de configuración para los distintos componentes del sistema Bluez se encuentran en el directorio /etc/bluetooth. La única excepción es el archivo /etc/
328
sysconfig/bluetooth para iniciar los componentes, y que se modifica mediante
el módulo YaST.
Los archivos de configuración que se describen a continuación sólo puede modificarlos
el usuario Root. Actualmente no hay ninguna interfaz gráfica que permita cambiar
todos los ajustes, aunque los más importantes se pueden definir usando el módulo
Bluetooth de YaST, que se describe en la “Configuración de Bluetooth con YaST”
(p. 326). Los demás ajustes sólo deben modificarlos los usuarios experimentados en
circunstancias especiales. No obstante, los ajustes por defecto suelen ser adecuados.
Un número PIN proporciona una protección básica frente a conexiones no deseadas.
Los teléfonos móviles suelen pedir este número PIN cuando establecen el primer contacto (o al configurar un contacto de dispositivo en el teléfono). Para que dos dispositivos
puedan comunicarse entre sí, ambos deben identificarse con el mismo PIN. En el
equipo, el número PIN se encuentra en el archivo /etc/bluetooth/pin.
IMPORTANTE: Seguridad en las conexiones Bluetooth
El uso de números PIN no garantiza que la transmisión entre dos dispositivos
sea totalmente segura. Tenga en cuenta que tanto la autenticación como el
cifrado de las conexiones Bluetooth están desactivados por defecto. La activación de la autenticación y del cifrado puede provocar problemas de comunicación con algunos dispositivos Bluetooth.
En el archivo de configuración /etc/bluetooth/hcid.conf se pueden modificar
varios ajustes, tales como los nombres de dispositivos y el modo de seguridad. No
obstante, los ajustes por defecto suelen ser adecuados. El archivo incluye comentarios
que describen las opciones de los distintos ajustes.
En el archivo se incluyen dos secciones, una de ellas dedicada a las opciones y otra a
los dispositivos. La primera contiene información general que usa hcid para el inicio.
La segunda sección incluye ajustes para cada dispositivo Bluetooth local.
Uno de los ajustes más importantes de la sección de opciones es security auto;
(Seguridad automática). Si se configura en auto (Automática), hcid intentará usar el
PIN local para las conexiones entrantes. Si se produce un fallo, cambiará a none
(Ninguno) y se establecerá la conexión de todos modos. Para obtener una mayor seguridad, este ajuste por defecto debe establecerse en user (Usuario) con objeto de asegurarse de que se solicite un número PIN al usuario cada vez que se establezca una conexión.
Comunicación inalámbrica
329
En la sección de dispositivos puede especificar el nombre con el que se mostrará el
equipo en el otro extremo de la conexión. En esta sección se define la clase de dispositivo como, por ejemplo, Desktop (Escritorio), Laptop (Portátil) o Server (Servidor). La autenticación y el cifrado también se habilitan o inhabilitan desde aquí.
22.2.3 Utilidades y componentes del
sistema
El uso de Bluetooth depende de la interacción de varios servicios. Como mínimo, es
necesario que se estén ejecutando dos daemons en segundo plano: hcid (daemon de la
interfaz del controlador del host), que actúa como interfaz del dispositivo Bluetooth y
lo controla; y sdpd (daemon del protocolo de descubrimiento de servicios), mediante
el cual un dispositivo puede averiguar qué servicios ofrece el host. Si no se activan
automáticamente al iniciar el sistema, tanto hcid como sdpd puede activarse con el comando rcbluetooth start. Este comando se debe ejecutar como usuario Root.
A continuación, se describen las principales herramientas de shell que se pueden usar
para trabajar con Bluetooth. Aunque ya existen diversos componentes gráficos para
manejar Bluetooth, merece la pena conocer estos programas.
Algunos de estos comandos sólo se pueden ejecutar como usuario Root, por ejemplo,
el comando l2ping device_address, con el que puede probar la conexión a un
dispositivo remoto.
hcitool
Mediante hcitool es posible averiguar si se han encontrado dispositivos locales y remotos.
El comando hcitool dev muestra una lista de los dispositivos locales. La salida
genera una línea con el formato nombre_interfaz dirección_dispositivo
para cada dispositivo local detectado.
Para detectar dispositivos remotos, puede utilizarse el comando hcitool inq. Se
devuelven tres valores para cada dispositivo detectado: la dirección del dispositivo, la
diferencia horaria y la clase de dispositivo. La dirección del dispositivo es importante
porque los otros comandos la usan para identificar el dispositivo de destino. La diferencia
horaria se usa fundamentalmente para propósitos técnicos. La clase hace referencia al
tipo de dispositivo y de servicio como un valor hexadecimal.
330
El comando hcitool name dirección_dispositivo se puede usar para determinar el nombre de un dispositivo remoto. Si se trata de un equipo remoto, la clase
y el nombre de dispositivo deben coincidir con la información que figura en /etc/
bluetooth/hcid.conf. Las direcciones de los dispositivos locales generan un
error.
hciconfig
El comando /usr/sbin/hciconfig proporciona información adicional sobre el
dispositivo local. Si hciconfig se ejecuta sin argumentos, la salida mostrará la información del dispositivo como, por ejemplo, el nombre del dispositivo (hciX), la dirección
del dispositivo físico (un número de 12 dígitos con el formato 00:12:34:56:78),
así como información acerca de la cantidad de datos transmitidos.
hciconfig hci0 name muestra el nombre que devuelve el equipo cuando recibe
peticiones desde dispositivos remotos. El comando hciconfig no sólo sirve para ver
los ajustes del dispositivo local, sino también para modificarlos. Por ejemplo, el comando
hciconfig hci0 name PRUEBA asigna al dispositivo el nombre PRUEBA.
sdptool
El programa sdptool se puede usar para comprobar qué servicios ofrece un dispositivo
específico. El comando sdptool browse dirección_dispositivo muestra
todos los servicios de un dispositivo, mientras que sdptool search
código_servicio permite buscar un servicio concreto. Este comando analiza todos
los servicios accesibles para el servicio solicitado. Si uno de los dispositivos ofrece el
servicio, el programa imprime el nombre completo del servicio devuelto por el dispositivo junto con una breve descripción. Al ejecutar sdptool sin ningún parámetro, se
muestra una lista con todos los códigos de servicio posibles.
22.2.4 Aplicaciones gráficas
En Konqueror, escriba la dirección URL bluetooth:/ para que se muestren los
dispositivos Bluetooth locales y remotos. Haga doble clic en un dispositivo para ver
una descripción de los servicios ofrecidos por el dispositivo. Si se desplaza con el ratón
por los distintos servicios especificados, en la barra de estado del navegador se mostrará
qué perfil está usando el servicio. Si hace clic en un servicio, se abrirá un cuadro de
Comunicación inalámbrica
331
diálogo donde debe indicar la acción que desea realizar: guardar, usar el servicio (para
ello deberá iniciarse una aplicación) o cancelar la acción. Marque una casilla de verificación si no desea que se muestre de nuevo el cuadro de diálogo y que se realice siempre
la acción seleccionada. Todavía no es posible usar algunos servicios y para otros es
necesario instalar paquetes adicionales.
22.2.5 Ejemplos
En esta sección encontrará dos ejemplos de uso típicos de Bluetooth. El primero de
ellos muestra cómo se puede establecer una conexión de red entre dos hosts usando
Bluetooth. En la segunda, se describe una conexión entre un equipo y un teléfono móvil.
Conexión de red entre dos hosts
En el primer ejemplo, se establece una conexión de red entre los hosts H1 y H2. Estos
dos hosts cuentan con direcciones de dispositivo Bluetooth baddr1 y baddr2 (estas direcciones se averiguan en los dos hosts mediante el comando hcitool dev, tal y
como se describe arriba). Los hosts deben identificarse con las direcciones IP
192.168.1.3 (H1) y 192.168.1.4 (H2).
La conexión Bluetooth se establece con la ayuda del daemon pand (daemon de red de
área personal). Los siguientes comandos debe ejecutarlos el usuario Root. La descripción se centra en las acciones específicas de Bluetooth y no se proporciona una explicación detallada del comando de red ip.
Escriba pand -s para iniciar el daemon pand en el host H1. Posteriormente, se puede
establecer una conexión con el host H2 usando pand -c baddr1. Si especifica ip
link show en uno de los hosts para mostrar las interfaces de red disponibles, el resultado debe contener una entrada como la siguiente:
bnep0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop qlen 1000
link/ether 00:12:34:56:89:90 brd ff:ff:ff:ff:ff:ff
En lugar de 00:12:34:56:89:90, la salida debe contener la dirección del dispositivo local baddr1 o baddr2. Ahora es necesario asignar a esta interfaz una dirección IP
y, a continuación, activarla. En H1, esto se puede llevar a cabo con los dos comandos
siguientes:
ip addr add 192.168.1.3/24 dev bnep0
ip link set bnep0 up
332
En H2:
ip addr add 192.168.1.4/24 dev bnep0
ip link set bnep0 up
Ahora se puede acceder a H1 desde H2 usando la dirección IP 192.168.1.3. El
comando ssh 192.168.1.4 le permite acceder a H2 desde H1, siempre que H2
ejecute un sshd, que esté activado por defecto en SUSE Linux. El comando ssh
192.168.1.4 también se puede ejecutar como un usuario normal.
Transmisión de datos de un teléfono móvil a un
equipo
En este segundo ejemplo se va a mostrar cómo se transfiere una fotografía creada con
un teléfono móvil con cámara digital incorporada a un equipo (sin incurrir en los costes
adicionales de transmisión de un mensaje multimedia). Aunque cada teléfono móvil
dispone de una estructura de menús diferente, el procedimiento será prácticamente el
mismo en todos ellos. Si es necesario, consulte la documentación del teléfono. En este
ejemplo se describe cómo se transfiere una fotografía desde un teléfono móvil Sony
Ericsson a un portátil. Es necesario que el equipo disponga de servicio Obex-Push y
que permita el acceso del teléfono móvil. En el primer paso, se activará el servicio en
el equipo portátil. Esto se realiza mediante el daemon opd incluido en el paquete
bluez-utils. Inicie el daemon con el siguiente comando:
opd --mode OBEX --channel 10 --daemonize --path /tmp --sdp
En este comando se utilizan dos parámetros importantes: --sdp registra el servicio
sdpd y --path /tmp indica al programa dónde se deben guardar los datos recibidos
(en este caso, en /tmp). Aquí también puede especificar otros directorios en los que
tenga acceso de escritura.
A continuación, el teléfono móvil debe ponerse en contacto con el equipo. Para ello,
busque en el teléfono el menú Connect (Conexiones) y seleccione Bluetooth. Si es necesario, haga clic en Turn On (Activar) antes de seleccionar My devices (Mis dispositivos). Seleccione New device (Nuevo dispositivo) y deje que el teléfono busque el portátil. Si se detecta un dispositivo, su nombre aparecerá en la pantalla. Seleccione el
dispositivo asociado al equipo portátil. Si se le solicita el número PIN, escriba el número
especificado en /etc/bluetooth/pin. Ahora el teléfono y el portátil se reconocen
y pueden intercambiar datos. Salga del menú actual y acceda al menú de imágenes.
Seleccione la imagen que desee transferir y pulse More (Más). En el siguiente menú,
pulse Send (Enviar) para seleccionar un modo de transmisión. Seleccione Via Bluetooth
Comunicación inalámbrica
333
(Mediante Bluetooth). El equipo portátil debe aparecer como dispositivo de destino.
Seleccione el portátil para iniciar la transmisión. La imagen se guarda entonces en el
directorio especificado con el comando opd. Este procedimiento también puede emplearse para transmitir un archivo de música.
22.2.6 Resolución de problemas
En caso de que se produzcan problemas de conexión, se recomienda comprobar los siguientes puntos. No obstante, tenga siempre presente que el problema puede residir en
cualquiera de los extremos de la conexión o, en el peor de los casos, en ambos. Si es
posible, reproduzca el problema con un dispositivo Bluetooth distinto para asegurarse
de que el dispositivo no esté dañado.
¿Aparece el dispositivo local en la salida de hcitool dev?
Si el dispositivo local no aparece en la salida de este comando, es posible que hcid
no se haya iniciado o que el dispositivo no se reconozca como dispositivo Bluetooth.
Esto puede deberse a distintas causas: el dispositivo está estropeado o falta el controlador adecuado. En el caso de equipos portátiles con Bluetooth incorporado,
suele haber un interruptor para dispositivos inalámbricos, como WLAN y Bluetooth.
Consulte la documentación del portátil para ver si dispone de un interruptor de este
tipo. Reinicie el sistema Bluetooth con rcbluetooth restart y examine el
archivo /var/log/messages para ver si hay mensajes de error.
¿Necesita el adaptador Bluetooth un archivo de firmware?
Si es así, instale bluez-bluefw y reinicie el sistema Bluetooth con
rcbluetooth restart.
¿Aparecen en la salida de hcitool inq otros dispositivos?
Ejecute este comando varias veces. La conexión puede tener interferencias porque
la banda de frecuencia de Bluetooth también la utilizan otros dispositivos.
¿Coinciden los números PIN?
Compruebe si el PIN del equipo (que aparece en /etc/bluetooth/pin) coincide con el del dispositivo de destino.
¿Puede “ver” el dispositivo remoto el equipo?
Intente iniciar la conexión desde otro dispositivo remoto y compruebe si el dispositivo detecta la presencia del equipo.
334
¿Es posible establecer una conexión de red? Consulte la “Conexión de red entre
dos hosts” (p. 332).
La configuración descrita en la “Conexión de red entre dos hosts” (p. 332) puede
que no funcione por distintas causas. Por ejemplo, puede ser que uno de los dos
equipos no admita el protocolo. Pruebe con el comando ping 192.168.1.3 o
con ping 192.168.1.4. Si esto funciona, compruebe si sshd está activo. Otra
posible causa es que uno de los dos dispositivos disponga ya de unos ajustes de red
que entren en conflicto con la dirección utilizada en el ejemplo 192.168.1.X.
Si es el caso, pruebe con direcciones distintas, como 10.123.1.2 o
10.123.1.3.
¿Aparece el equipo portátil como dispositivo de destino? Consulte la “Transmisión
de datos de un teléfono móvil a un equipo” (p. 333). ¿Detecta el teléfono móvil el
servicio Obex-Push en el equipo portátil?
En el menú My devices (Mis dispositivos), seleccione el dispositivo que corresponda
y consulte la lista de servicios. Si en ella no aparece Obex-Push (incluso después
de actualizar la lista), la causa del problema es opd en el portátil. ¿Está activo opd?
¿Tiene permiso de escritura en el directorio especificado?
¿Funciona a la inversa el ejemplo descrito en la “Transmisión de datos de un teléfono móvil a un equipo” (p. 333)?
Si ha instalado el paquete obexftp, el comando obexftp -b
dirección_dispositivo -B 10 -p imagen se puede usar en varios
dispositivos. Algunos modelos de Siemens y Sony Ericsson se han probado y se ha
confirmado que funcionan. Consulte la documentación de /usr/share/doc/
packages/obexftp.
22.2.7 Información adicional
Puede encontrar una amplia lista de documentación relacionada con el funcionamiento
y la configuración de Bluetooth en http://www.holtmann.org/linux/
bluetooth/. Otras fuentes de información:
• Procedimientos oficiales del stack del protocolo Bluetooth integrado en el núcleo:
http://bluez.sourceforge.net/howto/index.html
• Conexión con dispositivo PDA PalmOS: http://www.cs.ucl.ac.uk/
staff/s.zachariadis/btpalmlinux.html
Comunicación inalámbrica
335
22.3
Transmisión de datos mediante
infrarrojos
IrDA (Asociación de datos por infrarrojos, del inglés Infrared Data Association) es un
estándar industrial para las comunicaciones inalámbricas que utiliza infrarrojos. Muchos
de los equipos portátiles actuales incorporan un emisor/receptor que permite la comunicación con otros dispositivos, tales como impresoras, módems, LAN u otros portátiles.
La velocidad de transferencia oscila entre 2400 bps y 4 Mbps.
IrDA cuenta con dos modos de funcionamiento. El modo estándar SIR se comunica
con el puerto infrarrojo a través de una interfaz en serie. Este modo funciona con casi
todos los sistemas y cumple la mayoría de las exigencias. El modo más rápido FIR requiere un controlador especial para el chip IrDA, pero el modo FIR no admite todos
los tipos de chips porque no existen controladores adecuados para todos ellos. En el
BIOS del equipo hay que definir el modo IrDA que se desea usar. El BIOS también
muestra qué interfaz en serie se utiliza en el modo SIR.
Hay más información disponible sobre IrDA en los procedimientos de Werner Heuser
en http://tuxmobil.org/Infrared-HOWTO/Infrared-HOWTO.html.
Si lo desea, también puede consultar el sitio Web del proyecto IrDA de Linux en
http://irda.sourceforge.net/.
22.3.1 Software
Los módulos del núcleo necesarios se incluyen en el paquete del núcleo. El paquete
irda contiene los programas de ayuda necesarios para que se pueda usar la interfaz
infrarroja. Una vez instalado el paquete, podrá encontrar la documentación en /usr/
share/doc/packages/irda/README.
22.3.2 Configuración
El servicio de sistema IrDA no se inicia automáticamente al arrancar el sistema, sino
que debe activarse con el módulo IrDA de YaST. En este módulo sólo se puede modificar un ajuste: la interfaz en serie del dispositivo infrarrojo. La ventana de prueba está
dividida en dos partes: una de ellas muestra la salida de irdadump, donde se registran
todos los paquetes IrDA enviados y recibidos. En esta salida debe aparecer el nombre
336
del equipo y los nombres de todos los dispositivos infrarrojos que haya en el radio de
acción. Puede ver un ejemplo de estos mensajes en la Sección 22.3.4, “Resolución de
problemas” (p. 338). En la parte inferior de la pantalla se muestran todos los dispositivos
con los que existe una conexión IrDA.
IrDA requiere bastante energía, puesto que envía un paquete Discovery cada pocos segundos con el fin de detectar otros dispositivos periféricos. Así pues, si trabaja con
batería, se recomienda arrancar IrDA sólo cuando lo vaya a utilizar. Utilice el comando
rcirda start para activarlo y rcirda stop para desactivarlo. Al activar la interfaz se cargarán automáticamente todos los módulos del núcleo necesarios.
La configuración manual se lleva a cabo en el archivo /etc/sysconfig/irda,
que contiene sólo la variable IRDA_PORT que determina qué interfaz se va a usar en
el modo SIR.
22.3.3 Uso
Los datos se pueden enviar al archivo de dispositivo /dev/irlpt0 para su impresión.
Este archivo se comporta igual que la interfaz normal con conexión /dev/lp0, con
la salvedad de que los datos de impresión viajan mediante infrarrojos. A la hora de
imprimir, asegúrese de que la impresora se encuentra en el área de visión de la interfaz
infrarroja del equipo y de que la compatibilidad con infrarrojos está activada.
Una impresora que trabaja con la interfaz infrarroja puede configurarse mediante el
módulo de impresión de YaST. Como no se detecta automáticamente, deberá realizar
la configuración de forma manual haciendo clic en Otro (no detectado). En el siguiente
cuadro de diálogo, seleccione Impresora IrDA. Normalmente, irlpt0 es la conexión
adecuada. Hay más información disponible acerca del funcionamiento de las impresoras
en Linux en el Capítulo 31, Funcionamiento de la impresora (p. 507).
El archivo de dispositivo /dev/ircomm0 permite comunicarse con otros hosts, con
teléfonos móviles o con otros dispositivos similares. Con la aplicación wvdial se puede
acceder a Internet mediante la interfaz infrarroja usando, por ejemplo, los teléfonos
móviles Siemens S25 y Nokia 6210. También es posible sincronizar datos con el dispositivo Palm Pilot, siempre y cuando los ajustes del dispositivo de la aplicación correspondiente se hayan establecido en /dev/ircomm0.
Sólo es posible comunicarse con dispositivos que sean compatibles con la impresora o
con los protocolos IrCOMM. A los dispositivos compatibles con el protocolo IROBEX
Comunicación inalámbrica
337
como, por ejemplo, 3Com Palm Pilot, se puede acceder con aplicaciones especiales
como irobexpalm e irobexreceive. Para obtener más información, consulte los procedimientos relacionados con los infrarrojos en IR-HOWTO (http://tldp.org/
HOWTO/Infrared-HOWTO/). Los protocolos que admite el dispositivo aparecen
entre corchetes después del nombre del dispositivo en la salida de irdadump. La
compatibilidad con el protocolo IrLAN aún se encuentra “en desarrollo.”
22.3.4 Resolución de problemas
Si los dispositivos conectados al puerto infrarrojo no responden, use el comando
irdadump (como usuario Root) para comprobar si el equipo detecta la presencia del
otro dispositivo. Un resultado parecido al del Ejemplo 22.1, “Salida de irdadump”
(p. 338) aparece normalmente cuando hay una impresora Canon BJC-80 en el rango de
visión del equipo:
Ejemplo 22.1
Salida de irdadump
21:41:38.435239
21:41:38.525167
21:41:38.615159
21:41:38.705178
21:41:38.795198
21:41:38.885163
21:41:38.965133
xid:cmd
xid:cmd
xid:cmd
xid:cmd
xid:cmd
xid:cmd
xid:rsp
5b62bed5 > ffffffff S=6 s=0 (14)
5b62bed5 > ffffffff S=6 s=1 (14)
5b62bed5 > ffffffff S=6 s=2 (14)
5b62bed5 > ffffffff S=6 s=3 (14)
5b62bed5 > ffffffff S=6 s=4 (14)
5b62bed5 > ffffffff S=6 s=5 (14)
5b62bed5 < 6cac38dc S=6 s=5 BJC-80
hint=8804 [Printer IrCOMM ] (23)
21:41:38.975176 xid:cmd 5b62bed5 > ffffffff S=6 s=* earth
hint=0500 [ PnP Computer ] (21)
Si no aparece nada en pantalla o el otro dispositivo no responde, deberá comprobar la
configuración de la interfaz. Asegúrese de que está usando la interfaz correcta. La interfaz infrarroja se encuentra a veces en /dev/ttyS2 o en /dev/ttyS3, y puede que
se use otra interrupción que no sea IRQ 3. Estos ajustes se pueden comprobar y modificar en la configuración del BIOS de casi todos los equipos portátiles.
Con una simple cámara de vídeo puede comprobar si el diodo LED se ilumina realmente;
al contrario que los ojos humanos, la mayoría de las cámaras de vídeo pueden ver la
luz infrarroja.
338
Parte VII. Administración
23
Seguridad en Linux
El enmascaramiento (masquerading) y un cortafuegos (firewall) se ocupan de controlar
el tráfico e intercambio de datos. La SSH (secure shell) permite al usuario realizar una
conexión codificada con un ordenador remoto. La codificación de archivos o particiones
enteras protegen sus datos en caso de que terceras personas accedan al sistema. Además
de instrucciones de carácter puramente técnico, al final del capítulo encontrará información sobre aspectos de seguridad de redes Linux.
23.1
Enmascaramiento y cortafuegos
Siempre que Linux se utiliza en un entorno de red, se pueden emplear las funciones del
núcleo que permiten la manipulación de los paquetes de red para conservar una separación entre las áreas de redes interna y externa. La estructura de Linux netfilter proporciona los recursos para instalar un cortafuegos efectivo que gestione las diferentes redes
de forma distinta. Con la ayuda de iptables —una estructura genérica de tabla para la
definición de los conjuntos de tablas—, controle de forma exhaustiva los paquetes que
se permite que pasen a una interfaz de red. Este filtro de paquetes se puede configurar
de forma relativamente sencilla con la ayuda de SuSEfirewall2 y el módulo YaST correspondiente.
23.1.1 Filtrado de paquetes con iptables
Los elementos netfilter e iptables son responsables del filtrado y de la manipulación de
paquetes de redes, así como de la NAT (conversión de direcciones de red). Los criterios
de filtrado y cualquier acción relacionada con ellos se almacenan en cadenas, que se
Seguridad en Linux
341
agrupan una tras otra por paquetes de red individuales cada vez que se reciben. Las
cadenas que se deben ordenar se almacenan en tablas. El comando iptables le permite alterar estas tablas y los conjuntos de reglas.
El núcleo de Linux mantiene tres tablas, cada una de ellas destinada a una categoría
determinada de funciones del filtro de paquetes:
filter
Esta tabla incluye la totalidad de las reglas de filtros, debido a que implementa el
mecanismo filtrado de paquetes en sentido estricto, lo que determina, por ejemplo,
si se permiten los paquetes (ACCEPT) o si se descartan (DROP).
nat
Esta tabla define todos los cambios realizados en las direcciones de origen y destino
de los paquetes. Haciendo uso de estas funciones podrá también recurrir al enmascaramiento, que es un caso especial de NAT que se emplea para enlazar una red
privada a Internet.
mangle
Las reglas contenidas en esta tabla permiten manipular los valores almacenados en
los encabezados IP (como, por ejemplo, el tipo de servicio).
342
Figura 23.1
iptables: posibles vías del paquete
ENCAMINAMIENTO
PREVIO
paquete entrante
Eliminar
NAT
ENTRADA
Eliminar
Encaminamiento
Filtrar
ENVÍO
Procesos
Eliminar
en el sistema
local
Filtrar
SALIDA
Encaminamiento
Eliminar
NAT
Filtrar
ENCAMINAMIENTO
POSTERIOR
Eliminar
NAT
paquete saliente
Estas tablas contienen varias cadenas predefinidas para la coincidencia de paquetes:
Seguridad en Linux
343
PREROUTING
Esta cadena se aplica a los paquetes entrantes.
INPUT
Esta cadena se aplica a los paquetes destinados a los procesos internos del sistema.
FORWARD
Esta cadena se aplica solamente a los paquetes que se enrutan a través del sistema.
OUTPUT
Esta cadena se aplica a los paquetes originados en el sistema.
POSTROUTING
Esta cadena se aplica a todos los paquetes salientes.
La Figura 23.1, “iptables: posibles vías del paquete” (p. 343) ilustra las vías por las que
puede desplazarse un paquete de red en un sistema dado. Por razones de simplicidad,
las ilustración muestra las tablas como partes de las cadenas, pero en realidad estas cadenas se sustentan en las propias tablas.
La más sencilla de las situaciones se produce cuando un paquete de entrada destinado
al sistema llega a la interfaz eth0. En primer lugar, el paquete se deriva a la cadena
PREROUTING de la tabla mangle y, a continuación, a la cadena PREROUTING de
la tabla nat. El siguiente paso, referido al enrutamiento del paquete, establece que el
destino real del paquete es un proceso del sistema. Después de pasar por las cadenas
INPUT de las tablas mangle y filter, el paquete alcanza finalmente su objetivo,
debido a que las reglas de la tabla filter son coincidentes.
23.1.2 Nociones básicas sobre el
enmascaramiento
El enmascaramiento es la forma específica de NAT (conversión de direcciones de red)
de Linux Se puede emplear para conectar una LAN pequeña (donde los hosts utilizan
direcciones IP de rango privado; a este respecto, consulte la Sección 38.1.2, “Máscaras
de red y encaminamiento” (p. 607)) a Internet (donde se emplean direcciones IP oficiales).
Para que los hosts de la LAN puedan conectarse a Internet, sus direcciones privadas se
traducen en direcciones oficiales. Esta operación se realiza en el router, que actúa de
gateway entre la LAN e Internet. El principio subyacente es muy sencillo: El router
tiene más de una interfaz de red, normalmente una tarjeta de red y una interfaz que lo
344
conecta a Internet. Mientras que esta última enlaza el router con el exterior, una o varias
de las demás lo conectan a los hosts de LAN. Con los hosts de la red local conectados
a la tarjeta de red (como por ejemplo eth0) del router, es posible enviar cualquier paquete no destinado a la red local a su gateway o router por defecto.
IMPORTANTE: Utilización de la máscara de red adecuada
Cuando configure su red, asegúrese de que tanto la dirección de difusión como
la máscara de red son las mismas para todos los hosts locales. Si no toma esta
precaución, los paquetes no se enrutarán adecuadamente.
Como se ha mencionado, cuando uno de los hosts de LAN envía un paquete destinado
a una dirección de Internet, éste se dirige al router por defecto. Sin embargo, el router
debe configurarse antes de poder reenviar los paquetes. Por razones de seguridad, SUSE
Linux no habilita esta función en una instalación por defecto. Para habilitarla, fije la
variable IP_FORWARD en el archivo /etc/sysconfig/sysctl como
IP_FORWARD=yes.
El host de destino de la conexión puede tener constancia de la existencia de su router,
pero no dispone de información acerca del host que se encuentra situado en la red interna
y que es donde se originaron los paquetes. Por esta razón esta técnica se denomina enmascaramiento. A consecuencia de la conversión de direcciones, el router es el primer
destino de todos los paquetes de respuesta. El router debe identificar estos paquetes
entrantes y traducir sus direcciones de destino, de forma tal que los paquetes se reenvíen
al host adecuado de la red local.
Gracias al enrutamiento del tráfico entrante dependiente de la tabla de enmascaramiento,
no existe ninguna manera de abrir una conexión con un host interno desde el exterior.
Para una conexión de este tipo no habría ninguna entrada en la tabla. Además, a cada
conexión que se encuentre establecida se le asigna una entrada de estado en la tabla,
por lo que la entrada no podrá emplear ninguna otra conexión.
Como consecuencia, es posible que se produzcan problemas con un número determinado
de protocolos de aplicación, tales como ICQ, cucme, IRC (DCC, CTCP) y FTP (en
modo PORT). Netscape, el programa FTP y muchos otros programas utilizan el modo
PASV. Este modo pasivo origina muchos menos problemas en lo referente al enmascaramiento y filtrado de paquetes.
Seguridad en Linux
345
23.1.3 Nociones básicas sobre el empleo
de cortafuegos
El término cortafuegos es probablemente el que se emplea con mayor frecuencia para
describir un mecanismo que proporciona y gestiona un enlace entre redes al tiempo que
controla también el flujo de datos entre ellos. Estrictamente hablando, el mecanismo
que se describe en esta sección se denomina filtro de paquetes. El filtro de paquetes
regula el flujo de datos de acuerdo con determinados criterios, tales como protocolos,
puertos y direcciones IP. De esta manera, es posible bloquear paquetes que, de acuerdo
con sus direcciones de origen, se pretende que no lleguen a su red. Para permitir el acceso público a, por ejemplo, su servidor Web, abra de forma explícita el puerto correspondiente. Sin embargo, el filtro de paquetes no examina el contenido de los paquetes
provenientes de direcciones legítimas, como por ejemplo aquéllos que se envían a su
servidor Web. Por ejemplo, si los paquetes entrantes están dirigidos a modificar un
programa CGI de su servidor Web, el filtro de paquetes permitirá su acceso.
Un mecanismo más efectivo pero también más complejo es la combinación de distintos
tipos de sistemas, como por ejemplo la interacción de un filtro de paquetes con un gateway o alterno de aplicación. En este caso, el filtro de paquetes rechaza cualquier paquete que tenga como objetivo la inhabilitación de puertos. Únicamente se aceptan los
paquetes dirigidos a la gateway de aplicación. Esta gateway o este alterno simula ser
el cliente real del servidor. En cierto modo, dicho alterno puede considerarse un host
de enmascaramiento en el nivel de protocolo empleado por la aplicación. Un ejemplo
para un alterno de este tipo es Squid, un servidor alterno HTTP. Para utilizar Squid, el
navegador se debe configurar para que se pueda comunicar a través del alterno. Cualquier
página HTTP que se solicite se sirve a partir de la caché alterna; en cuanto a las páginas
no encontradas en la caché, éstas las recupera el alterno de Internet. En otro orden de
cosas, el paquete SUSE Proxy-Suite (proxy-suite) proporciona un alterno para el
protocolo.
La siguiente sección se centra en el filtro de paquetes que se proporciona con SUSE
Linux. Para obtener más información sobre el filtrado de paquetes y el empleo de cortafuegos, consulte el documento Firewall HOWTO, que se incluye en el paquete howto.
Si este paquete se encuentra ya instalado, lea el documento HOWTO mediante la opción
less /usr/share/doc/howto/en/txt/Firewall-HOWTO.gz.
346
23.1.4 SuSEfirewall2
SuSEfirewall2 es un guión que lee las variables establecidas en /etc/sysconfig/
SuSEfirewall2 para generar un juego de reglas de iptables. Se definen tres zonas
de seguridad, aunque solamente se consideran la primera y la segunda en el siguiente
ejemplo de configuración:
Zona externa
Debido a que no existe ninguna manera de controlar lo que sucede en la red externa,
el host necesita estar protegido de dicha red. En la mayoría de los casos, la red externa es Internet, pero también podría tratarse de otra red insegura, como por ejemplo
una red WLAN.
Zona interna
Hace referencia a la red privada, en la mayoría de los casos una red LAN. Si los
hosts de esta red utilizan direcciones IP de rango privado (a este respecto, consulte
la Sección 38.1.2, “Máscaras de red y encaminamiento” (p. 607)), habilite la conversión de direcciones de red (NAT), de forma tal que los hosts de la red interna puedan
acceder a la red externa.
Zona desmilitarizada (DMZ)
Mientras que se puede llegar a los hosts que se ubican en esta zona tanto desde la
red externa como interna, dichos hosts no pueden acceder a la red interna. Esta
configuración puede emplearse para incluir una línea adicional de defensa ante la
red interna, debido a que los sistemas DMZ están aislados de la red interna.
Todo tipo de tráfico de red no permitido de forma expresa por la regla de filtrado se
suprime por la acción de las iptables. Por lo tanto, cada una de las interfaces con tráfico
de entrada deben ubicarse en una de las tres zonas. Defina los servicios o protocolos
permitidos para cada una de las zonas. La regla que se establezca se aplica solamente
a los paquetes procedentes de hosts remotos. Los paquetes generados en la zona local
no son capturados por el cortafuegos.
La configuración se puede realizar con YaST (a este respecto, consulte la “Configuración
con YaST” (p. 348)). También se puede llevar a cabo de forma manual en el archivo
/etc/sysconfig/SuSEfirewall2, que se encuentra convenientemente comentado. En otro orden de cosas, se encuentra disponible a modo de ejemplo una serie de
situaciones en /usr/share/doc/packages/SuSEfirewall2/EXAMPLES.
Seguridad en Linux
347
Configuración con YaST
IMPORTANTE: Configuración automática del cortafuegos
Después de la instalación, YaST iniciará de forma automática un cortafuegos
en todas las interfaces configuradas. Si se configura y se activa un servidor en
el sistema, YaST puede modificar la configuración del cortafuegos que se ha
generado automáticamente mediante las opciones Open Ports on Selected Interface in Firewall (Abrir puertos en la interfaz seleccionada del cortafuegos)
o Open Ports on Firewall (Abrir puertos en el cortafuegos) de los módulos de
configuración del servidor. Algunos cuadros de diálogo del módulo del servidor
incluyen un botón denominado Detalles del cortafuegos que permite activar
servicios y puertos adicionales. El módulo de configuración del cortafuegos de
YaST se puede utilizar para activar, desactivar o volver a configurar el cortafuegos.
Se puede acceder a los cuadros de diálogo de YaST para la configuración gráfica a
través del Centro de Control de YaST. Seleccione Seguridad y usuarios → Cortafuegos.
La configuración se divide en siete secciones a las que se puede acceder directamente
desde la estructura de árbol que se encuentra situada en la parte izquierda del cuadro
de diálogo.
Inicio
Defina el comportamiento de inicio en este cuadro de diálogo. Cuando se trate de
una instalación por defecto, SuSEfirewall2 se iniciará automáticamente. También
puede iniciar aquí tanto el inicio como la detención del cortafuegos. Para implementar
la nueva configuración en un cortafuegos que se esté ejecutando, utilice la opción
Guardar la configuración y reiniciar cortafuegos.
348
Figura 23.2
Configuración de cortafuegos de YaST
Interfaces
En este cuadro de diálogo se muestra una lista con todas las interfaces de red conocidas. Para eliminar una interfaz de una zona, seleccione la interfaz y, a continuación,
pulse Cambiar y seleccione Ninguna zona asignada. Para añadir una interfaz a una
zona, seleccione la interfaz, pulse Cambiar y, a continuación, seleccione cualquiera
de las zonas disponibles. También puede crear una interfaz especial con sus propios
ajustes utilizando para ello la opción Personalizar.
Servicios autorizados
Esta opción es necesaria para poder ofrecer servicios desde su sistema a una zona
que se encuentre protegida. Por defecto, el sistema se encuentra protegido únicamente
de zonas externas. Autorice expresamente los servicios que deberían estar disponibles
para los hosts externos. Active los servicios después de seleccionar la zona deseada
en Allowed Services for Selected Zone (Servicios autorizados para zona seleccionada).
Enmascaramiento
El enmascaramiento oculta su red interna a las redes externas, como por ejemplo
Internet, al tiempo que permite que los hosts de la red interna puedan acceder a la
red externa de forma transparente. Las solicitudes enviadas de la red externa a la
red interna se bloquean, mientras que las solicitudes enviadas por la red interna parecen ser enviadas por el servidor de enmascaramiento cuando éstas se ven externa-
Seguridad en Linux
349
mente. Si los servicios especiales de una máquina interna necesitan estar disponibles
para la red externa, añada reglas especiales de redirección para el servicio.
Broadcast
En este cuadro de diálogo, configure los puertos UDP que permiten difusiones.
Añada los números o servicios de puertos necesarios a la zona adecuada, separados
entre sí por espacios. Consulte igualmente el archivo /etc/services.
Es aquí, por otra parte, donde puede habilitarse el registro de las difusiones no
aceptadas. Esto puede originar problemas, puesto que los hosts de Windows utilizan
difusiones para saber obtener información unos de otros y, de esa forma, generan
paquetes que no son aceptados.
Soporte IPsec
Determine si el servicio IPsec deberá estar disponible para la red externa en este
cuadro de diálogo. Configure qué paquetes son confiables en Detalles.
Nivel de registro
Son dos las reglas existentes para el registro: paquetes aceptados y no aceptados.
Los paquetes no aceptados son DROPPED (SUPRIMIDOS) o REJECTED (RECHAZADOS). Seleccione para ambos una de las siguientes opciones: Registrar
todos, Log Critical (Registrar críticos) o No registrar ninguno.
Una vez que haya concluido la configuración del cortafuegos, salga de este cuadro de
diálogo utilizando la opción Siguiente. Se abrirá a continuación un resumen de la configuración de su cortafuegos orientado a las zonas. En dicho resumen, compruebe todos
los ajustes. Todos los servicios, puertos y protocolos que se han autorizado se indican
en este resumen. Para modificar la configuración, utilice la opción Atrás. Pulse Aceptar
para guardar su configuración.
Configuración manual
Los párrafos que aparecen a continuación ofrecen instrucciones detalladas para lograr
una configuración adecuada. Cada elemento de la configuración se marca siempre y
cuando sea relevante para los cortafuegos o el enmascaramiento. Los aspectos relacionados con la DMZ (zona desmilitarizada), de acuerdo con lo mencionado en el archivo
de configuración, no se cubren en esta sección. Estos aspectos son de aplicación únicamente en infraestructuras de redes más complejas localizadas en organizaciones de
mayor tamaño (redes corporativas), que precisan una configuración ampliada y un conocimiento exhaustivo sobre el tema.
350
En primer lugar, emplee los Servicios del sistema (niveles de ejecución) del módulo
YaST para habilitar SuSEfirewall2 en su nivel de ejecución (3 ó 5 con mayor probabilidad). Los enlaces simbólicos para los guiones de SuSEfirewall2_* se establecen en
los directorios /etc/init.d/rc?.d/.
FW_DEV_EXT (cortafuegos, enmascaramiento)
Es el dispositivo que está conectado a Internet. Para una conexión por módem, escriba ppp0. Para una conexión RDSI, utilice ippp0. Las conexiones DSL, por su
parte, utilizan dsl0. Especifique auto para utilizar la interfaz que se corresponda
con la ruta por defecto.
FW_DEV_INT (cortafuegos, enmascaramiento)
Es el dispositivo conectado a la red interna privada (como por ejemplo eth0).
Deje esta opción en blanco si no existe una red interna y si el cortafuegos protege
solamente el host en el que se ejecuta el cortafuegos.
FW_ROUTE (cortafuegos, enmascaramiento)
Si precisa la función de enmascaramiento, fije este valor en yes. Sus hosts internos
no serán visibles desde el exterior, debido a que sus direcciones de redes privadas
(como, por ejemplo, 192.168.x.x) no son tenidas en cuenta por los routers de
Internet.
Para un cortafuegos sin enmascaramiento, únicamente fije este valor en yes si
quiere permitir el acceso a la red interna. Sus hosts internos necesitan utilizar únicamente IPs registradas en este caso. Por norma general, sin embargo, se recomienda
que no permita el acceso a su red interna desde el exterior.
FW_MASQUERADE (enmascaramiento)
Establezca este valor en yes si precisa la función de enmascaramiento. Esto proporciona a los hosts internos una conexión prácticamente directa a Internet. Es más
seguro contar con un servidor alterno entre los hosts de la red interna e Internet. El
enmascaramiento no es necesario para aquellos servicios proporcionados por servidores alternos.
FW_MASQ_NETS (enmascaramiento)
Especifique los hosts o las redes para las que se realizará el enmascaramiento; no
olvide dejar un espacio entre cada una de las entradas individuales. Por ejemplo:
FW_MASQ_NETS="192.168.0.0/24 192.168.10.1"
Seguridad en Linux
351
FW_PROTECT_FROM_INT (cortafuegos)
Establezca este valor en yes para proteger el host del cortafuegos frente a ataques
originados en la red interna. Los servicios estarán disponibles para la red interna
únicamente si se han habilitado expresamente. A este respecto, consulte también
FW_SERVICES_INT_TCP y FW_SERVICES_INT_UDP.
FW_SERVICES_EXT_TCP (cortafuegos)
Introduzca los puertos TCP que deberían estar disponibles. Deje esta opción en
blanco en aquellas estaciones de trabajo normales de uso doméstico que no se emplean para ofrecer servicios.
FW_SERVICES_EXT_UDP (cortafuegos)
Deje esta opción en blanco excepto si se ejecuta un servicio UDP y quiere que se
pueda acceder a él desde el exterior. Los servicios que emplean UDP incluyen, entre
otros, a los servidores DNS, IPSec, TFTP y DHCP. En ese caso, escriba los puertos
UDP que se van a emplear.
FW_SERVICES_INT_TCP (cortafuegos)
Defina con esta variable los servicios disponibles para la red interna. La notación
es la misma que la empleada en FW_SERVICES_EXT_TCP, pero en este caso los
ajustes se aplican a la red interna. La variable solamente necesita establecerse si
FW_PROTECT_FROM_INT se ha fijado en el valor yes.
FW_SERVICES_INT_UDP (cortafuegos)
Consulte FW_SERVICES_INT_TCP.
Después de haber configurado el cortafuegos, compruebe la configuración del dispositivo. Los conjuntos de reglas del cortafuegos se crean escribiendo el comando
SuSEfirewall2 start como usuario root. A continuación, utilice por ejemplo
el comando telnet desde un host externo para comprobar si se ha denegado la conexión. Después de esta operación, consulte /var/log/messages, donde debería
aparecer un mensaje como el que se muestra a continuación:
Mar 15 13:21:38 linux kernel: SFW2-INext-DROP-DEFLT IN=eth0
OUT= MAC=00:80:c8:94:c3:e7:00:a0:c9:4d:27:56:08:00 SRC=192.168.10.0
DST=192.168.10.1 LEN=60 TOS=0x10 PREC=0x00 TTL=64 ID=15330 DF PROTO=TCP
SPT=48091 DPT=23 WINDOW=5840 RES=0x00 SYN URGP=0
OPT (020405B40402080A061AFEBC0000000001030300)
Otros paquetes que le permitirán probar la configuración del cortafuegos son nmap o
nessus. Después de instalar los paquetes respectivos, la documentación de nmap se
encuentra en /usr/share/doc/packages/nmap, mientras que la documentación
352
de nessus se localiza en el directorio /usr/share/doc/packages/
nessus-core.
23.1.5 Información adicional
La información más actualizada y la documentación adicional acerca del paquete
SuSEfirewall2 se encuentra en /usr/share/doc/packages/
SuSEfirewall2. La página Web del proyecto netfilter y iptables, http://www
.netfilter.org, ofrece un amplio catálogo de documentos disponibles en diversas
lenguas.
23.2
SSH: trabajar de forma segura
en red
El trabajo en red requiere en ocasiones el acceso a sistemas remotos. En estos casos,
el usuario suele tener que autenticarse con su nombre de usuario y contraseña. Si estos
datos se envían en texto plano y sin codificar, cabe la posibilidad de que sean interceptados por terceros que podrían utilizarlos en su propio interés para, por ejemplo, usar
la conexión del usuario sin su conocimiento. Además de poder ver todos los datos privados del usuario, el atacante podría intentar obtener derechos de administrador sobre
el sistema o también utilizar la conexión recién adquirida para desde allí atacar a otros
sistemas. Antiguamente se utilizaba telnet para establecer conexiones entre dos ordenadores remotos. No obstante, este método no utilizaba ningún mecanismo de codificación
o seguridad para prevenir “filtraciones”. Las conexiones de copia o FTP entre ordenadores remotos tampoco ofrecen ninguna protección.
El software SSH sí ofrece la protección necesaria. La autenticación completa, compuesta
generalmente por nombre de usuario y contraseña, así como las comunicaciones se
realizan aquí de forma codificada. Si bien es cierto que aún así es posible que se intercepten los datos transmitidos, estos no podrían ser leídos sin la clave porque están codificados. De esta manera es posible comunicarse de forma segura a través de redes
inseguras como Internet. SUSE Linux incluye con este fin el paquete OpenSSH.
Seguridad en Linux
353
23.2.1 El paquete OpenSSH
En SUSE Linux, el paquete OpenSSH está incluido en la instalación estándar, por lo
que dispondrá de los programas ssh, scp y sftp como alternativa a telnet, rlogin, rsh,
rcp y ftp. En la configuración estándar, el acceso a un sistema SUSE Linux únicamente
es posible con las herramientas OpenSSH y sólo en el caso de que el cortafuegos permita el acceso.
23.2.2 El programa ssh
El programa ssh permite conectarse a un sistema de forma remota y trabajar con él interactivamente. Por este motivo constituye un sustituto tanto de telnet como rlogin. Por
razones de parentesco con rlogin, el enlace simbólico adicional de nombre slogin
apunta igualmente a ssh. Por ejemplo, con el comando ssh sun podremos registrarnos
en el ordenador sun. Después de introducir el comando, se nos preguntará la contraseña
en el sistema sun.
Después de haber conseguido una autenticación válida se podrá trabajar tanto desde la
línea de comandos, por ejemplo con el comando ls, como de forma interactiva, por
ejemplo con YaST. Si quiere diferenciar el nombre de usuario local del usuario en el
sistema remoto, hágalo por ejemplo con ssh -l juan sun o bien con ssh
juan@sun.
Además, ssh nos ofrece la posibilidad ya conocida en rsh de ejecutar comandos en un
sistema remoto. En el siguiente ejemplo se ejecutará el comando uptime en el ordenador sun y se creará un directorio con el nombre tmp. Los resultados del programa
se visualizarán en la terminal local del ordenador earth.
ssh sol "uptime; mkdir tmp"
tux@sol's password:
1:21pm up 2:17, 9 users,
load average: 0.15, 0.04, 0.02
Las comillas son en este caso necesarias para unir los comandos. Sólo de esta forma se
ejecutará también el segundo comando en el ordenador sun.
23.2.3 Copia segura: scp
Con la ayuda de scp se pueden copiar archivos a un ordenador remoto. scp es un sustituto seguro y codificado de rcp. Por ejemplo con el comando: scp MiCarta.tex
354
sun: se copiará el archivo MiCarta.tex del ordenador earth al ordenador sun. En
el caso de que los nombres de usuarios en earth y sun sean diferentes, en scp habrá que
recurrir a escribir nombre_usuario@nombre_ordenador. No existe la opción
-l.
Después de consultar la contraseña, scp comienza con la transmisión de datos e indica
el avance mediante una barra formada por estrellas que crece de izquierda a derecha.
Además se muestra en el lado derecho el tiempo restante para completar la transmisión
(estimated time of arrival). La opción -q suprime todas las indicaciones en pantalla.
scp ofrece también la posibilidad de transferir de forma recursiva todo un directorio.
El comando: scp -r src/ sun:backup/ copia el contenido completo del directorio src/, incluyendo todos los subdirectorios, en el directorio backup/ en el ordenador sun. If el subdirectorio no existe todavía, se creará automáticamente.
Mediante la opción -p, scp mantiene fecha y hora de los archivos que se copian. Con
-C se realiza una transferencia comprimida. Como ventaja el volumen de datos disminuye, pero en cambio el esfuerzo de cálculo es más elevado. Dada la potencia de
cálculo de hoy en día, se puede despreciar este efecto negativo.
23.2.4 Transmisión segura de archivos: sftp
Otra posibilidad para la transferencia segura de archivos es sftp, que ofrece muchos de
los comandos conocidos de ftp una vez que la conexión se ha establecido. En comparación con scp, resulta más adecuado para transferir archivos cuyos nombres no se conocen.
23.2.5 El daemon SSH (sshd) del lado del
servidor
Para que se puedan utilizar los programas cliente ssh y scp, en segundo plano se debe
ejecutar un servidor, el daemon SSH, que espera las conexiones en el puerto TCP/IP
Port 22. Al iniciarse por primera vez, el daemon genera tres pares de claves que
constan de una parte pública y una privada. Por este motivo este mecanismo se considera un proceso basado en “public-key”. Para garantizar la comunicación segura, sólo
el administrador de sistema debe tener el derecho de acceder a las claves privadas. Por
eso en la configuración predeterminada los derechos sobre los archivos se configuran
de forma correspondiente. El daemon de SSH utiliza localmente las claves privadas
Seguridad en Linux
355
que no deben ser comunicadas a nadie. En cambio, las partes públicas de las claves (se
reconocen por ejemplo por la extensión .pub) se comunican a todos los interlocutores
en el proceso de comunicación y son por tanto legibles para todos los usuarios.
El cliente SSH inicia la conexión. El daemon SSH que se encontraba en espera y el
cliente que pide una conexión intercambian datos de identificación para utilizar las
mismas versiones de protocolo y para evitar la conexión a un puerto equivocado. En
realidad, el que responde es un “proceso hijo” del daemon SSH inicial, por lo que es
posible mantener al mismo tiempo muchas conexiones SSH.
Para la comunicación entre el cliente y el servidor SSH, OpenSSH soporta las versiones
1 y 2 del protocolo SSH. Al instalar SUSE Linux por primera vez se utiliza automáticamente la versión actual del protocolo, 2. En cambio, si prefiere conservar SSH 1 después
de actualizar, siga las instrucciones descritas en /usr/share/doc/packages/
openssh/README.SuSE. Allí también se describe cómo transformar en pocos pasos
un entorno SSH 1 en un entorno SSH 2 operativo.
Con el protocolo SSH versión 1, el servidor envía su clave pública host key y una
server key creada el daemon SSH nuevamente cada hora. El cliente SSH se sirve
de estas dos claves para codificar (encrypt) una clave que varía de sesión en sesión
(session key) y que se envía al servidor SSH. Además indica al servidor el tipo de cifrado
(cipher).
El protocolo SSH versión 2 no incluye la server key. En su lugar utiliza un algoritmo
de Diffie-Hellman para intercambiar las claves.
Para descifrar la clave de sesión es imprescindible disponer de las claves privadas de
host y server, las cuales no se pueden obtener por medio de las partes públicas. Por este
motivo, sólo el daemon SSH contactado es capaz de descifrar la clave de sesión mediante
su clave privada (ver man /usr/share/doc/packages/openssh/RFC.nroff).
Es posible seguir esta fase de establecimiento de conexión mediante la opción de búsqueda de errores del programa cliente de SSH (opción -v).
Por defecto se utiliza el protocolo SSH versión 2, pero sin embargo se puede forzar el
protocolo SSH versión 1 con el parámetro -1. Los ataques del tipo “man-in-the-middle”
se evitan porque el cliente guarda en ~/.ssh/known_hosts todas las claves públicas
del host después de haber tomado el primer contacto. Los servidores SSH que tratan
de camuflarse con el nombre y la IP de otro ordenador se descubren con una alerta. Se
delatan ya sea por una clave de host diferente a la que está guardada en ~/.ssh/
356
known_hosts o bien porque no pueden descifrar la clave de sesión por falta de la
clave privada correcta.
Se recomienda guardar de forma externa las claves públicas y privadas del directorio
/etc/ssh/ y hacer una copia de seguridad de las mismas. Así es posible averiguar
modificaciones de las claves y restaurarlas después de una nueva instalación. Esta restauración de las claves evita sobre todo que los usuarios se preocupen por el mensaje
de advertencia. Una vez comprobado que se trata del servidor SSH correcto a pesar del
aviso, es necesario borrar de ~/.ssh/known_hosts la entrada para el sistema.
23.2.6 Mecanismos de autenticación de SSH
Ahora se realiza la verdadera autenticación en su forma más simple mediante la indicación de nombre de usuario y contraseña tal como se ha mencionado en los ejemplos
anteriores. El objetivo de SSH era proporcionar un nuevo software seguro pero al mismo
tiempo fácil de usar. Debido a que va a sustituir a rsh y rlogin, SSH también ha de
ofrecer un método sencillo de autenticación que pueda emplearse fácilmente en el día
a día. SSH realiza la autenticación mediante otro juego de claves creado a petición del
usuario. Para ello el paquete SSH dispone de la utilidad ssh-keygen. Después de introducir ssh-keygen -t rsa o ssh-keygen -t dsa, transcurre un tiempo hasta
que el juego de claves está creado. A continuación el programa consulta el nombre de
archivo para guardar las claves.
Después confirmar la ubicación sugerida se pide una contraseña. Aunque el programa
admite una contraseña vacía, es mejor introducir un texto de 10 a 30 caracteres. Es
preferible no utilizar palabras o frases demasiado sencillas o cortas. Después de introducirlo, el programa pide una confirmación. El programa indica entonces el lugar
donde se guardan la clave privada y la pública; estos podrían ser, por ejemplo, los archivos id_rsa y id_rsa.pub.
El comando ssh-keygen -p -t rsa o ssh-keygen -p -t dsa sirve para
cambiar la contraseña antigua. La parte pública de la clave (en nuestro ejemplo id_rsa
.pub) se ha de copiar al ordenador remoto, guardándola allí como ~/.ssh/
authorized_keys. En el siguiente intento de conectar, SSH pregunta por la contraseña. Si esto no funciona, compruebe que la ubicación y el contenido de los archivos
anteriormente mencionados son correctos.
A la larga este procedimiento es más complicado que la introducción de una contraseña.
Por eso el paquete SSH incorpora otra utilidad llamada ssh-agent que mantiene claves
Seguridad en Linux
357
privadas durante una sesión en entorno X. Para realizarlo, todo el entorno X Windows
se inicia como un proceso hijo de ssh-agent. Con este fin, el método más sencillo consiste en editar el archivo .xsession, asignando a la variable usessh el valor yes
y después entrar al sistema con un gestor como por ejemplo KDM o XDM. Otra posibilidad es la de iniciar el entorno gráfico mediante ssh-agent startx.
Ahora se puede utilizar ssh o scp como es habitual y si ha distribuido su clave pública
como antes, no se le pedirá ninguna contraseña. Al salir del ordenador es importante
terminar la sesión X o bloquearla mediante un protector de pantalla con contraseña (por
ejemplo xlock).
Todas las modificaciones importantes realizadas con la implantación del protocolo SSH
versión 2 también se encuentran documentadas en el archivo /usr/share/doc/
packages/openssh/README.SuSE.
23.2.7 X, autenticación y mecanismos de
reenvío
Aparte de las mejoras en cuanto a la seguridad del sistema, ssh facilita también el trabajo con aplicaciones de X-Windows remotas. Al utilizar ssh con la opción -X, la
variable DISPLAY en el ordenador remoto se configura automáticamente y todas las
ventanas del X-Windows se mandan a través de la conexión ssh existente al ordenador
cliente. Esta sencilla función evita la captura de datos por parte de terceros en caso de
aplicaciones-X remotas con visualización local.
La opción -A traspasa el mecanismo de autenticación de ssh-agent al siguiente ordenador. Así se puede acceder de un ordenador a otro sin necesidad de introducir una contraseña. Es algo que sólo funciona si la clave pública se encuentra correctamente en
todos los ordenadores destino.
Por razones de seguridad, los dos mecanismos están desactivados en la configuración
predeterminada. No obstante, se pueden activar de forma permanente en el archivo de
configuración global /etc/ssh/ssh_config o en el personal de cada usuario ~/
.ssh/config.
También se puede utilizar ssh para el reenvío de cualquier conexión TCP/IP. Como
ejemplo se muestra el reenvío del puerto SMTP y POP3:
ssh -L 25:sun:25 earth
358
En este caso, cualquier conexión dirigida al puerto 25 (SMTP) de earth se reenvía al
puerto SMTP de sun a través del canal codificado. Es un procedimiento especialmente
útil para usuarios de servidores SMTP que no disponen de SMTP-AUTH o de prestaciones POP-before-SMTP. Así, el servidor de correo “en casa” puede entregar el correo
a cualquier lugar con conexión a Internet. De forma análoga, el siguiente comando
reenvía todas las consultas hechas al puerto 110 (POP3) en earth al puerto POP3 de
sun:
ssh -L 110:sun:110 earth
Ambos ejemplos exigen la introducción de los comandos como superusuario root,
ya que las conexiones se realizan con puertos locales privilegiados. Con la conexión
SSH establecida, el correo se envía y se recibe como siempre en modo de usuario normal.
En tal caso hay que configurar como Host SMTP y POP3 la máquina local localhost.
Puede conseguir información adicional en la páginas de manual de los distintos programas y en los archivos que se encuentran dentro del directorio /usr/share/doc/
packages/openssh.
23.3
Cifrado de particiones y
archivos
Todo usuario tiene algún dato confidencial que no debería estar al alcance de terceros.
Cuantas más conexiones y más movilidad tenga un equipo, con más cuidado deben
tratarse los datos. Se recomienda el cifrado de archivos o de particiones enteras si hay
terceros que puedan obtener acceso físico o a través de la red.
AVISO: El cifrado de medios ofrece una protección limitada
Tenga en cuenta que mediante los métodos descritos en esta sección no es
posible proteger un equipo en funcionamiento. Una vez montado un medio
cifrado, cualquier usuario con los permisos correspondientes tiene acceso a él.
El cifrado de medios es útil si el equipo se pierde o lo roban y usuarios sin autorización intentan leer datos confidenciales.
A continuación aparecen algunas situaciones posibles de uso.
Seguridad en Linux
359
Equipos portátiles
Si se viaja con un equipo portátil, es buena idea cifrar las particiones del disco duro
que contengan datos confidenciales. Si pierde el equipo o se lo roban, nadie podrá
acceder a los datos que se encuentren en un sistema de archivos cifrado o en un archivo independiente cifrado.
Medios extraíbles
Las unidades flash USB o los discos duros externos son tan susceptibles de robo
como los equipos portátiles. Un sistema de archivos cifrado ofrece protección
frente al acceso de terceros.
Estaciones de trabajo
En entornos empresariales en los que muchas personas tienen acceso a los equipos,
puede resultar útil cifrar particiones o archivos independientes.
23.3.1 Configuración de un sistema de
archivos cifrado con YaST
YaST ofrece cifrado de archivos y particiones durante la instalación así como en sistemas
ya instalados. Los archivos cifrados se pueden crear en cualquier momento porque se
integran perfectamente en la distribución de particiones. Para cifrar una partición entera,
dedique una partición a cifrado en la distribución de particiones. La propuesta de distribución de particiones estándar que YaST sugiere por defecto no incluye una partición
cifrada. Añádala manualmente en el cuadro de diálogo de particionamiento.
Creación de una partición cifrada durante la
instalación
AVISO: Introducción de contraseñas
Cuando establezca contraseñas para particiones cifradas, tenga en cuenta los
avisos de seguridad y memorícelas bien. Sin la contraseña no se puede acceder
a los datos cifrados ni restaurarlos.
El cuadro de diálogo de particionamiento avanzado de YaST, que se describe en la
Sección “Particionamiento” (Capítulo 3, Configuración del sistema con YaST, ↑Inicio),
ofrece las opciones necesarias para crear particiones cifradas. Haga clic en Crear como
360
al crear particiones normales. En el cuadro de diálogo que se abre, introduzca los parámetros de la nueva partición, como por ejemplo, el formato deseado y el punto de
montaje. Complete el proceso haciendo clic en Sistema de archivos codificado. En el
siguiente cuadro de diálogo, introduzca dos veces la contraseña. La nueva partición cifrada se creará al cerrar el cuadro de diálogo de particionamiento haciendo clic en
Aceptar. Al arrancar, el sistema operativo solicitará la contraseña antes de montar la
partición.
Si no desea montar la partición cifrada durante el inicio, pulse Entrar cuando se le pida
la contraseña. A continuación, rechace la posibilidad de volver a introducir la contraseña.
En este caso, el sistema de archivos cifrado no se montará y el sistema operativo continuará iniciándose, pero el acceso a los datos estará bloqueado. Una vez montada, todos
los usuarios podrán acceder a la partición.
Si el sistema de archivos cifrado sólo debe montarse cuando sea necesario, active la
opción Do Not Mount During Booting (No montar durante el arranque) en el cuadro
de diálogo Opciones fstab. La partición correspondiente no se montará cuando se
arranque el sistema. Después, para que sea accesible, móntela manualmente con
mount nombre_de_la_particion punto_de_montaje. Introduzca la
contraseña cuando se le pida. Cuando acabe de trabajar con la partición, desmóntela
con unmount nombre_de_la_particion para impedir el acceso de otros
usuarios.
Creación de una partición cifrada en un sistema en
funcionamiento
AVISO: Activación del cifrado en un sistema en funcionamiento
También es posible crear particiones cifradas en un sistema en funcionamiento
durante la instalación. Sin embargo, el cifrado de una partición existente destruye todos los datos que contenga.
En un sistema en funcionamiento, seleccione Sistema → Particionamiento en el centro
de control de YaST. Haga clic en Sí para continuar. En lugar de seleccionar Crear como
se describía anteriormente, haga clic en Editar. El resto del procedimiento es igual.
Seguridad en Linux
361
Instalación de archivos cifrados
En lugar de utilizar una partición, es posible crear sistemas de archivos cifrados dentro
de archivos independientes para almacenar datos confidenciales. Estos se crean desde
el mismo cuadro de diálogo de YaST. Seleccione Archivo crypt e introduzca la vía al
archivo que se creará y el tamaño deseado. Acepte la configuración de formato propuesta
y el tipo de sistema de archivos. A continuación, especifique el punto de montaje y
decida si el sistema de archivos cifrados debe montarse cuando se arranque el sistema.
La ventaja de los archivos cifrados es que se pueden añadir sin volver a particionar el
disco duro. Se montan mediante un dispositivo de bucle y tienen el mismo comportamiento que una partición normal.
Uso de vi para cifrado de archivos
La desventaja de utilizar particiones cifradas es que, mientras la partición se encuentre
montada, como mímimo el usuario root podrá acceder a los datos. Para evitarlo, se
puede utilizar vi en modo cifrado.
Utilice vi -x nombre_del_archivo para editar un archivo nuevo. vi solicitará
que se establezca una contraseña, tras lo cual cifrará el contenido del archivo. Cada vez
que se acceda al archivo, vi solicitará la contraseña correspondiente.
Si se desea una seguridad todavía mayor, es posible ubicar el archivo de texto cifrado
en una partición cifrada. Se recomienda hacerlo dado que el cifrado utilizado en vi no
es muy fuerte.
23.3.2 Cifrado del contenido de medios
extraíbles
YaST trata los medios extraíbles, tales como discos duros externos o unidades flash
USB, de la misma manera que cualquier disco duro. Los archivos o las particiones de
estos medios pueden cifrarse de la manera anteriormente descrita. Sin embargo, seleccione que estos medios no se monten durante el inicio del sistema, dado que normalmente sólo se conectan mientras el sistema se encuentra funcionando.
362
23.4
Seguridad y confidencialidad
Una de las características principales de un sistema Linux o UNIX es su capacidad de
gestionar varios usuarios a la vez (multiusuario) y para permitir que éstos realicen varias
tareas (multitarea) en el mismo equipo de forma simultánea. Además, el sistema operativo es transparente para los usuarios. A menudo, los usuarios no saben si los datos y
las aplicaciones que utilizan se proporcionan localmente desde su máquina o si su disponibilidad procede de algún otro punto de la red.
Con la capacidad multiusuario, los datos de usuarios distintos deben almacenarse de
forma separada. La seguridad y la privacidad deben quedar garantizada. La seguridad
de los datos era ya una cuestión importante, aun antes de que los equipos pudieran conectarse a través de redes. Exactamente igual que hoy, la preocupación más importante
era la capacidad de mantener la disponibilidad de los datos pese a la pérdida del medio
de datos (un disco duro en la mayor parte de los casos) o a otro tipo de daños.
Fundamentalmente, esta sección se centra en problemas de confidencialidad y en los
modos de protección de la privacidad de los usuarios; no obstante, nunca se subrayará
suficientemente la vital importancia que tienen, para lograr un estado de seguridad exhaustivo, los procedimientos de creación de copias de seguridad flexibles, puestas a
prueba y actualizadas con regularidad. En su defecto, la recuperación de los datos podría
ser dificilísima, y no sólo en el caso de algún defecto del hardware, sino también si se
sospecha que alguien ha conseguido un acceso no autorizado a los archivos y los ha
modificado.
23.4.1 Seguridad local y de red
Hay varias formas de acceder a los datos:
• la comunicación con personas que disponen de la información deseada o del acceso
a los datos en un equipo;
• directamente desde la consola de un equipo (acceso físico);
• a través de una línea serie;
• mediante un vínculo de red.
Seguridad en Linux
363
En todos estos casos, el usuario debería autentificarse antes de acceder a los recursos
o datos en cuestión. Es posible que un servidor Web sea menos restrictivo a este respecto,
pero aun así el usuario no deseará que cualquier internauta pueda acceder a sus datos.
El primero de los casos que figura en la lista anterior es el que implica una mayor dosis
de interacción humana; por ejemplo, la solicitud, por parte de un miembro del personal
de un banco, de que una persona demuestre ser la propietaria de una cuenta bancaria
concreta. En tal caso, se le pide una firma, un PIN o una contraseña que sirvan para
constatar su identidad. En algunos casos, es posible obtener ciertos datos de alguien
que disponga de determinada información con sólo mencionar retazos y fragmentos
para ganar su confianza mediante una retórica brillante. Puede persuadirse a la víctima
para que revele, de forma gradual y quizás sin ser consciente de ello, más información.
Entre los piratas informáticos (hackers), esto se conoce como ingeniería social (social
engineering). La educación, así como el tratamiento sensato del lenguaje y la información, constituyen la única protección posible contra estos hechos. Antes de irrumpir en
un sistema informático, a menudo los intrusos intentan utilizar a recepcionistas, al personal del servicio técnico o incluso a familiares. En numerosos casos, estos ataques
basados en la ingeniería social se descubren pasado mucho tiempo.
Alguien con intenciones de obtener un acceso no autorizado a los datos de un usuario
también puede optar por el método tradicional de hacerse directamente con el hardware.
Por lo tanto, la máquina debería protegerse contra cualquier tipo de manipulación para
que nadie pueda retirar, sustituir o inutilizar ninguno de sus componentes. Esto se
aplica igualmente a las copias de seguridad e incluso a cualquier cable de red o de corriente. También ha de garantizarse la seguridad del procedimiento de arranque, puesto
que hay algunas combinaciones de teclas bien conocidas que pueden provocar un
comportamiento poco habitual. Evite esto último definiendo contraseñas para el BIOS
y el cargador de arranque.
Los terminales en serie conectados a puertos de serie siguen utilizándose en muchos
sitios. De forma contraria a las interfaces de red, no se sirven de un protocolo de red
para comunicarse con el host. Se hace uso de un simple cable o un puerto de infrarrojos
para enviar, en una y otra dirección, caracteres sin formato entre los dispositivos. El
propio cable es el punto más débil de un sistema como éste. Resulta fácil grabar cualquier
dato que circule por los cables de este sistema con sólo conectar una vieja impresora.
Lo que se logra con una impresora también puede llevarse a cabo por otros medios;
todo depende del esfuerzo que se invierta en el plan de ataque.
La lectura local de un archivo en un host requiere reglas de acceso diferentes a la de
abrir una conexión de red con un servidor en un host distinto. Existe una diferencia
364
entre la seguridad local y la seguridad de red. El límite entre ambos términos radica en
la colocación de los datos en paquetes para efectuar su envío.
Seguridad local
La seguridad local comienza con el entorno físico de la ubicación en la que el equipo
se encuentra funcionando. Coloque su máquina en un lugar en el que la seguridad esté
en consonancia con sus expectativas y necesidades. El objetivo principal de la seguridad
local es la de mantener a los usuarios separados unos de otros, de modo que ninguno
de ellos pueda hacerse con los permisos o adoptar la identidad de otros. Esta es una
regla de aplicación general, aunque adquiere un peso especial con respecto al usuario
root, que es el que ostenta el poder principal en el sistema. root puede adoptar la
identidad de cualquier otro usuario local sin que se le solicite ninguna contraseña y, de
este modo, leer cualquier archivo almacenado localmente.
Contraseñas
En un sistema Linux, las contraseñas no se almacenan como texto sin formato, ni se
espera simplemente a que la cadena de texto introducida coincida con el patrón guardado.
Si así fuera, todas las cuentas del sistema se verían en peligro si alguien tuviera acceso
al archivo correspondiente. En lugar de esto, la contraseña almacenada está cifrada y,
cada vez que se escribe, se vuelve a cifrar y se efectúa una comparación de ambas cadenas cifradas. Esto sólo proporciona más seguridad si la contraseña cifrada no puede
convertirse, mediante ingeniería inversa, en la cadena de texto original.
Esto se consigue de hecho mediante un tipo especial de algoritmo, denominado trapdoor
algorithm (algoritmo trampilla), puesto que sólo funciona en una dirección. Un intruso
que haya logrado hacerse con la cadena cifrada no será capaz de obtener la contraseña
con sólo aplicar el mismo algoritmo una vez más. En lugar de eso, necesitaría examinar
todas las combinaciones posibles de caracteres hasta hallar la que se pareciera a la
contraseña al cifrarse. Con contraseñas de ocho caracteres de longitud, debe calcularse
un número considerable de combinaciones posibles.
En la década de los setenta, se argüía que este método aportaría una mayor seguridad
que los demás a causa de la relativa lentitud del algoritmo utilizado, que tardaba unos
pocos segundos en cifrar una sola contraseña. No obstante, entre tanto, los equipos se
han hecho lo suficientemente potentes para efectuar varios cientos de miles o incluso
millones de cifrados por segundo. Por ello, las contraseñas cifradas no deberían resultar
visibles para los usuarios normales (éstos no pueden leer /etc/shadow). Aun más
Seguridad en Linux
365
importante resulta que las contraseñas no sean fáciles de adivinar, por si el archivo de
contraseña se hace visible a causa de algún error. En consecuencia, no es muy útil
“traducir” una contraseña como “tentar” como algo parecido a “t@n1@3”.
La sustitución de algunas letras de una palabra por números de apariencia similar no
resulta lo suficientemente segura. Los programas de falsificación de contraseñas que
utilizan diccionarios para adivinar palabras también funcionan mediante sustituciones
de este tipo. Una mejor forma de enmascarar una palabra con un significado poco común,
algo que tan sólo tenga sentido para el usuario, como las primeras letras de las palabras
de una frase o del título de un libro, como “El nombre de la rosa” de Umberto Eco.
Esto daría lugar a la siguiente contraseña segura: “TNotRbUE9”. A diferencia de esta
última, cualquiera que conozca mínimamente al usuario podría adivinar contraseñas
como “cervecero” o “natalia76”.
Procedimiento de arranque
Configure su sistema de modo que no pueda arrancarse desde un disquete o CD, bien
desmonte por completo las unidades o establezca una contraseña para el BIOS y configure este último para permitir el arranque únicamente desde el disco duro. Un sistema
Linux se inicia, por lo general, gracias a un cargador de arranque, lo que permite al
usuario transferir opciones adicionales al núcleo arrancado. Evite que otros utilicen
estos parámetros durante el arranque estableciendo una contraseña adicional en /boot/
grub/menu.lst (consulte el Capítulo 29, Cargador de arranque (p. 469)). Éste es
un aspecto clave para la seguridad de su sistema. Los permisos root hacen posible no
sólo la ejecución del propio núcleo, sino que también constituyen la primera autoridad
para conceder permisos root cuando se inicia el sistema.
Permisos de archivo
Como regla general, se debe trabajar en una tarea dada con los privilegios más restringidos posibles. Por ejemplo, no es en absoluto necesario ser root para leer o escribir
correo electrónico. Si el programa de correo tiene un error, éste podría aprovecharse
en un ataque para el que se necesitasen exactamente los permisos de ese programa
cuando se inició. La observancia de la regla anterior minimiza los posibles daños.
Los permisos de los más de 200.000 archivos que se incluyen en una distribución SUSE
se seleccionan cuidadosamente. Un administrador del sistema que instale software
adicional u otros archivos debería tener un cuidado extremo al actuar así, en especial
al establecer los permisos. Un administrador del sistema experimentado y consciente
366
de la importancia de la seguridad siempre utiliza la opción -l con el comando ls para
conseguir una amplia lista de archivos, lo que le permite detectar inmediatamente
cualquier incorrección de los permisos de archivos. Un atributo de archivo incorrecto
no sólo implica la posibilidad de modificar o borrar los archivos. root podría ejecutar
estos archivos modificados o, en el caso de archivos de configuración, los programas
podrían usarlos con los permisos de root. Esto incrementa de forma notable las posibilidades de acción de los intrusos. Los intrusos como los descritos se conocen como
"huevos de cuco", puesto que un usuario diferente (que haría las veces de ave) ejecuta
el programa (que sería el huevo) como un pájaro cuco que hace que otras aves incuben
sus huevos.
El sistema SUSE Linux incluye los archivos permissions, permissions.easy,
permissions.secure y permissions.paranoid, todos ellos en el directorio
/etc. El objetivo de estos archivos es definir permisos especiales, como directorios
de escritura universal o, en el caso de archivos, el bit setuser ID (los programas con el
bit setuser ID definido no funcionan con los permisos del usuario que los ha ejecutado,
sino con los permisos del propietario del archivo que, en la mayor parte de los casos,
es root). Un administrador puede utilizar el archivo /etc/permissions.local
para añadir sus propios ajustes.
Para definir qué archivos de los anteriormente mencionados utilizan los programas de
configuración de SUSE para establecer los permisos como corresponde, seleccione
Security (Seguridad) en YaST. Para obtener más información acerca de este tema,
consulte los comentarios en /etc/permissions o la página del manual de chmod
(man chmod).
Desbordamiento de buffers y errores de cadenas de
formato
Se debe tener especial cuidado siempre que un programa pueda procesar datos que un
usuario pueda modificar, aunque ésta es una cuestión que concierne más al programador
de la aplicación que a los usuarios normales. El programador debe asegurarse de que
la aplicación interprete los datos correctamente, sin escribirlos en las áreas de memoria
que son demasiado pequeñas para almacenarlos. Asimismo, el programa debería
transferir los datos de un modo coherente, utilizando las interfaces definidas para ello.
Un desbordamiento de buffer puede tener lugar si, al escribir en un buffer de memoria,
no se tiene en cuenta su tamaño real. Hay casos en los que los datos (tal y como lo genera el usuario) desbordan el espacio disponible en el buffer. El resultado es que los
Seguridad en Linux
367
datos se escriben más allá del área del buffer lo que, en determinadas circunstancias,
hace posible que un programa ejecute secuencias de programa influido por el usuario
(y no por el programador), en lugar de limitarse a procesar los datos del usuario. Un
error de este tipo puede acarrear graves consecuencias, sobre todo si el programa se
ejecuta con privilegios especiales (consulte la “Permisos de archivo” (p. 366)).
Los errores de cadenas de formato funcionan de un modo ligeramente distinto, aunque
también en este caso es la entrada del usuario la que puede hacer que el programa tenga
un funcionamiento incorrecto. En la mayor parte de los casos, estos errores de programación se aprovechan con programas que se ejecutan con permisos especiales (programas setuid y setgid); esto también significa que tanto los datos como el sistema pueden
protegerse de tales errores eliminando de los programas los privilegios de ejecución
correspondientes. Una vez más, la mejor solución consiste en aplicar el principio del
uso mínimo de privilegios (consulte la “Permisos de archivo” (p. 366)).
Puesto que los desbordamientos de buffer y los errores de cadenas de formato son
errores relacionados con la gestión de los datos de usuario, no sólo pueden explotarse
si se ha dado acceso a una cuenta local. Muchos de los errores de los que se ha informado
también pueden explotarse mediante un enlace de red. En consecuencia, los desbordamientos de buffer y los errores de cadenas de formato deberían calificarse como relevantes tanto para la seguridad de local como para la de red.
Virus
En contra de lo que suele decirse, existen virus que se ejecutan en Linux. No obstante,
los virus que se conocen se iniciaron por sus autores como prototipos para probar que
la técnica funcionaba como se esperaba. Hasta el momento, no se ha localizado ninguno
de estos virus circulando en libertad.
Los virus no pueden sobrevivir ni extenderse sin un huésped que los acoja. En este caso,
el huésped sería un programa o un área de almacenamiento importante del sistema,
como el registro de arranque principal, que necesita poder escribirse para el código de
programa del virus. Debido a sus capacidades de multiusuario, Linux puede restringir
el acceso de escritura a determinados archivos, con especial importancia de los archivos
del sistema. Por lo tanto, si el usuario lleva a cabo su trabajo habitual con permisos
root, aumenta la probabilidad de que el sistema quede infectado por un virus. Por
contra, si se sigue el principio del uso de los mínimos privilegios posibles mencionado
anteriormente, la probabilidad de contagio es escasa.
368
Independientemente de esto, nunca debería ejecutarse precipitadamente un programa
de algún sitio desconocido de Internet. Los paquetes SUSE RPM incluyen una firma
criptográfica, en forma de etiqueta digital, que pone de manifiesto el cuidado con el
que se elaboraron. Los virus son un indicio típico de que el administrador o el usuario
carece de la conciencia necesaria acerca de los asuntos relacionados con la seguridad,
con lo que se pone en peligro incluso un sistema que, por su mismo diseño, debería
gozar de una seguridad extrema.
No deben confundirse los virus con los gusanos, que pertenecen completamente al
mundo de las redes. Los gusanos no necesitan un huésped para propagarse.
Seguridad de la red
La seguridad de la red es importante para lograr la protección de un ataque que se inicia
en el exterior. El procedimiento de inicio de sesión típico, en el que se solicita un
nombre de usuario y una contraseña para autenticar al usuario, constituye un problema
del ámbito de la seguridad local. En el caso particular de un inicio de sesión en red, hay
que diferenciar dos aspectos relacionados con la seguridad. Lo que tiene lugar hasta
que se lleva a cabo la autenticación concierne a la seguridad de red; y todo aquello que
ocurre posteriormente incumbe a la seguridad local.
X Window System y X Authentication
Como se mencionó al comienzo, la transparencia de la red es una de las características
centrales de un sistema UNIX. X, el sistema de ventanas de los sistemas operativos
UNIX, puede utilizar esta función de un modo impresionante. Con X, no existe básicamente ningún problema para iniciar sesión en un host remoto y ejecutar un programa
gráfico que, a continuación, se envía a través de la red para mostrarse en el equipo del
usuario.
Cuando un cliente X debiera visualizarse de forma remota utilizando un servidor X,
éste debería proteger el recurso que gestiona (la visualización) del acceso no autorizado.
En términos más concretos, deberían otorgarse ciertos permisos al programa cliente.
Con X Window System, hay dos formas de hacer esto, denominados "control del acceso
basado en host" y "control de acceso basado en cookies". La primera utiliza la dirección
IP del host en el que el cliente debería ejecutarse. El programa que controla esto es
xhost. xhost especifica la dirección IP de un cliente legítimo en una minúscula base de
datos que pertenece al servidor X. No obstante, el uso de direcciones IP para la autenticación no es muy seguro. Por ejemplo, si hubiera un segundo usuario trabajando en el
Seguridad en Linux
369
host y enviando el programa cliente, también tendría acceso al servidor X (como alguien
que roba la dirección IP). A causa de estos inconvenientes, este método de autenticación
no se describe aquí con mayor detalle, pero puede obtener más información al respecto
con man xhost.
En el caso del control de acceso basado en cookies, se genera una cadena de caracteres
que sólo conoce el servidor X y el usuario legítimo, como un carnet de identidad de
algún tipo. Esta cookie (la palabra no hace referencia a las cookies habituales, sino a
las galletas ["cookies", en inglés] de la fortuna chinas, que contienen un epigrama) se
almacena al iniciar sesión en el archivo .Xauthority en el directorio personal del
usuario y está disponible para cualquier cliente X que desee utilizar el servidor X para
visualizar una ventana. El usuario puede examinar el archivo .Xauthority mediante
la herramienta xauth. Si se tuviera que cambiar el nombre de .Xauthority o si se
hubiera suprimido por accidente el archivo del directorio personal, el usuario no sería
capaz de abrir ninguna nueva ventana o clientes X. Puede leer más acerca de los mecanismos de seguridad de X Window System en la página Man de Xsecurity
(man Xsecurity).
Se puede utilizar SSH (shell seguro) para cifrar completamente una conexión de red y
reenviarla de forma transparente sin que el usuario perciba el mecanismo de cifrado.
Esto también se conoce como "redireccionamiento X" (X forwarding). El redireccionamiento X se logra simulando un servidor X en el lado del servidor y estableciendo una
variable DISPLAY para el shell en el host remoto. Se puede encontrar más información
sobre SSH en la Sección 23.2, “SSH: trabajar de forma segura en red” (p. 353).
AVISO
Si el host en el que se inicia la sesión no se considera seguro, no se debe utilizar
el redireccionamiento X. Si el redireccionamiento X está habilitado, un intruso
podría autenticarse mediante la conexión SSH para irrumpir en el servidor X y
espiar, por ejemplo, las cadenas que se escriben mediante el teclado.
Desbordamiento de buffers y errores de cadenas de
formato
Como se indicó en la “Desbordamiento de buffers y errores de cadenas de formato”
(p. 367), los desbordamientos de buffer y los errores de cadenas de formato deberían
calificarse como asuntos relevantes tanto para la seguridad de local como para la de
red. Como ocurre con las variantes locales de tales errores, los desbordamientos de
370
buffer en los programas de red se utilizan la mayoría de las veces, cuando se aprovechan
convenientemente, para obtener permisos root. Aun si no es así, un intruso podría
utilizar el error para lograr acceder a una cuenta local sin privilegios para explotar otros
puntos débiles que pudiera haber en el sistema.
Los desbordamientos de buffer y los errores de cadenas de formato que pueden explotarse por medio de un enlace de red son, con diferencia, los tipos de ataque más frecuentes en general. Los exploits (programas que se aprovechan de estos fallos de seguridad
recién descubiertos) se colocan a menudo en las listas de correo de seguridad. Pueden
utilizarse para sacar provecho de la vulnerabilidad sin necesidad de conocer los detalles
del código. A lo largo de los años, la experiencia ha demostrado que la disponibilidad
de los códigos de los exploits ha contribuido a reforzar la seguridad de los sistemas
operativos; esto se debe, obviamente, al hecho de que los desarrolladores de los sistemas
operativos se han visto forzados a solucionar el problema que su software presentaba.
Con el software libre, cualquiera tiene acceso al código fuente (SUSE Linux viene con
todos los códigos fuente disponibles) y aquel que detecte un fallo de seguridad y el
código del exploit puede hacer pública la revisión para solucionar el error correspondiente.
Denegación de servicio
El propósito de un ataque DoS (Denegación de servicio) es bloquear un programa del
servidor o incluso un sistema al completo, lo que podría lograrse por varios medios:
sobrecargando el servidor, manteniéndolo ocupado con paquetes inservibles o explotando
un desbordamiento de buffer remoto. A menudo, un ataque DoS se lleva a cabo con el
único propósito de hacer que el servicio desaparezca. No obstante, una vez que un servicio dado deja de estar disponible, las comunicaciones pueden volverse vulnerables a
los ataques man-in-the-middle (sniffing, secuestro de conexión TCP, spoofing) y al
envenenamiento de DNS.
Ataques man in the middle: sniffing, secuestro,
spoofing
En general, cualquier ataque remoto efectuado por un intruso que se coloca a sí mismo
entre los hosts de comunicación se denomina ataque man-in-the-middle attack. Lo que
casi todos los tipos de ataques man-in-the-middle tienen en común es que la víctima,
por lo general, no es consciente de que está ocurriendo algo. Hay muchas variantes
posibles; por ejemplo, el intruso puede hacerse con una petición de conexión y redirec-
Seguridad en Linux
371
cionarla a la máquina de destino. En ese momento, la víctima establece, sin darse
cuenta, una conexión con el host incorrecto, puesto que el otro extremo se hace pasar
por la máquina de destino legítima.
La forma más simple de ataque man-in-the-middle se denomina sniffer (en los que el
intruso “tan sólo” escucha el tránsito del tráfico de la red). En una forma más compleja
de ataque, el intruso “man in the middle” puede intentar apoderarse de una conexión
ya establecida (secuestro). Para ello, el intruso necesitaría analizar los paquetes durante
cierto tiempo para ser capaz de predecir los números de la secuencia TCP que pertenecen
a la conexión. Cuando, finalmente, el intruso asume la función del host de destino, las
víctimas se percatan del ataque, puesto que les aparece un mensaje de error que indica
el fin de la conexión a causa de un error. El hecho de que haya protocolos sin protección
contra los secuestros mediante cifrado, que tan sólo lleva a cabo un procedimiento de
autenticación simple al establecer la conexión, facilita la acción de los intrusos.
El spoofing es un ataque en el que los paquetes se modifican para que incluyan datos
de origen falsos (normalmente, la dirección IP). Las formas más activas de ataque se
sirven del envío de paquetes falsos; algo que en una máquina Linux puede efectuar tan
sólo el superusuario (root).
Muchos de los ataques mencionados se llevan a cabo en combinación con una DoS. Si
un intruso tiene la oportunidad de hacer que un host caiga repentinamente, aunque sólo
sea por poco tiempo, le resultará más fácil efectuar un ataque activo, puesto que, durante
un tiempo, el host no será capaz de detenerlo.
Envenenamiento de DNS
En el envenenamiento de DNS, el intruso corrompe la caché de un servidor DNS respondiéndole con paquetes de respuesta de DNS con identidad suplantada (mediante
spoofing), con lo que intenta hacer que el servidor envíe determinados datos a una
víctima que solicita información a ese servidor. Muchos servidores mantienen una relación de confianza con otros hosts, basada en direcciones IP o nombres de host. El intruso
necesita tener una buena comprensión de la estructura real de las relaciones de confianza
entre los hosts para hacerse pasar por uno de los hosts fiables. Por lo general, el intruso
analiza algunos paquetes recibidos del servidor para conseguir la información necesaria.
A menudo, el intruso también necesita dirigir un ataque DoS oportuno al nombre del
servidor. Protéjase utilizando conexiones cifradas capaces de verificar la identidad de
los hosts con los cuales se realiza la conexión.
372
Gusanos
Los gusanos se confunden con frecuencia con los virus, pero hay una clara diferencia
entre los dos. Al contrario de lo que ocurre con los virus, los gusanos no necesitan infectar un programa huésped para vivir. En lugar de ello, se especializan en propagarse
lo más rápidamente posible en las estructuras de red. Los gusanos que aparecieron en
el pasado, como Ramen, Lion o Adore, utilizan fallos de seguridad bien conocidos en
los programas de los servidores, como bind8 o lprNG. La protección contra los gusanos
es relativamente sencilla. Puesto que hay cierto lapso de tiempo entre el descubrimiento
de un fallo de seguridad y el momento en el que el gusano ataca al servidor, hay bastante
probabilidad de que una versión actualizada del programa afectado por el fallo se encuentre disponible a tiempo. Esto es útil sólo si el administrador instala las actualizaciones de seguridad en los sistemas en cuestión.
23.4.2 Consejos y trucos generales de
seguridad
Para llevar a cabo una gestión competente de la seguridad, es importante mantenerse
al día de los nuevos desarrollos y la nueva información relativa a los problemas de seguridad más recientes. Una muy buena forma de proteger un sistema contra problemas
de todo tipo es adquirir e instalar, tan rápido como sea posible, los paquetes actualizados
que recomiendan los comunicados de seguridad. Los comunicados de seguridad de
SUSE se publican en una lista de correo a la que es posible suscribirse a través del enlace http://www.novell.com/linux/security/securitysupport
.html. La lista [email protected] es una fuente de información de primera mano en lo que respecta a los paquetes actualizados e incluye, entre
aquellos que contribuyen activamente, a miembros del equipo de seguridad de SUSE.
La lista de correo [email protected] es un buen lugar para discutir cualquier
problema de seguridad que resulte de interés. Suscríbase en la misma página Web.
[email protected] es una de las listas de correo más conocidas en
todo el mundo. Se recomienda su lectura, puesto que recibe entre 15 y 20 publicaciones
diarias. Puede encontrarse más información en http://www.securityfocus
.com.
La lista siguiente enumera una serie de reglas que le resultarán útiles a la hora de resolver
determinados asuntos de seguridad básicos:
Seguridad en Linux
373
• De acuerdo con la regla que recomienda usar el conjunto más restrictivo posible
de permisos, evite realizar sus tareas como root. Con ello, se reduce el riesgo de
filtraciones de huevos de cuco o virus y se consigue protección contra los propios
errores.
• Si es posible, procure utilizar en todo momento conexiones cifradas para trabajar
en una máquina remota. La práctica habitual debería ser utilizar ssh (shell seguro)
para sustituir telnet, ftp, rsh y rlogin.
• Evite utilizar los métodos de autenticación basados únicamente en las direcciones
IP.
• Intente mantener actualizados los paquetes de elementos más importantes relacionados con la red y suscríbase a las listas de correo correspondientes para recibir
comunicados sobre las nuevas versiones de estos programas (bind, sendmail, ssh,
etc.). Esto también se aplica al software relevante para la seguridad local.
• Cambie el archivo /etc/permissions para optimizar los permisos de los archivos que sean cruciales para la seguridad del sistema. Si elimina el bit setuid de
un programa, éste podría ser incapaz, a partir de entonces, de realizar su trabajo de
la forma esperada. Por otro lado, tenga en cuenta que, en la mayor parte de los casos,
el programa también dejará de constituir un posible riesgo para la seguridad. Lo
anterior puede aplicarse de forma similar a los directorios y archivos de escritura
universal.
• Inhabilite todos los servicios de red que el servidor no tenga más remedio que utilizar para funcionar correctamente. Con ello, el sistema incrementará su seguridad.
Pueden encontrarse los puertos abiertos con el estado de zócalo LISTEN mediante
el programa netstat. En cuanto a las opciones, se recomienda utilizar netstat -ap
o netstat -anp. La opción -p permite ver qué proceso ocupa un puerto y con
qué nombre.
Compare los resultados obtenidos al utilizar netstat con los de una exploración exhaustiva de puertos efectuada desde el exterior del host. Para ello, un programa
excelente es nmap, que además de comprobar los puertos de la máquina del usuario,
también saca conclusiones con respecto a los servicios que se encuentran en espera
tras ellos. No obstante, la exploración de puertos puede interpretarse como un acto
agresivo, así que no la lleve a cabo en un host si no cuenta con la aprobación explícita del administrador. Por último, recuerde que no sólo es importante explorar los
puertos TCP, sino también los UDP (opciones -sS y -sU).
374
• Para monitorizar la integridad de los archivos del sistema de un modo fiable, utilice
el programa AIDE (Entorno de detección de intrusión avanzada), disponible en
SUSE Linux. Cifre las bases de datos creadas por AIDE para impedir que alguien
las manipule. Además, disponga de una copia de seguridad de esta base de datos
fuera de su máquina, almacenada en un medio de datos externo que no se encuentre
conectado a aquélla mediante ningún enlace de red.
• Sea cuidadoso al instalar software de terceros. Se conocen casos en los que un pirata informático (hacker) incluyó un troyano en el archivo tar de un paquete de
software de seguridad que, afortunadamente, se descubrió a tiempo. Si instala un
paquete binario, procure que no haya dudas sobre el sitio Web del que lo descargó.
Los paquetes RPM de SUSE se distribuyen con la firma gpg. La clave que SUSE
utiliza para la firma es:
ID:9C800ACA 2000-10-19 SUSE Package Signing Key <[email protected]>
Key fingerprint = 79C1 79B2 E1C8 20C1 890F 9994 A84E DAE8 9C80 0ACA
El comando rpm --checksig package.rpm muestra si el checksum y la
firma de un paquete instalado son correctos. Puede encontrar la clave en el primer
CD de la distribución y en la mayor parte de los servidores de clave de todo el
mundo.
• Revise con regularidad las copias de seguridad de usuario y los archivos de sistema.
Tenga en cuenta que si no comprueba si las copias de seguridad funcionan, éstas
pueden resultar completamente inútiles.
• Revise los archivos de registro. Siempre que sea posible, escriba un pequeño guión
para buscar entradas sospechosas. Hay que reconocer que no se trata precisamente
de una tarea trivial. En última instancia, tan sólo el usuario sabe qué entradas son
atípicas y cuáles no.
• Utilice tcp_wrapper para restringir el acceso a los servicios individuales que
se ejecuten en su máquina, con lo que dispondrá de un control explícito sobre las
direcciones IP que pueden conectarse a ese servicio. Para obtener más información
sobre tcp_wrapper, consulte las páginas del manual de tcpd y de hosts_access
(man 8 tcpd, man hosts_access).
• Utilice SuSEfirewall para mejorar la seguridad proporcionada por tcpd (tcp_wrapper).
Seguridad en Linux
375
• Diseñe las medidas de seguridad para que sean repetitivas: un mensaje que se lea
dos veces es mejor que ningún mensaje en absoluto.
23.4.3 Uso de la dirección de notificación
de la Central de seguridad
Si descubre algún problema relacionado con la seguridad, escriba un mensaje de correo
electrónico a [email protected] después de revisar los paquetes actualizados
disponibles. Incluya una descripción actualizada del problema y el número de versión
del paquete en cuestión. SUSE intentará enviar una respuesta lo antes posible. Se recomienda cifrar con pgp sus mensajes de correo electrónico. La clave pgp de SUSE es:
ID:3D25D3D9 1999-03-06 SUSE Security Team <[email protected]>
Key fingerprint = 73 5F 2E 99 DF DB 94 C4 8F 5A A3 AE AF 22 F2 D5
Esta clave también se encuentra disponible para su descarga en http://www.novell
.com/linux/security/securitysupport.html.
376
24
Listas de control de acceso en Linux
El presente capítulo ofrece un breve resumen sobre las características y las funciones
de las ACL (listas de control de acceso) de POSIX para sistemas de archivos de Linux.
Las ACL se pueden emplear como una ampliación del concepto tradicional de permisos
para los objetos de los sistemas de archivos. Con las ACL, los permisos se pueden definir de forma más flexible de lo que se entiende tradicionalmente por el concepto de
permiso.
El término ACL de POSIX sugiere que se trata de un estándar verdadero de POSIX
(interfaz de sistema operativo portátil). Los estándares de borrador POSIX 1003.1e y
POSIX 1003.2c se han eliminado por diversas razones. En cualquier caso, las ACL que
se encuentran en muchos sistemas que pertenecen a la familia UNIX se basan en dichos
borradores, mientras que la implementación de las ACL de los sistemas de archivos,
según se describe en el siguiente capítulo, siguen igualmente estos dos estándares.
Ambos estándares pueden verse en http://wt.xpilot.org/publications/
posix.1e/.
24.1
Ventajas de las ACL
Tradicionalmente, se definen tres conjuntos de permisos para cada objeto de un archivo
de un sistema Linux. Dichos conjuntos incluye los permisos de lectura (r), escritura
(w) y ejecución (x) para cada uno de los tres tipos de usuarios —el propietario del archivo, el grupo y otros usuarios—. Por lo demás, también es posible definir el bit definir
id de usuario, el bit definir id de grupo y el bit de permanencia. Este concepto básico
se adecúa a la perfección a la mayoría de los casos prácticos. Sin embargo, para situaciones más complejas o aplicaciones avanzadas, anteriormente los administradores del
Listas de control de acceso en Linux
377
sistema tenían que hacer uso de una serie de trucos para sortear las limitaciones del
concepto tradicional de permiso.
Las ACL se pueden emplear en situaciones que precisen una ampliación del concepto
tradicional de permisos de archivos. Dichas listas permiten la asignación de permisos
a usuarios individuales o a grupos, incluso si éstos no se corresponden con el propietario
original ni con el grupo propietario. Las listas de control de acceso son una función del
núcleo de Linux y en la actualidad son compatibles con ReiserFS, Ext2, Ext3, JFS y
XFS. Gracias al empleo de las ACL, es posible desarrollar las situaciones más complicadas sin tener que implementar complejos modelos de permisos en el nivel de la aplicación.
Las ventajas que suponen las ACL son más que evidentes en situaciones como la sustitución de un servidor de Windows por uno de Linux. Algunas de las estaciones de trabajo conectadas pueden continuar ejecutándose en Windows incluso después de la migración. El sistema Linux ofrece servicios de archivos e impresión a los clientes de
Windows mediante el empleo de Samba. Debido a que Samba es compatible con las
listas de control de acceso, los permisos de usuarios se pueden configurar tanto en el
servidor Linux como en Windows con una interfaz gráfica de usuario (únicamente con
Windows NT y versiones posteriores). Con winbindd, por otra parte, es posible también
asignar permisos a usuarios que solamente existen en un dominio de Windows y que
no dispone de una cuenta en el servidor Linux.
24.2
Definiciones
clase de usuario
El concepto convencional de permisos de POSIX hace uso de tres clases de usuarios
para la asignación de permisos en el sistema de archivos: propietario, grupo propietario y otros usuarios. Se pueden definir tres bits de permiso para cada clase de
usuario, lo que hace posible dar permiso para leer, (r), escribir (w) y ejecutar (x).
ACL de acceso
Los permisos de acceso de usuario y de grupo para todos los tipos de objetos de
sistemas de archivos (archivos y directorios) se determinan mediante las ACL de
acceso.
378
ACL por defecto
Las ACL por defecto se pueden aplicar únicamente a los directorios. Dichas listas
determinan los permisos que un objeto de un sistema de archivos hereda de su directorio padre cuando se crea.
entrada de ACL
Cada ACL consta de un conjunto de entradas de ACL. Cada entrada de ACL contiene un tipo (consulte Tabla 24.1, “Tipos de entrada de ACL” (p. 380)), un calificador
para el usuario o el grupo al que hace referencia la entrada y, por último, un conjunto
de permisos. Para algunos tipos de entradas, el calificador del grupo o de los usuarios
no está definido.
24.3
Gestión de las ACL
La Tabla 24.1, “Tipos de entrada de ACL” (p. 380) resume los seis tipos posibles de
entradas de ACL, cada una de las cuales define los permisos para un usuario o para un
grupo de usuarios. La entrada del propietario define los permisos del usuario a quien
pertenece el archivo o el directorio. La entrada del grupo propietario define los permisos
del grupo propietario del archivo. El superusuario puede cambiar el propietario o el
grupo propietario mediante los comandos chown o chgrp, en cuyo caso las entradas
de propietario y de grupo propietario hacen referencia al nuevo propietario y al nuevo
grupo propietario. Cada entrada de usuario nombrado define los permisos del usuario
especificado en el campo del calificador de la entrada, que es el campo intermedio de
la forma de texto que se muestra en la tabla Tabla 24.1, “Tipos de entrada de ACL”
(p. 380). Cada entrada grupo nombrado define los permisos del grupo que se especifican
en el campo del calificador de la entrada. Únicamente las entradas del usuario nombrado
y del grupo nombrado cuentan con un campo del calificador que no está vacío. La entrada otros define los permisos del resto de usuarios.
La entrada máscara aumenta los límites de los permisos asignados a las entradas
usuario nombrado, grupo nombrado y grupo propietario mediante la definición de qué
permisos en dichas entradas son efectivos y cuáles se encuentran en la máscara. Si
existen permisos tanto en una de las entradas mencionadas como en la máscara, dichos
permisos serán efectivos. Los permisos contenidos únicamente en la máscara o únicamente en la entrada real no son efectivos, en el sentido de que los permisos no se han
otorgado. Todos los permisos definidos en las entradas propietario y grupo propietario
Listas de control de acceso en Linux
379
son siempre efectivos. El ejemplo que aparece en la Tabla 24.2, “Enmascaramiento de
permisos de acceso” (p. 380) demuestra este mecanismo.
Son dos las clases básicas de ACL que existen: La ACL mínima contiene únicamente
las entradas para los tipos propietario, grupo propietario y otros, que corresponden a
los bits de permiso convencionales para archivos y directorios. La ACL extendida incluye más elementos; debe contener una entrada de máscara y puede contener al mismo
tiempo distintas entradas de los tipos usuario nombrado y grupo nombrado.
Tabla 24.1
Tipo
Forma de texto
propietario
user::rwx
usuario nombrado
user:name:rwx
grupo propietario
group::rwx
grupo nombrado
group:name:rwx
máscara
mask::rwx
otros
other::rwx
Tabla 24.2
380
Tipos de entrada de ACL
Enmascaramiento de permisos de acceso
Tipo de entrada
Forma de texto
Permisos
usuario nombrado
user:geeko:r-x
r-x
máscara
mask::rw-
rw-
permisos efectivos:
r--
24.3.1 Entradas ACL y bits de permiso de
modos de archivos
Tanto Figura 24.1, “ACL mínima: entradas ACL comparadas con los bits de permiso”
(p. 381) como Figura 24.2, “ACL extendida: entradas ACL comparadas con los bits de
permiso” (p. 382) ilustran dos casos de una ACL mínima y una ACL extendida. Los
datos se estructuran en tres bloques: el primero de los cuales muestra las especificaciones
de tipo de las entradas ACL, mientras que en el bloque central aparece un ejemplo de
ACL; el bloque situado en el extremo derecho, por su parte, muestra los bits de permiso
respectivos de acuerdo con el concepto convencional de permiso, como muestra, por
ejemplo, ls -l. En ambos casos, los permisos de la clase de propietario se asignan a
la entrada ACL propietario. Los permisos otras clases se asignan a la entrada ACL
respectiva. Sin embargo, la asignación de los permisos de la clase de grupo es diferente
en los dos casos.
Figura 24.1
ACL mínima: entradas ACL comparadas con los bits de permiso
En el caso de una ACL mínima —sin máscara—, los permisos de la clase de grupo se
asignan a la entrada ACL grupo propietario. Esta situación se muestra en la Figura 24.1,
“ACL mínima: entradas ACL comparadas con los bits de permiso” (p. 381). En el caso
de una ACL extendida —con máscara—, los permisos de la clase de grupo se asignan
a la entrada máscara. Esta situación se muestra en la Figura 24.2, “ACL extendida:
entradas ACL comparadas con los bits de permiso” (p. 382).
Listas de control de acceso en Linux
381
Figura 24.2
ACL extendida: entradas ACL comparadas con los bits de permiso
Esta modalidad de asignación asegura una interacción de aplicaciones sin interrupciones,
con independencia de si son compatibles con ACL. Los permisos de acceso que se
asignaron mediante los bits de permiso representan el límite superior para los “ajustes
finos” restantes hechos con una ACL. Los cambios efectuados en los bits de permiso
los refleja la ACL y viceversa.
24.3.2 Directorio con una ACL de acceso
La forma en que se lleva a cabo la gestión de las ACL de acceso se muestra en el siguiente ejemplo:
Antes de crear el directorio, utilice el comando umask para definir qué permisos de
acceso deben enmascararse cada vez que se crea un objeto de archivo. El comando
umask 027 establece los permisos por defecto dando al propietario la gama completa
de permisos (0), denegando al grupo el acceso de escritura (2) y no concediendo a otros
usuarios ningún permiso (7). En realidad, el comando umask enmascara los bits de
permiso correspondientes o los desactiva. Para obtener más información, consulte la
página Man correspondiente (man umask).
El comando mkdir mydir debería crear el directorio mydir con los permisos por
defecto establecidos por el comando umask. Utilice el comando ls -dl mydir
para comprobar si todos los permisos se han asignado correctamente. Los datos de salida para este ejemplo son:
drwxr-x--- ... tux project3 ... mydir
Compruebe el estado inicial de la ACL con getfacl mydir. La información que
se ofrecerá será del tipo:
# file: mydir
# owner: tux
# group: project3
382
user::rwx
group::r-x
other::---
Los datos de salida del comando getfacl reflejan con precisión la asignación de los
bits de permiso y las entradas ACL tal y como se describe en la Sección 24.3.1, “Entradas
ACL y bits de permiso de modos de archivos” (p. 381). Las primeras tres líneas de los
datos de salida muestran el nombre, propietario y grupo propietario del directorio. Las
tres líneas siguientes contienen estas tres entradas ACL: propietario, grupo propietario
y otros. De hecho, en el caso de esta ACL mínima, el comando getfacl no ofrece
ninguna información que no se pueda obtener mediante el comando ls.
Modifique la ACL para asignar permisos de lectura, escritura y ejecución a un usuario
adicional geeko y a un grupo adicional mascots con:
setfacl -m user:geeko:rwx,group:mascots:rwx mydir
La opción -m origina que el comando setfacl modifique la ACL existente. El siguiente argumento indica las entradas ACL que se van a modificar (las entradas múltiples
se separan con comas). La parte final especifica el nombre del directorio al que se deben
aplicar estas modificaciones. Utilice el comando getfacl para visualizar la ACL resultante.
# file: mydir
# owner: tux
# group: project3
user::rwx
user:geeko:rwx
group::r-x
group:mascots:rwx
mask::rwx
other::---
Junto con las entradas iniciadas por el usuario geeko y el grupo mascots, se ha generado una entrada máscara. La entrada máscara mencionada se fija de forma automática de forma tal que todos los permisos sean efectivos. El comando setfacl adapta
automáticamente las entradas máscara existentes a los ajustes modificados, salvo en
el caso de que haya desactivado esta función con -n. máscara define los permisos
máximos de acceso efectivos para todas las entradas que se encuentran en la clase de
grupo. Se incluyen aquí usuario nombrado, grupo nombrado y grupo propietario. Los
bits de permiso de clase de grupo que muestra ls -dl mydir corresponden ahora a
la entrada máscara.
drwxrwx---+ ... tux project3 ... mydir
Listas de control de acceso en Linux
383
La primera columna de los datos de salida contienen ahora un signo + adicional para
indicar la existencia de una ACL extendida para este elemento.
De acuerdo con los datos de salida del comando ls, los permisos para la entrada máscara incluyen el acceso de escritura. Tradicionalmente, tales bits de permiso indicarían
que el grupo propietario (en este caso, project3) cuenta también con acceso de escritura al directorio mydir. Sin embargo, los permisos de acceso efectivo para el grupo
propietario se corresponden con la porción coincidente de los permisos definidos por
el grupo propietario y por la máscara —que, en nuestro ejemplo, es r-x (consulte la
Tabla 24.2, “Enmascaramiento de permisos de acceso” (p. 380)). En lo concerniente a
los permisos efectivos del grupo propietario en este ejemplo, no se ha producido ninguna modificación incluso tras la inclusión de las entradas ACL.
Edite la entrada máscara con el comando setfacl o chmod. Por ejemplo, utilice el
comando chmod g-w mydir. El comando ls -dl mydir mostrará a continuación:
drwxr-x---+ ... tux project3 ... mydir
El comando getfacl mydir proporciona los siguientes datos de salida:
# file: mydir
# owner: tux
# group: project3
user::rwx
user:geeko:rwx
group::r-x
group:mascots:rwx
mask::r-x
other::---
# effective: r-x
# effective: r-x
Después de ejecutar el comando chmod para eliminar el permiso de escritura de los
bits de la clase de grupo, los datos de salida del comando ls son suficientes para
comprobar que los bits de la máscara deben haber cambiado de la forma correspondiente:
el permiso de escritura está de nuevo limitado al propietario de mydir. Los datos de
salida del comando getfacl confirman la afirmación anterior. Dichos datos de salida
incluyen un comentario para todas aquellas entradas en las que los bits de permiso
efectivo no se corresponden con los permisos originales, debido a que se han filtrado
de acuerdo con la entrada máscara. Los permisos originales se pueden restaurar en
cualquier momento mediante el comando chmod g+w mydir.
384
24.3.3 Directorio con una ACL por defecto
Los directorios pueden tener una ACL, es decir, un tipo especial de ACL que define
los permisos de acceso que heredan los objetos del directorio cuando se crean. La ACL
por defecto afectará tanto a los subdirectorios como a los archivos.
Efectos de una ACL por defecto
Son dos las maneras mediante las que los permisos de una ACL por defecto de un directorio se transfieren a los archivos y subdirectorios de dicho directorio:
• El subdirectorio hereda la ACL por defecto del directorio padre en calidad tanto
de ACL por defecto como de ACL de acceso.
• El archivo hereda la ACL por defecto como ACL de acceso.
Todas las llamadas del sistema que crean objetos de sistemas de archivos utilizan un
parámetro mode que define los permisos de acceso para el objeto de sistemas de archivos
creado recientemente. Si el directorio padre no dispone de una ACL por defecto, los
bits de permiso que definió umask se sustraen de los permisos al pasar por parámetro
mode, y el resultado se asigna al nuevo objeto. Si existe una ACL por defecto para el
directorio padre, los bits de permiso asignados al nuevo objeto se corresponden con la
porción coincidente de los permisos del parámetro mode y con aquellos que se definen
en la ACL por defecto. El comando umask se descarta en este caso.
Aplicación de las ACL por defecto
Los tres ejemplos siguientes muestran las principales operaciones que se pueden aplicar
a los directorios y las ACL por defecto:
1.
Añada una ACL por defecto al directorio existente mydir con:
setfacl -d -m group:mascots:r-x mydir
La opción -d del comando setfacl origina que el comando setfacl lleve
a cabo las siguientes modificaciones (opción -m) en la ACL por defecto.
Compruebe el resultado del siguiente comando:
getfacl mydir
Listas de control de acceso en Linux
385
# file: mydir
# owner: tux
# group: project3
user::rwx
user:geeko:rwx
group::r-x
group:mascots:rwx
mask::rwx
other::--default:user::rwx
default:group::r-x
default:group:mascots:r-x
default:mask::r-x
default:other::---
El comando getfacl ofrece como resultado tanto la ACL de acceso como la
ACL por defecto. La ACL por defecto se compone de todas las líneas que comienzan por default. Aunque usted ejecutó solamente el comando setfacl
con una entrada para el grupo mascots para obtener la ACL por defecto, el
comando setfacl ha copiado automáticamente las entradas restantes de la
ACL de acceso para crear una ACL por defecto válida. Las ACL por defecto no
tienen un efecto intermedio en los permisos de acceso. Únicamente intervienen
cuando se crean los objetos de sistemas de archivos. Estos nuevos objetos solamente heredan permisos de la ACL por defecto de sus directorios padre.
2.
En el siguiente ejemplo, utilice el comando mkdir para crear un subdirectorio
en mydir, que heredará la ACL por defecto.
mkdir mydir/mysubdir
getfacl mydir/mysubdir
# file: mydir/mysubdir
# owner: tux
# group: project3
user::rwx
group::r-x
group:mascots:r-x
mask::r-x
other::--default:user::rwx
default:group::r-x
default:group:mascots:r-x
default:mask::r-x
default:other::---
Tal y como se preveía, el subdirectorio que se acaba de crear, mysubdir, tiene
los permisos de la ACL por defecto del directorio padre. La ACL de acceso de
386
mysubdir es una copia exacta de la ACL por defecto de mydir. La ACL por
defecto que este directorio transmitirá a los objetos dependientes de él será
también la misma.
3.
Utilice el comando touch para crear un archivo en el directorio mydir, por
ejemplo, touch mydir/myfile. El comando ls -l mydir/myfile
mostrará entonces:
-rw-r-----+ ... tux project3 ... mydir/myfile
Los datos de salida del comando getfacl mydir/myfile son:
# file: mydir/myfile
# owner: tux
# group: project3
user::rwgroup::r-x
# effective:r-group:mascots:r-x
# effective:r-mask::r-other::---
El comando touch utiliza un mode con el valor 0666 al crear nuevos archivos,
lo que significa que los archivos se crean con permisos de lectura y escritura
para todas las clases de usuarios, siempre y cuando no existan restricciones en
el comando umask ni en la ACL por defecto (consulte la “Efectos de una ACL
por defecto” (p. 385)). De hecho, esto indica que todos los permisos no contenidos
en el valor mode se han eliminado de las entradas ACL correspondientes. Aunque
no se ha eliminado ningún permiso de la entrada ACL de la clase de grupo, la
entrada máscara se ha modificado para enmascarar los permisos no establecidos
en el valor mode.
Esta medida asegura una interacción sin interrupciones de aplicaciones, tales
como compiladores, con las ACL. Puede crear archivos con permisos restringidos
de acceso y, posteriormente, marcarlos como ejecutables. El mecanismo
máscara garantiza que los usuarios y los grupos adecuados puedan ejecutar
dichos archivos de la forma deseada.
24.3.4 Algoritmo de comprobación de ACL
Se aplica un algoritmo de comprobación antes de que cualquier proceso o aplicación
pueda acceder a un objeto de sistemas de archivos protegido por la ACL. Por norma
general, las entradas ACL se examinan de acuerdo con la siguiente secuencia: propie-
Listas de control de acceso en Linux
387
tario; usuario nombrado; grupo propietario o grupo nombrado; y otros. El acceso se
gestiona de acuerdo con la entrada que mejor se adapta al proceso. Los permisos no se
acumulan.
La operación, sin embargo, es más complicada si un proceso pertenece a más de un
grupo, por lo que podría adaptarse a varias entradas de grupo. Se selecciona una entrada
forma aleatoria de entre las entradas adecuadas que cuentan los permisos necesarios.
No es relevante cuál de las entradas origina el resultado final “acceso autorizado”. Así
mismo, si ninguna de las entradas de grupo adecuadas cuenta con los permisos necesarios, una entrada seleccionada de forma aleatoria origina el resultado final “acceso denegado”.
24.4
Compatibilidad de ACL con las
aplicaciones
Las ACL se pueden emplear para implementar situaciones de permisos de gran complejidad que cumplan los requisitos de las aplicaciones más actuales. El concepto tradicional
de permiso y las ACL se pueden combinar de forma inteligente. Tanto las ACL como
Samba admiten los comandos básicos de archivos (cp, mv, ls, etc.).
Por desgracia, muchos editores y administradores de archivos no son aún compatibles
con ACL. Cuando se copian archivos con Konqueror, por ejemplo, las ACL de estos
archivos se pierden. Cuando se modifican archivos con un editor, las ACL de los archivos
en algunos casos se mantienen y en otros no, dependiendo del modo de copias de seguridad del editor empleado. Si el editor escribe los cambios en el archivo original, se
mantiene la ACL de acceso. Si el editor guarda los contenidos actualizados en un archivo
nuevo que recibe el nombre del archivo anterior, se pueden perder las ACL, a menos
que el editor sea compatible con las ACL. Excepto en el caso de star archiver, no hay
en la actualidad aplicaciones de copias de seguridad que conserven las ACL.
24.5
Información adicional
La información detallada sobre las ACL se encuentra disponible en http://acl
.bestbits.at/. Consulte también las páginas Man para los comandos
getfacl(1), acl(5) y setfacl(1).
388
Utilidades de monitorización del
sistema
25
Se pueden utilizar varios programas y mecanismos, algunos de los cuales están representados aquí, para examinar el estado del sistema. También se describen algunas utilidades especialmente indicadas para las tareas habituales, junto con los parámetros más
importantes.
Para cada uno de los comandos introducidos, se presentan ejemplos de las salidas relevantes. En estos ejemplos, la primera línea es el comando en sí mismo (después del
indicador del signo de dólar). Los comandos se indican con corchetes ([...]) y las
líneas largas se acortan cuando es necesario. Los saltos de línea para las líneas largas
se indican con una barra invertida (\).
$ command -x -y
output line 1
output line 2
output line 3 is annoyingly long, so long that \
we have to break it
output line 3
[...]
output line 98
output line 99
Se han hecho descripciones cortas para permitir que se mencionen tantas utilidades
como sea posible. El resto de información de todos los comandos se puede encontrar
en las páginas Man. La mayoría de comandos también admiten el parámetro --help,
que produce una lista breve de posibles parámetros.
Utilidades de monitorización del sistema
389
25.1
Lista de archivos abiertos: lsof
Para ver una lista de todos los archivos abiertos para el proceso con el ID de proceso
PID, utilice -p. Por ejemplo, para ver todos los archivos utilizados por el shell actual,
introduzca:
$ lsof -p $$
COMMAND PID USER
FD
TYPE DEVICE
SIZE
NODE NAME
zsh
4694
jj cwd
DIR
0,18
144 25487368 /suse/jj/t
(totan:/real-home/jj)
zsh
4694
jj rtd
DIR
3,2
608
2 /
zsh
4694
jj txt
REG
3,2 441296
20414 /bin/zsh
zsh
4694
jj mem
REG
3,2 104484
10882 /lib/ld-2.3.3.so
zsh
4694
jj mem
REG
3,2
11648
20610
/usr/lib/zsh/4.2.0/zsh/rlimits.so
[...]
zsh
4694
jj mem
REG
3,2
13647
10891 /lib/libdl.so.2
zsh
4694
jj mem
REG
3,2
88036
10894 /lib/libnsl.so.1
zsh
4694
jj mem
REG
3,2 316410
147725 /lib/libncurses.so.5.4
zsh
4694
jj mem
REG
3,2 170563
10909 /lib/tls/libm.so.6
zsh
4694
jj mem
REG
3,2 1349081
10908 /lib/tls/libc.so.6
zsh
4694
jj mem
REG
3,2
56
12410
/usr/lib/locale/de_DE.utf8/LC_TELEPHONE
[...]
zsh
4694
jj mem
REG
3,2
59
14393
/usr/lib/locale/en_US/LC_NUMERIC
zsh
4694
jj mem
REG
3,2 178476
14565
/usr/lib/locale/en_US/LC_CTYPE
zsh
4694
jj mem
REG
3,2
56444
20598
/usr/lib/zsh/4.2.0/zsh/computil.so
zsh
4694
jj
0u
CHR 136,48
50 /dev/pts/48
zsh
4694
jj
1u
CHR 136,48
50 /dev/pts/48
zsh
4694
jj
2u
CHR 136,48
50 /dev/pts/48
zsh
4694
jj
10u
CHR 136,48
50 /dev/pts/48
Se ha utilizado la variable del shell especial $$, cuyo valor es el ID de proceso del
shell.
El comando lsof muestra todos los archivos abiertos actualmente si se utilizan sin
ningún parámetro. Como suele haber miles de archivos abiertos, mostrarlos todos casi
nunca es útil. Sin embargo, la lista de todos los archivos se puede combinar con las
funciones de búsqueda para generar listas útiles. Por ejemplo, muestre todos los dispositivos de caracteres utilizados:
$ lsof | grep CHR
sshd
4685
sshd
4685
sshd
4693
390
root
root
jj
mem
mem
mem
CHR
CHR
CHR
1,5
1,5
1,5
45833 /dev/zero
45833 /dev/zero
45833 /dev/zero
sshd
zsh
zsh
zsh
zsh
X
lsof
lsof
grep
grep
25.2
4693
4694
4694
4694
4694
6476
13478
13478
13480
13480
jj
jj
jj
jj
jj
root
jj
jj
jj
jj
mem
0u
1u
2u
10u
mem
0u
2u
1u
2u
CHR
CHR
CHR
CHR
CHR
CHR
CHR
CHR
CHR
CHR
1,5
136,48
136,48
136,48
136,48
1,1
136,48
136,48
136,48
136,48
45833
50
50
50
50
38042
50
50
50
50
/dev/zero
/dev/pts/48
/dev/pts/48
/dev/pts/48
/dev/pts/48
/dev/mem
/dev/pts/48
/dev/pts/48
/dev/pts/48
/dev/pts/48
Usuarios que acceden a los
archivos: fuser
Puede que sea útil determinar qué procesos o usuarios están accediendo actualmente a
ciertos archivos. Supongamos, por ejemplo, que desea desmontar un sistema de archivos
montado en /mnt. umount devuelve el mensaje "device is busy" (el dispositivo está
ocupado). A continuación, se puede utilizar el comando fuser para determinar qué
procesos acceden al dispositivo:
$ fuser -v /mnt/*
USER
PID ACCESS COMMAND
/mnt/notes.txt
jj
26597 f....
less
Una vez terminado el proceso less, que se estaba ejecutando en otro terminal, el sistema de archivos se puede desmontar de forma correcta.
25.3
Propiedades del archivo: stat
El comando stat muestra las propiedades del archivo:
$ stat xml-doc.txt
File: `xml-doc.txt'
Size: 632
Blocks: 8
IO Block: 4096
Device: eh/14d Inode: 5938009
Links: 1
Access: (0644/-rw-r--r--) Uid: (11994/
jj)
Gid: (
Access: 2004-04-27 20:08:58.000000000 +0200
Modify: 2003-06-03 15:29:34.000000000 +0200
Change: 2003-07-23 17:48:27.000000000 +0200
regular file
50/
suse)
Utilidades de monitorización del sistema
391
El parámetro --filesystem genera información detallada de las propiedades del
sistema de archivos en el que se ubica el archivo especificado:
$ stat
File:
ID:
Blocks:
Inodes:
. --filesystem
"."
0
Namelen: 255
Type: ext2/ext3
Total: 19347388
Free: 17831731
Available: 16848938
Total: 9830400
Free: 9663967
Size: 4096
Si utiliza el shell z (zsh), debe introducir /usr/bin/stat, porque el shell z tiene
un complemento stat con opciones y con un formato de salida diferentes:
% type stat
stat is a shell builtin
% stat .
device 769
inode
4554808
mode
16877
nlink
12
uid
11994
gid
50
rdev
0
size
4096
atime
1091536882
mtime
1091535740
ctime
1091535740
blksize 4096
blocks 8
link
25.4
Dispositivos USB: lsusb
El comando lsusb muestra todos los dispositivos USB. Con la opción -v, imprima
una lista más detallada. La información detallada se lee en el directorio /proc/bus/
usb/. La siguiente es la salida de lsusb después de añadir una tarjeta memory stick
USB. Las últimas líneas indican la presencia del nuevo dispositivo.
Bus
Bus
Bus
Bus
Bus
392
004
003
002
001
001
Device
Device
Device
Device
Device
001:
001:
001:
001:
018:
ID
ID
ID
ID
ID
0000:0000
0000:0000
0000:0000
0000:0000
0402:5634 ALi Corp.
25.5
Información acerca de un
dispositivo SCSI: scsiinfo
El comando scsiinfo muestra información acerca de un dispositivo SCSI. Con la
opción -l, muestre todos los dispositivos SCSI que el sistema conoce (con el comando
lsscsi se obtiene información similar). La siguiente es la salida de scsiinfo -i
/dev/sda, que proporciona información acerca de un disco duro. La opción -a proporciona incluso más información.
Inquiry command
--------------Relative Address
Wide bus 32
Wide bus 16
Synchronous neg.
Linked Commands
Command Queueing
SftRe
Device Type
Peripheral Qualifier
Removable?
Device Type Modifier
ISO Version
ECMA Version
ANSI Version
AENC
TrmIOP
Response Data Format
Vendor:
Product:
Revision level:
0
0
1
1
1
1
0
0
0
0
0
0
0
3
0
0
2
FUJITSU
MAS3367NP
0104A0K7P43002BE
Existe una lista de deficiencias con dos tablas de bloques incorrectos de un disco duro:
en primer lugar, la proporcionada por el proveedor (tabla del fabricante) y en segundo
lugar, la lista de bloques incorrectos que aparecieron en la operación (tabla generada).
Si aumenta el número de entradas de la tabla generada, puede que sea una buena idea
sustituir el disco duro.
25.6
Procesos: top
El comando top, que significa "tabla de procesos", muestra una lista de procesos que
se actualiza cada dos segundos. Para salir del programa, pulse Q . El parámetro -n 1
Utilidades de monitorización del sistema
393
termina el programa después de mostrar una vez la lista de procesos. A continuación,
se ofrece un ejemplo de salida del comando top -n 1:
top - 14:19:53 up 62 days, 3:35, 14 users, load average: 0.01, 0.02, 0.00
Tasks: 102 total,
7 running, 93 sleeping,
0 stopped,
2 zombie
Cpu(s):
0.3% user,
0.1% system,
0.0% nice, 99.6% idle
Mem:
514736k total,
497232k used,
17504k free,
56024k buffers
Swap: 1794736k total,
104544k used, 1690192k free,
235872k cached
PID
1426
20836
1
2
3
4
5
1362
1363
1377
1379
1380
USER
root
jj
root
root
root
root
root
[...]
root
root
root
root
root
PR
15
15
15
15
34
15
15
NI
0
0
0
0
19
0
0
VIRT
116m
820
100
0
0
0
0
RES
41m
820
96
0
0
0
0
SHR
18m
612
72
0
0
0
0
S %CPU %MEM
S 1.0 8.2
R 1.0 0.2
S 0.0 0.0
S 0.0 0.0
S 0.0 0.0
S 0.0 0.0
S 0.0 0.0
15
15
17
18
18
0
0
0
0
0
488
488
56
56
56
452
452
4
4
4
404
404
4
4
4
S
S
S
S
S
0.0
0.0
0.0
0.0
0.0
0.1
0.1
0.0
0.0
0.0
TIME+
82:30.34
0:00.03
0:08.43
0:04.96
0:00.99
0:33.63
0:00.71
0:00.02
0:00.04
0:00.00
0:00.01
0:00.01
Command
X
top
init
keventd
ksoftirqd_CPU0
kswapd
bdflush
nscd
nscd
mingetty
mingetty
mingetty
Si pulsa F mientras se ejecuta top, se abre un menú con el que realizar cambios significativos al formato de la salida.
El parámetro -U UID monitoriza sólo los procesos asociados con un usuario en concreto. Sustituya UID por el ID del usuario. top -U $(id -u username) devuelve
el UID del usuario según el nombre del usuario y muestra sus procesos.
25.7
Lista de procesos: ps
El comando ps produce una lista de procesos. Si se añade el parámetro r, sólo se
muestran los procesos que utilizan actualmente el tiempo de computación:
$ ps r
PID TTY
22163 pts/7
3396 pts/3
20027 pts/7
20974 pts/7
27454 pts/7
STAT
R
R
R
R
R
TIME
0:01
0:03
0:25
0:01
0:00
COMMAND
-zsh
emacs new-makedoc.txt
emacs xml/common/utilities.xml
emacs jj.xml
ps r
Este parámetro debe escribirse sin un signo menos. Los diferentes parámetros se escriben
algunas veces con y otras veces sin el signo menos. La página Man podría fácilmente
394
amedrentar a posibles usuarios pero, afortunadamente, el comando ps --help produce una breve página de ayuda.
Para comprobar cuántos procesos emacs se están ejecutando, utilice:
$ ps x | grep emacs
1288 ?
S
3396 pts/3
S
3475 ?
S
20027 pts/7
S
20974 pts/7
S
0:07
0:04
0:03
0:40
0:02
emacs
emacs
emacs
emacs
emacs
new-makedoc.txt
.Xresources
xml/common/utilities.xml
jj.xml
$ pidof emacs
20974 20027 3475 3396 1288
El parámetro -p selecciona los procesos mediante el ID de proceso:
$ ps www -p $(pidof xterm)
PID TTY
STAT
TIME COMMAND
9025 ?
S
0:01 xterm -g 100x45+0+200
9176 ?
S
0:00 xterm -g 100x45+0+200
29854 ?
S
0:21 xterm -g 100x75+20+0 -fn \
-B&H-LucidaTypewriter-Medium-R-Normal-Sans-12-120-75-75-M-70-iso10646-1
4378 ?
S
0:01 xterm -bg MistyRose1 -T root -n root -e su -l
25543 ?
S
0:02 xterm -g 100x45+0+200
22161 ?
R
0:14 xterm -g 100x45+0+200
16832 ?
S
0:01 xterm -bg MistyRose1 -T root -n root -e su -l
16912 ?
S
0:00 xterm -g 100x45+0+200
17861 ?
S
0:00 xterm -bg DarkSeaGreen1 -g 120x45+40+300
19930 ?
S
0:13 xterm -bg LightCyan
21686 ?
S
0:04 xterm -g 100x45+0+200 -fn \
lucidasanstypewriter-12
23104 ?
S
0:00 xterm -g 100x45+0+200
26547 ?
S
0:00 xterm -g 100x45+0+200
La lista de procesos se puede formatear de acuerdo con las necesidades de cada uno.
La opción -L devuelve una lista de todas las palabras clave. Introduzca el siguiente
comando para generar una lista de todos los procesos clasificados según la utilización
de la memoria:
$ ps ax --format pid,rss,cmd --sort rss
PID RSS CMD
2
0 [ksoftirqd/0]
3
0 [events/0]
17
0 [kblockd/0]
[...]
10164 5260 xterm
31110 5300 xterm
17010 5356 xterm
3896 29292 /usr/X11R6/bin/X -nolisten tcp -br vt7 -auth
/var/lib/xdm/authdir/au
Utilidades de monitorización del sistema
395
25.8
Árbol de procesos: pstree
El comando pstree produce una lista de procesos en forma de árbol:
$ pstree
init-+-atd
|-3*[automount]
|-bdflush
|-cron
[...]
|-usb-storage-1
|-usb-storage-2
|-10*[xterm---zsh]
|-xterm---zsh---mutt
|-2*[xterm---su---zsh]
|-xterm---zsh---ssh
|-xterm---zsh---pstree
|-ypbind---ypbind---2*[ypbind]
`-zsh---startx---xinit4-+-X
`-ctwm-+-xclock
|-xload
`-xosview.bin
El parámetro -p añade el ID de proceso a un nombre dado. Para que se muestren también
las líneas de comandos, utilice el parámetro -a:
$ pstree -pa
init,1
|-atd,1255
[...]
`-zsh,1404
`-startx,1407 /usr/X11R6/bin/startx
`-xinit4,1419 /suse/jj/.xinitrc [...]
|-X,1426 :0 -auth /suse/jj/.Xauthority
`-ctwm,1440
|-xclock,1449 -d -geometry -0+0 -bg grey
|-xload,1450 -scale 2
`-xosview.bin,1451 +net -bat +net
25.9
Usuarios y acciones w
Con el comando w, descubra quién ha iniciado sesión en el sistema y qué hace cada
usuario. Por ejemplo:
$ w
15:17:26 up 62 days, 4:33, 14 users, load average: 0.00, 0.04, 0.01
USER
TTY
LOGIN@
IDLE
JCPU
PCPU WHAT
396
jj
jj
jj
jj
[...]
jj
jj
[...]
jj
pts/0
pts/1
pts/2
pts/3
30Mar04
23Mar04
23Mar04
23Mar04
4days
5days
5days
3:28m
0.50s
0.20s
1.28s
3.21s
0.54s
0.20s
1.28s
0.50s
pts/7
pts/9
07Apr04
25Mar04
0.00s
3:24m
9.02s
7.70s
0.01s w
7.38s mutt
pts/14
12:49
0.20s
0.13s ssh totan
37:34
xterm -e su -l
-zsh
-zsh
-zsh
La última línea muestra que el usuario jj ha establecido una conexión segura de shell
(ssh) con el equipo totan. Si usuarios de otros sistemas han iniciado sesión de forma
remota, el parámetro -f muestra los equipos desde los que han establecido la conexión.
25.10
Utilización de la memoria:
free
La utilidad free examina la utilización de la RAM. Se muestra información detallada
acerca de la memoria libre y utilizada (y las áreas de intercambio):
$ free
total
Mem:
514736
-/+ buffers/cache:
Swap:
1794736
used
273964
195716
104096
free
240772
319020
1690640
shared
0
buffers
35920
cached
42328
buffers
35
cached
41
Con -m, todos los tamaños se expresan en megabytes:
$ free -m
total
Mem:
502
-/+ buffers/cache:
Swap:
1752
used
267
191
101
free
235
311
1651
shared
0
La información realmente interesante se encuentra en la siguiente línea:
-/+ buffers/cache:
191
311
Esto calcula la cantidad de memoria utilizada por los buffers y las cachés. El parámetro
-d delay garantiza que la pantalla se actualiza cada delay segundos. Por ejemplo,
free -d 1.5 produce una actualización cada 1,5 segundos.
Utilidades de monitorización del sistema
397
25.11
Buffer de anillo del núcleo:
dmesg
El núcleo de Linux mantiene ciertos mensajes en un buffer de anillo. Para ver estos
mensajes, introduzca el comando dmesg:
$ dmesg
[...]
sdc : READ CAPACITY failed.
sdc : status = 1, message = 00, host = 0, driver = 08
Info fld=0xa00 (nonstd), Current sd00:00: sense key Not Ready
sdc : block size assumed to be 512 bytes, disk size 1GB.
sdc: test WP failed, assume Write Enabled
sdc: I/O error: dev 08:20, sector 0
I/O error: dev 08:20, sector 0
I/O error: dev 08:20, sector 2097144
I/O error: dev 08:20, sector 2097144
I/O error: dev 08:20, sector 0
I/O error: dev 08:20, sector 0
unable to read partition table
I/O error: dev 08:20, sector 0
nfs: server totan not responding, still trying
nfs: server totan OK
La última línea indica que existe un problema temporal en el servidor NFS totan.
Las líneas que van hasta ese punto se activan con la inserción de una unidad flash USB.
Los eventos más antiguos se registran en los archivos /var/log/messages y
/var/log/warn.
25.12
Sistemas de archivos y su
utilización: mount, df y du
El comando mount muestra qué sistema de archivos (dispositivo y tipo) se monta en
qué punto de montaje:
$ mount
/dev/hdb2 on / type ext2 (rw)
proc on /proc type proc (rw)
devpts on /dev/pts type devpts (rw,mode=0620,gid=5)
/dev/hda1 on /data type ext2 (rw)
shmfs on /dev/shm type shm (rw)
usbdevfs on /proc/bus/usb type usbdevfs (rw)
automount(pid1012) on /suse type autofs \
398
(rw,fd=5,pgrp=1012,minproto=2,maxproto=3)
totan:/real-home/jj on /suse/jj type nfs \
(rw,nosuid,rsize=8192,wsize=8192,hard,intr,nolock,addr=10.10.0.1)
Obtenga información acerca de la utilización total de los sistemas de archivos con el
comando df. El parámetro -h (o --human-readable) transforma la salida en un
formato legible para los usuarios habituales.
$ df -h
Filesystem
/dev/hdb2
/dev/hda1
shmfs
totan:/real-home/jj
Size
7.4G
74G
252M
350G
Used Avail Use% Mounted on
5.1G 2.0G 73% /
5.8G
65G
9% /data
0 252M
0% /dev/shm
324G
27G 93% /suse/jj
Los usuarios del servidor de archivos NFS totan deberían eliminar el directorio personal sin demora. Muestre el tamaño total de todos los archivos de un directorio dado
y sus subdirectorios con el comando du. El parámetro -s elimina la salida de información detallada. -h transforma de nuevo los datos en un formato legible para todo el
mundo. Con este comando:
$ du -sh ~
361M
/suse/jj
vea cuánto espacio ocupa su propio directorio personal.
25.13
Sistema de archivos /proc
El sistema de archivos /proc es un pseudosistema de archivos en el que el núcleo reserva información importante en forma de archivos virtuales. Por ejemplo, muestre el
tipo de CPU con este comando:
$ cat /proc/cpuinfo
processor
: 0
vendor_id
: AuthenticAMD
cpu family
: 6
model
: 8
model name
: AMD Athlon(tm) XP 2400+
stepping
: 1
cpu MHz
: 2009.343
cache size
: 256 KB
fdiv_bug
: no
[...]
La asignación y el uso de interrupciones se pueden consultar con el siguiente comando:
Utilidades de monitorización del sistema
399
$ cat /proc/interrupts
CPU0
0: 537544462
1:
820082
2:
0
8:
2
9:
0
10:
13970
11: 146467509
12:
8061393
14:
2465743
15:
1355
NMI:
0
LOC:
0
ERR:
0
MIS:
0
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
XT-PIC
timer
keyboard
cascade
rtc
acpi
usb-uhci, usb-uhci
ehci_hcd, usb-uhci, eth0
PS/2 Mouse
ide0
ide1
Algunos de los archivos importantes y su contenido son:
/proc/devices
dispositivos disponibles
/proc/modules
módulos del núcleo cargados
/proc/cmdline
línea de comandos del núcleo
/proc/meminfo
información detallada acerca de la utilización de la memoria
/proc/config.gz
archivo de configuración comprimido gzip del núcleo que se ejecuta actualmente
Encontrará más información en el archivo de texto /usr/src/linux/
Documentation/filesystems/proc.txt. La información acerca de los procesos que se ejecutan actualmente se puede encontrar en los directorios /proc/NNN,
donde NNN es el PID (ID del proceso) del proceso relevante. Todos los procesos pueden
encontrar sus propias características en /proc/self/:
$ ls -l /proc/self
lrwxrwxrwx 1 root root 64 Apr 29 13:52 /proc/self -> 27585
$ ls -l /proc/self/
total 0
dr-xr-xr-x 2 jj suse 0 Apr 29 13:52 attr
-r-------- 1 jj suse 0 Apr 29 13:52 auxv
400
-r--r--r-lrwxrwxrwx
-r--r--r--r-------lrwxrwxrwx
dr-x------rw-------r--r--r--rw-------r--r--r-lrwxrwxrwx
-r--r--r--r--r--r--r--r--r-dr-xr-xr-x
-r--r--r--
1
1
1
1
1
2
1
1
1
1
1
1
1
1
3
1
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
jj
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
suse
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
Apr
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
29
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
13:52
cmdline
cwd -> /suse/jj/t
delay
environ
exe -> /bin/ls
fd
mapped_base
maps
mem
mounts
root -> /
stat
statm
status
task
wchan
La asignación de direcciones de ejecutables y de bibliotecas se encuentra en el archivo
maps:
$ cat /proc/self/maps
08048000-0804c000 r-xp
0804c000-0804d000 rw-p
0804d000-0806e000 rwxp
40000000-40016000 r-xp
40016000-40017000 rw-p
40017000-40018000 rw-p
4002b000-40135000 r-xp
40135000-4013d000 rw-p
4013d000-40141000 rw-p
bfffe000-c0000000 rw-p
ffffe000-fffff000 ---p
25.14
00000000
00003000
0804d000
00000000
00015000
40017000
00000000
0010a000
4013d000
bfffe000
00000000
03:02
03:02
00:00
03:02
03:02
00:00
03:02
03:02
00:00
00:00
00:00
22890
22890
0
10882
10882
0
10908
10908
0
0
0
/bin/cat
/bin/cat
/lib/ld-2.3.3.so
/lib/ld-2.3.3.so
/lib/tls/libc.so.6
/lib/tls/libc.so.6
vmstat, iostat y mpstat
La utilidad vmstat informa de varias estadísticas de memoria virtual. Lee los archivos
/proc/meminfo, /proc/stat y /proc/*/stat. Es útil para identificar los
obstáculos del rendimiento del sistema. El comando iostat muestra estadísticas
acerca de la CPU y de la entrada y salida de los dispositivos y particiones. La información mostrada se toma de los archivos /proc/stat y /proc/partitions. La
salida se puede utilizar para equilibrar mejor la carga de entrada y de salida entre discos
duros. El comando mpstat muestra estadísticas relacionadas con la CPU.
Utilidades de monitorización del sistema
401
25.15
procinfo
El comando procinfo resume información importante del sistema de archivos /proc:
$ procinfo
Linux 2.6.4-54.5-default (geeko@buildhost) (gcc 3.3.3 ) #1 1CPU [roth.suse.de]
Memory:
Mem:
Swap:
Total
516696
530136
Bootup: Wed Jul
user :
nice :
system:
idle :
uptime:
Used
513200
1352
Free
3496
528784
7 14:29:08 2004
2:42:28.08
0:31:57.13
0:38:32.23
3d 19:26:05.93
4d 0:22:25.84
1.3%
0.2%
0.3%
97.7%
Shared
0
Buffers
43284
Load average: 0.07 0.04 0.01 1/126 5302
page in :
0
page out:
0
swap in :
0
swap out:
0
context :207939498
irq
0: 776561217 timer
irq
8:
2 rtc
irq
1:
irq
9:
24300 VIA8233
irq
2:
irq
3:
3
irq 12:
3435071 i8042
irq
4:
3
irq 14:
2236471 ide0
irq
6:
2
irq 15:
251 ide1
276048 i8042
0 cascade [4]
irq 11:
38610118 acpi, eth0, uhci_hcd
Para ver toda la información, utilice el parámetro -a. El parámetro -nN actualiza la
información cada N segundos. En este caso, cierre el programa pulsando Q .
Por defecto, se muestran los valores acumulativos. El parámetro -d produce los valores
diferenciales. procinfo -dn5 muestra los valores que han cambiado en los últimos
cinco segundos:
Memory:
Mem:
Swap:
Total
0
0
Used
2
0
Bootup: Wed Feb 25 09:44:17 2004
user :
nice :
system:
idle :
uptime:
402
64d
0:00:00.02
0:00:00.00
0:00:00.00
0:00:04.99
3:59:12.62
0.4%
0.0%
0.0%
99.6%
Free
-2
0
Shared
0
Buffers
0
Cached
0
Load average: 0.00 0.00 0.00 1/106 31902
page in :
page out:
swap in :
swap out:
context :
0
0
0
0
1087
disk
disk
disk
disk
1:
2:
3:
4:
0r
0r
0r
0r
0w
0w
0w
0w
irq
irq
irq
irq
irq
irq
0:
1:
2:
6:
8:
9:
25.16
501
1
0
0
0
0
timer
keyboard
cascade [4]
rtc
acpi
irq
irq
irq
irq
irq
10:
11:
12:
14:
15:
0
32
132
0
0
usb-uhci, usb-uhci
ehci_hcd, usb-uhci,
PS/2 Mouse
ide0
ide1
Recursos PCI: lspci
El comando lspci enumera los recursos PCI:
$ lspci
00:00.0 Host bridge: VIA Technologies, Inc. \
VT8366/A/7 [Apollo KT266/A/333]
00:01.0 PCI bridge: VIA Technologies, Inc. \
VT8366/A/7 [Apollo KT266/A/333 AGP]
00:0b.0 Ethernet controller: Digital Equipment Corporation \
DECchip 21140 [FasterNet] (rev 22)
00:10.0 USB Controller: VIA Technologies, Inc. USB (rev 80)
00:10.1 USB Controller: VIA Technologies, Inc. USB (rev 80)
00:10.2 USB Controller: VIA Technologies, Inc. USB (rev 80)
00:10.3 USB Controller: VIA Technologies, Inc. USB 2.0 (rev 82)
00:11.0 ISA bridge: VIA Technologies, Inc. VT8235 ISA Bridge
00:11.1 IDE interface: VIA Technologies, Inc. VT82C586/B/686A/B \
PIPC Bus Master IDE (rev 06)
00:11.5 Multimedia audio controller: VIA Technologies, Inc. \
VT8233 AC97 Audio Controller (rev 50)
01:00.0 VGA compatible controller: Matrox Graphics, Inc. \
MGA G550 AGP (rev 01)
La utilización de -v da como resultado una lista más detallada:
$ lspci -v
[...]
01:00.0 \
VGA compatible controller: Matrox Graphics, Inc. MGA G550 AGP (rev 01) \
(prog-if 00 [VGA])
Subsystem: Matrox Graphics, Inc. Millennium G550 Dual Head DDR 32Mb
Flags: bus master, medium devsel, latency 32, IRQ 10
Memory at d8000000 (32-bit, prefetchable) [size=32M]
Memory at da000000 (32-bit, non-prefetchable) [size=16K]
Memory at db000000 (32-bit, non-prefetchable) [size=8M]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: <available only to root>
La información relativa a la resolución del nombre de dispositivo se obtiene del archivo
/usr/share/pci.ids. Los IDs de PCI que no aparecen en este archivo están
marcados como “Unknown device” (Dispositivo desconocido).
Utilidades de monitorización del sistema
403
El parámetro -vv produce toda la información que el programa podría solicitar. Para
ver los valores numéricos puros, debería utilizar el parámetro -n.
25.17
Llamadas del sistema para
ejecutar un programa: strace
La utilidad strace le permite efectuar un seguimiento de todas las llamadas del sistema
a un proceso que se ejecuta actualmente. Introduzca el comando del modo habitual,
añadiendo strace al principio de la línea:
$ strace -e open ls
execve("/bin/ls", ["ls"], [/* 88 vars */]) = 0
uname({sys="Linux", node="edison", ...}) = 0
brk(0)
= 0x805b000
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) \
= 0x40017000
open("/etc/ld.so.preload", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)
= 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=76333, ...}) = 0
old_mmap(NULL, 76333, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40018000
[...]
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=53, ws_col=110, ws_xpixel=897, ws_ypixel=693}) = 0
open(".", O_RDONLY|O_NONBLOCK|O_LARGEFILE|O_DIRECTORY) = 3
fstat64(3, {st_mode=S_IFDIR|0755, st_size=144, ...}) = 0
fcntl64(3, F_SETFD, FD_CLOEXEC)
= 0
getdents64(3, /* 5 entries */, 4096)
= 160
getdents64(3, /* 0 entries */, 4096)
= 0
close(3)
= 0
fstat64(1, {st_mode=S_IFCHR|0620, st_rdev=makedev(136, 48), ...}) = 0
mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) \
= 0x40018000
write(1, "ltrace-ls.txt myfile.txt strac"..., 41) = 41
munmap(0x40018000, 4096)
= 0
exit_group(0)
= ?
Por ejemplo, para saber cuántas veces se ha intentado abrir un archivo en concreto,
utilice lo siguiente:
$ strace -e open ls myfile.txt
open("/etc/ld.so.preload", O_RDONLY)
= -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)
= 3
open("/lib/tls/librt.so.1", O_RDONLY)
= 3
open("/lib/libacl.so.1", O_RDONLY)
= 3
open("/lib/libselinux.so.1", O_RDONLY) = 3
open("/lib/tls/libc.so.6", O_RDONLY)
= 3
open("/lib/tls/libpthread.so.0", O_RDONLY) = 3
404
open("/lib/libattr.so.1", O_RDONLY)
=
open("/proc/mounts", O_RDONLY)
=
[...]
open("/proc/filesystems", O_RDONLY)
=
open("/proc/self/attr/current", O_RDONLY)
3
3
3
= 4
Para efectuar un seguimiento de todos los procesos secundarios, utilice el parámetro
-f. El comportamiento y el formato de salida de strace se pueden controlar exhaustivamente. Para obtener información, consulte man strace.
25.18
Llamadas de la biblioteca
para ejecutar un programa:
ltrace
El comando ltrace le permite efectuar un seguimiento de las llamadas de la biblioteca
a un proceso. Este comando se utiliza de un modo similar a strace. El parámetro -c
genera el número y la duración de las llamadas de biblioteca que se han producido:
$ ltrace -c find /usr/share/doc
% time
seconds usecs/call
calls
errors syscall
------ ----------- ----------- --------- --------- ---------------86.27
1.071814
30
35327
write
10.15
0.126092
38
3297
getdents64
2.33
0.028931
3
10208
lstat64
0.55
0.006861
2
3122
1 chdir
0.39
0.004890
3
1567
2 open
[...]
0.00
0.000003
3
1
uname
0.00
0.000001
1
1
time
------ ----------- ----------- --------- --------- ---------------100.00
1.242403
58269
3 total
25.19
Especificación de la biblioteca
necesaria: ldd
El comando ldd se puede utilizar para buscar qué bibliotecas cargarían el ejecutable
dinámico especificado como argumento:
$ ldd /bin/ls
linux-gate.so.1 =>
(0xffffe000)
Utilidades de monitorización del sistema
405
librt.so.1 => /lib/tls/librt.so.1 (0x4002b000)
libacl.so.1 => /lib/libacl.so.1 (0x40033000)
libselinux.so.1 => /lib/libselinux.so.1 (0x40039000)
libc.so.6 => /lib/tls/libc.so.6 (0x40048000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0x4015d000)
/lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
libattr.so.1 => /lib/libattr.so.1 (0x4016d000)
Los binarios estáticos no requieren bibliotecas dinámicas:
$ ldd /bin/sash
not a dynamic executable
$ file /bin/sash
/bin/sash: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), \
for GNU/Linux 2.2.5, statically linked, stripped
25.20
Información adicional acerca
de los binarios ELF
El contenido de los binarios se puede leer con la utilidad readelf. Esto funciona incluso con los archivos ELF creados para otras arquitecturas de hardware:
$ readelf --file-header /bin/ls
ELF Header:
Magic:
7f 45 4c 46 01 01 01 00 00 00 00 00 00 00 00 00
Class:
ELF32
Data:
2's complement, little endian
Version:
1 (current)
OS/ABI:
UNIX - System V
ABI Version:
0
Type:
EXEC (Executable file)
Machine:
Intel 80386
Version:
0x1
Entry point address:
0x8049b40
Start of program headers:
52 (bytes into file)
Start of section headers:
76192 (bytes into file)
Flags:
0x0
Size of this header:
52 (bytes)
Size of program headers:
32 (bytes)
Number of program headers:
9
Size of section headers:
40 (bytes)
Number of section headers:
29
Section header string table index: 26
406
25.21
Comunicación entre procesos:
ipcs
El comando ipcs produce una lista de los recursos IPC que se encuentran actualmente
en uso:
$ ipcs
------ Shared Memory Segments -------key
shmid
owner
perms
0x000027d9 5734403
toms
660
0x00000000 5767172
toms
666
0x00000000 5799941
toms
666
bytes
64528
37044
37044
------ Semaphore Arrays -------key
semid
owner
perms
0x000027d9 0
toms
660
1
------ Message Queues -------key
msqid
owner
25.22
perms
nattch
status
2
2
2
nsems
used-bytes
messages
Medición del tiempo con time
El tiempo que los comandos tardan se puede determinar con la utilidad time. Esta
utilidad está disponible en dos versiones: como complemento del shell y como programa
(/usr/bin/time).
$ time find . > /dev/null
real
user
sys
0m4.051s
0m0.042s
0m0.205s
Utilidades de monitorización del sistema
407
Parte VIII. Sistema
26
Aplicaciones de 32 bits y de 64 bits
en un entorno de sistema de 64 bits
SUSE Linux es compatible con varias plataformas de 64 bits. Esto no significa necesariamente que todas las aplicaciones incluidas se hayan trasladado a plataformas de 64
bits. SUSE Linux admite aplicaciones de 32 bits en entornos de sistema de 64 bits. Este
capítulo ofrece una breve descripción general acerca de cómo se implementa esta
compatibilidad en las plataformas SUSE Linux de 64 bits y explica cómo ejecutar las
aplicaciones de 32 bits (compatibilidad en tiempo de ejecución) y cómo se deben
compilar las aplicaciones de 32 bits para que puedan ejecutarse tanto en entornos de
sistema de 32 bits como de 64 bits. Además, encontrará información acerca de la API
de núcleo y de cómo pueden ejecutarse aplicaciones de 32 bits en un núcleo de 64 bits.
SUSE Linux para plataformas de 64 bits AMD64 y EM64T ha sido diseñado para poder
ejecutar las aplicaciones de 32 bits existentes en los entornos de 64 bits “tal cual”. Esta
compatibilidad hace posible que pueda seguir utilizando sus aplicaciones de 32 bits
preferidas sin tener que esperar a que aparezca en el mercado el puerto de 64 bits correspondiente.
26.1
Asistencia sobre tiempo de
ejecución
IMPORTANTE: Conflictos entre diferentes versiones de aplicaciones
Si hay una aplicación disponible tanto para entornos de 32 bits como de 64 y
se instalan las dos versiones paralelamente, es inevitable que se produzcan
Aplicaciones de 32 bits y de 64 bits en un entorno de sistema de 64 bits
411
problemas. En estos casos, tendrá que optar por instalar y utilizar sólo una de
las dos versiones.
Para que las aplicaciones se puedan ejecutar correctamente, es necesario disponer de
ciertas bibliotecas. Desafortunadamente, los nombres de las versiones de 32 bits y 64
bits de estas bibliotecas son idénticos. Es necesario distinguirlos de otra forma.
Para mantener la compatibilidad con la versión de 32 bits, las bibliotecas se almacenan
en el mismo sitio del sistema que en el entorno de 32 bits. La versión de 32 bits de
libc.so.6 se encuentra en /lib/libc.so.6 tanto en el entorno de 32 bits como
en el de 64.
Todas las bibliotecas de 64 bits y los archivos de objeto se ubican en directorios llamados
lib64. Los archivos de objeto de 64 bits que normalmente se suelen encontrar en
/lib, /usr/lib y /usr/X11R6/lib, están ahora en /lib64, /usr/lib64 y
/usr/X11R6/lib64. Esto significa que habrá un lugar reservado para las bibliotecas
de 32 bits en /lib, /usr/lib y /usr/X11R6/lib para que no sea necesario
cambiar el nombre de archivo para las dos versiones.
Los subdirectorios de los directorios de objeto cuyos datos no dependen del tamaño de
palabra no se han cambiado de sitio. Por ejemplo, las fuentes X11 siguen estando en
su ubicación habitual, /usr/X11R6/lib/X11/fonts. Este esquema sigue las directrices de los estándares LSB (base de estándares de Linux, del inglés Linux Standards
Base) y FHS (estándar jerárquico del sistema de archivos, del inglés File System Hierarchy Standard).
26.2
Desarrollo de software
Existe una cadena de herramientas de desarrollo de doble arquitectura que permite generar objetos de 32 bits y de 64 bits. La opción por defecto es compilar objetos de 64
bits, aunque es posible generar objetos de 32 bits mediante indicadores especiales. En
GCC, este indicador especial es -m32.
Todos los archivos de encabezado deben escribirse de forma independiente de la arquitectura. Las bibliotecas de 32 y 64 bits instaladas deben tener una API (interfaz de
programación de aplicaciones) que coincida con los archivos de encabezado instalados.
El entorno SUSE normal se ha diseñado siguiendo este principio. En las bibliotecas
que haya actualizado manualmente tendrá que resolver estos problemas usted mismo.
412
26.3
Compilación de software en
plataformas de doble
arquitectura
En una doble arquitectura, para poder desarrollar binarios para la otra arquitectura es
necesario instalar adicionalmente las respectivas bibliotecas para la segunda arquitectura.
Estos paquetes se denominan rpmname-32bit. También es necesario disponer de
los respectivos encabezados y bibliotecas procedentes de los paquetes rpmname-devel
y de las bibliotecas de desarrollo para la segunda arquitectura procedentes de
rpmname-devel-32bit.
La mayoría de los programas de código abierto utilizan una configuración basada en
el comando autoconf. Para utilizar autoconf para configurar un programa para
la segunda arquitectura, sobrescriba el compilador normal y los ajustes de enlazador
de autoconf ejecutando el guión configure con variables de entorno adicionales.
El ejemplo que sigue hace referencia a un sistema AMD64 o EM64T con x86 como
segunda arquitectura:
1.
Defina autoconf para utilizar el compilador de 32 bits:
CC="gcc -m32"
2.
Ordene al enlazador que procese objetos de 32 bits:
LD="ld -m elf64_i386"
3.
Defina el ensamblador para que genere objetos de 32 bits:
AS="gcc -c -m32"
4.
Indique que las bibliotecas para libtool etc. provienen de /usr/lib:
LDFLAGS="-L/usr/lib"
5.
Indique que las bibliotecas se almacenen en el directorio lib:
--libdir=/usr/lib
Aplicaciones de 32 bits y de 64 bits en un entorno de sistema de 64 bits
413
6.
Indique que se utilicen las bibliotecas X de 32 bits:
--x-libraries=/usr/X11R6/lib/
No todos los programas necesitan todas estas variables. Adáptelas al programa en
cuestión.
CC="gcc -m64"
\
LDFLAGS="-L/usr/lib64;" \
.configure
\
--prefix=/usr \
--libdir=/usr/lib64
make
make install
26.4
Especificaciones de núcleo
Los núcleos de 64 bits para AMD64 y EM64T ofrecen una interfaz ABI (interfaz binaria
de aplicaciones) de núcleo tanto de 64 bits como de 32 bits. Esta última es idéntica a
la ABI para el núcleo de 32 bits correspondiente. Esto significa que la aplicación de 32
bits se puede comunicar con el núcleo de 64 bits de la misma forma que con el núcleo
de 32 bits.
La emulación de 32 bits de las llamadas del sistema de un núcleo de 64 bits no es
compatible con algunas interfaces API que emplean los programas de sistema. Esto
dependerá de la plataforma. Por este motivo, un pequeño número de aplicaciones, como
lspci o los programas de administración LVM, deben compilarse como programas
de 64 bits para poder funcionar correctamente.
Los núcleos de 64 bits sólo pueden cargar módulos de núcleos de 64 bits especialmente
compilados para este núcleo. No es posible utilizar módulos de núcleos de 32 bits.
SUGERENCIA
Algunas aplicaciones exigen módulos de carga de núcleos independientes. Si
tiene intención de utilizar una aplicación de 32 bits en un entorno de sistema
de 64 bits, póngase en contacto con el proveedor de esta aplicación y de SUSE
para asegurarse de que puede adquirir para este módulo la versión de 64 bits
del módulo de carga de núcleos y la versión compilada de 32 bits de la API de
núcleo.
414
Cómo trabajar con la shell
27
Las interfaces gráficas de usuario son cada vez más importantes para Linux, aunque el
uso del ratón no es siempre la mejor manera de realizar las tareas diarias. La línea de
comando ofrece gran flexibilidad y eficacia. Las aplicaciones basadas en texto son especialmente importantes para controlar los equipos por enlaces de red lentos o si desea
realizar tareas como usuario Root en la línea de comando en xterm. La shell Bash es
el que interpreta por defecto la línea de comando en SUSE Linux.
Linux es un sistema multiusuario y el acceso a los archivos se controla mediante los
permisos de usuario. Tanto si usa la línea de comando como si emplea una GUI (interfaz
gráfica de usuario), es útil entender el concepto de "permiso". Cuando se usa la línea
de comando, hay un buen número de comandos importantes. El editor de texto vi se
usa con frecuencia al configurar un sistema desde la línea de comando. También es
muy popular entre los administradores de sistemas y los desarrolladores.
27.1
Uso de la shell Bash en la línea
de comando
En la barra de tareas de KDE se encuentra un icono que representa un monitor con una
concha. Al hacer clic en él, se abrirá una ventana de terminal en la que introducir los
comandos. Konsole, el programa de terminal, normalmente ejecuta la shell Bash
(Bourne again shell), un programa desarrollado como parte del proyecto GNU. En el
escritorio de GNOME, haga clic en un icono con un monitor de PC en el panel superior
para iniciar un terminal que normalmente ejecuta la shell Bash.
Cómo trabajar con la shell
415
Una vez abierto la shell, vea el indicador de la primera línea. El indicador consiste
normalmente en el nombre de usuario, el nombre del host y la vía actual, pero puede
personalizarse. Cuando el cursor está situado después del indicador, puede enviar comandos directamente al equipo.
27.1.1 Introducción de comandos
Los comandos están compuestos de varios elementos. El primero siempre es el propio
comando, seguido de parámetros u opciones. Los comandos se ejecutan al pulsar Intro .
Antes de hacerlo, edite la línea de comando, añada opciones o corrija errores de escritura. Uno de los comandos usados con más frecuencia es ls, que puede utilizarse con
o sin argumentos. Si se introduce sólo el comando ls, se mostrará el contenido del directorio actual.
Las opciones llevan delante un guión. El comando ls -l, por ejemplo, muestra los
contenidos del mismo directorio con todos los detalles (formato de lista largo). Junto
a cada nombre de archivo, está la fecha en la que se creó, el tamaño en bytes y algunos
detalles más que se explicarán más adelante. Una opción importante que existe para
muchos comandos es --help. Al introducir ls --help, se muestran todas las opciones del comando ls.
Es importante colocar las “comillas” correctamente. Si un nombre de archivo tiene un
espacio, evite el espacio mediante una barra invertida (\) o ponga el nombre del archivo
entre comillas simples o dobles. De lo contrario la shell Bash interpretará un nombre
de archivo como Mis documentos como los nombres de dos archivos o directorios.
La diferencia entre comillas sencillas y dobles es que la expansión de las variables se
produce con las dobles. Las sencillas aseguran que la shell interpreta la cadena entrecomillada literalmente.
27.1.2 Archivos y directorios
Para usar la shell de manera eficiente, es muy útil contar con algún conocimiento de
las estructuras de archivos y directorios de un sistema Linux. Puede pensar en los directorios como carpetas electrónicas en las que se almacenan archivos, programas y subdirectorios. El directorio de nivel superior en la jerarquía es el directorio raíz al que se
hace referencia como /. Este es el lugar desde el que se puede acceder a todos los demás
directorios.
416
El directorio /home contiene los directorios en los que los usuarios individuales pueden
almacenar sus archivos personales. La Figura 27.1, “Extracto de un árbol de directorios
estándar” (p. 417) muestra el árbol de directorios estándar en Linux, con los directorios
personales de los usuarios de ejemplo xyz, linux y tux. El árbol de directorios de
un sistema Linux cuenta con una estructura funcional que sigue el estándar jerárquico
del sistema de archivos (FHS). En la siguiente lista se ofrece una breve descripción de
los directorios estándar en Linux.
Figura 27.1
Extracto de un árbol de directorios estándar
/
bin
boot
dev
etc
home
lib
mnt
media
vmlinuz
kde
opt
proc
root
srv
sbin
sys
tmp
usr
var
gnome
ld.so
hda
sda
st0
yxz
bin
linux
tux
bin
X11R6
test.c
Mail
bin
xdm
xterm
etc
lib
local
sbin
share
f2c
lib
xv
man
bin
bin
lib
lib
ftp
pub
man
faq
doc
howto
man
packages
/
Directorio raíz, punto de inicio del árbol de directorios
/home
Directorios personales de los usuarios
/dev
Archivos de dispositivo que representan componentes de hardware
/etc
Archivos importantes para la configuración del sistema
/etc/init.d
Guiones de arranque
Cómo trabajar con la shell
417
/usr/bin
Programas a los que se accede con frecuencia
/bin
Programas que se necesitan primero en el proceso de arranque
/usr/sbin
Programas reservados para el administrador del sistema
/sbin
Programas reservados para el administrador del sistema y necesarios para el arranque
/usr/include
Archivos de encabezado para el compilador C
/usr/include/g++
Archivos de encabezado para el compilador C++
/usr/share/doc
Diversos archivos de documentación
/usr/share/man
Lista concisa de comandos del sistema (páginas Man)
/usr/src
Código fuente del software de sistema
/usr/src/linux
Código fuente del núcleo
/tmp, /var/tmp
Archivos temporales
/usr
Todos los programas de aplicaciones
/var
Archivos de configuración (como los enlazados desde /usr)
/var/log
Archivos de registro del sistema
418
/var/adm
Datos de administración del sistema
/lib
Bibliotecas compartidas (para programas enlazados dinámicamente)
/proc
Sistema de archivos de proceso
/sys
Sistema de archivos del sistema en el que se reúne la información del dispositivo
para el núcleo
/usr/local
Extensiones locales independientes de la distribución
/opt
Software opcional, paquetes de programas adicionales más grandes (como KDE,
GNOME, Netscape)
27.1.3 Características de la shell Bash
Hay dos características importantes de la shell que pueden hacer que su trabajo sea
mucho más fácil:
Histórico
Para repetir un comando que se ha introducido anteriormente, pulse ↑ hasta que
aparezca el comando anterior en el indicador. Desplácese por la lista de los comandos
previamente introducidos pulsando ↓ . Para editar la línea de comando, mueva el
cursor a la posición que quiera mediante las teclas de flecha y comience a escribir.
Utilice Ctrl + R para buscar en el historial.
Completar
Completa el nombre del archivo en toda su extensión después de escribir las primera
letras hasta que se identifica perfectamente. Para utilizar esta función, escriba las
primeras letras y después pulse Tabul . Si hay varios nombres de archivos que empiezan por las mismas letras, obtenga una lista de ellos pulsando Tabul dos veces.
Cómo trabajar con la shell
419
Primer ejemplo: Gestión de archivos
Ahora que ya sabe cómo es un comando, los directorios que existen en SUSE Linux y
cómo se pueden acelerar algunos procesos mediante la shell Bash, ponga en práctica
este conocimiento con un pequeño ejercicio.
420
1.
Abra una consola desde el escritorio de KDE o GNOME haciendo clic en el
icono de la concha.
2.
Escriba el comando ls para ver los contenidos del directorio personal.
3.
Utilice el comando mkdir (que significa crear directorio) para crear un nuevo
subdirectorio denominado test escribiendo mkdir test.
4.
Ahora inicie un editor pulsando Alt + F2 y escriba kate para lanzar Kate en
KDE y gedit para lanzar Gedit en GNOME. Escriba unas cuantas letras en el
editor y guarde el archivo como Archivoprueba en el directorio personal.
Linux distingue entre mayúsculas y minúsculas. Para este ejemplo, utilice una
A mayúscula.
5.
Vuelva a ver el contenido del directorio personal. En lugar de escribir ls de
nuevo, pulse ↑ dos veces y el comando ls debería volver a aparecer en el indicador. Pare ejecutar el comando, pulse Intro . El directorio recién creado test
debería aparecer con letras azules y Archivoprueba en negro. Esta es la
forma en que directorios y archivos pueden distinguirse en la consola.
6.
Mueva Archivoprueba al subdirectorio test con el comando mv. Para
acelerar este proceso, utilice la función de expansión: escriba solamente mv A
y pulse Tabul . Puesto que no hay ningún otro archivo que comience por esa letra
en el directorio, la shell expandirá el nombre del archivo y añadirá la cadena
rchivoprueba. Si no es así, añada una letra o dos y pruebe pulsando Tabul cada
vez para ver si la shell puede expandir ahora el nombre. Finalmente, escriba un
espacio, a continuación test después del nombre del archivo expandido y
pulse Intro para ejecutar el comando.
7.
En este momento, Archivoprueba no debería estar ya en el directorio.
Compruébelo escribiendo ls de nuevo.
8.
Para ver si el archivo se ha movido con éxito, cambie al directorio test con el
comando cd test. Ahora introduzca ls de nuevo. Debería ver
Archivoprueba en la lista. Vuelva a su directorio personal en cualquier momento escribiendo sólo cd.
9.
Para hacer una copia de un archivo, utilice el comando cp. Por ejemplo, escriba
cp Archivoprueba Copiaprueba para copiar Archivoprueba
enCopiaprueba. Una vez más, el comando ls se puede emplear para ver si
ambos archivos están en el directorio.
27.1.4 Especificación de vías
Al trabajar con archivos o directorios, es importante especificar la vía correcta. Sin
embargo, no necesita escribir la vía (absoluta) completa desde el directorio raíz hasta
el archivo en concreto. Puede empezar desde el directorio actual. Diríjase al directorio
personal directamente con ~. Esto quiere decir que hay dos formas de mostrar el archivo
Archivoprueba en el directorio test: introduciendo la vía relativa con ls test
o especificando la vía absoluta con ls ~/test.
Para mostrar los contenidos de los directorios personales de los otros usuarios, introduzca
ls ~nombre_usuario. En el árbol de directorios de ejemplo, unos de los usuarios
de muestra es tux. En este caso, ls ~tux mostraría los contenidos del directorio
personal de tux.
Para referirse al directorio actual, utilice un punto (.). El siguiente nivel superior en el
árbol está representado por dos puntos (..). Al introducir ls .., verá los contenidos
del directorio padre correspondientes al directorio actual. El comando ls ../..
muestra los contenidos del directorio dos niveles por encima en la jerarquía.
Segundo ejemplo: trabajo con vías
A continuación se muestra otro ejemplo para ilustrar cómo moverse por los directorios
del sistema SUSE Linux.
1.
Cambie al directorio personal mediante el comando cd. Después cree un directorio en él con el nombre test2 introduciendo mkdir test2.
2.
Cambie al nuevo directorio con cd test2 y cree un subdirectorio con el
nombre subdirectorio. Para acceder a él, use la función de expansión:
Cómo trabajar con la shell
421
escriba cd su y luego pulse
directorio.
3.
Tabul
. La shell recuperará el resto del nombre del
Ahora intente mover el archivo creado previamente Copiaprueba al directorio
actual (subdirectorio) sin cambiar de directorio de nuevo. Para conseguirlo,
especifique la vía relativa a ese archivo: mv ../../test/Copiaprueba
. (tenga en cuenta el punto al final). El punto al final de este comando es necesario para indicar a la shell que el directorio actual es el destino al que desea
mover el archivo. ../../, en este ejemplo, se refiere al directorio personal.
27.1.5 Comodines
Otra característica que ofrece la shell son los comodines para la expansión del nombre
de la vía. Existen tres tipos distintos de ellos en Bash:
?
Coincide exactamente con un carácter arbitrario
*
Coincide con cualquier número de caracteres
[set]
Coincide con uno de los caracteres del grupo especificado dentro de los corchetes,
que aquí está representado por la cadena set. Como parte de set también puede especificar clases de caracteres mediante la sintaxis [:clase:], donde una clase
puede ser alnum, alpha, ascii, etc.
Con el uso de ! o ^ al principio del grupo ([!set]) coincide con un carácter distinto
de los identificados por set.
Si suponemos que el directorio test contiene los archivos Archivoprueba,
Archivoprueba1, Archivoprueba2 y archivodatos, el comando ls
Archivoprueba? mostrará los archivos Archivoprueba1 y Archivoprueba2
. Con ls Archivo*, la lista también incluirá Archivoprueba. ls *prueb*
mostrará todos los archivos de muestra. Finalmente puede usar el comodín set para
buscar todos los archivos de muestra cuyo último carácter sea un número: ls
Archivoprueba[1-9] o mediante la utilización de clases, ls
Archivoprueba[[:digit:]].
422
De los cuatro tipos de comodines, el más amplio es el asterisco. Puede usarse para copiar
todos los archivos de un directorio en otro o suprimir todos los archivos con un comando.
El comando rm *prueb*, por ejemplo, suprimiría todos los archivos del directorio
actual cuyos nombres incluyan la cadena prueb.
27.1.6 Less y More
Linux incluye dos pequeños programas para ver archivos de texto directamente en la
shell. En lugar de iniciar un editor para leer un archivo como Leame.txt, simplemente introduzca less Leame.txt para mostrar el texto en la ventana de la consola.
Utilice la barra espaciadora para bajar una página. Utilice Re Pág y Av Pág para avanzar o
retroceder en el texto. Para salir de less, pulse Q .
En lugar de less, también puede utilizar el programa más antiguo more. Sin embargo,
es menos conveniente porque no le permite desplazarse hacia atrás.
El programa less (menos) debe su nombre a la frase menos es más y puede usarse
también para ver la salida de los comandos de una manera adecuada. Para ver cómo
funciona, lea la Sección 27.1.7, “Conductos y redirección” (p. 423).
27.1.7 Conductos y redirección
Normalmente, la salida estándar en la shell es la pantalla o la ventana de la consola y
la entrada estándar es el teclado. Para remitir la salida de un comando a una aplicación
como less, use un conducto.
Para ver los archivos del directorio test, escriba el comando ls test | less.
Los contenidos del directorio test se mostrarán con less. Sólo tiene sentido hacerlo
de esta forma si la salida normal con ls es demasiado larga. Por ejemplo, si ve los
contenidos del directorio dev con ls /dev, sólo verá una parte pequeña en la ventana.
Vea la lista completa con ls /dev | less.
También es posible guardar la salida de comandos en un archivo. Por ejemplo, echo
"test uno" > Contenido genera un nuevo archivo denominado Contenido
que incluye las palabras test uno. Vea el archivo con less Contenido.
También puede usar un archivo como la entrada de un comando. Por ejemplo, con tr
se sustituyen caracteres desde una entrada estándar que se ha redirigido desde el archivo
Cómo trabajar con la shell
423
Contenido y se escribe el resultado en una salida estándar: sustituir t con x llamando
tr t x < Contenido. La salida de tr se envía a la pantalla.
Si necesita un archivo nuevo que contenga la salida, con la ayuda de un conducto lleve
la salida de tr a un archivo. Para comprobarlo, cambie a test e introduzca el comando
tr t x < ../Contenido > nuevo. Finalmente, vea nuevo con less nuevo.
Al igual que la salida estándar, la salida de error estándar se enviará a la consola. Sin
embargo, para redirigir la salida de error estándar a un archivo denominado errores,
añada al final 2> errores al comando correspondiente. Tanto la salida como el error
estándar se guardarán en un archivo denominado todasalida si añade al final >&
todasalida. Finalmente, para unir la salida de un comando a un archivo ya existente,
el comando debe ir seguido de >> en lugar de >.
27.1.8 Archivos de reserva y compresión
de datos
Ahora que ya ha creado un buen número de archivos y directorios, ha llegado el momento de saber más sobre los archivos de reserva y la compresión de datos. Supongamos
que desea empaquetar todo el directorio test en un archivo que pueda guardar en un
dispositivo de almacenamiento USB stick como copia de seguridad o enviarlo por correo
electrónico. Para ello, use el comando tar (que corresponde a tape archiver, utilidad
Tar). Con tar --help, verá todas las opciones del comando tar. Las opciones más
importantes se explican a continuación:
-c
(que corresponde a "create", crear) Crea un archivo de reserva nuevo.
-t
(que corresponde a "table", tabla) Muestra los contenidos de un archivo de reserva.
-x
(que corresponde a "extract", extraer) Desempaqueta el archivo de reserva.
-v
(que corresponde a "verbose", detallado) Muestra todos los archivos en pantalla
mientras crea el archivo de reserva.
424
-f
(que corresponde a "file", archivo) Seleccione un nombre de archivo para el de reserva. Al crear un archivo de reserva, esta opción siempre debe ser la última.
Para empaquetar el directorio test con todos sus archivos y subdirectorios en un archivo de reserva denominadoarchivoprueba.tar, utilice las opciones -c y -f.
Para hacer comprobaciones, añada también -v para seguir el progreso del archivo de
reserva aunque esta opción no es obligatoria. Después de usar cd para cambiar al directorio personal, donde está ubicado el directorio test, introduzca tar -cvf
archivoprueba.tar test. Después, vea el contenido del archivo de reserva con
tar -tf archivoprueba.tar. El directorio test con todos sus archivos y directorios permanece sin cambios en el disco duro. Para desempaquetar el archivo de
reserva, introduzca tar -xvf archivoprueba.tar, pero no lo haga todavía.
Para la compresión de archivos, la opción obvia es gzip o para obtener una mejor tasa
de compresión bzip2. Sólo tiene que introducir gzip archivoprueba.tar (o
bzip2 archivoprueba.tar, aunque en este ejemplo se usará gzip). Con el
comando ls, compruebe que el archivo archivoprueba.tar ya no está ahí y que
se ha creado en su lugar el archivo archivoprueba.tar.gz. Este archivo es
mucho más pequeño y por tanto más adecuado para enviarlo por correo electrónico o
almacenarlo en un dispositivo de almacenamiento USB stick.
A continuación, desempaquete este archivo en el directorio test2 creado anteriormente.
Para ello, introduzca cp archivoprueba.tar.gz test2 para copiar el archivo
en ese directorio. Cambie al directorio con cd test2. Los archivos de reserva comprimidos con la extensión .tar.gz se pueden descomprimir con el comandogunzip.
Introduzca gunzip archivoprueba.tar.gz, que dará como resultado el archivo
archivoprueba.tar, que deberá extraerse o descomprimirse el archivo tar con
tar -xvf archivoprueba.tar. También puede descomprimir y extraer un archivo de reserva comprimido en un único paso con tar -xvf
archivoprueba.tar.gz (ya no es necesario añadir la opción -z). Con el comando
ls, podrá ver que se ha creado un nuevo directorio test con el mismo contenido que
el directorio test situado en el directorio personal.
27.1.9 mtools
mtools es un conjunto de comandos para trabajar con sistemas de archivos MS-DOS.
Los comandos incluidos en mtools le permiten dirigirse a la primera unidad de dis-
Cómo trabajar con la shell
425
quetes como a:, igual que en MS-DOS. Los comandos son como los de MS-DOS excepto en el hecho de que llevan delante una m.
mdir a:
Muestra el contenido del disquete de la unidad a:
mcopy Archivoprueba a:
Copia el archivo Archivoprueba en el disquete
mdel a:Archivoprueba
Suprime Archivoprueba en a:
mformat a:
Da formato al disquete con formato de MS-DOS (mediante el comando fdformat)
mcd a:
Hace que a: sea el directorio actual
mmd a:test
Crea el subdirectorio test en un disquete
mrd a:test
Suprime el subdirectorio test del disquete
27.1.10
Limpieza
Después de este curso intensivo, debería estar familiarizado con la parte básica de la
shell de Linux o la línea de comando. Es posible que quiera limpiar el directorio personal
suprimiendo los archivos y directorios de pruebas mediante los comandos rm y rmdir.
En la Sección 27.3, “Comandos importantes de Linux” (p. 433), encontrará una lista de
los comandos más importantes y una breve descripción de sus funciones.
27.2
Usuarios y permisos de acceso
Desde su inicio a principios de 1990, Linux se ha desarrollado como un sistema multiusuario. Puede trabajar en él cualquier número de usuarios a la vez. Los usuarios tienen
que iniciar la sesión en el sistema antes de iniciarla en sus estaciones de trabajo. Cada
usuario tiene un nombre asignado y la contraseña correspondiente. Esta diferenciación
426
de usuarios garantiza que usuarios no autorizados no puedan ver archivos para los que
no tienen permiso. De igual modo, los usuarios normales tampoco pueden realizar
cambios importantes en el sistema (como la instalación de nuevos programas) o tienen
restringida la capacidad de realizarlos. Sólo el usuario Root, o súperusuario, tiene una
capacidad sin restricciones para realizar cambios al sistema y cuenta con acceso ilimitado a todos los archivos. Los usuarios que utilicen esta capacidad prudentemente iniciando sesión solamente con acceso completo de usuario Root cuando sea necesario,
podrán reducir el riesgo de pérdida no intencionada de datos. Debido a que en circunstancias normales sólo el usuario Root puede suprimir archivos de sistema o dar formato
a los discos duros, la amenaza de troyanos o la introducción accidental de comandos
destructivos puede reducirse significativamente.
27.2.1 Permisos del sistema de archivos
Fundamentalmente, cada archivo de un sistema de archivos Linux pertenece a un
usuario o a un grupo. Tanto estos grupos exclusivos como todos los demás pueden tener
autorización para modificar, leer o ejecutar estos archivos.
Un grupo, en este caso, puede definirse como un conjunto de usuarios conectados con
algunos derechos colectivos. Por ejemplo, supongamos que llamamos a un grupo que
trabaja en un proyecto concreto el nombre de proyecto3. Cada usuario de un sistema
Linux pertenece al menos a un grupo exclusivo, normalmente users. Puede haber
tantos grupos como necesite un sistema pero sólo el usuario Root puede añadirlos.
Todos los usuarios pueden emplear el comando groups para averiguar a qué grupo
pertenecen.
Acceso a archivos
La organización de permisos en el sistema de archivos difiere para archivos y directorios. La información de los permisos de archivos puede mostrarse con el comando
ls -l. La salida podría ser parecida al Ejemplo 27.1, “Salida de muestra en la que
aparecen los permisos de archivos” (p. 427).
Ejemplo 27.1
Salida de muestra en la que aparecen los permisos de archivos
-rw-r----- 1 tux proyecto3 14197 Jun 21
15:03 Roadmap
Tal y como se muestra en la tercera columna, este archivo pertenece al usuario tux.
Está asignado al grupo proyecto3. Para descubrir los permisos de usuario del
archivo Roadmap, hay que examinar la primera columna con detenimiento.
Cómo trabajar con la shell
427
-
rw-
r--
---
Tipo
Permisos de usuarios Permisos de grupo
Permisos para otros
usuarios
Esta columna consiste en un carácter inicial seguido de nueve caracteres agrupados
en árboles. La primera de las diez letras representa el tipo del componente del sistema
de archivos. El guión (–) indica que es un archivo. También se podría indicar un
directorio (d), un enlace (l), un dispositivo de bloque (b) o un dispositivo de
caracteres.
Los siguientes tres bloques siguen un patrón estándar. Los primeros tres caracteres
indican si el archivo es legible (r) o no (–). Una w en la parte intermedia simboliza que el objeto correspondiente puede editarse y un guión (–) significa que no
es posible escribir en el archivo. Una x en la tercera posición indica que el objeto
puede ejecutarse. Debido a que el archivo de este ejemplo es un archivo de texto y
no un ejecutable, no es necesario el acceso ejecutable para este archivo en concreto.
En este ejemplo, tux tiene, como propietario del archivo Roadmap, acceso de
lectura (r) y escritura (w) a él, pero no puede ejecutarlo (x). Los miembros del
grupo proyecto3 pueden leer el archivo pero no pueden modificarlo ni ejecutarlo.
Los otros usuarios no cuentan con ningún acceso a este archivo. Los otros permisos
se pueden asignar por medio de las ACL (listas de control de acceso). Consulte la
Sección 27.2.6, “Listas de control de acceso” (p. 432) para obtener información básica.
Permisos de directorio
Los permisos de acceso para directorios tienen el tipo d. En el caso de directorios,
los permisos individuales tienen un significado ligeramente distinto.
Ejemplo 27.2 Salida de muestra en el que aparecen los permisos de directorios
drwxrwxr-x 1 tux proyecto3 35 Jun 21 15:15
ProjectData
En el Ejemplo 27.2, “Salida de muestra en el que aparecen los permisos de directorios” (p. 428), el propietario (tux) y el grupo (proyecto3) que posee el directorio ProjectData son fáciles de reconocer. A diferencia de los permisos de
acceso a los archivos de Acceso a archivos (p. 427), el permiso de lectura definido
(r) significa que los contenidos del directorio pueden mostrarse. El permiso de
428
escritura (w) significa que se pueden crear nuevos archivos. El permiso ejecutable
(x) significa que el usuario puede cambiar a este directorio. En el ejemplo anterior,
el usuario tux además de los miembros del grupo proyecto3 pueden cambiar
al directorio ProjectData (x), ver los contenidos (r) y añadir o suprimir archivos (w). Al resto de los usuarios, por otra parte, se les ha otorgado un nivel de
acceso inferior. Pueden entrar en el directorio (x) y examinarlo (r), pero no insertar ningún nuevo archivo (w).
27.2.2 Modificación de los permisos de
archivo
Cambio de los permisos de acceso
Tanto el propietario como, por supuesto, el usuario Root pueden cambiar los permisos de acceso de un archivo o directorio con el comando chmod seguido por los
parámetros que cambian los permisos además de uno o varios nombres de archivos.
Los parámetros forman distintas categorías:
1.
Respecto a los usuarios
• u (usuario): propietario del archivo
• g (grupo): grupo al que pertenece el archivo
• o (otros): usuarios adicionales (si no hay ningún parámetro, los cambios se aplicarán a todas las categorías)
2.
Un carácter que suprimir (–), ajuste (=) o inserción (+)
3.
Las abreviaturas
• r: leer
• w: escribir
• x: ejecutar
4.
Nombre o nombres de archivo separados por espacios
Cómo trabajar con la shell
429
Si, por ejemplo, el usuario tux en el Ejemplo 27.2, “Salida de muestra en el que
aparecen los permisos de directorios” (p. 428) también desea conceder a otros
usuarios acceso de escritura (w) al directorio ProjectData, puede hacerlo
mediante el comando chmod o+w ProjectData.
Si, por el contrario, desea denegar a todos los usuarios excepto a sí mismo los permisos de escritura, puede hacerlo introduciendo el comando chmod go-w
ProjectData. Para prohibir a todos los usuarios que puedan añadir un archivo
nuevo a la carpeta ProjectData, introduzca chmod -w ProjectData.
Ahora, ni siquiera el propietario podrá escribir en el archivo sin tener que restablecer
primero los permisos de escritura.
Cambio de los permisos de propiedad
Otros comandos importantes para controlar la propiedad y permisos de los componentes del sistema de archivos son chown (cambiar propietario) y chgrp (cambiar
grupo). Se puede usar el comando chown para transferir la propiedad de un archivo
a otro usuario. Sin embargo, sólo el usuario Root tiene permiso para realizar este
cambio.
Supongamos que el archivo Roadmap del Ejemplo 27.2, “Salida de muestra en el
que aparecen los permisos de directorios” (p. 428) ya no pertenece a tux, sino al
usuario geeko. El usuario Root debería introducir chown geeko Roadmap.
chgrp cambia la propiedad del grupo del archivo. Sin embargo, el propietario del
archivo debe ser un miembro del grupo nuevo. De este modo, el usuario tux del
Ejemplo 27.1, “Salida de muestra en la que aparecen los permisos de archivos”
(p. 427) puede cambiar el grupo al que pertenece el archivo ProjectData a
proyecto4 mediante el comando chgrp proyecto4 ProjectData,
mientras sea un miembro de este nuevo grupo.
27.2.3 El bit setuid
En algunos casos, los permisos de acceso pueden ser demasiado restrictivos. Por tanto,
Linux cuenta con ajustes adicionales que permiten el cambio temporal del usuario y la
identidad del grupo actuales para una acción en concreto. Por ejemplo, el programa
passwd normalmente necesita permisos de usuario Root para acceder a /etc/passwd
. Este archivo contiene información importante como los directorios personales de los
usuarios o los ID de usuario y de grupo. Por tanto, un usuario normal no podría cambiar
430
passwd, porque sería demasiado peligroso otorgar a todos los usuarios acceso directo
a este archivo. Una solución posible a este problema es el mecanismo setuid. setuid
(definir ID de usuario) es un atributo de archivo especial que indica al sistema que debe
ejecutar los programas marcados con un ID de usuario en concreto. Considere el comando passwd:
-rwsr-xr-x
1 root shadow 80036 2004-10-02 11:08 /usr/bin/passwd
Puede ver que la s indica que el bit setuid está definido para el permiso del usuario.
Mediante el bit setuid, todos los usuarios que inician el comando passwd lo ejecutan
como usuario Root.
27.2.4 El bit setgid
El bit setuid se aplica a los usuarios. Sin embargo, hay también una propiedad equivalente para grupos: el bit setgid. Un programa para el que se ha definido este bit se ejecuta con el ID de grupo con el que se ha guardado, sin importar el usuario que lo inicia.
Por tanto, en un directorio con el bit setgid, todos los archivos o subdirectorios recién
creados se asignan al grupo al que pertenece el directorio. Considere el directorio de
ejemplo siguiente:
drwxrws--- 2 tux archive 48 Nov 19 17:12
backup
Puede observar que la s indica que el bit setgid está definido para el permiso de grupo.
El propietario del directorio y los miembros del grupo archive pueden acceder a este
directorio. Los usuarios que no sean miembros de este grupo se “asignan” al grupo
respectivo. El ID de grupo vigente de todos los archivos escritos será archive. Por
ejemplo, un programa de copia de seguridad que se ejecuta con el ID de grupo archive
es capaz de acceder a este directorio incluso sin privilegios de usuario Root.
27.2.5 El bit adhesivo
Existe también el bit adhesivo. Es distinto si pertenece a un programa o a un directorio
ejecutable. Si pertenece a un programa, un archivo marcado de esta forma se carga en
la RAM para evitar la necesidad de obtenerlo del disco duro cada vez que se usa. Este
atributo apenas se utiliza porque los discos duros modernos son lo suficientemente rápidos. Si este bit se asigna a un directorio, impide que los usuarios supriman los archivos
de otros usuarios. Los ejemplos típicos incluyen los directorios /tmp y /var/tmp:
Cómo trabajar con la shell
431
drwxrwxrwt
2 root
root
1160 2002-11-19 17:15 /tmp
27.2.6 Listas de control de acceso
El concepto tradicional de permiso para los objetos del sistema de archivos de Linux,
como los archivos o directorios, se puede ampliar mediante las ACL (listas de control
de acceso). Estas listas permiten la asignación de permisos para usuarios o grupos individuales distintos al propietario o grupo propietario originales de un objeto del sistema
de archivos.
Los archivos o directorios que llevan permisos de acceso extendidos pueden detectarse
con un comando sencillo como ls -l:
-rw-r--r--+ 1 tux proyecto3 14197 Jun 21
15:03 Roadmap
Roadmap pertenece a tux que a su vez pertenece al grupo proyecto3. tux tiene
acceso tanto de lectura como de escritura a este archivo. Tanto el grupo como el resto
de usuarios cuentan con acceso de lectura. La única diferencia que distingue este archivo
de uno sin ACL es el signo + adicional en la columna que incluye los bits de permisos.
Obtenga información acerca de la ACL ejecutando getfacl Roadmap:
# file: Roadmap
# owner: tux
# group: proyecto3
user::rwuser:jane:rwgroup::r-group:djungle:rwmask::r-other::---
effective: r-effective: r--
Las primeras tres líneas de la salida no retienen ninguna información que no esté disponible con ls -l. Estas líneas sólo detallan el nombre de archivo, el propietario y el
grupo que lo posee. De la línea 4 a la 9 se retienen las entradas de la ACL. Los permisos
de acceso convencionales representan un subconjunto de los posibles al usar las ACL.
La ACL de ejemplo otorga acceso de lectura y escritura al propietario del archivo además
de al usuario jane (líneas 4 y 5). El concepto convencional se ha expandido permitiendo
el acceso a un usuario adicional. Lo mismo se aplica a la gestión del acceso de grupo.
El grupo que posee el archivo tiene permisos de lectura (línea 6) y el grupo djungle
tiene permisos de lectura y escritura. La entrada mask en la línea 8 reduce los permisos
vigentes para el usuario jane y el grupo djungle al acceso de lectura. El resto de
usuarios y grupos no obtienen ningún tipo de acceso al archivo (línea 9).
432
En este documento sólo se ha ofrecido información muy básica. Puede obtener información más detallada acerca de las ACL en el Capítulo 24, Listas de control de acceso en
Linux (p. 377).
27.3
Comandos importantes de
Linux
En esta sección se describen los comandos más importantes del sistema SUSE Linux.
Hay muchos más comandos que los mostrados en este capítulo. Junto a cada comando
se presenta una lista de parámetros y, donde resulta preciso, un ejemplo típico de aplicación. Para obtener más información sobre los distintos comandos, utilice las páginas
de manual (Man), a las que se accede con el comando man seguido del nombre del
comando, por ejemplo, man ls.
Desplácese en las páginas Man con las teclas Re Pág y Av Pág . Desplácese al principio
o al final del documento con las teclas Inicio y Fin . Salga de este modo de visualización
pulsando Q . Encontrará más información sobre el comando man indicando el propio
comando man man.
En la siguiente descripción general se utilizan distintas tipografías para los elementos
de comandos individuales. El comando real y sus opciones obligatorias siempre se indican como comando opción. Las especificaciones o parámetros que no son necesarios se colocan entre [corchetes].
Puede configurar los ajustes según sus necesidades. No tiene sentido escribir ls
archivo si no existe realmente ningún archivo llamado archivo. Normalmente
es posible combinar varios parámetros, por ejemplo escribiendo ls -la en lugar de
ls -l -a.
27.3.1 Comandos de archivos
En la siguiente sección se describen los comandos más importantes para la gestión de
archivos. Tratan desde la administración general de archivos a la manipulación de ACLs
del sistema de archivos.
Cómo trabajar con la shell
433
Administración de archivos
ls [opciones] [archivos]
Si ejecuta el comando ls sin ningún parámetro adicional, el programa muestra una
lista del contenido del directorio actual en formato abreviado.
-l
Lista detallada.
-a
Muestra archivos ocultos.
cp [opciones] origen destino
Copia el origen en el destino.
-i
Espera que se produzca una confirmación, si es necesaria, antes de sobreescribir
un destino existente.
-r
Copia repetidamente (incluidos los subdirectorios).
mv [opciones] origen destino
Copia el origen en el destino y borra el archivo de origen original.
-b
Crea una copia de seguridad del origen antes de moverlo.
-i
Espera confirmación, si es necesaria, antes de sobreescribir un destino existente.
rm [opciones] archivos
Borra los archivos indicados del sistema de archivos. Los directorios no se suprimen
con el comando rm a no ser que se use la opción -r.
434
-r
Suprime los subdirectorios existentes.
-i
Espera que se produzca una confirmación antes de borrar cada archivo.
ln [opciones] origen destino
Crea un enlace interno del origen al destino. Habitualmente, este enlace señala directamente al origen en el mismo sistema de archivos. No obstante, si se
ejecuta el comando ln con la opción -s, se crea un enlace simbólico que sólo señala al directorio en el que se encuentra el origen, lo que permite enlazar con
sistemas de archivos distintos.
-s
Crea un enlace simbólico.
cd [opciones] [directorio]
Cambia el directorio actual. Si no se indica ningún parámetro con el comando cd
los cambios se realizan en el directorio personal del usuario.
mkdir [opciones] [directorio]
Crea un directorio nuevo.
rmdir [opciones] [directorio]
Suprime el directorio indicado, si ya está vacío.
chown [opciones] nombre_usuario[:[grupo]] archivos
Transfiere la propiedad de un archivo al usuario con el nombre de usuario indicado.
-R
Cambia los archivos y directorios de todos los subdirectorios.
chgrp [opciones] nombre_grupo archivos
Transfiere la propiedad de grupo de un archivo determinado al grupo con el
nombre de grupo indicado. El propietario del archivo sólo puede cambiar la propiedad
de grupo si es miembro tanto del grupo actual como del nuevo.
Cómo trabajar con la shell
435
chmod [opciones] modo archivos
Cambia los permisos de acceso.
El parámetro de modo tiene tres partes: grupo, acceso y tipo de acceso.
En grupo se aceptan los siguientes caracteres:
u
usuario
g
grupo
o
otros
Para acceso, se otorga el acceso con + y se deniega con -.
El tipo de acceso se controla con las siguientes opciones:
r
lectura
w
escritura
x
ejecución: para ejecutar archivos o cambiar al directorio.
s
bit de setuid: la aplicación o el programa se inician como si los hubiera abierto
el propietario del archivo.
Como alternativa, se puede utilizar un código numérico. Los cuatro dígitos de este
código están compuestos por la suma de los valores 4, 2 y 1: el resultado decimal
de una máscara binaria. El primer dígito define el ID del usuario (SUID) (4), el ID
de grupo de conjunto (2) y los bits adhesivos (1). El segundo dígito define los permisos del propietario del archivo. El tercer dígito define los permisos de los miembros del grupo y el último dígito los permisos para todos los usuarios. El permiso
de lectura se define con un 4, el de escritura con un 2 y el de ejecución con un 1. El
436
propietario de un archivo recibe normalmente un 6 o un 7 para los archivos ejecutables.
gzip [parámetros] archivos
Este programa comprime el contenido de los archivos mediante complejos algoritmos
matemáticos. Los archivos comprimidos de esta forma reciben la extensión .gz y
es preciso descomprimirlos antes de que se puedan utilizar. Para comprimir varios
archivos, o incluso directorios, utilice el comando tar.
-d
Descomprime los archivos gzip empaquetados para que vuelvan a tener su tamaño
original y puedan procesarse con normalidad (igual que el comando gunzip).
tar opciones archivo_de_reserva archivos
El comando tar coloca uno o más archivos en un archivo de reserva. La compresión
es opcional. El comando tar es muy complejo y dispone de muchas opciones disponibles. Las usadas con más frecuencia son estas:
-f
Escribe el resultado en un archivo y no en la pantalla, como es habitual.
-c
Crea un archivo de reserva tar nuevo.
-r
Añade archivos a un archivo de reserva existente.
-t
Da como resultado el contenido de un archivo de reserva.
-u
Añade archivos, pero sólo si son más actuales que los que ya hay incluidos en
el archivo de reserva.
-x
Desempaqueta los archivos de un archivo de reserva (extracción)
-z
Comprime el archivo de reserva resultante con gzip
Cómo trabajar con la shell
437
-j
Comprime el archivo de reserva resultante con bzip2
-v
Muestra una lista de los archivos procesados
Los archivos del archivo de reserva creados con tar terminan con la extensión
.tar. Si el archivo de reserva tar también se ha comprimido usando gzip, la extensión es .tgz o .tar.gz. Si se ha comprimido usando bzip2, será .tar
.bz2. Encontrará ejemplos de aplicación en la Sección 27.1.8, “Archivos de reserva
y compresión de datos” (p. 424).
locate patrones
Este comando sólo está disponible si se ha instalado el paquete
findutils-locate. El comando locate puede localizar en qué directorio se
encuentra un archivo. Se pueden utilizar comodines para indicar los nombres de los
archivos. El programa es muy rápido, ya que utiliza una base de datos creada específicamente para este propósito (en lugar de buscar en todo el sistema de archivos).
Pero esta ventaja, no obstante, también tiene un grave inconveniente: locate no
puede localizar archivos creados tras la última actualización de esta base de datos.
El usuario Root puede generar la base de datos con el comando updatedb.
updatedb [opciones]
Este comando realiza una actualización de la base de datos utilizada por el comando
locate. Para incluir los archivos de todos los directorios existentes, ejecute el
programa como usuario Root. También resulta de utilidad colocarlo en segundo
plano añadiendo un símbolo de unión (&) y poder así continuar de inmediato con
el trabajo en la misma línea de comandos (updatedb &). Este comando se ejecuta
normalmente como trabajo de cron diario (consulte cron.daily).
find [opciones]
Con el comando find se pueden buscar archivos en un directorio concreto. El
primer argumento indica el directorio en el que iniciar la búsqueda. La opción
-name debe ir seguida de una cadena de búsqueda, que también puede incluir comodines. A diferencia de locate, que utiliza una base de datos, el comando find
busca en el directorio real.
438
Comandos para acceder al contenido de los archivos
cat [opciones] archivos
El comando cat muestra el contenido de un archivo, imprimiendo todo el contenido
en la pantalla sin interrupciones.
-n
Numera el resultado en el margen izquierdo.
less [opciones] archivos
Este comando se puede utilizar para examinar el contenido del archivo indicado.
Es posible saltar media pantalla hacia arriba o hacia abajo con las teclas Re Pág y
Av Pág o una página completa de la pantalla con la barra espaciadora . También se
puede ir al principio o al final del archivo con las teclas Inicio y Fin . Pulse Q para
salir del programa.
grep [opciones] cadena_de_búsqueda archivos
El comando grep busca una cadena específica en los archivos indicados. Si se encuentra, se muestra la línea en la que se halla la cadena_de_búsqueda junto
al nombre del archivo.
-i
No tiene en cuenta mayúsculas ni minúsculas.
-H
Muestra sólo los nombres de los archivos respectivos, pero no las líneas de texto.
-n
Muestra además los números de las líneas en las que se ha encontrado una
coincidencia.
-l
Muestra sólo los archivos en los que no aparece la cadena_de_búsqueda.
diff [opciones] archivo1 archivo2
El comando diff compara el contenido de dos archivos cualquiera. El resultado
del programa muestra una lista de todas las líneas que no coinciden. Suelen utilizarlo
Cómo trabajar con la shell
439
los programadores que sólo necesitan enviar los cambios realizados en los programas,
y no todo el código fuente.
-q
Sólo informa de si dos archivos son distintos.
-u
Produce un archivo de diferencias “unificado” que resulta más fácil de leer.
Sistemas de archivos
mount [opciones] [dispositivo] punto_de_montaje
Este comando se puede utilizar para montar cualquier soporte de datos, como discos
duros, unidades de CD-ROM y otras unidades en un directorio del sistema de archivos Linux.
-r
El montaje es de sólo lectura.
-t sistema_archivos
Indica el sistema de archivos, habitualmente ext2 para los discos duros de Linux, msdos para los soporte MS-DOS, vfat para el sistema de archivos de
Windows y iso9660 para CD.
Para los discos duros no definidos en el archivo /etc/fstab, también es preciso
indicar el tipo de dispositivo. En este caso, sólo el usuario Root podrá montarlos.
Si otros usuarios también deben montar el sistema de archivos, escriba la opción
user en la línea adecuada del archivo /etc/fstab (separada con comas) y
guarde este cambio. Encontrará más información en la página Man mount(1).
umount [opciones] punto_de_montaje
Este comando desmonta una unidad montada del sistema de archivos. Para evitar
la pérdida de datos, ejecute este comando antes de retirar el soporte de datos extraíble
de la unidad. Normalmente, sólo el usuario Root tiene permiso para ejecutar los
comandos mount y umount. Para permitir que otros usuarios pueden ejecutarlos,
edite el archivo /etc/fstab para indicar la opción user para la unidad correspondiente.
440
27.3.2 Comandos del sistema
En la siguiente sección se describen algunos de los comandos más importantes necesarios
para recuperar información del sistema, realizar procesos y controlar redes.
Información del sistema
df [opciones] [directorio]
El comando df (disk free, disco libre), cuando se usa sin ninguna opción, muestra
información acerca del espacio total de disco, el espacio de disco en uso en la actualidad y el espacio libre en todas las unidades montadas. Si se indica un directorio,
la información se limita a la unidad en la que se encuentra ese directorio.
-h
Muestra el número de bloques ocupados en gigabytes, megabytes o kilobytes:
en formato legible para las personas.
-T
Tipo del sistema de archivos (ext2, nfs, etc.).
du [opciones] [vía]
Este comando, cuando se ejecuta sin parámetros, muestra el espacio total de disco
ocupado por los archivos y subdirectorios del directorio actual.
-a
Muestra el tamaño de cada archivo individual.
-h
El resultado se genera en formato que pueden leer las personas.
-s
Muestra sólo el tamaño total calculado.
free [opciones]
El comando free muestra información sobre el uso de RAM y de espacio de intercambio presentando la cantidad total y usada en cada categoría. Si desea obtener
más información, consulte Sección 30.1.6, “Comando free” (p. 499).
Cómo trabajar con la shell
441
-b
Resultado en bytes.
-k
Resultado en kilobytes.
-m
Resultado en megabytes.
date [opciones]
Este sencillo programa muestra la hora actual del sistema. Si lo ejecuta el usuario
Root también se puede utilizar para cambiar la hora del sistema. Hay detalles sobre
el programa disponibles en la página Man date(1).
Procesos
top [opciones]
El comando top ofrece una descripción rápida de los procesos actualmente en
ejecución. Pulse H para acceder a una página que explica brevemente las opciones
principales para personalizar el programa.
ps [opciones] [ID de proceso]
Si se ejecuta sin opciones, este comando muestra una tabla de todos los programas
o procesos propios: los que ha empezado el usuario. Las opciones de este comando
no van precedidas de guión.
aux
Muestra una lista detallada de todos los procesos, independientemente del propietario.
kill [opciones] ID de proceso
Desafortunadamente, a veces un programa no se puede terminar de forma normal.
En la mayoría de los casos, aún será posible detener estos programas rebeldes ejecutando el comando kill e indicando el ID de proceso respectivo (consulte los
comandos top y ps). El comando kill envía una señal TERM que ordena al
programa que se apague a sí mismo. Si esto no ayuda, se puede utilizar el siguiente
parámetro:
442
-9
Envía una señal KILL en lugar de una señal TERM, lo que finaliza el proceso
especificado en casi todos los casos.
killall [opciones] nombre_proceso
Este comando es similar a kill, pero utiliza el nombre del proceso (en lugar de
su ID) como argumento, interrumpiendo todos los procesos con ese nombre.
Redes
ping [opciones] nombre de host o dirección IP
El comando ping es la herramienta estándar para probar el funcionamiento básico
de las redes TCP/IP. Envía un pequeño paquete de datos al host de destino y pide
una respuesta inmediata. Si funciona, ping muestra un mensaje al respecto que
indica que el enlace de red funciona.
-c número
Determina el número total de paquetes que se deben enviar y termina cuando
se han enviado (por defecto, no se define límite).
-f
ping fluido: envía todos los paquetes de datos que puede. Se trata de un método
muy popular, reservado al usuario Root, para probar redes.
-i valor
Indica el intervalo entre dos paquetes de datos en segundos (por defecto: un segundo).
nslookup
El sistema de nombres de dominios traduce nombres de dominios a direcciones IP.
Con esta herramienta se envían consultas a los servidores de nombres (servidores
DNS).
telnet [opciones] nombre de host o dirección IP [puerto]
Telnet es en realidad un protocolo de Internet que permite trabajar en hosts remotos
a través de una red. Es también el nombre de un programa de Linux que utiliza este
protocolo para permitir operaciones en equipos remotos.
Cómo trabajar con la shell
443
AVISO
No utilice telnet en redes en las que puedan “echar un vistazo” terceras
partes. Particularmente en Internet, utilice métodos de transferencia cifrados,
como ssh, para evitar el riesgo de un uso malicioso de las contraseñas
(consulte la página Man para el comando ssh).
Misceláneos
passwd [opciones] [nombre_usuario]
Los usuarios pueden cambiar sus propias contraseñas en cualquier momento mediante
este comando. El administrador Root puede utilizar el comando para cambiar la
contraseña de cualquier usuario del sistema.
su [opciones] [nombre_usuario]
El comando su hace posible iniciar sesión con un nombre de usuario distinto desde
una sesión en ejecución. Indique un nombre de usuario y su correspondiente contraseña. El usuario Root no necesita indicar la contraseña, ya que está autorizado para
asumir la identidad de cualquier usuario. Si se utiliza el comando sin indicar un
nombre de usuario, se le preguntará la contraseña del Root y pasará a ser el superusuario (Root).
Utilice su - para abrir una shell de inicio de sesión para el otro usuario.
halt [opciones]
Para evitar la pérdida de datos se debe usar siempre este programa para apagar el
sistema.
reboot [opciones]
Tiene la misma función que el comando halt, solo que el sistema se vuelve a iniciar
inmediatamente después.
clear
Este comando limpia el área visible de la consola. No dispone de opciones.
444
27.3.3 Información adicional
Hay muchos más comandos que los mostrados en este capítulo. Para obtener más información acerca de otros comandos o información más detallada, se recomienda la publicación de O'Reilly Linux in a Nutshell (Linux en pocas palabras).
27.4
El editor vi
Para muchas tareas de administración del sistema o de programación, todavía se usan
los editores de texto. En el mundo de Unix, vi destaca como un editor que ofrece funciones de edición muy cómodas y es más ergonómico que muchos editores que admiten
el ratón.
27.4.1 Modos operativos
Básicamente, vi hace uso de tres modos operativos: modo de inserción, modo de comandos y modo extendido. Las teclas tienen distintas funciones según el modo que esté
utilizando. Al iniciar, vi normalmente está definido en el modo de comandos. Lo primero
que tiene que aprender es a cambiar entre los modos:
Del modo de comandos al de inserción
Hay muchas posibilidades entre las que se incluyen A para añadir al final,
insertar u O para añadir una nueva línea debajo de la actual.
I
para
Del modo de inserción al de comandos
Pulse Esc para salir del modo de inserción. vi no puede cerrarse en el de inserción,
por lo que es importante acostumbrarse a pulsar Esc .
Del modo de comandos al extendido
Se puede activar el modo extendido de vi mediante los dos puntos (:). El modo extendido o ex es similar a un editor independiente orientado a las líneas que puede
usarse para varias tareas simples y más complejas.
Del modo extendido al de comandos
Después de ejecutar un comando en el modo extendido, el editor volverá automáticamente al modo de comandos. Si decide no ejecutar ningún comando en el modo
extendido, suprima los dos puntos con . El editor vuelve al modo de comandos.
Cómo trabajar con la shell
445
No es posible cambiar directamente del modo de inserción al extendido sin cambiar
primero al modo de comandos.
vi, como otros editores, tiene su propio procedimiento para finalizar el programa. No
puede finalizar vi mientras está en el modo de inserción. Primero, salga del modo de
inserción pulsando la tecla Esc . Tiene dos opciones:
1.
Salir sin guardar: para finalizar el editor sin guardar los cambios, escriba : –
Q – ! en el modo de comandos. El signo de exclamación de cierre (!) hace que
vi omita los cambios.
2.
Guardar y salir: existen varias posibilidades para guardar los cambios y finalizar
el editor. En el modo de comandos utilice Shift + Z + Z . Para salir del programa
guardando todos los cambios con el modo extendido, introduzca : – W – Q .
En el modo extendido w quiere decir "escribir" y q "salir".
27.4.2 vi en acción
vi se puede utilizar como un editor normal. En el modo de inserción, escriba y suprima
texto con las teclas y Supr . Utilice las teclas de flecha para mover el cursor.
Sin embargo, estas teclas de control con frecuencia causan problemas porque hay muchos
tipos de terminales que usan códigos de teclas especiales. En esta situación es donde
el modo de comandos entra en juego. Pulse Esc para cambiar del modo de inserción al
de comandos. En el modo de comandos, mueva el cursor con H , J , K y L . Estas teclas
tienen las siguientes funciones:
H
Mover un carácter a la izquierda
J
Mover a la línea de abajo
K
Mover a la línea de arriba
L
Mover un carácter a la derecha
446
Los comandos en el modo de comandos permiten distintas variaciones. Para ejecutar
un comando varias veces, introduzca el número de repeticiones antes de introducir el
comando en cuestión. Por ejemplo, introduzca 5 L para mover el cursor cinco caracteres
a la derecha.
La Tabla 27.1, “Comandos simples del editor vi” (p. 447) describe una selección de
comandos importantes, aunque está lejos de ser completa. Encontrará listas más completas en la documentación de la Sección 27.4.3, “Información adicional” (p. 448).
Tabla 27.1
Comandos simples del editor vi
Esc
Cambia al modo de comandos
I
Cambia al modo de inserción (los caracteres aparecen en la posición del cursor actual)
A
Cambia al modo de inserción (los caracteres se insertarán después
de la posición del cursor actual)
Shift
+
A
Cambia al modo de inserción (los caracteres se añadirán al final
de la línea)
Shift
+
R
Cambia al modo de sustitución (sobrescribe el texto antiguo)
R
Sustituye el carácter debajo del cursor
O
Cambia al modo de inserción (se inserta una línea nueva después
de la actual)
Shift
+
O
Cambia al modo de inserción (se inserta una línea nueva antes
de la actual)
Suprime el carácter actual
X
D
–
D
Suprime la línea actual
D
–
W
Suprime hasta el final de la palabra actual
C
–
W
Cambia al modo de inserción (las siguientes entradas de texto
que realice sobrescribirán el resto de la palabra actual)
Cómo trabajar con la shell
447
Deshace el último comando
U
Ctrl
Shift
.
+
+
R
J
Rehace el cambio que se ha deshecho
Une la línea siguiente con la actual
Repite el último comando
27.4.3 Información adicional
vi admite una amplia gama de comandos. Permite el uso de macros, accesos directos,
buffers con nombre y muchas otras funciones útiles. Una descripción más detallada de
las distintas opciones excedería el alcance de este manual. SUSE Linux incluye vim,
una versión mejorada de vi. Hay numerosas fuentes de información sobre esta aplicación:
• vimtutor es un tutor interactivo para vim.
• En vim, introduzca el comando :help para obtener ayuda sobre muchos temas.
• También existe un libro sobre vim disponible en línea en la dirección http://
www.truth.sk/vim/vimbook-OPL.pdf.
• Las páginas Web del proyecto vim en http://www.vim.org presentan todo
tipo de noticias, listas de distribución y otro tipo de documentación.
• También tiene a su disposición un gran número de fuentes sobre vim en Internet:
http://www.selflinux.org/selflinux/html/vim.html, http://
www.linuxgazette.com/node/view/9039 y http://www.apmaths
.uwo.ca/~xli/vim/vim_tutorial.html. Consulte http://
linux-universe.com/HOWTO/Vim-HOWTO/vim-tutorial.html para
obtener más enlaces a tutoriales.
IMPORTANTE: La licencia de VIM
vim es “charityware” lo que quiere decir que el software no cuesta nada pero
los autores animan a apoyar un proyecto sin ánimo de lucro con una contribución monetaria. Este proyecto solicita ayuda para los niños pobres de Uganda.
Hay más información disponible en línea en http://iccf-holland.org/
448
index.html, http://www.vim.org/iccf/ y http://www.iccf.nl/
.
Cómo trabajar con la shell
449
Arranque y configuración de un
sistema Linux
28
El arranque de un sistema Linux incluye diferentes componentes. Este capítulo describe
los principios subyacentes y destaca los componentes incluidos. En este capítulo también
se describen el concepto de niveles de ejecución y la configuración del sistema SUSE
mediante sysconfig.
28.1
Proceso de arranque de Linux
El proceso de arranque de Linux consta de varios pasos cada uno de ellos representado
por otro componente. La siguiente lista resume el proceso de arranque y las funciones
de los principales componentes relacionados.
1.
BIOS Después de haber encendido el equipo, la BIOS inicializa la pantalla
y el teclado y comprueba la memoria principal. Hasta aquí, la máquina no tiene
acceso a ningún medio de almacenamiento masivo. A continuación, la información de la fecha y hora actuales y de los principales periféricos se carga a partir
de los valores CMOS. Una vez reconocido el disco duro principal y su geometría,
el control de sistema pasa de la BIOS al cargador de arranque.
2.
Cargador de arranque El primer sector de datos de 512 bytes físicos se
carga en la memoria principal y el cargador de arranque ubicado al inicio de
este sector prevalece. Los comandos ejecutados por el cargador de arranque determinan la parte restante del proceso de arranque. Por lo tanto, los primeros
512 bytes del primer disco duro se consideran como Registro de inicio principal
(MBR). A continuación, el cargador de arranque traslada el control al sistema
operativo actual, en este caso, el núcleo Linux. Puede encontrar más información
Arranque y configuración de un sistema Linux
451
acerca de GRUB, el cargador de arranque de Linux, en el Capítulo 29, Cargador
de arranque (p. 469).
3.
Núcleo y initramfs Para pasar el control de sistema, el cargador de arranque
carga en la memoria el núcleo y un sistema inicial de archivos basado en RAM
(initramfs). El núcleo puede utilizar directamente el contenido del ramfs inicial.
El ramfs inicial contiene un pequeño ejecutable denominado init que gestiona
el montaje del sistema real de archivos raíz. En las primeras versiones de SUSE
Linux, initrd y linuxrc gestionaban respectivamente estas tareas. Para obtener
más información acerca de initramfs, consulte la Sección 28.1.1, “initramfs”
(p. 452).
4.
init en initramfs Este programa realiza todas las acciones necesarias para el
montaje del sistema de archivos raíz correcto, como por ejemplo, proporcionar
la función núcleo para el sistema de archivos necesario y los controladores de
dispositivos para los controladores de almacenamiento masivo. Una vez encontrado el sistema de archivos raíz, se comprueban los errores y se realiza el montaje. Si este paso se ha realizado correctamente, initramfs se limpia y el programa
init se ejecuta en el sistema de archivos raíz. Para obtener más información
acerca de init, consulte la Sección 28.1.2, “init en initramfs” (p. 453).
5.
init init gestiona el arranque actual del sistema mediante diferentes niveles
que proporcionan varias funciones. init se describe en la Sección 28.2, “Proceso
init” (p. 455).
28.1.1 initramfs
initramfs es un pequeño sistema de archivos que el núcleo puede cargar en un disco
RAM. Proporciona un entorno Linux mínimo que habilita la ejecución de programas
antes de que se monte el sistema de archivos raíz. El entorno Linux mínimo se carga
en la memoria mediante las rutinas de la BIOS y no necesita requisitos específicos de
hardware, únicamente una memoria suficiente. initramfs siempre debe proporcionar un
ejecutable denominado init que ejecuta el programa init actual en el sistema de archivos
raíz para que se lleve a cabo el proceso de arranque.
Antes de que el actual sistema de archivos raíz se pueda montar y de que el actual sistema operativo se pueda iniciar, el núcleo necesita los controladores correspondientes
para acceder al dispositivo en el que se ubica el sistema de archivos raíz. Estos controladores pueden incluir controladores especiales para algunos tipos de unidades de disco
452
duro o controladores de red para acceder al sistema de archivos en red. Los módulos
necesarios para el sistema de archivos raíz puede cargarse mediante init en initramfs.
initramfs está disponible durante todo el proceso de arranque. Esto posibilita la gestión
de todos los eventos hotplug generados durante el arranque.
Si necesita cambiar el hardware (discos duros) en un sistema instalado y este hardware
requiere controladores diferentes en el núcleo durante el arranque, deberá actualizar
initramfs. Esto se realiza de la misma manera que con el predecesor de initramfs, initrd,
es decir, llamando a mkinitrd. Al llamar a mkinitrd sin ningún argumento se crea
un initramfs. Al llamar mkinitrd -R se crea un initrd. En SUSE Linux, los módulos
para cargar se especifican mediante la variable INITRD_MODULES en /etc/
sysconfig/kernel. Después de la instalación, esta variable se establece en su
valor correcto. Los módulos se cargan exactamente en el mismo orden en el que aparecen
en INITRD_MODULES. Esto es especialmente importante si se utilizan varios controladores SCSI, porque, si no, los nombres de los discos duros cambiarían. Estrictamente
hablando, sería suficiente cargar sólo los controladores necesarios para acceder al sistema
de archivos raíz. Sin embargo, todos los controladores SCSI necesarios para la instalación
se cargan mediante initramfs o initrd porque si no, después, la carga podría generar
problemas.
IMPORTANTE: Actualización de initramfs o initrd
El cargador de arranque carga initramfs o initrd de la misma manera que el
núcleo. No es necesario volver a instalar GRUB después de actualizar initramfs
o initrd, puesto que, al arrancar, GRUB busca en el directorio el archivo correcto.
28.1.2 init en initramfs
El propósito principal de init en initramfs es preparar el montaje y el acceso al sistema
de archivos raíz real. En función de la configuración del sistema actual, init es responsable de las tareas siguientes.
Carga de módulos de núcleo
En función de la configuración de hardware, se necesitarán controladores especiales
para acceder a los componentes de hardware de su equipo (el componente más importante es la unidad de disco duro). Para acceder al sistema de archivos raíz final,
el núcleo necesita cargar los controladores del sistema de archivos correctos.
Arranque y configuración de un sistema Linux
453
Gestión de las configuraciones RAID y LVM
Si configura el sistema para almacenar el sistema de archivos raíz en RAID o LVM,
init configura LVM o RAID para habilitar el posterior acceso al sistema de archivos
raíz. Se puede encontrar información acerca de RAID en la Sección 2.3, “Configuración de RAID de software” (p. 69). Se puede encontrar información acerca de
LVM en la Sección 2.2, “Configuración de LVM” (p. 62).
Gestión de la configuración de red
Si ha configurado el sistema para utilizar un sistema de archivos raíz montado en
red (montado mediante NFS), init debe comprobar que los controladores de red
adecuados estén cargados y configurados para permitir el acceso al sistema de archivos raíz.
Cuando se llama a init durante el arranque inicial como parte del proceso de instalación,
sus tareas son diferentes de las mencionadas anteriormente:
Búsqueda del medio de instalación
Al iniciar el proceso de instalación, la máquina carga un núcleo de instalación y un
initrd especial mediante el instalador YaST y a partir del medio de instalación. El
instalador YaST, que se ejecuta en un sistema de archivos RAM, necesita información acerca de la ubicación actual del medio de instalación para acceder a él e instalar
el sistema operativo.
Inicio del reconocimiento de hardware y carga de los módulos de núcleo adecuados
Tal y como se ha mencionado en la Sección 28.1.1, “initramfs” (p. 452), el proceso
de arranque se inicia con un conjunto mínimo de controladores que se pueden utilizar
con casi todas las configuraciones de hardware. init inicia un proceso de escaneo
de hardware inicial que determina el conjunto de controladores adecuado para la
configuración del hardware. A continuación, estos valores se escriben en
INITRD_MODULES en /etc/sysconfig/kernel para permitir que cualquier
proceso de arranque posterior utilice un initrd personalizado. Durante el proceso de
instalación, init carga este conjunto de módulos.
Carga del sistema de instalación o del sistema de rescate
En cuanto se haya reconocido correctamente el hardware y se hayan cargado los
controladores adecuados, init inicia el sistema de rescate o el sistema de instalación,
que contiene el instalador YaST actual.
454
Inicio de YaST
Por último, init inicia YaST, que inicia la instalación del paquete y la configuración
del sistema.
28.2
Proceso init
El programa init es el proceso cuyo número de proceso es el 1 y es responsable de la
inicialización del sistema del modo requerido, asimismo desempeña un papel especial.
Se inicia directamente mediante el núcleo y resiste la señal 9, que generalmente cierra
todos los procesos. Los demás programas se inician directamente mediante init o mediante uno de sus subprocesos.
init se configura en el archivo /etc/inittab en el que están definidos los niveles
de ejecución (consulte la Sección 28.2.1, “Niveles de ejecución” (p. 455)). El archivo
también especifica qué servicios y daemons están disponibles para cada uno de los niveles. En función de las entradas en /etc/inittab, init ejecutará varios guiones.
Por razones de claridad, estos guiones, denominados init scripts, están ubicados en el
directorio /etc/init.d (consulte la Sección 28.2.2, “Guiones init” (p. 458)).
init se encarga de todo el proceso de encendido y apagado del sistema. Desde este
punto de vista, el núcleo se puede considerar un proceso en segundo plano cuya tarea
es mantener el resto de procesos y ajustar el tiempo de la CPU y el acceso de hardware
en función de las peticiones de otros programas.
28.2.1 Niveles de ejecución
En Linux, los niveles de ejecución definen cómo se inicia el sistema y qué servicios
están disponibles en el sistema en funcionamiento. Después del arranque, el sistema se
inicia tal y como se ha explicado en /etc/inittab en la línea initdefault.
Generalmente, esto es 3 o 5. Consulte Tabla 28.1, “Niveles de ejecución disponibles”
(p. 456). Como alternativa, el nivel de ejecución se puede especificar durante el arranque
(por ejemplo, en el indicador de inicio). Los parámetros que el núcleo no evalúa directamente pasan a init.
Arranque y configuración de un sistema Linux
455
Tabla 28.1
Niveles de ejecución disponibles
Nivel de ejecución Descripción
0
Parada del sistema
S
Modo monousuario; en el indicador de inicio, sólo para asignaciones de teclado de EE.UU.
1
Modo monousuario
2
Modo multiusuario local sin red remota (NFS, etc.)
3
Modo multiusuario completo con red
4
No utilizado
5
Modo multiusuario completo con red y gestor de pantalla
X—KDM, GDM o XDM
6
Reinicio del sistema
IMPORTANTE: Evite el nivel de ejecución 2 con una partición /usr montada
a través de NFS
No se debe utilizar el nivel de ejecución 2 si el sistema monta la partición /usr
a través de NFS. El directorio /usr almacena programas esenciales para el
correcto funcionamiento del sistema. Dado que el servicio NFS no está disponible en el nivel de ejecución 2 (modo multiusuario local sin red remota), el
sistema se restringirá de forma drástica.
Para cambiar los niveles de ejecución durante el funcionamiento del sistema, introduzca
init y el número correspondiente como argumento. Únicamente el administrador del
sistema tiene permiso para realizar esta operación. La siguiente lista resume los comandos más importantes del área de niveles de ejecución.
init 1 o shutdown now
El sistema cambia a modo monousuario. Este modo se utiliza para las tareas de administración y mantenimiento del sistema.
456
init 3
Todos los programas y servicios fundamentales (incluida la red) se inician y los
usuarios normales pueden iniciar sesión y trabajar en el sistema sin necesidad de
un entorno gráfico.
init 5
Se habilita el entorno gráfico. Puede ser un escritorio (GNOME o KDE) o cualquier
gestor de ventanas.
init 0 o shutdown -h now
El sistema se detiene.
init 6 o shutdown -r now
El sistema se detiene y, a continuación, se reinicia.
El nivel de ejecución 5 es el nivel por defecto en todas las instalaciones estándar SUSE
Linux. Los usuarios deben iniciar sesión con una interfaz gráfica. El nivel de ejecución
por defecto es 3, X Window System debe configurarse correctamente, tal y como se
describe en el Capítulo 35, Sistema X Window (p. 561), antes de que el nivel de ejecución
pase a 5. A continuación, compruebe el funcionamiento del sistema introduciendo
init 5. Si todo funciona tal y como se espera, puede utilizar YaST para establecer
el nivel de ejecución por defecto en 5.
AVISO: Si se producen errores en /etc/inittab, se puede producir un
arranque incorrecto del sistema
Si /etc/inittab está dañado, puede que el sistema no arranque correctamente. Por lo tanto, tenga mucho cuidado al editar /etc/inittab y conserve
siempre una copia de seguridad de una versión intacta. Si desea reparar los
daños, introduzca init=/bin/sh después del nombre del núcleo en el indicador de inicio para arrancar directamente en una shell. A continuación, habilite el permiso de escritura en el sistema de archivos raíz con el comando
mount -o remount,rw / y sustituya /etc/inittab con la versión de la
copia de seguridad mediante cp. Para evitar errores en el sistema de archivos,
cambie el sistema de archivos raíz a sólo lectura antes de reiniciar mediante
mount -o remount,ro /.
Generalmente, ocurren dos cosas al cambiar los niveles de ejecución. En primer lugar,
se inician los guiones de detención del nivel de ejecución actual al mismo tiempo que
se cierran algunos programas fundamentales para el nivel de ejecución. A continuación,
Arranque y configuración de un sistema Linux
457
se inician los guiones de inicio del nuevo nivel de ejecución. En este paso y en la mayoría de los casos, se inician algunos programas. Por ejemplo, al cambiar del nivel de
ejecución 3 al 5, sucede lo siguiente:
1.
El administrador (root) solicita a init que cambie a un nivel de ejecución diferente introduciendo init 5.
2.
init consulta su propio archivo de configuración (/etc/inittab) y determina
si debe iniciar /etc/init.d/rc con el nuevo nivel de ejecución como parámetro.
3.
Ahora rc llama a todos los guiones de detención del nivel de ejecución actual,
pero en el nivel de ejecución nuevo, sólo a aquéllos para los que no existe un
guión de inicio. En este ejemplo, aparecen todos los guiones ubicados en /etc/
init.d/rc3.d (el nivel de ejecución antiguo era 3) y que comiencen por la
letra K. El número que sigue a la letra K especifica el orden de inicio, puesto que
es necesario tener en cuenta algunas dependencias.
4.
Los últimos elementos que se inician son los guiones de inicio del nivel de ejecución nuevo. En este ejemplo, éstos se ubican en /etc/init.d/rc5.d y
comienzan con S. Aquí, también se aplica el mismo procedimiento para el orden
en el que se inician.
Al cambiar al mismo nivel de ejecución que el actual, init sólo comprueba si existen
cambios en /etc/inittab y lleva a cabo los pasos adecuados, por ejemplo, para
iniciar un getty en otra interfaz.
28.2.2 Guiones init
Existen dos tipos de guiones en /etc/init.d:
Guiones ejecutados directamente por init
Únicamente durante el proceso de arranque o si el sistema se ha apagado de forma
inmediata (debido a un fallo en la alimentación o si el usuario ha pulsado Ctrl + Alt
+ Del ). La ejecución de estos guiones se describe en /etc/inittab.
458
Guiones ejecutados indirectamente por init
Se ejecutan al cambiar el nivel de ejecución y siempre llaman al guión maestro
/etc/init.d/rc, que garantiza el orden correcto de los guiones correspondientes.
Todos los guiones se ubican en /etc/init.d. En esta ubicación también se encuentran los guiones de cambio del nivel de ejecución a los que se llama mediante enlaces
simbólicos desde un subdirectorio (/etc/init.d/rc0.d a /etc/init.d/rc6
.d). Esto se debe a razones de claridad y evita la creación de guiones duplicados al
utilizarlos en varios niveles de ejecución. Puesto que cada guión se puede ejecutar como
guión de inicio o de detención, estos guiones deben poder admitir los parámetros de
start y stop. Los guiones también admiten las opciones restart (reiniciar),
actualizar, force-reload (forzar-actualizar) y estado. Estas opciones se
explican en la Tabla 28.2, “Posibles opciones del guión init” (p. 459). Los guiones ejecutados directamente mediante init no disponen de estos enlaces. Cuando sea necesario,
se ejecutan de forma independiente desde el nivel de ejecución.
Tabla 28.2
Posibles opciones del guión init
Opción
Descripción
start (iniciar)
Inicia el servicio.
stop (detener)
Detiene el servicio.
restart (reiniciar)
Si el servicio está en funcionamiento, lo detiene y,
a continuación, lo reinicia. Si no está en funcionamiento, lo inicia.
actualizar
Actualiza la configuración sin detener ni reiniciar el
servicio.
force-reload
(forzar-actualizar)
Actualiza la configuración si el servicio es compatible con esta función. De lo contrario, realiza lo mismo que si la opción fuese restart (reiniciar).
estado
Muestra el estado actual del servicio.
Arranque y configuración de un sistema Linux
459
Los enlaces de cada subdirectorio específico del nivel de ejecución permiten asociar
guiones a diferentes niveles de ejecución. Al instalar o desinstalar los paquetes, estos
enlaces se agregan y se eliminan mediante el insserv del programa (o utilizando /usr/
lib/lsb/install_initd, guión que ejecuta este programa). Para obtener más
información, consulte la página Man de insserv(8).
A continuación, se ofrece una introducción corta de los guiones de arranque y detención
ejecutados en primer o último lugar, así como una explicación del guión de mantenimiento.
boot
Ejecutado al iniciar el sistema directamente mediante init. Es independiente del nivel
de ejecución seleccionado y sólo se ejecuta una vez. Aquí, se montan los sistemas
de archivos proc y pts y se activa blogd (daemon de inicio de sesión de arranque).
Si se arranca el sistema por primera vez después de una actualización o una instalación, se inicia la configuración del sistema inicial.
El daemon blogd es un servicio iniciado por boot y rc antes que cualquier otro. Se
detiene una vez completadas las acciones originadas por los guiones anteriores (por
ejemplo, ejecución de varios guiones). blogd escribe cualquier salida de pantalla en
el archivo de registro /var/log/boot.msg, pero sólo si /var está montado
en lectura-escritura. De lo contrario, blogd mantiene en el búfer todos los datos de
la pantalla hasta que /var esté disponible. Puede obtener más información acerca
de blogd en la página Man de blogd(8).
El guión boot también se encarga del inicio de todos los guiones en /etc/init
.d/boot.d con un nombre que empieza por S. Los sistemas de archivos se comprueban y los dispositivos loop se configuran si fuese necesario. También se establece la hora del sistema. Si se produce un error durante la comprobación y la reparación automática del sistema de archivos, el gestor del sistema puede intervenir
después de haber introducido la contraseña root. El último guión ejecutado es el
boot.local.
boot.local
Introduzca aquí los comandos adicionales para ejecutar durante el arranque antes
de cambiar a un nivel de ejecución. Se puede comparar a AUTOEXEC.BAT en sistemas DOS.
460
boot.setup
Este guión se ejecuta al cambiar del modo monousuario a cualquier otro nivel de
ejecución y es responsable de varios ajustes básicos, como la distribución del teclado
y la inicialización de las consolas virtuales.
halt
Este guión sólo se ejecuta durante el cambio al nivel de ejecución 0 o 6. Se ejecuta
como halt o como reboot. El apagado o la reinicialización del sistema dependen
de como se ha ejecutado halt.
rc
Este guión ejecuta los guiones adecuados del nivel de ejecución actual e inicia los
guiones del nuevo nivel de ejecución seleccionado.
Puede crear sus propios guiones e integrarlos fácilmente en el esquema descrito anteriormente. Si desea obtener instrucciones sobre el formato, el nombre y la organización
de guiones personalizados, consulte las especificaciones de LSB y las páginas Man de
init, init.d e insserv. También puede consultar las páginas Man de startproc
y killproc.
AVISO: Los guiones init incorrectos pueden detener el sistema.
Los guiones init incorrectos pueden bloquear la máquina. Edite esos guiones
con cuidado y, si es posible, realice una comprobación exhaustiva en el entorno
multiusuario. Puede encontrar información útil acerca de los guiones init en
la Sección 28.2.1, “Niveles de ejecución” (p. 455).
Para crear un guión init personalizado para un determinado programa o servicio, utilice
como plantilla el archivo /etc/init.d/skeleton. Guarde una copia de este archivo con un nombre nuevo y edite el programa y los nombres de archivos, las vías y
otros detalles correspondientes si fuese necesario. Puede que necesite mejorar el guión
con código propio, por lo que las acciones correctas se originan mediante el procedimiento init.
El bloque INIT INFO de la parte superior es un componente necesario del guión y
debe editarse. Consulte el Ejemplo 28.1, “Bloque INIT INFO mínimo” (p. 462).
Arranque y configuración de un sistema Linux
461
Ejemplo 28.1
Bloque INIT INFO mínimo
### BEGIN INIT INFO
# Provides:
# Required-Start:
# Required-Stop:
# Default-Start:
# Default-Stop:
# Description:
### END INIT INFO
FOO
$syslog $remote_fs
$syslog $remote_fs
3 5
0 1 2 6
Start FOO to allow XY and provide YZ
En la primera línea del bloque INFO, después de Provides:, especifique el nombre
del programa o servicio controlado por el guión init. En las líneas Required-Start:
y Required-Stop:, especifique todos los servicios que deban iniciarse o detenerse
antes de que se inicie o se detenga el propio servicio. Esta información se utilizará más
adelante para generar la numeración de los nombres de guiones, tal y como aparecen
en los directorios del nivel de ejecución. Después de Default-Start: y
Default-Stop:, especifique los niveles de ejecución en los que el servicio debería
iniciarse o detenerse automáticamente. Por último, en Description:, proporcione
una descripción corta del servicio en cuestión.
Para crear los enlaces desde los directorios de nivel de ejecución (/etc/init.d/rc
?.d/) a los guiones correspondientes en /etc/init.d/, introduzca el comando
insserv new-script-name. El programa insserv evalúa el encabezado INIT
INFO para crear los enlaces necesarios para iniciar y detener guiones en los directorios
de nivel de ejecución (/etc/init.d/rc?.d/). El programa también se encarga
del orden de inicio y detención correcto de cada nivel de ejecución al incluir los números
necesarios en los nombres de los enlaces. Si prefiere una herramienta gráfica para crear
dichos enlaces, utilice el editor de niveles de ejecución proporcionado por YaST, tal y
como se describe en la Sección 28.2.3, “Configuración de los servicios de sistema (nivel
de ejecución) mediante YaST” (p. 463).
Si un guión que ya aparece en /etc/init.d/ debe integrarse en el esquema de nivel
de ejecución existente, cree los enlaces en los directorios de nivel de ejecución mediante
insserv o habilitando el correspondiente servicio en el editor de niveles de ejecución
de YaST. Los cambios que haya realizado se aplicarán durante el siguiente arranque;
el nuevo servicio se iniciará automáticamente.
No establezca estos enlaces de forma manual. Si algo no funciona en el bloque INFO,
surgirán problemas cuando se ejecute insserv en otro servicio.
462
28.2.3 Configuración de los servicios de
sistema (nivel de ejecución)
mediante YaST
Después de iniciar el módulo YaST mediante YaST → Sistema → Servicios del sistema
(niveles de ejecución), éste muestra una descripción general que enumera todos los
servicios disponibles y el estado actual de cada servicio (inhabilitado o habilitado).
Decida si desea utilizar el módulo en Modo simple o en Modo avanzado. El Modo
simple por defecto debe ser suficiente para la mayoría de finalidades. La columna de
la izquierda muestra el nombre del servicio, la columna del centro indica su estado actual
y la de la derecha proporciona una descripción corta. Para el servicio seleccionado, se
proporciona una descripción detallada en la parte inferior de la ventana. Para habilitar
un servicio, selecciónelo en la tabla y, a continuación, elija Habilitar. Se aplican los
mismos pasos para inhabilitar un servicio.
Figura 28.1
Servicios de sistema (nivel de ejecución)
Para llevar a cabo un control detallado de los niveles de ejecución en los que se inicia
o se detiene el servicio, o para cambiar el nivel de ejecución por defecto, primero seleccione Modo avanzado. En la parte superior aparecerá el nivel de ejecución por defecto
en curso o “initdefault” (el nivel de ejecución en el que se arranca por defecto el sistema).
Arranque y configuración de un sistema Linux
463
Generalmente, el nivel de ejecución por defecto de un sistema SUSE Linux es el 5
(modo multiusuario completo con red y X). Otra opción podría ser el nivel de ejecución
3 (modo multiusuario completo con red).
El cuadro de diálogo YaST permite seleccionar uno de los niveles de ejecución (tal y
como aparecen en la lista de la Tabla 28.1, “Niveles de ejecución disponibles” (p. 456))
como el nuevo nivel por defecto. Además, utiliza la tabla de esta ventana para habilitar
o inhabilitar servicios y daemons individuales. La tabla enumera los servicios y daemons
disponibles, muestra si están actualmente habilitados en el sistema y, si es así, en qué
niveles de ejecución. Después de haber seleccionado una de las filas con el ratón, haga
clic en las casillas de verificación que representan los niveles de ejecución (B, 0, 1, 2,
3, 5, 6 y S) para definir los niveles en los que el servicio o daemon seleccionado debería
ejecutarse. El nivel de ejecución 4 no está inicialmente definido para permitir la creación
de un nivel personalizado. A continuación, en la descripción general de la tabla, se
proporciona una descripción corta del actual servicio o daemon seleccionado.
Mediante Start (Iniciar), Detener o Actualizar, decida si se debe activar un servicio.
Refrescar estado comprueba el estado actual. Set or Reset (Ajustar o Reajustar) le permite seleccionar si desea aplicar los cambios al sistema o restaurar los ajustes existentes
antes de iniciar el editor de nivel de ejecución. Al seleccionar Finalizar se guardarán
los ajustes modificados en el disco.
AVISO: Los ajustes de nivel de ejecución incorrectos pueden dañar el
sistema.
Los ajustes de nivel de ejecución incorrectos pueden inhabilitar el sistema.
Antes de aplicar los cambios, asegúrese de que conoce las consecuencias.
28.3
Configuración del sistema
mediante /etc/sysconfig
La configuración principal de SUSE Linux está controlada mediante los archivos de
configuración de /etc/sysconfig. Sólo los guiones correspondientes pueden leer
los archivos individuales de /etc/sysconfig. Esto garantiza que la configuración
de la red, por ejemplo, sólo necesite ser analizada por los guiones relacionados a la red.
Otros archivos de configuración de sistema se generan en función de la configuración
de /etc/sysconfig. SuSEconfig lleva a cabo esta tarea. Por ejemplo, si modifica
464
la configuración de red, SuSEconfig también podrá realizar cambios en el archivo
/etc/host.conf, puesto que es uno de los archivos correspondientes para la configuración de la red. Este concepto le permite realizar cambios básicos en la configuración
sin necesidad de reiniciar el sistema.
Existen dos modos de editar la configuración del sistema. Mediante el editor YaST
sysconfig o editando los archivos de configuración de forma manual.
28.3.1 Cambio de la configuración del
sistema mediante el editor YaST
sysconfig
El editor YaST sysconfig proporciona una interfaz de la configuración del sistema fácil
de utilizar. No son necesarios conocimientos previos de la ubicación actual de la variable
de configuración que necesite modificar, puede utilizar la función de búsqueda incorporada de este módulo, cambiar el valor de la variable de configuración y dejar que
YaST se encargue de aplicar los cambios al actualizar las configuraciones que dependen
de los valores establecidos en sysconfig y al reinicializar los servicios.
AVISO: La modificación de archivos /etc/sysconfig/* puede dañar la
instalación
No modifique los archivos /etc/sysconfig si no dispone de la experiencia
ni de los conocimientos necesarios. Puede provocar daños considerables en el
sistema. Los archivos de /etc/sysconfig incluyen un comentario corto
para cada variable que explica el efecto que ésta provoca.
Arranque y configuración de un sistema Linux
465
Figura 28.2
Configuración del sistema mediante el editor sysconfig
El cuadro de diálogo YaST sysconfig está dividido en tres partes. La parte izquierda
del cuadro de dialogo muestra una vista de árbol de todas las variables de configuración.
Al seleccionar una variable, la parte de la derecha muestra la selección actual y la configuración actual de la variable. Debajo, una tercera ventana muestra una descripción
corta del propósito de la variable, de los valores posibles, del valor por defecto y del
archivo de configuración actual que origina la variable. El cuadro de diálogo también
muestra información acerca de qué guión de configuración se ejecuta después de cambiar
la variable y qué nuevo servicio se inicia como resultado del cambio. YaST le solicita
que confirme los cambios y le informa de los guiones que se ejecutarán después de salir
del cuadro de dialogo al seleccionar Finalizar. También selecciona los servicios y
guiones que se van a omitir de momento, por lo que se iniciarán más tarde. YaST aplica
todos los cambios de forma automática y reinicia cualquier servicio relacionado para
que los cambios surtan efecto.
28.3.2 Cambio de la configuración del
sistema de forma manual
Para cambiar la configuración del sistema de forma manual, siga estos pasos
466
1 Convierta el sistema en root.
2 Ponga el sistema en modo monousuario (nivel de ejecución 1) mediante init
1.
3 Cambie los archivos de configuración como desee mediante un editor de su
elección.
Si no utiliza YaST para cambiar los archivos de configuración en /etc/
sysconfig, asegúrese de que los valores de variables vacías están representados
por comillas (KEYTABLE="") y que los valores con espacios incluidos en estas
variables están entre comillas. Los valores que se componen de una sola palabra
no necesitan comillas.
4 Ejecute SuSEconfig para asegurarse de que se realizan los cambios.
5 Vuelva a pasar el sistema al nivel de ejecución anterior mediante un comando
de tipo init default_runlevel. Sustituya default_runlevel por
el nivel de ejecución por defecto del sistema. Seleccione 5 si desea volver al
modo multiusuario completo con red y X o elija 3 si prefiere trabajar en modo
multiusuario con red.
Este procedimiento es importante al cambiar la configuración de systemwide, así como
la configuración de red. Los pequeños cambios no requieren que se cambie el sistema
al modo monousuario, pero puede hacerlo si desea asegurarse de que todos los programas
relacionados se reinicien correctamente.
SUGERENCIA: Establecimiento de la configuración automática del sistema
Para inhabilitar la configuración automática del sistema mediante SuSEconfig,
establezca la variable ENABLE_SUSECONFIG de /etc/sysconfig/
suseconfig en no. No inhabilite SuSEconfig si desea utilizar el soporte de
instalación SUSE. También es posible inhabilitar la configuración automática
de forma parcial.
Arranque y configuración de un sistema Linux
467
29
Cargador de arranque
Este capítulo describe cómo configurar GRUB (Gran gestor de arranque unificado), el
cargador de arranque utilizado en SUSE Linux. Hay un módulo YaST especial disponible
para llevar a cabo toda la configuración. Si no está familiarizado con el arranque en
Linux, lea las siguientes secciones para adquirir información general. Este capítulo
también describe algunos de los problemas que se encuentran frecuentemente al arrancar
con GRUB y sus soluciones.
Este capítulo se centra en la gestión del arranque y en la configuración del cargador de
arranque GRUB. El procedimiento de arranque en su totalidad se explica en el Capítulo 28, Arranque y configuración de un sistema Linux (p. 451). Un cargador de arranque
representa la interfaz entre la máquina (BIOS) y el sistema operativo (SUSE Linux).
La configuración del cargador de arranque tiene un impacto directo en el inicio del
sistema operativo.
Los siguientes términos aparecen con frecuencia en este capítulo y pueden necesitar
alguna explicación:
Registro de arranque principal
La estructura del MBR está definida por una convención independiente del sistema
operativo. Los primeros 446 bytes se reservan para el código del programa. Normalmente, contienen el programa del cargador de arranque, en este caso, GRUB. Los
siguientes 64 bytes proporcionan espacio para una tabla de partición de hasta cuatro
entradas (consulte la “Tipos de partición” (Capítulo 1, Instalación mediante YaST,
↑Inicio)). La tabla de partición contiene información acerca del particionamiento
del disco duro y del tipo de sistema de archivos. El sistema operativo necesita esta
tabla para gestionar el disco duro. Los dos últimos bytes del MBR deben contener
Cargador de arranque
469
un “número mágico” estático (AA55). El BIOS y todos los sistemas operativos de
los equipos consideran inválido el MBR que contenga un valor diferente.
Sectores de arranque
Los sectores de arranque son los primeros sectores de las particiones del disco duro,
con la excepción de la partición extendida, que sirve sólo de “contenedor” para las
demás particiones. Estos sectores de arranque tienen 512 bytes de espacio para el
código utilizado para arrancar un sistema operativo instalado en su partición respectiva. Esto se aplica a los sectores de arranque de particiones formateadas de DOS,
Windows y OS/2, que también contienen algunos datos básicos importantes del
sistema de archivos. Por el contrario, los sectores de arranque de las particiones de
Linux están al principio vacías después de configurar un sistema de archivos. Por
tanto, una partición de Linux no se arranca por sí misma, incluso aunque contenga
un núcleo y un sistema válido de archivos raíz. Un sector de arranque con código
válido para arrancar el sistema MBR tiene el mismo número mágico que el MBR
en sus últimos dos bytes (AA55).
29.1
Gestión de arranque
En el caso más sencillo (si sólo hay instalado un sistema operativo en el equipo), la
gestión de arranque se lleva a cabo como se describe anteriormente. Si en un equipo
hay instalados varios sistemas operativos, estarán disponibles las siguientes opciones:
Arranque de sistemas adicionales desde medios externos
Uno de los sistemas operativos se arranca desde el disco duro. Los demás sistemas
operativos se arrancan mediante un gestor de arranque instalado en un medio externo
(disquete, CD o medio de almacenamiento USB).
Instalación de un gestor de arranque en el MBR
Un gestor de arranque permite la instalación simultánea y el uso alterno de varios
sistemas en un equipo. Los usuarios pueden seleccionar el sistema por arrancar durante el proceso de arranque. Para cambiar a otro sistema, se debe volver a arrancar
el equipo. Esto sólo es posible si el gestor de arranque seleccionado es compatible
con los sistemas operativos instalados. GRUB, gestor de arranque utilizado en SUSE
Linux.
470
29.2
Selección de un cargador de
arranque
Por defecto, en SUSE Linux, se utiliza el cargador de arranque GRUB. Sin embargo,
en algunos casos y para constelaciones especiales de hardware y software, LILO puede
ser más adecuado. Si actualiza una versión más antigua de SUSE Linux que utiliza LILO,
se instala LILO.
La información relativa a la instalación y a la configuración de LILO se puede buscar
en la base de datos de asistencia mediante la palabra LILO y en /usr/share/doc/
packages/lilo.
29.3
Arranque con GRUB
GRUB consta de dos archivos denominados stage1 y stage2. stage1 consta de 512 bytes
y se escribe en el MBR o en el sector de arranque de una partición de disco duro o de
un disquete. Posteriormente, se carga stage2. Este archivo contiene el código real del
programa. La única tarea del primer archivo es cargar el segundo archivo del cargador
de arranque.
stage2 es capaz de acceder a los sistemas de archivos. Actualmente, son compatibles
Ext2, Ext3, ReiserFS, Minix y el sistema de archivos DOS FAT utilizado por Windows.
Hasta cierto punto, también son compatibles JFS, XFS y UFS y FFS utilizados por los
sistemas BSD. A partir de la versión 0.95, GRUB también puede arrancar desde un CD
o un DVD que contenga un sistema de archivos que cumpla la norma ISO 9660 de
acuerdo con las especificaciones de “El Torito”. Incluso antes de arrancar el sistema,
GRUB puede acceder a los sistemas de archivos de dispositivos de disco de BIOS
(disquetes o discos duros, unidades de CD y unidades de DVD detectados por el BIOS).
Por tanto, los cambios realizados en el archivo de configuración de GRUB (menu.lst)
no exigen que se vuelva a instalar el gestor de arranque. Cuando se arranca el sistema,
GRUB vuelve a cargar el archivo del menú con las vías válidas y los datos de partición
del núcleo o del disco RAM inicial (initrd) y ubica estos archivos.
La configuración real de GRUB está basada en tres archivos que se describen a continuación:
Cargador de arranque
471
/boot/grub/menu.lst
Este archivo contiene toda la información acerca de las particiones o de los sistemas
operativos que se pueden arrancar con GRUB. Sin esta información, el control del
sistema no se puede pasar al sistema operativo.
/boot/grub/device.map
Este archivo traduce los nombres de los dispositivos desde GRUB y la notación del
BIOS a nombres de dispositivos Linux.
/etc/grub.conf
Este archivo contiene los parámetros y las opciones que necesita GRUB para instalar
el cargador de arranque de forma correcta.
GRUB se puede controlar de varias maneras. Las entradas de arranque a partir de una
configuración existente se pueden seleccionar en el menú gráfico (pantalla de inicio).
La configuración se carga desde el archivo menu.lst.
En GRUB, se pueden cambiar todos los parámetros de arranque antes de arrancar. Por
ejemplo, los errores cometidos al editar el archivo del menú se pueden corregir de este
modo. Los comandos de arranque se pueden introducir también mediante un tipo de
indicador de entrada (consulte la “Edición de entradas de menú durante el procedimiento
de arranque” (p. 477)). GRUB ofrece la posibilidad de determinar la ubicación del núcleo
y del initrd antes de arrancar. De este modo, puede arrancar incluso un sistema
operativo instalado para el que no existe ninguna entrada en la configuración del cargador
de arranque.
El shell de GRUB proporciona una emulación de GRUB en el sistema instalado. Se
puede utilizar para instalar GRUB o para probar la configuración nueva antes de aplicarla. Consulte la Sección 29.3.4, “Shell de GRUB” (p. 480).
29.3.1 Menú de arranque de GRUB
La pantalla gráfica de inicio con el menú de arranque está basada en el archivo de
configuración de GRUB /boot/grub/menu.lst, que contiene toda la información
acerca de las particiones o de los sistemas operativos que se pueden arrancar mediante
el menú.
472
Siempre que se arranca el sistema, GRUB carga el archivo de menú a partir del sistema
de archivos. Por este motivo, no es necesario volver a instalar GRUB después de efectuar
cada cambio realizado al archivo. Utilice el cargador de arranque de YaST para modificar la configuración de GRUB, como se describe en la Sección 29.4, “Configuración
del Cargador de arranque con YaST” (p. 482).
El archivo de menú contiene comandos. La sintaxis es muy sencilla. Todas las líneas
contienen un comando seguido de parámetros opcionales separados por espacios, como
en el shell. Por razones históricas, algunos comandos permiten un = delante del primer
parámetro. Los comentarios se introducen con una almohadilla (#).
Para identificar los elementos del menú en la descripción general del menú, especifique
un title para cada entrada. El texto (incluidos los espacios) que sigue a la palabra
title se muestra como opción seleccionable en el menú. Todos los comandos hasta
el siguiente title se ejecutan cuando se selecciona este elemento del menú.
El caso más sencillo es el redireccionamiento a los cargadores de arranque de otros
sistemas operativos. El comando es chainloader y el argumento suele ser el bloque
de arranque de otra partición en la notación de bloque de GRUB. Por ejemplo:
chainloader (hd0,3)+1
Los nombres de los dispositivos de GRUB se explican en la “Convenciones de nomenclatura para los discos duros y las particiones” (p. 474). El ejemplo anterior especifica
el primer bloque de la cuarta partición del primer disco duro.
Utilice el comando kernel para especificar una imagen de núcleo. El primer argumento
es la vía a la imagen del núcleo de una partición. Los demás argumentos se pasan al
núcleo de la línea de comandos.
Si el núcleo no tiene controladores incorporados para acceder a la partición raíz, initrd
se debe especificar con un comando de GRUB diferente cuyo único argumento es la
vía al archivo initrd. Como la dirección de carga del initrd se escribe en la imagen
cargada del núcleo, el comando initrd debe seguir inmediatamente al comando
kernel.
El comando root simplifica la especificación del núcleo y de los archivos initrid. El
único argumento de root es un dispositivo GRUB o una partición de un dispositivo
GRUB. Este dispositivo se utiliza para todos los núcleos, initrd y para las demás
vías de archivos para las que no se especifica ningún dispositivo de forma explícita
Cargador de arranque
473
hasta el siguiente comando root. Este comando no se utiliza en el archivo menu.lst
generado durante la instalación. Simplemente facilita la edición manual.
El comando boot está implícito al final de todas las entradas de menú, de modo que
no es necesario escribirlo en el archivo del menú. Sin embargo, si utiliza GRUB de
forma interactiva para arrancar, debe introducir el comando boot al final. El comando
no tiene argumentos. Sólo arranca la imagen cargada del núcleo o el cargador de cadena
especificado.
Después de escribir todas las entradas de menú, defina una de ellas como entrada
default (por defecto). De lo contrario, se utilizará la primera (entrada 0). También
es posible especificar un tiempo límite (time-out) en segundos después del cual la entrada por defecto debe arrancar. Normalmente, las entradas de menú van precedidas de
timeout y default. En la “Archivo de menú de ejemplo” (p. 475) se describe un
archivo de ejemplo.
Convenciones de nomenclatura para los discos duros
y las particiones
Las convenciones de nomenclatura que utiliza GRUB para los discos duros y las particiones son diferentes de las que se utilizan para los dispositivos normales de Linux. En
GRUB, la numeración de las particiones empieza por cero. Por tanto, (hd0,0) es la
primera partición del primer disco duro. En un equipo de escritorio estándar con un
disco duro conectado como maestro principal, el nombre del dispositivo Linux correspondiente es /dev/hda1.
A las cuatro particiones primarias posibles se les asignan los números de partición de
0 a 3. Las particiones lógicas se numeran a partir de 4:
(hd0,0)
(hd0,1)
(hd0,2)
(hd0,3)
(hd0,4)
(hd0,5)
first primary partition of the first hard disk
second primary partition
third primary partition
fourth primary partition (usually an extended partition)
first logical partition
second logical partition
GRUB no distingue entre dispositivos IDE, SCSI y RAID. Todos los discos duros reconocidos por el BIOS o por otros controladores se numeran de acuerdo con la secuencia
de arranque predefinida en el BIOS.
474
Desafortunadamente, GRUB no es capaz de asignar nombres de dispositivos Linux a
nombres de dispositivos BIOS de forma exacta. Genera esta asignación con la ayuda
de un algoritmo y la guarda en el archivo device.map, que se puede editar en caso
de ser necesario. La información relativa al archivo device.map está disponible en
la Sección 29.3.2, “Archivo device.map” (p. 479).
Una vía completa de GRUB consta de un nombre de dispositivo escrito entre parántesis
y la vía del archivo en el sistema de archivos de la partición especificada. La vía comienza con una barra inclinada. Por ejemplo, el núcleo arrancable se podría especificar del
siguiente modo en un sistema con un único disco duro IDE que contenga Linux en la
primera partición:
(hd0,0)/boot/vmlinuz
Archivo de menú de ejemplo
El siguiente ejemplo muestra la estructura de un archivo de menú GRUB. La instalación
de ejemplo consta de una partición de arranque Linux en /dev/hda5, una partición
raíz en /dev/hda7 y una instalación de Windows en /dev/hda1.
gfxmenu (hd0,4)/message
color white/blue black/light-gray
default 0
timeout 8
title linux
kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791
initrd (hd0,4)/initrd
title windows
chainloader(hd0,0)+1
title floppy
chainloader(fd0)+1
title failsafe
kernel (hd0,4)/vmlinuz.shipped root=/dev/hda7 ide=nodma \
apm=off acpi=off vga=normal nosmp maxcpus=0 3
initrd (hd0,4)/initrd.shipped
El primer bloque define la configuración de la pantalla de inicio:
gfxmenu (hd0,4)/message
La imagen de fondo message se ubica en /dev/hda5.
Cargador de arranque
475
color white/blue black/light-gray
Asignación de colores: blanco (primer plano), azul (fondo), negro (selección) y gris
claro (fondo de la selección). La asignación de colores no tiene ningún efecto en la
pantalla de inicio, sólo en el menú de GRUB personalizable al que es posible acceder
saliendo de la pantalla de inicio con Esc .
default 0
La primera entrada del menú title linux es la que se arranca por defecto.
timeout 8
Si durante ocho segundos no se produce ninguna entrada por parte del usuario,
GRUB arranca de forma automática la entrada por defecto. Para desactivar el
arranque automático, elimine la línea timeout. Si define timeout 0, GRUB
arranca la entrada por defecto de forma inmediata.
El segundo y mayor bloque enumera los distintos sistemas operativos que se pueden
arrancar. Las secciones de cada sistema operativo se introducen por title.
• La primera entrada (title linux) se encarga de arrancar SUSE Linux. El núcleo
(vmlinuz) se ubica en la primera partición lógica (partición de arranque) del primer
disco duro. Los parámetros del núcleo, como la partición raíz y el modo VGA, se
añaden aquí. La partición raíz se especifica según la convención de nomenclatura
de Linux (/dev/hda7/), porque esta información se lee por el núcleo y no tiene
nada que ver con GRUB. El initrd también se ubica en la primera partición lógica del primer disco duro.
• La segunda entrada se encarga de cargar Windows. Windows se arranca desde la
primera partición del primer disco duro (hd0,0). El comando chainloader
+1 hace que GRUB lea y ejecute el primer sector de la partición especificada.
• La siguiente entrada habilita el arranque desde el disquete sin modificar la configuración del BIOS.
• La opción de arranque failsafe arranca Linux con una selección de parámetros
de núcleo que habilita Linux para arrancar incluso en sistemas que presenten problemas.
El archivo del menú se puede cambiar siempre que sea necesario. Durante el siguiente
arranque, GRUB utilizará la configuración modificada. Edite el archivo de forma permanente mediante YaST o mediante el editor que prefiera. Como alternativa, realice
476
cambios temporales de forma interactiva mediante la función de edición de GRUB.
Consulte la “Edición de entradas de menú durante el procedimiento de arranque” (p. 477).
Edición de entradas de menú durante el
procedimiento de arranque
En el menú gráfico de arranque de GRUB, seleccione el sistema operativo por arrancar
con las teclas de flechas. Si selecciona un sistema Linux, puede introducir parámetros
de arranque adicionales en el indicador de inicio. Para editar entradas de menú por separado directamente, pulse Esc para salir de la pantalla de inicio y, a continuación,
pulse E . Los cambios realizados de este modo sólo se aplican al procedimiento de
arranque actual, no se adoptan de forma permanente.
IMPORTANTE: Distribución del teclado durante el procedimiento de
arranque
La distribución del teclado americano es la única disponible al arrancar.
Después de activar el modo de edición, utilice las teclas de flecha para seleccionar la
entrada del menú cuya configuración se va a editar. Para que la configuración sea editable, pulse E una vez más. De este modo, edite las particiones incorrectas o las especificaciones de vías antes de que tengan un efecto negativo en el proceso de arranque.
Pulse Intro para salir del modo de edición y volver al menú. A continuación, pulse B
para arrancar esta entrada. Las acciones que se pueden llevar a cabo a continuación se
muestran en el texto de ayuda que aparece al final.
Para introducir las opciones de arranque cambiadas de forma permanente y pasarlas al
núcleo, abra menu.lst como usuario root y añada los parámetros respectivos del
núcleo a la línea existente, separados por espacios:
title linux
kernel (hd0,0)/vmlinuz root=/dev/hda3 additional parameter
initrd (hd0,0)/initrd
La siguiente vez que se arranca el sistema, GRUB adopta de forma automática los parámetros nuevos. Como alternativa, este cambio también se puede realizar con el módulo del cargador de arranque YaST. Añada los parámetros nuevos a la línea existente,
separados por espacios.
Cargador de arranque
477
Utilización de comodines para seleccionar el núcleo
de arranque
Sobre todo al desarrollar o utilizar núcleos personalizados, debe cambiar las entradas
de menu.lst o editar la línea de comandos para reflejar el núcleo actual y los nombres
de archivo initrd. Para simplificar este procedimiento, utilice comodines para actualizar
la lista de núcleos de GRUB de forma dinámica. Todas las imágenes del núcleo que
coinciden con un patrón específico se añaden de forma automática a la lista de imágenes
que se van a arrancar. Tenga en cuenta que no hay compatibilidad con esta función.
Active la opción de caracteres comodín añadiendo una entrada de menú a menu.lst.
Para que sea útil, todas las imágenes de núcleo e initrd deben tener un nombre de base
común y un identificador que coincida con el initrd asociado. Tenga en cuenta la siguiente configuración:
initrd-default
initrd-test
vmlinuz-default
vmlinuz-test
En este caso, debe añadir las dos imágenes de arranque a una configuración GRUB.
Para obtener las entradas de menú linux-default y linux-test, se necesitaría
la siguiente entrada menu.lst:
title linux-*
wildcard (hd0,4)/vmlinuz-*
kernel (hd0,4)/vmlinuz-* root=/dev/hda7 vga=791
initrd (hd0,4)/initrd-*
En este ejemplo, GRUB busca la partición (hd0,4) para las entradas que corresponden
con el comodín. Estas entradas se utilizan para generar nuevas entradas de menú de
GRUB. En el ejemplo anterior, GRUB se comporta como si las siguientes entradas
existieran en menu.lst:
title linux-default
wildcard (hd0,4)/vmlinuz-default
kernel (hd0,4)/vmlinuz-default root=/dev/hda7 vga=791
initrd (hd0,4)/initrd-default
title linux-test
wildcard (hd0,4)/vmlinuz-test
kernel (hd0,4)/vmlinuz-test root=/dev/hda7 vga=791
initrd (hd0,4)/initrd-test
478
Si los nombres de archivo no se utilizan de forma coherente con esta configuración o
falta uno de los archivos ampliados, como una imagen initrd, esta configuración puede
ocasionar problemas.
29.3.2 Archivo device.map
El archivo device.map asigna nombres de dispositivos de GRUB a los nombres de
dispositivos Linux. En un sistema mixto que contenga discos duros IDE y SCSI, GRUB
debe tratar de determinar la secuencia de arranque mediante un procedimiento especial
porque GRUB no tiene acceso a la información del BIOS en la secuencia de arranque.
GRUB guarda el resultado de este análisis en el archivo /boot/grub/device.map.
Para un sistema en el que la secuencia de arranque del BIOS se define como IDE antes
de SCSI, el archivo device.map podría aparecer de la siguiente forma:
(fd0)
(hd0)
(hd1)
/dev/fd0
/dev/hda
/dev/sda
Como el orden de IDE, SCSI y los demás discos duros dependen de varios factores y
Linux no es capaz de identificar la asignación, la secuencia del archivo device.map
se puede definir de forma manual. Si encuentra problemas al arrancar, compruebe si la
secuencia de este archivo corresponde a la secuencia del BIOS y utiliza el shell de
GRUB, descrito en la Sección 29.3.4, “Shell de GRUB” (p. 480), para modificarlo de
forma temporal cuando sea necesario. Una vez que el sistema Linux ha arrancado, el
archivo device.map se puede editar de forma permanente con el módulo del cargador
de arranque YaST o con el editor que desee.
Después de cambiar de forma manual device.map, ejecute el siguiente comando
para volver a instalar GRUB. Este comando hace que el archivo device.map se
vuelva a cargar y que los comandos escuchados en grub.conf se ejecuten:
grub --batch < /etc/grub.conf
29.3.3 Archivo /etc/grub.conf
El tercer archivo importante de configuración de GRUB aparte de menu.lst y device
.map es /etc/grub.conf. Este archivo contiene los parámetros y las opciones que
necesita el comando grub para instalar el cargador de arranque de forma correcta:
Cargador de arranque
479
root (hd0,4)
install /grub/stage1 d (hd0) /grub/stage2 0x8000 (hd0,4)/grub/menu.lst
quit
Significado de las entradas individuales:
root (hd0,4)
Este comando le dice a GRUB que aplique los siguientes comandos a la primera
partición lógica del primer disco duro (la ubicación de los archivos de arranque).
parámetro install
El comando grub debe ejecutarse con el parámetro install. stage1 del cargador de arranque debe instalarse en el MBR del primer disco duro (/grub/stage1
d (hd0)). stage2 debe cargarse en la dirección de memoria 0x8000
(/grub/stage2 0x8000). La última entrada ((hd0,4)/grub/menu.lst)
le dice a GRUB dónde buscar el archivo del menú.
29.3.4 Shell de GRUB
GRUB existe en dos versiones: como cargador de arranque y como programa normal
de Linux en /usr/sbin/grub. Este programa se denomina shell de GRUB. La
funcionalidad para instalar GRUB como cargador de arranque en un disco duro o en
un disquete está integrada en GRUB con la forma de los comandos install y setup.
Ésta está disponible en el shell de GRUB cuando se carga Linux.
Sin embargo, los comandos setup e install también están disponibles durante el
procedimiento de arranque antes de iniciar Linux. Esto facilita la reparación de un sistema defectuoso que ya no se puede arrancar porque el archivo de configuración defectuoso del cargador de arranque se puede eludir introduciendo los parámetros de forma
manual. La introducción de los parámetros de forma manual durante el procedimiento
de arranque también es útil para probar la configuración nueva sin dañar el sistema
original. Sólo tiene que introducir el archivo de configuración experimental con una
sintaxis similar a la de menu.lst. A continuación, pruebe la funcionalidad de esta
entrada sin cambiar el archivo de configuración existente. Por ejemplo, para probar el
nuevo núcleo, introduzca el comando kernel y la vía del nuevo núcleo. Si el procedimiento de arranque falla, puede continuar utilizando el archivo intacto menu.lst la
siguiente vez que arranque. De forma similar, la interfaz de la línea de comandos también
se puede utilizar para arrancar un sistema en lugar de un archivo menu.lst introduciendo los parámetros corregidos. En el sistema instalado, los parámetros correctos se
pueden introducir en menu.lst para que el sistema se pueda arrancar siempre.
480
La asignación de dispositivos GRUB a los nombres de dispositivos Linux sólo es relevante cuando se ejecuta el shell de GRUB como programa de Linux (introduciendo
grub, como se describe en la Sección 29.3.2, “Archivo device.map” (p. 479)). Con este
propósito, el programa lee el archivo device.map. Para obtener más información,
consulte el Sección 29.3.2, “Archivo device.map” (p. 479).
29.3.5 Configuración de una contraseña de
arranque
Incluso antes de que se arranque el sistema operativo, GRUB habilita el acceso a los
sistemas de archivos. Los usuarios sin permisos root pueden acceder a los archivos del
sistema Linux a los que no tienen acceso una vez arrancado el sistema. Para bloquear
este tipo de acceso o impedir que los usuarios arranquen ciertos sistemas operativos,
defina una contraseña de arranque.
IMPORTANTE: Contraseña de arranque y pantalla de inicio
Si utiliza una contraseña de inicio para GRUB, no se muestra la pantalla de inicio
habitual.
Como usuario root, realice lo siguiente para definir una contraseña de arranque:
1 En el indicador de root, introduzca grub.
2 Cifre la contraseña en la shell del GRUB:
grub> md5crypt
Password: ****
Encrypted: $1$lS2dv/$JOYcdxIn7CJk9xShzzJVw/
3 Pegue la cadena cifrada en la sección global del archivo menu.lst:
gfxmenu (hd0,4)/message
color white/blue black/light-gray
default 0
timeout 8
password --md5 $1$lS2dv/$JOYcdxIn7CJk9xShzzJVw/
Ahora los comandos GRUB sólo se pueden ejecutar en el indicador de inicio
después de pulsar P e introducir la contraseña. Sin embargo, los usuarios aún
pueden arrancar los sistemas operativos desde el menú de arranque.
Cargador de arranque
481
4 Para evitar que uno o varios sistemas operativos se arranquen desde el menú de
arranque, añada la entrada lock a todas las secciones de menu.lst que no
deberían poder arrancarse sin introducir una contraseña. Por ejemplo:
title linux
kernel (hd0,4)/vmlinuz root=/dev/hda7 vga=791
initrd (hd0,4)/initrd
lock
Después de volver a arrancar el sistema y seleccionar la entrada Linux en el
menú de arranque, aparece el siguiente mensaje de error:
Error 32: Debe autenticarse
Pulse Intro para entrar en el menú. A continuación, pulse P para obtener un indicador de contraseña. Después de introducir la contraseña y pulsar Intro , debería
arrancarse el sistema operativo seleccionado (en este caso, Linux).
29.4
Configuración del Cargador de
arranque con YaST
La forma más sencilla de configurar el cargador de arranque en el sistema SUSE Linux
es mediante el módulo YaST. En el Centro de control de YaST, seleccione System
(Sistema) → Configuración del cargador de arranque. Se muestra la configuración
actual del cargador de arranque, lo que le permite efectuar los cambios deseados. Consulte la Figura 29.1, “Configuración del Cargador de arranque con YaST” (p. 483).
482
Figura 29.1
Configuración del Cargador de arranque con YaST
La ventana principal consta de dos pestañas:
Gestión de secciones
Utilice esta pestaña para editar, cambiar y suprimir las secciones del cargador de
arranque para los sistemas operativos individuales. Para añadir una opción, haga
clic en Añadir. Para cambiar el valor de una opción existente, selecciónelo con el
ratón y haga clic en Editar. Si no desea utilizar un opción existente, selecciónela y
haga clic en Suprimir. Si no está familiarizado con las opciones del cargador de
arranque, lea la sección Sección 29.3, “Arranque con GRUB” (p. 471) en primer
lugar.
Instalación del cargador de arranque
Utilice esta pestaña para ver y cambiar los ajustes relacionados con el tipo, la ubicación u otros elementos de los ajustes del cargador de arranque.
29.4.1 Tipo del cargador de arranque
El tipo del cargador de arranque se establece en la pestaña Instalación del cargador de
arranque. GRUB es, por defecto, el cargador de arranque que se utiliza en SUSE Linux.
Para usar LILO, siga los pasos que se especifican a continuación:
Cargador de arranque
483
Procedimiento 29.2
Cambio del tipo del cargador de arranque
1 Abra la pestaña Instalación del cargador de arranque.
2 En el panel Tipo, haga clic en el menú Gestor de arranque y seleccione LILO.
3 Elija una de las siguientes acciones del menú emergente:
Proponer nueva configuración
YaST proposes a new configuration (YaST propone nueva configuración).
Convertir la configuración actual.
YaST converts the current configuration (YaST convierte la configuración
actual). Algunos ajustes pueden perderse al convertir la configuración.
Iniciar nueva configuración desde cero.
Utilice esta opción para establecer una configuración personalizada. Esta acción no se encuentra disponible durante la instalación de SUSE Linux.
Cargar la configuración guardada en el disco
Utilice esta opción para cargar su propio /etc/lilo.conf. Esta acción
no se encuentra disponible durante la instalación de SUSE Linux.
4 Haga clic en Aceptar para guardar los cambios
5 Haga clic en Finalizar en la ventana principal del cuadro de diálogo para activar
los cambios.
Tras efectuar la conversión, la antigua configuración de GRUB se guarda en disco.
Para utilizarlo, tan sólo se debe volver a cambiar el tipo de cargador de arranque a
GRUB y elegir Restablecer configuración guardada antes de la conversión en el menú
emergente. Esta acción está disponible únicamente en un sistema instalado.
NOTA: Cargador de arranque personalizado
Si desea utilizar un cargador de arranque distinto a GRUB o LILO, haga clic en
la opción No instalar ningún cargador de arranque. Lea con atención la documentación del cargador de arranque antes de seleccionar esta opción.
484
29.4.2 Ubicación del cargador de arranque
Es posible que necesite cambiar la ubicación del cargador de arranque. Este módulo
YaST le ayuda a realizar este cambio.
Procedimiento 29.3
Cambio de la ubicación del cargador de arranque
1 Para cambiar la ubicación del cargador de arranque, haga clic en la pestaña Instalación del cargador de arranque y, a continuación, seleccione una de las opciones siguientes del menú Instalación del cargador de arranque.
Registro de inicio principal de /dev/hdX
Arranque principal de un disco Esto es recomendable siempre que SUSE
determine que el sistema puede arrancarse de este modo. La X identifica el
disco duro; en otras palabras, puede ser a, b, c y d:
hda => ide0
hdb =>
hdc =>
hdd =>
master
ide0 slave
ide1 master
ide1 slave
Sector de arranque de la partición de arranque /dev/hdXY
El sector de arranque de la partición /boot. Esta opción se establece por
defecto si se dispone de varios sistemas operativos instalados en el disco duro.
La Y hace referencia a la partición, es decir, 1, 2, 3, 4, 5, etc. Por lo tanto, la
entrada puede presentar el siguiente aspecto:
/dev/hda1
Sector de arranque de la partición raíz /dev/hdXY
El sector de arranque de la partición (raíz) /. Esta opción también se utiliza
si se dispone de varios sistemas operativos instalados en el disco duro y se
quiere seguir utilizando el antiguo gestor de arranque.
Otra
Esta opción permite especificar la ubicación del cargador de arranque.
2 Haga clic en Finalizar para hacer efectivos los cambios.
Cargador de arranque
485
29.4.3 Sistema por defecto
Para cambiar el sistema por defecto, siga los pasos que se especifican a continuación:
Procedimiento 29.4
Configuración del sistema por defecto
1 Abra la pestaña Gestión de secciones.
2 Seleccione el sistema deseado de la lista mediante el ratón o haciendo clic en
Arriba o Abajo.
3 Haga clic en Definir como opción por defecto.
4 Haga clic en Finalizar para hacer efectivos los cambios.
29.4.4 Tiempo límite del cargador de
arranque
El cargador de arranque no inicia el sistema por defecto de forma inmediata. Durante
este tiempo límite, puede detener el arranque del sistema por defecto y cambiar el sistema
que desea arrancar o escribir algunos parámetros de núcleo. Para aumentar o disminuir
el tiempo límite del cargador de arranque, siga los pasos que se especifican a continuación:
Procedimiento 29.5
Cambio del tiempo límite del cargador de arranque
1 Abra la pestaña Instalación del cargador de arranque.
2 Haga clic en Opciones del cargador de arranque.
3 Marque Modo de arranque.
4 En Menú de arranque, cambie el valor de Boot Menu Time-Out (Tiempo límite
del menú de arranque) escribiendo un nuevo valor, haciendo clic con el ratón en
la flecha apropiada o utilizando las teclas de flecha del teclado.
5 Haga clic en Aceptar.
486
6 Haga clic en Finalizar para hacer efectivos los cambios.
Haciendo clic en el cuadro Continue Booting after a Time-Out (Continuar arranque tras
tiempo límite), puede decidir si el menú de arranque debe visualizarse de forma permanente sin que se tenga en cuenta el tiempo límite.
29.4.5 Ajustes de seguridad
También puede utilizar este módulo YaST para definir una contraseña para la protección
del cargador de arranque. Con esto, se alcanza un nivel superior de seguridad.
Procedimiento 29.6
Definición de contraseña del cargador de arranque
1 Abra la pestaña Instalación del cargador de arranque.
2 Haga clic en Opciones del cargador de arranque.
3 En Protección de contraseña, marque Introduzca contraseña del proveedor y
defina la contraseña.
4 Haga clic en Aceptar.
5 Haga clic en Finalizar para hacer efectivos los cambios.
29.4.6 Orden de los discos
Si su equipo tiene más de un disco duro, puede especificar la secuencia de arranque de
los discos como se define en la configuración del BIOS la máquina (consulte la Sección 29.3.2, “Archivo device.map” (p. 479)). Para ello, siga los pasos que se especifican
a continuación:
Procedimiento 29.7
Configuración del orden de los discos
1 Abra la pestaña Instalación del cargador de arranque.
2 Haga clic en Detalles de la instalación del cargador de arranque.
Cargador de arranque
487
3 Si aparecen enumerados varios discos duros, seleccione uno de ellos y haga clic
en Arriba o Abajo.
4 Haga clic en Aceptar para guardar los cambios.
5 Haga clic en Finalizar para hacer efectivos los cambios.
También puede sustituir el registro de arranque principal con código genérico (que
arranca la partición activa) utilizando este módulo. Haga clic en Replace MBR with
Generic Code (Sustituir MBR con código genérico) en Actualización del área del sistema del disco. Para activar la partición que contiene el cargador de arranque, también
puede hacer clic en Activar la partición del cargador de arranque del mismo panel.
Haga clic en Finalizar para hacer efectivos los cambios.
29.5
Desinstalación del cargador de
arranque de Linux
YaST se puede utilizar para desinstalar el cargador de arranque de Linux y restaurar el
estado que el MBR tenía antes de instalar Linux. Durante la instalación, YaST crea de
forma automática una copia de seguridad del MBR original y lo restaura cuando se le
solicita, sobrescribiendo GRUB.
Para desinstalar GRUB, inicie el módulo del cargador de arranque de YaST (Sistema
→ Configuración del cargador de arranque). En el primer cuadro de diálogo, seleccione
Reset (Restablecer) → Restore MBR of Hard Disk (Restablecer MBR de disco duro) y
salga del cuadro de diálogo mediante Finalizar. En el MBR, GRUB se sobrescribe con
los datos del MBR original.
29.6
Crear un CD de arranque
En caso de que tenga problemas al arrancar el sistema instalado con un gestor de
arranque o bien no quiera o pueda instalar el cargador de arranque en el MBR de su
ordenador o en un disquete, puede crear un CD de arranque en el que haya grabado los
archivos de inicio de Linux. Para ello es necesario que el ordenador disponga de una
grabadora de CDs configurada.
488
Para crear un CD-ROM arrancable con GRUB, tan solo necesita una forma especial de
stage2 llamada stage2_eltorito y, de manera opcional, un archivo menu.lst
personalizado. Los archivos stage1 y stage2 clásicos no son necesarios.
Cree un directorio en el que fabricar la imagen ISO, por ejemplo con cd /tmp y
mkdir iso. También puede crear un subdirectorio para GRUB con mkdir -p
iso/boot/grub. A continuación copie el archivo stage2_eltorito en el directorio grub:
cp /usr/lib/grub/stage2_eltorito iso/boot/grub
Copie también el kernel (/boot/vmlinuz), initrd (/boot/initrd) y el archivo
/boot/message en el directorio iso/boot/:
cp /boot/vmlinuz iso/boot/
cp /boot/initrd iso/boot/
cp /boot/message iso/boot/
A fin de que GRUB pueda encontrar estos archivos, copie menu.lst en el directorio
iso/boot/grub y modifique las rutas para que se puedan leer los archivos en el
CD. Para ello sustituya en la ruta el nombre de dispositivo del disco duro (por ejemplo
(hd*)) por el nombre de dispositivo de la unidad de CD-ROM (cd):
gfxmenu (cd)/boot/message
timeout 8
default 0
title Linux
kernel (cd)/boot/vmlinuz root=/dev/hda5 vga=794 resume=/dev/hda1
splash=verbose showopts
initrd (cd)/boot/initrd
Finalmente, ejecute el siguiente comando para crear una imagen ISO:
mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \
-boot-load-size 4 -boot-info-table -o grub.iso iso
Grabe el archivo resultante grub.iso en un CD con un programa de grabación cualquiera.
29.7
Pantalla gráfica de SUSE
A partir de SUSE Linux 7.2, la pantalla gráfica de SUSE se muestra en la primera
consola si la opción “vga=<value>” se utiliza como parámetro del núcleo. Si lleva a
Cargador de arranque
489
cabo la instalación mediante YaST, esta opción se activa de forma automática de
acuerdo con la resolución seleccionada y con la tarjeta gráfica. Hay tres modos de inhabilitar la pantalla de SUSE, si se desea:
Inhabilitación de la pantalla de SUSE en caso necesario.
Introduzca el comando echo 0 >/proc/splash en la línea de comandos para
inhabilitar la pantalla gráfica. Para volver a activarla, introduzca echo 1
>/proc/splash.
Inhabilitación de la pantalla de SUSE por defecto.
Añada el parámetro del núcleo splash=0 a la configuración del cargador de
arranque. Capítulo 29, Cargador de arranque (p. 469) proporciona más información
acerca de esto. Sin embargo, si prefiere el modo de texto, que era el modo por defecto en versiones anteriores, defina vga=normal.
Inhabilitación completa de la pantalla de SUSE.
Recopile un núcleo nuevo e inhabilite la opción Use splash screen instead of boot
logo (Utilizar la pantalla de inicio en lugar del logotipo de arranque) en framebuffer
support (asistencia de framebuffer).
SUGERENCIA
Si se inhabilita la asistencia de framebuffer en el núcleo, también se inhabilita de forma automática la pantalla de inicio. Si ejecuta el sistema con un
núcleo personalizado, SUSE no proporciona asistencia.
29.8
Solución de problemas
En esta sección se enumeran algunos de los problemas que se encuentran habitualmente
al arrancar con GRUB y una descripción breve de las posibles soluciones. Algunos de
los problemas se tratan en artículos de la base de datos de asistencia en http://
portal.suse.de/sdb/en/index.html. Si su problema en concreto no aparece
en esta lista, utilice el cuadro de búsqueda de la base de datos de asistencia de
https://portal.suse.com/PM/page/search.pm para buscar palabras
clave como GRUB, arrancar y cargador de arranque.
490
GRUB y XFS
XFS no deja espacio para stage1 en el bloque de arranque de la partición. Por
tanto, no especifique una partición de XFS como ubicación del cargador de arranque.
Este problema se puede solucionar creando una partición de arranque separada que
no se formatea con XFS.
GRUB y JFS
Aunque técnicamente es posible, la combinación de GRUB con JFS presenta problemas. En este caso, cree una partición de arranque separada (/boot) y formatéela
con Ext2. Instale GRUB en esta partición.
GRUB informa de un error de geometría de GRUB
GRUB comprueba la geometría de los discos duros conectados cuando se arranca
el sistema. Algunas veces, el BIOS devuelve información no coherente y GRUB
informa de un error de geometría de GRUB. En este caso, utilice LILO o actualice
el BIOS. La información detallada acerca de la instalación, de la configuración y
del mantenimiento de LILO está disponible en la base de datos de asistencia si se
busca con la palabra clave LILO.
GRUB también devuelve este mensaje de error si Linux se instaló en un disco duro
adicional no registrado en el BIOS. stage1 del cargador de arranque se encuentra y
se carga de forma correcta, pero stage2 no se encuentra. Este problema se puede
solucionar registrando el disco duro nuevo en el BIOS.
El sistema que contiene los discos duros IDE y SCSI no arranca
Durante la instalación, puede que YaST haya determinado de forma incorrecta la
secuencia de arranque de los discos duros (y puede que no se haya corregido). Por
ejemplo, GRUB puede considerar /dev/hda as hd0 y /dev/sda como hd1,
aunque la secuencia de arranque del BIOS esté invertida (SCSI antes de IDE).
En este caso, corrija los discos duros durante el proceso de arranque con la ayuda
de la línea de comandos de GRUB. Una vez que el sistema ha arrancado, edite el
archivo device.map para aplicar la nueva asignación de forma permanente. A
continuación, busque los nombres de dispositivos de GRUB en los archivos/boot/
grub/menu.lst y /boot/grub/device.map y vuelva a instalar el cargador
de arranque con el siguiente comando:
grub --batch < /etc/grub.conf
Cargador de arranque
491
Arranque de Windows desde el segundo disco duro
Algunos sistemas operativos, como Windows, sólo pueden arrancar desde el primer
disco duro. Si uno de esos sistemas operativos está instalado en un disco duro que
no sea el primero, puede llevar a cabo un cambio lógico en la entrada de menú respectiva.
...
title windows
map (hd0) (hd1)
map (hd1) (hd0)
chainloader(hd1,0)+1
...
En este ejemplo, Windows se inicia desde el segundo disco duro. Para ello, el orden
lógico de los discos duros se cambia con map. Este cambio no afecta a la lógica del
archivo del menú de GRUB. Por tanto, el segundo disco duro se debe especificar
con chainloader.
29.9
Información adicional
La información detallada acerca de GRUB se encuentra disponible en http://www
.gnu.org/software/grub/. Si tiene texinfo instalado en su máquina, vea las
páginas de información de GRUB en un shell introduciendo info grub. También
puede buscar la palabra clave “GRUB” en la base de datos de asistencia en http://
portal.suse.de/sdb/en/index.html para obtener información acerca de
asuntos especiales.
492
30
Funciones especiales de SUSE Linux
Este capítulo incluye información acerca de varios paquetes de software, las consolas
virtuales y el formato del teclado. Se describen componentes de software como, por
ejemplo, bash, cron, y logrotate, ya que han experimentado mejoras o cambios
en las últimas versiones. Aunque dichos cambios sean pequeños o tengan una importancia menor, es posible que los usuarios deseen cambiar su comportamiento por defecto,
ya que estos componentes están a menudo muy vinculados al sistema. El capítulo finaliza con un apartado sobre los ajustes regionales y de idioma (I18N y L10N).
30.1
Información acerca de
paquetes especiales de
software
Los programas bash, cron, logrotate, locate, ulimit y free, así como
el archivo resolv.conf, revisten gran importancia, tanto para los administradores
de los sistemas como para muchos usuarios. Las páginas de manual (Man) y las de información (Info) constituyen dos útiles fuentes de información sobre comandos, si bien
a veces no están las dos disponibles. GNU Emacs es un editor de texto muy utilizado
y con muchas opciones de configuración.
Funciones especiales de SUSE Linux
493
30.1.1 Paquete bash y /etc/profile
Bash es la shell por defecto de SUSE Linux. Cuando se utiliza como shell de inicio de
sesión, lee varios archivos de inicialización y los procesa en el orden en el que aparecen
en la lista.
1.
/etc/profile
2.
~/.profile
3.
/etc/bash.bashrc
4.
~/.bashrc
En ~/.profile y en ~/.bashrc se pueden aplicar ajustes personalizados. Para
garantizar que estos archivos se procesen correctamente, es necesario copiar los ajustes
básicos desde /etc/skel/.profile o /etc/skel/.bashrc en el directorio
personal del usuario. Se recomienda copiar los ajustes de /etc/skel tras una actualización. Ejecute los siguientes comandos shell para evitar que se pierdan ajustes personales:
mv
cp
mv
cp
~/.bashrc ~/.bashrc.old
/etc/skel/.bashrc ~/.bashrc
~/.profile ~/.profile.old
/etc/skel/.profile ~/.profile
A continuación, copie los ajustes personales otra vez de los archivos *.old.
30.1.2 Paquete cron
Si desea ejecutar comandos de forma regular y automática en segundo plano a horas
predefinidas, cron es la herramienta tradicional que utilizar. Funciona mediante tablas
horarias con un formato especial para ello. Algunas de estas tablas acompañan al sistema
y, si así lo desean o si es necesario, los usuarios pueden escribir sus propias tablas.
Las tablas cron se encuentran en /var/spool/cron/tabs. /etc/crontab sirve
como tabla cron para todo el sistema. Introduzca el nombre del usuario que debe ejecutar
el comando directamente después de la tabla horaria. En el Ejemplo 30.1, “Entrada en
/etc/crontab” (p. 495), se ha introducido Root. Las tablas específicas del paquete, ubi-
494
cadas en /etc/cron.d, comparten el mismo formato. Consulte la página Man sobre
cron (man cron).
Ejemplo 30.1
1-59/5 * * * *
Entrada en /etc/crontab
root
test -x /usr/sbin/atrun && /usr/sbin/atrun
No es posible editar /etc/crontab ejecutando el comando crontab -e. Este
archivo se debe cargar directamente en un editor, después modificarse y finalmente
guardarse.
Hay varios paquetes que instalan guiones shell en los directorios /etc/cron.hourly,
/etc/cron.daily, /etc/cron.weekly y /etc/cron.monthly, cuyas
instrucciones se controlan a través de /usr/lib/cron/run-crons. /usr/lib/
cron/run-crons se ejecuta cada 15 minutos desde la tabla principal (/etc/
crontab). Esto garantiza que los procesos que se hayan podido descuidar puedan
ejecutarse en el momento adecuado.
Para ejecutar los guiones hourly (cada hora), daily (cada día), u otros guiones de
mantenimiento periódicos en momentos personalizados, elimine los archivos de marca
horaria de forma regular mediante entradas /etc/crontab [consulte el Ejemplo 30.2,
“/etc/crontab: eliminación de archivos de marca horaria” (p. 495), donde se elimina el
guión hourly (cada hora) antes de la hora en punto y el guión daily (cada día) una
vez al día a las 2:14 a.m., etc.].
Ejemplo 30.2
/etc/crontab: eliminación de archivos de marca horaria
59
14
29
44
root
root
root
root
*
2
2
2
*
*
*
1
*
*
*
*
*
*
6
*
rm
rm
rm
rm
-f
-f
-f
-f
/var/spool/cron/lastrun/cron.hourly
/var/spool/cron/lastrun/cron.daily
/var/spool/cron/lastrun/cron.weekly
/var/spool/cron/lastrun/cron.monthly
Los trabajos de mantenimiento del sistema diarios se han distribuido entre varios
guiones para conseguir una mayor claridad. Estos trabajos están dentro del paquete
aaa_base. /etc/cron.daily contiene, por ejemplo, los componentes suse
.de-backup-rpmdb, suse.de-clean-tmp o suse.de-cron-local.
Funciones especiales de SUSE Linux
495
30.1.3 Archivos de registro: paquete
logrotate
Ciertos servicios del sistema (daemons), junto con el núcleo en sí, registran en archivos
de registro y de forma regular el estado del sistema y eventos concretos. Así, el administrador puede comprobar con regularidad el estado del sistema en un momento concreto, reconocer errores o funciones defectuosas y repararlos con precisión. Estos archivos de registro generalmente se almacenan en /var/log, tal y como especifique el
estándar FHS, y van creciendo cada día. El paquete logrotate ayuda a controlar el
crecimiento de estos archivos.
Configuración
Configure logrotate con el archivo /etc/logrotate.conf. En concreto, la especificación include (incluir) configura principalmente los archivos adicionales que
se deben leer. SUSE Linux garantizará que los programas que generan archivos de registro instalen archivos de configuración individuales en /etc/logrotate.d. Por
ejemplo, estos programas incluyen los paquetes apache2 (/etc/logrotate.d/
apache2) y syslogd (/etc/logrotate.d/syslog).
496
Ejemplo 30.3
Ejemplo para /etc/logrotate.conf
# see "man logrotate" for details
# rotate log files
weekly weekly
# keep 4 weeks worth of backlogs
rotate 4
#
create new (empty) log files after rotating old ones create
# uncomment this if you want your log files compressed
#compress
# RPM packages drop log rotation information into this directory
include /etc/logrotate.d
# no packages own lastlog or wtmp - we'll rotate them here
#/var/log/wtmp {
#
monthly
#
create 0664 root utmp
#
rotate 1
#}
# system-specific logs may be also be configured here.
logrotate se controla mediante cron y se ejecuta a diario a través de /etc/cron
.daily/logrotate.
IMPORTANTE
La opción create (crear) lee todos los ajustes realizados por el administrador
en /etc/permissions*. Asegúrese de que no se produzcan conflictos a
raíz de posibles modificaciones personales.
30.1.4 Comando locate
El comando locate, que permite buscar archivos de forma rápida, no está incluido en
el ámbito estándar del software instalado. Si lo desea, instale el paquete find-locate.
El proceso updatedb se inicia automáticamente cada noche o alrededor de 15 minutos
después de iniciar el sistema.
Funciones especiales de SUSE Linux
497
30.1.5 Comando ulimit
El comando ulimit (límites de usuario) permite definir límites para el uso de recursos
del sistema, así como para que se puedan mostrar estos recursos. El comando ulimit
resulta especialmente útil para limitar la memoria disponible para las distintas aplicaciones. Con este comando se puede hacer que una aplicación no utilice demasiada memoria por sí sola, una situación que podría detener el sistema.
ulimit se puede utilizar con varias opciones. Para limitar el uso de memoria, utilice
las opciones que se muestran en la Tabla 30.1, “ulimit: definición de recursos para
el usuario” (p. 498).
Tabla 30.1
ulimit: definición de recursos para el usuario
-m
Tamaño máximo de memoria física
-v
Tamaño máximo de memoria virtual
-s
Tamaño máximo del stack
-c
Tamaño máximo de los archivos de núcleo central
-a
Visualización de límites
En /etc/profile se pueden realizar ajustes en todo el sistema. Habilite aquí la
creación de archivos de núcleo central que necesitan los programadores para poder
realizar operaciones de depuración. Un usuario normal no puede aumentar los valores
que haya especificado el administrador del sistema en /etc/profile, pero puede
crear entradas especiales en ~/.bashrc.
Ejemplo 30.4
ulimit: ajustes en ~/.bashrc
# Limits of physical memory:
ulimit -m 98304
# Limits of virtual memory:
ulimit -v 98304
La cantidad de memoria se debe especificar en KB. Para obtener más información,
consulte man bash.
498
IMPORTANTE
No todas las shells admiten las directivas ulimit. PAM (por ejemplo
pam_limits) ofrece un completo elenco de posibilidades de ajuste en caso
de que se deban abarcar ajustes para estas restricciones.
30.1.6 Comando free
El comando free resulta en cierta manera engañoso si el objetivo es saber cuánta
memoria RAM se está utilizando en esos momentos. Esa información se puede consultar
en /proc/meminfo. En la actualidad, los usuarios con acceso a un sistema operativo
moderno, como Linux, no deberían necesitar preocuparse demasiado sobre el uso de
memoria. El concepto de RAM disponible se remonta a los días anteriores a la gestión
de la memoria unificada. La frase memoria libre es memoria mala se aplica también
en Linux. Así, Linux se ha esforzado siempre en equilibrar las cachés sin permitir que
haya memoria libre o no utilizada.
Básicamente, el núcleo no tiene conocimiento directo de ninguna aplicación ni de ningún
dato del usuario, sino que gestiona las aplicaciones y los datos del usuario en una caché
de páginas. Si la memoria se queda corta, se escriben partes de ella en la partición de
intercambio o en archivos desde los cuales se podrá leer con ayuda del comando mmap
(consulte man mmap).
El núcleo también contiene otras cachés, como la caché de tablas, donde se almacenan
la cachés utilizadas para acceder a la red. Esto puede explicar las diferencias entre los
contadores en /proc/meminfo. A la mayoría de ellas, pero no a todas, se puede acceder a través de /proc/slabinfo.
30.1.7 Archivo /etc/resolv.conf
La resolución del nombre de dominio se gestiona a través del archivo /etc/resolv
.conf. Consulte el Capítulo 40, DNS (Domain Name System) (p. 651).
Este archivo se actualiza con el guión /sbin/modify_resolvconf de forma exclusiva, ningún otro programa dispone de permiso para modificar /etc/resolv
.conf directamente. Aplicar esta regla es la única manera de garantizar que la configuración de red del sistema y los archivos relevantes se guardan en un estado coherente.
Funciones especiales de SUSE Linux
499
30.1.8 Páginas Man y páginas Info
Para algunas aplicaciones de GNU (como tar), las páginas Man correspondientes han
dejado de publicarse. Para estos comandos, utilice la opción --help y obtendrá una
descripción general de las páginas Info, las cuales proporcionan instrucciones más detalladas a través del sistema de hipertexto de GNU. Lea una introducción a este sistema
escribiendo info info. Las páginas Info se pueden ver con Emacs escribiendo emacs
-f info, o directamente en una consola con info. También podrá ver páginas Info
con tkinfo, xinfo o el sistema de ayuda de SUSE.
30.1.9 Ajustes para GNU Emacs
GNU Emacs es un entorno de trabajo complejo. En las siguientes secciones se describen
los archivos de configuración que se procesan al iniciar GNU Emacs. Encontrará más
información en http://www.gnu.org/software/emacs/.
Al iniciarse, Emacs lee varios archivos que contienen los ajustes para el usuario, el administrador del sistema y el distribuidor de personalización o configuración previa. El
archivo de inicio ~/.emacs se instala en los directorios personales de cada usuario
desde /etc/skel. .emacs, a su vez, lee el archivo /etc/skel/.gnu-emacs.
Para personalizar el programa, copie .gnu-emacs en el directorio personal (con cp
/etc/skel/.gnu-emacs ~/.gnu-emacs) y aplique allí los ajustes que desee.
.gnu-emacs define el archivo ~/.gnu-emacs-custom como custom-file
(archivo personalizado). Si el usuario desea efectuar ajustes con las opciones
customize (personalizar) en Emacs, dichos ajustes se guardarán en ~/
.gnu-emacs-custom.
Con SUSE Linux, el paquete emacs instala el archivo site-start.el en el directorio /usr/share/emacs/site-lisp. El archivo site-start.el se carga
antes que el archivo de inicio ~/.emacs. Entre otros aspectos, site-start.el se
ocupa de que los archivos de configuración distribuidos con los paquetes complementarios de Emacs como, por ejemplo, psgml, se carguen automáticamente. Tales archivos
de configuración se encuentran también en /usr/share/emacs/site-lisp y
comienzan siempre con suse-start-. El administrador local del sistema puede definir ajustes de configuración válidos para todo el sistema con default.el.
500
Encontrará más información acerca de estos archivos en el archivo de información de
Emacs en Init File: info:/emacs/InitFile. Aquí también encontrará información
acerca de cómo evitar la carga de estos archivos cuando sea necesario.
Los componentes de Emacs están distribuidos en varios paquetes:
• Paquete básico emacs.
• emacs-x11: se instala normalmente e incluye compatibilidad con X11.
• emacs-nox: programa sin compatibilidad con X11.
• emacs-info: documentación en línea en formato info.
• emacs-el: contiene archivos de bibliotecas sin compilar en Emacs Lisp. No son
necesarios para el tiempo de ejecución.
• Se pueden instalar numerosos paquetes complementarios si es necesario:
emacs-auctex (para LaTeX), psgml (para SGML y XML), gnuserv (para
el uso del cliente y el servidor), etc.
30.2
Consolas virtuales
Linux es un sistema multiusuario y multitarea. Las ventajas que presentan estas características se pueden apreciar incluso en un sistema autónomo. El modo de texto presenta
seis consolas virtuales. Cambie de una a otra pulsando las combinaciones de teclas de
Alt + F1 a Alt + F6 . La séptima consola se reserva para X, y la décima muestra los
mensajes del núcleo. Se podrán asignar más o menos consolas modificando el archivo
/etc/inittab.
Para cambiar a una consola desde X sin cerrar, utilice las combinaciones de teclas de
Ctrl + Alt + F1 a Ctrl + Alt + F6 . Para volver a X, pulse Alt + F7 .
30.3
Distribución del teclado
Para estandarizar la distribución del teclado de los distintos los programas, se han hecho
cambios en los siguientes archivos:
Funciones especiales de SUSE Linux
501
/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/<VERSION>/site-lisp/term/*.el
Estas modificaciones sólo tienen efecto sobre aplicaciones que usan las entradas
terminfo o cuyos archivos de configuración se modificaron directamente (vi, less,
etc.). Se recomienda adaptar otras aplicaciones que no sean de SUSE Linux a estas definiciones por defecto.
En el entorno X, se puede acceder a la tecla Compose (tecla compuesta) mediante la
combinación de teclas Ctrl + Mayús (derecha). También puede consultar la entrada correspondiente en /usr/X11R6/lib/X11/Xmodmap.
X Keyboard Extension (XKB) permite acceder a ajustes de configuración avanzados.
Esta extensión la usan también los escritorios GNOME (gswitchit) y KDE (kxkb).
SUGERENCIA: Información adicional
Puede obtener información adicional sobre XKB en el archivo /etc/X11/
xkb/README y en los documentos ahí mencionados.
Puede encontrar información sobre la entrada de los idiomas chino, japonés
y coreano (CJK) en la página de Mike Fabian: http://www.suse.de/
~mfabian/suse-cjk/input.html.
30.4
Ajustes de idioma y país
Gracias a su gran nivel de internacionalización, SUSE Linux es muy flexible para
adaptarse a las necesidades locales. En otras palabras, la internacionalización (I18N)
permite implementar localizaciones (L10N) específicas. Las abreviaturas I18N y L10N
hacen referencia a los términos ingleses "internationalization" y "localization" respectivamente: mencionan la letra inicial y final de cada palabra y el número de caracteres
que se han omitido en medio.
502
Los ajustes se realizan mediante las variables LC_ que se definen en el archivo /etc/
sysconfig/language. No afectan sólo a la compatibilidad con el idioma nativo,
sino también a las categorías de mensajes (idioma), conjunto de caracteres, criterios
de ordenación, fecha y hora, números y moneda. Todas estas categorías se pueden definir directamente con su propia variable o de forma indirecta con una variable principal
en el archivo language (consulte la página Man locale).
RC_LC_MESSAGES, RC_LC_CTYPE, RC_LC_COLLATE, RC_LC_TIME,
RC_LC_NUMERIC, RC_LC_MONETARY
Estas variables se pasan a la shell sin el prefijo RC_ y representan las categorías
indicadas arriba. A continuación, se describen los perfiles de shell en cuestión. El
ajuste actual se puede mostrar con el comando locale.
RC_LC_ALL
Esta variable, si se define, sobrescribe los valores de las variables mencionadas anteriormente.
RC_LANG
Si no se define ninguna de las variables anteriores, ésta se usa como alternativa. Por
defecto, SUSE Linux sólo define RC_LANG, lo que facilita el procedimiento a los
usuarios a la hora de especificar sus propios valores.
ROOT_USES_LANG
Se trata de una variable cuyos valores son yes (sí) y no. Si se define como no,
el usuario Root funcionará siempre en el entorno POSIX.
Las demás variables se definen mediante el editor sysconfig de YaST (consulte la
Sección 28.3.1, “Cambio de la configuración del sistema mediante el editor YaST sysconfig” (p. 465)). El valor de una variable de este tipo incluye el código del idioma, el
código del país, el tipo de codificación y el modificador. Todos estos componentes individuales se conectan mediante caracteres especiales:
LANG=<idioma>[[_<PAÍS>].<Codificación>[@<Modificador>]]
30.4.1 Ejemplos
Los códigos de idioma y país se deben definir juntos. El idioma sigue la norma ISO 639,
que está disponible en http://www.evertype.com/standards/iso639/
iso639-en.html y en http://www.loc.gov/standards/iso639-2/.
Los códigos de países están definidos en la norma ISO 3166, que está disponible en
Funciones especiales de SUSE Linux
503
http://www.din.de/gremien/nas/nabd/iso3166ma/codlstp1/en
_listp1.html.
Sólo se pueden definir valores para los que haya archivos de descripción en /usr/
lib/locale que se puedan utilizar. Se pueden crear archivos de descripción adicionales a partir de los archivos de /usr/share/i18n usando el comando localedef.
Los archivos de descripción forman parte del paquete glibc-i18ndata. Se puede
crear un archivo de descripción para es_ES.UTF-8 (para el español de España) con:
localedef -i es_ES@euro -f UTF-8 [email protected]
LANG=es_ES.UTF-8
Éste es el ajuste por defecto si se selecciona el español de España durante la instalación. Si selecciona otro idioma, se habilitará dicho idioma, pero UTF-8 seguirá
siendo el tipo de codificación de caracteres.
LANG=es_ES.ISO-8859-1
De este modo se configura el idioma español para España con el juego de caracteres
ISO-8859-1. Este juego de caracteres no admite el símbolo del euro, pero puede
ser útil para los programas que no se hayan actualizado todavía para usar UTF-8.
La cadena que define el conjunto de caracteres (ISO-8859-1, en este caso) la
utilizan programas como Emacs.
LANG=es_ES@euro
Este ejemplo incluye explícitamente el símbolo del euro en los ajustes del idioma.
En realidad, este ajuste está obsoleto porque UTF-8 incluye también el símbolo del
euro. Es útil sólo para las aplicaciones que no admitan UTF-8, sino ISO-8859-15.
SuSEconfig lee las variables de /etc/sysconfig/language y escribe los cambios
necesarios en /etc/SuSEconfig/profile y en /etc/SuSEconfig/csh
.cshrc. /etc/profile lee el archivo /etc/SuSEconfig/profile (lo usa
como fuente), mientras que /etc/csh.cshrc usa como fuente /etc/
SuSEconfig/csh.cshrc. De esta forma, los ajustes están disponibles para todo
el sistema.
Los usuarios pueden modificar los valores por defecto del sistema editando convenientemente el archivo ~/.bashrc. Por ejemplo, si la configuración del sistema es español
de España (es_ES) pero el usuario no desea que los mensajes de los programas se
muestren en este idioma, deberá incluir, por ejemplo, LC_MESSAGES=en_US para
que los mensajes se muestren en inglés de Estados Unidos.
504
30.4.2 Ajustes para la compatibilidad con
el idioma
Los archivos de la categoría de mensajes normalmente se almacenan sólo en el directorio
de idioma correspondiente (por ejemplo, en) para tener una alternativa. Si establece
LANG en en_US y el archivo de mensajes de /usr/share/locale/en_US/LC
_MESSAGES no existe, se usará como alternativa /usr/share/locale/en/LC
_MESSAGES.
También se puede definir una cadena alternativa por ejemplo, para el bretón (en el caso
del francés) o para el gallego (en el caso del español y el portugués):
LANGUAGE="br_FR:fr_FR"
LANGUAGE="gl_ES:es_ES:pt_PT"
Si lo desea, también puede usar las variantes noruegas nynorsk y bokmål (usando no
como alternativa):
LANG="nn_NO"
LANGUAGE="nn_NO:nb_NO:no"
o
LANG="nb_NO"
LANGUAGE="nn_NO:nb_NO:no"
En el caso del noruego, hay que tener en cuenta que LC_TIME también se trata de
forma diferente.
Un problema que puede surgir es que el separador utilizado para delimitar grupos de
dígitos no se reconozca correctamente. Esto ocurre si LANG está establecido sólo como
un código de idioma de dos letras como, por ejemplo, de, y la definición que utiliza
glibc se encuentra en /usr/share/lib/de_DE/LC_NUMERIC. En este caso,
LC_NUMERIC debe configurarse como de_DE para que la definición del separador
sea evidente para el sistema.
Funciones especiales de SUSE Linux
505
30.4.3 Información adicional
• El GNU C Library Reference Manual (Manual de referencia sobre la biblioteca C
de GNU), capítulo “Locales and Internationalization” (Configuraciones regionales
e internacionalización). Se incluye en glibc-info.
• Markus Kuhn, UTF-8 and Unicode FAQ for Unix/Linux (Preguntas frecuentes sobre
Unicode y UTF-8 para Unix y Linux), en http://www.cl.cam.ac.uk/
~mgk25/unicode.html.
• Bruno Haible, Unicode-Howto (Procedimientos de Unicode): /usr/share/doc/
howto/en/html/Unicode-HOWTO.html.
506
Funcionamiento de la impresora
31
CUPS es el sistema de impresión estándar de SUSE Linux. CUPS está muy orientado
al usuario. En muchos casos, es compatible con LPRng o puede adaptarse de forma
relativamente fácil. LPRng se incluye en SUSE Linux únicamente por razones de
compatibilidad.
Las impresoras pueden distinguirse por la interfaz, como de puerto USB o de red, y por
el lenguaje de impresión. Al comprar una impresora, asegúrese de que tiene una interfaz
compatible con el hardware y un lenguaje de impresión adecuado. Las impresoras se
pueden clasificar en función de los tres lenguajes de impresión siguientes:
Impresoras PostScript
PostScript es el lenguaje de impresión en el que la mayor parte de los trabajos de
impresión de Linux y Unix se generan y se procesan por el sistema de impresión
interno. Es un lenguaje ya bastante antiguo y, aun así, muy eficaz. Si la impresora
puede procesar directamente documentos PostScript y no es necesaria una conversión
posterior de éstos en el sistema de impresión, se reduce el número de fuentes de
errores posibles. Puesto que las impresoras PostScript están sujetas a cuantiosos
costes de licencia, normalmente su precio es superior al del resto de impresoras que
no disponen de un intérprete PostScript.
Impresora estándar (lenguajes como PCL y ESC/P)
Aunque estos lenguajes de impresión son bastante antiguos, continúa su expansión
para hacer frente a las nuevas funciones de las impresoras. En el caso de lenguajes
de impresión conocidos, el sistema de impresión puede convertir trabajos PostScript
al lenguaje correspondiente con la ayuda de Ghostscript. Esta fase del proceso se
denomina "interpretación". Los lenguajes más conocidos son PCL, que se utiliza
sobre todo con impresoras HP y sus clónicas, y ESC/P, que utilizan las impresoras
Funcionamiento de la impresora
507
Epson. Estos lenguajes de impresión son, por lo general, compatibles con Linux y
tienen como resultado una impresión de notable calidad. Es posible que Linux no
admita algunas funciones de impresoras extremadamente nuevas y sofisticadas, ya
que los desarrolladores de código abierto pueden estar trabajando aún en ellas. A
excepción de los controladores hpijs desarrollados por HP, actualmente no hay
ningún fabricante de impresoras que desarrolle controladores Linux y los ponga a
disposición de los distribuidores de Linux con licencia de código abierto. La mayor
parte de estas impresoras tienen un precio medio.
Impresoras con lenguaje de impresión propio (normalmente impresoras GDI)
Normalmente, tan sólo hay uno o varios controladores de Windows disponibles
para las impresoras con lenguaje de impresión propio. Son impresoras que no admiten
ninguno de los lenguajes de impresión habituales y que utilizan un lenguaje sujeto
a cambio al iniciarse una nueva versión del modelo en cuestión. Si desea obtener
más información, consulte la Sección 31.7.1, “Impresoras sin compatibilidad con
lenguaje de impresión estándar” (p. 524).
Antes de comprar una nueva impresora, compruebe su compatibilidad en las siguientes
fuentes:
• http://cdb.suse.de/ (base de datos de impresoras de SUSE Linux)
• http://www.linuxprinting.org/ (base de datos de impresoras de LinuxPrinting.org)
• http://www.cs.wisc.edu/~ghost/ (página web de Ghostscript)
• /usr/share/doc/packages/ghostscript/catalog.devices (lista
de controladores incluidos)
Las bases de datos en línea siempre especifican el estado de compatibilidad con Linux
más actualizado. No obstante, una distribución Linux tan sólo puede integrar los controladores disponibles en el momento de producción. Por lo tanto, es posible que una
impresora que tenga, en un momento dado, el estado “perfectly supported” (compatibilidad perfecta) no tuviera este estado cuando se inició la última versión de SUSE Linux.
De este modo, las bases de datos no indican necesariamente el estado correcto, sino
que sólo proporcionan una aproximación.
508
31.1
Flujo de trabajo del sistema de
impresión
El usuario crea un trabajo de impresión. Este trabajo consta de datos que van a imprimirse, junto con información para el gestor de cola, como el nombre de la impresora o
el nombre de la cola de impresión y, de forma opcional, información para el filtro, como
las opciones de la impresora específica.
Hay una cola de impresión específica para cada impresora. El gestor de cola puede
mantener el trabajo de impresión en la cola hasta que la impresora deseada se encuentre
preparada para la recepción de datos. Cuando esté lista, el gestor de cola enviará a la
impresora los datos mediante el filtro y el sistema secundario.
El filtro convierte los datos que el usuario desea imprimir (ASCII, PostScript, PDF,
JPEG, etc.) a los datos de la impresora específica (PostScript, PCL, ESC/P, etc.). Las
funciones de la impresora se describen en los archivos PPD. Un archivo PPD contiene
las opciones de impresora específica con los parámetros necesarios para habilitarlas en
la impresora. El sistema de filtros comprueba que las opciones seleccionadas por el
usuario estén habilitadas.
Si utiliza una impresora PostScript, el sistema de filtros convierte los datos a PostScript
de la impresora específica. Para ello, no se necesita un controlador de impresora. Si
utiliza una impresora que no sea PostScript, el sistema de filtros convierte los datos a
los de la impresora específica mediante Ghostscript. Para ello, se necesita un controlador
de impresora Ghostscript adecuado para su impresora. El sistema secundario recibe del
filtro los datos de la impresora específica y los transfiere a la impresora.
31.2
Métodos y protocolos de
conexión de impresoras
Hay varias posibilidades de conexión de una impresora al sistema. La configuración
del sistema de impresión CUPS no distingue entre una impresora local y una impresora
conectada al sistema a través de la red. Las impresoras locales, en Linux, deben conectarse de la forma descrita en el manual del fabricante de la impresora. CUPS admite
conexiones en serie, USB, paralelas y SCSI. Para obtener más información sobre la
conexión de impresoras, consulte el artículo CUPS in a Nutshell (CUPS en pocas palaFuncionamiento de la impresora
509
bras) en la base de datos de asistencia en http://portal.suse.com. Para encontrar el artículo, escriba cups en el cuadro de diálogo de búsqueda.
AVISO: Conexión por cable a la máquina
Al conectar la impresora a la máquina, recuerde que tan sólo los dispositivos
USB pueden conectarse y desconectarse durante el funcionamiento. El sistema
debería cerrarse antes de cambiar otro tipo de conexiones.
31.3
Instalación del software
PPD (Descripción de impresora PostScript) es el lenguaje que describe las propiedades,
como la resolución, y las opciones, como la disponibilidad de unidad dúplex. Estas
descripciones son necesarias para utilizar varias opciones de impresora en CUPS. Sin
un archivo PPD, los datos de impresión serán reenviados a la impresora “en bruto”, lo
que no resulta conveniente. A lo largo de la instalación de SUSE Linux, muchos archivos
PPD se preinstalan para que puedan usarse incluso en impresoras que no admitan
PostScript.
Para configurar una impresora PostScript, el mejor método es conseguir un archivo
PPD. Hay muchos archivos PPD disponibles en el paquete manufacturer-PPDs,
que se instala automáticamente aun con una instalación estándar. Consulte la Sección 31.6.3, “Archivos PPD en varios paquetes” (p. 521) y la Sección 31.7.2, “Inexistencia de archivo PPD adecuado para una impresora PostScript” (p. 525).
Los archivos PPD nuevos pueden almacenarse en el directorio /usr/share/cups/
model/ o añadirse al sistema de impresión con YaST (consulte la “Configuración
manual” (p. 512)). Posteriormente, el archivo PPD podrá seleccionarse durante la instalación.
Tenga cuidado en el caso de que un fabricante de impresoras le indique que instale paquetes de software completos y que, además, modifique los archivos de configuración.
En primer lugar, este tipo de instalación tendría como resultado la pérdida de la compatibilidad que SUSE Linux proporciona; y, en segundo lugar, es posible que los comandos
de impresión funcionaran de forma distinta y que dispositivos de otros fabricantes dejaran de funcionar en el sistema. Por esta razón, no se recomienda efectuar la instalación
del software del fabricante.
510
31.4
Configuración de la impresora
Tras conectar la impresora al equipo e instalar el software, instale la impresora en el
sistema. Esta instalación debería llevarse a cabo utilizando las herramientas que se
distribuyen con SUSE Linux. Dado que SUSE Linux hace especial hincapié en la seguridad, las herramientas de otros fabricantes a menudo presentan ciertas dificultades con
respecto a las restricciones de seguridad y, con ello, dan lugar a más problemas que
ventajas. Consulte la Sección 31.6.1, “Servidor y cortafuegos CUPS” (p. 518) y la Sección 31.6.2, “Cambios en el servicio de impresión CUPS” (p. 520) para obtener más
información sobre la solución de problemas.
31.4.1 Impresoras locales
Si se detecta una impresora local sin configurar al iniciar sesión, YaST comienza a
configurarla. Para ello, se utilizan los mismos cuadros de diálogo que en la descripción
de la configuración siguiente.
Para configurar la impresora, seleccione Hardware → Printer (Impresora) en el centro
de control de YaST. Con esto, se abre la ventana principal de configuración de la impresora, en cuya parte superior se enumeran los dispositivos detectados. En la parte
inferior se enumeran todas las colas configuradas hasta ese momento. Si no se ha detectado la impresora, configúrela manualmente.
IMPORTANTE
Si la entrada Printer (Impresora) no se encuentra disponible en el centro de
control de YaST, es probable que el paquete yast2-printer no esté instalado. Para solucionar este problema, instale el paquete yast2-printer y reinicie YaST.
Configuración automática
YaST podrá configurar la impresora de forma automática si el puerto paralelo o USB
puede configurarse automáticamente y se puede detectar la impresora conectada. La
base de datos de la impresora también debe contener la cadena de ID de la impresora
que YaST recupera durante la detección automática de hardware. Si el ID del hardware
no coincide con la designación del modelo, seleccione este último manualmente.
Funcionamiento de la impresora
511
Para asegurarse de que todo funciona correctamente, todo valor de configuración debe
comprobarse con la función de prueba de impresión de YaST. La página de prueba
también proporciona información relevante sobre la configuración sobre la que se ha
efectuado la prueba.
Configuración manual
Si no se cumplen los requisitos de la configuración automática o si desea una personalizada, configure la impresora manualmente. Es posible que YaST sea capaz de determinar automáticamente los ajustes correctos o, al menos, hacer una selección previa
razonable en función de la corrección de la detección automática y la cantidad de información sobre el modelo de impresora que se encuentre en la base de datos.
Deben configurarse los siguientes parámetros:
Hardware Connection (Port) (Conexión de hardware [Puerto])
La configuración de la conexión de hardware depende de que YaST haya sido capaz
de hallar la impresora durante la detección automática del hardware. Si YaST ha
sido capaz de detectar el modelo de impresora automáticamente, se puede suponer
que la conexión de la impresora funciona en el nivel de hardware y los ajustes no
necesitan cambios al respecto. Si YaST no es capaz de detectar el modelo de la
impresora, puede haber algún problema con la conexión en el nivel de hardware.
En tal caso, la configuración de la conexión exige cierta intervención manual.
En el cuadro de diálogo Printer Configuration (Configuración de la impresora),
pulse Configure (Configurar) para iniciar el flujo de trabajo de configuración manual.
En el mismo cuadro, seleccione el valor Printer Type (Tipo de impresora) que le
corresponda (por ejemplo USB printer [Impresora USB]) y, mediante Next
(Siguiente), especifique el valor de Printer Connection (Conexión de la impresora)
y seleccione el dispositivo.
Name of the Queue (Denominación de la cola)
El nombre de la cola se utiliza con los comandos de impresión. Este nombre debería
ser relativamente corto y estar formado exclusivamente por letras minúsculas y
números. En el cuadro de diálogo siguiente (Queue name [Nombre de la cola]), especifique el valor de Name for printing (Nombre para la impresión).
Printer Model and PPD File (Modelo de impresora y archivo PPD)
Todos los parámetros de la impresora específica, como el controlador Ghostscript
que se va a utilizar y los parámetros del filtro de la impresora, se almacenan en un
512
archivo PPD (Descripción de impresora PostScript). Para obtener más información
sobre los archivos PPD, consulte la Sección 31.3, “Instalación del software” (p. 510).
Para muchos modelos de impresora, están disponibles varios archivos PPD (por
ejemplo, en el caso de que varios controladores Ghostscript funcionen en el modelo
en cuestión). Al seleccionar un fabricante y un modelo en el cuadro de diálogo siguiente (Printer model [Modelo de impresora]), seleccione el archivo PPD que le
corresponde a la impresora. Si varios archivos PPD se encuentran disponibles para
ese modelo, YaST establece uno de ellos por defecto (normalmente, el que aparece
marcado como recommended [recomendado]). Puede cambiar el archivo PPD
seleccionado en el siguiente cuadro de diálogo con Edit (Editar).
Para los modelos que no sean PostScript, el controlador Ghostscript crea todos los
datos de la impresora específica. Por esta razón, la configuración del controlador
es el factor individual de mayor importancia en la determinación de la calidad de
impresión. El tipo de controlador Ghostscript (archivo PPD) seleccionado y las opciones que para él se especifican determinan la calidad de impresión. En caso necesario, cambie las opciones adicionales (que el archivo PPD pone a su disposición)
tras seleccionarEdit (Editar).
Figura 31.1
Selección del modelo de la impresora
Funcionamiento de la impresora
513
Imprima siempre la página de prueba para comprobar que los ajustes funcionan
como es debido. Si el resultado no es el esperado (con varias páginas casi vacías,
por ejemplo), debería poder interrumpir el funcionamiento de la impresora retirando
todo el papel y, a continuación, deteniendo la prueba desde YaST.
Si la base de datos de la impresora no incluye ninguna entrada para su modelo,
puede añadir un archivo PPD nuevo (seleccionando Add PPD File to Database
[Añadir archivo PPD a la base de datos]) o utilizar un conjunto de archivos PPD
genéricos para hacer que la impresora funcione con uno de los lenguajes de impresión
estándar. Para ello, seleccione UNKNOWN MANUFACTURER (Fabricante desconocido) como su fabricante de impresora.
Advanced Settings (Ajustes avanzados)
Por lo general, no necesita efectuar ningún cambio en estos ajustes.
31.4.2 Impresoras de red
Una impresora de red admite varios protocolos, algunos de ellos incluso de forma simultánea. Aunque la mayor parte de los protocolos admitidos son estandarizados, algunos
fabricantes pueden expandir (modificar) el estándar porque llevan a cabo pruebas en
sistemas que aún no lo aplican correctamente o porque quieren proporcionar ciertas
funciones que no están disponibles con el estándar en cuestión. Los fabricantes proporcionan controladores únicamente para unos pocos sistemas operativos, con lo que eliminan las dificultades que surgen con esos sistemas. Desafortunadamente, en contadas
ocasiones se proporcionan controladores para Linux. La situación actual impide dar
por sentado que todo protocolo funciona sin problemas en Linux. Por lo tanto, es posible
que necesite probar con varias opciones para lograr una configuración funcional.
CUPS admite los protocolos LPD, IPP y SMB y de socket. A continuación se presenta
información detallada sobre estos protocolos:
Socket (zócalo)
Socket (zócalo) hace referencia a una conexión que permite el envío de datos a un
zócalo de Internet sin efectuar antes un acuerdo de datos. Algunos de los números
de puerto de zócalos usados con mayor frecuencia son 9100 o 35. Un ejemplo de
URI de dispositivo es socket://host-printer:9100/.
514
LPD (daemon de impresora de línea)
El protocolo LPD probado se describe en RFC 1179. Bajo este protocolo, algunos
datos relacionados con trabajos, como el ID de la cola de impresión, se envían antes
que propios datos de impresión. Por lo tanto, debe especificarse una cola de impresión
al configurar el protocolo LPD para la transmisión de datos. Los productos de varios
fabricantes de impresoras son lo suficientemente flexibles como para aceptar cualquier nombre para la cola de impresión. Si fuera necesario, el manual de la impresora debería indicar qué nombre utilizar. A menudo se utilizan nombres como LPT,
LPT1, LP1 o similares. También puede configurarse una cola LPD en un host Linux
o Unix diferente en el sistema CUPS. El número de puerto de un servicio LPD es
515. Un ejemplo de URI de dispositivo es lpd://host-printer/LPT1.
IPP (Protocolo de impresión de Internet)
IPP es un protocolo relativamente nuevo (1999) basado en el protocolo HTTP. Con
IPP, se transmite una cantidad mayor de datos relacionados con el trabajo que con
otros protocolos. CUPS utiliza IPP para la transmisión de datos internos. Este es el
protocolo más utilizado para el reenvío de colas entre dos servidores CUPS. El
nombre de la cola de impresión es necesario para la configuración correcta de IPP.
El número de puerto para SIP es el 631. Dos ejemplos de URI de dispositivo son
ipp://host-printer/ps y ipp://host-cupsserver/printers/ps.
SMB (Recurso compartido de Windows)
CUPS también admite la impresión en impresoras conectadas a recursos compartidos
de Windows. El protocolo que se utiliza para tal propósito es SMB. SMB utiliza
los números de puerto 137, 138 y 139.
smb://user:password@workgroup/server/printer,
smb://user:password@host/printer y smb://server/printer
son varios ejemplos de URI de dispositivo.
El protocolo que admite la impresora debe determinarse antes de la configuración. Si
el fabricante no proporciona la información necesaria, el comando nmap, que viene
con el paquete nmap, puede utilizarse para averiguar el protocolo. nmap comprueba
todos los puertos abiertos de un host. Por ejemplo:
nmap -p 35,137-139,515,631,9100-10000 printerIP
Configuración de CUPS en una red mediante YaST
Las impresoras de red deben configurarse mediante YaST. YaST facilita el procedimiento de configuración y está óptimamente equipado para vencer las restricciones de segu-
Funcionamiento de la impresora
515
ridad de CUPS (consulte la Sección 31.6.2, “Cambios en el servicio de impresión CUPS”
(p. 520)). Para informarse sobre las directrices de instalación de CUPS en una red,
consulte el artículo CUPS in a Nutshell (CUPS en pocas palabras) en la base de datos
de asistencia en http://portal.suse.com.
Select Other (not detected) (Seleccionar otro [no detectado]) y haga clic en Configure
(Configurar). Salvo que el administrador de red especifique lo contrario, pruebe con la
opción Print Directly to a Network Printer (Imprimir directamente en impresora de
red) y siga el procedimiento local correspondiente.
Configuración mediante herramientas de líneas de
comando
De forma alternativa, CUPS puede configurarse con herramientas de línea de comando
como lpadmin y lpoptions. Se necesita un URI (Identificador de recurso uniforme)
que conste de un sistema secundario, como usb, además de parámetros como /dev/
usb/lp0. Por ejemplo, el URI completo podría ser parallel:/dev/lp0 (impresora conectada al primer puerto paralelo) o usb:/dev/usb/lp0 (primera impresora
detectada, conectada al puerto USB).
Con lpadmin, el administrador de servidor CUPS puede añadir, eliminar o gestionar
colas de clase y de impresión. Para añadir una cola de impresión, utilice la siguiente
sintaxis:
lpadmin -p queue -v device-URI \
-P PPD-file -E
Con ello, el dispositivo (-v) se encontrará disponible como queue (-p) mediante el
archivo PPD especificado (-P). Esto significa que debe saber cuál es el archivo PPD
y el nombre del dispositivo si desea configurar la impresora manualmente.
No utilice -E como primera opción. Para todos los comandos CUPS, si -E se utiliza
como primer argumento, se establece una conexión cifrada. Para habilitar la impresora,
debe utilizarse -E como se muestra en el siguiente ejemplo:
lpadmin -p ps -v parallel:/dev/lp0 -P \
/usr/share/cups/model/Postscript.ppd.gz -E
El siguiente ejemplo ilustra la cómo configurar una impresora de red:
lpadmin -p ps -v socket://192.168.1.0:9100/ -P \
/usr/share/cups/model/Postscript-level1.ppd.gz -E
516
Para conocer más opciones de lpadmin, consulte la página Man de lpadmin(1).
Durante la instalación del sistema, algunas opciones se establecen como por defecto.
Estas opciones pueden modificarse en cada trabajo de impresión (en función del uso
de la herramienta de impresión). También es posible cambiar con YaST estas opciones
por defecto. Mediante herramientas de línea de comando, establezca las opciones como
por defecto como se especifica a continuación:
1 En primer lugar, enumere todas las opciones:
lpoptions -p queue -l
Ejemplo:
Resolution/Output Resolution: 150dpi *300dpi 600dpi
La opción por defecto activada se marca anteponiendo un asterisco (*).
2 Cambie la opción con lpadmin:
lpadmin -p queue -o Resolution=600dpi
3 Compruebe el nuevo ajuste:
lpoptions -p queue -l
Resolution/Output Resolution: 150dpi 300dpi *600dpi
Cuando un usuario normal ejecuta lpoptions, los ajustes se escriben en ~/
.lpoptions. Los ajustes root se escriben en /etc/cups/lpoptions.
31.5
Configuración para aplicaciones
Las aplicaciones utilizan las colas de impresión existentes del mismo modo en que lo
hacen las herramientas de línea de comandos. Normalmente, no es necesario volver a
configurar la impresora para una aplicación concreta, puesto que debería ser capaz de
imprimir desde aplicaciones utilizando las colas disponibles.
Para imprimir desde la línea de comandos, escriba lp -d nombredecola
nombredearchivo, sustituyendo nombredecola y nombredearchivo por
los nombres correspondientes.
Funcionamiento de la impresora
517
Algunas aplicaciones utilizan el comando lp para llevar a cabo la impresión. En estos
casos, escriba el comando correcto en el cuadro de diálogo de impresión de la aplicación
(normalmente sin especificar nombredearchivo); por ejemplo, lp -d
nombredecola. Para hacer esto con programas de KDE, habilite Print through an
external program (Imprimir mediante programa externo). En caso contrario, no podrá
introducir el comando de impresión.
Herramientas como xpp y kprinter del programa de KDE proporcionan una interfaz
gráfica para elegir entre colas y definir las opciones estándar de CUPS y las opciones
de la impresora específica que se habilitan gracias al archivo PPD. Puede utilizar
kprinter como la interfaz de impresión estándar de las aplicaciones que no sean de KDE,
especificando kprinter o kprinter --stdin como el comando de impresión
en los cuadros de diálogo de las aplicaciones en cuestión. El comportamiento mismo
de la aplicación determina cuál de estos dos comandos utilizar. Si se configura correctamente, la aplicación debería llamar al cuadro de diálogo de kprinter siempre que la
primera dé lugar a un trabajo de impresión. De este modo, puede utilizar el cuadro de
diálogo para seleccionar una cola y definir otras opciones de impresión. Esto requiere
que la propia configuración de impresión de la aplicación no entre en conflicto con la
de kprinter y que las opciones de impresión tan sólo se cambien mediante kprinter
después de su habilitación.
31.6
Funciones especiales en SUSE
Linux
Se ha llevado a cabo una adaptación de varias funciones de CUPS para SUSE Linux.
Aquí se tratan algunos de los cambios más importantes.
31.6.1 Servidor y cortafuegos CUPS
Hay varias formas de configurar CUPS como cliente de un servidor de red.
1.
518
Para cada cola en un servidor de red, puede configurar una cola local mediante
la que reenviar todos los trabajos al servidor de red correspondiente. Por lo general, no se recomienda hacer esto, puesto que todas las máquinas clientes deben
configurarse nuevamente siempre que cambie la configuración del servidor de
red.
2.
Los trabajos de impresión también pueden reenviarse directamente a un servidor
de red. Para este tipo de configuración, no ejecute un daemon CUPS local. lp
o las llamadas a las bibliotecas correspondientes a otros programas pueden enviar
trabajos directamente al servidor de red. No obstante, esta configuración no
funciona si también desea imprimir en una impresora local.
3.
El daemon CUPS puede escuchar a los paquetes de difusión IPP que envían otros
servidores de red para anunciar las colas disponibles. Para utilizar este método,
debe abrirse el puerto 631/UDP para los paquetes entrantes.
Esta es la mejor configuración CUPS para imprimir en servidores CUPS remotos.
No obstante, existe el riesgo de que un atacante envíe difusiones IPP con colas
y de que el daemon local acceda a la cola falsa. Si entonces se muestra la cola
con el mismo nombre que el de otra cola del servidor local, es posible que el
propietario del trabajo crea que éste se ha enviado a un servidor local, cuando
en realidad se ha enviado al servidor del atacante.
YaST puede hallar servidores CUPS explorando todos los host de la red para ver si
ofrecen este servicio y escuchando las difusiones IPP. El segundo método se utiliza
durante la instalación del sistema para encontrar servidores CUPS para este propósito.
Se requiere que el puerto 631/UDP esté abierto para los paquetes entrantes. La utilización
del segundo método para abrir un puerto para configurar el acceso a colas remotas
puede suponer un riesgo para la seguridad, puesto que sería posible que un atacante
difundiera un servidor que podrían aceptar los usuarios.
El ajuste por defecto del cortafuegos que se muestra en el cuadro de diálogo es el de
rechazar difusiones IPP en cualquier interfaz. En consecuencia, el segundo método de
detección de colas remotas y el tercer método para obtener acceso a ellas no pueden
funcionar. Por lo tanto, la configuración del cortafuegos debe modificarse marcando
una de las interfaces como internal (Interna), con lo que el puerto se abre por defecto;
o bien abriendo el puerto de una interfaz external (Externa) de forma explícita. Por
razones de seguridad, ningún puerto está abierto por defecto.
La configuración del cortafuegos propuesta debe configurarse para permitir que CUPS
detecte colas remotas durante la instalación y acceda a servidores remotos desde el
sistema local durante el funcionamiento normal. De forma alternativa, los usuarios
pueden detectar servidores CUPS explorando activamente los hosts de red local o
configurar todas las colas manualmente. No obstante, este método no se recomienda a
causa de las razones que se mencionaron al comienzo de esta sección.
Funcionamiento de la impresora
519
31.6.2 Cambios en el servicio de impresión
CUPS
Estos cambios se aplicaron inicialmente para SUSE Linux 9.1.
Ejecución de cupsd el usuario lp
Al iniciarse, cupsd cambia del usuario root al usuario lp. Con ello, se proporciona
un nivel de seguridad muy superior, ya que el servicio de impresión CUPS no se ejecuta
con permisos sin restricciones, sino únicamente con los permisos necesarios para el
servicio de impresión.
No obstante, la autenticación (comprobación de la contraseña) no puede efectuarse
mediante /etc/shadow, puesto que lp no tiene acceso a /etc/shadow. En lugar
de esto, debe utilizarse la autenticación del CUPS específico por medio de /etc/
cups/passwd.md5. Para ello, deben especificarse en /etc/cups/passwd.md5
un administrador CUPS con el grupo de administración CUPS sys y una contraseña
CUPS. Esto se consigue escribiendo lo que aparece a continuación como root:
lppasswd -g sys -a CUPS-admin-name
Este ajuste también resulta esencial si se desea utilizar la interfaz Web de administración
(CUPS) o la herramienta de administración de la impresora (KDE).
Cuando cupsd se ejecuta como lp, /etc/printcap no puede generarse, puesto
que no se le permite a lp crear archivos en /etc/. Por lo tanto, cupsd crea /etc/
cups/printcap. Para garantizar que las aplicaciones que sólo pueden leer nombres
de cola de /etc/printcap sigan funcionando correctamente, /etc/printcap
actúa como un enlace simbólico que apunta a /etc/cups/printcap.
Cuando cupsd se ejecuta como lp, el puerto 631 no puede abrirse. Por lo tanto,
cupsd no puede recargarse con rccups reload. En lugar de este comando, utilice
rccups restart.
520
Funciones generalizadas para BrowseAllow y
BrowseDeny
Los permisos de acceso definidos para BrowseAllow y BrowseDeny se aplican a
todos los tipos de paquetes enviados a cupsd. Los ajustes por defecto en /etc/cups/
cupsd.conf son los siguientes:
BrowseAllow @LOCAL
BrowseDeny All
y
<Location />
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 127.0.0.2
Allow From @LOCAL
</Location>
De este modo, tan sólo los hosts LOCAL pueden tener acceso a cupsd en un servidor
CUPS. Los hosts LOCAL son hosts cuyas direcciones IP pertenecen a una interfaz que
no es PPP (interfaces cuyos indicadores IFF_POINTOPOINT no se han establecido)
y a la misma red que el servidor CUPS. Los paquetes de todos los otros hosts se rechazan
inmediatamente.
Activación por defecto de cupsd
En una instalación estándar, cupsd se activa automáticamente, con lo que se habilita
un acceso cómodo a las colas de los servidores de red CUPS sin ninguna acción manual
adicional. Los elementos que aparecen en la “Ejecución de cupsd el usuario lp” (p. 520)
y la “Funciones generalizadas para BrowseAllow y BrowseDeny” (p. 521) son
condiciones previas fundamentales para esta función, puesto que, de lo contrario, la
seguridad no sería suficiente como para efectuar una activación automática de cupsd.
31.6.3 Archivos PPD en varios paquetes
La configuración de impresora YaST configura las colas para CUPS utilizando únicamente los archivos PPD instalados en /usr/share/cups/model/ en el sistema.
Para encontrar los archivos PPD adecuados para el modelo de la impresora, YaST
compara el proveedor y el modelo determinados a lo largo de la detección del hardware
Funcionamiento de la impresora
521
con aquellos que figuran en todos los archivos PPD disponibles en /usr/share/
cups/model/ en el sistema. Para ello, la configuración de impresora YaST genera
una base de datos a partir de la información del proveedor y del modelo extraída de los
archivos PPD. Al seleccionar una impresora de la lista de proveedores y modelos, recibirá los archivos PPD que coincidan con el proveedor y el modelo.
La configuración que utiliza únicamente archivos PPD y ninguna otra fuente de información distinta presenta la ventaja de que los archivos PPD en /usr/share/cups/
model/ pueden modificarse sin restricción alguna. La configuración de impresora
YaST reconoce los cambios y regenera la base de datos de proveedores y modelos. Por
ejemplo, si tan sólo se dispone de impresoras PostScript, por lo general no se necesitarán
los archivos PPD Foomatic del paquete cups-drivers o los archivos PPD GimpPrint del paquete cups-drivers-stp. En lugar de esto, los archivos PPD para las
impresoras PostScript pueden copiarse directamente en /usr/share/cups/model/
(si no existen ya en el paquete manufacturer-PPDs) para lograr una configuración
óptima de las impresoras.
Archivos PPD CUPS del paquete cups
A los archivos PPD genéricos del paquete cups se les ha añadido, como complemento,
archivos PPD Foomatic adaptados para impresoras PostScript de nivel 1 y nivel 2:
• /usr/share/cups/model/Postscript-level1.ppd.gz
• /usr/share/cups/model/Postscript-level2.ppd.gz
Archivos PPD del paquete cups-drivers
Por lo general, el filtro de impresora Foomatic foomatic-rip se utiliza junto con
Ghostscript para impresoras que no son PostScript. Los archivos PPD Foomatic adecuados tienen las entradas *NickName: ... Foomatic/Ghostscript driver
y *cupsFilter: ... foomatic-rip. Estos archivos PPD se encuentran en el
paquete cups-drivers.
YaST prefiere un archivo PPD Foomatic si un archivo PPD Foomatic con la entrada
*NickName: ... Foomatic ... (recommended) coincide con el modelo
de impresora y el paquete manufacturer-PPDs no contiene un archivo PPD más
adecuado.
522
Archivos PPD Gimp-Print del paquete
cups-drivers-stp
En lugar de foomatic-rip, el filtro CUPS rastertoprinter de Gimp-Print
puede utilizarse para varias impresoras que no sean PostScript. Este filtro y los archivos
PPD de Gimp-Print adecuados están disponibles en el paquete cups-drivers-stp.
Los archivos PPD de Gimp-Print se encuentran en /usr/share/cups/model/
stp/ y tienen las entradas *NickName: ... CUPS+Gimp-Print y
*cupsFilter: ... rastertoprinter.
Archivos PPD de fabricantes de impresoras del
paquete manufacturer-PPDs
El paquete manufacturer-PPDs contiene archivos PPD de fabricantes de impresoras
que se comercializan con una licencia de carácter suficientemente liberal. Las impresoras
PostScript deberían configurarse con el archivo PPD adecuado del fabricante de impresoras, puesto que este archivo permite utilizar todas las funciones de la impresora
PostScript. YaST prefiere un archivo PPD del paquete manufacturer-PPDs siempre
que se cumplan las siguientes condiciones:
• El proveedor y el modelo determinados a lo largo de la detección del hardware
coincide con el proveedor y el modelo que figura en un archivo PPD del paquete
manufacturer-PPDs.
• El archivo PPD del paquete manufacturer-PPDs es el único disponible para
el modelo de impresora o hay un archivo PPD Foomatic con una entrada
*NickName: ... Foomatic/Postscript (recommended) que también
coincide con el modelo de impresora.
En consecuencia, YaST no utiliza ningún archivo PPD del paquete
manufacturer-PPDs en los siguientes casos:
• El archivo PPD del paquete manufacturer-PPDs no coincide con el proveedor
y el modelo. Esto puede ocurrir si el paquete manufacturer-PPDs contiene
únicamente un archivo PPD para los modelos similares; por ejemplo, en el caso de
que no haya ningún archivo PPD separado para los modelos particulares de una
serie determinada, pero el nombre del modelo se especifique (como Funprinter
1000 series, por ejemplo) en el archivo PPD.
Funcionamiento de la impresora
523
• No se recomienda el archivo PPD PostScript de Foomatic. Puede que la causa de
esto radique en que el modelo de impresora no funciona con suficiente eficacia en
el modo PostScript; por ejemplo, la impresora puede ser poco fiable en este modo
por tener demasiado poca memoria, o ser demasiado lenta a causa de la excesiva
debilidad de su procesador. Además, es posible que la impresora no admita PostScript por defecto; por ejemplo, puede ocurrir que la compatibilidad con PostScript
tan sólo esté disponible gracias a un módulo opcional.
Si un archivo PPD del paquete manufacturer-PPDs es adecuado para una impresora PostScript, pero YaST no puede configurarla por las razones indicadas, seleccione
manualmente en YaST el modelo respectivo de impresora.
31.7
Solución de problemas
Las secciones siguientes se ocupan de algunos de los problemas relacionados con el
software y el hardware de la impresora que aparecen con más frecuencia y ofrece propuestas para solucionarlos o eludirlos.
31.7.1 Impresoras sin compatibilidad con
lenguaje de impresión estándar
Las impresoras que no admiten ningún lenguaje de impresión habitual y con las que
tan sólo es posible comunicarse mediante secuencias de control especiales se denominan
impresoras GDI. Estas impresoras sólo pueden funcionar con las versiones del sistema
operativo para las que exista un controlador comercializado por el fabricante. GDI es
una interfaz de programación desarrollada por Microsoft para dispositivos de gráficos.
El verdadero problema no radica en la interfaz de programación, sino en el hecho de
que sólo es posible comunicarse con las impresoras GDI mediante el lenguaje de impresión propio del modelo de impresora específica.
En el caso de algunas impresoras, puede cambiarse del funcionamiento en modo GDI
a uno de los lenguajes de impresión estándar. Algunos fabricantes proporcionan controladores propios para sus impresoras GDI. El inconveniente que presenta este tipo de
controladores es que no se garantiza su funcionamiento con el sistema de impresión
instalado, además de que no resultan adecuados para las distintas plataformas de hardware. Por contra, las impresoras que admiten un lenguaje de impresión estándar no
524
dependen de una versión del sistema de impresión ni de una plataforma de hardware
especiales.
En lugar de dedicar el tiempo a intentar hacer funcionar un controlador Linux para una
marca concreta, podría resultar más rentable adquirir una impresora compatible. Esto
resolvería el problema con el controlador de una vez por todas, con lo que se eliminaría
la necesidad de instalar y configurar el software especial del controlador, junto con la
de conseguir las actualizaciones de éste que podrían precisarse a raíz de desarrollos
posteriores del sistema de impresión.
31.7.2 Inexistencia de archivo PPD
adecuado para una impresora
PostScript
Si el paquete manufacturer-PPDs no contiene ningún archivo PPD adecuado para
una impresora PostScript, debería ser posible utilizar el archivo PPD desde el CD del
controlador del fabricante de la impresora, o descargar un archivo PPD adecuado de la
página Web del fabricante.
Si el archivo PPD se suministra en formato zip (.zip) o como archivo zip de extracción
automática (.exe), descomprímalo mediante unzip. En primer lugar, revise las
cláusulas de la licencia del archivo PPD. A continuación, utilice la utilidad
cupstestppd para comprobar si el archivo PPD cumple la “Adobe PostScript Printer
Description File Format Specification, version 4.3.” (Versión 4.3 de la Especificación
de formato de archivo de descripción de impresora PostScript de Adobe). Si la utilidad
devuelve el valor “FAIL”, hay errores serios en los archivos PPD y es probable que
causen problemas importantes. Los problemas de los que informe cupstestppd deben
eliminarse. En caso necesario, solicite un archivo PPD adecuado al fabricante de la
impresora.
31.7.3 Puertos paralelos
El procedimiento más seguro consiste en conectar directamente la impresora al primer
puerto paralelo y seleccionar los ajustes de puerto paralelo siguientes en el BIOS:
• I/O address: 378 (hexadecimal)
Funcionamiento de la impresora
525
• Interrupt: irrelevante
• Mode: Normal, SPP o Output Only
• DMA: inhabilitado
Si, pese a estos ajustes, no es posible la comunicación con la impresora mediante el
puerto paralelo, especifique explícitamente la dirección de entrada o salida de datos
(I/O address) de acuerdo con el ajuste del BIOS como 0x378 en /etc/modprobe
.conf. Si hay dos puertos paralelos cuyas direcciones de entrada o salida son 378 y
278 (hexadecimal), especifique estas últimas como 0x378,0x278.
Si la interrupción (Interrupt) 7 se encuentra libre, puede activarse con la cadena que se
muestra en el Ejemplo 31.1, “/etc/modprobe.conf: Modo de interrupción para el primer
puerto paralelo” (p. 526). Antes de activar el modo de interrupción, compruebe si el archivo /proc/interrupts ya se está utilizando. Tan sólo aparecen las interrupciones
que se utilizan en ese momento. Es posible que esto cambie en función de los componentes de hardware activos. Ningún otro dispositivo debe hacer uso de la interrupción
para el puerto paralelo. Si no está seguro, utilice el modo de sondeo mediante
irq=none.
Ejemplo 31.1
paralelo
/etc/modprobe.conf: Modo de interrupción para el primer puerto
alias parport_lowlevel parport_pc
options parport_pc io=0x378 irq=7
31.7.4 Conexiones de impresora de red
Identificación de problemas de red
Conecte directamente la impresora al equipo. Si desea realizar pruebas, configure
la impresora como impresora local. Si esto funciona, los problemas están relacionados
con la red.
Comprobación de la red TCP/IP
La red TCP/IP y la resolución de nombres deben ser funcional.
Comprobación de lpd remotos
Utilice el siguiente comando para comprobar si puede establecerse una conexión
TCP como lpd (puerto 515) en host:
526
netcat -z host 515 && echo ok || echo failed
Si la conexión con lpd no puede establecerse, es posible que lpd no se encuentre
activo o que haya problemas básicos de red.
Como usuario root, utilice el siguiente comando para consultar un informe de estado (posiblemente muy largo) para cola en host remoto, siempre que el lpd
respectivo se encuentre activo y el host admita consultas:
echo -e "\004queue" \
| netcat -w 2 -p 722 host 515
Si lpd no responde, es posible que no esté activo o que haya problemas básicos de
red. Si lpd responde, la respuesta debería mostrar por qué la impresión no es posible
en la cola en host. Si recibe una respuesta como la que aparece en el Ejemplo 31.2, “Mensaje de error desde lpd” (p. 527), el problema está causado por el
lpd remoto.
Ejemplo 31.2
Mensaje de error desde lpd
lpd: your host does not have line printer access
lpd: queue does not exist
printer: spooling disabled
printer: printing disabled
Comprobación de cupsd remotos
Por defecto, el servidor de red CUPS debería difundir sus colas cada 30 segundos
en puerto UDP 631. En consecuencia, el siguiente comando puede utilizarse para
comprobar si hay un servidor de red CUPS en la red.
netcat -u -l -p 631 & PID=$! ; sleep 40 ; kill $PID
Si existe una difusión de servidor de red CUPS, aparece la salida como se muestra
en el Ejemplo 31.3, “Difusión desde el servidor de red CUPS” (p. 527).
Ejemplo 31.3
Difusión desde el servidor de red CUPS
ipp://host.domain:631/printers/queue
Utilice el siguiente comando para comprobar si puede establecerse una conexión
TCP como lpd (puerto 631) en host:
netcat -z host 631 && echo ok || echo failed
Si no puede establecerse la conexión con cupsd, es posible que cupsd no esté
activo o que haya problemas básicos de red. lpstat -h host -l -t devuelve
Funcionamiento de la impresora
527
un informe de estado (posiblemente muy largo) para todas las colas en host,
siempre que el cupsd respectivo se encuentre activo y el host admita consultas.
El siguiente comando puede utilizarse para comprobar si la cola en host acepta
un trabajo de impresión que conste de un solo carácter de retorno de carro. No debería imprimirse nada. Es posible que salga una página en blanco.
echo -en "\r" \
| lp -d queue -h host
Solución de problemas de impresoras de red o servidores de impresión dedicados
A veces, los gestores de cola que se ejecutan en un servidor de impresión dedicado
pueden ocasionar problemas cuando tienen que hacer frente a muchos trabajos de
impresión. Puesto que el gestor de cola del servidor de impresión dedicado es el
causante de esto, no hay nada que el usuario pueda hacer. Como solución, eluda el
gestor de cola del servidor de impresión dedicado dirigiendo la comunicación a la
impresora conectada en el servidor de impresión dedicado directamente a través del
zócalo TCP. Consulte la Sección 31.4.2, “Impresoras de red” (p. 514).
De esta forma, la función del servidor de impresión dedicado queda relegada a la
de un convertidor de las distintas formas de transferencia de datos (red TCP/IP y
conexión de impresora local). Para utilizar este método, necesita saber el puerto
TCP del servidor de impresión dedicado. Si la impresora está conectada al servidor
de impresión dedicado y encendida, normalmente este puerto TCP puede determinarse con la utilidad nmap del paquete nmap cierto tiempo después de haber encendido el servidor de impresión dedicado. Por ejemplo, nmap dirección IP
puede dar el siguiente resultado para un servidor de impresión dedicado:
Port
23/tcp
80/tcp
515/tcp
631/tcp
9100/tcp
State
open
open
open
open
open
Service
telnet
http
printer
cups
jetdirect
Esta salida indica que la comunicación con impresora conectada al servidor de impresión dedicado puede realizarse a través del zócalo TCP en el puerto 9100. Por
defecto, nmap tan sólo comprueba varios puertos comúnmente conocidos que se
enumeran en /usr/share/nmap/nmap-services. Para comprobar todos
los puertos posibles, utilice el comando nmap
-p de_puerto-a_puerto dirección IP. Esto podría llevar cierto tiempo.
Para obtener más información, consulte la página Man de nmap.
528
Escriba un comando como:
echo -en "\rHello\r\f" | netcat -w 1 IP-address port
cat file | netcat -w 1 IP-address port
para enviar directamente cadenas de caracteres o archivos al puerto respectivo para
comprobar si puede establecer comunicación con la impresora en este puerto.
31.7.5 Impresión defectuosa sin mensajes
de error
El trabajo de impresión finaliza para el sistema de impresión cuando el sistema secundario CUPS completa la transferencia de datos al destinatario (impresora). Si el procesamiento posterior en el destinatario falla (por ejemplo, si la impresora no es capaz de
imprimir los datos de la impresora específica), el sistema de impresión no registra este
hecho. Si la impresora no es capaz de imprimir los datos específicos de impresora, seleccione un archivo PPD distinto que sea más adecuado para la impresora.
31.7.6 Colas inhabilitadas
Si falla completamente la transferencia de datos al destinatario tras varios intentos, el
sistema secundario CUPS, como usb o socket, informa de un error al sistema de
impresión (a cupsd). El sistema secundario decide si los intentos tienen sentido hasta
que la transferencia de datos se notifica como imposible, y también cuántos intentos
han de llevarse a cabo. Puesto que estos intentos se llevarían a cabo en vano, cupsd
inhabilita la impresión para la cola respectiva. Tras eliminar la causa del problema, el
administrador del sistema debe rehabilitar la impresión con el comando
/usr/bin/enable.
31.7.7 Exploración de CUPS: Supresión de
trabajos de impresión
Si un servidor de red CUPS difunde sus colas a los hosts clientes mediante la exploración
y se encuentra activo un cupsd local adecuado en los hosts clientes, el cupsd cliente
acepta trabajos de impresión de las aplicaciones y las reenvía al cupsd del servidor.
Cuando cupsd acepta un trabajo de impresión, se le asigna un nuevo número de trabajo.
Funcionamiento de la impresora
529
Por lo tanto, el número de trabajo del host cliente difiere del número de trabajo que figura en el servidor. Puesto que, normalmente, un trabajo de impresión se reenvía inmediatamente, no puede suprimirse con el número de trabajo que figura en el host cliente,
puesto que el cupsd cliente considera el trabajo de impresión como completado al
reenviarse al servidor cupsd.
Para suprimir un trabajo de impresión que se encuentra en el servidor, utilice un comando
como lpstat -h print-server -o para determinar el número de trabajo que
figura en el servidor, siempre que éste no haya completado ya el trabajo de impresión
(es decir, siempre que no la haya enviado a la impresora). El trabajo de impresión que
se encuentra en el servidor puede suprimirse mediante este número de trabajo:
cancel -h print-server queue-jobnnumber
31.7.8 Trabajos de impresión defectuosos
y errores de transferencia de datos
Los trabajos de impresión permanecen en las colas y la impresión se retoma si se apaga
la impresora o si el equipo se apaga y rearranca durante el proceso de impresión. Los
trabajos de impresión defectuosos pueden eliminarse de la cola mediante cancel.
Si un trabajo de impresión es defectuoso o tiene lugar un error en la comunicación entre
el host y la impresora, ésta imprime numerosas hojas con caracteres ininteligibles,
puesto que no es capaz de procesar los datos correctamente. Para solucionar este problema, proceda como sigue:
1 Para detener la impresión, retire todo el papel de las impresoras de inyección de
tinta o abra las bandejas del papel de las impresoras láser. Las impresoras de alta
calidad tienen un botón para cancelar la impresión en curso.
2 Es posible que el trabajo de impresión permanezca en cola, puesto que los trabajos
tan sólo se eliminan tras haberse enviado completamente a la impresora. Utilice
lpstat -o o lpstat -h servidor-de-impresión -o para comprobar la cola cuya impresión está en curso. Suprima el trabajo de impresión mediante
cancel cola-númerodeimpresión o cancel -h
servidor-de-impresión cola-númerodetrabajo.
3 Es posible que algunos datos se transfieran a la impresora aun cuando el trabajo
de impresión se ha suprimido de la cola. Compruebe si el proceso del sistema
530
secundario CUPS continúa ejecutándose para la cola respectiva y finalícelo. Por
ejemplo, para una impresora conectada al puerto paralelo, el comando fuser
-k /dev/lp0 puede utilizarse para finalizar todos los procesos que aún acceden
a la impresora (o, en términos más precisos, al puerto paralelo).
4 Restaure completamente la impresora apagándola durante cierto tiempo. A continuación, introduzca el papel y enciéndala.
31.7.9 Depuración del sistema de impresión
CUPS
Utilice el procedimiento genérico siguiente para localizar problemas en el sistema de
impresión CUPS:
1 Establezca LogLevel debug en /etc/cups/cupsd.conf.
2 Detenga cupsd.
3 Elimine /var/log/cups/error_log* para evitar tener que buscar entre
archivos de registro muy grandes.
4 Inicie cupsd.
5 Repita la acción en la que apareció el problema.
6 Compruebe los mensajes que aparecen en /var/log/cups/error_log*
para identificar la causa del problema.
31.7.10
Información adicional
En la base datos de asistencia podrán encontrarse soluciones para muchos problemas
específicos. Si experimenta problemas con las impresoras, consulte los artículos de la
base de datos de asistencia Installing a Printer (Instalación de impresoras) y Printer
Configuration from SUSE Linux 9.2 (Configuración de impresoras en SUSE Linux 9.2),
que encontrará efectuando una búsqueda mediante la palabra clave printer (impresora).
Funcionamiento de la impresora
531
Sistema HotPlug
32
El sistema HotPlug controla el inicio de casi todos los dispositivos del equipo. No sólo
se usa para los dispositivos que se pueden insertar y retirar durante la operación, sino
para todos los que se detectan mientras el sistema se arranca. Funciona en estrecha colaboración con el sistema de archivos sysfs y el comando udev, que se describen
en el Capítulo 33, Nodos de dispositivo dinámicos con udev (p. 541).
Hasta que el núcleo se arranca, sólo se inician los dispositivos absolutamente necesarios,
como el sistema bus, los discos de arranque y el teclado. El núcleo activa eventos HotPlug para todos los dispositivos detectados. El daemon udevd escucha estos eventos
y ejecuta el comando udev para crear el nodo del dispositivo y configurarlo. Para los
dispositivos que no se pueden detectar automáticamente, como las tarjetas ISA antiguas,
se utiliza una configuración estática.
Aparte de las escasas excepciones históricas, la mayoría de los dispositivos se inician
inmediatamente en cuando se puede acceder a ellos, bien durante el arranque del sistema,
bien cuando se conectan "en caliente". Durante el inicio, las interfaces se registran en
el núcleo. Este registro activa nuevos eventos HotPlug que provocan la configuración
automática de la interfaz respectiva.
En versiones anteriores de SUSE Linux se usaba un conjunto estático de datos de configuración como base para iniciar los dispositivos. Los eventos HotPlug se gestionaban
con guiones distintos, denominados agentes. En esta versión de SUSE Linux el subsistema HotPlug está integrado en udev y las reglas de udev ofrecen la funcionalidad de
los antiguos agentes HotPlug.
Los ajustes generales del subsistema HotPlug se encuentran en /etc/sysconfig/
hotplug. Se comentan todas las variables. La configuración general del dispositivo
Sistema HotPlug
533
se realiza de acuerdo a las reglas coincidentes de /etc/udev/rules.d (véase el
Capítulo 33, Nodos de dispositivo dinámicos con udev (p. 541)). Los archivos de configuración para los dispositivos específicos se encuentran en /etc/sysconfig/
hardware. La devolución de llamada del evento HotPlug que se usaba en versiones
anteriores de SUSE Linux, /proc/sys/kernel/hotplug, suele estar vacía porque
udevd recibe los mensajes HotPlug mediante un zócalo de enlace de red.
32.1
Dispositivos e interfaces
El sistema HotPlug configura interfaces además de dispositivos. Un dispositivo suele
estar conectado a un bus y ofrece la funcionalidad requerida por una interfaz. Una interfaz representa la abstracción visible para el usuario de un dispositivo completo o de
un subconjunto concreto de éste. Los dispositivos suelen requerir de controladores en
forma de módulos del núcleo para funcionar correctamente. Además, puede que se necesiten algunos controladores de nivel superior para poner la interfaz a disposición del
usuario. Las interfaces se representan casi siempre con nodos de dispositivo creados
por udev. Esta distinción entre dispositivos e interfaces es importante para comprender
el concepto general.
Los dispositivos introducidos en el sistema de archivos sysfs se encuentran en /sys/
devices. Las interfaces se pueden encontrar en /sys/class o en /sys/block.
Todas las interfaces de sysfs deben contar con un enlace a sus dispositivos. No obstante, aún hay algunos controladores que no añaden automáticamente este enlace. Sin
él, no se sabe a qué dispositivo pertenece esta interfaz y no es posible encontrar una
configuración adecuada.
Las direcciones de los dispositivos se definen mediante una descripción de dispositivo.
Puede tratarse de la vía al dispositivo en sysfs (/sys/devices/pci0000:00/
0000:00:1e.0/0000:02:00.0), una descripción del punto de conexión
(bus-pci-0000:02:00.0), un ID individual (id-32311AE03FB82538) o algo
similar. En el pasado, las direcciones de la interfaces se definían mediante sus nombres.
Estos nombres representaban una numeración simple de los dispositivos existentes y
podían cambiar al añadir o eliminar dispositivos.
Las direcciones de las interfaces también se pueden definir mediante una descripción
del dispositivo asociado. Normalmente, el contexto indica si la descripción hace referencia al propio dispositivo o a su interfaz. Entre los ejemplos típicos de dispositivos,
interfaces y descripciones están los siguientes:
534
Tarjeta de red PCI
Se trata de un dispositivo conectado al bus PCI (/sys/devices/pci0000:
00/0000:00:1e.0/0000:02:00.0 o bus-pci-0000:02:00.0) y que
tiene una interfaz de red (eth0, id-00:0d:60:7f:0b:22 o bus-pci-0000:
02:00.0). La interfaz de red es utilizada por los servicios de red o se conecta a
un dispositivo de red, como un túnel o VLAN, que a su vez cuenta con una interfaz.
Controlador SCSI PCI
Es un dispositivo (/sys/devices/pci0000:20/0000:20:01.1/host1/
1:0:0:0 o bus-scsi-1:0:0:0) que dispone varias interfaces físicas en forma
de bus (/sys/class/scsi_host/host1).
Disco duro SCSI
Es un dispositivo (/sys/devices/pci0000:20/0000:20:01.1/host1/
1:0:0:0 o bus-scsi-1:0:0:0) con varias interfaces (/sys/block/sda*).
32.2
Eventos HotPlug
Cada dispositivo y cada interfaz tienen asociados un evento HotPlug, que se procesa
con el comando udev. El núcleo activa los eventos HotPlug cuando se establece o se
elimina un enlace a un dispositivo o cuando un controlador registra o suprime una interfaz. Desde SUSE Linux 9.3, udevd recibe y procesa eventos HotPlug. El comando
udevd puede escuchar directamente a los mensajes del enlace de red del núcleo, o
bien se deberá especificar /sbin/udevsend en /proc/sys/kernel/hotplug.
El comando udevd configura el dispositivo según un conjunto de reglas (consulte el
Capítulo 33, Nodos de dispositivo dinámicos con udev (p. 541)).
32.3
Configuración del dispositivo
HotPlug
Los agentes HotPlug se han desechado en SUSE Linux 10.0. Toda la configuración de
los dispositivos se debe hacer ahora mediante reglas de udev. El comando udev ofrece
una regla de compatibilidad para llamar a los agentes personalizados existentes. No
obstante, puede resultar conveniente convertir los agentes personalizados en reglas de
udev.
Sistema HotPlug
535
Un agente HotPlug es un programa ejecutable que realiza acciones adecuadas para un
evento. Los agentes para los eventos de dispositivos se encuentran en /etc/hotplug
.d/nombre del evento y en /etc/hotplug.d/default. Todos los programas de estos directorios que cuentan con el sufijo .hotplug se ejecutan en orden alfabético.
Para facilitar la configuración de los dispositivos, suele ser suficiente con cargar un
módulo del núcleo. En algunos casos hay que llamar comandos adicionales para poder
llevar a cabo una configuración correcta. En SUSE Linux esto se gestiona habitualmente
mediante reglas de udev. No obstante, si se necesita una configuración personalizada
de dispositivo, se puede realizar mediante /sbin/hwup o /sbin/hwdown. Estos
programas buscan una configuración adecuada para el dispositivo en el directorio
/etc/sysconfig/hardware y la aplican. Por ejemplo, para impedir que un dispositivo específico se inicie, cree un archivo de configuración con un nombre adecuado
y defina el modo de inicio como manual o desactivado. Si /sbin/hwup no
encuentra ninguna configuración, busca la variable de entorno MODALIAS. Si existe,
modprobe carga automáticamente el módulo correspondiente. Los eventos HotPlug
del núcleo generan automáticamente la variable MODALIAS para los dispositivos que
requieren que se cargue un módulo. Para obtener más información, consulte la Sección 32.4, “Carga de módulos automática” (p. 537). Hay disponible más información
acerca de /sbin/hwup en el archivo /usr/share/doc/packages/
sysconfig/README y en la página Man man hwup.
Antes de llamar a los agentes de interfaz, udev suele generar un nodo de dispositivo
al que puede acceder el sistema. El comando udev habilita la asignación de nombres
persistentes a las interfaces. Para obtener más información, consulte el Capítulo 33,
Nodos de dispositivo dinámicos con udev (p. 541). Las propias interfaces se configuran
entonces de acuerdo a las reglas de udev respectivas. A continuación se describen los
procedimientos para algunas interfaces.
32.3.1 Activación de interfaces de red
Las interfaces de red se inician con /sbin/ifup y se desactivan con /sbin/ifdown.
En el archivo /usr/share/doc/packages/sysconfig/README y en la página
Man ifup se incluye más información.
Si un equipo dispone de varios dispositivos de red con distintos controladores, las designaciones de la interfaz pueden cambiar si se carga otro controlador más rápido durante el arranque del sistema. SUSE Linux procura conservar la numeración: los dispo536
sitivos retienen el nombre de interfaz que se les ha asignado durante la configuración.
Esta asignación se realiza mediante reglas de udev. Para cambiar la asignación posteriormente, se deben cambiar las reglas de udev.
La mejor solución, no obstante, consiste en utilizar designaciones de interfaz persistentes.
Es posible indicar los nombres de las interfaces individuales en los archivos de configuración. Puede obtener información adicional sobre este método en el archivo /usr/
share/doc/packages/sysconfig/README. Desde SUSE Linux 9.3, udev
también gestiona las interfaces de red, aunque no se trata de nodos de dispositivos. De
esta forma se permite el uso de nombres de interfaz persistentes de forma más estandarizada.
32.3.2 Activación de dispositivos de
almacenamiento
Las interfaces para los dispositivos de almacenamiento deben estar montadas para que
sea posible acceder a ellas. Esta característica se puede automatizar o preconfigurar
completamente. Asimismo, SUSE Linux distingue entre dispositivos del sistema y
dispositivos del usuario. Los dispositivos del sistema sólo se pueden montar automáticamente creando una entrada en /etc/fstab. Los dispositivos del usuarios se gestionan por defecto mediante el comando hal. Si se precisa una configuración distinta
para los dispositivos del usuario, es posible introducir estos dispositivos en /etc/
fstab. También es posible modificar la gestión de este dispositivo en el comando
hal. Para obtener más información acerca de hal, consulte /usr/share/doc/
packages/hal/hal-spec.html.
Se recomienda el uso de nombres de dispositivos persistentes, dado que los nombres
tradicionales pueden cambiar según la secuencia de inicio. En el Capítulo 33, Nodos
de dispositivo dinámicos con udev (p. 541) se ofrecen detalles sobre los nombres de
dispositivos persistentes.
32.4
Carga de módulos automática
Si el comando /sbin/hwup no detecta un archivo de configuración, modprobe buscará un módulo correspondiente basado en el contenido de la variable de entorno
MODALIAS. El núcleo genera esta variable de entorno para el evento HotPlug corres-
Sistema HotPlug
537
pondiente. Para utilizar un controlador distinto al estándar para el núcleo, se debe crear
un archivo de configuración de hardware adecuado en /etc/sysconfig/hardware.
32.5
Guión de arranque ColdPlug
El comando boot.coldplug es el responsable de iniciar todos los dispositivos que
no se han configurado durante el arranque. Llama al comando hwup para cada configuración de dispositivo estática designada como /etc/sysconfig/hardware/
hwcfg-static-*. Después, vuelve a reproducir todos los eventos almacenados en
/lib/klibc/events para iniciar todos los dispositivos.
32.6
Análisis de errores
32.6.1 Archivos de registro
A no ser que se indique lo contrario, el comando hotplug sólo envía unos pocos
mensajes importantes a syslog. Para obtener más información, defina la variable
HOTPLUG_DEBUG en el archivo /etc/sysconfig/hotplug como sí. Si define
esta variable con el valor máx, todos los comandos de la shell se registrarán para todos
los guiones HotPlug. Esto significa que /var/log/messages, el archivo donde
syslog almacena todos los mensajes, se hará mucho más grande. Dado que syslog
se abre durante el proceso de arranque después de hotplug y de coldplug, es posible
que los primeros mensajes no se registren. Si estos mensajes son importantes, deberá
indicar un archivo de registro distinto mediante la variable HOTPLUG_SYSLOG. Hay
información disponible acerca de este tema en /etc/sysconfig/hotplug.
32.6.2 Problemas de arranque
Si el equipo se bloquea durante el proceso de arranque, inhabilite los comandos
hotplug o coldplug escribiendo NOHOTPLUG=yes o NOCOLDPLUG=yes en el
indicador de arranque. Debido a la desactivación de HotPlug, el núcleo no emite ningún
evento de este tipo. En el sistema en ejecución es posible activar HotPlug introduciendo
el comando /etc/init.d/boot.hotplug start. Todos los eventos generados
hasta ese momento se emitirán entonces y se procesarán. Para rechazar los eventos de
538
la cola, introduzca primero /bin/true en /proc/sys/kernel/hotplug y
restablezca la entrada en /sbin/hotplug tras un tiempo. Debido a que ColdPlug
está desactivado, las configuraciones estáticas no se aplicarán. Para aplicarlas, introduzca
más adelante /etc/init.d/boot.coldplug start.
Para averiguar si un módulo concreto cargado por hotplug es el responsable del
problema, escriba HOTPLUG_TRACE=<N> en el indicador de arranque. Aparecerá una
lista en la pantalla con los nombres de todos los módulos que se van a cargar antes de
que se carguen en la práctica tras N segundos. No es posible intervenir mientras se desarrolla este proceso.
32.6.3 Grabadora de eventos
Una regla de udev ejecuta el guión /sbin/hotplugeventrecorder para cada
evento. Si ya existe un directorio /events, todos los eventos HotPlug se almacenarán
como archivos individuales en este directorio. Por lo tanto, los eventos se pueden volver
a generar para realizar pruebas. Si este directorio no existe, no se graba nada.
Sistema HotPlug
539
33
Nodos de dispositivo dinámicos con
udev
La versión 2.6 del núcleo de Linux presenta una nueva solución de espacio del usuario
para un directorio de dispositivo dinámico /dev con designaciones de dispositivo
permanentes: udev. Ofrece sólo los archivos para dispositivos que en realidad están
presentes. Crea o elimina archivos de nodos de dispositivo normalmente ubicados en
el directorio /dev y, además, es capaz de renombrar las interfaces de red. La aplicación
previa de un /dev dinámico con devfs se ha sustituido por udev.
Tradicionalmente, los nodos de dispositivo se almacenaban en el directorio /dev en
los sistemas Linux. Había un nodo por cada tipo de dispositivo posible, sin tener en
cuenta si existían realmente en el sistema. Como resultado, este directorio contenía
miles de archivos sin utilizar. Antes de que se pudiera usar un subsistema recién añadido
o un dispositivo de núcleo, había que crear los nodos correspondientes con una aplicación
especial. El sistema de archivos devfs trajo consigo una mejora significativa porque
sólo se les proporcionaba un nodo de dispositivo en /dev a los dispositivos que realmente existían y que el núcleo conocía.
udev introduce una nueva forma de crear nodos de dispositivo. El núcleo exporta su
estado interno en sysfs y, cada vez que el núcleo reconoce un dispositivo, actualiza
la información en sysfs y envía un evento al espacio del usuario. Con la información
que sysfs ha puesto a disposición, udev hace coincidir una sintaxis de regla sencilla
con los atributos de dispositivo proporcionados y crea o elimina los nodos de dispositivo
correspondientes.
No es necesario que el usuario cree ninguna regla de udev para nuevos dispositivos. Si
hay un dispositivo conectado, se crea automáticamente el nodo de dispositivo apropiado.
Sin embargo, las reglas introducen la posibilidad de definir una directiva para controlar
la asignación de nombres de dispositivos. También se añade la posibilidad de sustituir
Nodos de dispositivo dinámicos con udev
541
un nombre de dispositivo cifrado con un nombre que sea fácil de recordar, o bien tener
nombres de dispositivo permanentes en los que dos dispositivos del mismo tipo se han
conectado a la vez.
Imaginemos que dispone de dos impresoras: una impresora láser de alta calidad y otra
de inyección de tinta en blanco y negro, ambas conectadas mediante USB. Aparecen
como /dev/usb/lpX, donde X representa un número según el orden en el que se
hayan conectado. Empleando udev, cree reglas de udev personalizadas dando a una
impresora el nombre /dev/lasercolor y a la otra /dev/inyeccion. Puesto
que udev crea estos nodos de dispositivo según las características del dispositivo,
siempre señalarán al dispositivo correcto, sin tener en cuenta el orden de conexión ni
el estado.
33.1
Creación de reglas
Antes de crear nodos de dispositivo debajo de /dev, udev lee todos los archivos de
/etc/udev/rules.d que tengan el sufijo .rules en orden alfabético. Se usa la
primera regla que coincide con un dispositivo, aunque existan otras reglas aplicables.
Los comentarios se introducen mediante el signo almohadilla (#). Las reglas tienen la
siguiente forma:
key, [key,...] NAME [, SYMLINK]
Debe especificarse al menos una clave, porque las reglas se asignan a los dispositivos
según estas claves. También es fundamental especificar un nombre. El nodo del dispositivo creado en /dev llevará este nombre. El parámetro opcional symlink permite que
los nodos se creen en otros lugares. Una regla para la impresora podría tener la siguiente
forma:
BUS=="usb", SYSFS{serial}=="12345", NAME="lp_hp", SYMLINK+="printers/hp"
En este ejemplo, hay dos claves, BUS y SYSFS{serial}. udev compara el número
de serie con el del dispositivo que está conectado al bus USB. Para asignar el nombre
lp_hp al dispositivo en el directorio /dev, todas las claves deben ser idénticas.
Además, se creará un enlace simbólico /dev/printers/hp que hace referencia al
nodo del dispositivo. De igual forma, se crea automáticamente el directorio printers
. Los trabajos de impresión pueden enviarse a /dev/printers/hp o a /dev/lp
_hp.
542
33.2
Sustitución del espacio
reservado
Los parámetros NAME y SYMLINK permiten el uso de espacios reservados para sustituir
valores especiales. El procedimiento se va a ilustrar con un sencillo ejemplo:
BUS=="usb", SYSFS{vendor}=="abc", SYSFS{model}=="xyz", NAME="camera%n"
Se sustituirá el operador %n del nombre por el número de dispositivo de la cámara como
camera0 o camera1. Otro operador útil es %k que se sustituirá por el nombre del
dispositivo estándar del núcleo, por ejemplo, hda1. También puede llamar a un programa externo en las reglas de udev y usar la cadena que se devuelva en los valores
NAME y SYMLINK. La lista completa de posibles espacios reservados está descrita en
la página Man de udev.
33.3
Concordancia de patrones en
claves
En las claves de las reglas de udev puede usar la concordancia de patrones de estilo
shell, conocida como "comodines". Por ejemplo, el carácter * se puede usar como espacio reservado de cualquier carácter mientras que ? puede emplearse para un carácter
arbitrario.
KERNEL="ts*", NAME="input/%k"
Esta regla asigna el nombre del núcleo estándar en el directorio estándar a un dispositivo
cuya designación comienza con las letras “ts”. Puede encontrar información detallada
sobre el uso de la concordancia de patrones en las reglas de udev en la página Man de
udev.
33.4
Selección de claves
Para identificar un dispositivo de manera única y distinguir varios dispositivos unos de
otros, es esencial que haya una propiedad exclusiva para cada regla de udev en funcionamiento. A continuación se enumeran algunos ejemplos de claves estándar:
Nodos de dispositivo dinámicos con udev
543
SUBSYSTEM
Subsistema del que el dispositivo forma parte
BUS
Tipo de bus del dispositivo
KERNEL
Nombre del dispositivo que usa el núcleo
ID
Número del dispositivo en el bus (por ejemplo, PCI bus ID)
SYSFS{...}
Atributos del dispositivo sysfs como la etiqueta, el proveedor o el número de serie
Las claves SUBSYSTEM e ID pueden ser útiles pero normalmente las que se usan son
BUS, KERNEL y SYSFS{...}. La configuración de udev también ofrece claves que
llaman a guiones externos y evalúan sus resultados. Podrá obtener información detallada
sobre esto en la página Man de udev.
El sistema de archivos sysfs muestra información sobre el hardware en el árbol de
directorios. Cada archivo normalmente contiene una parte de información como el
nombre, el proveedor o el número de serie del dispositivo. Cada uno de estos archivos
se puede usar para que concuerde con una clave. Sin embargo, para emplear varias
claves SYSFS en una regla, sólo puede usar archivos en el mismo directorio que los
valores de la clave. La herramienta udevinfo puede ayudar a encontrar valores de
clave útiles y únicos.
Debe buscar un subdirectorio de /sys que se refiere al dispositivo en cuestión y que
contiene un archivo dev. Estos directorios se encuentran debajo de /sys/block o
/sys/class. Si ya existe un nodo de dispositivo para el dispositivo, udevinfo
podrá encontrar el subdirectorio correcto. El comando udevinfo -q path -n
/dev/sda muestra como resultado /block/sda. Esto quiere decir que el directorio
deseado es /sys/block/sda. Ahora llame a udevinfo con el comando
udevinfo -a -p /sys/block/sda. Los dos comandos también pueden combinarse, como en udevinfo -a -p `udevinfo -q path -n /dev/sda`.
A continuación se muestra un extracto de la información de salida:
BUS=="scsi"
ID=="0:0:0:0"
SYSFS{detach_state}=="0"
SYSFS{type}=="0"
544
SYSFS{max_sectors}=="240"
SYSFS{device_blocked}=="0"
SYSFS{queue_depth}=="1"
SYSFS{scsi_level}=="3"
SYSFS{vendor}==" "
SYSFS{model}=="USB 2.0M DSC"
SYSFS{rev}=="1.00"
SYSFS{online}=="1"
En la información de salida, busque las claves adecuadas que no cambian. Recuerde
que no puede usar claves desde directorios distintos en una regla.
33.5
Nombres permanentes para
dispositivos de almacenamiento
masivos
SUSE Linux incorpora reglas predefinidas que permiten asignar siempre las mismas
designaciones a los discos duros y otros dispositivos de almacenamiento, sin tener en
cuenta el orden en que se han inicializado. Los atributos de dispositivos únicos, como
los números de serie del hardware, los UUID (ID exclusivo universal) o las etiquetas
del sistema de archivos, pueden leerse con pequeños programas de ayuda que vienen
con udev. Los programas de ayuda proporcionan información de dispositivo específica
para el procesado de reglas de udev. Un ejemplo sencillo es que la primera regla importa
los valores recopilados desde el dispositivo SCSI en el entorno udev. La segunda regla
usa los valores importados para crear un symlink permanente.
KERNEL="sd*[!0-9]", IMPORT="/sbin/scsi_id -g -x -s $p -d %N"
KERNEL="sd*[!0-9]", SYMLINK+="$env{ID_TYPE}/by-id/$env{ID_BUS}-$env{ID_SERIAL}"
Tan pronto como un controlador de dispositivo de almacenamiento masivo se ha cargado,
registra todos los discos duros disponibles en el núcleo. Cada uno de ellos activa un
evento de bloque HotPlug que llama a udev. A continuación, udev lee las reglas para
determinar si es necesario crear un symlink.
Si se carga el controlador mediante initrd, se pierden los eventos de HotPlug. Sin
embargo, toda la información se almacenará en sysfs. La utilidad udevstart encuentra todos los archivos de dispositivo debajo de /sys/block y /sys/class e
inicia udev.
Nodos de dispositivo dinámicos con udev
545
Hay también un guión de inicio, boot.udev, que recrea todos los nodos de dispositivo durante el proceso de arranque. Sin embargo, el guión de inicio debe activarse
mediante el editor de nivel de ejecución YaST o con el comando insserv
boot.udev.
546
Sistemas de archivos en Linux
34
Linux soporta una gran variedad de sistemas de archivos. Este capítulo ofrece una
breve introducción a los sistemas de archivos más conocidos en Linux, prestando una
especial atención a su estructura y ventajas así como a sus campos de aplicación. Asimismo se ofrece información sobre el soporte de archivos grandes o “Large File Support”.
34.1
Glosario
Metadatos
Estructura interna de los datos de un sistema de archivos que garantiza el orden de
la estructura y la disponibilidad de los datos del disco duro. En resumidas cuentas,
se trata de los “datos sobre los datos”. Todo sistema de archivos posee su propia
estructura de metadatos. Aquí es donde se encuentra en parte la causa de las diferencias en cuanto a rendimiento de los sistemas de archivos. Es extremadamente importante mantener intactos los metadatos, ya que de lo contrario se podría dañar todo
el sistema de archivos.
Inode
Los inodes contienen toda la información sobre un archivo: el nombre, el tamaño,
el número de enlaces, la fecha, la hora en que fue creado, modificaciones, accesos
como “señalador” (pointer) de los bloques del disco duro y dónde se encuentra
grabado.
Sistemas de archivos en Linux
547
Journal
En relación a un sistema de archivos, un journal o diario es una estructura interna
del disco con un tipo de protocolo en el que el controlador del sistema de archivos
introduce los (meta)datos del sistema de archivos que van a ser modificados. El
“journaling” reduce enormemente el tiempo de elaboración de un sistema Linux,
ya que de este modo el controlador del sistema de archivos no debe iniciar una
búsqueda de los metadatos modificados en todo el disco. En vez de eso, basta con
ver las entradas del diario.
34.2
Los sistemas de archivos más
importantes en Linux
Contrariamente a lo que ocurría hace dos o tres años, la elección de un sistema de archivos en Linux ya no es una cuestión de segundos (¿Ext2 o ReiserFS?). A partir de la
versión 2.4, el kernel ofrece una gran selección de sistemas de archivos. A continuación
le mostramos un resumen de las funciones básicas de estos sistemas de archivos y sus
ventajas.
Tenga siempre en cuenta que no existe ningún sistema de archivos que pueda funcionar
del mismo modo con todas las aplicaciones. Cada sistema de archivos tiene puntos
fuertes y débiles que se deben de tener presentes. Ni el sistema de archivos más desarrollado de todo el mundo puede sustituir a la copia de seguridad.
Los conceptos “integridad de los datos” o “coherencia de los datos” no se refieren en
este capítulo a la coherencia de los datos que un usuario tiene guardados (los datos que
una aplicación escribe en los archivos). La coherencia de estos datos debe quedar asegurada por las aplicaciones mismas.
IMPORTANTE: Configuración de sistemas de archivos
Mientras no se indique lo contrario explícitamente, todas las acciones de particionamiento así como de creación y edición de sistemas de archivos pueden
llevarse a cabo cómodamente con YaST.
548
34.2.1 ReiserFS
Aunque oficialmente se trata de una de las prestaciones principales de la versión 2.4
del kernel, ReiserFS ha estado disponible desde la versión 6.4 de SUSE Linux como
parche para el kernel de SUSE 2.2.x. ReiserFS es producto de la labor de Hans Reiser
y del equipo de desarrollo Namesys. ReiserFS se ha perfilado como una alternativa
poderosa a Ext2. Sus grandes ventajas son: una mejor administración de la memoria
del disco duro, un rendimiento optimizado del acceso al disco y una recuperación más
rápida después de una caída del sistema.
Las principales ventajas de ReiserFS son:
Mejor administración de la memoria del disco duro
En ReiserFS, todos los datos se organizan en una estructura llamada B*-balanced
tree. La estructura de árbol contribuye a una mejor administración de la memoria
del disco duro, ya que los archivos pequeños se pueden guardar directamente en las
hojas del B*tree (árbol), en lugar de guardarlos en otro lugar y luego tener que administrar el puntero (pointer) para que apunte al sitio indicado. Además, la memoria
no se asignará en unidades de 1 a 4 Kb, sino en la unidad exactamente necesaria.
Otra ventaja es el proceso dinámico de inodes. Esto dota al sistema de archivos de
una gran flexibilidad frente a los sistemas convencionales, como por ejemplo Ext2,
en el que se debe indicar la densidad del inode en el momento de crear el sistema
de archivos.
Mejor rendimiento del acceso al disco duro
En los archivos pequeños, tanto los datos del archivo como la información (inode)
de “stat_data” se guardan uno al lado del otro. Basta con un único acceso al disco
duro para suministrar toda la información necesaria.
Rápida recuperación tras una caída del sistema
Desde el contenido de un diario al seguimiento de las pequeñas modificaciones de
metadatos, la comprobación del sistema de archivos se reduce a unos pocos segundos
incluso en sistemas de archivos grandes.
Fiabilidad gracias al registro de datos (data journaling)
ReiserFS también soporta el registro de datos y los modos “ordered” de datos (ambos
conceptos se explican con más detalle en la Sección 34.2.3, “Ext3” (p. 550)). El
modo predeterminado es data=ordered, lo que garantiza la integridad tanto de
los datos como de los metadatos. No obstante, el registro se utiliza sólo para los
metadatos.
Sistemas de archivos en Linux
549
34.2.2 Ext2
El origen de Ext2 se remonta a los primeros días de Linux. Su antecesor, el Extended
File System fue implementado en abril de 1992 e integrado en Linux 0.96c. Este sufrió
una serie de modificaciones y durante años se le conoció como Ext2 a la vez que se le
consideró el sistema de archivos más popular de Linux. Con la introducción del sistema
Journaling File y de su tiempo de elaboración tan sorprendentemente corto, Ext2 perdió
importancia.
Puede que le sirva de ayuda un pequeño resumen de los puntos fuertes de Ext2 para
que comprenda su popularidad entre los usuarios de Linux, que en cierta medida aún
hoy lo prefieren como sistema de archivos.
Estabilidad
Con el correr del tiempo, Ext2 ha sufrido muchas mejoras que le han hecho ganarse
la reputación de ser “sólido como una roca”. En caso de una caída del sistema en
la que el sistema de archivos no puede desmontarse adecuadamente, e2fsck inicia
un análisis de los datos del sistema de archivos. Los metadatos se reconstruyen y
los archivos o bloques de datos que quedan sueltos se guardan en un directorio denominado lost+found. En contraposición a (la mayoría) de los sistemas de archivos transaccionales o journaling, e2fsck analiza todo el sistema de archivos y no
sólo los bits de metadatos modificados. Esto lleva más tiempo que la comprobación
de los datos de protocolo de un sistema journaling. Dependiendo del tamaño del
sistema de archivos, puede llegar a durar más de media hora. Por esta razón, Ext2
no se escoge para ningún servidor que deba tener un alto rendimiento. Debido a que
Ext2 no debe hacerse cargo de ningún diario y a la vez necesita poca memoria, a
menudo es más rápido que otros sistemas de archivos.
Fácil actualización
Tomando como base la fortaleza de Ext2, Ext3 podría llegar a convertirse en el
sistema de archivos de la próxima generación. Su fiabilidad y estabilidad se complementarían perfectamente con las ventajas de los sistemas de archivos journaling.
34.2.3 Ext3
Ext3 fue concebido por Stephen Tweedie. A diferencia del resto de los sistemas de archivos de “última generación”, no está basado en un nuevo diseño, sino en Ext2. Ambos
sistemas de archivos están estrechamente vinculados. Un sistema de archivos Ext3 se
550
puede montar fácilmente sobre un sistema Ext2. La diferencia fundamental entre ambos
radica en que Ext3 también soporta journaling. Estas son brevemente las tres ventajas
de Ext3:
Actualización sencilla y muy fiable de Ext2
Ya que Ext3 se basa en el código de Ext2, a la vez que comparten formato tanto
para el disco como para los metadatos, las actualizaciones no son complicadas. Incluso se pueden llevar a cabo mientras el sistema de archivos Ext2 está montado.
El proceso de cambio a otro sistema de archivos journaling, como por ejemplo
ReiserFS, JFS, o XFS, puede llegar a ser muy trabajoso debido a que se deben realizar copias de seguridad de todo el sistema de archivos y después instalarlo desde
cero. Sin embargo, el cambio a Ext3 puede ser una cuestión de minutos. Además
es muy seguro, ya que resulta difícil que la reelaboración de todo un sistema de archivos desde cero no tenga errores. Si se tiene en cuenta la cantidad de sistemas
Ext2 disponibles que esperan una actualización a un sistema de archivos journaling,
se puede imaginar fácilmente el significado de Ext3 para muchos administradores
de sistemas. El pasar de Ext3 a Ext2 es tan fácil como la actualización en sentido
contrario. Tan sólo se tiene que desmontar el sistema Ext3 y montarlo como Ext2.
Fiabilidad y rendimiento
Otros sistemas de archivos journaling siguen el principio journaling de “sólo metadatos” (metadata-only). Esto significa que los metadatos permanecen en un estado
coherente, lo que sin embargo no puede garantizarse automáticamente para los datos
del sistema de archivos. Ext3 tiene capacidad para cuidar tanto de los metadatos
como de los datos mismos. Se puede configurar individualmente el detalle con el
que Ext3 debe ocuparse de los datos y metadatos. El grado más alto de seguridad
(es decir, integridad de los datos) se consigue al arrancar Ext3 en modo
data=journal; esto puede hacer que el sistema sea más lento, ya que se guardarán
en el diario tanto los datos como los metadatos. Una posibilidad relativamente
nueva consiste en la utilización del modo data=ordered, que garantiza la integridad tanto de los datos como de los metadatos a pesar de que sólo realiza journaling
para los metadatos. El controlador del sistema de archivos reúne todos los bloques
de datos relacionados con la actualización de los metadatos. Estos bloques de datos
se escriben en el disco antes de que los metadatos sean actualizados. Con esto se
consigue la coherencia de datos y metadatos sin pérdida de rendimiento. Un tercer
tipo de modo es data=writeback. De esta forma se puede escribir datos en el
sistema de archivos principal después de que los metadatos hayan pasado al diario.
Para muchos, esta opción es la mejor configuración en cuanto a rendimiento. Sin
embargo, con esta opción puede ocurrir que aparezcan viejos datos en los archivos
después de haberse producido una caída del sistema mientras se garantiza la integriSistemas de archivos en Linux
551
dad del sistema de archivos. Mientras no se indique otra opción, Ext3 arrancará con
la opción predeterminada data=ordered.
34.2.4 Conversión de un sistema de
archivos Ext2 a Ext3
Crear el diario (journal):
Ejecute el comando tune2fs -j como usuario root. tune2fs se encarga de crear
el diario Ext3 con parámetros estándar. Si por el contrario prefiere definir usted
mismo con qué tamaño y en qué dispositivo debe crearse el diario, ejecute tune2fs
-J con los parámetros size= y device=. Puede obtener información adicional
sobre tune2fs en las páginas del manual.
Determinar el tipo de sistema de archivos en /etc/fstab
Para que el sistema de archivos Ext3 sea detectado como tal, abra el archivo /etc/
fstab y cambie el tipo de sistema de archivos de la partición correspondiente de
ext2 a ext3. La modificación se aplicará tras reiniciar el sistema.
Uso de Ext3 para el sistema de archivos raíz
Para arrancar el sistema de archivos raíz (root) en ext3, hace falta integrar adicionalmente los módulos ext3 y jbd en el RAM disk inicial initrd. A continuación introduzca estos dos módulos en el archivo /etc/sysconfig/kernel
bajo INITRD_MODULES. Posteriormente ejecute el comando mk_initrd.
34.2.5 Reiser4
Inmediatamente después de que el kernel 2.6 viera la luz, un nuevo miembro se sumó
a la familia de sistemas de archivos transaccionales: Reiser4. Reiser4 se diferencia
sustancialmente de su predecesor ReiserFS (versión 3.6). Introduce el concepto de
plugins para configurar las funciones del sistema de archivos y un concepto de seguridad
más elaborado.
Concepto de seguridad muy elaborado
Durante el diseño de Reiser4, los desarrolladores pusieron especial énfasis en la
implementación de funciones relacionadas con la seguridad. Como consecuencia,
Reiser4 incorpora un conjunto de plugins de seguridad dedicados, el más importante
de los cuales introduce el concepto de elementos de archivo o “items”. Actualmente,
552
el control de acceso a los archivos se define en función del archivo. Si existe un
archivo muy grande que contiene información relevante para varios usuarios, grupos
o aplicaciones, los permisos de acceso deben ser poco precisos para incluir a todos
los interesados. En Reiser4 es posible dividir este tipo de archivos en porciones más
pequeñas (“items”). Los permisos de acceso pueden definirse para cada elemento
y usuario, permitiendo una gestión de seguridad de archivos mucho más precisa. El
archivo /etc/passwd constituye un ejemplo perfecto. Actualmente, root es el
único que puede leer y editar este archivo mientras que el resto de usuarios sólo
tiene permiso de lectura. El concepto de “items” de Reiser4 hace que sea posible
dividir este archivo en un conjunto de elementos (un “item” por cada usuario) y
permitir a usuarios o aplicaciones modificar sus propios datos sin acceder a los datos
de otros usuarios. Este concepto favorece tanto la seguridad como la flexibilidad.
Extensiones a través de plugins
Muchas de las funciones inherentes a un sistema de archivos o externas pero usadas
normalmente por sistemas de archivos se han implentado en Reiser4 en forma de
plugins. Si desea enriquecer el sistema de archivos con nuevas funciones, estos
plugins pueden añadirse fácilmente al sistema base sin necesidad de volver a compilar el kernel o reformatear el disco duro.
Estructura mejorada del sistema de archivos gracias a la asignación retardada
Al igual que XFS, Reiser4 soporta la asignación retardada (ver Sección 34.2.7,
“XFS” (p. 554)). El uso de la asignación retardada incluso para metadatos puede
resultar en una estructura global mejorada.
34.2.6 JFS
JFS, “Journaling File System”, fue desarrollado por IBM para AIX. La primera versión
beta de JFS portada a Linux llegó al entorno Linux en el verano del año 2000. La versión
1.0.0 salió a la luz en el año 2001. JFS está diseñado para cumplir las exigencias del
entorno de un servidor de alto rendimiento. Al ser un sistema de archivos de 64 bits,
JFS soporta archivos grandes y particiones LFS (Large File Support), lo cual es una
ventaja más para los entornos de servidor.
Un vistazo más detallado a JFS muestra por qué este sistema de archivos es una buena
elección para su servidor Linux:
Sistemas de archivos en Linux
553
Journaling eficaz
JFS sigue el principio de “metadata only”. En vez de una comprobación completa,
sólo se tienen en cuenta las modificaciones en los metadatos provocadas por las
actividades del sistema. Esto ahorra una gran cantidad de tiempo en la fase de recuperación del sistema tras una caída. Las actividades simultáneas que requieren más
entradas de protocolo se pueden unir en un grupo en el que la pérdida de rendimiento
del sistema de archivos se reduce en gran medida gracias a múltiples procesos de
escritura.
Eficiente administración de directorios
JFS abarca diversas estructuras de directorios. En pequeños directorios se permite
el almacenamiento directo del contenido del directorio en su inode. En directorios
más grandes se utilizan B+trees, que facilitan considerablemente la administración
del directorio.
Mejor utilización de la memoria mediante la asignación dinámica de inodes
En Ext2 es necesario indicar el grosor del inode (la memoria ocupada por la información de administración) por adelantado. Con ello se limita la cantidad máxima
de archivos o directorios de su sistema de archivos. Esto no es necesario en JFS,
puesto que asigna la memoria inode de forma dinámica y la pone a disposición del
sistema cuando no se está utilizando.
34.2.7 XFS
Pensado originariamente como sistema de archivos para sistemas operativos IRIX, SGI
comenzó el desarrollo de XFS ya a principios de la década de los noventa. Con XFS
consigue un sistema de archivos journaling de 64 bits de gran rendimiento adaptado a
las necesidades extremas de hoy en día. XFS también está indicado para el trabajo con
archivos grandes y ofrece un buen rendimiento en hardware de última generación. Sin
embargo XFS, al igual que ReiserFS, tiene la desventaja de conceder mucha importancia
a la integridad de los metadatos y muy poca a la de los datos:
Un breve resumen de las funciones clave de XFS aclarará por qué puede llegar a convertirse en un fuerte competidor de otros sistemas de archivos journaling en el tratamiento de datos.
Manejo de “grupos de asignación” (allocation groups)
En el momento de la creación de un sistema de archivos XFS, el dispositivo de
bloque (block-device) que sirve de base al sistema de archivos se divide en ocho o
554
más campos lineales de igual tamaño denominados grupos de asignación. Cada
grupo de asignación administra inodes así como memoria libre. Se puede considerar
a estos grupos prácticamente como sistemas de archivos dentro de sistemas de archivos. Puesto que estos grupos de asignación son bastante independientes, el kernel
puede dirigirse a más de uno simultáneamente. Este concepto de grupos de asignación
independientes satisface los requisitos de los sistemas con varios procesadores.
Alto rendimiento con eficiente administración de la memoria del disco
B+trees administran la memoria libre y los inodes dentro de los grupos de asignación.
El manejo de B+trees contribuye al gran rendimiento de XFS. Una característica de
XFS es la llamada asignación retardada. XFS realiza la asignación de la memoria
mediante la división en dos de los procesos. Una transacción “en suspenso” queda
guardada en RAM y el espacio en la memoria queda reservado. XFS aún no decide
dónde exactamente (en qué bloque del sistema de archivos) se almacenan los datos.
Esta decisión se retrasará hasta el último momento. Con esto, algunos datos temporales no quedan nunca almacenados en el disco, ya que cuando llegue el momento
de decidir el lugar de almacenamiento ya estarán obsoletos. Así, XFS aumenta el
rendimiento y disminuye la fragmentación del sistema de archivos. Debido a que
una asignación retardada tiene como consecuencia menos procesos de escritura que
en otros sistemas de archivos, es probable que la pérdida de datos tras una caída del
sistema durante el proceso de escritura sea mayor.
Preasignación para evitar la fragmentación del sistema de archivos
Antes de la escritura de los datos en el sistema de archivos, XFS reserva el espacio
de memoria necesario para un archivo que vaya a ser asignado. De esta forma se
reduce enormemente la fragmentación del sistema de archivos y el rendimiento
aumenta, ya que el contenido de los archivos no queda dividido por todo el sistema
de archivos.
34.3
Otros sistemas de archivos
soportados
En la Tabla 34.1, “Sistemas de archivos en Linux” (p. 556) se incluyen otros sistemas
de archivos soportados por Linux. Principalmente se soportan para garantizar la compatibilidad y el intercambio de datos entre distintos medios o sistemas operativos.
Sistemas de archivos en Linux
555
Tabla 34.1
556
Sistemas de archivos en Linux
cramfs
Compressed ROM file system: un sistema de archivos comprimido
con permiso de lectura para ROMs.
hpfs
High Performance File System: el sistema de archivos estándar
de IBM OS/2 sólo se soporta en modo de lectura.
iso9660
sistema de archivos estándar en CD-ROMs.
minix
este sistema de archivos tiene su origen en la universidad y fue el
primero empleado en Linux. Hoy en día se utiliza como sistema
de archivos para discos flexibles.
msdos
fat, el sistema de archivos empleado originariamente por DOS,
es utilizado en la actualidad por varios sistemas operativos.
ncpfs
sistema de archivos que permite montar volúmenes Novell a través
de una red.
nfs
Network File System: posibilita el almacenamiento de datos en el
ordenador que se elija dentro de una red y permite garantizar el
acceso a través de la red.
smbfs
Server Message Block: utilizado por productos como por ejemplo
Windows para el acceso de archivos a través de una red.
sysv
utilizado en SCO UNIX, Xenix y Coherent (sistemas UNIX comerciales para PCs).
ufs
utilizado en BSD, SunOS y NeXTstep. Sólo se soporta en modo
de lectura.
umsdos
UNIX on MSDOS: sistema de archivos basado en fat que emula
las características de Unix (derechos, enlaces, nombres de archivo
largos) mediante archivos especiales.
vfat
Virtual FAT: extensión del sistema de archivos fat (soporta
nombres de archivo largos).
Windows NT file system, sólo permiso de lectura.
ntfs
34.4
Soporte de archivos grandes en
Linux
Al principio, Linux sólo soportaba archivos con un tamaño máximo de 2 Gb. Debido
a la creciente utilización de Linux por ejemplo en la administración de bases de datos
o en la edición de datos de audio y vídeo, se ha hecho necesario el modificar el kernel
y la librería GNU C (glibc) para que soporten archivos mayores de 2 Gb y se han introducido nuevas interfaces que pueden ser utilizadas por las aplicaciones. Hoy en día
(casi) todos los sistemas de archivos importantes soportan LFS (Large File System –
sistema de archivos grandes), lo que permite la edición de datos de gama alta. La Tabla 34.2, “Tamaño máximo de sistemas de archivos (formato en disco)” (p. 557) incluye
un resumen de las limitaciones actuales de los archivos y sistemas de archivos bajo
Linux.
Tabla 34.2
Tamaño máximo de sistemas de archivos (formato en disco)
Sist. de archivos
Tamaño máx. archivo [Byte]
Tamaño
máx.sist.arch.[Byte]
Ext2 o Ext3 (1 kB tamaño bloque) 234 (16 GB)
241 (2 TB)
Ext2 o Ext3 (2 kB tamaño bloque) 238 (256 GB)
243 (8 TB)
Ext2 o Ext3 (4 kB tamaño bloque) 241 (2 TB)
244 (16 TB)
Ext2 o Ext3 (8 kB tamaño bloque) 246 (64 TB)
(sistema con páginas de 8 kB como
Alpha)
245 (32 TB)
ReiserFS v3
246 (64 GB)
245 (32 TB)
XFS
263 (8 EB)
263 (8 EB)
JFS (512 Bytes tamaño bloque)
263 (8 EB)
249 (512 TB)
Sistemas de archivos en Linux
557
Sist. de archivos
Tamaño máx. archivo [Byte]
Tamaño
máx.sist.arch.[Byte]
JFS (4 kB tamaño bloque)
263 (8 EB)
252 (4 PB)
NFSv2 (lado del cliente)
231 (2 GB)
263 (8 EB)
NFSv3 (lado del cliente)
263 (8 EB)
263 (8 EB)
IMPORTANTE: Límites del kernel de Linux
La Tabla 34.2, “Tamaño máximo de sistemas de archivos (formato en disco)”
(p. 557) describe los límites del formato en disco. El tamaño máximo de un archivo y un sistema de archivos para que puedan ser procesados correctamente
por el kernel no ha de superar los siguientes límites (en el kernel 2.6):
Tamaño de los archivos
41
en los sistemas de 32 bits, los archivos no pueden ser mayores de 2 TB (2
bytes).
Tamaño de los sistemas de archivos
73
los sistemas de archivos pueden tener un tamaño de hasta 2 bytes, si bien
todavía no existe ningún hardware que llegue hasta este límite.
34.5
Información adicional
Cada proyecto de sistema de archivos descrito arriba cuenta con su propia página web
en la que puede encontrar información adicional y listas de correo, así como FAQs.
• http://e2fsprogs.sourceforge.net/
• http://www.zipworld.com.au/~akpm/linux/ext3/
• http://www.namesys.com/
• http://oss.software.ibm.com/developerworks/opensource/
jfs/
558
• http://oss.sgi.com/projects/xfs/
Un completo tutorial sobre sistemas de archivos en Linux se encuentra en IBM developerWorks: http://www-106.ibm.com/developerworks/library/l-fs
.html Comparación entre los distintos sistemas de archivos journaling en Linux en
un artículo de Juan I. Santos Florido en Linuxgazette: http://www.linuxgazette
.com/issue55/florido.html. Un detallado trabajo sobre LFS en Linux está
disponible en la página de Andreas Jaeger: http://www.suse.de/~aj/linux
_lfs.html
Sistemas de archivos en Linux
559
Sistema X Window
35
El sistema X Window (X11) es el estándar de facto para las interfaces gráficas de
usuario en UNIX. X está basado en red, lo que permite que las aplicaciones iniciadas
en un host se muestren en otro host conectado mediante cualquier tipo de red (LAN o
Internet). En este capítulo se describe la configuración y la optimización del entorno
del sistema X Window, se ofrece información general sobre el uso de fuentes en SUSE
Linux y se explica la configuración de OpenGL y 3D.
35.1
Configuración de X11 con SaX2
La interfaz gráfica de usuario, o el servidor, X, gestiona la comunicación entre el
hardware y el software. Los escritorios, como KDE y GNOME, y la gran variedad de
gestores de ventanas utilizan el servidor X para interactuar con el usuario. La interfaz
gráfica de usuario se configura durante la instalación. Para cambiar la configuración
más adelante, utilice el correspondiente módulo del Centro de control de YaST o ejecute
SaX2 manualmente desde la línea de comandos mediante el comando sax2. La ventana
principal de SaX2 aglutina todos módulos individuales del Centro de control de YaST.
Sistema X Window
561
Figura 35.1
Ventana principal de SaX2
En la barra de navegación situada a la izquierda, existen seis elementos, y cada uno de
ellos muestra el correspondiente cuadro de diálogo de configuración del Centro de
control de YaST. La secciones anteriormente mencionadas se encuentran en el Capítulo Configuración del sistema con YaST (↑Inicio).
Monitor
Para obtener una descripción de la configuración de la tarjeta gráfica y del monitor,
consulte Sección “Propiedades de la tarjeta y el monitor” (Capítulo 3, Configuración
del sistema con YaST, ↑Inicio).
Ratón
Para obtener una descripción de la configuración del ratón en el entorno gráfico,
consulte Sección “Propiedades del ratón” (Capítulo 3, Configuración del sistema
con YaST, ↑Inicio).
Teclado
Para obtener una descripción de la configuración del teclado en el entorno gráfico,
consulte Sección “Propiedades del teclado” (Capítulo 3, Configuración del sistema
con YaST, ↑Inicio).
562
Tableta
Para obtener una descripción de la configuración de la tableta gráfica, consulte
Sección “Propiedades de la tableta” (Capítulo 3, Configuración del sistema con
YaST, ↑Inicio).
Pantalla táctil
Para obtener una descripción de la configuración de la pantalla táctil, consulte
Sección “Propiedades de la pantalla táctil” (Capítulo 3, Configuración del sistema
con YaST, ↑Inicio).
VNC
Para obtener una descripción de la configuración de VNC, consulte Sección “Propiedades de acceso remoto” (Capítulo 3, Configuración del sistema con YaST,
↑Inicio).
35.2
Optimización de la
configuración de X
X.Org es una implementación de código abierto del sistema X Window. Lo desarrolla
la X.Org Foundation, que es responsable también de desarrollar nuevas tecnologías y
estándares para el sistema X Window.
Para sacar el máximo partido al hardware disponible (el ratón, la tarjeta gráfica, el
monitor y el teclado, entre otros), se puede optimizar manualmente la configuración.
A continuación, se explican algunos aspectos de dicha optimización. Para obtener información detallada sobre la configuración del sistema X Window, consulte los diferentes
archivos del directorio /usr/share/doc/packages/Xorg, así como
man xorg.conf.
AVISO
Tenga mucha precaución a la hora de configurar el sistema X Window. No inicie
jamás el sistema X Window hasta haber completado la configuración. Un sistema
mal configurado puede provocar daños irreparables en el hardware (en particular, en los monitores de frecuencia fija). Ni los autores de este libro ni SUSE
Linux pueden considerarse responsables de tales daños. La información que se
ofrece ha sido cuidadosamente contrastada, pero no se garantiza que todos
Sistema X Window
563
los métodos aquí expuestos sean correctos ni que no vayan a dañar su hardware.
Los programas SaX2 y xorgconfig crean el archivo xorg.conf, por defecto, en
/etc/X11. Éste es el archivo principal de configuración del sistema X Window. Aquí
se encuentran los ajustes referentes a la tarjeta gráfica, al ratón y al monitor.
A continuación, se describe la estructura del archivo de configuración /etc/X11/
xorg.conf. Este archivo se compone de diferentes secciones, cada una de las cuales
hace referencia a un aspecto determinado de la configuración. Cada sección comienza
con la palabra clave Section <nombre> y termina con EndSection. Las secciones
tienen la siguiente forma:
Section designation
entry 1
entry 2
entry n
EndSection
Los tipos de sección disponibles aparecen en la Tabla 35.1, “Secciones de
/etc/X11/xorg.conf” (p. 564).
Tabla 35.1
564
Secciones de /etc/X11/xorg.conf
Tipo
Significado
Files
Esta sección describe las vías que se utilizan para las fuentes y
la tabla de colores RGB.
ServerFlags
Aquí se establecen las opciones generales.
InputDevice
En esta sección se configuran los dispositivos de entrada, tales
como teclados y dispositivos de entrada especiales (touchpads,
joysticks, etc.). Los parámetros más importantes de esta sección
son Driver y las opciones que definen Protocol y Device.
Monitor
Describe el monitor que se utiliza. Los elementos de esta sección
son un nombre, al que más adelante hace referencia la definición
Screen, bandwidth y los límites de frecuencia de sincronización (HorizSync y VertRefresh). Los ajustes se establecen en MHz, kHz y Hz. Normalmente, el servidor rechaza las
modelines que no se correspondan con las características del
Tipo
Significado
monitor. Esto evita que se envíen por error al monitor frecuencias
demasiado altas.
Modes
Aquí se almacenan los parámetros de modeline para resoluciones
de pantalla determinadas. SaX2 calcula estos parámetros basándose en los valores introducidos por el usuario y, en general, no
es necesario cambiarlos. Intervenga en este punto si, por ejemplo,
desea conectar un monitor de frecuencia fija. Encontrará más
detalles sobre el significado de cada valor numérico en el archivo
de ayuda /usr/share/doc/howto/en/
XFree86-Video-Timings-HOWTO.gz.
Device
Esta sección define una tarjeta gráfica determinada. Se hace referencia a la tarjeta mediante su nombre descriptivo.
Screen
Esta sección reúne un Monitor y un Device para conformar
el conjunto de ajustes necesarios para X.Org. En la subsección
Display, especifique el tamaño de la pantalla virtual
(Virtual), ViewPort, y Modes que se utilizarán con esta
pantalla.
ServerLayout Esta sección define la disposición en uno o varios monitores.
En ella se relaciona los dispositivos de entrada InputDevice
con los dispositivos de visualización Screen.
Monitor, Device y Screen se explican con más detalle a continuación. Hay más
información sobre las demás secciones en las páginas Man de X.Org y xorg.conf.
Es posible encontrar varias secciones Monitor y Device diferentes en xorg.conf.
Incluso es posible que aparezca más de una sección Screen. La sección
ServerLayout que figura a continuación es la que determina cuál se utilizará.
35.2.1 Sección Screen
En primer lugar, observaremos la sección screen, en la que se combina una sección
Monitor con una sección Device y se determina la resolución y la profundidad de color
Sistema X Window
565
que se utilizarán. El aspecto de una sección Screen puede ser similar al del Ejemplo 35.1,
“Sección Screen del archivo /etc/X11/xorg.conf” (p. 566).
Ejemplo 35.1
Sección Screen del archivo /etc/X11/xorg.conf
Section "Screen"
DefaultDepth 16
SubSection "Display"
Depth
16
Modes
"1152x864" "1024x768" "800x600"
Virtual
1152x864
EndSubSection
SubSection "Display"
Depth
24
Modes
"1280x1024"
EndSubSection
SubSection "Display"
Depth
32
Modes "640x480"
EndSubSection
SubSection "Display"
Depth
8
Modes
"1280x1024"
EndSubSection
Device
"Device[0]"
Identifier
"Screen[0]"
Monitor
"Monitor[0]"
EndSection
La línea Identifier (en este ejemplo, Screen[0]) proporciona un nombre concreto mediante el cual se puede hacer referencia a ella en la sección ServerLayout
que sigue. Las líneas Device y Monitor especifican la tarjeta gráfica y el monitor
que pertenecen a esta definición. Son simples enlaces a las secciones Device y
Monitor con el correspondiente nombre o identifier. Dichas secciones se describen
en detalle a continuación.
Utilice el ajuste DefaultDepth para seleccionar la profundidad de color por defecto
que debe utilizar el servidor si no se inicia con una específica. Existe una subsección
Display para cada profundidad de color. La palabra clave Depth asigna la profundidad de color válida para esta subsección. Los valores posibles de Depth son 8, 15,
16 y 24. Algunos módulos del servidor X no admiten todos los valores.
Después de la profundidad de color, se define una lista de resoluciones en la sección
Modes. El servidor X lee la lista de izquierda a derecha. Para cada resolución, el servidor
X busca un Modeline en la sección Modes. La Modeline depende de la capacidad
566
del monitor y de la tarjeta gráfica. Los ajustes de Monitor determinan la Modeline
que se obtiene como resultado.
La primera resolución que se encuentra es la de Default mode. Se puede cambiar
a la siguiente resolución hacia la derecha de la lista mediante Ctrl + Alt + + (del teclado
numérico). Para cambiar a la siguiente resolución hacia la izquierda de la lista, use Ctrl
+ Alt + – (del teclado numérico). De esta manera, es posible cambiar la resolución
mientras se ejecuta X.
La última línea de la subsección Display con Depth 16 hace referencia al tamaño
de la pantalla virtual. El tamaño máximo de la pantalla virtual depende de la cantidad
de memoria instalada en la tarjeta gráfica y de la profundidad de color deseada, no de
la resolución máxima del monitor. Puesto que las tarjetas gráficas modernas disponen
de una gran cantidad de memoria de vídeo, se pueden crear escritorios virtuales muy
grandes. Sin embargo, si se ocupa mucha memoria de vídeo con un escritorio virtual,
es posible que ya no se puedan aprovechar las funciones 3D. Si, por ejemplo, la tarjeta
dispone de 16 MB de RAM para vídeo, la pantalla virtual puede llegar a los 4096 x
4906 píxeles de tamaño con una profundidad de color de 8 bits. Sin embargo, en especial
en el caso de tarjetas con aceleración, no se recomienda utilizar toda la memoria para
la pantalla virtual, ya que la memoria de la tarjeta se utiliza para diferentes cachés de
fuentes y gráficos.
35.2.2 Sección Device
Cada sección device describe una tarjeta gráfica determinada. Es posible incluir en
xorg.conf tantas entradas device como se desee, siempre que se distingan sus
nombres mediante la palabra clave Identifier. En general, si hay más de una tarjeta
gráfica instalada, las secciones simplemente se numeran de forma correlativa. La primera se llama Device[0], la segunda Device[1] y así sucesivamente. El siguiente
archivo muestra un extracto de la sección Device de un equipo con una tarjeta gráfica
PCI Matrox Millennium:
Section "Device"
BoardName
"MGA2064W"
BusID
"0:19:0"
Driver
"mga"
Identifier
"Device[0]"
VendorName
"Matrox"
Option
"sw_cursor"
EndSection
Sistema X Window
567
Si se utiliza SaX2 para la configuración, la sección device debería tener un aspecto similar al del ejemplo anterior. Tanto Driver como BusID dependen del hardware
instalado en el equipo; SaX2 los detecta automáticamente. BusID define la ranura PCI
o AGP en la que está instalada la tarjeta. Esto corresponde al ID que muestra el comando
lspci. El servidor X requiere que los valores estén en forma decimal, pero lspci los
muestra en hexadecimal.
Mediante el parámetro Driver, especifique el parámetro que se utilizará para la tarjeta
gráfica. Si la tarjeta es una Matrox Millennium, el módulo del controlador se llama
mga. El servidor X buscará en la vía ModulePath definida en la sección Files del
subdirectorio drivers. En una instalación estándar, se trata del directorio /usr/
X11R6/lib/modules/drivers. Al nombre indicado se le añade _drv.o, de
manera que, en el caso del controlador mga, se cargará el archivo mga_drv.o.
El comportamiento del servidor X y del controlador se puede modificar mediante opciones adicionales. Un ejemplo de ello es la opción sw_cursor, que se define en la
sección device. Esta opción desactiva el cursor del ratón creado por hardware y lo dibuja
mediante software. Hay varias opciones disponibles en función del módulo del controlador, que se pueden encontrar en los archivos de descripción de los módulos del controlador, en el directorio /usr/X11R6/lib/X11/doc. Las opciones válidas en
general también se encuentran en las páginas Man (man xorg.conf y man X.Org).
35.2.3 Secciones Monitor y Modes
Al igual que las secciones Device, cada sección Monitor y Modes describe un
monitor. El archivo de configuración /etc/X11/xorg.conf puede contener tantas
secciones Monitor como se desee. La sección ServerLayout especifica qué sección
Monitor es la relevante.
Las definiciones de Monitor sólo deben ser ajustadas por usuarios experimentados. Las
modelines constituyen una parte importante de las secciones Monitor. Las modelines
establecen la sincronización horizontal y vertical de la resolución respectiva. Las propiedades del monitor, en especial las frecuencias permitidas, se almacenan en la sección
Monitor.
568
AVISO
No cambie ningún parámetro de las modelines a menos que tenga un conocimiento profundo del funcionamiento del monitor y de la tarjeta gráfica, ya
que podrían producirse daños graves en el monitor.
Para el desarrollo de descripciones de monitor propias, es necesario conocer la documentación de /usr/X11/lib/X11/doc. Cabe destacar el apartado dedicado a los
modos de vídeo. En él, se describe en detalle el funcionamiento del hardware y la manera de crear modelines.
Hoy en día, la especificación manual de modelines no suele ser necesaria. Si se utiliza
un monitor multifrecuencia actual, generalmente el servidor X puede obtener las frecuencias permitidas y las resoluciones óptimas directamente del monitor por medio de
DDC, tal y como se describe en la sección de configuración de SaX2. Si, por cualquier
razón, no fuera posible obtenerlas, utilice uno de los modos VESA que se incluyen en
el servidor X. Esto funcionará con prácticamente todas las combinaciones de tarjetas
gráficas y monitores.
35.3
Instalación y configuración de
fuentes
La instalación de fuentes adicionales en SUSE Linux es un proceso sencillo. Sólo tiene
que copiar las fuentes en cualquier directorio ubicado en la vía de fuente X11 (consulte
la Sección 35.3.2, “Fuentes centrales X11” (p. 573)). Para habilitar la utilización de
fuentes, el directorio de instalación debe ser un subdirectorio de los directorios configurados en /etc/fonts/fonts.conf (consulte la Sección 35.3.1, “Xft” (p. 570)).
Los archivos de fuentes se pueden copiar de forma manual (como root) en un directorio adecuado, por ejemplo, /usr/X11R6/lib/X11/fonts/truetype. Si no,
la tarea se puede realizar mediante el instalador de fuentes KDE en el Centro de control
de KDE. El resultado es el mismo.
En lugar de copiar las fuentes actuales, también puede crear enlaces simbólicos. Por
ejemplo, puede realizar esto si dispone de fuentes con licencia en una partición Windows
montada y desea utilizarlas. A continuación, ejecute SuSEconfig --module
fonts.
Sistema X Window
569
SuSEconfig --module fonts ejecuta el guión /usr/sbin/fonts-config,
que gestiona la configuración de las fuentes. Para ver lo que realiza este guión, consulte
la página del manual del guión (man fonts-config).
El procedimiento es el mismo para fuentes de mapa de bits y fuentes TrueType,
OpenType y Type1 (PostScript). Todos estos tipos de fuentes se pueden instalar en
cualquier directorio. Únicamente las fuentes con clave CID requieren que se lleve a
cabo un proceso ligeramente diferente. Para ello, consulte la Sección 35.3.3, “Fuentes
con clave CID” (p. 575).
X.Org contiene dos sistemas de fuentes completamente diferentes: el sistema central
de fuentes X11 antiguo y el recién diseñado sistema Xft y fontconfig. Las secciones siguientes describen brevemente ambos sistemas.
35.3.1 Xft
Para empezar, los programadores de Xft deben asegurarse de que las fuentes ampliables
con suavización de contornos sean compatibles. Si se utiliza Xft, las fuentes se procesan
por la aplicación que las utilice, no por el servidor X, como sucedía en el sistema central
de fuentes X11. De este modo, la aplicación correspondiente tiene acceso a los archivos
de fuentes actuales y control completo sobre el procesamiento de los glifos. Esto
constituye las bases para la correcta visualización de texto en varios idiomas. El acceso
directo a los archivos de fuente resulta útil en fuentes insertadas para impresión para
asegurarse de que el resultado de la impresión sea igual que el que aparece en pantalla.
En SUSE Linux, los dos entornos de escritorio KDE y GNOME, Mozilla y otras aplicaciones utilizan por defecto Xft. Ya existen más aplicaciones que utilizan Xft en lugar
del antiguo sistema central de fuentes X11.
Xft utiliza la biblioteca fontconfig para buscar fuentes e influir en su procesamiento.
Las propiedades de fontconfig están controladas por el archivo de configuración global
/etc/fonts/fonts.conf y por el archivo de configuración específico del usuario
~/.fonts.conf. Cada uno de estos archivos de configuración fontconfig debe comenzar por
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
y finalizar por
570
</fontconfig>
Si desea agregar directorios para buscar fuentes, introduzca líneas como la siguiente:
<dir>/usr/local/share/fonts/</dir>
Sin embargo, esto no suele ser necesario. Por defecto, el directorio específico del
usuario ~/.fonts ya está incluido en /etc/fonts/fonts.conf. Por lo tanto,
lo único que necesita para instalar fuentes adicionales es copiarlas en ~/.fonts.
También puede insertar reglas que afecten a la apariencia de las fuentes. Por ejemplo,
introduzca
<match target="font">
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
para inhabilitar la suavización de contornos de todas las fuentes o
<match target="font">
<test name="family">
<string>Luxi Mono</string>
<string>Luxi Sans</string>
</test>
<edit name="antialias" mode="assign">
<bool>false</bool>
</edit>
</match>
para inhabilitar la suavización de contornos de fuentes específicas.
Por defecto, la mayoría de aplicaciones utilizan los nombres de fuente sans-serif
(o el equivalente sans), serif o monospace. Éstas no son fuentes reales, sino alias
que se traducen a una fuente adecuada en función de la configuración de idioma.
Los usuarios pueden agregar fácilmente reglas a ~/.fonts.conf para traducir estos
alias a sus fuentes favoritas:
<alias>
<family>sans-serif</family>
<prefer>
<family>FreeSans</family>
</prefer>
</alias>
<alias>
<family>serif</family>
<prefer>
Sistema X Window
571
<family>FreeSerif</family>
</prefer>
</alias>
<alias>
<family>monospace</family>
<prefer>
<family>FreeMono</family>
</prefer>
</alias>
Puesto que casi todas las aplicaciones utilizan estos alias por defecto, esto afecta a casi
todo el sistema. Por lo tanto, puede utilizar fácilmente sus fuentes favoritas en casi todo
el sistema sin necesidad de modificar la configuración de fuente de cada aplicación.
Utilice el comando fc-list para encontrar las fuentes instaladas y disponibles para
su uso. Por ejemplo, el comando fc-list proporciona una lista de todas las fuentes.
Para buscar en las fuentes ampliables disponibles (:outline=true) las que contienen
todos los glifos requeridos para hebreo (:lang=he), los nombres de fuente (family),
el estilo (style), el tamaño (weight) y el nombre de los archivos que contienen las
fuentes, introduzca el comando siguiente:
fc-list ":lang=he:outline=true" family style weight
La salida de este comando aparece del siguiente modo:
FreeSansBold.ttf: FreeSans:style=Bold:weight=200
FreeMonoBoldOblique.ttf: FreeMono:style=BoldOblique:weight=200
FreeSerif.ttf: FreeSerif:style=Medium:weight=80
FreeSerifBoldItalic.ttf: FreeSerif:style=BoldItalic:weight=200
FreeSansOblique.ttf: FreeSans:style=Oblique:weight=80
FreeSerifItalic.ttf: FreeSerif:style=Italic:weight=80
FreeMonoOblique.ttf: FreeMono:style=Oblique:weight=80
FreeMono.ttf: FreeMono:style=Medium:weight=80
FreeSans.ttf: FreeSans:style=Medium:weight=80
FreeSerifBold.ttf: FreeSerif:style=Bold:weight=200
FreeSansBoldOblique.ttf: FreeSans:style=BoldOblique:weight=200
FreeMonoBold.ttf: FreeMono:style=Bold:weight=200
Parámetros importantes que se pueden consultar con fc-list:
Tabla 35.2
572
Parámetros de fc-list
Parámetro
Significado y valores posibles
family
Nombre de la familia de la fuente, por ejemplo, FreeSans.
Parámetro
Significado y valores posibles
foundry
Fabricante de la fuente, por ejemplo, urw.
style
Estilo de la fuente, por ejemplo, Medium, Regular, Bold,
Italic, Heavy.
lang
Idioma compatible con la fuente, por ejemplo, de para alemán, ja para japonés, zh-TW para chino (Rep. Popular
China) o zh-CN para chino (Taiwán).
weight
Tamaño de la fuente, por ejemplo, 80 para letra redonda y
200 para negrita.
slant
Inclinación, generalmente 0 para ninguna inclinación y 100
para cursiva.
file
Nombre del archivo que contiene la fuente.
outline
true para fuentes con contorno, false para el resto.
scalable
true para fuentes ampliables, false para el resto.
bitmap
true para fuentes de mapa de bits, false para el resto.
pixelsize
Tamaño de la fuente en píxeles. En una conexión con fc-list,
esta opción sólo es útil para fuentes de mapa de bits.
35.3.2 Fuentes centrales X11
Hoy en día, el sistema central de fuentes X11 es compatible con fuentes de mapa de
bits y también con fuentes ampliables, como Type1, TrueType y OpenType, así como
con fuentes con clave CID. También existía compatibilidad para fuentes Unicode. En
1987, el sistema central de fuentes X11 se desarrolló para X11R1 con el propósito de
procesar fuentes de mapas de bits monocromos. Todas las extensiones mencionadas
anteriormente se agregaron después.
Sistema X Window
573
Las fuentes ampliables sólo son compatibles sin suavización de contornos ni procesamiento de subpíxeles; el inicio de fuentes ampliables grandes con glifos para varios
idiomas puede tardar mucho tiempo. La utilización de fuentes Unicode también puede
tardar y requiere más memoria.
El sistema central de fuentes X11 tiene algunos puntos débiles inherentes. Está obsoleto
y no se puede ampliar de manera significativa. Sin embargo, debe conservarse por razones de compatibilidad retroactiva; si es posible, deben utilizarse los sistemas Xft y
fontconfig, que son más modernos.
Para su funcionamiento, el servidor X necesita saber las fuentes que están disponibles
y la parte del sistema en la que puede encontrarlas. Esto se gestiona mediante una variable FontPath, que contiene la vía de todos los directorios de fuente de sistema válidos.
En cada uno de estos directorios, un archivo denominado fonts.dir muestra las
fuentes disponibles en el directorio. El servidor X genera FontPath durante el inicio.
Busca un archivo fonts.dir válido en cada entrada FontPath del archivo de
configuración /etc/X11/xorg.conf. Estas entradas se encuentran en la sección
Files. Muestre el FontPath actual mediante xset q. Esta vía se puede modificar
durante el tiempo de ejecución mediante xset. Para agregar una vía adicional, utilice
xset +fp <path>. Para eliminar una vía no deseada, utilice xset -fp <path>.
Si el servidor X ya está activo, las fuentes recién instaladas en los directorios montados
estarán disponibles mediante el comando xset fp rehash. Este comando se ejecuta
mediante SuSEconfig --module fonts. Puesto que el comando xset necesita
acceder al servidor X en funcionamiento, esto sólo funciona si
SuSEconfig --module fonts se inicia desde un shell que tenga acceso al servidor
X en funcionamiento. La manera más fácil de llevar esto a cabo es adoptar los permisos
root introduciendo su y la contraseña root. su transfiere los permisos de acceso del
usuario que ha iniciado el servidor X al shell root. Para comprobar que las fuentes se
han instalado correctamente y que están disponibles a través del sistema central de
fuentes X11, utilice el comando xlsfonts para mostrar todas las fuentes disponibles.
Por defecto, SUSE Linux utiliza configuraciones regionales UTF-8. Por lo tanto, se
preferirán fuentes Unicode (nombres de fuente que finalicen por iso10646-1 en la
salida xlsfonts). xlsfonts | grep iso10646-1 enumera todas las fuentes
Unicode disponibles. Aproximadamente todas las fuentes Unicode disponibles en SUSE
Linux contienen por lo menos los glifos necesarios para idiomas europeos (anteriormente
codificados como iso-8859-*).
574
35.3.3 Fuentes con clave CID
A diferencia de otros tipos de fuentes, no puede instalar fuentes con clave CID en
cualquier directorio. Las fuentes con clave CID deben instalarse en /usr/share/
ghostscript/Resource/CIDFont. Esto no es relevante para Xft y fontconfig,
pero es necesario para Ghostscript y para el sistema central de fuentes X11.
SUGERENCIA
Consulte http://www.xfree86.org/current/fonts.html para obtener
más información acerca de las fuentes que se ejecutan en X11.
35.4
Configuración 3D de OpenGL
35.4.1 Hardware soportado
SUSE Linux incluye varios controladores OpenGL para el soporte de hardware 3D. La
Tabla 35.3, “Hardware 3D soportado” (p. 575) le proporciona un resumen de los mismos.
Tabla 35.3
Hardware 3D soportado
Controlador
OpenGL
Hardware soportado
nVidia
Chips nVidia: todos excepto Riva 128(ZX)
DRI
3Dfx Voodoo Banshee,
3Dfx Voodoo-3/4/5,
Intel i810/i815/i830M,
Intel 845G/852GM/855GM/865G/915,
Matrox G200/G400/G450/G550,
ATI Rage 128(Pro)/Radeon (hasta 9250)
Sistema X Window
575
Si está realizando una nueva instalación con YaST, puede activar el soporte 3D durante
la instalación siempre y cuando YaST detecte dicho soporte. Los chips gráficos nVidia
son la única excepción; en este caso es necesario instalar previamente el controlador
nVidia. Para ello seleccione durante la instalación el parche del controlador nVidia en
YOU (YaST Online Update). Por motivos de licencia no podemos incluir el controlador
de nVidia con la distribución.
Si va a realizar una actualización, el soporte de hardware 3D tendrá que configurarse
de manera diferente. El método depende del controlador OpenGL que esté utilizando
y se describe con más detalle en la siguiente sección.
35.4.2 Controladores OpenGL
Estos controladores OpenGL pueden instalarse muy fácilmente utilizando SaX2. Tenga
en cuenta que, si dispone de una tarjeta nVidia, el controlador de nVidia ha de ser instalado previamente como se describe en las líneas superiores. El comando 3Ddiag le
permite comprobar si nVidia o DRI están configurados correctamente.
Por razones de seguridad, sólo los usuarios que pertenecen al grupo video pueden
tener acceso al hardware 3D. Compruebe que todos los usuarios que trabajan localmente
en la máquina pertenecen a ese grupo. De no ser así, cuando intente ejecutar aplicaciones
OpenGL se ejecutará el Software Rendering Fallback del controlador OpenGL, que es
más lento. Utilice el comando id para comprobar si el usuario actual pertenece al
grupo video. Si este no es el caso, utilice YaST para añadirlo al grupo.
35.4.3 Herramienta de diagnóstico 3Ddiag
Puede verificar la configuración 3D en SUSE Linux con la herramienta de diagnóstico
3Ddiag incluida en el sistema. Se debe ejecutar este comando desde una terminal de
línea de comandos. Introduzca 3Ddiag -h para mostrar las opciones posibles de
3Ddiag.
La aplicación examinará, por ejemplo, la configuración de X.Org para verificar que los
paquetes de soporte de 3D están instalados y las librerías OpenGL están siendo utilizadas
con la extensión GLX. Siga las instrucciones de 3Ddiag si aparecen mensajes de
failed. Si todo ha ido a la perfección, verá en la pantalla el mensaje done.
3Ddiag -h proporciona información sobre las opciones admitidas por 3Ddiag.
576
35.4.4 Aplicaciones de prueba OpenGL
Para probar OpenGL puede utilizar juegos como tuxracer o armagetron (del
paquete del mismo nombre) así como glxgears. Si el soporte 3D ha sido activado,
estos juegos funcionarán correctamente en ordenadores medianamente actuales. Sin
soporte 3D, esta prueba no tiene sentido (efecto de diapositivas). La salida del comando
glxinfo le informará de si el soporte 3D está activado. En caso afirmativo, la variable
direct rendering tendrá el valor Yes.
35.4.5 Resolución de problemas
Si los resultados de la prueba de 3D de OpenGL han sido negativos (los juegos no se
han visualizado adecuadamente), utilice 3Ddiag para asegurarse de que no existen
errores en la configuración (mensajes de failed). Si la corrección de estos no ayuda
o no han aparecido mensajes de error, mire los archivos log de X.Org. A menudo, encontrará aquí la línea DRI is disabled en el archivo de X.Org /var/log/Xorg
.0.log. Se puede descubrir la causa exacta examinando con detalle los archivos log,
lo que quizá sea demasiado complicado para un usuario no experimentado.
En estos casos, lo normal es que no exista ningún error en la configuración, puesto que
ya habría sido detectado por 3Ddiag. Por lo tanto sólo queda el Software Rendering
Fallback del controlador DRI, el cual no ofrece soporte de hardware 3D. Prescinda
también del soporte 3D en caso de fallos de representación en OpenGL o problemas
generales de estabilidad. Puede desactivar el soporte 3D con SaX2.
35.4.6 Soporte de instalación
Excepto el Software Rendering Fallback del controlador DRI, todos los controladores
de Linux están en fase de desarrollo y por tanto se consideran en pruebas. Los controladores se incluyen en la distribución debido a la alta demanda de aceleración de hardware 3D en Linux. Considerando el estado experimental de los controladores de
OpenGL, no podemos ofrecer un soporte de instalación para configurar la aceleración
de hardware 3D o proporcionar ningún otro tipo de ayuda. La configuración básica de
la interfaz gráfica X11 no incluye la configuración de la aceleración de hardware 3D.
No obstante, esperamos que este capítulo responda a muchas preguntas relacionadas
con este tema. En caso de problemas con el soporte de hardware 3D le recomendamos
en última instancia prescindir de este soporte.
Sistema X Window
577
35.4.7 Documentación adicional en línea
Para ver información sobre DRI, consulte /usr/X11R6/lib/X11/doc/README
.DRI (paquete Xorg-x11-doc). Puede obtener información adicional sobre la instalación de controladores nvidia en http://ftp.suse.com/pub/suse/i386/
supplementary/X/nvidia-installer-HOWTO.html.
578
Autenticación con PAM
36
Linux utiliza PAM (módulos de autenticación conectables, del inglés Pluggable Authentication Modules) en el proceso de autenticación como una capa que media entre
el usuario y la aplicación. Los módulos PAM están disponibles para todo el sistema,
por lo que los puede solicitar cualquier aplicación. Este capítulo describe cómo funciona
el mecanismo de autenticación modular y cómo se configura.
Los administradores de sistemas y los programadores suelen restringir el acceso a
ciertas partes del sistema o limitar el uso de ciertas funciones de una aplicación. Sin
PAM, sería necesario adaptar las aplicaciones cada vez que se introdujera un nuevo
mecanismo de autenticación, como LDAP o SAMBA. Sin embargo, este proceso lleva
bastante tiempo y tiende a producir errores. Una manera de evitar estos inconvenientes
es separar las aplicaciones del mecanismo de autenticación y delegar este último a
módulos gestionados centralmente. Cuando sea necesario utilizar un nuevo esquema
de autenticación, bastará con adaptar o escribir un módulo PAM adecuado para que el
programa en cuestión pueda utilizarlo.
Todos los programas que se sirven del mecanismo PAM tienen su propio archivo de
configuración en el directorio /etc/pam.d/nombreprograma. Estos archivos
definen los módulos PAM empleados en el proceso de autenticación. Además, existen
archivos de configuración globales para la mayoría de los módulos PAM en /etc/
security, los cuales definen el comportamiento exacto de estos módulos (por
ejemplo pam_env.conf, pam_pwcheck.conf, pam_unix2.conf y time
.conf). Todas las aplicaciones que utilicen un módulo PAM llamarán a un conjunto
de funciones PAM, las cuales procesarán después la información en los distintos archivos
de configuración y devolverán el resultado a la aplicación que ha realizado la llamada.
Autenticación con PAM
579
36.1
Estructura de archivos de
configuración PAM
Cada línea dentro de un archivo de configuración PAM contiene un máximo de cuatro
columnas:
<Tipo de módulo> <Indicador de control> <Vía al módulo> <Opciones>
Los módulos PAM se procesan en stacks. Los distintos tipos de módulos sirven a propósitos distintos, por ejemplo, un módulo comprueba la contraseña, otro verifica la
ubicación desde la que se accede al sistema y otro lee los ajustes específicos del usuario.
PAM reconoce cuatro tipos de módulos diferentes:
auth
El objetivo de este tipo de módulo es comprobar la autenticidad del usuario. Esto
se hace tradicionalmente solicitando una contraseña, si bien también se puede conseguir con la ayuda de una tarjeta de chip o mediante biométrica (huellas digitales
o exploración de retina).
account
Los módulos de este tipo comprueban que el usuario tenga permiso general para
utilizar el servicio solicitado. Por ejemplo, deberá realizarse esta comprobación
para garantizar que nadie inicie sesión con el nombre de usuario de una cuenta caducada.
password
El propósito de este tipo de módulo es permitir modificar un testigo de autenticación.
En la mayoría de los casos, se trata de una contraseña.
session
Los módulos de este tipo son responsables de gestionar y configurar sesiones de
usuario. Estos módulos se inician antes y después de la autenticación para registrar
intentos de inicio de sesión en los registros del sistema y para configurar el entorno
específico del usuario (cuentas de correo, directorio personal, límites del sistema,
etc.).
La segunda columna contiene indicadores de control para influir en el comportamiento
de los módulos iniciados:
580
required
Los módulos con este indicador se deben procesar correctamente antes de proceder
con la autenticación. Si falla un módulo con el indicador required, se procesará
el resto de módulos de este tipo antes de que el usuario reciba un aviso de que se
ha producido un fallo durante el intento de autenticación.
requisite
Los módulos con este indicador tienen que ser procesados correctamente, igual que
los módulos con el indicador required. No obstante, si se produce un fallo en
un módulo con este indicador, el usuario recibirá una notificación inmediata y no
se procesarán más módulos. En caso de que no haya errores, se seguirá procesando
el resto de los módulos, al igual que en el caso de los módulos con el indicador
required. El indicador requisite se puede utilizar como un filtro simple con
el objeto de comprobar el cumplimiento de determinadas condiciones necesarias
para una correcta autenticación.
sufficient
Si se procesa correctamente un modulo con este indicador, la aplicación que lo ha
iniciado recibe inmediatamente una notificación de proceso correcto y no se procesa
ningún otro módulo, siempre y cuando anteriormente no haya fallado la ejecución
de ningún módulo con el indicador required. El fallo de un módulo con indicador
sufficient no tiene consecuencias directas y los módulos siguientes se seguirán
procesando según el orden correspondiente.
optional
Que el proceso de un módulo con este indicador se lleve a cabo correctamente o
haya errores no tiene consecuencias directas. Esta opción puede ser útil, por ejemplo,
para módulos cuyo único cometido es mostrar un mensaje (por ejemplo informando
al usuario acerca de la recepción de un mensaje de correo electrónico), sin realizar
ninguna otra acción.
include
Si se da este indicador, el archivo especificado como argumento se inserta en este
lugar.
La vía al módulo no tiene por qué especificarse de forma explícita siempre que el módulo se encuentre en el directorio por defecto /lib/security (en todas las plataformas de 64 bits compatibles con SUSE Linux, el directorio es /lib64/security).
La cuarta columna puede contener una opción para el módulo, como debug (activa la
depuración) o nullok (permite utilizar contraseñas vacías).
Autenticación con PAM
581
36.2
Configuración PAM para sshd
Tomemos la configuración PAM para sshd para demostrar la teoría con un ejemplo
práctico de funcionamiento:
Ejemplo 36.1
Configuración PAM para sshd
#%PAM-1.0
auth
include
common-auth
auth
required
pam_nologin.so
account include
common-account
password include
common-password
session include
common-session
# Habilite la siguiente línea para obtener compatibilidad de resmgr con
# sesiones ssh (consulte /usr/share/doc/packages/resmgr/README.SuSE)
#session optional
pam_resmgr.so nombretty_simulado
La configuración típica PAM de una aplicación (sshd en este caso) contiene instrucciones
que hacen referencia a los archivos de configuración de cuatro tipos de módulos:
common-auth, common-account, common-password y common-session.
Estos cuatro archivos contienen la configuración predeterminada para cada tipo de
módulo. Si se incluyen estos archivos en lugar de llamar a cada módulo por separado
para cada aplicación PAM, se obtendrá automáticamente una configuración PAM actualizada cuando el administrador cambie los ajustes por defecto. Antiguamente, era
necesario ajustar todos los archivos de configuración manualmente en todas las aplicaciones cuando se producían cambios en PAM o cuando se instalaba una aplicación
nueva. Ahora, la configuración PAM se lleva a cabo mediante archivos de configuración
centrales y todos los cambios se heredan automáticamente en la configuración PAM
de cada servicio.
El primer archivo incluido (common-auth) llama a dos módulos del tipo auth:
pam_env y pam_unix2. Consulte Ejemplo 36.2, “Configuración por defecto de la
sección auth” (p. 582).
Ejemplo 36.2
auth
auth
Configuración por defecto de la sección auth
required
required
pam_env.so
pam_unix2.so
El primero, pam_env, carga el archivo /etc/security/pam_env.conf para
definir las variables de entorno tal y como se especifique en este archivo. Esto se puede
utilizar para definir la variable DISPLAY con el valor adecuado, ya que el módulo pam
_env conoce la ubicación desde la cual se está iniciando sesión. El segundo, pam
582
_unix2, comprueba el inicio de sesión del usuario y su contraseña comparándolos
con /etc/passwd y /etc/shadow.
Una vez iniciados correctamente los módulos especificados en common-auth, un
tercer módulo llamado pam_nologin comprueba si existe el archivo /etc/nologin.
Si existe, sólo podrá iniciar sesión el usuario Root. El stack entero de módulos auth
se procesará antes de que sshd obtenga información alguna acerca de si se ha podido
iniciar correctamente la sesión. Dado que todos los módulos del stack tienen el indicador
de control required, deberán procesarse correctamente todos para que sshd reciba
un mensaje notificándole que el resultado ha sido correcto. Aunque alguno de los módulos no llegase a procesarse correctamente, el resto del stack de módulos sí continuaría
procesándose y, sólo entonces, sshd recibiría notificación acerca del resultado incorrecto.
Si se procesan correctamente todos los módulos del tipo auth, se procesará otra declaración de inclusión, en este caso, la que parece en Ejemplo 36.3, “Configuración por
defecto de la sección account” (p. 583). common-account contiene sólo un módulo,
pam_unix2. Si pam_unix2 indica como resultado que el usuario existe, sshd recibe
un mensaje de notificación al respecto y se pasa a procesar el siguiente stack de módulos
(password), los cuales se describen en Ejemplo 36.4, “Configuración por defecto de
la sección password” (p. 583).
Ejemplo 36.3
Configuración por defecto de la sección account
account required
Ejemplo 36.4
pam_unix2.so
Configuración por defecto de la sección password
password required
password required
#password required
pam_pwcheck.so
pam_unix2.so
pam_make.so
nullok
nullok use_first_pass use_authtok
/var/yp
De nuevo, la configuración PAM de sshd lleva sólo una declaración de inclusión que
hace referencia a la configuración por defecto de los módulos password del archivo
common-password. Estos módulos deben completarse correctamente (indicador de
control required) siempre que la aplicación solicite que se cambie un testigo de autenticación. Cambiar una contraseña u otro testigo de autenticación exige realizar una
comprobación de seguridad. Ésta la lleva a cabo el módulo pam_pwcheck. El módulo
pam_unix2 que se utiliza posteriormente lleva consigo todas las contraseñas antiguas
y nuevas de pam_pwcheck para que el usuario no tenga que volver a autenticarlas.
Esto también evita que se puedan saltar las comprobaciones que lleva a cabo pam
_pwcheck. Los módulos del tipo password deben utilizarse siempre que los módulos
Autenticación con PAM
583
precedentes del tipo account o auth estén configurados para emitir quejas en caso
de que las contraseñas hayan caducado.
Ejemplo 36.5
Configuración por defecto de la sección session
session required
session required
pam_limits.so
pam_unix2.so
En el último paso, se ordena a los módulos del tipo session, incluidos en el archivo
common-session que configuren la sesión según los ajustes del usuario en cuestión.
Si bien pam_unix2 se vuelve a procesar, no tiene consecuencias prácticas debido a
su opción none, especificada en el correspondiente archivo de configuración de este
módulo, pam_unix2.conf. El módulo pam_limits carga el archivo /etc/
security/limits.conf, el cual puede definir los límites de uso de ciertos recursos
del sistema. Cuando el usuario termina la sesión, se vuelve a llamar a los módulos
session.
36.3
Configuración de módulos PAM
Algunos de los módulos PAM se pueden configurar. Los archivos de configuración
correspondientes se encuentran en /etc/security. Esta sección describe brevemente
los archivos de configuración relevantes para el ejemplo de sshd: pam_unix2.conf,
pam_env.conf, pam_pwcheck.conf y limits.conf.
36.3.1 pam_unix2.conf
El método tradicional de autenticación basada en contraseña está controlado a través
del módulo PAM pam_unix2. Este módulo puede leer los datos necesarios desde
/etc/passwd, /etc/shadow, mapas NIS, tablas NIS+ o bases de datos LDAP.
El comportamiento de este módulo puede manipularse configurando las opciones PAM
de la aplicación en sí o bien de manera global en /etc/security/pam_unix2
.conf. En el caso más sencillo, este archivo de configuración tiene el aspecto mostrado
en Ejemplo 36.6, “pam_unix2.conf” (p. 584).
584
Ejemplo 36.6
pam_unix2.conf
auth:
nullok
account:
password:
session:
nullok
none
La opción nullok de los tipos de módulos auth y password especifica que es posible incluir contraseñas vacías en el tipo de cuentas correspondiente. Los usuarios
también pueden cambiar las contraseñas de sus cuentas. La opción none en el tipo de
módulo session especifica que no se registran mensajes en su nombre (se trata de
la opción por defecto). Puede obtener información acerca de otras opciones de configuración a través de los comentarios dentro del propio archivo y a través de la página de
manual pam_unix2(8).
36.3.2 pam_env.conf
Este archivo se puede utilizar para definir un entorno estandarizado para usuarios, el
cual se establecerá cada vez que se llame al módulo pam_env. Si se utiliza este archivo,
las variables de entorno deberán predefinirse con la sintaxis siguiente:
VARIABLE
[DEFAULT=[valor]]
[OVERRIDE=[valor]]
VARIABLE
Nombre de la variable de entorno que definir.
[DEFAULT=[valor]]
Valor por defecto que desea definir el administrador.
[OVERRIDE=[valor]]
Valores que se pueden consultar y definir mediante pam_env, sustituyendo al valor
por defecto.
Un ejemplo típico de cómo se podría utilizar pam_env sería adaptar la variable
DISPLAY, que se podría cambiar cuando se inicie sesión de forma remota. Este ejemplo
se muestra en Ejemplo 36.7, “pam_env.conf” (p. 585).
Ejemplo 36.7
REMOTEHOST
DISPLAY
pam_env.conf
DEFAULT=localhost OVERRIDE=@{PAM_RHOST}
DEFAULT=${REMOTEHOST}:0.0 OVERRIDE=${DISPLAY}
La primera línea define el valor de la variable REMOTEHOST en localhost, la cual
se utilizará cada vez que pam_env no pueda determinar ningún otro valor. La variable
DISPLAY, a su vez, contiene el valor de REMOTEHOST. Podrá obtener más información
a través de los comentarios del archivo /etc/security/pam_env.conf.
Autenticación con PAM
585
36.3.3 pam_pwcheck.conf
Este archivo de configuración corresponde al módulo pam_pwcheck, que lee las opciones que incluye para todos los módulos del tipo password. Los ajustes almacenados
en este archivo tienen preferencia sobre los ajustes PAM de una aplicación individual.
Si no se han definido los ajustes específicos de la aplicación, ésta utiliza los ajustes
globales. Ejemplo 36.8, “pam_pwcheck.conf” (p. 586) le indica a pam_pwcheck que
permita que se utilicen contraseñas vacías, así como que se modifiquen las contraseñas.
El archivo /etc/security/pam_pwcheck.conf menciona otras opciones disponibles para el módulo.
Ejemplo 36.8
password:
pam_pwcheck.conf
nullok
36.3.4 limits.conf
Se pueden definir límites del sistema para usuarios o para grupos en el archivo limits
.conf, el cual lee el módulo pam_limits. Este archivo le permite definir límites
rígidos, que no se podrán sobrepasar en absoluto, y límites flexibles, que sí se pueden
sobrepasar temporalmente. Lea los comentarios incluidos en el archivo para obtener
más información sobre la sintaxis empleada y las opciones disponibles.
36.4
Información adicional
En el directorio /usr/share/doc/packages/pam del sistema instalado encontrará la siguiente documentación adicional:
Archivos README (LÉAME)
El nivel superior de este directorio incluye archivos README generales. El subdirectorio modules tiene archivos README sobre los módulos PAM disponibles.
The Linux-PAM System Administrators' Guide (Guía del administrador del sistema
Linux-PAM)
Este documento incluye todo aquello que un administrador del sistema debería saber
sobre PAM. Todo explicado a través de una amplia gama de temas, desde la sintaxis
de los archivos de configuración a cuestiones de seguridad relacionadas con los
586
módulos PAM. Este documento está disponible en formato PDF, HTML y sólo
texto.
The Linux-PAM Module Writers' Manual (Manual del desarrollador de módulos
Linux-PAM)
Este documento resume los datos desde el punto de vista del desarrollador e incluye
información acerca de cómo desarrollar módulos PAM que cumplan con los estándares. El documento está disponible en formato PDF, HTML y sólo texto.
The Linux-PAM Application Developers' Guide (Guía del desarrollador de aplicaciones Linux-PAM)
Este documento incluye todo lo que debe saber el desarrollador de aplicaciones que
quiera utilizar las bibliotecas PAM. El documento está disponible en formato PDF,
HTML y sólo texto.
Thorsten Kukuk ha desarrollado una serie de módulos PAM para SUSE Linux y ha
dejado información al respecto en http://www.suse.de/~kukuk/pam/.
Autenticación con PAM
587
Virtualización mediante Xen
37
Xen hace posible ejecutar varios sistemas Linux en una máquina física. El hardware
para los distintos sistemas se proporciona de forma virtual. Este capítulo ofrece una
descripción general de las posibilidades y limitaciones de esta tecnología. Las secciones
sobre la instalación, configuración y ejecución de Xen completan esta introducción.
Por lo general, las máquinas virtuales necesitan imitar el hardware que un sistema necesita. El inconveniente es que el hardware emulado es mucho más lento que el real.
Xen adopta una perspectiva diferente, puesto que restringe la emulación al número
mínimo posible de partes. Para lograrlo, Xen utiliza la paravirtualización. Esta técnica
presenta máquinas virtuales de forma similar, aunque no idéntica, al hardware subyacente. Por lo tanto, los sistemas operativos del host y del invitado se adaptan al nivel
del núcleo. El espacio de usuario permanece sin cambios. Xen controla el hardware
con un hipervisor y un invitado controlador (también denominado "dominio-0"), que
proporcionan los dispositivos virtuales de bloque y de red necesarios. Los sistemas invitados utilizan estos dispositivos para ejecutar el sistema y realizar la conexión con
otros invitados o con la red local. Cuando varias máquinas físicas que ejecutan Xen se
configuran de tal forma que los dispositivos virtuales de bloque y de red se encuentran
disponibles, también resulta posible migrar un sistema invitado de un elemento de
hardware a otro durante su ejecución. Originariamente, Xen se desarrolló para funcionar
hasta con 100 sistemas invitados en un solo equipo; no obstante, este número presenta
una fuerte dependencia de los requisitos del sistema de los sistemas invitados en ejecución (sobre todo del uso de la memoria).
Para limitar el uso de la CPU, el hipervisor de Xen ofrece tres planificadores distintos.
El planificador también puede cambiarse durante la ejecución del sistema invitado, con
lo que se posibilita el cambio de prioridad del sistema invitado en ejecución. En un nivel
Virtualización mediante Xen
589
más alto, la migración de un invitado también puede utilizarse para ajustar los recursos
disponibles de la CPU.
El sistema de virtualización Xen también presenta algunas desventajas relacionadas
con el hardware admitido:
• varios controladores de origen cerrado, como los de Nvidia o ATI, no funcionan
como deberían. En estos casos, deben utilizarse los controladores de origen cerrado
si se encuentran disponibles, aun si no admiten todas las capacidades de los chips.
Al utilizar Xen, tampoco se admiten varios chips de WLAN y bridges Cardbus.
• En la versión 2, Xen no admite PAE (Extensión de dirección física), lo que significa
que no admite más de 4 GB de memoria.
• No es compatible con la ACPI (Interfaz avanzada de configuración y energía). La
gestión de energía y otros modos que dependen de la ACPI no funcionan.
590
Figura 37.1
Descripción general de Xen
Aplicación
de gestión
Gestión SO
del host
espacio de usuario
aplicaciones
Servicio SO
del invitado
Servicio SO
del invitado
espacio de usuario
aplicaciones
espacio de usuario
aplicaciones
Núcleo de Linux
Núcleo de Linux
Núcleo de NetWare
(paravirtual)
(paravirtual)
(paravirtual)
Controladores
del dispositivo
físico
E/S
E/S
Xen
Consola
virtual
CPU
virtual
Memoria
virtual
CPU
Red
virtual
Dispositivo de
bloque virtual
Memoria
Hardware físico (CPU, memoria, red, dispositivos de bloque)
37.1
Instalación de Xen
El procedimiento de instalación de Xen implica la configuración de un dominio dominio0 y la instalación de clientes Xen. En primer lugar, asegúrese de que los paquetes necesarios se encuentren instalados. Estos paquetes son python, bridge-utils, xen
y un paquete kernel-xen. Al utilizar paquetes SUSE, Xen se añade a la configuración
de GRUB. En otros casos, cree en boot/grub/menu.lst una entrada similar a la
siguiente:
title Xen2
kernel (hd0,0)/boot/xen.gz dom0_mem=458752
module (hd0,0)/boot/vmlinuz-xen <parameters>
module (hd0,0)/boot/initrd-xen
Virtualización mediante Xen
591
Sustituya (hd0,0) por la partición en la que se encuentre el directorio /boot. Consulte
también el Capítulo 29, Cargador de arranque (p. 469). Modifique la cantidad de
dom0_mem para que coincida con la de su sistema. El valor máximo es el de la memoria
del sistema, expresado en KB, menos 65.536. Sustituya <parameters> por los parámetros
que se utilizan normalmente en un núcleo Linux. A continuación, rearranque en modo
Xen. Esto arranca el hipervisor de Xen y un núcleo Linux ligeramente modificado como
dominio-0 que ejecuta la mayor parte del hardware. Aparte de las excepciones que ya
se han mencionado, todo debería funcionar normalmente.
37.2
Instalación de dominios
La instalación y configuración de un dominio invitado implica varios procedimientos.
A continuación, se explica la instalación de un primer dominio invitado y cómo completar la totalidad de las distintas tareas que hay que llevar a cabo para crear una primera
conexión de red.
Para instalar un sistema invitado, el usuario debe proporcionar un sistema de archivos
raíz en un dispositivo de bloque o en una imagen del sistema de archivos, lo cual requiere
llevar a cabo una configuración. Para acceder a este sistema posteriormente, utilice una
consola emulada o configure una conexión de red para este invitado. YaST admite la
instalación de SUSE Linux en un directorio. Los requisitos del hardware de este invitado
son parecidos a los de una instalación normal de Linux.
Los dominios pueden compartir sistemas de archivos montados en sólo lectura desde
todos los dominios, como /usr o /opt. Nunca debe compartirse un sistema de archivos
montado en lectura-escritura. Para compartir datos que pueden escribirse entre varios
dominios invitados, utilice NFS u otros sistemas de archivos estructurados en red o en
clústeres.
AVISO: Inicio de un dominio invitado
Al iniciar un dominio invitado, asegúrese de que un instalador o el dominio-0
controlador no vuelva a llevar a cabo el montaje de los sistemas de archivos
del invitado.
El primer paso es la creación de una imagen del sistema de archivos en la que se instale Linux para el invitado.
592
1 Para crear una imagen vacía con el nombre guest1 en el directorio /var/
tmp/ y con un tamaño de 4 GB, utilice el siguiente comando:
dd if=/dev/zero of=/var/tmp/guest1 seek=1M bs=4096 count=1
2 La imagen no es más que un gran archivo vacío sin ningún tipo de información.
Para poder escribir archivos en él, se necesita un sistema de archivos:
mkreiserfs -f /var/tmp/guest1
El comando mkreiserfs informa al usuario de que éste no es un dispositivo
especial de bloque y solicita confirmación. Para continuar, escriba Y y, a continuación, pulse Intro .
3 La instalación propiamente dicha se efectúa en un directorio. Por lo tanto, la
imagen del sistema de archivos /var/tmp/guest1 debe montarse en un directorio:
mkdir -p /var/tmp/dirinstall
mount -o loop /var/tmp/guest1 /var/tmp/dirinstall
IMPORTANTE
Cuando finalice la instalación, desmonte esta imagen del sistema de archivos.
Cuando se lleva a cabo la instalación, YaST también monta el sistema de archivos
/proc, que también debe desmontarse.
umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall
37.2.1 Instalación de dominios invitados
mediante YaST
Para instalar un dominio invitado mediante YaST, se necesita la imagen del sistema de
archivos preparada con anterioridad para el nuevo invitado. Inicie YaST y seleccione
Software → Installation into Directory for XEN (Instalación en directorio para XEN).
El módulo YaST para la instalación de directorios dispone de varias opciones que deben
definirse en función de las necesidades del usuario:
• Target Directory (Directorio de destino): /var/tmp/dirinstall
Virtualización mediante Xen
593
Defina esta opción como el punto de montaje de la imagen del sistema de archivos
que va a utilizarse. Por lo general, el valor que aparece por defecto es aceptable.
• Run YaST and SuSEconfig at First Boot (Ejecutar YaST y SuSEconfig en el primer
arranque): Yes (Sí)
Defina esta opción como Yes (Sí). Al iniciar el invitado, se le solicitará una contraseña root y un primer usuario.
• Create Image (Crear imagen): No
La imagen que se crea con esta opción es un archivo tar del directorio de instalación,
y no resulta de utilidad en este punto.
• Software
Seleccione el tipo de instalación que va a utilizar. Cualquiera de las opciones por
defecto deberían suponer un buen inicio.
Haga clic en Next (Siguiente) para iniciar la instalación. En función del número de paquetes, la instalación lleva más o menos tiempo. Una vez concluida la instalación, las
bibliotecas deben retirarse:
mv /var/tmp/dirinstall/lib/tls /var/tmp/dirinstall/lib/tls.disabled
Xen utiliza uno de los núcleos instalados en el dominio-0 para iniciar el dominio invitado. Para poder utilizar las funciones de red en el invitado, éste también debe tener
acceso a los módulos de este núcleo.
cp -a /lib/modules/$(rpm -qf --qf %{VERSION}-%{RELEASE}-xen \
/boot/vmlinuz-xen) /var/tmp/dirinstall/lib/modules
Para evitar errores del sistema de archivos, la imagen de éste debe desmontarse tras la
instalación:
umount /var/tmp/dirinstall/proc
umount /var/tmp/dirinstall/
Sería posible crear núcleos especializados para el dominio-0 y para los sistemas invitados
por separado. La diferencia principal son los controladores de hardware, que no resultan
necesarios en los sistemas invitados. Puesto que estos controladores son modulares y
no se utilizan en los sistemas invitados, SUSE tan sólo proporciona un núcleo para
ambas tareas.
594
37.2.2 Configuración de un sistema de
rescate para funcionar como
dominio invitado
La forma más sencilla de conseguir que un sistema se ejecute con rapidez es volver a
utilizar el sistema de archivos raíz, como el sistema de rescate de SUSE Linux. Básicamente, se debe intercambiar la imagen del núcleo y los controladores de dispositivos
virtuales de bloque y de red en esta imagen. Para hacer más fácil esta tarea, el guión
mk-xen-rescue-img.sh se encuentra disponible en /usr/share/doc/
packages/xen/.
El inconveniente de utilizar el método de rescate de construcción de un sistema de archivos raíz es que el resultado no cuenta con una base de datos RPM, de modo que no
se puede utilizar RPM para añadir paquetes con facilidad. Como aspecto positivo, cabe
destacar que el resultado es relativamente pequeño aunque disponga de la mayor parte
de los elementos que se necesitan para iniciar los trabajos de red.
Para ejecutar el guión mk-xen-rescue-img.sh, se necesita, al menos, el directorio
con la imagen de rescate y una ubicación de destino para la imagen resultante. Por defecto, el directorio se encuentra en el DVD de arranque, en el directorio /boot.
cd /usr/share/doc/packages/xen
./mk-xen-rescue-img.sh /media/dvd/boot /usr/local/xen 64
El primer parámetro del guión es el directorio de la imagen de rescate. El segundo es
el destino del archivo de la imagen. Los requisitos de espacio en disco del dominio invitado recién generado y la versión del núcleo que se va a utilizar son parámetros opcionales.
A continuación, el guión copia la imagen en la nueva ubicación, sustituye el núcleo y
varios de sus módulos e inhabilita el directorio tls del sistema. Como último paso,
genera un archivo de configuración para la nueva imagen en /etc/xen/.
Virtualización mediante Xen
595
37.3
Configuración de dominios
invitados Xen
La documentación sobre la configuración de un dominio invitado no es muy exhaustiva.
La mayor parte de la información disponible al respecto puede encontrarse en el archivo
de configuración de ejemplo /etc/xen/config. Se explican las opciones necesarias,
además de un valor por defecto o, al menos, una configuración de ejemplo. Para la
instalación que se describe en la Sección 37.2.1, “Instalación de dominios invitados
mediante YaST” (p. 593), cree un archivo /etc/xen/guest1 que tenga el siguiente
contenido:
kernel = "/boot/vmlinuz-xen"
❶
ramdisk = "/boot/initrd-xen"
❷
memory = 128
❸
name = "guest1"
❹
nics = "1"
❺
vif = [ 'mac=aa:cc:00:00:00:ab, bridge=xen-br0' ] ❻
disk = [ 'file:/var/tmp/guest1,hda1,w' ] ❼
root = "/dev/hda1 ro"
❽
extra = "3"
❾
596
❶
Especifique la vía hasta el núcleo Xen en el dominio-0. Este núcleo se ejecutará
posteriormente en el sistema invitado.
❷
Seleccione el disco RAM inicial apropiado que contiene los controladores del
dispositivo para el núcleo Xen. Si no se hace esto, el núcleo suele dejar de funcionar correctamente, al ser incapaz de montar su sistema de archivos raíz.
❸
Defina la cantidad de memoria que debería asignarse al dominio invitado. Esto
no puede llevarse a cabo si el sistema no dispone de suficiente memoria disponible
para sus invitados.
❹
El nombre para este invitado.
❺
El número de interfaces de redes virtuales para el dominio invitado.
❻
La configuración de la interfaz de red virtual, en la que se incluye su dirección
MAC y el bridge al que está conectada.
❼
Establezca los dispositivos de bloques virtuales para el invitado Xen. Para utilizar
los dispositivos de bloques reales, cree entradas como ['phy:sdb1,hda1,w',
'phy:system/swap1,hda2,w'].
❽
Define el dispositivo raíz para el núcleo. Éste debe ser el dispositivo virtual tal y
como lo ve el invitado.
❾
Aquí puede añadir parámetros de núcleo adicionales. El ejemplo 3 significa que
el invitado se ha iniciado en nivel de ejecución 3.
37.4
Inicio y control de dominios
Xen
Antes de que pueda iniciarse el dominio invitado, el hipervisor de Xen debe tener suficiente memoria libre para el nuevo invitado. En primer lugar, compruebe la cantidad
de memoria utilizada.
xm list
Name
Domain-0
Id
0
Mem(MB)
458
CPU
0
State
r----
Time(s)
181.8
Console
Si éste es un equipo con 512 MB, el hipervisor de Xen ocupa 64 MB y el dominio-0,
el resto. Para liberar parte de la memoria para el nuevo invitado, se utiliza xm balloon.
Para definir el tamaño del dominio-0 como 330 MB, establezca lo siguiente como
root:
xm balloon 0 330
En la siguiente ejecución de xm list, el uso de la memoria del dominio-0 debería
haber descendido a 330 MB. En ese momento habrá memoria disponible suficiente
para iniciar un invitado con 128 MB. El comando xm start guest1 -c inicia el
invitado y enlaza la consola de éste con el terminal actual. Si ésta es la primera vez que
se inicia este invitado, finalice la instalación con YaST.
Siempre es posible desconectar esta consola o volver a conectarla desde otro terminal.
Para llevar a cabo la desconexión, utilice Ctrl + ] . Para volver a conectarla, compruebe
en primer lugar el ID del invitado necesario mediante xm list y realice la conexión
con ese ID mediante xm console ID.
La herramienta xm de Xen tiene muchos parámetros posibles. Escriba xm help para
visualizar una lista con una breve explicación. La Tabla 37.1, “Comandos xm” (p. 598)
proporciona algunos de los comandos más importantes útiles como punto de partida.
Virtualización mediante Xen
597
Tabla 37.1
Comandos xm
xm help
Imprime una lista de los comandos disponibles para la
herramienta xm.
xm console ID
Efectúa la conexión con la primera consola (tty1) del invitado con el ID ID.
xm balloon ID Mem Establece el tamaño de la memoria del dominio con el ID
ID como Mem, expresado este último valor en MB.
xm create
nombredom [-c]
Inicia el dominio con el archivo de configuración
nombredom. El elemento opcional -c enlaza el terminal
actual con el primer tty del nuevo invitado.
xm shutdown ID
Apaga el invitado con el ID ID de la forma habitual.
xm destroy ID
Finaliza inmediatamente el invitado con el ID ID.
xm list
Imprime una lista de todos los dominios en ejecución con
sus IDs, memoria y valores temporales de la CPU.
xm info
Muestra información sobre el host Xen, incluida la relativa
a la memoria y a la CPU.
37.5
Información adicional
Puede encontrarse más información sobre Xen en los siguientes sitios Web:
• file:/usr/share/doc/packages/xen/user/html/index.html:
información oficial para usuarios de Xen. Se necesita el paquete xen-doc-html.
• file:/usr/share/doc/packages/xen/interface/html/index
.html: algo más de documentación técnica sobre la interfaz. También se necesita
el paquete xen-doc-html.
• http://www.cl.cam.ac.uk/Research/SRG/netos/xen/index
.html: página inicial de Xen con varios enlaces de documentación.
598
• http://lists.xensource.com/: varias listas de correos sobre Xen.
Virtualización mediante Xen
599
Parte IX. Servicios
Trabajo en red básico
38
Linux ofrece las herramientas y funciones necesarias para trabajar en red que se integran
en todos los tipos de estructuras de red. El protocolo tradicional de Linux, TCP/IP,
dispone de varios servicios y funciones especiales que se tratan aquí. El acceso a la red
mediante una tarjeta de red, un módem u otro dispositivo se puede configurar con YaST.
También es posible la configuración manual. En este capítulo, sólo se explican los
mecanismos fundamentales y los archivos de configuración de red relevantes.
Linux y otros sistemas operativos de Unix utilizan el protocolo TCP/IP. No se trata de
un único protocolo de red, sino de una familia de protocolos de red que ofrece varios
servicios. Los protocolos enumerados en la Tabla 38.1, “Algunos protocolos de la familia de protocolos TCP/IP” (p. 604) se proporcionan con el fin de intercambiar datos
entre dos máquinas mediante TCP/IP. Las redes combinadas por TCP/IP que forman
una red mundial se denominan en su totalidad “Internet”.
RFC significa petición de comentario. Las RFC (Peticiones de comentarios) son documentos que describen varios protocolos y procedimientos de implementación de Internet
para el sistema operativo y sus aplicaciones. Los documentos RFC describen la configuración de los protocolos de Internet. Para ampliar sus conocimientos acerca de cualquiera de los protocolos, consulte los documentos RFC apropiados. Están disponibles
en línea en la dirección http://www.ietf.org/rfc.html.
Trabajo en red básico
603
Tabla 38.1
Algunos protocolos de la familia de protocolos TCP/IP
Protocolo
Descripción
TCP
Protocolo de control de transmisión: Protocolo seguro orientado a la
conexión. Los datos que se van a transmitir se envían primero a la aplicación como flujo de datos y, a continuación, el sistema operativo los
convierte al formato apropiado. Los datos llegan a la aplicación correspondiente del host de destino en el formato original del flujo de datos
en el que se enviaron al principio. TCP determina si se ha perdido algún
dato durante la transmisión y que no se han mezclado. TCP se implementa donde la secuencia de datos es relevante.
UDP
Protocolo de datagramas de usuario: Protocolo inseguro y sin conexión.
Los datos que se van a transmitir se envían en forma de paquetes generados por la aplicación. No se garantiza el orden en el que los datos
llegan al destinatario y es posible que los datos se pierdan. UDP es
apropiado para las aplicaciones orientadas al registro. Presenta un período de latencia menor que el TCP.
ICMP
Protocolo de mensajes de control de Internet: Fundamentalmente, no
se trata de un protocolo para el usuario final, sino de un protocolo especial de control que genera informes de errores y que controla el comportamiento de las máquinas que participan en la transferencia de datos
mediante TCP/IP. Además, ofrece un modo especial de eco que se
puede visualizar mediante el programa ping.
IGMP
Protocolo de gestión de grupos de Internet: Este protocolo controla el
comportamiento de la máquina cuando se lleva a cabo la multidifusión
de IP.
Como se muestra en la Figura 38.1, “Modelo simplificado de capa para TCP/IP” (p. 605),
el intercambio de datos se lleva a cabo en diferentes capas. La capa de red es la transferencia de datos insegura mediante IP (Protocolo de Internet). Además del IP, el TCP
(protocolo de control de transmisión) garantiza, hasta cierto punto, la seguridad de la
transferencia de datos. El protocolo subyacente que depende del hardware, como ethernet, admite la capa IP.
604
Figura 38.1
Modelo simplificado de capa para TCP/IP
Host sun
Host earth
Capa de aplicaciones
Aplicaciones
Capa de aplicaciones
Capa de transporte
TCP, UDP
Capa de transporte
Capa de transporte
IP
Capa de transporte
Capa de enlaces de datos
Ethernet, FDDI, RDSI
Capa de enlaces de datos
Capa física
Cable, fibra de vidrio
Capa física
=
Transferencia de datos
En el diagrama se ofrecen uno o dos ejemplos de cada capa. Las capas de ordenan de
acuerdo con los niveles de abstracción. La capa inferior está íntimamente relacionada
con el hardware. La capa superior, sin embargo, es casi una abstracción completa del
hardware. Todas las capas tienen su propia función. Las funciones especiales de cada
capa están en su mayoría implícitas en la descripción. El enlace a los datos y las capas
físicas representan la red física utilizada, como ethernet.
Casi todos los protocolos de hardware funcionan por paquetes. Los datos que se van a
transmitir se agrupan por paquetes, porque no se pueden enviar todos de una vez. El
tamaño máximo de un paquete TCP/IP es aproximadamente 64 KB. Los paquetes suelen
ser bastante más pequeños porque el hardware de la red puede ser un factor restrictivo.
El tamaño máximo de un paquete de datos en una ethernet es aproximadamente de cien
bytes. El tamaño de un paquete TCP/IP está limitado a esta cantidad cuando los datos
se envían por ethernet. Si se transfieren más datos, el sistema operativo tiene que enviar
más paquetes de datos.
Para que las capas cumplan las funciones designadas, se debe guardar más información
relativa a cada capa en el paquete de datos. Esto se lleva a cabo en el encabezado del
paquete. Cada capa añade un pequeño bloque de datos, denominado encabezado de
protocolo, a la parte superior de cada paquete emergente. En la Figura 38.2, “Paquete
Trabajo en red básico
605
Ethernet TCP/IP” (p. 606), se muestra un paquete de datos TCP/IP de muestra que se
transmite por un cable ethernet. Esta suma de prueba se ubica al final del paquete, no
al principio. Esto simplifica las cosas para el hardware de red.
Figura 38.2
Paquete Ethernet TCP/IP
Datos de uso (máximo 1460 bytes)
(Capa 4) Encabezado de protocolo TCP (aprox. 20 bytes)
(Capa 3) Encabezado de protocolo IP (aprox. 20 bytes)
(Capa 2) Encabezado de protocolo (aprox. 14 bytes) Ethernet + suma de comprobación (2 bytes)
Cuando una aplicación envía datos a través de la red, los datos pasan por cada capa,
todos implementados en el núcleo de Linux excepto la capa física. Cada capa se encarga
de preparar los datos de modo que se puedan pasar a la siguiente capa. La capa inferior
es la responsable en último lugar de enviar los datos. El procedimiento entero se invierte
cuando se reciben los datos. En cada capa, los encabezados del protocolo se eliminan
de los datos transportados de arriba abajo. Finalmente, la capa de transporte se encarga
de hacer que los datos estén disponibles para que las aplicaciones los utilicen en el
destino. De este modo, una capa sólo se comunica con la inmediatamente superior o
inferior. Para las aplicaciones, no es relevante si los datos se transmiten mediante una
red FDDI de 100 MBit/s o mediante una línea de módem de 56 kbit/s. De forma similar,
el tipo de datos que se transmite es irrelevante para la línea de datos, siempre que los
paquetes tengan el formato correcto.
38.1
Direcciones IP y
encaminamiento
Esta sección está limitada a las redes IPv4. Para obtener información acerca del protocolo IPv6, sucesor de IPv4, consulte la Sección 38.2, “IPv6: Internet de la próxima
generación” (p. 609).
606
38.1.1 Direcciones IP
Cada equipo de Internet tiene una dirección única de 32 bits. Estos 32 bits (o 4 bytes)
se escriben normalmente como se ilustra en la segunda fila del Ejemplo 38.1, “Escritura
de direcciones IP” (p. 607).
Ejemplo 38.1
Escritura de direcciones IP
IP Address (binary): 11000000 10101000 00000000 00010100
IP Address (decimal):
192.
168.
0.
20
En formato decimal, los cuatro bytes se escriben en el sistema de numeración decimal,
separados por puntos. La dirección IP se asigna a un host o a una interfaz de red. No
se puede utilizar en ningún sitio más. Hay excepciones a esta regla, pero éstas no son
relevantes en los siguientes pasajes.
Los puntos de las direcciones IP indican el sistema jerárquico. Hasta 1990, las direcciones IP se clasificaban por clases de forma estricta. Sin embargo, se observó que este
sistema era demasiado inflexible y se dejó de utilizar. Ahora se utiliza encaminamiento
sin clase (CIDR, encaminamiento entre dominios sin clase).
38.1.2 Máscaras de red y encaminamiento
Las máscaras de red se utilizan para definir el rango de direcciones de una subred. Si
dos hosts se encuentran en la misma subred, pueden llegar el uno al otro directamente,
si no se encuentran en la misma subred, necesitan la dirección de una gateway que
gestione todo el tráfico entre la subred y el resto del mundo. Para comprobar si dos direcciones IP se encuentran en la misma subred, UNA ambas direcciones con la máscara
de red.“” Si el resultado es el mismo, las dos direcciones IP se encuentran en la misma
red local. Si hay diferencias, sólo será posible acceder a la dirección IP remota y, por
tanto a la interfaz remota, a través de una gateway.
Para entender cómo funciona la máscara de red, consulte el Ejemplo 38.2, “Enlace de
direcciones IP a la máscara de red” (p. 608) La máscara de red consta de 32 bits que
identifican qué parte de la dirección IP pertenece a la red. Todos los bits 1 marcan el
bit correspondiente de la dirección IP como perteneciente a la red. Todos los bits 0
marcan los bits que se encuentran en la subred. Esto significa que cuantos más bits sean
1, menor será la subred. Como la máscara de red consta siempre de varios bits 1 sucesivos, también es posible contar sólo el número de bits de la máscara de red. En el
Trabajo en red básico
607
Ejemplo 38.2, “Enlace de direcciones IP a la máscara de red” (p. 608), la primera red
con 24 bits también se podría escribir como 192.168.0.0/24.
Ejemplo 38.2
Enlace de direcciones IP a la máscara de red
IP address (192.168.0.20): 11000000 10101000 00000000 00010100
Netmask
(255.255.255.0): 11111111 11111111 11111111 00000000
--------------------------------------------------------------Result of the link:
11000000 10101000 00000000 00000000
In the decimal system:
192.
168.
0.
0
IP address (213.95.15.200): 11010101 10111111 00001111 11001000
Netmask
(255.255.255.0): 11111111 11111111 11111111 00000000
--------------------------------------------------------------Result of the link:
11010101 10111111 00001111 00000000
In the decimal system:
213.
95.
15.
0
Éste es otro ejemplo: todas las máquinas conectadas con el mismo cable ethernet se
ubican normalmente en la misma subred, y puede accederse a ellas directamente. Incluso
aunque la subred esté físicamente dividida por conmutadores o bridges, es posible acceder a estos hosts directamente.
Sólo se puede llegar a las direcciones IP externas a la subred local si se configura una
gateway para la red de destino. Normalmente, sólo hay una gateway que gestiona todo
el tráfico externo. Sin embargo, también es posible configurar varias gateways para
subredes diferentes.
Si se ha configurado una gateway, todos los paquetes IP externos se envían a la gateway
apropiada. A continuación, esta gateway trata de enviar estos paquetes del mismo modo
(de host a host), hasta que llega al host de destino o hasta que se agota el TTL ("tiempo
de vida") del paquete.
Tabla 38.2
Direcciones específicas
Tipo de dirección
Descripción
Dirección de red bá- La máscara de red UNE las direcciones de la red, como se
sica
muestra en el Ejemplo 38.2, “Enlace de direcciones IP a la
máscara de red” (p. 608) en Result. Esta dirección no se
puede asignar a todos los hosts.
Dirección de difusión
608
En general, esto significa “Acceder a todos los hosts de esta
subred”. Para generar esto, la red se invierte en formato binario
Tipo de dirección
Descripción
y se une a la dirección de red básica con un OR lógico. Por
tanto, el ejemplo anterior da como resultado 192.168.0.255.
Esta dirección no se puede asignar a todos los hosts.
Host local
La dirección 127.0.0.1 se asigna al “dispositivo de retrobucle” de cada host. Puede configurar una conexión en su
propia máquina con esta dirección.
Como las direcciones IP deben ser únicas en todo el mundo, no debe seleccionar sólo
direcciones aleatorias. Si desea configurar una red privada basada en IP, puede utilizar
tres dominios de direcciones. Éstos no obtienen ninguna conexión del resto de Internet,
porque no se pueden transmitir por Internet. Estos dominios de direcciones se especifican
en RFC 1597 y se enumeran en la Tabla 38.3, “Dominios de direcciones IP privadas”
(p. 609).
Tabla 38.3
Dominios de direcciones IP privadas
Subred/Máscara de red
Dominio
10.0.0.0/255.0.0.0
10.x.x.x
172.16.0.0/255.240.0.0
172.16.x.x – 172.31.x.x
192.168.0.0/255.255.0.0
192.168.x.x
38.2
IPv6: Internet de la próxima
generación
Debido al surgimiento de la WWW (World Wide Web), Internet ha crecido de forma
fulminante con un número de equipos que se comunican mediante TCP/IP que durante
los últimos quince años va en constante aumento. Desde que Tim Berners-Lee, del
CERN, (http://public.web.cern.ch) inventó la WWW en 1990, el número
de hosts de Internet ha crecido de unos cientos a cien millones aproximadamente.
Trabajo en red básico
609
Como se ha mencionado, una dirección IPv4 consta sólo de 32 bits. Además, se pierden
bastantes direcciones IP (que no se pueden utilizar debido al modo en que se organizan
las redes). El número de direcciones disponibles en la subred es dos veces la capacidad
del número de bits, menos dos. Una subred tiene, por ejemplo, 2, 6 ó 14 direcciones
disponibles. Para conectar 128 hosts a Internet, por ejemplo, se necesita una subred con
256 direcciones IP, de las que son utilizables 254 porque se necesitan dos direcciones
IP para la estructura de la subred en sí misma: la dirección de red básica y la dirección
de difusión.
En el protocolo IPv4 actual, DHCP o NAT (traducción de direcciones de red) son los
mecanismos típicos utilizados para eludir la posible falta de direcciones. Combinados
con la convención de mantener los espacios de las direcciones públicas y de las privadas
separados, estos métodos pueden mitigar la falta. El problema reside en su configuración,
que es una instalación ardua y una carga que mantener. Para configurar un host en una
red IPv4, se necesitan varios elementos de direcciones, como la propia dirección IP del
host, la subred, la dirección de gateway y quizás la dirección de un servidor de nombres.
Todos estos elementos deben conocerse y no se pueden derivar de ningún otro sitio.
Con IPv6, tanto la falta de direcciones como la configuración complicada se relegan al
pasado. En las siguientes secciones se ofrece más información acerca de las mejoras y
ventajas que ofrece IPv6 y acerca de la transición del protocolo antiguo al nuevo.
38.2.1 Ventajas
La mejora más importante y más visible que ofrece el protocolo nuevo es la enorme
ampliación del espacio de direcciones disponible. Una dirección IPv6 está formada por
valores de 128 bits en lugar de los 32 bits tradicionales. Esto proporciona varios cuatrillones de direcciones IP.
Sin embargo, las direcciones IPv6 no son diferentes de sus predecesoras en cuanto a la
longitud. También tienen una estructura interna diferente que puede contener más información específica acerca de los sistemas y de las redes a las que pertenecen. En la
Sección 38.2.2, “Tipos de direcciones y estructura” (p. 612) encontrará más información
acerca de esto.
A continuación, se muestra una lista con algunas otras ventajas del nuevo protocolo:
610
Configuración automática
IPv6 proporciona a la red una capacidad “plug and play”, lo que significa que un
sistema configurado recientemente se integra en la red local sin que haya que configurarlo de forma manual. El host nuevo utiliza el mecanismo de configuración automática para extraer su propia dirección a partir de la información que los routers
vecinos ponen a su disposición, mediante un protocolo denominado protocolo ND
descubrimiento de vecino. Este método no requiere intervención por parte del administrador y no es necesario mantener un servidor central para asignar direcciones
(una ventaja adicional respecto al IPv4), donde la asignación automática de direcciones requiere un servidor DHCP.
Movilidad
IPv6 hace posible asignar varias direcciones a una interfaz de red al mismo tiempo.
Esto permite a los usuarios acceder a varias redes fácilmente, algo que podría
compararse con los servicios internacionales de itinerancia que ofrecen las compañías
de telefonía móvil: si lleva el teléfono móvil al extranjero, el teléfono se registra en
un servicio de dicho país en cuanto entra en el área correspondiente, de modo que
podrá llamar y recibir llamadas desde el mismo número en todas partes, como si
estuviera en su país.
Comunicación segura
Con IPv4, la seguridad de la red es una función complementaria. IPv6 incluye IPSec
como una de sus funciones principales, lo que permite que los sistemas se comuniquen a través de un túnel de seguridad para evitar que los intrusos vean la información en Internet.
Compatibilidad inversa
Para ser realistas, sería imposible cambiar todo Internet de IPv4 a IPv6 a la vez. Por
tanto, es fundamental que los dos protocolos puedan coexistir no sólo en Internet,
sino también en un sistema. Esto se garantiza con direcciones compatibles (las direcciones IPv4 se pueden traducir en direcciones IPv6) y con el uso de varios túneles.
Consulte la Sección 38.2.3, “Coexistencia de IPv4 y IPv6” (p. 616). Además, los
sistemas se pueden basar en una técnica de IP de stack dual para admitir los dos
protocolos al mismo tiempo, lo que significa que tienen dos stacks de red completamente separados, de modo que no hay interferencias entre las dos versiones del
protocolo.
Servicios personalizados mediante multidifusión
Con IPv4, algunos servicios como MIB tienen que difundir los paquetes a todos los
hosts de la red local. IPv6 permite un enfoque mucho más preciso al habilitar los
Trabajo en red básico
611
servidores para dirigirse a los hosts mediante la multidifusión, es decir, llegando a
varios hosts como partes de un grupo (lo que es diferente de llegar a todos a través
de la difusión o a cada host por separado a través de la monodifusión). Los hosts a
los que se llega como grupo pueden depender de la aplicación en concreto. Hay algunos grupos predefinidos para llegar a todos los servidores de nombres (el grupo
de multidifusión a todos los servidores de nombres), por ejemplo, o a todos los
routers (el grupo de multidifusión a todos los routers).
38.2.2 Tipos de direcciones y estructura
Como ya se ha mencionado, el protocolo IP actual tiene dos deficiencias importantes:
cada vez faltan más direcciones IP y la configuración de la red y el mantenimiento de
las tablas de encaminamiento son tareas cada vez más complejas y costosas. IPv6 soluciona el primer problema ampliando el espacio de las direcciones hasta 128 bits. El
segundo se contrarresta introduciendo una estructura jerárquica de direcciones, combinada con sofisticadas técnicas para asignar direcciones de red, además de multinodo
(capacidad de asignar varias direcciones a un dispositivo, lo que proporciona acceso a
varias redes).
Al utilizar IPv6, resulta útil conocer tres tipos de direcciones diferentes:
Monodifusión
Las direcciones de este tipo se asocian exactamente a una interfaz de red. Los paquetes con una dirección de este tipo se entregan sólo a un destino. Por tanto, las
direcciones de monodifusión se utilizan para transferir paquetes a hosts por separado
en la red local o en Internet.
Multidifusión
Las direcciones de este tipo están relacionadas con un grupo de interfaces de red.
Los paquetes con direcciones de ese tipo se entregan en todos los destinos que pertenecen al grupo. Las direcciones de multidifusión las utilizan principalmente algunos
servicios de red para comunicarse con ciertos grupos de hosts de una forma precisa.
Cualquier difusión
Las direcciones de este tipo están relacionadas con un grupo de interfaces. Los paquetes con una dirección de ese tipo se entregan al miembro del grupo más cercano
al remitente, de acuerdo con los principios del protocolo subyacente de encaminamiento. Las direcciones de cualquier difusión se utilizan para facilitar que los hosts
encuentren servidores que ofrezcan ciertos servicios en el área de red en cuestión.
612
Todos los servidores del mismo tipo tienen la misma dirección de cualquier difusión.
Siempre que un host solicita un servicio, recibe una respuesta del servidor más
cercano, como determina el protocolo de encaminamiento. Si por algún motivo el
servidor fallara, el protocolo selecciona de forma automática el segundo servidor
más cercano, a continuación, el tercero, etc.
Una dirección IPv6 está formada por ocho campos de cuatro dígitos, cada uno de los
cuales representa 16 bits escritos en notación hexadecimal. También se separan mediante
dos puntos (:). Los bytes de ceros situados al principio de un campo se pueden eliminar,
pero los ceros del campo o del final, no. Otra convención es que más de cuatro bytes
consecutivos de ceros se pueden colapsar en dos signos de dos puntos. Sin embargo,
sólo se permite :: por dirección. Este tipo de notación abreviada se muestra en el
Ejemplo 38.3, “Dirección IPv6 de muestra” (p. 613), donde las tres líneas representan
la misma dirección.
Ejemplo 38.3
Dirección IPv6 de muestra
fe80 : 0000 : 0000 : 0000 : 0000 : 10 : 1000 : 1a4
fe80 :
0 :
0 :
0 :
0 : 10 : 1000 : 1a4
fe80 :
: 10 : 1000 : 1a4
Cada parte de una dirección IPv6 tiene una función definida. Los primeros bytes forman
el prefijo y especifican el tipo de dirección. La parte central es la parte de red de la dirección, pero puede no utilizarse. El final de la dirección forma la parte del host. Con
IPv6, la máscara de red se define indicando la longitud del prefijo después de una barra
al final de la dirección. Una dirección, como se muestra en el Ejemplo 38.4, “Dirección
IPv6 encargada de especificar la longitud del prefijo” (p. 613), contiene información
para que los primeros 64 bits formen la parte de red de la dirección y para que los últimos
64 formen la parte del host. En otras palabras, el 64 significa que la máscara de red se
rellena con 64 valores de 1 bit de izquierda a derecha. Al igual que sucede con IPv4,
la dirección IP se combina con AND con los valores de la máscara de red para determinar
si el host se ubica en la misma red o en otra.
Ejemplo 38.4
Dirección IPv6 encargada de especificar la longitud del prefijo
fe80::10:1000:1a4/64
IPv6 reconoce varios tipos predefinidos de prefijos. Algunos de ellos se muestran en
la Tabla 38.4, “Varios prefijos IPv6” (p. 614).
Trabajo en red básico
613
Tabla 38.4
Varios prefijos IPv6
Prefijo (hex.)
Definición
00
Direcciones de compatibilidad para direcciones IPv4 y para direcciones IPv4 sobre IPv6. Éstas se utilizan para mantener la compatibilidad con IPv4, pero, para utilizarlas, sigue siendo necesario
un router con capacidad para traducir paquetes IPv6 en paquetes
IPv4. Varias direcciones especiales, como la del dispositivo de
retrobucle, también tienen este prefijo.
2 ó 3 como primer dígito
Direcciones globales de monodifusión agregables. Como sucede
con IPv4, se puede asignar una interfaz para que forme parte de
una cierta subred. Actualmente, existen los siguientes espacios de
direcciones: 2001::/16 (espacio de dirección de calidad de
producción) y 2002::/16 (espacio de direcciones 6to4).
fe80::/10
Direcciones locales de enlace. Las direcciones con este prefijo no
deberían encaminarse y, por tanto, sólo se debería llegar a ellas
desde la misma subred.
fec0::/10
Direcciones locales de sitio. Éstas se pueden encaminar, pero sólo
en la red de la organización a la que pertenecen. En efecto, son el
equivalente de IPv6 del espacio actual de direcciones de red privada, como 10.x.x.x.
ff
Éstas son direcciones de multidifusión.
Una dirección de monodifusión consta de tres componentes básicos:
Topología pública
La primera parte (que contiene también uno de los prefijos mencionados anteriormente) se utiliza para encaminar paquetes a través de Internet. Incluye información
acerca de la compañía o de la institución que proporciona el acceso a Internet.
Topología del sitio
La segunda parte contiene información de encaminamiento acerca de la subred en
la que se va a entregar el paquete.
614
ID de interfaz
La tercera parte identifica la interfaz en la que se va a entregar el paquete. Esto
también permite que el identificador MAC forme parte de la dirección. Como el
MAC es un identificador único y flexible codificado en el dispositivo por el fabricante de hardware, el procedimiento de configuración se simplifica de forma sustancial. De hecho, los primeros 64 bits de las direcciones se consolidan para formar el
testigo EUI-64. De ellos, los últimos 48 bits se toman del MAC y los 24 restantes
contienen información especial acerca del tipo de testigo. Esto también hace que
sea posible asignar un testigo EUI-64 a las interfaces que no disponen de un MAC,
como las basadas en PPP o en RDSI.
Además de esta estructura básica, IPv6 distingue entre cinco tipos diferentes de direcciones de monodifusión:
:: (no especificada)
El host utiliza esta dirección como dirección de origen cuando la interfaz se inicializa por primera vez, cuando la dirección no se puede determinar por otros medios.
::1 (retrobucle)
Dirección del dispositivo de retrobucle.
Direcciones compatibles con IPv4
La dirección IPv6 está formada por la dirección IPv4 y un prefijo que consiste en
96 bits cero. Este tipo de dirección de compatibilidad se utiliza para formar túneles
(consulte la Sección 38.2.3, “Coexistencia de IPv4 y IPv6” (p. 616)) para permitir
que los hosts IPv4 y IPv6 se comuniquen con otros que funcionan en un entorno
IPv4 puro.
Direcciones IPv4 asignadas a IPv6
Este tipo de dirección especifica una dirección IPv4 pura en notación IPv6.
Direcciones locales
Éstos son dos tipos de direcciones para uso local:
local de enlace
Este tipo de dirección sólo se puede utilizar en la subred local. Los paquetes con
una dirección de origen o de destino de este tipo no deberían encaminarse a Internet ni a otras subredes. Estas direcciones contienen un prefijo especial
(fe80::/10) y el ID de interfaz de la tarjeta de red, cuya parte central consiste
en bytes ceros. Las direcciones de este tipo se utilizan durante la configuración
automática para comunicarse con otros hosts que pertenecen a la misma subred.
Trabajo en red básico
615
local de sitio
Los paquetes que tienen este tipo de dirección se pueden encaminar a otras
subredes, pero no a Internet: deben permanecer dentro de la propia red de la
organización. Dichas direcciones se utilizan para las intrarredes y son un equivalente del espacio de direcciones privadas definido por IPv4. Contienen un
prefijo especial (fec0::/10), el ID de interfaz y un campo de 16 bits que especifica el ID de subred. De nuevo, el resto se rellena con bytes ceros.
IPv6 introduce una función completamente nueva que consiste en que cada interfaz de
red consigue normalmente varias direcciones IP, con la ventaja de que se puede acceder
a varias redes a través de la misma interfaz. Una de estas redes se puede configurar de
forma completamente automática mediante el MAC y un prefijo conocido que hace
que se pueda llegar a todos los hosts de la red local en cuanto se habilita IPv6 (mediante
la dirección local de enlace). Cuando el MAC forma parte de la dirección, ésta es única
en el mundo. Las únicas partes variables de la dirección son las que especifican la topología del sitio y la topología pública, en función de la red en la que funcione el host.
Para que un host retroceda y avance entre redes diferentes, necesita al menos dos direcciones. Una de ellas, la dirección personal, no sólo contiene el ID de interfaz, sino
también un identificador de la red personal a la que pertenece normalmente (y el prefijo
correspondiente). La dirección personal es una dirección estática y, como tal, no suele
cambiar. Aún así, todos los paquetes destinados al host móvil se le pueden entregar,
independientemente de si funciona en la red personal o fuera de ella. Esto es posible
gracias a las funciones completamente nuevas introducidas con IPv6 como la configuración automática sin estado y el descubrimiento de vecino. Además de la dirección
personal, un host móvil consigue una o varias direcciones adicionales que pertenecen
a las redes externas en las que está en itinerancia. Éstas se denominan direcciones de
auxilio. La red personal tiene un componente que envía los paquetes destinados al host
cuando está en itinerancia. En un entorno IPv6, esta tarea la lleva a cabo el agente
personal, que lleva todos los paquetes destinados a la dirección personal y los transmite
a través de un túnel. Por otro lado, los paquetes destinados a la dirección de auxilio se
transfieren directamente al host móvil sin ninguna desviación especial.
38.2.3 Coexistencia de IPv4 y IPv6
La migración de todos los hosts conectados a Internet de IPv4 a IPv6 es un proceso
gradual. Los dos protocolos coexistirán durante algún tiempo. La coexistencia en un
sistema se garantiza donde se produce una implementación de stack dual en los dos
protocolos. Aún queda pendiente la cuestión de cómo debería comunicarse un host ha-
616
bilitado con IPv6 con un host IPv4 y cómo deberían transportarse los paquetes IPv6
por las redes actuales, que normalmente están basadas en IPv4. Las mejores soluciones
ofrecen túneles y direcciones de compatibilidad (consulte la Sección 38.2.2, “Tipos de
direcciones y estructura” (p. 612)).
Los hosts IPv6 más o menos aislados en la red (mundial) IPv4 se pueden comunicar a
través de túneles: Los paquetes IPv6 se agrupan como paquetes IPv4 para desplazarlos
a través de una red IPv4. Dicha conexión entre dos hosts IPv4 se denomina túnel. Para
lograrlo, los paquetes deben incluir la dirección de destino IPv6 (o el prefijo correspondiente) y la dirección IPv4 del host remoto situado en el extremo receptor del túnel. Un
túnel básico se puede configurar de forma manual con un acuerdo entre administradores
de los hosts. También se denomina túnel estático.
Sin embargo, la configuración y el mantenimiento de los túneles estáticos suelen llevar
demasiado trabajo como para utilizarlos en la comunicación diaria. Por tanto, IPv6
proporciona tres métodos diferentes de túnel dinámico:
6over4
Los paquetes IPv6 se agrupan de forma automática como paquetes IPv4 y se envían
a través de una red IPv4 con capacidad de multidifusión. IPv6 se truca para ver la
red entera (Internet) como una red de área local enorme (LAN). Esto hace posible
determinar el extremo receptor del túnel IPv4 de forma automática. Sin embargo,
el proceso de escalación de este método no es demasiado sencillo y se ve dificultado
por el hecho de que la difusión múltiple IP está poco extendida en Internet. Por
tanto, sólo proporciona una solución para redes corporativas o institucionales más
pequeñas en las que se puede habilitar la multidifusión. Las especificaciones para
este método se exponen en RFC 2529.
6to4
Con este método, las direcciones IPv4 se generan de forma automática a partir de
direcciones IPv6, lo que permite a los hosts IPv6 comunicarse a través de una red
IPv4. Sin embargo, se han detectado varios problemas relativos a la comunicación
entre hosts IPv6 aislados e Internet. El método se describe en RFC 3056.
Tunnel Broker para IPv6
Este método se lleva a cabo en servidores especiales que proporcionan túneles específicos para los hosts IPv6. Se describe en RFC 3053.
Trabajo en red básico
617
IMPORTANTE: Iniciativa 6bone
Como vestigio del “antiguo” Internet, ya existe una red distribuida en todo el
mundo de subredes IPv6 conectadas mediante túneles. Ésta es la red 6bone
(http://www.6bone.net), un entorno de prueba IPv6 que los programadores y los proveedores de Internet pueden utilizar para desarrollar y ofrecer
servicios basados en IPv6 y adquirir la experiencia necesaria para implementar
el nuevo protocolo. Encontará más información en el sitio de Internet del
proyecto.
38.2.4 Configuración de IPv6
Para configurar IPv6, normalmente no es necesario realizar cambios en cada estación
de trabajo. Sin embargo, se debe cargar la compatibilidad con IPv6. Para hacerlo, introduzca modprobe ipv6 como root.
Gracias al concepto de configuración automática de IPv6, a la tarjeta de red se le asigna
una dirección en la red local de enlace. Normalmente, en las estaciones de trabajo no
se lleva a cabo la gestión de tablas de encaminamiento. La estación de trabajo puede
consultar a los routers de red, mediante el protocolo de anuncio de servicios, qué prefijo
y gateways deberían implementarse. El programa radvd se puede utilizar para configurar
un router IPv6. Este programa informa a las estaciones de trabajo acerca de qué prefijo
y qué routers se deben utilizar para las direcciones IPv6. Como alternativa, utilice zebra
para la configuración automática de las direcciones y del encaminamiento.
Consulte la página Man de ifup(8) para obtener información acerca de cómo configurar
varios tipos de túneles mediante los archivos /etc/sysconfig/network.
38.2.5 Información adicional
La descripción anterior no explica el IPv6 exhaustivamente. Para obtener información
más detallada acerca del nuevo protocolo, consulte la siguiente documentación en línea
y los siguientes libros:
http://www.ngnet.it/e/cosa-ipv6.php
Serie de artículos que proporciona una introducción bien escrita a los aspectos fundamentales de IPv6. Buen manual para obtener las nociones básicas.
618
http://www.bieringer.de/linux/IPv6/
Aquí encontrará la ayuda de Linux IPv6 y muchos enlaces relacionados con el tema.
http://www.6bone.net/
Visite este sitio si desea entrar a formar parte de una red IPv6 con túneles.
http://www.ipv6.org/
Punto de partida para todo lo relacionado con IPv6.
RFC 2640
RFC fundamental acerca de IPv6.
IPv6 Essentials
Un libro que describe todos los aspectos importantes del asunto es IPv6 Essentials,
escrito por Silvia Hagen (ISBN 0-596-00125-8).
38.3
Resolución de nombres
DNS ayuda a asignar una dirección IP a uno o varios nombres y a asignar un nombre
a una dirección IP. En Linux, esta conversión la suele llevar a cabo un tipo especial de
software denominado "Bind". La máquina que se encarga de esta conversión se denomina servidor de nombres. Los nombres forman un sistema jerárquico en el que el
componente de cada nombre se separa mediante puntos. La jerarquía de nombres es,
sin embargo, independiente de la jerarquía de direcciones IP descrita anteriormente.
Tomemos como ejemplo un nombre completo, como earth.example.com, escrito
en formato hostname.domain. Un nombre completo, denominado FDQN (Nombre
de dominio completo), consta de un nombre de host y un nombre de dominio
(example.com). El último incluye también el dominio de nivel superior o TLD (com).
Por razones históricas, la asignación de TLD se ha convertido en algo bastante confuso.
Tradicionalmente, los nombres de dominios de tres letras se utilizan en EE.UU. En el
resto del mundo, el estándar son los códigos nacionales ISO de dos letras. Además de
esto, en 2000 se introdujeron TLDs mayores que representan ciertas esferas de actividad
(por ejemplo, .info, .name, .museum).
En los comienzos de Internet (antes de 1990), el archivo /etc/hosts se utilizó para
almacenar los nombres de todas las máquinas representadas en Internet. Esto resultó
ser poco práctico debido al creciente número de equipos conectados a Internet. Por esta
Trabajo en red básico
619
razón, se desarrolló una base de datos descentralizada para almacenar los nombres de
hosts de un modo ampliamente distribuido. Esta base de datos, similar al servidor de
nombres, no tiene los datos que pertenecen a todos los hosts de Internet disponibles,
pero puede enviar peticiones a otros servidores de nombres.
La parte superior de la jerarquía la ocupan los servidores de nombres de root. Estos
servidores de nombres de root gestionan los dominios del nivel superior y se ejecutan
en el NIC (Centro de información de red). Cada servidor de nombres de root reconoce
los servidores de nombres encargados de un dominio de nivel superior dado. La información acerca de los NIC de dominios de nivel superior está disponible en la dirección
http://www.internic.net.
DNS puede hacer más que simplemente resolver nombres de host. El servidor de
nombres también reconoce qué host recibe mensajes de correo electrónico para un dominio entero (intercambiador de correo (MX).
Para que la máquina resuelva una dirección IP, debe reconocer al menos un servidor
de nombres y sus direcciones IP. Especifique de forma sencilla un servidor de nombres
con la ayuda de YaST. Si dispone de una conexión de marcación por módem, puede
que no tenga que configurar un servidor de nombres de forma manual. El protocolo de
marcación proporciona la dirección del servidor de nombres a medida que se realiza la
conexión. La configuración del acceso del servidor de nombres con SUSE Linux se
describe en el Capítulo 40, DNS (Domain Name System) (p. 651).
El protocolo whois está íntimamente relacionado con DNS. Con este programa, encontrará rápidamente quién es el responsable de un dominio en cuestión.
38.4
Configuración de una conexión
de red con YaST
Linux es compatible con muchos tipos de red. La mayoría utiliza nombres de dispositivo
diferentes y sus archivos de configuración están repartidos por diferentes ubicaciones
del sistema de archivos. Para ver una descripción general de los diferentes aspectos de
la configuración manual de redes, consulte la Sección 38.5, “Configuración manual de
una conexión de red” (p. 631).
Durante la instalación, se puede utilizar YaST para configurar automáticamente todas
las interfaces que se hayan detectado. El resto del hardware se puede configurar en
620
cualquier momento después de instalarlo en el sistema instalado. En las siguientes
secciones se describe la configuración de la red para todos los tipos de conexiones de
red admitidos por SUSE Linux.
38.4.1 Configuración de la tarjeta de red
con YaST
Después de iniciar el módulo, YaST muestra un cuadro de diálogo de configuración
general de la red. La parte superior muestra una lista de las tarjetas de red que aún no
se han configurado. Las tarjetas de red detectadas correctamente aparecen con su
nombre. Los dispositivos que no se han podido detectar pueden configurarse con Otro
(no detectado) tal y como se describe en la “Configuración manual de una tarjeta de
red no detectada” (p. 621). En la parte inferior, el cuadro de diálogo muestra una lista
de los dispositivos configurados hasta el momento, con su tipo de red y su dirección.
En este punto se puede configurar una nueva tarjeta de red o modificar una configuración
existente.
Configuración manual de una tarjeta de red no
detectada
La configuración de una tarjeta de red que no se ha detectado (mostrada como Otro)
incluye los elementos siguientes:
Configuración de red
Seleccione el tipo de dispositivo de la interfaz entre las opciones disponibles y establezca el nombre de la configuración. Encontrará información sobre las convenciones
de nomenclatura de los nombres de configuración en la página Man de getcfg(8).
Módulo del núcleo
Nombre de la configuración de hardware especifica el nombre del archivo /etc/
sysconfig/hardware/hwcfg-* que contiene los ajustes de hardware de la
tarjeta de red. En él se indica el nombre del módulo del núcleo adecuado así como
las opciones necesarias para inicializar el hardware. Normalmente, YaST sugiere
nombres útiles para hardware PCMCIA y USB. Para el resto de hardware,
hwcfg-static-0 sólo tiene sentido si la tarjeta se ha configurado con el nombre
de configuración 0.
Trabajo en red básico
621
Si la tarjeta de red es un dispositivo PCMCIA o USB, active las casillas de verificación correspondientes y salga del cuadro de diálogo mediante Siguiente. En caso
contrario, seleccione el modelo de la tarjeta de red con Seleccionar de la lista. YaST
seleccionará automáticamente el módulo del núcleo adecuado para la tarjeta. Salga
del cuadro de diálogo mediante Siguiente.
Figura 38.3
Configuración de la tarjeta de red
Configuración de la dirección de red
Seleccione el tipo de dispositivo de la interfaz y establezca el nombre de la configuración.
Seleccione el tipo de dispositivo entre los ofrecidos. Especifique un nombre de configuración según sus necesidades. No obstante, los ajustes por defecto sirven y se pueden
aceptar. Encontrará información sobre las convenciones de nomenclatura de los nombres
de configuración en la página Man de getcfg(8).
Si ha seleccionado Wireless (Inalámbrico) como tipo de dispositivo de la interfaz,
configure el modo de funcionamiento, el nombre de la red (ESSID) y el cifrado en el
siguiente cuadro de diálogo, Configuración de la tarjeta de red inalámbrica. Haga clic
en Aceptar para completar la configuración de la tarjeta. En la Sección 22.1.3, “Configuración con YaST” (p. 318) se ofrece una descripción detallada de la configuración de
622
tarjetas WLAN. Para los demás tipos de interfaz, continúe con la configuración de la
dirección de red:
Automatic Address Setup (via DHCP) (Configuración automática de direcciones
[mediante DHCP])
Si la red cuenta con un servidor DHCP, puede delegar en él la configuración automática de la dirección de red. También se debe seleccionar esta opción si se utiliza
una línea DSL pero el ISP no le asigna una IP estática. Si decide utilizar DHCP,
seleccione Opciones del cliente DHCP y configure los detalles. Especifique si el
servidor DHCP debería responder siempre a las peticiones y el identificador que
debe utilizarse. Por defecto, los servidores DHCP utilizan la dirección de hardware
de la tarjeta para identificar una interfaz. Si existe una configuración de host virtual
en la que varios hosts se comunican por medio de la misma interfaz, será necesario
un identificador para distinguirlos.
Configuración de la dirección estática
Si dispone de una dirección estática, habilite esta opción. A continuación, introduzca
la dirección y la máscara de subred de la red. La máscara de subred predefinida
suele ser adecuada para las necesidades de una red doméstica típica.
Abandone el cuadro de diálogo seleccionando Siguiente o continúe con la configuración
del nombre de host, del servidor de nombres y de los detalles de encaminamiento
(consulte la Servidor DNS (↑Inicio) y la Encaminamiento (↑Inicio)).
Avanzado permite especificar ajustes más complejos. En Detailed Settings (Configuración detallada), utilice User Controlled (Controlada por el usuario) para delegar el
control de la tarjeta de red del administrador (usuario root) en el usuario normal. En
movilidad, esto permite que el usuario se adapte a los cambios en las conexiones de
red de una manera más flexible, ya que puede controlar la activación y la desactivación
de la interfaz. En este cuadro de diálogo también pueden establecerse la MTU (Unidad
máxima de transmisión) y el tipo de Activación del dispositivo.
38.4.2 Módem
En el Centro de control de YaST, acceda a la configuración del módem en Dispositivos
de red. Si el módem no se ha detectado automáticamente, abra el cuadro de diálogo de
configuración manual. En el cuadro de diálogo que se abrirá, introduzca la interfaz a
la que está conectado el módem en Módem.
Trabajo en red básico
623
Figura 38.4
Configuración del módem
Si le suministra el servicio una central telefónica (PBX), es posible que sea necesario
introducir un prefijo de marcado. A menudo, se trata de un cero. Consulte las instrucciones de la PBX para averiguarlo. Seleccione también si se utilizará marcado por tonos
o por impulsos, si el altavoz debe estar conectado y si el módem debe esperar hasta que
detecte el tono de marcado. No debe habilitarse esta última opción si el módem está
conectado a una central telefónica.
En Detalles, establezca la velocidad en baudios y las cadenas de inicialización del módem. Cambie estos ajustes sólo si el módem no se ha detectado automáticamente o si
son necesarios ajustes especiales para que funcione la transmisión de datos. Éste es en
general el caso de los adaptadores de terminal RDSI. Salga del cuadro de diálogo haciendo clic en Aceptar. Para delegar el control del módem en el usuario normal sin
permisos de usuario root, active Controlado por el usuario. Así, un usuario sin permisos
de administrador puede activar y desactivar la interfaz. En Expresión regular para el
prefijo de marcado, especifique una expresión regular. El Prefijo de marcado de KInternet, que puede ser modificado por el usuario, debe coincidir con esta expresión regular.
Si el campo se deja vacío, el usuario no podrá definir otro Prefijo de marcado sin permisos de administrador.
En el siguiente cuadro de diálogo, seleccione el ISP (Internet service provider) (Proveedor de servicios de Internet). Para elegirlo en una lista predefinida de IPS que opere en
624
su país, seleccione País. Como alternativa, haga clic en Nuevo para abrir un cuadro de
diálogo e introducir los datos de su ISP. Esto incluye un nombre para la conexión de
acceso telefónico y el ISP, además del nombre de usuario y la contraseña proporcionados
por el ISP. Habilite Pedir siempre la contraseña para que se pida siempre la contraseña
al conectar.
En el último cuadro de diálogo, especifique las opciones de conexión adicionales.
Llamada bajo demanda
Si habilita la llamada bajo demanda, establezca al menos un servidor de nombres.
Modificar DNS si conectado
Esta opción se encuentra habilitada por defecto; como resultado, la dirección del
servidor de nombres se actualiza cada vez que se realiza la conexión a Internet.
Obtención automática de DNS
Si el proveedor no transmite su servidor de nombres de dominio al conectar, desactive esta opción e introduzca manualmente los datos del DNS.
Modo estúpido
Esta opción está habilitada por defecto. Con ella, no se tienen en cuenta los indicadores de entrada enviados por el servidor del ISP para evitar que interfieran con el
proceso de conexión.
Interfaz externa del cortafuegos y Reiniciar cortafuegos
La selección de estas opciones habilita SUSEfirewall2, el cual ofrece protección
ante ataques externos durante la conexión a Internet.
Tiempo de inactividad (segundos)
Especifique mediante esta opción el periodo de inactividad de la red tras el cual el
módem se desconectará automáticamente.
IP Details (Detalles IP)
Esto abre el cuadro de diálogo de configuración de la dirección. Si el ISP no asigna
una dirección IP dinámica al host, deshabilite Dirección IP dinámica e introduzca
la dirección IP del host local y la dirección IP remota. Solicite esta información al
ISP. Deje Ruta predeterminada habilitada y cierre el cuadro de diálogo seleccionando
Aceptar.
Con Siguiente se vuelve al cuadro de diálogo original, que muestra un resumen de la
configuración del módem. Cierre el cuadro de diálogo con Finalizar.
Trabajo en red básico
625
38.4.3 RDSI
Este módulo se utiliza para configurar una o varias tarjetas RDSI para el sistema. Si
YaST no ha detectado la tarjeta RDSI, selecciónela manualmente. Son posibles múltiples
interfaces, pero se pueden configurar varios ISP para una interfaz. En los cuadros de
diálogo siguientes, establezca las opciones RDSI necesarias para el funcionamiento
adecuado de la tarjeta.
Figura 38.5
Configuración de RDSI
En el siguiente cuadro de diálogo, que se muestra en la Figura 38.5, “Configuración de
RDSI” (p. 626), seleccione el protocolo que se utilizará. La opción por defecto es EuroISDN (EDSS1), pero para centrales grandes o antiguas, seleccione 1TR6. Si se encuentra
en los Estados Unidos, seleccione NI1. Seleccione su país en el campo correspondiente.
El código del país aparecerá en el campo adyacente. Por último, introduzca el Prefijo
y el Prefijo de marcado si es necesario.
Modo de inicio define cómo debe iniciarse la interfaz RDSI: Durante el arranque hace
que el controlador RDSI se inicialice cada vez que arranque el sistema. Manualmente
le solicita que cargue el controlador RDSI como usuario root mediante el comando
rcisdn start. Hotplug, que se utiliza para dispositivos PCMCIA y USB, carga el
controlador al enchufar el dispositivo. Cuando haya terminado con los ajustes, seleccione
Aceptar.
626
En el siguiente cuadro de diálogo, especifique el tipo de interfaz de la tarjeta RDSI y
añada ISP a una interfaz existente. Las interfaces pueden ser del tipo SyncPPP o
RawIP, pero la mayoría de los ISP trabajan con el modo SyncPPP, que se describe a
continuación.
Figura 38.6
Configuración de la interfaz RDSI
El número que hay que introducir en Mi número de teléfono depende de cada configuración concreta:
Tarjeta RDSI conectada directamente a la toma de teléfono
Una línea RDSI estándar ofrece tres números de teléfono (los llamados números
múltiples de suscriptor o MSN). Si el suscriptor solicitó más, pueden ser hasta 10.
En este campo debe introducirse uno de estos MSN, pero sin el prefijo. Si se introduce un número incorrecto, el operador de telefonía volverá automáticamente al
primer MSN asignado a la línea RDSI.
Tarjeta RDSI conectada a una central telefónica
De nuevo, la configuración puede variar en función de los equipos instalados:
1.
Las centrales telefónicas pequeñas diseñadas para uso doméstico utilizan en
su mayoría el protocolo Euro-ISDN (EDSS1) para las llamadas internas. Estas
centrales tienen un bus S0 interno y utilizan números internos para los equipos
conectados a ellas.
Trabajo en red básico
627
Utilice uno de los números internos como MSN. Debería poder utilizar al menos
uno de los MSN de la central que se hayan habilitado para el marcado directo
al exterior. Si no funciona, inténtelo con un único cero. Para obtener más información, consulte la documentación de la central.
2.
Las centrales telefónicas grandes diseñadas para empresas utilizan normalmente
el protocolo 1TR6 para las llamadas internas. Su MSN se llama EAZ y normalmente corresponde al número de marcación directa. Para la configuración en
Linux, debería ser suficiente introducir el último número del EAZ. Como último
recurso, vaya intentando con los dígitos del 1 al 9.
Para que la conexión finalice justo antes de que se cargue la siguiente unidad de pago,
habilite ChargeHUP (ChargeHUP). No obstante, recuerde que quizá no funcione con
todos los ISP. También puede habilitar la unión de canales (multilink PPP) seleccionando
la opción correspondiente. Finalmente, puede habilitar SuSEfirewall2 para el enlace
seleccionando Interfaz externa del cortafuegos y Reiniciar cortafuegos. Para permitir
que el usuario normal sin permisos de administrador active y desactive la interfaz, seleccione Controlado por el usuario.
Detalles abre un cuadro de diálogo en el que se pueden implementar esquemas de conexión más complejos, que no son importantes para usos domésticos. Salga del cuadro
de diálogo Detalles seleccionando Aceptar.
En el siguiente cuadro de diálogo, realice los ajustes de la dirección IP. Si el proveedor
no le ha suministrado una dirección IP estática, seleccione Dirección IP dinámica. De
lo contrario, utilice los campos que aparecen para introducir la dirección IP del host
local y la dirección IP remota, de acuerdo con las indicaciones del ISP. Si la interfaz
debe ser la vía a Internet por defecto, seleccione Ruta predeterminada. Cada host sólo
puede tener una interfaz configurada como vía por defecto. Salga del cuadro de diálogo
seleccionando Siguiente.
El siguiente cuadro de diálogo permite establecer el país y seleccionar un ISP. Los ISP
incluidos en la lista son sólo proveedores que ofrecen servicios de cobro por llamada.
Si su ISP no se encuentra en la lista, seleccione Nuevo. Se abrirá el cuadro de diálogo
Parámetros del proveedor en el que se introducen los datos del ISP. Al introducir el
número de teléfono, no incluya espacios ni comas entre los dígitos. Para terminar, introduzca el nombre de usuario y la contraseña proporcionados por el ISP. Cuando acabe,
seleccione Siguiente.
628
Para utilizar Llamada bajo demanda en una estación de trabajo independiente, especifique también el servidor de nombres (servidor DNS). La mayoría de los ISP admiten
DNS dinámico, lo que significa que el ISP envía la dirección IP del servidor de nombres
cada vez que se realiza la conexión. Para una única estación de trabajo, sin embargo,
sigue siendo necesario introducir una dirección cualquiera, por ejemplo
192.168.22.99. Si el ISP no admite DNS dinámico, especifique las direcciones IP
de los servidores de nombres del ISP. Si lo desea, especifique un tiempo límite para la
conexión (el periodo de inactividad de la red [en segundos] tras el cual la conexión finalizará automáticamente). Confirme sus ajustes con Siguiente. YaST mostrará un resumen de las interfaces configuradas. Para activar todos los ajustes, seleccione Finalizar.
38.4.4 Módem de cable
En algunos países, como Austria o los Estados Unidos, es muy común acceder a Internet
por medio de la red de televisión por cable. El suscriptor de la televisión por cable recibe
normalmente un módem que se conecta a la toma de salida del cable de televisión por
un extremo y a la tarjeta de red del ordenador por el otro (mediante un cable de par
trenzado 10Base-TG). El módem de cable proporciona entonces una conexión dedicada
a Internet con una dirección IP fija.
En función de las instrucciones proporcionadas por el ISP, seleccione Automatic Address
Setup (via DHCP) (Configuración automática de direcciones [mediante DHCP]) o bien
Configuración de la dirección estática cuando configure la tarjeta de red. Hoy en día,
la mayoría de los proveedores utilizan DHCP. La dirección IP fija suele formar parte
de una suscripción especial para empresas.
38.4.5 DSL
Para configurar un dispositivo DSL, seleccione el módulo ADSL de la sección Dispositivos de red de YaST. Este módulo de YaST consta de varios cuadros de diálogo en los
que se establecen los parámetros de los enlaces DSL basados en uno de los siguientes
protocolos:
• PPP a través de Ethernet (PPPoE)
• PPP a través de ATM (PPPoATM)
• CAPI para ADSL (Fritz Cards)
Trabajo en red básico
629
• Point-to-Point Tunneling Protocol (PPTP) (Austria)
Para la configuración de una conexión DSL basada en PPPoE o PPTP es necesario que
la tarjeta de red correspondiente ya esté correctamente configurada. Si aún no lo ha
hecho, configure en primer lugar la tarjeta seleccionando Configurar tarjetas de red
(consulte la Sección 38.4.1, “Configuración de la tarjeta de red con YaST” (p. 621)).
En el caso de los enlaces DSL, las direcciones pueden asignarse automáticamente, pero
no mediante DHCP, por lo que no debe habilitarse la opción Automatic address setup
(via DHCP) (Configuración automática de direcciones [mediante DHCP]). En lugar
de ello, introduzca una dirección estática cualquiera, por ejemplo 192.168.22.1.
En Máscara de subred, introduzca 255.255.255.0. Si está configurando una estación
de trabajo independiente, deje vacío Gateway por defecto.
SUGERENCIA
Los valores de Dirección IP y Máscara de subred son sólo de relleno. Sólo son
necesarios para inicializar la tarjeta de red y no representan el enlace DSL como
tal.
Figura 38.7
Configuración DSL
Para comenzar la configuración DSL (consulte la Figura 38.7, “Configuración DSL”
(p. 630)), seleccione en primer lugar el modo PPP y la tarjeta ethernet a la que está co-
630
nectado el módem DSL (en la mayoría de los casos, se trata de eth0). A continuación,
utilice Activación del dispositivo para especificar si el enlace DSL debe establecerse
durante el proceso de arranque. Haga clic en Controlado por el usuario para autorizar
al usuario normal sin permisos de usuario root a que active y desactive la interfaz mediante KInternet. El cuadro de diálogo también permite seleccionar el país y elegir entre
muchos de los ISP que operan en él. Los detalles de los siguientes cuadros de diálogo
para la configuración DSL dependen de las opciones establecidas hasta el momento,
por lo que sólo se mencionarán brevemente en los próximos párrafos. Para obtener más
detalles acerca de las opciones disponibles, consulte la ayuda de los propios cuadros
de diálogo.
Para utilizar Llamada bajo demanda en una estación de trabajo independiente, especifique también el servidor de nombres (servidor DNS). La mayoría de los ISP admiten
DNS dinámico (el ISP envía la dirección IP del servidor de nombres cada vez que se
realiza la conexión). Para una única estación de trabajo, sin embargo, sigue siendo necesario introducir una dirección cualquiera, por ejemplo 192.168.22.99. Si el ISP
no admite DNS dinámico, introduzca la dirección IP del servidor de nombres proporcionada por el ISP.
Tiempo de inactividad (en segundos) define el periodo de inactividad de la red tras el
que la conexión se terminará automáticamente. Un valor razonable para el tiempo límite
es de entre 60 y 300 segundos. Si se inhabilita Llamada bajo demanda, puede ser útil
establecer el valor del tiempo límite en cero para evitar que se cuelgue automáticamente.
La configuración de T-DSL es muy similar a la de DSL. Simplemente seleccione TOnline como proveedor y YaST abrirá el cuadro de diálogo de configuración de T-DSL.
En este cuadro de diálogo, introduzca la información adicional necesaria para T-DSL
(el ID de la línea, el número de T-Online, el código de usuario y la contraseña). Todo
ello debería aparecer en la información que recibió al contratar T-DSL.
38.5
Configuración manual de una
conexión de red
La configuración manual del software de red siempre debe ser la última alternativa. Se
recomienda utilizar YaST. Sin embargo, la información básica acerca de la configuración
de red también puede serle útil cuando trabaje con YaST.
Trabajo en red básico
631
Todas las tarjetas de red y de red hotplug integradas (PCMCIA, USB y algunas tarjetas
PCI) se detectan y se configuran mediante hotplug. El sistema detecta una tarjeta de
red de dos maneras: primero como un dispositivo físico y, después, como una interfaz.
La inserción o detección de un dispositivo activa un evento hotplug. Este evento hotplug
activa la inicialización del dispositivo mediante el guión hwup. Cuando la tarjeta de
red se inicializa como una nueva interfaz de red, el núcleo genera otro evento hotplug
que origina la configuración de la interfaz mediante ifup.
El núcleo numera los nombres de la interfaz en función del orden temporal del registro.
La secuencia de inicialización es fundamental para la asignación de nombres. Si falla
una de las tarjetas, se modificará la numeración de todas las que se inicien después.
Para tarjetas hotplug reales, lo que importa es el orden en el que se conectan los dispositivos.
Para llevar a cabo una configuración flexible, la configuración del dispositivo (hardware)
y de la interfaz debe realizarse por separado y la asignación de configuraciones a los
dispositivos e interfaces no se gestiona mediante los nombres de interfaz. Las configuraciones del dispositivo se ubican en /etc/sysconfig/hardware/hwcfg-*.
Las configuraciones de la interfaz se ubican en /etc/sysconfig/network/
ifcfg-*. Los nombres de las configuraciones se asignan de modo que describan los
dispositivos e interfaces a los que están asociados. Puesto que la primera asignación de
controladores al nombre de la interfaz requería nombres de interfaz estáticos, esta
asignación ya no se realizará en /etc/modprobe.conf. En el nuevo concepto, las
entradas de alias en este archivo pueden causar efectos secundarios no deseados.
Los nombres de configuración, es decir, todo lo que aparece después de hwcfg- o de
ifcfg-, pueden describir los dispositivos mediante la ranura, el ID específico del
dispositivo o el nombre de la interfaz. Por ejemplo, el nombre de configuración para
una tarjeta PCI puede ser bus-pci-0000:02:01.0 (ranura PCI) o
vpid-0x8086-0x1014-0x0549 (ID del producto o del proveedor). El nombre de
la interfaz asociada puede ser bus-pci-0000:02:01.0 o
wlan-id-00:05:4e:42:31:7a (dirección MAC).
Para asignar una configuración de red específica a una tarjeta de un tipo determinado
(o del que sólo se ha insertado uno) en lugar de una tarjeta determinada, seleccione un
número menor de nombres de configuración específicos. Por ejemplo, bus-pcmcia
se utilizará para todas las tarjetas PCMCIA. Por otro lado, los nombres pueden estar
limitados por un tipo de interfaz precedente. Por ejemplo, wlan-bus-usb se asignará
a las tarjetas WLAN conectadas a un puerto USB.
632
El sistema siempre utiliza la configuración que mejor describa una interfaz o el dispositivo que suministre la interfaz. La búsqueda de la configuración más adecuada se
gestiona mediante getcfg. La salida de getcfg proporciona toda la información
que se puede utilizar para describir un dispositivo. Los detalles acerca de la especificación de los nombres de configuración están disponibles en la página del manual de
getcfg.
Con el método descrito, una interfaz de red se establece con la configuración correcta
incluso si los dispositivos de red no siempre se inicializan en el mismo orden. Sin embargo, el nombre de la interfaz sigue dependiendo de la secuencia de inicialización.
Existen dos maneras de garantizar un acceso fiable a la interfaz de una determinada
tarjeta de red:
• getcfg-interface nombre de configuración devuelve el nombre a
la interfaz de red asociada. Sin embargo, el nombre de configuración, como por
ejemplo cortafuegos, dhcpd, encaminamiento o varias interfaces de red virtuales
(túneles), se puede introducir en algunos archivos de configuración en lugar del
nombre de la interfaz, que no es permanente.
• Los nombres de interfaces permanentes se pueden asignar a todas las interfaces
cuyas configuraciones no incluyen nombres de interfaz. Esto se puede realizar
mediante entradas PERSISTENT_NAME=pname en una configuración de interfaz
(ifcfg-*). Sin embargo, el nombre permanente pname no debe ser el mismo
que el nombre que el núcleo asignará automáticamente. Sin embargo, nombres
como eth*, tr*, wlan* no están permitidos. En su lugar, utilice net* o nombres
descriptivos como externo, interno o dmz. Un nombre permanente sólo se
puede asignar a una interfaz inmediatamente después de su registro, lo que quiere
decir que el controlador de la tarjeta de red debe volver a cargarse o que
hwup descripción de dispositivo debe ejecutarse. El comando
rcnetwork restart (reiniciar) es insuficiente para este propósito.
IMPORTANTE: Uso de nombres de interfaces permanentes
El uso de nombres de interfaces permanentes se ha comprobado en todas
las áreas. Sin embargo, puede que algunas aplicaciones no puedan gestionar
nombres de interfaces seleccionados libremente.
ifup requiere que exista la interfaz, puesto que no inicializa el hardware. La inicialización del hardware se gestiona mediante el comando hwup (ejecutado por hotplug
o coldplug). Cuando se inicializa un nuevo dispositivo, ifup se ejecuta de forma
Trabajo en red básico
633
automática para la nueva interfaz mediante hotplug y la interfaz se configura si el
modo de inicio es onboot, hotplug o auto y si se ha iniciado el servicio de red.
Anteriormente, el comando ifup nombre de interfaz activaba la inicialización
del hardware. Ahora, el procedimiento se ha invertido. Primero, se inicializa un componente de hardware y, a continuación, lo hacen el resto de aplicaciones. De este modo,
siempre se puede configurar un número variable de dispositivos de la mejor manera
posible mediante un conjunto de configuraciones existentes.
La Tabla 38.5, “Guiones de configuración manual de red” (p. 634) resume los guiones
más importantes implicados en la configuración de red. Cuando sea posible, los guiones
se distinguen por el hardware y la interfaz.
Tabla 38.5
634
Guiones de configuración manual de red
Fase de
configuración
Comando
Función
Hardware
hw{up,down,status} El subsistema hotplug ejecuta los guiones
hw* para inicializar un dispositivo, deshacer la inicialización o consultar el estado
de un dispositivo. Existe más información
disponible en la página del manual de
hwup.
Interfaz
getcfg
Interfaz
if{up,down,status} Los guiones if* inician las interfaces de
red existentes o vuelven al estado de la
interfaz especificada. Existe más información disponible en la página del manual
de hwup.
getcfg se puede utilizar para consultar
el nombre de la interfaz asociado a un
nombre de configuración o a una descripción de hardware. Existe más información
disponible en la página del manual de
getcfg.
Existe información disponible acerca de hotplug y de los nombres permanentes de
dispositivos en Capítulo 32, Sistema HotPlug (p. 533) y Capítulo 33, Nodos de dispositivo dinámicos con udev (p. 541).
38.5.1 Archivos de configuración
Esta sección proporciona una descripción general de los archivos de configuración de
red, así como su propósito y el formato utilizado.
/etc/syconfig/hardware/hwcfg-*
Estos archivos contienen las configuraciones de hardware de las tarjetas de red y de
otros dispositivos. Asimismo, también contienen los parámetros necesarios, como el
módulo del núcleo, el modo de inicio y las asociaciones de guiones. Para obtener más
detalles, consulte la página del manual de hwup. Independientemente del hardware
existente, las configuraciones hwcfg-static-* se aplican cuando se inicia coldplug.
/etc/sysconfig/network/ifcfg-*
Estos archivos contienen las configuraciones para la interfaz de red. Incluyen información como el modo de inicio y la dirección IP. Los posibles parámetros se describen
en la página del manual de ifup. Además, si se tiene que utilizar una configuración
general para una única interfaz, todas las variables de los archivos dhcp, wireless
y config se pueden utilizar en los archivos ifcfg-*.
/etc/sysconfig/network/config, dhcp,
wireless
El archivo config contiene la configuración general para el comportamiento de ifup,
ifdown e ifstatus. dhcp contiene la configuración de DHCP y wireless para
las tarjetas LAN inalámbricas. Las variables de los tres archivos de configuración se
describen y se pueden utilizar en los archivos ifcfg-*, cuando disponen de la máxima
prioridad.
Trabajo en red básico
635
/etc/sysconfig/network/routes,ifroute-*
Aquí se determina el encaminamiento estático de los paquetes TCP/IP. Todas las rutas
estáticas requeridas por las diferentes tareas del sistema se pueden introducir en el archivo /etc/sysconfig/network/routes: rutas al host, rutas al host mediante
gateway y rutas a una red. Para cada interfaz que necesite una ruta individual, defina
un archivo de configuración adicional: /etc/sysconfig/network/ifroute-*.
Sustituya * con el nombre de la interfaz. Las entradas de los archivos de configuración
del encaminamiento se presentan de la manera siguiente:
# Destination
#
127.0.0.0
204.127.235.0
default
207.68.156.51
192.168.0.0
Dummy/Gateway
Netmask
Device
0.0.0.0
0.0.0.0
204.127.235.41
207.68.145.45
207.68.156.51
255.255.255.0
255.255.255.0
0.0.0.0
255.255.255.255
255.255.0.0
lo
eth0
eth0
eth1
eth1
El destino de la ruta se encuentra en la primera columna. Esta columna puede contener
la dirección IP de red o host o, en el caso de servidores de nombre accesibles, la red o
nombre de host completo.
La segunda columna contiene un gateway por defecto a través del cual se puede acceder
a un host o a una red. La tercera columna contiene la máscara de red de redes o hosts
tras un gateway. Por ejemplo, la máscara es 255.255.255.255 para un host tras un
gateway.
La cuarta columna sólo es relevante para redes conectadas al host local como loopback,
Ethernet, RDSI, PPP y dispositivo fantasma. Aquí se debe introducir el nombre del
dispositivo.
Una quinta columna (opcional) se puede utilizar para especificar el tipo de ruta. Las
columnas que no se necesiten deben contener un signo menos - para garantizar que el
analizador interpreta correctamente el comando. Para obtener más detalles, consulte la
página Man de routes(5).
/etc/resolv.conf
En este archivo se especifica el dominio al que pertenece el host (contraseña search
[buscar]). También se enumera el estado de la dirección del servidor de nombre al que
se desea acceder (contraseña nameserver [servidor de nombre]). Se pueden especi-
636
ficar varios nombres de dominio. Al resolver un nombre incompleto, se realiza un intento de generar uno agregando entradas search (buscar) individuales. Utilice varios
servidores de nombre introduciendo varias líneas, cada una de las cuales debe comenzar
por nameserver (servidor de nombre). Anteponga signos # a los comentarios. YaST
introduce el servidor de nombre especificado en este archivo. El Ejemplo 38.5, “/etc/
resolv.conf” (p. 637) muestra la forma de /etc/resolv.conf.
Ejemplo 38.5
/etc/resolv.conf
# Our domain
search example.com
#
# We use sun (192.168.0.20) as
nameserver nameserver 192.168.0.20
Algunos servicios, como pppd (wvdial), ipppd (isdn), dhcp (dhcpcd y
dhclient), pcmcia y hotplug modifican el archivo /etc/resolv.conf mediante el guión modify_resolvconf. Si el archivo /etc/resolv.conf se ha
modificado de forma temporal mediante este guión, entonces incluirá un comentario
predefinido que proporciona información acerca del servicio que lo modifica, la ubicación en la que se ha realizado la copia de seguridad del archivo original y el modo de
desactivar el mecanismo de modificación automático. Si /etc/resolv.conf se
modifica varias veces, el archivo incluirá modificaciones en un formulario anidado.
Estas modificaciones se pueden invertir incluso si el orden de la inversión es diferente
del orden de la introducción de las modificaciones. Los servicios que incluyen esta
flexibilidad incluyen isdn, pcmcia y hotplug.
Si no se ha terminado un servicio de forma normal y limpia, modify_resolvconf
se puede utilizar para restaurar el archivo original. Incluso durante el arranque del sistema, se realiza una comprobación para localizar un resolv.conf sin limpiar y
modificado, por ejemplo, después de un fallo del sistema, en cuyo caso se restaurará
el resolv.conf original (sin modificar).
YaST utiliza el comando modify_resolvconf check para saber si resolv.conf
se ha modificado y, a continuación, advierte al usuario de que se perderán los cambios
después de restaurar el archivo. Además de esto, YaST no se basa en modify
_resolvconf, lo que significa que el impacto del cambio de resolv.conf mediante YaST es el mismo que para cualquier cambio manual. En ambos casos, el efecto
de los cambios es permanente. Las modificaciones solicitadas por los servicios mencionados son sólo temporales.
Trabajo en red básico
637
/etc/hosts
En este archivo, que se muestra en el Ejemplo 38.6, “/etc/hosts” (p. 638), las direcciones IP están asignadas a nombres de host. Si no se implementa ningún servidor de
nombre, deberá aparecer una lista de todos los hosts para los que se va a configurar una
conexión IP. Para cada host, introduzca una línea que conste de la dirección IP, del
nombre de host completo y del nombre de host en el archivo. La dirección IP debe
ubicarse al principio de la línea y las entradas deben estar separadas por espacios y
pestañas. Los comentarios siempre van precedidos de #.
Ejemplo 38.6
/etc/hosts
127.0.0.1 localhost
192.168.0.20 sun.example.com sun
192.168.0.0 earth.example.com earth
/etc/networks
Aquí, los nombres de red se convierten en direcciones de red. El formato es similar al
del archivo hosts, excepto que los nombres de red van situados delante de la dirección.
Consulte el Ejemplo 38.7, “/etc/networks” (p. 638).
Ejemplo 38.7
loopback
localnet
/etc/networks
127.0.0.0
192.168.0.0
/etc/host.conf
La resolución de nombre, es decir, la traducción de los nombres de red y de host mediante la biblioteca resolver está controlada por este archivo. Este archivo sólo se utiliza
para programas relacionados con libc4 o libc5. Para los programas glibc en curso,
consulte la configuración de /etc/nsswitch.conf. Siempre debe haber un único
parámetro en su propia línea. Los comentarios van precedidos de #. La Tabla 38.6,
“Parámetros para /etc/host.conf” (p. 639) muestra los parámetros disponibles. En
Ejemplo 38.8, “ /etc/host.conf ” (p. 639) se muestra el ejemplo de /etc/host
.conf.
638
Tabla 38.6
Parámetros para /etc/host.conf
order hosts, bind
Especifica el orden de acceso a los servicios para la resolución
de nombre. Los argumentos disponibles son (separados por
espacios y comas) los siguientes:
hosts: Busca el archivo /etc/hosts
bind: Accede a un servidor de nombre
nis: Utiliza NIS
Define si un host introducido en /etc/hosts puede tener
varias direcciones IP.
multi on/off
nospoof on spoofa- Estos parámetros determinan el servidor de nombre spoofing,
pero no la configuración de red.
lert on/off
trim domainname
Ejemplo 38.8
El nombre del dominio especificado se separa del nombre de
host después de la resolución de nombre (siempre que el nombre
de host incluya el nombre del dominio). Esta opción resulta
útil sólo si los nombres del dominio local se incluyen en el archivo /etc/hosts, pero deben seguir reconociéndose con
los nombres del dominio adjunto.
/etc/host.conf
# We have named running
order hosts bind
# Allow
multiple addrs multi on
/etc/nsswitch.conf
La introducción a GNU C Library 2.0 va acompañada de la introducción de Conmutador
de servicio de nombre (NSS). Para obtener más información, consulte la página Man
de nsswitch.conf(5) y GNU C Library Reference Manual (Manual de referencia
de la biblioteca GNU C).
Trabajo en red básico
639
El orden de las consultas se define en el archivo /etc/nsswitch.conf. En el
Ejemplo 38.9, “/etc/nsswitch.conf” (p. 640) se muestra un ejemplo de
nsswitch.conf. Los comentarios van precedidos de #. En este ejemplo, cuando se
introduce un elemento en la base de datos hosts, se envía una petición a /etc/hosts
(files) mediante DNS (consulte el Capítulo 40, DNS (Domain Name System) (p. 651)).
Ejemplo 38.9
/etc/nsswitch.conf
passwd:
group:
compat
compat
hosts:
networks:
files dns
files dns
services:
protocols:
db files
db files
netgroup:
automount:
files
files nis
Las “bases de datos” disponibles en NSS se enumeran en Tabla 38.7, “Bases de datos
disponibles mediante /etc/nsswitch.conf” (p. 640). Además, automount, bootparams,
netmasks y publickey están previstas en un futuro próximo. Las opciones de
configuración para las bases de datos NSS se enumeran en Tabla 38.8, “Opciones de
configuración para las “bases de datos” NSS” (p. 641).
Tabla 38.7
640
Bases de datos disponibles mediante /etc/nsswitch.conf
aliases
Alias de correo implementados por sendmail; consulte
man 5 aliases.
ethers
Direcciones Ethernet.
group
Para grupos de usuarios, utilizado por getgrent. Consulte
también la página Man de group.
hosts
Para nombres de host y direcciones IP, utilizado en
gethostbyname y en funciones similares.
netgroup
Host válido y listas de usuarios en la red para controlar los
permisos de acceso; consulte la página Man de
netgroup(5).
networks
Nombres y direcciones de red, utilizado por getnetent.
passwd
Contraseñas de usuario, utilizado en getpwent; consulte la
página Man de passwd(5).
protocols
Protocolos de red, utilizado en getprotoent; consulte la
página Man de protocols(5).
rpc
Nombres y direcciones de llamadas de procedimientos remotos,
utilizado en getrpcbyname y en funciones similares.
services
Servicios de red, utilizados por getservent.
shadow
Contraseñas shadow de usuarios, utilizadas en getspnam;
consulte la página Man de shadow(5).
Tabla 38.8
Opciones de configuración para las “bases de datos” NSS
files
Archivos de acceso directo, por ejemplo, /etc/aliases
db
Acceso mediante la base de datos
nis, nisplus
NIS, consulte también el Capítulo 41, Uso de NIS (p. 673)
dns
Sólo se puede utilizar como una extensión para hosts y
networks
compat
Sólo se puede utilizar como una extensión de passwd,
shadow y group
/etc/nscd.conf
Este archivo se utiliza para configurar nscd (daemon NSC). Consulte las páginas Man
de nscd(8) y nscd.conf(5). Por defecto, nscd almacena en caché las entradas
de sistema de passwd y groups. Esto es importante para el funcionamiento de los
servicios del directorio, como NIS y LDAP, puesto que si no, se necesitará la conexión
de red para cada acceso a los nombres o grupos. hosts no se almacena en caché por
Trabajo en red básico
641
defecto, puesto que el mecanismo de nscd para almacenar los hosts en caché no posibilita que el sistema local certifique comprobaciones de búsqueda adelante y atrás. En
lugar de solicitar que nscd almacene nombres en caché, configure un servidor DNS de
almacenamiento en caché.
Si el almacenamiento en caché para passwd está activado, por general, transcurrirán
quince segundos hasta que se reconozca un nuevo usuario local agregado. Reduzca este
tiempo límite reiniciando nscd con el comando rcnscd restart (reiniciar).
/etc/HOSTNAME
Contiene el nombre de host sin el nombre de dominio adjunto. Varios guiones pueden
leer este archivo mientras la máquina está arrancando. Puede contener una única línea
en la que se establece el nombre de host.
38.5.2 Guiones de inicio
Además de los archivos de configuración descritos anteriormente, también existen varios
guiones para cargar los programas de red durante el arranque de la máquina. Éstos se
inician en cuanto el sistema cambia a uno de los niveles de ejecución multiusuario.
Algunos de estos guiones se describen en la Tabla 38.9, “Guiones de inicio para programas de red” (p. 642).
Tabla 38.9
Guiones de inicio para programas de red
/etc/init.d/network Este guión gestiona la configuración de las interfaces
de red. El hardware ya se debe haberse inicializado
con /etc/init.d/coldplug (mediante
hotplug). Si el servicio network no se ha iniciado,
no se implementarán interfaces de red cuando se inserten mediante hotplug.
/etc/init.d/inetd
642
Inicia xinetd. xinetd y se pueden utilizar para que los
servicios del servidor estén disponibles en el sistema.
Por ejemplo, puede iniciar vsftpd siempre que se inicie
una conexión FTP.
/etc/init.d/portmap Inicia el portmap necesario para el servidor RPC, como
por ejemplo un servidor NFS.
/etc/init.d/
nfsserver
Inicia el servidor NFS.
/etc/init.d/
sendmail
Controla el proceso de envío de correo.
/etc/init.d/ypserv
Inicia el servidor NIS.
/etc/init.d/ypbind
Inicia el servidor NIS.
38.6
Uso de smpppd como asistente
de acceso telefónico
La mayoría de los usuarios particulares no disponen de una línea dedicada de conexión
a Internet. En su lugar, utilizan conexiones de acceso telefónico. En función del método
de acceso telefónico (RDSI o DSL), la conexión se controla por ipppd o por pppd. En
términos generales, lo único que se necesita hacer para obtener una conexión en línea
es iniciar correctamente los programas.
Si dispone de una conexión de tarifa plana que no genera ningún coste adicional para
la conexión de acceso telefónico, sólo tiene que iniciar el correspondiente daemon.
Controle la conexión de acceso telefónico con un applet KDE o con una interfaz de línea
de comando. Si el gateway de Internet no es el host utilizado por el usuario, éste podrá
controlar la conexión de acceso telefónico mediante un host de red.
Aquí es donde interviene smpppd. Proporciona una interfaz uniforme para programas
auxiliares y funciona en dos direcciones. En primer lugar, programa el pppd ó ipppd
requerido y controla sus propiedades de acceso telefónico. En segundo lugar, facilita
varios proveedores a los programas de usuario y transmite información acerca del estado
actual de la conexión. Como smpppd se puede controlar también mediante la red, es
adecuado para controlar las conexiones de acceso telefónico a Internet desde una estación
de trabajo en una subred privada.
Trabajo en red básico
643
38.6.1 Configuración de smpppd
YaST configura automáticamente las conexiones proporcionadas por smpppd. Los
programas de acceso telefónico KInternet y cinternet también están configurados previamente. Sólo se requiere la configuración manual para configurar las funciones adicionales de smpppd, como por ejemplo, el control remoto.
El archivo de configuración de smpppd es /etc/smpppd.conf. Por defecto, no
habilita el control remoto. Las opciones más importantes de este archivo de configuración
son las siguientes:
open-inet-socket = yes|no
Para controlar smpppd a través de la red, está opción debe establecerse en yes. El
puerto en el que smpppd escucha es 3185. Si se establece este parámetro en yes,
los parámetros bind-address, host-range y password deben establecerse
según corresponda.
bind-address = ip
Si un host tiene varias direcciones IP, utilice este parámetro para determinar en qué
dirección IP debe aceptar conexiones smpppd.
host-range = min ip max ip
El parámetro host-range define el rango de la red. Los hosts cuya dirección IP
se encuentra en este rango tienen autorizado el acceso a smpppd. Todos los hosts
que no se encuentren en este rango tienen el acceso denegado.
password = password
La asignación de una contraseña permite a los clientes acceder solo a los hosts autorizados. Como se trata de una contraseña de sólo texto, no se debe sobreestimar
la seguridad que proporciona. Si no hay ninguna contraseña asignada, todos los
clientes tienen permitido el acceso a smpppd.
slp-register = yes|no
Con este parámetro, el servicio smpppd se anuncia en la red a través de SLP.
Existe más información disponible acerca de smpppd en las páginas Man de
smpppd(8) y smpppd.conf(5).
644
38.6.2 Configuración de KInternet,
cinternet y qinternet para uso
remoto
KInternet, cinternet y qinternet se pueden utilizar para controlar un smpppd local o remoto. cinternet es la línea de comandos correspondiente para el KInternet gráfico. qinternet es prácticamente igual que KInternet, pero no utiliza bibliotecas KDE, por lo que
se puede utilizar sin KDE y debe instalarse aparte. Para preparar estas utilidades para
su uso con un smpppd remoto, edite manualmente el archivo de configuración /etc/
smpppd-c.conf o utilice KInternet. Este archivo sólo utiliza tres opciones:
sites = list of sites
Especifica a las interfaces dónde deben buscar smpppd. Las interfaces prueban las
opciones en el orden que se especifica a continuación. La opción local ordena el
establecimiento de una conexión al smpppd local. gateway indica un smpppd en
el gateway. La conexión debe establecerse tal y como se especifica en server en
config-file. slp ordena a las interfaces que se conecten al smpppd encontrado
a través de SLP.
server = server
Especifique el host en el que se ejecuta smpppd.
password = password
Introduzca la contraseña seleccionada para smpppd.
Si smpppd está activo, puede intentar acceder a él, por ejemplo, mediante cinternet
--verbose --interface-list. Si tiene dificultades, consulte las páginas Man
de smpppd-c.conf(5) y cinternet(8).
Trabajo en red básico
645
39
Servicios SLP en la red
El protocolo de ubicación de servicios (SLP) se ha desarrollado para simplificar la
configuración de los clientes de red en una red local. Para configurar un cliente de red,
incluyendo todos los servicios requeridos, el administrador necesita un conocimiento
detallado de los servidores disponibles en la red. SLP permite la disponibilidad de un
determinado servicio conocido por todos los clientes de la red local. Las aplicaciones
compatibles con SLP pueden utilizar la información distribuida y se pueden configurar
de forma automática.
SUSE Linux es compatible con la instalación que utiliza fuentes de instalación proporcionadas por SLP y contiene servicios de sistema con compatibilidad integrada para
SLP. YaST y Konqueror contienen las interfaces adecuadas para SLP. Puede utilizar
SLP para proporcionar a los clientes de red funciones centrales, como por ejemplo,
servidores de instalación, servidores YOU, de archivos o de impresión en SUSE Linux.
39.1
Registro de sus propios
servicios
Existen muchas aplicaciones que se ejecutan en SUSE Linux que ya disponen de compatibilidad para SLP integrada mediante la utilización de la biblioteca libslp. Si un
servicio no se ha compilado con la compatibilidad para SLP, utilice uno de los métodos
siguientes para que esté disponible con SLP:
Servicios SLP en la red
647
Registro estático mediante /etc/slp.reg.d
Cree un archivo de registro separado para cada servicio nuevo. A continuación, se
muestra un ejemplo de archivo para registrar un servicio de escáner:
## Register a saned service on this system
## en means english language
## 65535 disables the timeout, so the service registration does
## not need refreshes
service:scanner.sane://$HOSTNAME:6566,en,65535
watch-port-tcp=6566
description=SANE scanner daemon
La línea más importante de este archivo es la URL de servicio, que comienza por
service:. Contiene el tipo de servicio (scanner.sane) y la dirección para la
que el servicio está disponible en el servidor. $HOSTNAME se reemplaza automáticamente con el nombre de host completo. Detrás de éste aparece, separado por dos
puntos, el nombre del puerto TCP en el que se puede encontrar el servicio correspondiente. A continuación, introduzca el idioma del servicio y la duración del registro
en segundos. Estos datos deben separase de la URL de servicio por comas. Establezca
el valor de la duración del registro entre 0 y 65535. 0 evita el registro. 65535
elimina todas las restricciones.
El archivo de registro también contiene las dos variables watch-tcp-port y
description. La primera variable relaciona el aviso del servicio SLP allí donde
el servicio correspondiente esté activo utilizando slpd para comprobar el estado del
servicio. La segunda variable contiene una descripción más precisa del servicio que
aparece en los navegadores correspondientes.
Registro estático mediante /etc/slp.reg
La única diferencia con el procedimiento descrito anteriormente es la agrupación
de todos los servicios en un archivo central.
Registro dinámico mediante slptool
Si un servicio debe registrarse en SLP a partir de guiones patentados, utilice la interfaz de línea de comandos slptool.
39.2
Interfaces SLP en SUSE Linux
SUSE Linux contiene varias interfaces que habilitan la selección y la utilización de información SLP mediante una red:
648
slptool
slptool es un programa de línea de comandos sencillo que puede utilizarse para
anunciar búsquedas SLP en la red o servicios patentados. slptool --help
muestra todas las opciones y funciones disponibles. También se puede llamar a
slptool desde guiones que procesan información SLP.
Navegador SLP de YaST
YaST contiene un navegador SLP separado que muestra todos los servicios de la
red local anunciados a través de SLP en un diagrama en árbol en Servicios de red
→ Navegador SLP.
Konqueror
Si se utiliza como navegador de red, Konqueror muestra todos los servicios SLP
disponibles de la red local en slp:/. Haga clic en los iconos de la ventana principal
para obtener información detallada acerca del servicio correspondiente. Si utiliza
Konqueror con service:/, haga clic en el icono correspondiente de la ventana
del navegador para configurar una conexión con el servicio seleccionado.
39.3
Activación de SLP
Si desea ofrecer servicios, debe ejecutar slpd en el sistema. No es necesario iniciar el
daemon sólo para realizar búsquedas de servicio. Como casi todos los servicios que se
ejecutan en SUSE Linux, el daemon slpd se controla mediante un guión init diferente.
Por defecto, el daemon está inactivo. Si desea activarlo durante el tiempo que dura una
sesión, ejecute rcslpd start como root para iniciarlo y rcslpd stop para detenerlo. Reinicie el sistema o compruebe el estado mediante restart o status. Si
slpd debería estar activa por defecto, ejecute el comando insserv slpd una sola vez
como root. Esto incluye automáticamente slpd en el conjunto de servicios que se
inician cuando un sistema arranca.
39.4
Información adicional
Las siguientes fuentes proporcionan información adicional acerca de SLP:
Servicios SLP en la red
649
RFC 2608, 2609, 2610
RFC 2608 describe, de forma general, la definición de SLP. RFC 2609 describe
detalladamente la sintaxis de la URL de servicio utilizada y RFC 2610 describe
DHCP mediante SLP.
http://www.openslp.com
Página principal del proyecto OpenSLP.
file:/usr/share/doc/packages/openslp/*
Este directorio contiene toda la documentación disponible para SLP, además incluye
un archivo README (LÉAME).SUSE que contiene los detalles de SUSE Linux,
de los RFC mencionados anteriormente y dos documentos HTML introductorios.
Los programadores que deseen utilizar las funciones SLP deben instalar el paquete
openslp-devel para consultar la Programmers Guide (Guía de programadores)
que se incluye.
650
DNS (Domain Name System)
40
El servicio DNS (Domain Name System) se encarga de convertir nombres de dominio
y nombres de ordenadores en direcciones IP. Así, por ejemplo, la dirección IP
192.168.0.0 se asigna al nombre del ordenador host earth. Antes de configurar un
DNS propio consulte la información general sobre DNS en la Sección 38.3, “Resolución
de nombres” (p. 619). Los siguientes ejemplos de configuración se refieren a BIND.
40.1
Introducción a DNS
40.2
Configuración con YaST
El módulo DNS de YaST sirve para realizar la configuración de un servidor DNS
dentro de la propia red local. Esta configuración basada en propuestas requiere que el
administrador del servidor tome algunas decisiones básicas. Después de la configuración
inicial, el servidor ya dispone de una configuración básica y en principio está listo para
el uso. El modo experto puede usarse para tratar con tareas de configuración avanzada.
40.2.1 Configuración con asistente
Las propuestas del asistente o wizard se dividen en tres diálogos con la posibilidad de
acceder a la configuración experta en puntos adecuados.
DNS (Domain Name System)
651
Instalación del servidor DNS: redireccionadores
El diálogo de la Figura 40.1, “Instalación del servidor DNS: redireccionadores”
(p. 652) aparece al iniciar el módulo por primera vez. Decida si la lista de redireccionadores debe ser transmitida por el daemon PPP al conectar con DSL o RDSI (Redireccionadores definidos por el daemon PPP) o si desea introducirla manualmente
(Definir redireccionadores manualmente).
Figura 40.1
Instalación del servidor DNS: redireccionadores
Instalación del servidor DNS: zonas DNS
El significado de los parámetros de este módulo se explica en la instalación para
expertos (ver Servidor DNS: zonas DNS (p. 655)).
652
Figura 40.2
Instalación del servidor DNS: zonas DNS
Instalación del servidor DNS: finalizar asistente
Puesto que el cortafuegos está activado durante la instalación, al completar la misma
puede abrir el puerto DNS en el cortafuegos (puerto 53). También puede determinar
el comportamiento de inicio del servidor DNS o acceder desde aquí a la configuración
experta (ver Figura 40.3, “Instalación del servidor DNS: finalizar asistente” (p. 654)).
DNS (Domain Name System)
653
Figura 40.3
Instalación del servidor DNS: finalizar asistente
40.2.2 Configuración experta
Al iniciar el módulo por primera vez, YaST abre una ventana con diferentes posibilidades
de configuración. Una vez concluida esta configuración, el servidor DNS funciona básicamente:
Servidor DNS: inicio
Bajo el título Arranque defina si el servidor DNS debe iniciarse cuando el sistema
arranque (durante el arranque del sistema) o manualmente. Para iniciar el servidor
DNS inmediatamente, seleccione Iniciar servidor DNS ahora. Para detenerlo, seleccione Detener servidor DNS ahora. La opción Guardar la configuración y reiniciar
el servidor DNS ahora le permite guardar la configuración actual. La opción Puerto
abierto en el cortafuegos le permite abrir el puerto DNS en el cortafuegos y con
Configuración del cortafuegos puede modificar las diversas opciones de configuración del cortafuegos.
Servidor DNS: redireccionadores
Este diálogo es idéntico al que aparece cuando se inicia la configuración con el
asistente (ver Instalación del servidor DNS: redireccionadores (p. 652)).
654
Servidor DNS: registro
En este apartado permite determinar lo que debe protocolizar el servidor DNS y
cómo debe hacerlo. En Tipo de registro se especifica dónde guarda sus mensajes
el servidor. Puede escribirlos en el archivo de registro del sistema en /var/log/
messages (Registrar al registro del sistema) o en un archivo de registro determinado explícitamente (Registrar a archivo). Seleccionando la última opción, se
puede limitar el tamaño del archivo de registro y la cantidad de los mismos.
Registro adicional ofrece opciones complementarias. Registrar todas las consultas
DNS guarda en el registro todas las consultas, motivo por el que el archivo de registro
puede llegar a ser muy voluminoso. Utilice esta opción solamente para encontrar
errores. Para realizar una actualización de zona entre servidor DHCP y servidor
DNS, seleccione Protocolar actualización de zona. Al activar esta opción se registra
el flujo de datos de maestro a esclavo a la hora de transferir los datos de zona (ver
Figura 40.4, “Servidor DNS: registro” (p. 655)).
Figura 40.4
Servidor DNS: registro
Servidor DNS: zonas DNS
Este diálogo, que se encarga de la administración de los archivos de zona, se divide
en varias secciones (ver Sección 40.5, “Sintaxis de los archivos de zona” (p. 666)).
En Nombre de zona puede introducir el nombre nuevo de una zona. Para crear zonas
inversas, el nombre de la zona tiene que acabar en .in-addr.arpa. El tipo de
zona (maestro o esclavo) se selecciona con Tipo de zona. En Editar zona... puede
DNS (Domain Name System)
655
definir opciones adicionales para una zona existente. Para eliminar una zona seleccione la opción Borrar zona.
Servidor DNS: editor de zonas esclavas
Esta ventana de diálogo aparece cuando se selecciona esclava como tipo de zona
en el paso descrito en Servidor DNS: zonas DNS (p. 655). En Servidor DNS maestro
indique el servidor maestro que debe ser consultado por el esclavo. Para restringir
el acceso, se pueden seleccionar de la lista las ACLs creadas anteriormente (ver
Figura 40.5, “Servidor DNS: editor de zonas esclavas” (p. 656)).
Figura 40.5
Servidor DNS: editor de zonas esclavas
Servidor DNS: editor de zonas maestras
Este diálogo aparece después de seleccionar maestra como tipo de zona en el paso
descrito en Servidor DNS: zonas DNS (p. 655) y está dividido en varias partes:
fundamentos (la ventana actual), registros NS, registros MX, SOA y registros.
Servidor DNS: editor de zonas (registros NS)
Con este diálogo se puede determinar servidores de nombre alternativos para cada
zona. El servidor de nombres propio tiene que estar incluido en esta lista. Para crear
una nueva entrada, introduzca en Servidor de nombres que desea añadir el nombre
del servidor y pulse Añadir (ver Figura 40.6, “Servidor DNS: editor de zonas (registros NS)” (p. 657)).
656
Figura 40.6
Servidor DNS: editor de zonas (registros NS)
Servidor DNS: editor de

Documentos relacionados