Administración de Guadalinex V.3

Transcripción

Administración de Guadalinex V.3
Administración de Guadalinex V.3
José J. Grimaldos
[email protected]
Antonio Saorín
[email protected]
Administración de Guadalinex V.3
por José J. Grimaldos y Antonio Saorín
Esta documentación está orientada al montaje de ciertos servicios de red utilizando como distribución base
Guadalinex V.3 en el contexto de una pequeña red doméstica local o en un centro educativo para proporcionar al
profesorado algunas herramientas TIC de uso común en la práctica docente.
Copyright © 2004, 2005, 2006, 2007, 2008 José J. Grimaldos, Antonio Saorín
Se permite la copia exacta y la distribución de este artículo en cualquier medio y soporte citando la procedencia, conforme a los términos de
la licencia de documentación libre GNU. (http://www.gnu.org/copyleft/fdl.html)
La información contenida en este documento es libre y debe ser usada bajo su propio criterio. Los autores no se responsabilizan de cualquier
daño directo o indirecto que pudiera resultar de la utilización de este material.
Todas las marcas registradas citadas en este documento pertenecen a sus respectivos propietarios.
Historial de revisiones
Revisión 1.7 23/01/2008 Revisado por: jg
Conversión a UTF-8
Revisión 1.6 02/03/2006 Revisado por: jg
Integración de los capítulos en un sólo documento usando XEmacs sobre Guadalinex v3.0
Revisión 1.5 02/03/2006 Revisado por: as
Inclusión del sexto capítulo
Revisión 1.4 21/02/2006 Revisado por: as
Inclusión del quinto capítulo
Revisión 1.3 13/02/2006 Revisado por: jg
Inclusión del cuarto capítulo
Revisión 1.2 01/02/2006 Revisado por: as
Inclusión del tercer capítulo
Revisión 1.1 24/01/2006 Revisado por: as
Inclusión del segundo capítulo
Revisión 1.0 20/12/2004 Revisado por: jg
Creación del contenido del primer capítulo
Tabla de contenidos
1. Instalación de Guadalinex ....................................................................................................................... 1
1.1. Introducción................................................................................................................................... 1
1.2. Requisitos del sistema.................................................................................................................... 1
1.3. Preparativos ................................................................................................................................... 1
1.3.1. Copias de seguridad .......................................................................................................... 2
1.3.2. Discos duros y particiones ................................................................................................ 2
1.3.3. La instalacion paso a paso................................................................................................. 5
1.3.3.1. Paso 1: Arrancar desde el CD de Guadalinex....................................................... 5
1.3.3.2. Paso 2: Particionado del disco duro...................................................................... 6
1.3.3.3. Nombre del equipo. Contraseñas de usuario y administrador. ........................... 16
1.3.3.4. Configuración de la red ...................................................................................... 18
1.3.3.5. Copiado del sistema al disco duro ...................................................................... 19
1.3.4. Registrándose en el sistema ............................................................................................ 20
1.3.5. Apagar el sistema ............................................................................................................ 21
1.4. Problemas con la instalación ....................................................................................................... 21
1.4.1. Windows no aparece en el menú de arranque de Grub ................................................... 22
1.4.2. Windows aparece en el menú de Grub pero aún así no arranca...................................... 22
1.4.3. Guadalinex parece arrancar pero cuando se inicia el entorno gráfico el monitor se queda
en negro ........................................................................................................................... 23
1.5. Afinar la instalación..................................................................................................................... 23
1.5.1. Actualizar Guadalinex 2004............................................................................................ 23
1.5.2. Problemas con la impresión desde Mozilla-Firefox ....................................................... 24
2. El sistema de ficheros ............................................................................................................................. 25
2.1. Introducción................................................................................................................................. 25
2.2. Tipos de sistemas de ficheros....................................................................................................... 25
2.3. Estructura del sistema de ficheros................................................................................................ 26
2.4. Ficheros de configuración del sistema......................................................................................... 28
2.5. Ficheros de registro (logs) ........................................................................................................... 29
2.6. Ficheros especiales ...................................................................................................................... 30
2.6.1. Enlaces ............................................................................................................................ 30
2.6.2. Enlaces duros .................................................................................................................. 31
2.6.3. Enlaces simbólicos .......................................................................................................... 31
2.6.4. Ficheros de dispositivo.................................................................................................... 32
2.7. Administración de un sistema de ficheros ................................................................................... 32
2.7.1. Montar y desmontar dispositivos .................................................................................... 32
2.7.2. Fichero /etc/fstab............................................................................................................. 35
2.7.3. Ver el estado de los sistemas de ficheros en modo gráfico.............................................. 37
2.7.4. Crear nuevas particiones ................................................................................................. 38
2.7.5. Crear un sistema de ficheros ........................................................................................... 39
2.7.6. Actualizar particiones ext2 a ext3 ................................................................................... 40
2.7.7. Crear una partición swap................................................................................................. 40
2.7.8. Chequeo y recuperación de un sistema de ficheros......................................................... 41
2.7.9. Manipular particiones con herramientas gráficas. Gparted............................................. 42
2.8. Gestión de usuarios y permisos ................................................................................................... 43
2.8.1. Introducción .................................................................................................................... 43
2.8.2. Permisos .......................................................................................................................... 43
2.8.2.1. Notación octal del comando chmod ................................................................... 45
2.9. Usuarios y grupos ........................................................................................................................ 48
2.9.1. Gestión en modo texto .................................................................................................... 48
iii
2.9.2. Gestión en modo gráfico ................................................................................................. 50
2.9.3. Crear cuotas de disco para los usuarios .......................................................................... 51
3. Configuración de dispositivos................................................................................................................ 55
3.1. Introducción................................................................................................................................. 55
3.2. El sistema X Window .................................................................................................................. 55
3.2.1. Introducción .................................................................................................................... 55
3.2.2. Gestores de ventanas ....................................................................................................... 56
3.2.3. Entornos de escritorio ..................................................................................................... 58
3.2.4. Configuración del servidor gráfico X.............................................................................. 60
3.2.4.1. xf86config....................................................................................................... 60
3.2.4.2. xf86cfg ............................................................................................................. 60
3.2.5. El fichero /etc/X11/XF86Config-4 ........................................................................... 64
3.2.5.1. Aceleración gráfica en Guadalinex..................................................................... 68
3.2.6. Iniciar sesión como un nuevo usuario ............................................................................. 70
3.2.7. Ejecutar aplicaciones gráficas en una máquina remota con SSH.................................... 71
3.2.7.1. Configuración de la máquina remota.................................................................. 71
3.2.8. Abrir una sesión gráfica en una máquina remota son SSH ............................................. 72
3.2.9. Abrir una sesión gráfica en una máquina remota son GDM ........................................... 73
3.2.9.1. Configuración de la máquina remota.................................................................. 73
3.2.9.2. Inicio de sesión en la máquina local................................................................... 73
3.2.9.3. Escritorio Remoto con VNC .............................................................................. 74
3.2.9.4. Instalación y uso de rfb ..................................................................................... 75
3.3. Configuración de la tarjeta de sonido .......................................................................................... 75
3.3.1. Averiguar el modelo de nuestra tarjeta de sonido ........................................................... 76
3.3.2. Configuración automática mediante alsaconf ............................................................. 76
3.3.3. Configuración manual mediante modconf ...................................................................... 76
3.4. El servicio de impresión .............................................................................................................. 77
3.4.1. El sistema de impresión CUPS™ ................................................................................... 77
3.4.2. Nada es lo que parece...................................................................................................... 78
3.4.3. Instalación de la impresora con asistente ........................................................................ 79
3.4.4. Instalación de la impresora con el navegador ................................................................. 83
3.4.5. ¿Qué hacer si mi impresora no está listada? ................................................................... 84
3.5. La impresión en red ..................................................................................................................... 85
3.5.1. Configuración del servidor.............................................................................................. 85
3.5.1.1. El fichero cupsd.conf ...................................................................................... 85
3.5.1.2. Ejemplos de configuración ................................................................................. 91
3.5.1.3. Una triste alegría................................................................................................. 92
3.5.2. Configuración del cliente ................................................................................................ 95
3.5.2.1. El fichero client.conf .................................................................................... 95
3.5.2.2. Añadir una impresora de red .............................................................................. 95
3.6. Accediendo al escáner ................................................................................................................. 99
3.6.1. ¿Está mi escáner soportado? ........................................................................................... 99
3.6.1.1. La aplicación SANE ........................................................................................... 99
3.6.1.2. Comprobando los dispositivos.......................................................................... 100
3.6.1.3. El acceso al dispositivo..................................................................................... 101
3.6.2. Configurando SANE ..................................................................................................... 102
3.6.3. Otras herramientas de detección ................................................................................... 103
3.7. Cámaras digitales....................................................................................................................... 104
3.7.1. Acceso en modo disco................................................................................................... 104
3.7.2. Acceso en modo PTP .................................................................................................... 105
iv
4. Conexión a la red.................................................................................................................................. 109
4.1. Conectarse a Internet ................................................................................................................. 109
4.1.1. Módem analógico y Red Telefónica Básica (RTB)....................................................... 109
4.1.2. Acceso ADSL ............................................................................................................... 111
4.1.2.1. Configuración del modem USB para conectar con ADSL............................... 111
4.1.2.2. Conexión a internet con un Router ADSL........................................................ 116
4.1.2.3. Conexión a internet con un modem-cable. ....................................................... 117
4.1.3. Configuración de una conexión inalámbrica................................................................. 117
4.1.3.1. Configuración genérica..................................................................................... 118
4.1.3.2. Algunas utilidades para redes wireless............................................................. 122
4.2. Compartir la conexión a Internet ............................................................................................... 123
4.3. Configuración de un cortafuegos ............................................................................................... 125
4.3.1. Configuración con gnome-lokkit .................................................................................. 125
4.3.2. Configuración de cortafuegos con Firestarter ............................................................... 128
4.4. Redes de área local .................................................................................................................... 130
4.4.1. Introducción .................................................................................................................. 130
4.4.2. Configuración de la red con Guadalinex....................................................................... 133
4.4.3. Compartir recursos en redes Windows™ con SAMBA................................................ 136
4.4.3.1. Acceder desde Guadalinex a recursos compartidos en máquinas Windows .... 136
4.4.3.2. Acceder desde Windows a recursos compartidos en máquinas Guadalinex .... 138
4.4.3.3. Agregar a una impresora instalada en Windows. ............................................. 144
4.4.3.4. Agregar una impresora instalada en Guadalinex .............................................. 146
4.4.4. El sistema de ficheros NFS ........................................................................................... 147
4.4.4.1. Configuración del servidor ............................................................................... 147
4.4.4.2. Configuración del cliente.................................................................................. 147
5. Instalación de programas .................................................................................................................... 150
5.1. Introducción............................................................................................................................... 150
5.2. Distribuciones Debian ............................................................................................................... 151
5.3. Herramientas para el manejo de paquetes ................................................................................. 151
5.3.1. La herramienta APT ..................................................................................................... 152
5.3.1.1. Configuración de fuentes para apt (el fichero /etc/apt/sources.list) .. 152
5.3.1.2. Instalación y desinstalación de paquetes .......................................................... 153
5.3.1.3. Otras opciones de apt-get ................................................................................ 155
5.3.1.4. Obtención de información sobre paquetes ....................................................... 155
5.3.1.5. Reconfiguración de paquetes instalados........................................................... 155
5.3.2. La herramienta dpkg..................................................................................................... 156
5.3.3. Obtención y compilación de paquetes fuente Debian ................................................... 157
5.3.4. Instalar paquetes con synaptic...................................................................................... 158
5.3.4.1. Actualización completa del sistema ................................................................. 160
5.3.4.2. Instalar una aplicación...................................................................................... 161
5.4. Otras formas de instalar programas ........................................................................................... 163
5.4.1. Instalación a partir del código fuente ............................................................................ 163
5.4.2. Instalación a partir de binarios ...................................................................................... 165
5.5. El emulador Wine ...................................................................................................................... 166
6. APACHE, PHP y MYSQL................................................................................................................... 169
6.1. Introducción............................................................................................................................... 169
6.2. CMS (Content Management System)......................................................................................... 169
6.3. LMS (Learning Management System)....................................................................................... 170
6.4. El servidor web Apache ............................................................................................................ 170
6.4.1. Instalación ..................................................................................................................... 171
6.4.2. Configuración................................................................................................................ 172
v
6.5. PHP ............................................................................................................................................ 173
6.6. El sevidor de bases de datos MySQL........................................................................................ 174
6.6.1. PHPMyAdmin............................................................................................................... 175
6.7. Instalación de Joomla................................................................................................................ 176
6.8. Moodle....................................................................................................................................... 180
6.8.1. Descargar y copiar los ficheros de Moodle en el lugar apropiado ................................ 180
6.8.2. Configurar el servidor apache ....................................................................................... 181
6.8.3. Crear una base de datos................................................................................................. 181
6.8.4. Crear un directorio para los datos ................................................................................. 182
6.8.5. Ejecutar el script de instalación de Moodle .................................................................. 182
6.8.6. Configuración de Moodle.............................................................................................. 184
6.8.7. Instalación de módulos y actualización de la base de datos ......................................... 185
6.8.8. Configuración de la página de inicio............................................................................. 185
6.8.9. Creación de la cuenta de administrador ........................................................................ 186
vi
Capítulo 1. Instalación de Guadalinex
1.1. Introducción
El propósito de este capítulo es guiarle en el proceso de instalación de Guadalinex 2004 en su disco duro.
Se trata de un procedimiento bastante automatizado y que por tanto requiere poca intervención por parte del
usuario.
La dificultad del proceso depende de varios parámetros que lo pueden ir complicando: ¿Será Guadalinex
su único sistema operativo? ¿Quiere que Guadalinex conviva con Windows 98™? ¿Quiere que conviva con
WindowsXP™? ¿Tiene espacio libre sin particionar en su disco duro suficiente para Guadalinex o más bien
tiene que hacerle hueco redimensionando las particiones ya existentes?.
Combinando estos factores puede encontrarse situaciones de instalación de lo más diverso. En lo que
sigue trataremos darle indicaciones para todos estos casos comenzando por el más sencillo que es instalar
Guadalinex en un disco duro como único sistema operativo.
Por otra parte y aunque Guadalinex tiene soporte para la mayor parte del moderno hardware informático,
podrían presentarse casos en los que un hardware en particular que usted tiene presente problemas de funcionamiento.Así que no será posible ofrecer aquí una guía pormenorizada de instalación que cubra todos y
cada uno de los casos en su infinita variedad.
De cualquier manera éste es un curso tutorizado lo que significa que en cualquier momento de duda
puede consultar con los profesores. Le recomendamos encarecidamente que antes de hacer algo que no
tenga claro consulte y una vez aparecido el problema no intente solucionarlo sin saber qué está haciendo a
ciencia cierta, lejos de resolverlo podría estar empeorando la situación. Si es usted amante del aprendizaje
autodidacta puede consultar directamente la sección "Para ampliar" y experimentar, es una forma divertida
de aprender.
Antes de empezar es necesario planificar bien la instalación y pensar qué queremos hacer, para ello
responda a las preguntas que le hicimos más arriba.
1.2. Requisitos del sistema
Mínimos.
•
Procesador Intel™ o compatible a 200 Mhz
•
128 Mb de RAM
•
Tarjeta SVGA
•
2,5 Gb de espacio libre en el disco duro
Recomendados.
•
Procesador Intel™ o compatible a 800 Mhz
•
256 Mb de RAM
•
Aceleradora gráfica 3D compatible con OpenGL
•
5 Gb de espacio libre en el disco duro
1
Capítulo 1. Instalación de Guadalinex
1.3. Preparativos
1.3.1. Copias de seguridad
Si va a instalar Guadalinex en un disco duro virgen entonces no necesita esta sección, en cambio sin
planea instalarlo en un disco en el que ya tiene información es muy importante que siga las recomendaciones
que vienen a continuación.
Cualquier operación severa sobre su/s disco/s duro/s y en particular la instalación de un nuevo sistema
operativo podría ocasionar la total o parcial pérdida de sus datos. Por ello le recomendamos encarecidamente
que haga copias de seguridad. Si decide no hacerlas hágalo bajo su particular responsabilidad.
Importante: Una copia de seguridad es simplemente una copia de sus datos, se le llama de seguridad
porque no está destinada a trabajar sobre ella, como suele hacerse sobre los datos originales, sino a
prevenir desastres.
Si le hemos convencido de que haga copias de seguridad he aquí unas pocas indicaciones:
1. Usted debiera tener ya copias de seguridad de sus datos.
2. Lea el primer punto.
3. Fíjese que hablamos de "copias" en plural, lo que significa que debería tener más de una copia de sus
documentos. Además tendría que tenerlas en lugares físicos distintos, por ejemplo en su despacho y en
el centro de trabajo, siempre a buen recaudo.
4. Si usted lo desea puede hacer una copia de seguridad de todo su disco duro en un juego de CDs
o DVDs con algunas de las utilidades existentes para ello. Pero en general no debiera preocuparse
de los programas o el sistema operativo, podría volver a instalarlos en cualquier momento aunque le
suponga una molestia. En cambio si pierde sus documentos personales, ese texto que escribió o su
correo electrónico, no podrá volver a recuperarlos a menos que disponga de una copia.
5. Elija un soporte fiable y compruebe periódicamente que los datos están en buen estado.
6. Todos los soportes tienen ventajas e incovenientes, algunos de los más comunmente usados en informática doméstica son: DVD (gran capacidad, fiable, pero necesita de una grabadora que quizá no
tenga), CD (menor capacidad, fiable, necesita de una grabadora aunque muchos ordenadores ya la
tienen. Los hay de una sola escritura y regrabables. Estos últimos le darán la posibilidad de ir actualizando sus copias con un menor gasto), unidades ZIP (fiables, menor capacidad, casi se han dejado
de comercializar), disquetes (escasa capacidad, poco fiables, casi todo el mundo tiene una disquetera),
memorias USB (son fiables pero no se suelen emplear con estos fines, puesto que son suficientemente
caras como para grabar en ellas datos y dejarlas después para cuando hagan falta).
Sepa usted además que no todos los soportes CD o DVD tienen la misma calidad ni todos funcionan
bien con todas las grabadoras y lectoras. Así pues, compruebe que el soporte es de calidad y fiable,
pruébelo varias veces hasta que esté seguro de que no le va a fallar y tómese en serio las indicaciones
de conservación del fabricante.
7. Haga copias redundantes, al menos dos e incluso tres.
8. Finalmente, actualice periódicamente las copias de sus datos.
2
Capítulo 1. Instalación de Guadalinex
1.3.2. Discos duros y particiones
Podríamos considerar un disco duro como un gran local donde se almacenan los programas y los datos
de una forma permanente. Un disco duro puede ser divido en particiones de la misma forma que haríamos
habitaciones levantando tabiques en un mismo almacén. Si ha entendido el ejemplo ya sabe todo lo que se
puede saber sobre particiones. Pero si no ha quedado satisfecho con semejante explicación pedestre siga
leyendo.
Hay dos tipos de particiones: primarias y extendidas. Un disco duro puede ser divido en un máximo de
cuatro particiones primarias. Si usted necesita más particiones deberá entonces configurar una de las particiones primarias como extendida, que podrá ser divida a su vez en particiones lógicas, también conocidas
como unidades lógicas.
Esto significa que un disco duro puede estar dividido de cualquiera de las siguientes formas:
•
1,2,3 y hasta 4 particiones primarias.
•
1 partición primaria y 1 extendida
•
2 particiones primarias y 1 extendida
•
3 particines primarias y 1 extendida
Hacer distintas particiones en un disco duro es una buena práctica: el acceso a los datos es más eficiente,
se reduce la capacidad de infección de los virus, se aprovecha mejor el espacio, etc. En todo caso si va a
tener en su disco más de un sistema operativo entonces es imprescindible hacer particiones.
Para los que vienen de otros sistemas operativos seguramente les sorprenderá el nombre que GNU/Linux
da a los discos. Vamos a aprender un poco sobre el tema para que sepamos qué estamos haciendo.
En otros sistemas para referirse a los discos duros o particiones, así como a dispositivos tales como la
disquetera o la lectora de CDROM, se utilizan letras como A:\ C:\ D:\ E:\ etc. Esta terminología es bastante
confusa pues cada letra no siempre se refiere a lo mismo. Por ejemplo D:\ podría designar tanto una unidad
de CDROM como una partición lógica o primaria del primer disco duro o incluso una partición primaria de
un disco físico distinto.
En el sistema GNU/Linx y por supuesto en Guadalinex la forma de nombrar los discos duros con sus
particiones y el resto de dispositivos es bastante más coherente y ordenada. Véamos cómo se nombran los
discos.
Existen en el mercado distintas formas de conectar los dispositivos de almacenamiento como discos
duros, lectores de CDs, grabadoras de CDs, DVDs, etc. Una de las más usuales (al menos en plan doméstico)
es IDE.
Nuestros ordenadores vienen equipados con dos "canales" (buses) IDE, y cada uno de ellos soporta un
máximo de dos dipositivos. El primer dispositivo conectado a cada canal se llama maestro (Master) y el
segundo esclavo (Slave). Así pues podemos tener hasta cuatro dispositivos IDE en nuestro PC.
En GNU/Linux estos dispositivos se denominan hda, hdb, hdc y hdd según en qué canal estén conectados y en qué orden, perteneciendo los dos primeros al primer canal y los dos últimos al segundo canal.
¿Sabe ya qué significa "hda"?. Efectivamente hda es el primer dispositivo (master) del primer canal IDE, y
hdb el segundo dispositivo (slave) de ese mismo canal. Por su parte hdc es el primer dispositivo del segundo
canal y hdd el segundo dispositivo de ese mismo canal.
Primer bus IDE. hda (master) - hdb (esclavo)
Segundo bus IDE. hdc (master) - hdd (esclavo)
3
Capítulo 1. Instalación de Guadalinex
Existe otra forma de conectar dispositivos de almacenamiento denominada SCSI. Los dispositivos SCSI
funcionan con una tecnología completamente distinta, quedémonos con la idea de que se nombran de la
siguiente manera: sda, sdb, sdc,etc. Así que los discos duros IDE son denominados "hd" (hard disk),
mientras que los discos SCSI se conocen como "sd" (scsi disk).
Como cada disco puede tener varias particiones, éstas reciben un nombre "heredado" del disco duro al
que pertenecen, por ejemplo: hda1 será la primera partición del disco duro hda, hda2 la segunda, hdc1 la
primera partición del disco hdc, etc. Teniendo en cuenta además que GNU/Linux sigue la filosofía Unix
de considerar todo como un fichero del sistema, incluidos los dispositivos físicos, y que éstos residen en
el directorio /dev, la nomenclatura para designar los distintos discos y particiones se ajusta a la siguiente
secuencia:
/dev/hda. Maestro del primer canal IDE
/dev/hda1. Primera partición primaria del primer disco duro.
/dev/hda2. Segunda partición primaria del primer disco duro.
...
/dev/hda5. Primera partición lógica del primer disco duro.
/dev/hda6. Segunda partición lógica del primer disco duro
...
/dev/hdb. Dispositivo esclavo del primer canal IDE.
/dev/hdb1. Primera partición primaria del segundo disco duro.
...
Al proceso de ir creando las particiones se le suele llamar en la jerga y de modo poco imaginativo
"particionar". Pero además las particiones una vez creadas deben ser "formateadas", es decir, se les debe
crear un sistema de ficheros.
Un sistema de ficheros es, dicho sin mucho rigor, una forma particular de organizar la información en el
disco duro. En el mundo ideal habría una única forma de crear sistemas de ficheros, la mejor. Pero como
no vivimos aún en ese mundo puede encontrar una gran variedad de formatos, no siempre compatibles
entre sí, dependiendo del sistema operativo del que estemos hablando. Probablemente usted conozca ya los
siguientes:
FAT: con sus dos variantes FAT16 y FAT32 es el formato habitual en sistemas MS_DOS™, Windows95 y
98™, e incluso en WindowsXP™ Home Edition.
NTFS: habitual en los sistemas Windows NT™, 2000, 2003 y XP™ Professional.
GNU/Linux soporta una gran variedad de formatos pero lo más frecuente es encontrar particiones de tipo
EXT3 o EXT2, y un tipo de partición especial denominada "swap". En concreto Guadalinex 2004 se instala
sobre una partición con el formato EXT3.
Este tipo de partición presenta indudables ventajas: es muy resistente a fallos, no fragmenta el disco,
gran rapidez de acceso a los datos, excelente recuperación de errores una vez se han producido, etc.
Importante: Siempre hay quien pregunta por una herramienta de defragmentación para GNU/Linux
similar al "Defragmentador de discos" de Windows™. En GNU/Linux no existe tal herramienta, porque
no se necesita. Cuanto más se usa el disco duro menos se fragmenta y en cualquier caso el porcentaje
de fragmentación apenas llegará al uno por ciento.
En concreto, para instalar Guadalinex necesitaremos como mínimo dos particiones.1Guadalinex necesita
una partición para uso propio de un tamaño mínimo de 2,5 Gb. Usted puede tener una sola partición que
4
Capítulo 1. Instalación de Guadalinex
contenga el sistema operativo completo, las aplicaciones y los ficheros personales. Además de la partición
del sistema, también es recomendable tener una partición separada para el fichero de intercambio o swap.
El swap es un espacio de uso temporal que permite al sistema utilizar espacio de disco como memoria
virtual. Al poner el espacio de intercambio en una partición separada, Guadalinex puede hacer de él un uso
mucho más eficiente. La otra opción sería no crear una partición swap y forzar así que Guadalinex utilice un
fichero regular (/swapfile) como intercambio (al estilo Windows™ que usa un fichero llamado archivo
de paginación), pero no es recomendable. El tamaño de esta partición debe ser el doble de la memoria RAM
de nuestro equipo, aunque dado el tamaño de las memorias RAM de los equipos actuales bastaría con crear
una partición de swap del mismo tamaño que la memoria RAM. Así, si tenemos un equipo con 128Mb de
RAM el tamaño aconsejado sería 256Mb de swap, o si nuestro equipo posee 512Mb de RAM, con 512Mb
también de tamaño para la partición de swap sería suficiente.
1.3.3. La instalacion paso a paso
1.3.3.1. Paso 1: Arrancar desde el CD de Guadalinex
Para ser instalado Guadalinex necesita estar ejecutándose en modo Live-CD, de modo que lo primero
que haremos será iniciar el sistema con el CD de Guadalinex y esperar a que éste se carge completamente y
nos encontremos con el escritorio. Repase el capítulo 2 si no recuerda cómo hacer esto.
Si su equipo dispone de una conexión mediante tarjeta de red a un router ADSL o una Red Local,
verifique que está realmente conectado.
Con Guadalinex ejecutándose en Live-CD localizaremos el acceso directo situado en el escritorio llamado Instalación de Guadalinex. Pulsando dos veces sobre él con el botón izquierdo lanzaremos el programa
de instalación.
Escritorio de Guadalinex en Live CD.
Unas pantallas iniciales nos recomiendan la oportunidad de realizar una copia de seguridad de nuestros
datos antes de continuar y nos advierten de los requisitos mínimos para instalar Guadalinex.
A continuación se nos informa sobre los pasos que seguirá el proceso de instalación y que son:
5
Capítulo 1. Instalación de Guadalinex
•
Comprobar que el CD está en perfecto estado
•
Seleccionar dónde quiere usted instalar Guadalinex
•
Introducir los datos de su red
•
A continuación los datos se copiarán al disco duro
•
El CD será expulsado y el ordenador rearrancará automáticamente
Una vez mostrada esta información se le preguntará si quiere comprobar que el CD está en perfecto
estado. Si es la primera vez que usa ese CD es conveniente efectuar la comprobación.
1.3.3.2. Paso 2: Particionado del disco duro
Se nos preguntará a continuación si queremos hacer divisiones o usar todo el disco. Si tiene un disco duro
vacío o no le importa perder la información que tenga el disco y no va a instalar ningún otro sistema operativo y además no desea hacer partición swap forzando así a que Guadalinex use un fichero de intercambio,
puede elegir Usar todo el disco y saltarse todo lo que viene a continuación sobre particiones.
Si decidimos hacer divisiones se nos ofrecerán dos utilidades de particionado: Qtparted y cfdisk.
Qtparted
Qtparted es una herramienta gráfica bastante intuitiva recomendable para usuarios noveles.
6
Capítulo 1. Instalación de Guadalinex
Cfdisk
Cfdisk es una herramienta en modo texto que sólo es aconsejable si se tiene experiencia anterior con
GNU/Linux.
¿Cuántas particiones hacer? Depende el tipo de instalación.
1.3.3.2.1. Guadalinex como único sistema operativo
El caso más sencillo es que tengamos un disco duro vacío y queramos instalar Guadalinex como único
sistema. Para ello necesitaremos:
•
Crear una partición de tipo ext3 para el sistema.
•
Crear una partición swap con un tamaño igual al doble de la memoria RAM.
Importante: Supongamos un ordenador con 40 Gb de disco duro (o lo que es lo mismo 40959.81 Mb)
y 256 Mb de RAM. No se preocupe por la exactitud del tamaño de las particiones, se trata siempre de
valores aproximados. En ese caso:
Cree una partición ex3 de tamaño = tamaño total del disco - doble de la RAM. En nuestro caso crearemos una partición ext3 de 40448 (es decir, 40959.81 menos 512). Esta partición será desde ahora
/dev/hda1
Cree una partición swap con el resto del disco duro (512 Mb aproximadamente).
Aplicar los cambios y salir
1.3.3.2.2. Guadalinex y Windows™ en el mismo disco duro
Esta es una situación muy frecuente; queremos tener en el mismo disco duro una cualquiera de las
versiones de Windows™ y Guadalinex. Partimos de la misma situación que antes, es decir, tenemos un
disco duro vacío. En este caso las alternativas son varias así que lo que viene a continuación es sólo un
modo de hacerlo de los muchos posibles.
7
Capítulo 1. Instalación de Guadalinex
Windows 98™ (95) y Guadalinex. Instalaremos primero Windows™ pero teniendo cuidado de no utilizar
todo el disco duro. Esto creará una partición primaria FAT32 y dejará espacio libre sin particionar (por lo
menos 2.5 Gb, pero si va a usar Guadalinex para seguir el resto del curso, sea generoso y deje al menos
10Gb sin particionar).
Instalaremos Guadalinex y haremos las divisiones en el espacio libre del mismo modo que en el caso
anterior.
Windows XP™ y Guadalinex. Instalaremos primero Windows™ pero teniendo cuidado de no utilizar todo
el disco duro. Esto creará una partición primaria NTFS y dejará espacio libre sin particionar.
Una vez instalado Windows XP™ y desde el administrador de discos podemos crear una partición extendida y dentro de ella una partición lógica de tipo FAT32. Tenga cuidado de no utilizar todo el disco. El
propósito de esta partición es usarla para compartir información con Guadalinex: los archivos que guardemos en esa partición serán accesibles tanto desde Windows XP™ como desde Guadalinex.
Sobre el tamaño decida teniendo en cuenta cuánta información maneja usted y cuán grande es su disco
duro. Por supuesto puede decidir no crear dicha partición, pero le recomendamos que lo haga, de este modo
podrá arrancar uno u otro sistema sabiendo que sus ficheros de datos serán siempre fácilmente accesibles.
Instalaremos Guadalinex y haremos las divisiones en el espacio libre del mismo modo que en el caso de
Guadalinex como único sistema.
1.3.3.2.3. Tengo Windows™ instalado, quiero instalar Guadalinex y no tengo espacio libre sin
particionar en el disco duro.
Esta es la situación más crítica pues partimos de un disco duro que tiene otro sistema operativo, con
datos y programas, que con las operaciones de reparticionado podrían perderse. Más que nunca ahora le
encarecemos que haga copias de seguridad de todos sus datos sensibles. Pero no se ponga nervioso todavía,
analicemos la situación.
Lo primero es comprobrar si tenemos espacio suficiente para instalar Guadalinex. Una partición puede
estar ocupando todo el disco duro pero que no estar completamente llena de datos. Desde Windows™ vaya
a Mi Pc, haga clic con el botón derecho del ratón sobre C:\ o cualquiera otra partición que pueda tener y
vea cuanto espacio queda libre, si tiene al menos 2.5 Gb ya puede instalar Guadalinex, pero recuerde que
sería mucho mejor que quedasen al menos 5 Gb.
Si es así podemos instalar, pero antes necesitaremos redimensionar la partición, es decir, cambiar su
tamaño para dejar espacio libre sin particionar suficiente para las dos particiones de Guadalinex. Esta operación puede realizarse desde Windows™ con herramientas de reparticionado tales como Partition Magic
8.0™. de la empresa Power Quest™.
Antes de redimensionar la partición es conveniente que "defragmente" el disco con el "Defragmentador
de discos" de Windows™, esta operación, según el tamaño y el uso del disco, podría llevarle incluso varias
horas.
Si utiliza Partition Magic™ una vez redimensionada la partición, puede crear también con la misma herramienta las dos particiones que necesitará Guadalinex. No obstante la rutina de instalación de Guadalinex
le preguntará si utilizar todo el disco o hacer divisiones. Seleccione hacer divisiones, seleccione QTparted
y salga del programa sin hacer nada (puesto que ya hizo sus particiones con Partition Magic™) y el proceso
de instalación continuará normalmente.
Aún así también puede redimensionar sus particiones con QTparted pero no se lo recomendamos.
Importante: Mientras que usar QTparted sobre particiones FAT32 parece ser bastante seguro, se ha
informado que al redimensionar particiones NFTS con QTparted es posible que se produzcan errores
en la tabla de particiones que pondrían en serio peligro sus datos. No obstante una vez estropeada la
tabla de particiones todavía se podría recuperar el sistema, pero es algo que debe hacer alguien con
8
Capítulo 1. Instalación de Guadalinex
experiencia. Si se viera en la situación que tras instalar Guadalinex no pudiese acceder a WindowsXP™
no trate de solucionarlo a menos que sepa muy bien qué está haciendo, más bien póngase en contacto
con el tutor del curso.
1.3.3.2.4. QTparted
Qtparted
Como puede verse en la imagen QTParted es una aplicación gráfica de fácil manejo que permite manipular discos duros y particiones. Es la recomendada para los usuarios más inexpertos.
La ventana donde se ejecuta QTParted nos muestra una parte superior donde se encuentra el menú principal, una zona central y un pie donde está la barra de estado en la que se mostrarán todos los mensajes de
la aplicación.
La parte central se divide en dos zonas, la izquierda y la derecha. En la zona de la izquierda aparecerán
todos los discos duros que tenemos en nuestro ordenador. Al seleccionar uno de ellos podremos ver información del fabricante justo en la parte inferior izquierda. En nuestra imagen podemos ver que el sistema
dispone de un sólo disco duro (/dev/hda) marca Fujitsu™ de 28615.8 Mb de capacidad.
En la zona derecha se nos muestra, tanto gráficamente como en forma de tabla, las particiones del disco
que hemos seleccionado. Podemos ver bastante información de cada partición: Sistema de archivos que
contiene, tamaño total, cuánto espacio tiene ocupado con datos y su disposición física en el disco. La parte
superior derecha nos muestra un gráfico del disco duro dividido en rectángulos de tamaño proporcional a la
partición correspondiente. Dentro de cada rectángulo, una zona de color amarillo nos informa gráficamente
del espacio utilizado en la partición que corresponde.
Siguiendo con nuestra imagen podemos ver que el disco tiene 4 particiones primarias: una NTFS de 4,88
Gb de los que están ocupados 4,3 Gb; una FAT32 de 2,93 Gb de los que están ocupados 378,71 Mb; una
Swap de 509.88 Mb; finalmente una Ext3 de 19 Gb de los que están usados 12.88.
Una vez que sabemos lo que queremos hacer según el tipo de instalación encontramos que QTParted
permite las siguientes acciones sobre las particiones
Crear: Para crear una partición basta con hacer click con el botón derecho del ratón sobre el espacio libre
que tengamos. Podremos elegir el tamaño de la partición y el sistema de archivos a usar.
9
Capítulo 1. Instalación de Guadalinex
Formatear: Es el paso siguiente a crear una partición. Deja la partición preparada para ser usada por el
sistmea. Podremos elegir el sistema de archivos y podremos poner una etiqueta identificativa.
Redimensionar: Nos permite cambiar el tamaño de una partición. Es el paso típico a realizar cuando no
tenemos sitio libre para una partición y tenemos mucho espacio libre en una partición grande. El resultado es una partición más pequeña y espacio libre adicional. Podemos redimensionarla de forma gráfica o
escribiendo directamente el nuevo tamaño.
Mover: Mueve una partición a otro sitio del disco.
Borrar: Elimina una partición y la convierte en espacio libre.
Para terminar cuando la división del disco se encuentre según lo que queríamos, elegiremos la opción
Aplicar bajo el menú Fichero y nos aparecerá una ventana de advertencia. Es la última oportunidad para
abandonar el proceso y devolver el disco duro a su estado original. Si optamos por seguir QTParted realizará
las operaciones solicitadas y nos informará que han sido completadas con éxito, a continuación elegimos
Fichero−→ Salir.
Importante: Es posible que, en ocasiones, también haya que reiniciar el ordenador para que tome la
nueva configuración. Sobre todo si lo hacéis desde un sistema operativo ya instalado.
Con algunos ejemplos visuales se verá tal vez más claro.
Partiendo desde un disco duro vacío. Como ya dijimos es el caso más sencillo, tenemos un disco duro
vacío y al abrir QTParted este el el aspecto que mostraría.
Qtparted mostrando un disco vacío
Lo primero será crear la tabla de particiones, para ello hacemos clic con el botón derecho del ratón en la
representación gráfica del disco (o también un poco más abajo en la tabla de texto), y seleccionamos Crear
tabla de particiones
10
Capítulo 1. Instalación de Guadalinex
Crear la tabla de particiones
Ahora creamos, haciendo clic con el botón derecho, la partición ext3 restándole al total del disco el doble
de la RAM a fin de dejar espacio para la swap
Crear la partición ext3
11
Capítulo 1. Instalación de Guadalinex
Dejar espacio para la swap
Esto creará la partición
Liberado espacio para la swap
A continuación creamos la swap
12
Capítulo 1. Instalación de Guadalinex
Creación de la swap
Esto creará la partición
Particiones establecidas
Finalmente seleccionamos Fichero−→Aplicar, y QTParted comenzará a realizar las operaciones solicitadas. Si todo va como debe verá la pantalla
13
Capítulo 1. Instalación de Guadalinex
Aplicando los cambios
En la siguiente imagen puede ver cómo quedaría un disco para hacer convivir pacíficamente a Guadalinex
con WindowsXP™.
Esquema de particionado para arranque dual
Como vemos hay una partición primaria y una extendida. La primaria tiene el formato NTFS y es dónde
reside WindowsXP™. La extendida está a su vez dividad en particiones lógicas, por una parte tenemos una
FAT32, que es esa partición que recomendamos a fin de compartir información fácilmente entre los dos
sistemas instalados; por otra tenemos una ext3 que es dónde reside Guadalinex y finalmente una swap.
1.3.3.2.4.1. Redimensionando particiones
Si tiene una instalación de WindowsXP™ que ocupa todo el disco esté será el aspecto que le presentará
QTParted
14
Capítulo 1. Instalación de Guadalinex
Disco acaparado por un sólo sistema
Así que habrá que hacerle sitio a Guadalinex, para ello tenemos que redimensionar.
Redimensionar una partición
Fíjese en la flecha de dos puntas que forma el cursor del ratón, eso significa que se está redimensionando
gráficamente, pero podría haber hecho lo mismo escribiendo el nuevo tamaño.
15
Capítulo 1. Instalación de Guadalinex
1.3.3.2.4.2. Se instaló WindowsXP pero se dejó espacio libre sin particionar.
Disco con espacio libre
Fíjese en la imagen, ¿ve como hay 19.20 GB de espacio libre?. Aquí podemos instalar Guadalinex sin
tener que hacer otra cosa sino particionar ese espacio libre. Con operaciones iguales a lo ya visto, así
quedaría listo para instalar.
Particionado del espacio libre
1.3.3.3. Nombre del equipo. Contraseñas de usuario y administrador.
Una vez superado el escollo del particionado lo que queda es coser y cantar. Ahora el instalador de
16
Capítulo 1. Instalación de Guadalinex
Guadalinex detecta las particiones disponibles para alojar el sistema y nos ofrece la posibilidad de elegir en
cuál de ellas se ubicará, siempre que existan varias candidatas. Le indicaremos la correcta (suele estar ya
bien seleccionada por defecto) y continuará el proceso.
En este momento tenemos que elegir un nombre para el ordenador. El nombre que le demos carece de
importancia pero es buen momento para la ternura, al fin y al cabo no llamaría a su gato simplemente gato.
A continuación tendremos que crear las cuentas de usuario y administrador.
Importante: Llamamos "cuenta" al conjunto formado por un nombre de usuario y una contraseña, por
ejemplo:
nombre de usuario. saorin
Contraseña. 9b7twq
Para ello se nos pedirá primero un nombre de usuario y una contraseña (que tendremos que teclear dos
veces) a fin de crear una cuenta de usuario normal. Después se nos pedirá una contraseña para crear una
cuenta especial, la del administrador de la máquina, cuyo nombre ya está dado por el sistema y no se puede
cambiar, este nombre es "root"; así que sólo tendremos que teclear la contraseña dos veces y se creará la
cuenta de administrador (root).
En capítulos posteriores entraremos en detalle acerca del nivel de acceso al sistema que concede cada
tipo de cuenta, por el momento trataremos que la contraseña del administrador no sea fácilmente adivinable.
Incluso si se trata de un equipo doméstico no tenemos por qué dejarlo expuesto a cualquiera, y por supuesto
si planea conectarlo a Internet debe tomarse en serio usar buenas contraseñas.
Ahora que le hemos convencido de que no utilice como contraseñas cosas tales como su fecha de nacimiento o el año en que nació su primer hijo, le vendrán bien estas recomendaciones:
Importante: Al llegar aquí pensará usted que los autores del manual han sido víctimas de un ataque
agudo de paranoia porque ¿quién va a querer entrar en mi equipo? y si quiere entrar ¿cómo va a saber
la fecha de nacimiento de mi hijo?
A la primera pregunta le diremos que si usted va a usar su máquina para jugar al Tetris o poner
sobre ella un cactus, efectivamente tiene razón. Pero si la va a usar como herramienta de trabajo y
va a guardar en ella datos personales, entonces todo dependerá del sentido de la intimidad que usted
tenga.
Yo estoy ahora en mi sala de estudio, no me importaría que viniera de visita y viera lo que tengo en
ella, es más estaría encantado de mostrárselo, pero no tengo la puerta abierta con un letrero que diga
"pasen sin llamar".
Ahora que ya le hemos convencido de que no deje las puertas abiertas, aunque no tenga nada de valor,
viene la segunda respuesta.
Existe una técnica para averiguar contraseñas consistente en probar una tras otra hasta que el sistema nos
deje entrar, a esta técnica se le conoce con razón como "ataque por fuerza bruta". Por supuesto esto no se
realiza tecleando manualmente cada contraseña sino que se hace atacando desde un ordenador (el atacante)
a otro (la víctima). Se asombraría de la gran velocidad a que un ordenador es capaz de probar contraseñas
hasta acertar. Si usted utiliza una contraseña tal como "180767" o "1871967" o "18/7/1967" o cualquier otra
variante en poco menos de una hora podría ser violentada.
Al fin y al cabo 2005 años a 365 días al año dan un número de variantes bastante pequeño para una
máquina. Pero tampoco es mucho más resistente una palabra, por rara que sea, de cualquier idioma. Probar
todo el diccionario de la RAE, incluyendo conjugaciones verbales, y formas de adjetivo es también bastante
rápido de hacer, y más si los atacantes son varios. Este tipo de ataque es una variante de la fuerza bruta
17
Capítulo 1. Instalación de Guadalinex
conocido como "ataque por diccionario". Incluso si la palabra es inventada, o es un patrón mnemotécnico,
a poco que tenga algún sentido es vulnerable a una variante del ataque por fuerza bruta conocido como
"ataque por patrón", piense que la misma lógica que siguió usted para construir su palabra inventada puede
ser reconstruida por otro humano.
Solución: que su contraseña no tengan absolutamente ningún sentido.
•
Debería contener caracteres alfanuméricos, es decir, letras y números a ser posible mezclados y utilizando mayúsculas y minúsculas. Este tipo de contraseñas es difícil de vulnerar pues las posibilidades son
enormes. Así la contraseña "by6d9w" sería distinta de "bY6D9w".
•
Por la misma razón debería tener al menos 6 carácteres.
•
No deben usarse palabras con sentido que puedan estar en un diccionario.
•
No deben deducirse de datos relativos a nosotros mismos ni a una combinación de ellos: fecha de nacimiento, dni, matrícula del coche, números de teléfono.
•
No anotarla nunca, y si se hace no dejarla cerca del ordenador. Hay quién la esconde debajo del teclado
o incluso la pega en el lateral del monitor.
•
En cualquier caso lo mejor es recordarla y si la anota dejarla en un lugar que le parezca muy seguro.
Tenga en cuenta que estamos haciendo algo muy serio, instalar un sistema multiusuario en el que cada
usuario debe tener las máximas garantías de confidencialidad y seguridad. Ningún usuario tendrá acceso a
los datos de cualquier otro a no ser que éste último lo permita explícitamente y únicamente a aquellas partes
de sus datos que quiera permitir. Si usted viene de otros sistemas operativos donde la seguridad es escasa
o simplemente inexistente entendemos que le pueda parecer excesivo lo que aquí se dice, pero esta es la
nueva filosofía que pronto le será familiar.
1.3.3.4. Configuración de la red
Si su equipo no tiene tarjeta de red este paso será omitido por el instalador. Si desea conectarse a Internet
tendrá que hacerlo por otros medios, un modem por ejemplo, pero la configuración del modem la haremos
más tarde cuando el sistema esté instalado y funcionando.
Si tiene tarjeta de red pero no la usa para conectarse a otros equipos ni a Internet puede cancelar la
configuración de red eligiendo "No configurar una red ahora".
Es posible que llegado a este punto Guadalinex le diga que ha detectado una configuración de red válida
y le pregunte si desea mantenerla. Esto ocurre cuando su equipo está conectado por medio de una tarjeta de
red a una Red de Area Local, o a un router ADSL. 2 donde hay disponible un servidor DHCP, y se inició el
arranque desde el CD con el cable de red conectado.
Por supuesto si esa va a ser la forma habitual con que usted conectará el ordenador conteste Sí.
Si aún teniendo acceso a un router ADSL o Red Local con DHCP olvidó conectar el cable de red al
iniciar el sistema, puede hacerlo ahora, pero tendrá que indicárselo al sistema.
Si tiene tarjeta de red y desea configurarla se le ofrecerán dos posibilidades, o hacerlo manualmente o a
través de DHCP.
El caso más simple es que su equipo se vaya a conectar a una red que disponga de un servidor DHCP,
el cual le facilitará a Guadalinex todos los parámetros necesarios automáticamente sin que tenga usted que
hacer nada.
18
Capítulo 1. Instalación de Guadalinex
Esta situación es frecuente en las Redes de Area Local (LAN) existentes en lugares como una oficina o
un Instituto. También es frecuente si usted se conecta a Internet con un router ADSL mediante su tarjeta de
red, en estos casos el router suele venir equipado con un servidor DHCP.
Para que esta opción de configuración funcione bien es necesario que en este momento de la instalación
su ordenador esté conectado a la red, ya sea la LAN o al router ADSL que le suministró su compañía de teléfono. La razón es que Guadalinex buscará el servidor DHCP y mirará si efectivamente le da los parámentros
necesarios, en caso de no hallarlos producirá un error y le instará a que configure la red manualmente.
Si está completamente seguro de que su LAN o router ADSL tienen un DHCP funcionando correctamente, pero que por cualquier motivo no está ahora disponible, puede forzar a que Guadalinex use DHCP
aun cuando le diga que no es válido (funcionará bien cuando esté correctamente conectado) o cancelar la
configuración de la red y dejarla para cuando el sistema esté instalado y funcionando.
Si nuestro equipo forma parte de una red local o se encuentra conectado a un router ADSL que o bien
no disponen de servidor DHCP o éste no está activo, debemos configurar la red manualmente. Para ello
necesitamos conocer una serie de datos precisos, con los que tal vez no esté familiarizado. En una red cada
ordenador se identifica con un número único que es como su dni, a este número le llamamos dirección IP
(un número IP podría ser algo como 192.168.1.23). Si se está conectando a una red local pregúntele al
administrador qué dirección IP debe usar, cuál es la máscara de la red, cuál es la IP de la puerta de enlace
(gateway) y qué servidores de nombres de dominio (DNS) debe usar.
1.3.3.5. Copiado del sistema al disco duro
Es el paso final, en este momento el instalador realizará las operaciones solicitadas, y verá los mensajes
de lo que está haciendo en ese momento:
•
Formateando la partición ext3 a fin de crear en ella un sistema de archivos
•
Formateando la partición swap
•
Copiando los ficheros al disco duro
•
Configurando el gestor de arranque Grub
Este proceso durará entre 5 y 30 minutos dependiendo de la velocidad de su CPU. Una vez concluido el
proceso el ordenador se reiniciará y el CD será expulsado automáticamente.
De ahora en adelante cada vez que encienda su ordenador se ejecutará el gestor de arranque GRUB. Se
trata de un programa que le permitirá elegir qué sistema operativo ejecutar. Si sólo ha instalado Guadalinex
el gestor le permitirá elegir entre el arranque normal de Guadalinex o Guadalinex a prueba de fallos. Pero
si tenía ya instalado Windows 98™, Windows XP™ o ambos, el gestor de arranque le permitirá además
elegirlos con sólo moverse con las teclas del cursor. Aun cuando haya varios sistemas instalados si usted no
hace nada tras unos segundos se arrancará Guadalinex, ya que este es el sistema por defecto.
19
Capítulo 1. Instalación de Guadalinex
Gestor de arranque GRUB
Una vez cargado Guadalinex se puede cambiar el sistema operativo que se ejecutará por defecto. Vaya al
menú Aplicaciones−→Herramientas del sistema−→Panel de control−→Arranque. Necesitará para
ello la contraseña de root (administrador).
Configurar el arranque del sistema
1.3.4. Registrándose en el sistema
A diferencia de lo que ocurre cuando Guadalinex se está ejecutando desde el CD ahora para entrar en
el sistema necesitará registrarse, es decir, facilitar su nombre de usuario y contraseña. Esto permitirá que el
sistema lo idenfique y le asigne los privilegios de acceso conformes con su cuenta.
Se protege así la confidencialidad de los datos y la seguridad del propio sistema. De modo que Guadalinex le pedirá siempre que introduzca su nombre de usuario y su contraseña. Cumplimentando ambos
campos (tenga cuidado pues se distingue entre mayúsculas y minúsculas) se cargará el entorno gráfico y
accederemos a nuestra área de trabajo.
Como usuarios normales somos soberanos en ese área, podemos hacer y deshacer a nuestro antojo, pero
fuera de ese área no podemos hacer absolutamente nada. Olvídese de la promiscuidad de otros sistemas
20
Capítulo 1. Instalación de Guadalinex
operativos que le permiten escribir o crear directorios en cualquier sitio al azar.
Es posible configurar Guadalinex para que no sea necesario el registro inicial sino que se acceda con un
usuario genérico sin solicitar ningún tipo de contraseña. Sin embargo, esta configuración es completamente
desaconsejable porque supone una pérdida de funcionalidad y ningún beneficio. Tiene en sus manos un
sistemas multiusuario seguro ¿por qué desperdiciar esa potencialidad?. Aún cuando se usted el único usuario
de su computadora es conveniente que mantenga el registro en el sistema, al fin y al cabo ¿por qué exponer
su información a cualquier curioso?
Hay algo igualmente desaconsejable: usted no debe usar la cuenta de administrador (root) para el trabajo
normal como usuario. Cuando usted está en el sistema como root tiene poderes absolutos sobre el sistema
operativo, puede hacer todo y también, por supuesto, echar todo a perder. Mientras trabaje como usuario
normal puede experimentar sin miedo no podrá aunque quiera estropear el sistema, pero como root puede,
si no sabe a ciencia cierta qué está haciendo, dejarlo completamente inutilizable. Por otra parte, aunque
GNU/Linux es uno de los sistemas más seguros que se conocen, navegar por Internet como root es muy
peligroso sobre todo si es usted dado a pinchar en todo lo que se mueve. Evitar esto es tan importante que
por defecto Guadalinex no le dejará registrarse como root para acceder al entorno gráfico.
Debe registrarse siempre como un usuario normal. Una vez dentro de Guadalinex cuando solicite alguna
acción tal como crear nuevos usuarios o instalar nuevos programas, se le pedirá la contraseña de root y
podrá hacer los cambios oportunos, después de realizar la tarea volverá a usuario normal, de ese modo no se
compromete la estabilidad y seguridad del sistema. Asi que no se registre como root para el trabajo diario,
no dirá que no se lo hemos dicho. Abandone viejas prácticas si las tenía y disfrute de uno de los mejores
sistemas operativos del mundo que únicamente nos pide tener un poco de cuidado.
1.3.5. Apagar el sistema
El sistema debe apagarse correctamente a fin de no causarle daños que pueden llegar a ser importantes.
Para ello disponemos del botón apagar, tras pulsarlo se nos pedirá la contraseña de root, la introducimos y
aceptamos, el sistema se apagará correctamente.
Otro modo de apagarlo es ir al menú Acciones y seleccionar Terminar la sesión. Así regresaremos a la
pantalla de registro inicial, desde allí en el menú Sistema, elegimos Apagar el ordenador.
Guadalinex rara vez se cuelga, si le sucede muy a menudo puede que su instalación sea por algún motivo
defectuosa. ¿Qué hacer en caso de cuelgue? Trataremos de este asunto más en profundidad, lo que ahora
vemos es simplemente como apagar Guadalinex cuando éste parece colgado.
Primera solución: presiones las teclas Control, Alt y Retroceso (cuidado, no es la tecla Suprimir, sino
la de retroceso, esa que lleva una flecha apuntando a la izquierda), esto le devolverá la pantalla de registro
desde donde podrá o volver a entrar o apagar el sistema.
Segunda solución: presione las teclas Control+Alt+F2, se le presentará una pantalla en negro, solicitando
login: teclee root, a continuación se le pedirá la contraseña, introdúzcala, finalmente teclee poweroff
El efecto de estas palabras mágicas es iniciar el proceso de apagado ordenado, lo que en la jerga se
conoce como "bajar el sistema", verá entonces una serie de mensajes indicándole la terminación de los
procesos en curso.
21
Capítulo 1. Instalación de Guadalinex
1.4. Problemas con la instalación
1.4.1. Windows no aparece en el menú de arranque de Grub
Normalmente durante el proceso de instalación del sistema Guadalinex detectará cualquier versión de
Windows que tuviese en el ordenador y configurará Grub para que la arranque. Pero si esto no funciona
puede modificar el gestor de arranque Grub para que puede lanzar Windows.Este es el procedimiento:
•
Vaya al menú Aplicaciones−→Configuración−→Sistema−→Arranque
•
Introducza la contraseña de root
•
Aparece el asistente "Crear una imagen de arranque nueva". Pulse "Adelante"
Asistente para crear una imagen de arranque nueva
•
En la ventana que aparece en el campo "Nombre" ponga "Windows XP" o algo similar. En el desplegable
"Sistema operativo" seleccione "Desconocido". Pulse "Adelante".
•
En la siguiente ventana en el desplegable seleccione /dev/hda1 (suponiendo que Windows esté en la
primera partición del primer disco duro (lo cual es lo más habitual) Pulse "Aplicar" para guardar los
cambios.
Si este procedimiento no resultara por algún motivo o no le dan miedo los ficheros de configuración
en texto, puede hacerlo de otro modo. Abra una terminal de root (Aplicaciones/Configuración/Terminal de
root). Escriba en ella #gedit /boot/grub/menu.lst y añada al final una línea similar a esta
title WINDOWS XP rootnoverify (hd0,0) makeactive chainloader +1
Guarde los cambios. Finalmente reinicie el sistema y verá que aparece una entrada para su sistema
Windows XP
1.4.2. Windows aparece en el menú de Grub pero aún así no
arranca
En este error Windows sí aparece en el menú de Grub pero al intentar seleccionarlo o bien aparece una
pantalla completamente en negro o bien aparece con la frase Chainloader +1 pero no continúa.
Este error no es demasiado frecuente y se produce de un modo aparentemente aleatorio. Puede que
estemos instalando en varios ordenadores y en alguno de ellos sin saber por qué ocurre esto.La causa del
problema es la BIOS del sistema. Normalmente la BIOS está configurada para que autodecte el modo
22
Capítulo 1. Instalación de Guadalinex
del disco duro pero en algunos casos esto no funciona. Para resolver el problema entre en la BIOS de su
ordenador, configure el disco duro en modo LBA y guarde los cambios. Esto debería ser suficiente.
1.4.3. Guadalinex parece arrancar pero cuando se inicia el
entorno gráfico el monitor se queda en negro
Ejecutar Guadalinex 2004 desde el cd es un buen método para comprobar si todo va a quedar bien
una vez instalado. De este modo si cuando ejecutamos el live-cd no tuvimos problemas con el monitor
no deberíamos tenerlos una vez instalado. El problema descrito puede suceder después de la instalación
e incluso durante la instalación y se debe a que la resolución y/o velocidad de refresco que Guadalinex
tiene por defecto no está soportada por su monitor. Antes de nada pulse cualquier tecla pues podría ocurrir
simplemente que se hubiese activado el protector de pantalla.Un modo sencillo de tratar de resolverlo es
pulsar la combinación de teclas Ctrl+Alt+Retroceso unas cuantas veces para tratar de que Guadalinex se
adapte a la velocidad de refresco de su monitor.Si esto no funciona deberá mirar el manual de su monitor
para conocer la velocidad de refresco tanto horizontal como vertical expresada en Herzios de su monitor.
Ahora cuando el sistema esté arrancando escriba boot:linux xvrefresh=60 (o cualquiera otra que sea la
velocidad de refresco vertical del monitor). Si esto no funcionara podría ser todavía más explícito y teclear
boot:linux vsync=56 hsync=35 Si no tiene el manual del monitor comience por poner los valores que aquí
se indican como ejemplo y vaya bajándolos si es necesario.Más adelante en el capítulo sobre configuración
de dispositivos trataremos sobre cómo mejorar la calidad de la imagen del monitor.
1.5. Afinar la instalación
Hasta ahora el proceso de instalación habrá durado si no ha tenido problemas unos 15 o 20 minutos
dependiendo de su equipo.Ahora necesitaremos tomarnos un poco de tiempo para dejar la instalación "fina"
1.5.1. Actualizar Guadalinex 2004
Después de la instalación del sistema podemos decidir actualizarlo, es decir, instalar las últimas versiones
de todos los paquetes. Este procedimiento puede llevar algún tiempo dependiendo de la velocidad de su
acceso a Internet.Para ello abra una terminal de root y escriba:#apt-get update De esta forma actualizamos
la lista de paquetes disponibles para nuestra versión de Guadalinex. Después de este proceso escriba #aptget dist-upgrade y prepárese un café, té o güísqui and the rocks.El proceso puede llevar más de media hora
dependiendo de su velocidad de acceso a la red. Durante el mismo es posible que se le haga preguntas si no
sabe qué contestar elija siempre la opción por defecto.
Si lo prefiere puede usar para la actualización el gestor gráfico de paquetes Synaptic. Para ello vaya al
menú Aplicaciones/Configuración/Sistema/Synaptic. Se le pedirá la contraseña de root
23
Capítulo 1. Instalación de Guadalinex
Gestor de paquetes Synaptic
Pulse la tecla "Recargar" y después que haya terminado la actualización de la lista de paquetes dispondibles pulse "Marcar todas las actualizaciones". En la ventana emergente pulse "Actualización inteligente".Este procedimiento es equivalente al anteriormente descrito.
1.5.2. Problemas con la impresión desde Mozilla-Firefox
Si usted tiene instalada una impresora en el sistema puede ocurrir que aún cuando todos los programas
puedan imprimir Mozilla-Firefox no lo haga
Notas
1. Los usuarios más avanzados cuando instalan GNU/Linux en general o Guadalinex en particular suelen crear más particiones de las estrictamente necesarias. Hay varias razones para hacerlo pero dado
el carácter introductorio del curso no trataremos de ello ahora, en todo caso puede consultar la documentación incluida en la sección "Para ampliar".
2. El que usted tenga acceso ADSL a Internet no garantiza que esté utilizando para ello la tarjeta de red
de su ordenador. Además de los routers ADSL exiten también los modems ADSL, éstos últimos se
conectan al equipo a través de un puerto, habitualmente el USB.
Si ese es su caso el acceso a Internet habrá que hacerlo más adelante con el sistema ya instalado. Si planea contratar
acceso ADSL o tiene la posibilidad de cambiarlo le recomendamos contrate un acceso tal que pueda hacerse
mediante la tarjeta de red de su equipo, ya sea con cable o inalámbrico.
Si su equipo no tiene tarjeta de red instale una, le saldrá quizá un poco más caro pero ganará calidad. Entre otra
ventajas el acceso ADSL mediante router le permitirá conectar varios equipos independientes al mismo tiempo,
con tal que estén dotados de tarjeta de red, de la manera más sencilla y estable.
24
Capítulo 2. El sistema de ficheros
2.1. Introducción
Normalmente para preparar un disco duro para su uso con cualquier sistema operativo realizamos dos
tareas: particionarlo y crear un sistema de ficheros. 1Cuando hacemos lo primero estamos creando divisiones
en el disco, cada disco tiene que tener al menos una de estas divisiones. La segunda operación, lo que
habitualmente se conoce como formatear, consiste en crear una estructura de datos para que el sistema
operativo (Windows o Linux) pueda organizar la información en ficheros y directorios. Así que un sistema
de ficheros (en inglés filesystem) es simplemente una estructura de datos situada en un área o división del
disco. De este modo un mismo disco puede contener varios sistemas de ficheros.
Los distintos sistemas operativos normalmente usan diferentes sistemas de ficheros, lo que dificulta el
compartir los contenidos de una unidad de disco entre ellos. Sin embargo, Linux admite múltiples sistemas
de ficheros, lo cual hace posible por ejemplo la lectura/escritura de particiones dedicadas a MS-Windows.
2.2. Tipos de sistemas de ficheros
Linux trabaja nativamente con los sistemas de ficheros Ext, Ext2, Ext3, Minix, Xia pero además soporta
una gran variedad de sistemas para facilitar el intercambio de información con otros sitemas operativos.
Una descripción detallada de cómo funcionan cada uno de estos sistemas de ficheros excede con mucho los
propósitos de este capítulo. No obstante daremos unas pinceladas de los más frecuentes. Linux soporta:
ext2. (Second extended filesystem o "segundo sistema de archivos extendido") fue el sistema de ficheros
estándar en el sistema operativo GNU/Linux por varios años y continúa siendo ampliamente utilizado. Fue
diseñado originalmente por Rémy Card. La principal desventaja de EXT2 es que la recuperación tras una
caída repentina del sistema es lenta y en algunos casos dificultosa.
ext3. Es una mejora del anterior. Incorpora una bitácora (journaling) lo que hace que la recuperación tras
un apagado inesperado sea rápida y fácil. Actualmente es el sistema de ficheros más ampliamente utilizado
en GNU/Linux.
msdos. Para compatibilidad con el sistema de ficheros FAT de MS-DOS
vfat. Para compatibilidad con el sistema FAT32 de Windows9X
ntfs. Es el sistema empleado en Windows NT y WindowsXP. GNU/Linux sólo tiene soporte de lectura
para este sistema de ficheros, y de escritura en fase experimental, aunque no se suele activar por defecto.
Guadalinex viene preparado para ambas operaciones aunque la escritura no es aconsejable.
iso9660. Es el sistema de ficheros de los CD-ROM. GNU/Linux incorpora de forma automática la extensión
Rock Ridge lo que permite nombres de fichero más largos.
umsdos. Extiende el sistema de ficheros msdos bajo GNU/Linux. El sistema de ficheros ms-dos no soporta nombres de fichero largos, propiedad, permisos, enlaces y ficheros de dispositivo que sí soporta el
sistema ext2 o ext3. Con umsdos podemos utilizar un sistema de ficheros ms-dos como si fuera nativo de
GNU/Linux. De este modo podríamos utilizar una partición ms-dos preexistente en el sistema para instalar
GNU/Linux aunque con el inconveniente de que su rendimiento es menos eficiente.
nfs. Network File System (Sistema de archivos de red) es un sistema de archivos distribuido para un entorno
de red de área local. Posibilita que distintos sistemas conectados a una misma red accedan a ficheros remotos
como si se tratara de locales.
hpfs. Para compatibilidad con sistemas operativos OS/2
25
Capítulo 2. El sistema de ficheros
sysv. Para compatibilidadcon Unix SistemV/i386, Coherent y Xenit
reiserfs. Es un sistema de archivos de propósito general, diseñado e implementado por un equipo de la
empresa Namesys, liderado por Hans Reiser. Actualmente es soportado por Linux y existen planes de futuro
para incluirlo en otros sistemas operativos. A partir de la versión 2.4.1 del núcleo de Linux, ReiserFS se
convirtió en el primer sistema de ficheros con journal (bitácora) en ser incluído en el núcleo estándar.
xfs. Es un sistema de archivos con journaling de alto rendimiento creado por SGI (antiguamente Silicon
Graphics Inc.) para su implementación de UNIX llamada IRIX. En mayo del 2000, SGI liberó XFS bajo
una licencia de código abierto.
udf. Universal Disk Format es utilizado en los cd-rom y en el dvd-video y dvd-rom
minix. Primer sistema de ficheros utilizado por Linux
ext. El sucesor inmediato de minix actualmente en desuso.
xiafs. El sucesor de ext. Tampoco está en uso actualmente.
Además de estos tipos de sistemas de ficheros en un sistema GNU/Linux suele haber también una partición utilizada por el sistema como área de intecambio (swap) a partir de la cual el sistema implementa la
memoria virtual.
La memoria virtual puede también implementarse a través de un fichero. En la instalación automática de
Guadalinex se crea un fichero de intercambio con el nombre swapfile2, no obstante si Guadalinex encuentra una partición swap la utilizará para implementar la memoria virtual junto con el fichero de intercambio
que él mismo creó.
En GNU/Linux existen varias utilidades para manejar particiones las más utilizadas son: fdisk, cfdisk,
qtparted, etc... alguna de las cuales ya se han tratado en este curso. En la imagen puede verse cómo muestra
fdisk un disco duro con tres sistemas de ficheros (FAT, NTFS y EXT3)
Fdisk
2.3. Estructura del sistema de ficheros.
En GNU/Linux todo en el sistema es tratado como un fichero.3 Los directorios son ficheros cuyos datos
son los archivos que contiene. Incluso los dispositivos (tales como una partición de disco duro, un diquete
o un cd rom) son tratados como ficheros especiales en los que se puede leer y escribir.
26
Capítulo 2. El sistema de ficheros
El sistema de ficheros en UNIX se compone de un único árbol de directorios que comienza en el directorio principal (/). Este árbol puede estar integrado por varios dispositivos físicos (e incluso dispositivos
virtuales). A cada dispositivo integrado en el árbol de directorios se accede mediante un subdirectorio común del mismo llamado punto de montaje del dispositivo. De esta forma, resulta transparente para los
usuarios y las aplicaciones qué dispositivos forman el árbol de directorios y dónde están montados.
Importante: Si viene de Windows estará acostumbrado a utilizar letras para representar dispositivos,
así C:\ siginificaría la primera partición del primer disco duro; D:\ podría representar una partición o
un cd-rom; E:\ podría representar otra partición o un segundo cd-rom, etc. Esta forma de organizar
la información tiene graves incovenientes. Para caer en la cuenta imagínese que un amigo desde su
casa le dice "estoy viendo una letra D:\ ¿qué es esto?"... ¿podría responderle a ciencia cierta? En
cambio con GNU/Linx, utilizando una metáfora, es como si sólo tuviese una gigantesca letra C:\, y
usted accede a cualquier dispositivo simplemente a través de una carpeta. Los autores se niegan a
admitir que el sistema de letras es más "intuitivo" para el usuario, únicamente reconocen que es a
lo que se ha acostumbrado la gente. Pero ¿cuántas veces una aplicación no funciona porque está
previsto que encuentre la información del cd-rom en D:\ cuando usted tiene su cd-rom en E:\?
GNU/Linux está comprometido a respetar el Estándar de Jerarquía de Sistemas de archivos (FHS del
inglés Filesystem Hierarchy Standard), un documento de consenso que define los nombres, la ubicación y
los permisos de muchos tipos de archivos y directorios. Esto significa en la práctica que usted encontrará
los mismos directorios en el mismo lugar en diferentes sistemas que respeten este estándar.4 A continuación
mostramos un breve esquema de la jerarquía de directorios en un sistema GNU/Linux:
/
|-bin
|-boot
|-cdrom
|-dev
|-etc
|-floppy
|-home
|-lib
|-mnt
|-proc
|-root
|-sbin
|-tmp
|-usr
|-var
Si describimos brevemente su contenido:
/bin/. Contiene los ejecutables (binarios) básicos del sistema. En /usr/bin también hay contenidos ejecutables pero no los básicos. Esto se hace así porque puede que cuando el sistema arranque todavía no esté
disponible el directorio /usr y sin embargo se necesite ejecutar algunos programas.
/boot/. Este directorio contiene archivos estáticos requeridos para arrancar el sistema, tales como el kernel
de Linux. Estos archivos son esenciales para que el sistema arranque correctamente.
/cdrom/. En este directorio se accede al contenido del cd-rom. En otros sistemas GNU/Linux el cd-rom se
monta en el directorio /mnt/cdrom/. En los sistemas RedHat Enterprise™ o Fedora existe un directorio
/media/. Este directorio contiene los subdirectorios utilizados como puntos de montaje para los "media
removible", tales como CD-ROMs, pendrives o discos Zip.
/dev/. El directorio /dev/ contiene entradas del sistema de archivos que representan dispositivos del sistema. Estos archivos son esenciales para el correcto funcionamiento del sistema.
27
Capítulo 2. El sistema de ficheros
/etc/. El directorio /etc/ está reservado para los archivos de configuración que son locales a su ordenador.
No deben colocarse binarios en /etc/. Los binarios que antiguamente se colocaban en él deberían colocarse en /sbin/ o en /bin/. Los directorios X11/ y skel/ son subdirectorios. El directorio /etc/X11/
contiene los archivos de configuración de X Window System (el sistema gráfico que incorpora GNU/Linux).
El directorio /etc/skel/ es un conjunto de archivos "esqueleto" (del inglés "skeleton") de usuarios, que
son archivos utilizados para rellenar el directorio principal de un usuario la primera vez que éste es creado.
/floppy/. En él se accede al contenido del disquete. En otros sistemas se monta en /mnt/floppy y en
RedHat en /media/ tal como se explicó más arriba.
/home/. En este directorio se encuentran los directorios de trabajo de los usuarios del sistema. Cada uno es
completamente soberano en su propio directorio de trabajo. Este directorio, en el sistema gráfico GNOME,
que es el que trae por defecto Guadalinex, es representado como un icono con el rótulo "Carpeta de inicio
de usuario", donde usuario es su nombre con el que el sistema le identifica.
/lib/. El directorio /lib/ debería contener sólo las bibliotecas (libraries) necesarias para ejecutar los binarios situados en /bin/ y en /sbin/. Estas imágenes de bibliotecas compartidas son particularmente
importantes para arrancar el sistema y ejecutar comandos en el sistema de archivos raíz.
/mnt/. De él cuelgan los directorios para montar sistemas de archivos, por ejemplo /cdroom/ o /floppy/.
En Guadalinex se montan aquí las particiones Windows encontradas en el sistema, el cd-rom y el disquete
se montan en otros lugares como hemos visto más arriba.
/proc/. El directorio /proc/ contiene "archivos" especiales que o bien extraen información del kernel o
bien la envían a éste.
/root/. Directorio de trabajo del adminstrador del sistema.
/sbin/. contiene los archivos binarios ensenciales para administrar el sistema, esto es, para arrancar, restaurar, recuperar y/o reparar el sistema.
/tmp/. En él se almacena información temporal, necesario para la ejecución de ciertas aplicaciones.
/usr/. Aquí se sitúan los programas que no son básicos para el sistema. En él se contiene el directorio
/usr/local/ donde se sitúan las aplicaciones que van a ser compartidas por los usuarios del sistema.
/var/. En él se almacenan archivos de datos variables. Esto incluye archivos y directorios spool, datos de administración, de registro y archivos temporales. Los archivos de registro del sistema tales como messages/
y lastlog/ van en el directorio /var/log/
/sys/. Este directorio utiliza el nuevo sistema de archivos virtual sysfs específico del kernel 2.6 (kernel que
viene con Guadalinex 2004, pero no con anteriores versiones). El directorio /sys/ contiene información
similar a la que se encuentra en /proc/, pero muestra una vista jerárquica de la información específica
sobre los dispositivos de conexión en caliente (hot plug). Para ver ciertos dispositivos USB y Firewire
montados, consulte la página man de /sbin/hotplug y /sbin/udev.
2.4. Ficheros de configuración del sistema
No se van a tratar aquí todos los archivos de configuración sino aquellos que creemos debe conocer
alguien que se inicia en un sistema GNU/Linux. Los ficheros de configuración se almacenan en distintas
partes del sistema.
$HOME. En el directorio de trabajo del usuario se encuentran diversos ficheros de configuración que
afectan únicamente a ese usuario. Tales ficheros comienzan habitualmente con un punto lo que indica
que son ficheros ocultos. Un ejemplo podría ser el fichero .bashrc En el directorio de trabajo suele almacenarse la configuración personal para las distintas aplicaciones instaladas en el sistema en carpetas que
llevan el nombre de la aplicación tales como .mozilla-firefox (donde se almacenan las configuraciones
28
Capítulo 2. El sistema de ficheros
personales de apariencia de la aplicación, los ficheros de marcadores, las preferencias de idioma, etc.). Si
quiere ver estos ficheros y carpetas ocultos puede hacerlo de dos modos: desde una terminal escribiendo
$ls -alh
con lo que verá también qué tamaño tienen; o si usa nautilus vaya a Editar−→ Preferencias−→Mostrar
archivos ocultos y de respaldo.
/etc/. Aquí se encuentran la gran mayoría de los ficheros de configuración del sistema, algunos de los cuales
son:
•
/etc/exports/. Lista de los directorios locales para ser compartidos utilizando NFS
•
/etc/fstab/. Contiene información sobre los distintos sistemas de ficheros y dónde están montados.
•
/etc/hosts/. Lista de nombres de máquina y direcciones IP.
•
/etc/passwd/. Contiene información de cada uno de los usuarios de la máquina.
•
/etc/shadow/. Lugar donde se almacenan las contraseñas encriptadas de los usuarios de la máquina.
•
/etc/resolv.conf/. Aquí se almacenan los nombres de los servidores DNS utilizados en el sistema.
•
/etc/X11. Directorio donde se almacena la configuración del sistema gráfico X instalado en el sistema.
•
/etc/X11/XF86Config-4. En este fichero se guarda la configuración esencial de su sistema gráfico:
teclado, ratón, monitor, tarjeta gráfica, resolución de pantalla, profundidad de color. Trataremos de este
fichero cuando entremos en la configuración de dispositivos. 5
•
/etc/http. Contiene subdrectorios y ficheros necesarios para configurar el servidor web Apache
•
/etc/network/. Contiene los ficheros de configuración de las tarjetas de red y de otros parámetros de la
red.
2.5. Ficheros de registro (logs)
Llamamos logs a los ficheros de registro. En ellos se guarda información sobre las distintas acciones que
realiza el sistema. Esto ficheros permiten al administrador hacer un seguimiento detallado de lo que está
ocurriendo en su sistema.Algunos de ellos son:
/var/logs/httpd. Mensajes procedentes del servidor web Apache. Contienen una exhaustiva información
sobre quién ha accedido, desde que IP, a qué páginas, cuanto tiempo,etc... La información que contienen es
tan compleja que se han creado programas tales como Webalizer para mostrarla de un modo más amigable.
Con este tipo de aplicaciones podría hacerse un seguimiento de las visitas a nuestro servidor y mostarlas en
gráficos, por ejemplo.
/var/logs/squid. mensajes procedentes del proxy squid. Existen diversos comandos para mostrar el contenido de estos ficheros de forma amigable. Algunos son:
•
#last. Muestra una lista de los usuarios que se han conectado al sistema indicando desde dónde se han
conectado y el tiempo de conexión.
•
#dmesg. Muestra los mensajes de arranque del sistema y diversos mensajes provenientes del kernel.
Con un sencillo ejemplo comprenderá la utilidad de los registros del sistema. Si usted ha dejado la
configuración por defecto de Guadalinex ingresará en el sistem a través de un login gráfico conocido
como gdm. Pues bien puede saber quién se resgistró en el sistema, cuánto tiempo estuvo registrado e
incluso quien intentó hacerlo y falló. Abra una terminal y escriba
29
Capítulo 2. El sistema de ficheros
#less /var/log/auth.log | grep gdm
6
•
#gnome-system-log. Si usted quiere una vista gráfica de diversas bitácoras del sistema ejecute este comando como root
Importante: Cuando se indiquen comandos para ser ejecutados en la consola utilizaremos el símbolo
# para indicar que se trata del administrador (root) y $ para indicar que la orden puede ser invocada
por un usuario cualquiera del sistema.
2.6. Ficheros especiales
En GNU/Linux además de los ficheros regulares que son aquellos que sirven para contener datos (tales
como un texto, una imagen, etc.) existen ficheros especiales. En lo que sigue daremos un breve repaso.
2.6.1. Enlaces
Un enlace no es más que una forma de vincular dos o más nombres de archivo con el mismo conjunto
de datos. Hay dos formas de hacer esto:
•
Enlaces duros: Asocian dos o más nombres de archivo con el mismo inodo. Los enlaces duros comparten el mismo bloque de datos en el disco duro al tiempo que se comportan como si fueran archivos
independientes. Esto tiene una desventaja: los enlaces duros no pueden hacerse entre ficheros de distintas
particiones, puesto que los números de inodo sólo son únicos en una partición dada.
•
Enlaces simbólicos: Un enlace simbólico es un fichero que apunta a otro fichero. Un enlace simbólico
contiene la ruta hacia otro archivo al que llamaríamos objetivo. Si borramos el archivo enlace no se borra
el archivo objetivo. Si borramos el archivo objetivo el enlace queda roto y se vuelve inútil. Los enlaces
simbólicos pueden hacerse entre ficheros de distintas particiones puesto que ocupan distintos inodos, es
decir, distintos bloques de datos en el disco duro.
Se podria añadir que existe una tercera clase de enlaces, los enlaces de espacio de usuario, que son
muy similares a los accesos directos de MS Windows7. Estos archivos contienen meta-datos que pueden
ser interpretados por un administrador de archivos gráficos tal como Nautilus. Sin embargo el sistema trata
estos ficheros simplemente como archivos regulares. Este tipo de ficheros suelen terminar con el sufijo
.desktop o .lnk
Por ejemplo observe en su escritorio uno de los iconos tal como el de Ayuda. En realidad tal acceso
directo es un fichero que se encuentra en /home/$usuario/Desktop/ (donde $usuario es su nombre de
usuario). Para ver su contenido escriba algo como esto:
$less /home/saorin/Desktop/ayuda.desktop[Desktop Entry]
Encoding=UTF-8
Version=1.0
Type=Application
Exec=firefox /usr/share/doc/guadalinex-browsers-inicio/inicio.html
TryExec=
Icon=/usr/share/icons/Nuvola/scalable/apps/gnome-help.svg
X-GNOME-DocPath=
30
Capítulo 2. El sistema de ficheros
Terminal=false
Name[es_ES]=Ayuda
GenericName[es_ES]=
Comment[es_ES]=Ayuda de Guadalinex
StartupNotify=true
Veamos ahora con algo más de detalle cómo crear enlace duros y simbólicos.
2.6.2. Enlaces duros
Como ya hemos explicado un enlace duro permite que un fichero puede aparecer en varios sitios a la vez,
pero hace referencia a los mismos datos. Podemos crear enlaces duros con el comando ln
$ln ejemplo1 ejemplo2
esto crea un nuevo enlace al fichero ejemplo1 con nombre ejemplo2 (por supuesto ejemplo1 debe existir
previamente).
Usado de esta forma el comando ln funciona como si se copiara el fichero, salvo que la nueva copia no
es un nuevo fichero sino una nueva entrada de directorio para el fichero que ya existía.
Como ya se dijo los enlaces duros están limitados a un mismo sistema de ficheros, esto es, no se puede hacer un enlace de un fichero a un directorio que se encuetre en un dispositivo físico distinto (disco,
partición, etc.). En este caso si borramos uno de los ficheros enlazados no se borrará el otro o los otros.
2.6.3. Enlaces simbólicos
No son realmente nuevas entrada de directorio para ficheros existentes, sino unos ficheros especiales que
indican que los accesos a los mismos debe redirigirse a otro fichero diferente. Su uso es más frecuente que
el de los enlaces duros. Los enlaces simbólicos también se crean con el comando ln, pero esta vez usando
la opción -s.
$ln -s ejemplo1 ejemplo2
Esto crearía un enlace simbólico llamado ejemplo2 apuntando a ejemplo1 (por supuesto el fichero
objetivo debe existir previamente)
El ejemplo propuesto es el más sencillo. Otro caso:
$ln -s /usr/local/OpenOffice/bin/ooowriter
/usr/bin/writer
El fichero ooowriter existe previamente y es el objetivo. Con este comando creamos un enlace simbólico llamado "writer" en el directorio /usr/bin que apunta al fichero ooowriter situado en el directorio
/usr/local/OpenOffice/bin/.
Para ver dónde apunta un enlace simbólico escriba
$ls -al-rw-r--r-1 saorin saorin
17 2006-01-24 11:49 ejemplo1
lrwxrwxrwx
1 saorin saorin
8 2006-01-24 11:49 ejemplo2 -> ejemplo1
31
Capítulo 2. El sistema de ficheros
Vemos como ejemplo2 es un enlace simbólico que apunta a ejemplo1
2.6.4. Ficheros de dispositivo
En GNU/Linux al igual que en UNIX, la mayoría de los dispositivos físicos están representados en el
sistema de ficheros por ficheros especiales de tipo dispositivo (device). Estos ficheros se agrupan dentro del
directorio /dev. Veamos un ejemplo:
$ ls -al /devlrwxrwxrwx
1 root root
crw-rw-rw1 root root
1,
7 2006-01-24
brw-rw---1 root disk
3,
0 2006-01-24
brw-rw---1 root disk
3,
1 2006-01-24
brw-rw---1 root disk
3,
2 2006-01-24
brw-rw---1 root disk
3,
3 2006-01-24
brw-rw---1 root cdrom
22,
0 2006-01-24
crw-rw---1 root root
226,
0 2006-01-24
8 2006-01-24 09:43 cdrom -> /dev/hdc
10:42 full
10:42 hda
10:42 hda1
10:42 hda2
10:42 hda3
10:42 hdc
09:44 i830
Vemos que hay dos tipos de dispositivos: tipo carácter (marcados con c) y tipo bloque (marcados con
b). Con los dispositivos tipo carácter la transferencia se realiza byte a byte mientras que con los de tipo
bloque, la transferencia se realiza por bloques completos de un tamaño determinado.
Cada dispositivo se caracteriza por dos números: el número mayor y el número menor. El número mayor
indica el tipo de dispositivo (disco, puerto serie, etc.) y el menor identifica un dispositivo concreto dentro
de un tipo. Existen ficheros de dispositivo de muchos tipos y generalmente no es necesario crear ficheros
nuevos. Gran cantidad de ellos representan hardware que no tiene por qué estar instalado.
Si se necesitan nuevos ficheros de dispositivo, el script /dev/MAKEDEV puede ejecutarse con los argumentos adecuados para crear los dispositivos o grupos de dispositivos que se necesiten. Para más información sobre tipos de dispositivos y su creación ver MAKEDEV(8).
Como puede verse en el ejemplo, el control a los dispositivos puede establecerse asignando los permisos adecuados. Los ficheros de dispositivo permiten acceder directamente al hardware que representan,
haciendo operaciones de lectura, escritura y control sobre los ficheros de dispositivo como si fueran ficheros
convencionales.
En realidad, los ficheros de dispositivo es una de la grandes ideas de UNIX. En el ejemplo de arriba es
de notar que el fichero /dev/cdrom es en realidad un enlace simbólico a /dev/hdc que es realmente el
fichero de dispositivo. Tal y como está ahora mismo sólo podría usar el cdrom de la máquina el usuario root
y todos aquellos usuarios que pertenezcan al grupo "cdrom". Más adelante cuando veamos los permisos
trataremos de esto.
A menudo cuando usted no puede acceder como usuario a algún dispositivo (por ejemplo el modem)
debe mirar si tiene permisos de lectura y/o escritura sobre ese dispositivo.
2.7. Administración de un sistema de ficheros
2.7.1. Montar y desmontar dispositivos
En general, en los sistemas UNIX es necesario montar los dispositivos extraibles antes de que puedan ser
32
Capítulo 2. El sistema de ficheros
usados por el sistema, y también es necesario desmontarlos antes de extraerlos de las unidades correspondientes. De esta forma, el sistema es informado de la presencia del medio y puede optimizar la transferencia
de datos con el mismo.
En muchos entornos gráficos (como GNOME o KDE) existen iconos que permiten un acceso directo a
los dispositivos, esto es, el dispositivo se monta automáticamente al pulsar en el icono y aparece una ventana
con el contenido de la unidad. En estos casos suele ser necesario desmontar el dispositivo antes de extraer el
medio, lo cual se realiza con la opción adecuada del menú desplegable del dispositivo (accesible a menudo
pulsando la tecla derecha del ratón sobre el icono).
Esta operación es especialmente importante en diskettes, ya que los CD ROMs no podrán ser extraidos
hasta que se desmonten, pero los diskettes pueden ser extraidos sin desmontar, lo cual puede tener consecuencias desagradables como pérdida de datos o incluso bloqueo de la unidad. En este caso, es necesario
volver a introducir el medio y hacer la operación de desmontar. En realidad, las operaciones de montado y
desmontado las llevan a cabo los comandos mount y umount, por ejemplo:
# mount /dev/hdc /cdrom
montaría el dispositivo de CD ROM situado en /dev/hdc en el directorio /cdrom. Antes del montado,
el directorio /cdrom debe estar creado. Tras el montado, el contenido del dispositivo montado aparece en
/cdrom como si se tratara de un directorio más del sistema.
De la misma forma de haría para un diskette:
# mount /dev/fd0 /floppy
y el contenido del diskette aparecerá en /floppy. De esta forma, se accede a un dispositivo montado como
si se tratara de un directorio más del sistema. Los directorios /cdrom y /floppy son creados por el proceso
de instalación precisamente para este propósito descrito.
En cualquier momento puede saberse qué dispositivos están montados en el sistema ejecutando el comando mount sin argumentos:
$ mount
/dev/hda2 on / type ext3 (rw,errors=remount-ro)
proc on /proc type proc (rw)
sysfs on /sys type sysfs (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
tmpfs on /dev/shm type tmpfs (rw)
usbfs on /proc/bus/usb type usbfs (rw)
none on /proc/bus/usb type usbdevfs (rw)
/dev/hda3 on /mnt/Windows9X1 type vfat (rw,nosuid,nodev,umask=000,user=saorin)
/dev/hdc on /cdrom type iso9660 (ro,noexec,nosuid,nodev,user=saorin)
Puede verse que /dev/hda2 (la segunda partición del primer disco IDE) es el sistema de ficheros
principal (/), y que la tercera partición de este mismo disco es de formato vfat y está montada en
/mnt/Windows9X1. También vemos que hay un CD ROM montado en /cdrom. Los dispositivos proc y
devpts son dispositivos virtuales pero que se comportan como si fueran dispositivos reales.
Aunque su descripción sale del ámbito de este apartado, diremos, por ejemplo, que /proc contiene
ficheros que permiten obtener información sobre el hardware del sistema y su configuración. El contenido
de estos ficheros es generado dinámicamente por el sistema cuando se leen. Es divertido pasearse por /proc
y curiosear el contenido de sus ficheros y directorios.
33
Capítulo 2. El sistema de ficheros
Linux reconoce muchos formatos posibles de discos, diskettes y CD ROM. En la mayoría de los casos
el sistema identifica automáticamente el formato del dispositivo, pero cuando esto no es posible, podemos
indicar el formato con la opción -t de mount, por ejemplo:
# mount -t vfat /dev/fd0 /floppy
montaría un diskette con formato MS DOS y soporte para nombres largos.
Si tiene una partición NTFS (habitual en sistemas WindowsXP) puede tratar de montarla con el comando:
#mount -t ntfs /dev/hda1
/mnt/WindowsXP1
(donde debe sustituir /dev/hda1 por la partición que contiene el sistema de ficheos NTFS y
/mnt/WindowsXP1 por el directorio que ha creado para montar la partición)
Una vez hecho esto podrá comprobar que únicamente tiene acceso de lectura.Así si ejecutamos
#cd /mnt/WindowsXP1
#ls -al
Veremos todos los ficheros. Pero si intentamos escribir en ella por ejemplo para crear el directorio test,
obtendremos un mensaje de error
#mkdir test
mkdir: no se puede crear el directorio «test»: Sistema de ficheros de
sólo lectura
Esto significa que tal partición se monta como sólo lectura.8 El comando mount permite hacer cosas
realmente curiosas. Con un ejemplo lo verá.
Imagine que quiere copiar un cd-rom de datos pero antes quiere asegurarse que se ha leido bien. Empezaremos por crear la imagen ISO del cd-rom a copiar
# dd if=/dev/hdc of=mi_imagen.iso
Aquí if significa input file, y of, output file. Esto creará en el directorio desde el que se ejecute la orden un
fichero llamado mi_imagen.iso con una imagen del contenido del cd-rom. Ahora escribimos
# mount -o loop mi_imagen.iso /cdrom
Si ahora nos vamos al directorio cdrom podremos ver su contenido exactamente del mismo modo que si
tuviéramos el disco en la lectora.9
Ahora podemos volcar la imagen a un cd virgen tecleando
# cdrecord -v -eject dev=/dev/hdc speed=24 imagen.iso
donde /dev/hdc hay que sustituirlo por el dispositivo donde se encuentre la grabadora y speed por la
velocidad.10
Para desmontar dispositivos se utiliza el comando umount cuya sintaxis general es
#umount [opciones] dir
Por ejemplo, para desmontar el cd-rom escribimos
34
Capítulo 2. El sistema de ficheros
#umount /cdrom
Si tenemos la unidad de cd-rom montada no podremos extraerla hasta que la desmontemos. Si queremos
desmontarla y expulsarla al mismo tiempo podemos escribir
#eject /cdrom
En el caso de los disquetes es fundamental desmontarlos antes de extraerlos pues podría perderse información.
Para desmontar un sistema de ficheros es necesario que no esté siendo utilizado por ningún proceso.
Por ejemplo si intentamos desmontar un cdrom pero al mismo tiempo estamos explorando su contenido
obtendremos un mensaje de error indicándonos que el dispositivo está ocupado.
A veces puede ocurrir que intentemos desmontar un dispositivo y no nos deje diciendo que está ocupado
y por más que miremos no acertamos a saber qué proceso lo está utilizando. Para saber qué procesos están
usando un dispositivo utilizamos la orden /sbin/fuser.
Por ejemplo si tenemos montada nuestra partición Windows en /mnt/Windows9x y no nos deja desmontarla podemos saber qué procesos la están usando utilizando la orden
#/sbin/fuser -a /mnt/Windows9x
Esto suele ser útil sobre todo cuando algún proceso que está usando el dispositivo se ha quedado "atascado"
y no hay manera de que "suelte" la unidad. En ese caso con fuser vemos cuál es y con la orden kill lo
matamos. Más adelante cuando se trate de la gestión de procesos veremos con detalle esta orden.
2.7.2. Fichero /etc/fstab
Para facilitar el uso de mount y para indicar al sistema qué dispositivos forman el sistema de ficheros,
existe el fichero /etc/fstab. En él se indican qué dispositivos han de montarse en qué lugar y con qué
opciones entre las que se incluye quién puede y quién no puede montarlos.
Un fichero /etc/fstab correctamente configurado nos permitirá por ejemplo montar el CD-ROM indicando simplemente el punto de montaje
$ mount /cdrom
o también nuestra partición ms-dos sin necesidad de indicar el dispositivo
$ mount /mnt/Windows9x
De esta forma, el usuario se puede olvidar de en qué dispositivo se encuentra el CD ROM, la partición
ms-dos, etc.
Por otra parte las operaciones de montado y desmontado de dispositivos en principio puede hacerlas
únicamente el root (administrador) a no ser que el fichero /etc/fstab/ indique que también les está
permitido a los usuarios.
Toda esta información está preconfigurada en /etc/fstab. Un ejemplo de fichero es el siguiente:
# /etc/fstab: static file system information.
#
# The following is an example. Please see fstab(5) for further details.
# Please refer to mount(1) for a complete description of mount options.
35
Capítulo 2. El sistema de ficheros
#
# Format:
# file system
mount point
type options
/dev/hda2 / ext3 defaults,errors=remount-ro 0 1
proc /proc proc defaults 0 0
none /sys
sysfs defaults 0 0
none /proc/bus/usb
usbdevfs
rw
0 0
dump
pass
/swapfile none swap sw 0 0
/dev/fd0 /floppy vfat defaults,users,sync,noauto,showexec,umask=022 0 0
/dev/cdrom /cdrom iso9660 defaults,ro,user,noexec,noauto 0 0
/tmp/image.iso /mnt/iso iso9660 defaults,users,noauto,noexec,nosuid,loop 0 0
/dev/hda2 /mnt/Linux1 auto noauto,user,exec 0 0
/dev/sda
/mnt/usb1
vfat
rw,users,sync,noauto
0
/dev/sda1
/mnt/usb2
vfat
rw,users,sync,noauto
0
/dev/sdb
/mnt/usb3
vfat
rw,users,sync,noauto
0
/dev/sdb1
/mnt/usb4
vfat
rw,users,sync,noauto
0
/dev/hda3 /mnt/Windows9X1 auto noauto,user,exec,umask=000 0 0
/dev/hda1 /mnt/WindowsXP1 auto noauto,user,exec,uid=1000,gid=1000 0 0
0
0
0
0
En este fichero, como en general ocurre con todos los ficheros de configuración, las líneas que empiezan con # son comentarios lo que significa que serán ignoradas por el sistema, su única misión es aclarar
conceptos a quien las lee.
Si leemos este fichero vemos que la primera línea sin comentarios nos dice que en /dev/hda2 (la
segunda partición del primer disco duro) se encuentra la partición principal (/) de Linux (root file system)
y que están montada con el sistema de ficheros ext3. La quinta línea nos indica que no hay una partición
swap en el sistema sino que se trata de un fichero de intercambio (swapfile)
El CD ROM y la disketera se montarán en /cdrom y /floppy respectivamente, pero no se montarán automáticamente al arrancar (opción noauto), aunque si podrán ser montados posteriormente por usuarios normales (opción user) En /dev/hda3 hay una partición cuyo tipo tratará de autodetectarlo el sistema (opción
auto) que los usuarios pueden montar y que se montará a petición de los usuarios en /mnt/Windows9X1.
En /dev/hda1 hay una partición que se montará en /mnt/WindowsXP1.
Hay además una línea a primera vista extraña, la que comienza por /tmp/image.iso Esta línea es la
utilizada por el comando isomount para montar las imágenes ISO cuando así se le solicita.
Ahora que ya entiende algo de este fichero vamos a explicar su estructura más pormenorizadamente. El
fichero fstab es de sólo lectura y sólo puede escribir en él el administrador del sistema (root). Cada sistema
de ficheros ocupa una línea y los campos de cada línea están separados por tabuladores o espacios en blanco.
El orden de las líneas es importante ya que los programas fsck, mount, umount actúan secuencialmente sobre
ellas.
device. Es el primer campo de la cada línea y especifica el dispositivo a montar. Por ejemplo /dev/hda3
directorio. Es el segundo campo e indica la carpeta en que se montará el dispositivo y por tanto en la que
podremos acceder a su contenido. Por ejemplo /mnt/Windows9X1
tipo. Es el tercer campo e indica el tipo de sistema de ficheros. Si el tipo es "auto" entonces el sistema tratará
de detectar automáticamente el tipo. Si es "ignore" entonces no se montará el sistema de ficheros. Esto es
útil para indicarnos que hay una partición existente pero que no se está usando.
opciones. Es el cuarto campo y especifica las opciones con que se montará el sistema de ficheros.Algunas
de las posibles opciones son
36
Capítulo 2. El sistema de ficheros
•
auto. El sistema de ficheros se montará automáticamente al arrancar el sistema
•
noauto. El sistema de ficheros no se montará automáticamente al arrancar el sistema
•
user. Se permite a los usuarios montar el sistema de ficheros
•
nouser. No se permite a los usuarios montar el sistema de ficheros
•
ro. La partición se montará como sólo lectura (read only)
•
rw. La partición se montará como lectura y escritura
•
exec. Se pueden ejecutar los binarios contenidos en la partición
•
noexec. No se pueden ejecutar los binarios contenidos en la partición
•
uid y umask. Afectan a los permisos con que se monta el sistema de ficheros
•
async. los accesos de Entrada/Salida al sistema de ficheros debe hacerse asíncronamente
•
defaults. Es una abreviatura y equivale a rw,exec,nouser,noauto,async
Frecuencia. Se indica al sistema con qué frecuencia deben hacerse las copias de seguridad del sistema por
el comando dump. Si este campo no se especifica o está a 0 se indica a dump que el sistema de ficheros no
necesita ser salvado.
Secuencia. Es el último campo e indica al comando fsck en qué secuencia debe hacerse el chequeo del
sistema de ficheros en el momento del arranque. El sistema de ficheros raíz debe tener un 1 indicado que es
el primero en ser chequeado, los demás sistemas podrían tener un 2. Si este campo no se especifica o está a
0 se indica a fsck que no los chequee.
2.7.3. Ver el estado de los sistemas de ficheros en modo
gráfico
A estas alturas usted se estará pregutando ¿y no hay alguna aplicación que muestre cuánto espacio tengo
ocupado en mi disco duro en forma de barritas o tartitas de color azul o fucsia?
Pues sí las hay pero no hacen mucha falta. Para ver el uso que se está haciendo de un sistema de ficheros
montado podemos utilizar el comando df cuya sintaxis general es
df [opciones] [sistema_de_ficheros]
Si se ejecuta sin indicar ningún sistema de ficheros en particular mostrará la información de todos los
sistemas montados en ese momento. Con la opción H le indicamos que nos muestre esta información en un
formato legible por los humanos.
$ df -H
S.ficheros
/dev/hda2
tmpfs
/dev/hda3
/dev/hda1
Tamaño
28G
256M
5,3G
28G
Usado
11G
0
3,1G
5,1G
Disp Uso% Montado en
16G 40% /
256M
0% /dev/shm
2,2G 59% /mnt/Windows9X1
23G 19% /mnt/WindowsXP1
No le vemos demasiado convencido. Usted quiere su aplicación gráfica con tartas. Pues bien instale por
ejemplo KDE Disk Free. Para ello
#apt-get install kdf
Una vez instalada y si no la encuentra entre los menues abra una terminal y escriba
37
Capítulo 2. El sistema de ficheros
$ kdf
KDE Disk Free
Esta aplicación le informa de modo gráfico del espacio ocupado, también le permitirá entre otras cosas
montar y desmontar particiones sin tener que escribir comandos.
Si lo desea también puede añadir un pequeño aplique para montar y desmontar fácilmente
particiones. Haga clic con el botón derecho en cualquier lugar vacío del panel y seleccione Añadir al
panel−→Utilidad−→Monitor de discos. Añada tantos apliques de este tipo como unidades quiera
montar o desmontar.
2.7.4. Crear nuevas particiones
Para crear nuevas particiones es necesario o bien disponer de un nuevo disco duro o de espacio libre en
el actual. Si se dispone de este espacio el primer paso consiste en crear una o mas particiones. Para crear
particiones podemos usar, entre otros, los programas fdisk o cfdisk. Con cfdisk procederíamos así:
# cfdisk /dev/hda
Tras la ejecución de cfdisk, el programa muestra una pantalla como la siguiente:
38
Capítulo 2. El sistema de ficheros
cfdisk
Antes de hacer las particiones hay que tener en cuenta varias cosas: los cambios no se hacen efectivos
hasta que se escribe la tabla de particiones (menú [Write]); si el sistema está funcionando hay que tener en
cuenta que no se deben modificar particiones que estén montadas.
Para movernos por la pantalla del programa utilizamos las teclas del cursor. Nos situamos en aquella
parte del disco duro que esté libre y seleccionamos la opción [New]. Decidimos si la partición será primaria
o logica. Se nos ofrecerá ahora la posibilidad de decidir su tamaño en MB. La partición se creará por defecto
como Linux (tipo 83). Si queremos cambiar el tipo vamos a la opción [Type] y escribimos la clave (números
o letras) que significan cada tipo de partición.
Tipo de partición en cfdisk
Una vez nos hemos asegurado de que efectivamente queremos hacer los cambios seleccionamos la opción
[Write]
Una vez escrita la tabla de particiones, se ha asignado un tipo de sistema de fichero a cada una de las
particiones establecidas en dicha tabla pero no se les ha dado el formato adecuado.
2.7.5. Crear un sistema de ficheros
Una vez creadas las nuevas particiones es necesario formatearlas. Esto crea un sistema de ficheros en la
particion.
Los sistemas de ficheros se crean con el comando mkfs (Make File System). La sintaxis del comando es:
mkfs [-t fstype] filesys
Donde fstype es el tipo de sistema de ficheros a crear. Si no se pasa este argumento mkfs tratará de
deducirlo mirando en /etc/fstab. Si no se encuentra aquí la información para hacerlo entonces se creará
como ext2 por defecto.
filesys es la partición a la que queremos dar formato (/dev/hda1; /dev/sda1, etc.) o también podría
pasársele como un punto de montaje (/tmp; /mnt/usb1)
Por ejemplo
#mkfs -t ext2 /dev/sda1
39
Capítulo 2. El sistema de ficheros
crea un sistema de ficheros ext2 en la primer partición del disco sda.
Importante: Podría practicar tratando de crear un sistema de ficheros ext2 en un disquete o en un
pendrive. Recuerde que el disquete es /dev/fd0. Para saber dónde está el pendrive móntelo vea en
qué directorio está montado y examine el fichero /etc/fstab; o también una vez puesto en el puerto
usb teclee el comando dmesg y lea las últimas líneas.
2.7.6. Actualizar particiones ext2 a ext3
Como ext3 es sólo una actualización a ext2, los sistemas de ficheros ext2 pueden convertirse de forma sencilla a ext3 sin tener que formatear particiones ni copiar discos. Supongamos un sistema con las
siguientes particiones de Linux, según figura en /etc/fstab:
/dev/hdb1 / ext2 defaults,errors=remount-ro 0 1
/dev/hdb3 /home ext2 defaults,errors=remount-ro 0 1
Para convertirlas a ext3, añadimos primero un registro de transacciones a los sistemas de ficheros, lo que
también se conoce como journaling. No hace falta desmontar los sistemas de ficheros.
# tune2fs -j /dev/hdb1
# tune2fs -j /dev/hdb3
Después modificamos el fichero /etc/fstab para reflejar el cambio en el sistema de ficheros:
/dev/hdb1 / ext3 defaults,errors=remount-ro 0 1
/dev/hdb3 /home ext3 defaults,errors=remount-ro 0 1
Listo. La próxima vez que arranquemos el sistema, los sistemas de ficheros funcionarán como ext3.
2.7.7. Crear una partición swap
Las particiones swap son creadas normalmente durante el proceso de instalación. Si en algún momento
necesitáramos disponer de mayor espacio de swap hay dos alternativas: crear una nueva partición de swap
en dico duro libre o, si no se dispone de espacio libre en el disco duro, crear un fichero de intercambio
(swapfile); ya sabemos que éste último es el método que utiliza la instalación por defecto de Guadalinex.
En el primer caso, el proceso comienza por crear una nueva particion con el comando cfdisk tal como
se explicó. Lo unico que hay que tener en cuenta es que el tipo de la nueva particion debe ser Linux swap.
Para formatear esta particion se utiliza el siguiente comando:
# mkswap /dev/hdxx
Una vez creada la activamos:
# swapon /dev/hdxx
El comando swapon con la opcion -s da informacion sobre las particiones swap activas.
En el segundo caso, la ventaja está en que no es necesario disponer de espacio libre en el disco duro,
sino de espacio libre en una particion ya activa para crear el fichero. El inconveniente es que el acceso a un
fichero de intercambio es más lento que a una partición. El proceso de creación y activación de un fichero
swap es como sigue:
40
Capítulo 2. El sistema de ficheros
Se crea un fichero sin agujeros del tamaño que deseemos:
# dd if=/dev/zero of=/swapfile bs=1024 count=524288
Con esta orden se crea en la raíz del sistema un fichero con el nombre swapfile de (524288 bloques x
1024 bytes por bloque=) 512MB
A continuación se formatea el fichero swap:
# mkswap /swapfile 524288
Ahora se activa el fichero swap:
# sync
# swapon -v /swapfile
Finalmente lo incluimos en el fichero /etc/fstab para que sea montado en el proceso de arranque:
/swapfile none swap sw 0 0
Todo esto suponiendo que el fichero swapfile se creó directamente en la raíz del sistema de ficheros,
que por otra parte es lo más habitual.
Si hizo la instalación de Guadalinex por defecto seguramente se creó un fichero de intercambio en la raíz
del sistema con el nombre swapfile. Para ver su tamaño escriba
$ls -alh /swapfile
-rw-r--r-- 1 root root 256M 2006-01-08 17:24 /swapfile
En este caso el fichero de intercambio es de 256MB
2.7.8. Chequeo y recuperación de un sistema de ficheros
A diferencia del sistema Windows/DOS, en GNU/Linux no existe una herramienta de defragmentación
del sistema de ficheros, simplemente porque no es necesario. Debido a las caracteristicas que posee el
control del sistema de ficheros extended 2 no suele ser necesario realizar este proceso.
Sin embargo existen herramientas para chequear y, si es necesario, reparar un sistema de ficheros deñado
tras un apagado incorrecto de la máquina.
El comando fsck nos permite chequear y opcionalmente reparar un sistema de ficheros dañado.
Su funcionamiento es el siguiente. Cuando un sistema de ficheros se monta se marca como "sucio",
porque el sistema en su trabajo normal mantendrá datos en memoria en vez de bajarlos directamente al
disco, con el fin de mejorar sus prestaciones.11 Si el sistema se apaga correctamente una de sus tareas es
pasar todo lo que tenga en memoria y corresponda a los discos a su lugar correspondiente. Tras hacer esto
el sistema de ficheros se marca como "limpio".
Si por cualquier razón la máquina se apagase repentinamente, por ejemplo porque le han cortado la luz
por impago del recibo, entonces el sistema de ficheros quedará marcado como "sucio" lo que indica que debe
comprobarse al arrancar la máquina. En general fsck se ejecuta automáticamente cada vez que el sistema
arranca y se detecta que en la última sesión no se apagó correctamente la máquina. También se ejecuta
automáticamente cuando tras un determinado número de montajes (habitualmente cada 32 montajes) no ha
sido comprobado.
Para chequear un sistema de ficheros éste debe estar desmontado La sintaxis básica es:
fsck [-t fstype] [-fs-specific-options] device
41
Capítulo 2. El sistema de ficheros
por ejemplo
# /sbin/fsck /dev/hda2
Verificaría el sistema de ficheros del dispositivo /dev/hda2
Si usamos fsck de este modo cada vez que se necesite cambiar algo en el sistema de ficheros se nos pedirá
confirmación. Si queremos que el sistema de ficheros se repare automáticamente sin pedir confirmación
# /sbin/fsck -y /dev/hda2
También podemos utilizar
# /sbin/fsck -A
De este modo fsck recorrerá todos los sistemas de ficheros en /etc/fstab y los irá comprobando
siguiendo el orden indicado por el parámetro fsckorder según se comentó más arriba.
Es importante tener en cuenta que el proceso de comprobación sólo debe llevarse a cabo con la particion
no montada o bien montada de solo lectura lo cual plantea un problema con la particion raíz del sistema.
No obstante, lo habitual es que si la particón raíz tiene errores se detecte en el proceso de arranque y se
intente correguir automáticamente. Si no es posible la correccion automática el sistema se queda en modo
single user y solo lectura, pidiendo al administrador del sistema que, antes de arrancar debe entrar y ejecutar
manualmente el comando de reparación del sistema de ficheros.
Lo habitual entonces es responder sí a todas las preguntas que piden confirmación para reparar el sistema
de ficheros. Si queremos automatizar la ejecución de fsck en el arranque de modo que responda sí a todas
las preguntas que se planteen debemos modificar el fichero /etc/default/rcS añadiendo o modificando
hasta tener una línea como la siguiente:
FSCKFIX=yes
2.7.9. Manipular particiones con herramientas gráficas.
Gparted
Gparted (Gnome Partition Editor) es una herramienta gráfica que le permitirá manipular varios tipos
de sistemas de ficheros distintos. En la dirección http://gparted.sourceforge.net/features.php puede ver los
tipos de ficheros soportados y las operaciones que pueden realizarse sobre ellos.
Gparted
Puesto que la mayor parte de las operaciones sobre un sistema de ficheros han de hacerse cuando éste está
desmontado lo ideal sería poder arrancar el sistema con un cdrom que contuviera el programa gparted. Así
aunque gparted puede instalarse como programa tiene también una version en live-cd que puede descargar
de http://prdownloads.sourceforge.net/gparted/gparted-livecd-0.1.iso?download
42
Capítulo 2. El sistema de ficheros
Una vez descargado el fichero gparted-livecd-0.1.iso no tiene más que pasarlo a cd-rom con su
programa de grabación favorito.
2.8. Gestión de usuarios y permisos
2.8.1. Introducción
GNU/Linux es un sistema operativo multiusuario y multitarea. Esto significa que puede ser utilizado por
varios usuarios simultáneamente, cada uno con sus correspondientes tareas.
En todo sistema GNU/Linux, incluso cuando habitualmente lo utilice una única persona, deberían existir
al menos dos cuentas: la del administrador (root) y la de un usuario normal.
La cuenta de root debe reservarse exclusivamente para las tareas de administración, mientras que para
el trabajo cotidiano debe emplearse una cuenta de usuario normal.
Importante: Debería abandonar, si los tiene, viejos hábitos y no registrarse en el sistema como root
nada más que cuando sea absolutamente imprescindible.
La manera que tiene el sistema de identificar a los distintos usuarios es mediante la asignación de cuentas
de usuario. Cada usuario es identificado por un nombre de usuario que es único en el sistema. Cada usuario
puede pertener a uno o varios grupos. La identidad del usuario así como los grupos a los que pertenecen
determinan los derechos de acceso a los ficheros y otros recursos del sistema.
2.8.2. Permisos
En Unix cada fichero o directorio tiene un propietario identificado por su UID (User ID o Identificador de
usuario), y cada usuario pertenece la menos a un grupo12 identificado por su GID(Group ID o Identificador
de grupo). Basado en esta estructura el sistema crea permisos de acceso a los distintos objetos a tres niveles
•
Permisos para el propietario del objeto
•
Permisos para el grupo
•
Permisos para el resto de los usuarios del sistema
A su vez los permisos básicos son tres:
•
r. Permiso de lectura
•
w. Permiso de escritura
•
x. Permiso de ejecución
Importante: Las letras que simbolizan los permisos tienen una función mnemotécnica, en realidad el
sistema las ve como valores binarios, r (del inglés read, leer), w (del inglés write, escribir), x (del inglés
execution, ejecutar).
Para ver los permisos de un objeto en particular
43
Capítulo 2. El sistema de ficheros
$ls -l educacionred.txt
-rwxr-xr-- 1 saorin users 21983 2005-12-07 01:28 educacionred.txt
Vamos a analizar la información que nos muestra el comando ls empezando por la izquierda
•
-. (El guión) nos indica que el objeto es un fichero. Si fuera un directorio en lugar del guión habría una
d, y si fuera un enlace simbólico una l, o una b si fuera un dispositivo de bloques, o una c si fuera un
dispositivo de carácteres (sobre estos dos últimos tipos de ficheros véase más arriba). Los caracteres que
viene a continuación hay que leerlos de tres en tres.
•
rwx. Nos indica que el propietario del fichero, en este caso saorin, tiene permisos de lectura, escritura
y ejecución.13
•
r-x. Indica que el grupo, en este caso users, tiene permisos de lectura y ejecución pero no de escritura.
•
r--. indica que el resto de usuarios registrados del sistema tiene permisos de lectura pero no de ejecución,
ni escritura.
Los permisos rwx cambian un tanto de sentido cuando se aplican a un directorio, en este caso
•
r. Permite leer el contenido del directorio, es decir los números de inodo y los nombres de los ficheros
(podríamos ejecutar ls, pero no ls -l)
•
w. Permite escribir en el directorio, es decir, crear y suprimir otros ficheros y subdirectorios.
•
x. Permite recorrer el directorio y acceder a la información de los objetos que contiene. Podría hacer un
cd pero no un ls. Esto en la practica significa que si usted sabe por otros medios que por ejemplo
dentro del directorio /home/ existe un subdirectorio llamado compartido podría ejecutar cd
/home/compartido, pero no podría ejecutar ls /home a fin de ver qué contiene el directorio.
El propietario y el grupo de un fichero lo podemos modificar con el comando chown (change owner,
cambiar propietario) siempre y cuando o bien seamos root o bien seamos el propietario del fichero. Con el
comando chgrp (change group, cambiar grupo) únicamente podríamos cambiar el grupo del fichero.
La sintaxis de estos comandos es
chown usuario fichero
Si queremos cambiar únicamente el usuario
chown usuario:grupo fichero
Si queremos cambiar el usuario y el grupo
Si además de querer cambiar el usuario y el grupo de un directorio queremos cambiarlo también para
todos los objetos que contenga
chown -R usuario:grupo directorio
Si únicamente queremos cambiar el grupo
chgrp grupo fichero
Los permisos sobre un fichero o directorio los podemos cambiar con el comando chmod (change mode,
cambiar modo). Su sintaxis básica es
chmod permisos fichero
Para pasarle a chmod los permisos podemos utilizar dos tipos de notación: octal o simbólica.
44
Capítulo 2. El sistema de ficheros
La sintaxis básica para pasar los permisos en notación simbólica (también conocida como nemónica) es
ésta:
chmod [usuario][operador][permisos]fichero
En lugar de usuario podemos poner
u. propietario (user)
g. grupo (group)
o. resto de usuarios (other)
a. todos (all), es decir usuario, grupo y otros a la vez
En lugar de operador podemos poner
+. añade permisos a los ya existentes
-. quita permisos de los que ya había
=. hace que los permisos sean los únicos que el fichero va a tener borrando los que tuviese anteriormente
fuesen los que fuesen.
Los permisos pueden ser
r. Lectura
w. Escritura
x. Ejecución
s. Set uid o gid
t. Sticky bit (bit pegajoso)
Los tres primeros ya le suenan pero los dos últimos seguramente le son desconocidos. Un poco más
abajo trataremos de estos dos permisos un tanto especiales.
Algunos ejemplos
#chmod o=r fichero
Fija los permisos para el resto de usuarios (los que no son ni el propietario ni el grupo) a sólo lectura.
#chmod u+x fichero
Así añadimos el permiso de ejecución para el propietario del fichero
#chmod ug+x fichero
Añadimos el permiso de ejecución para el propietario y grupo del fichero
#chmod a=rwx fichero
Damos permiso de lectura, escritura y ejecución tanto al propietario, como al grupo como al resto de
usuarios. Este comando también puede usarse recursivamente para cambiar los permisos de un directorio y
todo lo que en él se contiene
#chmod -R a=rwx /home/pepe
Fija los permisos del directorio pepe y todo lo que se contiene en él a lectura, escritura y ejecución para
el usuario,grupo y resto del mundo.
45
Capítulo 2. El sistema de ficheros
2.8.2.1. Notación octal del comando chmod
Para pasar al comando chmod los permisos en notación octal hay que saber que el primer dígito corresponde a los permisos para el propietario, el segundo para el grupo y el tercero para el resto del mundo.
Cada dígito octal corresponde con tres dígitos binarios: el primero para la lectura, el segundo para la
escritura y el tercero para la ejecución. Si el dígito está a 1 entonces el permiso está habilitado, si está a 0
entonces el permiso está deshabilitado.
permisos
permisos
permisos
permisos
permisos
permisos
permisos
permisos
----x
-w-wx
r-r-x
rwrwx
en
en
en
en
en
en
en
en
binario
binario
binario
binario
binario
binario
binario
binario
000
001
010
011
100
101
110
111
en
en
en
en
en
en
en
en
octal
octal
octal
octal
octal
octal
octal
octal
0
1
2
3
4
5
6
7
Importante: Esta notación que parece un galimatías es en realidad algo bastante sencillo. Permítanos
que se lo expliquemos sin mucho rigor. Lo primero es saber qué permisos queremos asignar. Supongamos que queremos asignar
r-x
como sabemos que en binario cuando un permiso está habilitado ponemos un 1 y cuando no un 0,
pasar estos permisos a binario es fácil, sería
101
Ahora pasamos binario a octal. Empezamos por la derecha 20=1; 21=2; 22=4.
Bien ahora vamos sumando o no según haya un cero o un uno. Así como el primer dígito a la derecha
es uno sumamos 1; seguimos por la derecha, ahora tendríamos que sumar 2, pero como el dígito es
cero no sumamos nada; seguimos por la derecha, ahora tendríamos que sumar 4, y como el digito está
a 1, entonces sí lo sumamos. Así este 4 más el 1 que teníamos de antes hacen 5. Luego el permiso
r-x equivale a 5 en octal.
De este modo para asignarles los permisos rwxr-xr-- al fichero fichero.txt haríamos
#chmod 754 fichero.txt
donde 7 corresponde a rwx, 5 a r-x, y 4 a r-Existe un modo más fácil de asignar permisos y es utilizando un administrador de ficheros gráfico tal
como Nautilus.
Importante: No obstante si usted planea introducirse de verdad en la administración de sistemas
GNU/Linux para trabajar con servidores de red por ejemplo, debe tomarse en serio este capítulo sobre
permisos.
Con Nautilus podemos cambiar fácilmente los permisos de un fichero o directorio así como el propietario
y el grupo. Para ello pulse sobre el fichero o directorio cuyos permisos quiere cambiar a fin de seleccionarlo,
luego haga clic con el botón derecho del ratón y en el menú emergente selecciones Propiedades. Aparecerá
46
Capítulo 2. El sistema de ficheros
una nueva ventana, vaya a la pestaña Permisos, marque ahora las casillas correspondientes a los permisos
que desea cambiar o asignar.
Nautilus y los permisos
Como puede ver por la imagen Nautilus proporciona una buena cantidad de información acerca de los
permisos que tiene un fichero, además de mostrar la vista textual (-rwxrwxrwx) y la vista numérica en octal
de que venimos hablando (777). Nos aparecen también tres casillas para permisos un tanto inquietantes:
•
Establecer el ID del usuario
•
Establecer el ID del grupo
•
Persistente
¿Qué son estos permisos? Ya hemos dicho algo más arriba, seamos ahora más explícitos. Comencemos
por el más fácil. Sticky bit (Bit pegajoso, o bit persistente, o persistente sin más).
El sticky bit tiene un sentido diferente según se aplique a un fichero o a un directorio. Le dice al sistema
que el fichero que lo tiene activo tiene tendencia a ser ejecutado frecuentemente y debería ser retenido en el
área de swap aun cuando no se esté ejecutanto en ese momento.
Esto consume memoria swap pero reduce notablemente el tiempo de ejecución. Si un directorio tiene
activado este bit entonces los usuarios no podrán borrar ficheros en él a no ser que los permisos para esos
ficheros se lo permitan. Este bit activo nos lo muestra el comando ls -l con una t en lugar que correspondería
a los permisos de ejecución para el resto de usuarios del sistema. Este permiso puede ser útil aplicado a un
directorio en el que queremos que todos los usuarios puedan escribir y leer pero no puedan modificar o
borrar nada más que los ficheros que cada uno ha creado y no los de los otros. El sticky bit corresponde al
valor octal 1000 así que si queremos activarlo la notación octal sería
#chmod 1000 nombre_objeto
Esto añadiría el bit persistente a nombre_objeto pero eliminaría los demás permisos. Si queremos
añadirlo sin eliminar los permisos que hubiese de antes y suponiendo por ejemplo que nombre_objeto
tuviera permisos 754 pondríamos
#chmod 1754
47
Capítulo 2. El sistema de ficheros
nombre_objeto
SUID. (Establecer el ID de usuario). El SUID le dice al kernel que el usuario que ejecute el fichero que
tiene ese bit activo, adquiera durante la ejecución la identidad del propietario del fichero. Este bit activo nos
lo muestra la salida del comando ls -l con una s en el lugar que correspondería al permiso de ejecución para
el propietario. Su representación en octal es 4000.
¿Para qué sirve? Pongamos un ejemplo. Es deseable que cualquier usuario del sistema pueda cambiar
su contraseña sin tener que recurrir al root (administrador). Ahora bien cuando se cambia la contraseña las
modificaciones se guardan en un par de ficheros /etc/password y /etc/shadow. Pero estos ficheros son
propiedad del root y sólo él puede escribir en ellos.
¿Qué hacemos? Una solución sería permitir que todo el mundo pueda escribir en estos ficheros. La
solución es malísima porque de este modo no sólo cada usuario podría cambiar su propia contraseña
sino también la de cualquier otro usuario. La solución pasa por activar el bit suid al fichero ejecutable
/usr/bin/passwd que es propiedad del root.
Este programa sirve para cambiar las contraseñas escribiéndolas en /etc/password. De este modo
cuando un usuario normal ejecuta /usr/bin/passwd, durante el tiempo que dura la ejecución del programa, adquiere la personalidad del root y por tanto puede escribir en los ficheros ya mencionados.
Podemos comprobar como /usr/bin/passwd tiene activado el bit suid
#ls -l /usr/bin/passwd
-rwsr-xr-x 1 root root 26616 2004-09-08 07:13 /usr/bin/passwd
SGID. (Establecer el ID del grupo). Tiene un significado parecido, pero referido al grupo de usuarios propietario del fichero o directorio. Este bit activo nos lo muestra la salida del comando ls -l con una s en el lugar
que correspondería al permiso de ejecución para el grupo. Su representación octal es 2000
2.9. Usuarios y grupos
2.9.1. Gestión en modo texto
GNU/Linux proporciona diversas herramientas para la gestión de usuarios
•
adduser. Para añadir usuarios al sistema
•
passwd. Para asignar o cambiar la contraseña de un usuario
•
deluser. Para quitar usuarios del sistema
Importante: En realidad los comandos originales para añadir y quitar usuarios del sistema son useradd y userdel, adduser y deluser son programas diseñados para proporcionar una interfaz más amigable.
Para añadir un usuario al sistema escriba como root:
#adduser nombre_de_usuario
Por ejemplo para añadir el usuario cuyo nombre de usuario es luis escriba
48
Capítulo 2. El sistema de ficheros
#adduser luis
Añadiendo usuario luis...
Adding new group ‘luis’ (1003).
Adding new user ‘luis’ (1003) with group ‘luis’.
Creando el directorio home /home/luis.
Copiando archivos desde /etc/skel
Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully
Cambiando la información de usuario para luis
Introduzca el nuevo valor, o presione ENTER para el predeterminado
Nombre completo []:
Número de habitación []:
Teléfono del trabajo []:
Teléfono de casa []:
Otro []:
¿Es correcta la información? [y/N] y
Añadiendo al usuario luis al grupo audio...
Hecho.
Añadiendo al usuario luis al grupo dialout...
Hecho.
Añadiendo al usuario luis al grupo dip...
Hecho.
Añadiendo al usuario luis al grupo disk...
Hecho.
Añadiendo al usuario luis al grupo floppy...
Hecho.
Añadiendo al usuario luis al grupo cdrom...
Hecho.
Añadiendo al usuario luis al grupo fax...
Hecho.
Añadiendo al usuario luis al grupo games...
Hecho.
Añadiendo al usuario luis al grupo lp...
Hecho.
Añadiendo al usuario luis al grupo lpadmin...
Hecho.
Añadiendo al usuario luis al grupo man...
Hecho.
Añadiendo al usuario luis al grupo postgres...
Hecho.
Añadiendo al usuario luis al grupo scanner...
Hecho.
Añadiendo al usuario luis al grupo ssh...
Hecho.
Añadiendo al usuario luis al grupo users...
Hecho.
Añadiendo al usuario luis al grupo video...
Hecho.
La salida del comando es suficientemente autoexplicativa. No obstante, veamos que ha hecho el comando.
En primer lugar se ha creado un grupo de nombre luis. Después se ha creado el usuario luis y se le ha
añadido al grupo luis. Recuerde que todo usuario debe pertenecer al menos a un grupo. El comando crea un
grupo con el mismo nombre que el del usuario y añade a éste último al grupo.
49
Capítulo 2. El sistema de ficheros
Luego se crea el directorio de trabajo del usuario /home/luis y se copian en él todos los ficheros y
directorios contenidos en el directoro /etc/skel (skel viene de esqueleto o estructura). Después se nos
pide una contraseña para el usuario que habrá que introducir dos veces. La contraseña no tiene eco lo que
significa que mientras se teclea no se verá ningún carácter en pantalla.
Más adelante nos pide algunos datos cuya consignación es optativa, si quiere dejarlos en blanco simplemente pulse Enter. Finalmente se añade el usuario a todos los grupos que le permitirán usar los diferentes
dispositivos del sistema:cdrom, modem, tarjeta de sonido, etc.
Finalmente todos estos datos se escriben el los ficheros /etc/password, /etc/shadow y
/etc/group.
El comportamiento del comando adduser en Guadalinex 2004, al menos en su primera versión, presenta algunas peculiariedades. En primer lugar el directorio de trabajo del usuario, /home/luis en nuestro
caso, se crea con permisos 755 lo que significa que cualquier usuario del sistema puede leer los ficheros
contenidos en él. Si la confidencialidad es una de sus prioridades tal cosa no es deseable. Afortunadamente
puede cambiarse este comportamiento por defecto editando el fichero /etc/adduser.conf y cambiando
la línea DIR_MODE=0755 por esta otra DIR_MODE=700 De este modo negamos cualquier permiso al resto
de usuarios del sistema.
Importante: En el proceso de instalación de Guadalinex se le pide que cree un usuario normal del
sistema. El home de este usuario sí que se crea con permisos 700. Además no se crea el grupo con el
mismo nombre que el del usuario sino que el usuario es añadido al grupo users. Seguramente esto se
debe a que el proceso de instalación de Guadalinex utiliza el comando original useradd. Sin embargo
recomendamos que para añadir usuarios después de la instalación utilice adduser, sobre todo por
facilidad.
Cualquier usuario puede cambiar su contraseña en cualquier momento. Para ello basta con que escriba:
$passwd
También el root puede cambiar la contraseña de cualquier usuario:
#passwd luis
Para eliminar un usuario del sistema:
#deluser luis
Ahora bien esto eliminará al usuario pero no el directorio de trabajo del usuario (/home/luis para
seguir con el ejemplo). Si quiere que también se elimine la carpeta del usuario:
#deluser --remove-home luis
Si lo que desea es eliminar cualquier objeto que le pertenezca esté o no dentro del home de usuario
#deluser --remove-all-files
luis
2.9.2. Gestión en modo gráfico
Guadalinex cuenta con una herramienta gráfica que le permitirá gestionar sus usuarios y grupos. Para
abrirla vaya a Aplicaciones−→Configuración−→Sistema−→Usuarios y grupos. Se le pedirá la contraseña de root.
50
Capítulo 2. El sistema de ficheros
Gestión gráfica de usuarios
Para añadir un nuevo usuario pulse el botón Añadir usuario. En la pestaña Cuenta rellene los datos que
se le piden.
Datos del nuevo usuario
Finalmente vaya a la pestaña Otros grupos y añada el usuario a los grupos que desee. Para que el usuario
pueda usar los diferentes dispositivos y recursos del sistema debería añadirlo al menos a los grupos: audio,
cdrom, dialout, dip, disk, fax, floppy, games, lp, lpadmin, man, postgres, scanner, ssh, users, video.
51
Capítulo 2. El sistema de ficheros
2.9.3. Crear cuotas de disco para los usuarios
El sistema de cuotas provee un mecanismo para el control y uso del espacio de disco duro disponible en
un sistema de ficheros. Se pueden establecer límites en la cantidad de espacio y el número de ficheros de
que puede disponer un usuario o grupo. Vamos a ver únicamente como se establecen límites en el uso de
disco duro para los usuarios, dejando para otro momento el tema de cómo hacerlo para los grupos.
El procedimiento que vamos a seguir para activar las cuotas de disco para los usuarios del sistema es el
siguiente: primero, seleccionaremos el sistema de ficheros en el que se van a controlar las cuotas de disco.
Segundo, habilitaremos las cuotas en ese sistema de ficheros. A continuación especificaremos cuotas para un
usuario que nos servirá de plantilla para establecer cuotas para el resto de usuarios del sistema. Finalmente
habilitaremos un mecanismo de tal modo que todos los usuarios nuevos que se añadan al sistema tengan
automáticamente establecidas la cuota de disco que pueden usar.
Previamente debemos instalar el paquete quota que contiene todas las herramientas necesarias para
implementar el sistema de cuotas. Adicionalmente podría instalarse también el paquete quotatools.
#apt-get install quota
Paso primero: Elección del sistema de ficheros sobre el que se aplican las cuotas
Lo normal es que sólo el sistema donde están los directorios de trabajo de los usuarios tengan cuotas,
aunque es recomendable que tenga cuotas todo sistema de ficheros donde los usuarios puedan escribir.
Para habilitar las cuotas en un sistema de ficheros hay que editar el fichero /etc/fstab e incluir la
opción usrquota. En una instalación típica de Guadalinex todo el sistema estará en una única partición así
que editaremos el fichero /etc/fstab y modificaremos la línea donde aparece el sistema de ficheros raíz:
# gedit /etc/fstab
/dev/hda2 / ext3
defaults,errors=remount-ro,usrquota
0
1
Después de agregar la opción, vuelva a montar cada sistema de archivos cuyas entradas fstab hayan sido
modificadas. Si el sistema de archivos no está siendo usado por ningún proceso, use el comando umount
seguido de mount para volver a montar el sistema de archivos. Si el sistema de archivos está siendo usado
actualmente, el método más fácil para volver a montar el sistema de archivos es reiniciando el sistema.
Paso segundo: Habilitar las cuotas
La manera más sencilla es ejecutar el comando
#quotacheck -acu
Esto creará el archivo de cuotas aquota.user en la raíz del sistema de archivos al que hayamos aplicado
cuotas. Seguidamente
#quotacheck -avu
Esto generará la tabla de uso actual del disco duro por el sistema de archivos con cuotas activadas:
Paso tercero: Especificar las cuotas para un usuario
# edquota testuser
En lugar de testuser ponga el nombre de usuario que desee. Se nos abrirá entonces el editor de texto
definido en la variable de entorno EDITOR (habitualmente el editor vi) y nos mostrará algo com esto:
Disk quotas for user testuser (uid 501):
Filesystem
blocks
/dev/hda2
440436
soft
0
hard
0
inodes
37418
soft
0
hard
0
52
Capítulo 2. El sistema de ficheros
La primera columna es el nombre del sistema de archivos que tiene una cuota activada. La segunda
columna muestra cuántos bloques (en kilobytes) está usando el usuario actualmente. Las próximas dos
columnas son usadas para colocar límites de bloques duros y suaves para el usuario del sistema de archivos.
La columna inodes muestra cuántos inodes está usando el usuario actualmente. Las últimas dos columnas
son usadas para colocar los límites duros y suaves para los inodes del usuario en el sistema de archivos.
Un límite duro es la cantidad máxima absoluta de espacio en disco que un usuario o grupo puede usar.
Una vez que se alcance el límite, no se puede usar más espacio.
El límite suave define la cantidad máxima de espacio en disco que puede ser usado. Sin embargo, a
diferencia del límite duro, el límite suave puede ser excedido durante cierto tiempo. Este tiempo es conocido como período de gracia. El período de gracia puede ser expresado en segundos, minutos, horas, días,
semanas o meses. El período de gracia puede cambiarse con:
#edquota -t
Si cualquiera de los valores está especificado a 0, ese límite no está configurado. En el editor de texto,
cambie los límites deseados. Habitualmente únicamente tendrá que cambiar el límite soft y hard, y no tendrá
que preocuparse por el límite de inodos. Para editar estos valores utilice los comandos típicos del editor vi.
Para el caso bastará con que pulse la tecla i para añadir modificaciones. Cuando termine pulse Escape y
escriba :wq
Para verificar que la cuota de usuario ha sido especificada use el comando:
#quota nombre_usuario
Finalmente modificaremos la siguiente línea del fichero de configuración del programa adduser de modo
tal que todos los usuarios creados de ahora en adelante, tengan habilitadas las mismas cuotas de disco que
acabamos de habilitar para el usuario testuser.
#gedit /etc/adduser.conf
QUOTAUSER="testuser"
Si tiene usuarios ya creados en el sistema y desea crear cuotas para ellos iguales a las del usuario testuser
utilice:
#edquota -p testuser ‘awk -F: ’$3 >499 {print $1}’ /etc/passwd‘
Asumiendo que los usuarios tienen un número de UID a partir del 500, lo que por otra parte es lo más
habitual.
Hasta aquí llega este largo capítulo. Pero ya sabe que la vida del administrador de sistemas es dura. No
se preocupe llegará el tiempo de divertirnos.
Notas
1. En la documentación en inglés se utiliza siempre el término file que se ha traducido tanto por "archivo"
como por "fichero". En lo que sigue utilizamos como sinónimos los términos "archivo" y "fichero", lo
mismo con los términos "directorio" y "carpeta".
2. Esto se hace así para facilitar la instalación del sistema al usuario novel que no tendrá que preocuparse
de hacer particiones en el disco. Puede ver el tamaño de este fichero con sólo teclear
$ls -alh /swapfile
53
Capítulo 2. El sistema de ficheros
3. En GNU/Linux, al igual que en Unix, todo son ficheros; si algo no es un fichero entonces es un proceso
4. Esto no es del todo cierto. El documento que define el FHS es la referencia autorizada para cualquier
sistema compatible FHS, sin embargo el estándar da pie a la extensibilidad de unas áreas o no define
otras.Así que para ser exactos diríamos que los encontraríamos en un 90% de los casos.
5. En las últimas versiones del sistema X Windows este fichero es sustituido por xorg.conf
6. Para salir hay que pulsar q
7. Así es efectivamente. A pesar de lo que puediera parecer los enlaces simbólicos de que hablamos más
arriba no son de ningún modo comparables a los accesos directos de Windows. Los accesos directos de
Windows equivalen a los enlaces de espacio de usuario.
8. No parece que Guadalinex 2004 ofrezca la posibilidad de montar particiones NTFS en modo escritura,
posibilidad que sí encontramos en otras distribuciones GNU/Linux recientes.
9. Si se dispone de la utilidad isomount no será necesario utilizar el comando mount, bastará con escribir
$isomount mi_imagen.iso
isomount creará un enlace simbólico a mi_imagen.iso en el directorio /tmp que invariablemente se
llamará imagen.iso y lo montará en el directorio /mnt/iso
10. Esto no es realmente necesario si se no pone el programa cdrecord tratará de determinar la velocidad
automáticamente.
11. El sistema de ficheros ext2/3 se parece a un secretario listo. Usted manda a su secretario que abra un
expediente y guarde en él un documento. Si su secretario es diligente irá inmediatamente a hacerlo,
pero si es listo lo dejará sobre la mesa y esperará. Más adelante manda a su secretario a que guarde
otro documento en el mismo u otro expediente, su secretario diligente irá inmediatamente, pero el listo
esperará. Así una y otra vez. Su secretario diligente tiene dos problemas: el primero es que ha perdido
mucho tiempo yendo y viniendo y el segundo es que como no podía saber cuánto espacio iba a ocupar
el expediente lo ha ido distribuyendo en muchos lugares a lo largo de las estanterías, esto es, cada
expediente está distribuido fragmentariamente.
El secretario listo ha esperado a tener un número suficiente de documentos para archivar así ha podido calcular
mejor el espacio que iba a ocupar el expediente y además lo ha hecho en una sola ida y venida. Esto tiene un coste
y es que si su secretario listo tiene que marcharse repentinamente y a toda prisa, no tendrá tiempo de archivar los
documentos correctamente y los dejará en las estanterías de cualquier manera y al día siguiente pasará bastante
tiempo tratando de reconstruir dónde iba cada cosa.
Esto es lo que ocurría con el sistema de ficheros ext2 cuando la máquina se apagaba incorrectamente. Pero el
sistema ext3 añade una bitácora o diario (journal) en la que apunta dónde va cada cosa en las estanterías. Así
aunque al marcharse repentinamente tenga que dejar los documentos en cualquier parte siempre podrá reconstuir
rápidamente dónde poner cada cosa con sólo mirar el diario que escribió en su momento.
12. Cuando se crea un usuario por ejemplo pepe, simultáneamente se crea también automáticamente un
grupo con el mismo nombre, según suele estar establecido en el fichero /etc/adduser.conf. Pues
bien, el usuario pepe pertenece al menos al grupo pepe. De este modo se cumple que cada usuario
pertenece al menos a un grupo, aunque habitualmente pertenecerá a más de uno
13. Usted se preguntará qué sentido tiene que un fichero tenga permisos de ejecución si no es un ejecutable
como en este caso. Por mucho que tenga permisos de ejecución el fichero educacionred.txt no se
va a poder ejecutar porque no es un fichero ejecutable. Sin embargo tiene sentido que se mantenga este
sistema de permisos por coherencia: por ejemplo hay ficheros que son puro texto tales como un script
de shell o de php o de cualquier otro lenguaje interpretado que sin embargo pueden ejecutarse en cuanto
tengan permisos de ejecución.
54
Capítulo 3. Configuración de dispositivos
3.1. Introducción
Normalmente, una vez instalado el sistema hemos de realizar ciertas tareas de configuración para armonizar los distintos periféricos que se encuentran conectados a nuestro equipo.
Algunos, seguramente habrán sido detectados correctamente durante el proceso de instalación, otros
funcionarán de manera limitada y será necesario afinar su configuración, mientras que ciertos periféricos
será necesario incorporarlos totalmente al sistema para poder utilizarlos correctamente.
Todo lo relativo al entorno gráfico controlado por el servidor X, se encontrará posiblemente funcionando
a pleno rendimiento. Teclado, monitor o ratón mantendrán el estado en el que fueron reconocidos durante
la ejecución en modo Live CD, antes de la instalación, sin embargo, tal vez sea necesario realizar pequeños
ajustes para optimizar su comportamiento y explorar algunas características avanzadas sobre las posibilidades que brinda este maravilloso servidor gráfico.
En cambio otros dispositivos como el escáner, la impresora o una cámara de fotos digital, será necesario
que se incorporen al conjunto del sistema manualmente en una tarea reservada al administrador del equipo,
por no citar a los innumerables gadchets último modelo que encontramos habitualmente en las instalaciones
domésticas. En este capítulo trataremos de lidiar con estos elementos para conseguir que cumplan a pleno
rendimiento la tarea para la que fueron diseñados.
3.2. El sistema X Window
3.2.1. Introducción
Aunque todas las tareas de configuración de una máquina GNU/Linux pueden hacerse desde un entorno
texto, y aunque en este mismo entorno dispongamos de cientos de aplicaciones potentísimas capaces de
editar textos, grabar cds, editar video y audio, etc. es claro que en un entorno gráfico todas estas operaciones
se tornan mucho más fáciles. Por otra probablemente GNU/Linux no habría llegado al nivel de popularidad
actual si no dispusiese de un entorno de trabajo gráfico.
En efecto, el acercamiento de la informática al usuario corriente no habría sido posible sin el desarrollo de
interfaces gráficas de usuario (GUI). Estas interfaces facilitan las tareas y permiten interactuar fácilmente
con el sistema ejecutando todo tipo de aplicaciones: retocar fotografías, procesar textos, etc. En el futuro
puede que dispongamos de GUIs basadas en realidad virtual donde el usuario interectúe con la máquina
mediante la voz, el tacto, la dirección de la mirada o incluso el pensamiento, pero en la actualidad las GUIS
están basadas en objetos pictóricos tales como iconos o ventanas, además de texto. La pieza fundamental
de las modernas interfaces gráficas de usuario son las ventanas.
Un sistema de ventanas es una colección de programas que le permiten utilizar y mostrar muchas aplicaciones en una única pantalla. Para esto divide la pantalla en varias más pequeñas, posiblemente superponiendo secciones, llamadas ventanas, con lo que usted puede tener varias sesiones simultáneamente en
diferentes nodos o hosts, programas que muestren gráficos, lectura de correspondencia, proceso de texto,
etc, todo ejecutándose al mismo tiempo.
La mayoria de los sistemas de ventanas utilizan una abstracción llamada “metáfora de escritorio"
(desktop). Esto es, la pantalla es tratada como si fuera la parte superior de un escritorio, y cada ventana de
programa como si fuera un pedazo de papel. En un escritorio real, usted puede poner piezas de papel una al
lado de otra, apilarlas unas sobre otras, moverlas alrededor, doblarlas , y así sucesivamente. Similarmente,
55
Capítulo 3. Configuración de dispositivos
un sistema de ventanas le permite colocar ventanas en la pantalla, apilarlas, colocarlas contiguas, moverlas,
etc.
En GNU/Linux es posible disponer de una GUI gracias al sistema X Window (nótese el singular).
El Sistema X Window, conocido también como X, es una colección de programas que forman una interface para el usuario, orientada al uso de teclado, ratón y una pantalla gráfica.
A diferencia de los sistemas de GUI de Apple™ o Microsoft™, X fue diseñado para estar aislado completamente del núcleo del sistema operativo, lo que resulta en una mejor estabilidad, ya que si por algún
motivo X tiene un fallo o simplemente se cuelga, el sistema en general no se ve afectado. También resulta
en una mayor versatilidad, debido a que es posible reiniciar X sin reiniciar el sistema operativo, en incluso
instalar diferentes versiones e implementaciones en un mismo núcleo.
El Sistema X Window se desarrolló originariamente a principios de los años 80 en el Instituto de Tecnología de Massachussets (MIT). En 1988 se creó por parte de las grandes empresas del sector informático
el MIT X Consortium con el objetivo de desarrollar el sistema X como un producto abierto1. Aunque el
sistema es de libre distribución muchas empresas, por su parte, han creado ampliaciones propietarias de las
X destinadas en su mayor parte a los sistemas Unix comerciales.
En GNU/Linux podemos disponer de una versión del sistema X gracias al proyecto XFree86
(http://www.xfree86.org/) basado en el estándar X11 de las X Window2. Guadalinex 2004 cuenta con la
versión 4.3.0.1 de XFree86. Para verlo basta con ejecutar el comando
$XFree86 -version
La versión 4 de XFree86 supone un notable cambio respecto de la versión anterior (3.3.6). Mientras que
en versiones anteriores teníamos que cargar un servidor gráfico distinto dependiendo del modelo de tarjeta
gráfica de que disponíamos en la versión 4 se carga un único servidor gráfico para todas las tarjetas gráficas
soportadas.3
El sistema X nos permite disponer tanto de una interfaz gráfica en nuestro propio sistema, como compartir y ejecutar aplicaciones gráficas en red. Veamos.
El Sistema X Window está diseñado para poder trabajar en redes mediante un sistema de cliente-servidor.
De esta manera, un servidor X se encarga de manejar el hardware necesario para disponer de una interfaz
gráfica: la tarjeta de vídeo, el ratón y el teclado; y brindar una interfaz para poder trabajar sobre estos
dispositivos.
Un cliente X en cambio es cualquier aplicación gráfica, la cual debe conectarse a un servidor X para
poder mostrarse en la pantalla. Para esto, la aplicación cliente hace uso de Xlib, que es el conjunto de
librerías de programación que contienen lo necesario para tal labor. La intercomunicación entre el cliente y
el servidor de X se realiza gracias a un protocolo de red llamado Protocolo X, el cual puede trabajar sobre
otros de bajo nivel como TCP/IP.
Por lo general en un sistema de escritorio GNU/Linux, tanto el cliente como el servidor de X se ejecutan
en la misma máquina, y el proceso de comunicación entre los dos se realiza de forma completamente
transparente. Sin embargo, también es posible ejecutar el cliente y el servidor en equipos diferentes con lo
cual se obtiene una enorme flexibilidad. Por ejemplo es posible utilizar remotamente, en un computador
cliente, un programa con interfaz gráfica que se esté ejecutando en otro computador.
El servidor X provee servicios para acceder a la pantalla, teclado y ratón, mientras que los clientes son las
aplicaciones que utilizan estos recursos para interacción con el usuario. De este modo mientras el servidor
X se ejecuta de manera local, las aplicaciones pueden ejecutarse remotamente desde otras máquinas.
Sobre la base del Sistema X Window se montan los otros elementos que configuran un entorno gráfico
de trabajo: gestor de ventanas y entorno de escritorio.
56
Capítulo 3. Configuración de dispositivos
3.2.2. Gestores de ventanas
Un gestor de ventanas (en inglés, window manager), es un programa que controla la apariencia y la posicion en pantalla de las ventanas. El gestor de ventanas decorará cada ventana con botones que le permitirán
cerrar, maximizar o minimizar, controlará el aspecto de la barra de estado o de desplazamiento de cada
ventana, etc.
Las plataformas Windows™ y Macintosh™ ofrecen métodos de visualización y control de las ventanas
e interacción con las aplicaciones, estandarizados por sus vendedores. En cambio el sistema gráfico X
Window permite al usuario escoger entre varios gestores según sus gustos o necesidades.
Los gestores de ventanas difieren entre sí de muchas maneras, incluyendo apariencia, consumo de memoria, opciones de personalización, escritorios múltiples o virtuales y similitud con ciertos entornos de
escritorio ya existentes.
Actualmente existe una gran variedad gestores de ventanas para X, partiendo de los más rápidos y que
consumen menos memoria como TWM a los más lentos y que ocupan mucha memoria como Enlightenment4.
El gestor de ventanas Enlightenment
El gestor de ventanas Metacity
Como puede ver estos gestores de ventanas son suficientes para disponer de una interfaz gráfica de usua-
57
Capítulo 3. Configuración de dispositivos
rio agradable. Además cuentan con la ventaja de que pueden ejecutarse en máquinas con pocos recursos.
Un paso más en la evolución de GUI es el entorno de escritorio, no obstante si se tiene una máquina con
pocos recursos pueden ser una opción estupenda.
Si desea iniciar una sesión gráfica únicamente con el gestor de ventanas fluxbox, en la pantalla inicial de
registro gráfico vaya a Sesión, seleccione fluxbox y pulse aceptar.
Elegir tipo de sesión
Pulse con el botón derecho del ratón en el escritorio fluxbox para activar el menú de Aplicaciones
Fluxbox
3.2.3. Entornos de escritorio
Un entorno de escritorio (en inglés, Desktop Environment) es un conjunto de software para ofrecer al
usuario de un ordenador un ambiente amigable y cómodo. Un entorno de escritorio ofrece al usuario iconos,
barras de herramientas,integración entre aplicaciones, etc.
En general cada entorno de escritorio se distingue por su aspecto y comportamiento particulares, aunque
indudablemente comparten algunas características.5
58
Capítulo 3. Configuración de dispositivos
En GNU/Linux tenemos dos entornos de escritorio disponibles: GNOME (GNU Network Object Model
Environement) y KDE (K Desktop Environement). Guadalinex viene con GNOME aunque también puede
instalarse KDE y utilizar ambos; incluso pueden instalarse en un entorno de escritorio aplicaciones propias
de otro.6
El proyecto GNOME (http://www.gnome.org) (GNU Network Object Model Environment) surge en
agosto de 1997 como proyecto liderado por el mexicano Miguel de Icaza para crear un entorno de escritorio
completamente libre para sistemas operativos libres, en especial para GNU/Linux. Desde el principio, el
objetivo principal de GNOME ha sido proporcionar un conjunto de aplicaciones amigables y un escritorio
fácil de utilizar.
En esos momentos existía otro proyecto anterior con los mismos objetivos, pero con diferentes medios:
KDE. Los primeros desarrolladores de GNOME criticaban a este proyecto por basarse en la biblioteca de
controles gráficos Qt por no ser compatible con los fundamentos del software libre. Años más tarde los
problemas de licencia de Qt se han resuelto y estas críticas han cesado. Sin embargo, los dos proyectos
siguen rumbos tecnológicos distintos y se hacen una competencia amigable.
Entorno de escritorio KDE
El inconveniente que presentan ambos es que suelen ser bastante exigentes en lo que respecta a disponibilidad de memoria RAM y potencia del microprocesador.7
Los entornos de escritorio trabajan en colaboración con los gestores de ventanas, por ello en cada momento junto con un entorno de escritorio hay trabajando un gestor de ventanas. El gestor de ventanas las
decorará con botones y barras de desplazamiento y estado, el entorno de escritorio las situará en el espacio
de trabajo, les ofrecerá un panel donde situarse o las lanzará, etc.
GNOME puede trabajar con varios gestores de ventanas aunque el preferido es metacity. Para ver que
gestor de ventanas se está usando por defecto con GNOME basta con escribir en una terminal:
$ less /usr/share/gnome/default.wm
Para salir pulsa q
Así se nos mostrará el gestor de ventanas por defecto de Gnome. También podemos ver los gestores de
ventanas disponibles y eventualmente cambiar de uno a otro con:
# update-alternatives --config x-window-manager
There are 2 alternatives which provide ‘x-window-manager’.
Selection
Alternative
59
Capítulo 3. Configuración de dispositivos
----------------------------------------------*+
1
/usr/bin/metacity
2
/usr/bin/fluxbox
Press enter to keep the default[*], or type selection number:
3.2.4. Configuración del servidor gráfico X
Como se dijo anteriormente el servidor gráfico X Window es el encargado de garantizar el acceso al
hardware de entrada/salida necesario para disponer de una GUI: teclado, ratón, monitor, tarjeta gráfica. Por
tanto configurar el servidor X es tanto como configurar el comportamiento de estos dispositivos.
Lo más probable es que no necesite usar estas herramientas puesto que el proceso de instalación es capaz
de detectar los componentes hardware de nuestra computadora. Hay sin embargo un par de situaciones en
que quizá necesite hacerlo: cuando alguno o algunos componentes no hayan sido correctamente detectados
o cuando hagamos algún cambio en el hardware de nuestra máquina (por ejemplo reemplazar la tarjeta
gráfica).
Antes de utilizar cualquiera de las herramientas que le proponemos es muy recomendable que haga una
copia del fichero /etc/X11/XF86Config-4. Para ello abra una terminal de root y escriba:
# cd /etc/X11/
# cp XF86Config-4 XF86Config-4.original
Si usted configura mal el servidor X puede quedarse sin la posibilidad de acceder al entorno gráfico.
En este caso si tiene hecha la mencionada copia puede restaurarlo desde un entorno de texto con tan solo
escribir como root:
# mv XF86Config-4.original XF86Config-4
Y todo funcionará igual que antes de tratar de configurar el servidor X. En Debian y por tanto Guadalinex,
disponemos de varias herramientas para este propósito.
3.2.4.1. xf86config
Se trata de una utilidad en entorno puramente texto. No supone ninguna ventaja respecto a las herramientas de configuración gráfica. Lo usaremos únicamente en el caso de que el sistema X no funcione en
absoluto y por tanto necesitemos recurrir al puro texto. Su uso implica un conocimiento avanzado de los
componentes de nuestra máquina.
3.2.4.2. xf86cfg
Es una herramienta gráfica para la configuración del sistema XFree86 y se puede usar tanto para reemplazar la configuración inicial detectada por el proceso de instalación, como para personalizar la configuración
actual. También puede usarse cuando se haya añadido o quitado algún componente en nuestro sistema.
60
Capítulo 3. Configuración de dispositivos
xf86cfg
La herramienta permite configurar uno o varios de los siguientes dispositivos:ratón, teclado, tarjeta gráfica y monitor. Los cambios no son escritos hasta que pulsamos el botón Quit, momento en que se nos pedirá
confirmación para hacer los cambios. Esta herramienta es a la par compleja y potente.
Tanto en el modo normal como en el modo experto requiere que sepamos muy bien qué estamos haciendo.
La forma más cómoda y fácil de configurar el sistema X es utilizar el script de configuración Debian.
Sin embargo este script no detectará automáticamente el hardware. Por tanto necesitará tener a mano la
documentación del hardware instalado en su máquina. Si no la tiene a mano o no es fiable puede recurrir a
las diversas herramientas que Guadalinex dispone para la detección automática de dispositivos:
•
infhard. Creado por la Junta de Andalucía. Genera un informe bastante completo pero difícil de leer. Para
ejecutarlo vaya a Aplicaciones−→Configuración−→Sistema−→Informe de Hardware. Esto creará
un paquete tar.gz en el escritorio con iformación sobre el hardware instalado en su computadora.
•
hardinfo. Este paquete no está instalado por defecto. Para instalarlo abra una terminal de root y escriba:
# apt-get install hardinfo Se trata de una pequeña aplicación que muestra información sobre el
hardware instalado y sobre el sistema operativo.
•
hal-device-manager. Aplicación gráfica que muestra información sobre los dispositivos detectados.
Para ejecutarlo vaya a Aplicaciones−→Configuración−→Sistema−→Gestión de dispositivos
Para el script de configuración de Xfree86 abra un terminal, regístrese como root y escriba: #
dpkg-reconfigure xserver-xfree86 ahora aparecerán una serie de pantallas en las que debemos
ir contestando diferentes preguntas.
Seleccione el sevidor X que desea tener por defecto. A menudo se nos ofrecerá una única opción así que
pulsaremos el botón Adelante
Seleccione el controlador del servidor X que desea. Seleccionaremos el controlador adecuado a nuestra
tarjeta gráfica. Los controladores tienen por nombre típicamente el fabricante de la tarjeta de vídeo del
conjunto de chips o también el modelo específico. Para ver qué tarjetas gráficas soporta cada controlador
consulte http://www.xfree86.org/4.3.0/manindex4.html
61
Capítulo 3. Configuración de dispositivos
Introduzca un identificador para su tarjeta de vídeo. El nombre que pongamos aquí carece de importancia, por claridad podemos poner el nombre de la marca y el modelo por ejemplo ATI Rage Fury
Please enter the video card’s bus identifier. (Por favor, introduzca el identificador del bus de su tarjeta de
vídeo). Si sólo tenemos una tarjeta gráfica instalada, lo cual es lo más frecuente, podemos dejarlo en blanco.
Introduzca la cantidad de memoria (en kB) usada por su tarjeta de vídeo. Normalmente el servidor X
detecta automáticamente la cantidad de memoria de la tarjeta gráfica, así que podemos dejar este parámetro
en blanco. Algunos chips de vídeo integrados en placa (como el Intel i810) tienen poca o nada de memoria de su propiedad y lo que hacen es ocupar memoria principal del sistema para sus necesidades. Es lo que
se conoce como tarjetas gráficas de memoria compartida habituales en los ordenadores portátiles o de sobremesa de bajo costo.8 En estos casos y sólo si el servidor X tiene problemas para detectar automáticamente
la cantidad de memoria RAM de vídeo es necesario especificar este parámetro.
Por favor, seleccione el conjunto de reglas de XKB que usará. Comienza aquí la configuración del
teclado. Para que el servidor X maneje correctamente el teclado se debe seleccionar un conjunto de reglas.
En la gran mayoría de los casos escogeremos el conjunto de reglas de teclado xfree86
Please select your keyboard model. (Por favor, seleccione su modelo de teclado). Seleccionamos ahora el
modelo de teclado. Lo habitual es escribir pc105
Por favor, seleccione el diseño de su teclado. Escribiremos aquí es para el teclado español
Por favor, seleccione su variante de teclado. Escribimos nodeadkeys para poder trabajar normalmente
con las teclas de acento o diéresis.
Por favor, seleccione las opciones de su teclado. Podemos dejar este parámetro en blanco. Si quiere saber
las opciones posibles así como su utilidad pulse el botón Help
Por favor, escoja el puerto de su ratón. Seleccionamos ahora el puerto dependiendo del tipo de ratón
de que disponemos. /dev/psaux si nuestro ratón es PS/2 (los puertos PS2 son pequeños conectores
redondos con 6 patillas) /dev/ttyS0 si nuestro ratón está conectado al primer puerto serie (COM1),
/dev/ttyS1 si nuestro raton está conectado al segundo puerto serie (COM2) y así con el resto de puertos
serie, /dev/imput/mice si el ratón está conectado a un puerto USB.
Por favor, escoja la opción que mejor describa su ratón. Se nos ofrecen ahora en una lista desplegable
distintos modelos de mouse:
•
PS/2
•
ImPS/2 (MS IntelliMouse (serial, PS/2))
•
GlidePointPS/2 (ALPS GlidePoint (serial, PS/2))
•
NetMousePS/2 (Genius NetMouse and NetMouse Pro (serial, PS/2)) , Genius NetScroll Optical (PS/2,
USB))
•
NetScrollPS/2 (Genius NetScroll (PS/2))
•
ThinkingMousePS/2 (Kensington Thinking Mouse and Kensington Expert Mouse (serial, PS/2))
•
MouseManPlusPS/2 (Logitech MouseMan+ and FirstMouse+ (serial, PS/2))
•
ExplorerPS/2 (MS IntelliMouse Explorer (PS/2, USB))
PS/2 es un modelo genérico y se ajustará a las necesidades de cualquier tipo de ratón. Sin embargo
botones tales como el scroll (ruedecilla central) pueden no funcionar. Use este modelo únicamente si su
ratón está funcionando mal o no sabe qué hacer.
ImPS/2 este modelo debería funcionar también con la mayor parte de ratones. Use este modelo si su
ratón es serie o PS/2 y dispone de scroll.
ExplorerPS/2 si su ratón dispone de scroll y es USB o PS/2 puede probar también con este modelo.
62
Capítulo 3. Configuración de dispositivos
Los demás modelos los usaremos sólo si tenemos un ratón de ese tipo.
Para una mayor información sobre los modelos de ratón soportados puede consultar la página
http://www.xfree86.org/4.3.0/mouse6.html#26
¿Emular un ratón de tres botones? Marcaremos esta casilla
¿Activar eventos de desplazamiento con la rueda del ratón? Si nuestro ratón tiene ruedecilla marcaremos
esta opción. Si no lo sabe o no está seguro marque esta opción. Marcar esta opción es inocuo aunque el ratón
no tenga ruedecilla.
Introduzca un identificador para su monitor. Puede poner aquí lo que desee. Por claridad lo habitual es
indicar la marca y modelo del monitor. Si no lo sabe o no está seguro deje el valor por defecto.
¿Es su monitor un dispositivo LCD? Si su monitor es de cristal líquido, lo que es el caso de la práctica
totalidad de los portátiles, marque esta opción. Los usuarios de un monitor de rayos catódicos (el que
llamaríamos monitor corriente) no deben marcar esta opción.
Por favor, escoja un método para seleccionar las características de su monitor. Se nos ofrecen ahora
tres opciones: simple, medio, avanzado.
Para la opción simple, sólo necesita saber el tamaño físico en pulgadas de su monitor; con eso se darán algunos valores de configuración apropiados para un monitor CRT típico del tamaño correspondiente,
pero pueden no ser los óptimos para monitor CRT de buena calidad. Esta opción está desactivada para los
usuarios de LCD.
La opción medio le presentará una lista de resoluciones y tasas de refresco, como "800x600 @ 85Hz".
Debería escoger el mejor modo que desee usar y que sepa que su monitor es capaz de soportar.
La opción avanzado le permitirá especificar directamente las frecuecuencias de refresco horizontal y
vertical de su monitor.
Si está muy perdido o no sabe nada acerca de su monitor seleccione la opción simple.
Si conoce al menos la velocidad de refresco de su monitor y la resolución de que es capaz seleccione la
opción medio.
Si está teniendo problemas con el monitor debiera usar la opción avanzado.
Si seleccionamos la opción medio la siguiente pantalla,
Por favor, seleccione el mejor modo de vídeo de su monitor. En la lista desplegable seleccionamos el
modo de vídeo que más se ajuste a nuestro monitor. Cuanto mayores sean las resoluciones y tasas de refresco
mejor será el comportamiento del monitor. Ahora bien debemos asegurarnos de que nuestro monitor es
capaz de soportarlas: un modo de video inadecuado provocará que la imagen se vea distorsionada o que no
se vea en absoluto. Si no encontramos nuestro modo exacto es siempre mejor elegir un modo aproximado
por debajo. Si nuestro monitor soporta "800x600 72Hz" no pasará nada si elegimos "800x600 60Hz", en
cambio funcionará muy mal en "800x600 85 Hz".
Seleccione los modos de vídeo que le gustaría que usase el servidor X. Por defecto el servidor X intentará
usar la resolución más alta de que sea capaz su monitor. Marque los modos que desea usar. Para ello pulse
con el botón izquierdo del ratón el primer modo a usar, pulse la tecla de mayúsculas y sin soltarla haga
clic con el ratón en el último modo a usar. Se resaltarán en azul los modos seleccionados. Podría emplear
la resolución más alta de que sea capaz su monitor y todas las resoluciones inferiores. Si no está seguro
marque todos los modos.
Por favor, seleccione la pronfundidad de color (en bits) deseada. Lo normal es marcar 16 o 24 bits de
profundidad de color.
Select the XFree86 server modules that should be loaded by default. Esta opción es para usuarios avanzados, en la mayor parte de los casos deberían activarse todos los módulos. Si no está seguro deje todos los
marcados.
63
Capítulo 3. Configuración de dispositivos
¿Escrbir sección Files por defecto en el fichero de configuración? Marque la casilla
¿Escribir sección DRI predefinida en el fichero de configuración? Marque la casilla
3.2.5. El fichero /etc/X11/XF86Config-4
El fichero que establece el comportamiento del sistema X Window es /etc/X11/XF86Config-49. Para
el nuevo servidor XOrg del que hablamos más arriba y que viene por defecto en distribuciones como Fedora
Core, el fichero de configuración es /etc/X11/xorg.conf. Todas las aplicaciones que hemos visto hasta
ahora no son más que utilidades para facilitar la escritura de este fichero. El proceso de instalación genera el
fichero y siempre es posible, si tenemos que ajustar algún parámetro que no ha sido bien detectado, editarlo
directamente.
Podemos ver el contenido del fichero con:
# less /etc/X11/XF86Config-4
El fichero está organizado en Secciones. Todas las Secciones tienen la misma estructura:
•
Section "Nombre de la sección"
•
Parámetros
•
End Section
Las líneas que empiezan con # son comentarios y serán ignoradas por el sistema. Los comentarios suelen
ser de dos tipos: aclaraciones sobre las líneas que siguen y parámetros comentados que pueden activarse
con sólo quitar el símbolo de comentario.
Veamos brevemente que hay en cada sección.
ServerLayout. (Diseño del servidor). La sección ServerLayout vincula los dispositivos de entrada y salida
controlados por el servidor XFree86. Como mínimo, esta sección debe especificar un dispositivo de salida
(pantalla, screen) y al menos dos dispositivos de entrada (un teclado y un ratón). A su vez la pantalla (screen)
es una combinación de Monitor (Monitor) y tarjeta de vídeo (Device)
El ejemplo siguiente ilustra una sección ServerLayout típica:
Section "ServerLayout"
Identifier
Screen
0
InputDevice
InputDevice
EndSection
"XFree86 Configured"
"Screen0" 0 0
"Keyboard0" "CoreKeyboard"
"PS/2 Mouse" "CorePointer"
El significado de cada uno de los parámetros es:
•
Identifier. Especifica un nombre único para esta sección ServerLayout.
•
Screen. Especifica el nombre de la sección Screen que se va a usar con el servidor XFree86.
•
InputDevice. Especifica el nombre de la sección InputDevice que se va a usar con el servidor XFree86.
64
Capítulo 3. Configuración de dispositivos
Al menos deben haber dos entradas InputDevice: una para el ratón por defecto y otra para el teclado por
defecto. Las opciones CorePointer y CoreKeyboard indican que éstos son el ratón y teclado principales.10
ServerFlags. La sección ServerFlags contiene varios parámetros globales del servidor XFree86.Se trata
de una sección opcional. Las entradas dentro de la sección ServerFlags comienzan con el término Option
seguido por una opción encerrada en dobles comillas ["].
A continuación un ejemplo de la sección ServerFlags:
Section "ServerFlags"
Option "AllowMouseOpenFail"
EndSection
"true"
La siguiente es una lista de algunas de las opciones más útiles:
"AllowMouseOpenFail" "true". Permite usar simultáneamente dos ratones. Esto es típico en los orde-
nadores portátiles donde a menudo además del ratón incorporado se suele conectar, por facilidad de manejo,
un segundo ratón normal.
"DontZap" "true".
Esta configuración impide el
[Ctrl]+[Alt]+[Retroceso] para finalizar el servidor XFree86.
uso
de
la
combinación
de
teclas
"DontZoom" "true". Esta configuración impide moverse a lo largo de las resoluciones de vídeo configu-
radas usando las combinaciones de teclas [Ctrl]+[Alt]+[+] y [Ctrl]+[Alt]+[-].
Files. . La sección Files configura la ruta para servicios vitales al servidor XFree86, tal como las rutas
hacia la base de datos de colores RGB.
Module. La sección Module especifica cuales módulos del directorio /usr/X11R6/lib/modules/ cargará el servidor XFree86. Los módulos añaden funcionalidad adicional al servidor XFree86.
InputDevice. Cada sección InputDevice configura un dispositivo de entrada para el servidor XFree86.
Los sistemas típicamente tienen al menos dos secciones InputDevice, un teclado y un ratón.
El ejemplo siguiente ilustra una sección InputDevice típica para un ratón:
Section "InputDevice"
Identifier "PS/2 Mouse"
Driver
"mouse"
Option
"Device" "/dev/input/mice"
Option
"SendCoreEvents" "true"
Option
"Protocol"
"ExplorerPS/2"
Option
"ZAxisMapping"
"4 5"
Option
"Buttons"
"5"
EndSection
Las entradas siguientes son comúnmente usadas en la sección InputDevice:
Identifier. Especifica un nombre único para esta sección InputDevice. Esto es una entrada requerida.
Driver. Especifica el nombre del controlador del dispositivo que XFree86 debe cargar para el dispositivo.
Option Especifica. las opciones necesarias pertinentes al dispositivo.
Para un ratón, estas opciones pueden ser entre otras:
•
Protocol Indica el protocolo usado por el ratón, tal como IMPS/2 o ExplorerPS/2
•
Device Indica la ubicación del dispositivo físico.
65
Capítulo 3. Configuración de dispositivos
Para una lista completa de las opciones válidas para esta sección consulte la página man de XF86Config
($ man XF86Config)
Monitor. Esta sección configura el tipo de monitor usado por el sistema. Para modificar esta sección debemos conocer bien las características técnicas de nuestro monitor. Tenga cuidado cuando modifique manualmente valores en la sección Monitor. La utilización de valores inapropiados pueden dañar o destruir el
aparato.
Las líneas que con más frecuencia hay que modificar son las que se refieren a sincronía horizontal y
velocidad de actualización vertical.
HorizSync rango_valores
VertRefresh rango_valores
Donde rango_valores puede ser una serie de valores separados por comas para los monitores de frecuencia fija que admiten varios valores o un rango de valores separados por un guión si el monitor es
multifrecuencia. Esta segunda forma es la más habitual en los modernos monitores.
Un ejemplo típico de esta sección sería:
Section "Monitor"
Identifier
"Monitor0"
# Wish we could use some probed settings here, too, but XFree4 cannot do this yet.
#
HorizSync
28.0 - 78.0 # Warning: This may fry very old Monitors
HorizSync
28.0 - 96.0 # Warning: This may fry old Monitors
VertRefresh 50.0 - 76.0 # Very conservative. May flicker.
En los comentarios se nos avisa (Warning) que utilizar la Sincronía Horizontal 28.0 - 96.0 puede
freír algunos monitores antiguos. También se nos avisa que la velocidad de refresco 50.0 - 76.0 es muy
conservadora y podría provocar que el monitor parpadease.
Podemos modificar con precaución estos parámetros para ajustarlos a nuestro monitor y obtener así un
mejor rendimiento.
Las líneas que siguen y que comienzan todas con Modeline son generadas automáticamente por el
script de configuración. Modeline es un parámetro opcional que especifica los modos de vídeo adicionales
para el monitor en resoluciones particulares, con ciertas resoluciones de refrescamiento de sincronización
horizontal y vertical.
De todas las líneas Modeline sólo se usarán unas pocas. El servidor X elegirá entre las que representan
la misma resolución aquella que configure el mejor modo de video admitido en función de los parámetros
HorizSync y VertRefresh.
Puede haber diferentes secciones Monitor pero únicamente se estará usando aquella cuyo identificador
coincida con el valor del parámetro Monitor de la sección Screen.
Device. En esta sección es donde se configura la tarjeta gráfica. El siguiente ejemplo ilustra una sección
Device típica para una tarjeta de vídeo:
Section "Device"
Identifier "Card0"
Driver
"i810"
VendorName "All"
BoardName
"All"
EndSection
Cada driver en particular puede soportar un número específico de parámetros opcionales. Si está teniendo
problemas con un driver en particular puede probar a configurar uno o más de estos parámetros. Para ver
las opciones disponibles para cada driver vaya a URL http://www.xfree86.org/4.3.0/manindex4.html
66
Capítulo 3. Configuración de dispositivos
Si no sabe qué tarjeta gráfica tiene instalada puede probar a detectarla escribiendo
$ lspci | grep VGA
0000:00:02.0 VGA compatible controller: Intel Corp. 82852/855GM Integrated Graphics Device (rev 02)
En el ejemplo ha sido detectada la tarjeta gráfica Intel 82852/855GM. Comprobando la documentación sobre drivers arriba mencionada sabemos que el driver adecuado para esta tarjeta es "i810".
Si está teniendo problemas con su tarjeta gráfica puede usarse el driver genérico "vesa". Esto debería ser
suficiente para la mayor parte de las fuciones gráficas aunque probablemente redundará en un rendimiento
menor de su hardware.
Puede haber diferentes secciones Device pero únicamente se estará usando aquella cuyo identificador
coincida con el valor del parámetro Device de la sección Screen.
Screen.. Una pantalla (screen) es una combinación de una tarjeta gráfica (Device) y un monitor (Monitor).
Puede haber diferentes secciones Screen pero únicamente se estará usando aquella cuyo identificador
coincida con el valor del parámetro Screen de la sección ServerLayout.
Section "Screen"
Identifier "Screen0"
Device
"Card0"
Monitor
"Monitor0"
DefaultColorDepth 16
SubSection "Display"
Depth
1
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
4
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
8
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
15
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
16
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
24
Modes "1024x768"
EndSubSection
SubSection "Display"
Depth
32
Modes "1024x768"
EndSubSection
EndSection
"800x600" "640x480"
"800x600" "640x480"
"800x600" "640x480"
"800x600" "640x480"
"800x600" "640x480"
"800x600" "640x480"
"800x600" "640x480"
En estas sección
•
Depht indica la profundidad de color expresada en bit por píxel (bpp).
67
Capítulo 3. Configuración de dispositivos
•
Modes la lista indica la resolución que se usará. El primero de la lista indica la resolución por defecto.
Podemos pasar de uno a otro dinámicamente utilizando la combinación de teclas [Ctrl]+[Alt]+[+]
para pasar al modo superior o [Ctrl]+[Alt]+[-] para pasar al modo inferior. Alternativamente
podemos emplear la herramienta gráfica gnome-display-properties, para ello vaya al menú
Aplicaciones−→Configuración−→Panel de Control−→Resolución de la pantalla. De todas las
profundidades de color se usará por defecto la expresada en el parámetro DefaultColorDepth11. Tal y
como está en el ejemplo estaríamos usando una profundidad de color de 16 bpp. Por tanto si queremos
añadir, quitar, o cambiar la resolución por defecto tendríamos que modificar únicamente la línea Modes
debajo de Depth 16.
Sección DRI. La sección opcional DRI especifica parámetros para Direct Rendering Infrastructure (DRI).
DRI es una interfaz que permite a las aplicaciones de software 3D sacar provecho de las capacidades de
aceleración de hardware 3D incorporadas en la mayoría del hardware moderno de vídeo. Además, DRI
puede mejorar el rendimiento de 2D a través de la aceleración de hardware, si es soportado por el controlador
de la tarjeta.
El ejemplo siguiente muestra una sección DRI típica:
Section "DRI"
Mode
EndSection
0666
Esta sección únicamente se usa si su tarjeta permite aceleración 3D por hardware.Para comprobar si
nuestra tarjeta gráfica está usando la aceleración gráfica correctamente abra un terminal y escriba
$ glxgears
Aparecerá una ventana con la imagen de unos engranajes en movimiento. Si la aparta un poco en la
terminal donde escribió el comando podrá ver una salida como ésta:
5818 frames in 5.0 seconds = 1163.600 FPS
6715 frames in 5.0 seconds = 1343.000 FPS
6454 frames in 5.0 seconds = 1290.800 FPS
Siempre y cuando estos valores alcancen y/o superen los 1000 FPS, la tarjeta
gráfica estará usando la funcionalidad de aceleración 3D que lleva incorporada. La
aceleración gráfica de las tarjetas basadas en los chips nvidia o ati puede ser específicamente configurada en Guadalinex. Para ello utilice la receta que encontrará en la Guadapedia en la dirección
http://www.guadalinex.org/guadapedia/index.php/Receta:_Aceleraci%C3%B3n_gr%C3%A1fica_(Guadalinex_2004).
A continuación reproducimos la receta con pequeñas modificaciones.
3.2.5.1. Aceleración gráfica en Guadalinex
3.2.5.1.1. Introducción
La inversión en un nuevo ordenador para la casa suele ser muy costosa. Quizás la razón más importante
sea el ansia del consumidor por obtener los productos de última hornada. Como no hay ordenador sin ocio,
no hay ocio sin juegos, y la inercia del sector ha provocado que desde mediados de los 90 no se considere
un juego como tal si no incorpora 3D... se ha convertido en condición obligatoria la incorporación de una
tarjéta gráfica con aceleración 3D al ordenador personal.
En esta receta, se guía al usuario final para la configuración de los dos tipos de tarjetas gráficas (que
incorporan aceleración 3D) más extendidas del mercado:
68
Capítulo 3. Configuración de dispositivos
•
Tarjetas basadas en chipset nvidia
•
Tarjetas basadas en chipset ati
3.2.5.1.2. Desarrollo
Para probar la aceleración gráfica en Guadalinex, es condición indispensable haber instalado Guadalinex
2004 previamente en nuestro Disco Duro. Una vez hecho esto, y arrancado el sistema operativo, es necesario
insertar el CD de Guadalinex en la bandeja del CD/DVD lector. El siguiente objetivo ha de ser el icono
Equipo del escritorio, para, posteriormente, hacer doble click sobre el icono CD-ROM, y conseguir así,
montar el dispositivo y acceder a él. Finalizamos dirigiéndonos al directorio extras/paquetes dentro del
propio CD.
3.2.5.1.3. Configuración de tarjetas nvidia
En el directorio paquetes previamente citado (en el CD de Guadalinex), se puede observar la presencia
del paquete nvidia-glx-guadalinex_1.1-4_i386.deb Haremos doble click sobre él para instalar el
paquete (acto seguido se solicita la contraseña de administrador del equipo, que debemos facilitar). Una vez
hecho esto, sólo queda seguir las instrucciones del programa de instalación desarrollado por el equipo de
Guadalinex.
El citado paquete puede también instalarse con:
# apt-get install nvidia-glx-guadalinex
Si se necesita comprobar que la instalación de los controladores ha sido satisfactoria, podemos realizar
el siguiente test:
•
Lanzamos una terminal de usuario (/Aplicaciones/Configuración/Terminal)
•
Escribimos la instrucción glxgears y pulsamos Enter
•
Apartamos de la terminal la nueva ventana con engranajes que aparecerá.
•
Esperamos unos 20 segundos observando los valores que devuelve la aplicación en la terminal. Estos
valores podrán se de la forma:
618 frames in 5.0 seconds = 123.600 FPS
821 frames in 6.0 seconds = 136.833 FPS
660 frames in 5.0 seconds = 132.000 FPS
•
Siempre y cuando estos valores alcancen y/o superen los 1000 FPS, la tarjeta gráfica estará usando la
funcionalidad de aceleración 3D que lleva incorporada.
3.2.5.1.4. Configuración de tarjetas ati
En el directorio paquetes previamente citado (en el CD de Guadalinex), se puede observar la presencia
del paquete ati-guadalinex_4.3.0-3.9-3_i386.deb. Haremos doble click sobre él para instalar el
paquete (acto seguido se solicita la contraseña de administrador del equipo, que debemos facilitar). Una vez
hecho esto, sólo queda seguir las instrucciones del programa de instalación desarrollado por el equipo de
Guadalinex. El citado paquete puede también instalarse con:
# apt-get install ati-guadalinex
69
Capítulo 3. Configuración de dispositivos
Si se necesita comprobar que la instalación de los controladores ha sido satisfactoria, podremos realizar
el siguiente test:
•
Lanzamos una terminal de usuario (/Aplicaciones/Configuración/Terminal)
•
Escribimos la instrucción glxgears y pulsamos Enter
•
Apartamos de la terminal la nueva ventana con engranajes que aparecerá.
•
Esperamos unos 20 segundos observando los valores que devuelve la aplicación en la terminal. Estos
valores podrán ser de la forma:
618 frames in 5.0 seconds = 123.600 FPS
821 frames in 6.0 seconds = 136.833 FPS
660 frames in 5.0 seconds = 132.000 FPS
•
Siempre y cuando estos valores alcancen y/o superen los 1000 FPS, la tarjeta gráfica estará usando la
funcionalidad de aceleración 3D que lleva incorporada.
3.2.5.1.5. Casos especiales
Hay ocasiones en las que los controladores facilitados por el propio fabricante (estos son los controladores que ha empaquetado el equipo de desarrollo de Guadalinex) no dan soporte para ciertas tarjetas gráficas
comercializadas por ellos (parece que hay iniciativa para que esto cambie a corto plazo, pero sólo podemos
esperar), en cuyo caso, nuestro sistema gráfico no volvería a arrancar tras la instalación de estos drivers.
Como, evidentemente, desearemos restablecer el sistema a su estado original, para conseguirlo es necesario
ejecutar las siguientes órdenes:
•
Aparecerá en pantalla un símbolo de sistema en modo texto que solicitará login:. Aquí debemos escribir
root y presionar Enter.
•
Acto seguido se solicitará su contraseña de acceso. Debemos escribir la contraseña de administrador del
equipo y pulsar Enter.
•
•
CASO ATI: Por último, tendremos que escribir la orden dpkg -P ati-guadalinex &&
/etc/init.d/gdm restart (tal cual está aquí escrita, sin olvidar de ningún carácter especial).
•
CASO NVIDIA: Por último, tendremos que escribir la orden dpkg -P nvidia-glx-guadalinex
&& /etc/init.d/gdm restart (tal cual está aquí escrita, sin olvidar de ningún carácter especial).
En las siguientes secciones podrá comprobar algunas de las posibilidades que le ofrece el potente servidor
X Window.
3.2.6. Iniciar sesión como un nuevo usuario
GNU/Linux es un sistema multiusuario lo que significa que varios usuarios pueden estar usándolo simultáneamente. Sin cerrar su sesión gráfica actual usted puede abrir una nueva sesión gráfica con el mismo
o con diferente usuario. Para ello vaya al menú Aplicaciones−→Accesorios−→Inicio de sesión nuevo
. Esto abrirá una nueva pantalla de registro gráfico, regístrese y dispondrá del entorno de escritorio para su
trabajo habitual. Puede pasar de la sesión de un usuario a la del otro simplemente pulsando la combinación
70
Capítulo 3. Configuración de dispositivos
de teclas [Ctrl]+[Alt]+[F7] y [Ctrl]+[Alt]+[F8]. Si lo desea puede abrir otra nueva sesión, con lo que
tendría tres sesiones abiertas para el mismo o diferente usuario.
Para alternar entre ellas añada a las teclas mencionadas la combinación [Ctrl]+[Alt]+[F9]. Puede hacer
esto hasta con 6 sesiones diferentes.
Esto mismo puede hacerse también de otro modo. Para describir este procedimiento imaginamos la situación en que un único usuario ha abierto una sesión gráfica. Pulse ahora la combinación [Ctrl]+[Alt]+[F2].
Se le ofrecerá una pantalla de registro en modo texto pidiendo el login: Escriba su nombre de usuario y
contraseña (ojo al teclear la contraseña no verá nada, pues no tiene eco). Ahora escriba
$ startx -- :1
y se abrirá una nueva sesión gráfica. Puede alternar entre ellas del modo anteriormente descrito. Si todavía
quiere una sesión más pulse [Ctrl]+[Alt]+[F3] repita el procedimiento, y ahora escriba
$ startx -- :2
En un entorno multiusuario tal como el de un Centro TIC es conveniente que cierre su sesión antes
de abandonar la máquina. Para ello vaya a Acciones−→Terminar sesión. Pero si lo que desea es hacer
una pausa para continuar más tarde utilice Acciones−→Bloquear la pantalla, de este modo preservará la
confidencialidad de su trabajo. No se preocupe si alguien detrás de usted desea iniciar una sesión gráfica,
siempre puede utilizar el procedimiento recientemente descrito.
También pueden iniciarse nuevas sesiones gráficas sin necesidad de abandonar la sesión actual. Para ello
vaya a Aplicaciones−→Accesorios−→Nuevo acceso en una ventana anidada. Esto abrirá nuevas
sesiones gráficas en una ventana como si fuese un programa más de su entorno.
Nuevo acceso en ventana anidada
3.2.7. Ejecutar aplicaciones gráficas en una máquina remota
con SSH
Gracias a la potencia del servidor X Window podemos ejecutar aplicaciones situadas en una máquina
distinta a la nuestra, a la que llamaremos máquina remota.
Para los ejemplos suponemos una máquina remota en la dirección IP 192.168.1.7 y suponemos también que en esa máquina existe un usuario de nombre marlera. Suponemos también que su máquina (a la
que llamaremos máquina local) tiene la dirección IP 192.168.1.6
71
Capítulo 3. Configuración de dispositivos
3.2.7.1. Configuración de la máquina remota
En la máquina remota necesitamos que se esté ejecutando el demonio sshd. Por defecto Guadalinex 2004
instala tal demonio pero no lo configura adecuadamente. Así que los primero será ejecutar:
# dpkg-reconfigure ssh
Marcaremos las dos casillas. Ahora editamos el fichero /etc/ssh/sshd_config
# gedit /etc/ssh/sshd_config
y cambiamos la entrada X11Forwarding no para que sea X11Forwarding yes. Guardamos los cambios y reiniciamos el servicio con:
# /etc/init.d/ssh restart
La máquina remota ya está lista para recibir conexiones gráficas remotas. Ahora en nuestra máquina
local abrimos una terminal y escribimos
$ ssh -X [email protected]
Se nos pedirá el login y la contraseña. Los ponemos. Ahora simplemente escribimos el nombre del
binario que lanza la aplicación, por ejemplo
$ mozilla &
Ponemos el símbolo & para que la aplicación se lance en segundo plano y el terminal quede libre para
ejecutar otros comandos.
En pocos momentos, dependiendo de las características de la máquina y la velocidad de la red, verá
ejecutarse la aplicación Mozilla. ¿Cómo?, dirá usted, ¡pero si es el mismo mozilla que yo tengo instalado
en mi máquina! ¿no nos estará tomando el pelo? No, lejos de nosotros la intención. Examine por ejemplo
los marcadores de la aplicación y comprobará que no son sus marcadores sino los del usuario de la máquina
remota.
En realidad se está ejecutando el Mozilla de la máquina remota y poco importa que usted tenga o no
instalada la misma aplicación. Usted puede ejecutar las aplicaciones situadas en la máquina remota y no
juega nigún papel lo que usted tenga instalado en su sistema.
3.2.8. Abrir una sesión gráfica en una máquina remota son
SSH
Para este caso suponemos la misma configuración que en la sección anterior. En su máquina local abra
una terminal de texto con [Ctrl]+[Alt]+[F2]. Regístrese y escriba
$xinit -- :1
Se abrirá una terminal gráfica pero sólo eso. Su aspecto tal vez le sorprenda pero no se preocupe pronto
todo cambiará. Escriba ahora
$ xhost +
$ env
Tome nota del valor de la variable de entorno DISPLAY. Para el ejemplo supongamos que
DISPLAY=:1.0 escriba ahora
72
Capítulo 3. Configuración de dispositivos
$ ssh -Y [email protected]
Se le pedirá la contraseña, escríbala. Ponga ahora
$ export DISPLAY=192.168.1.6:1.0
$ gnome-sesion
Recuerde que 192.168.1.6 es la dirección IP de su máquina.
Verá ahora cómo se inicia una sesión gráfica de usuario en la máquina remota de modo transparente, para
los efectos es como si estuviese sentado delante de ella.
Usted estará pensando que todo el trabajo lo hace la máquina remota y se estará preguntando hasta dónde
puede aguantar si muchos usuarios inician sesión remota.
Permítamente que le diga que no todo el trabajo lo hace la máquina remota. La aplicación sí se está
ejecutando en ella y consumiendo por tanto recursos, pero su máquina también está trabajando y mucho. Ella
pone los recursos gráficos necesarios: teclado, monitor, ratón, esto es, los recursos controlados y aportados
por el servidor X.
La aplicación se ejecuta en remoto pero sus resultados se muestran en su máquina local. Así que desde
el punto de vista de las X la máquina remota actúa como cliente de su servidor gráfico. La máquina remota
es servidor de aplicaciones pero cliente X, su máquina es cliente de aplicaciones pero servidor X. Curiosa
paradoja lo que parecía un servidor es en realidad un cliente, dar y recibir son acciones recíprocas, en
GNU/Linux el orden aparente se subvierte.
3.2.9. Abrir una sesión gráfica en una máquina remota son
GDM
Existe todavía una forma más cómoda y fácil de abrir sesiones gráficas en máquinas remotas, sin tener
que conocer comandos, ni direcciones ip, ni configuraciones complicadas y sin necesidad de instalar software adicional. ¡Caramba haber empezado por ahí!. Ya sabe que los autores con cierto sadismo tienden a
torturarle, sufrido lector, con comandos y extraños nombres de fichero.
Todo ello lo podemos conseguir únicamente configurando adecuadamente GDM. GDM es un gestor de
sesiones gráficas X y fue escrito como un reemplazo de XDM. ¿Qué no sabe todavía qué es GDM? GDM
significa Gnome Display Manager, un programa de login gráfico. Es el programa que le aparece cada vez
que inicia una sesión en su máquina.12
3.2.9.1. Configuración de la máquina remota
Vaya a Aplicaciones−→Configuración−→Sistema−→Configuración de la pantalla de sesión. Vaya a la pestaña XDMCP y active la casilla Activar XDMCP. Esto es todo.
3.2.9.2. Inicio de sesión en la máquina local
Ahora en la máquina local cierre su sesión gráfica si la tiene abierta. En la pantalla GDM pulse en
Sistema. En la ventana emergente seleccione Ejecutar el selector XDMCP
73
Capítulo 3. Configuración de dispositivos
Selector XDMCP
Ahora se le mostrará una lista con todos las máquinas de su red que aceptan el inicio de sesiones gráficas
remotas. Seleccione la que desee e inice sesión en ella.
Existen otros modos más eficientes y seguros de iniciar sesiones gráficas en máquinas remotas sobre
todo si se hace a través de Internet. Una de estas aplicaciones es Freenx que nos permitirá iniciar sesiones remotas tanto en entornos Windows™ como en GNU/Linux, es decir con Windows ejecutándose
en la máquina local podremos iniciar una sesión remota de una máquina GNU/Linux. También podremos conectar desde Linux con un servidor Windows Terminal Server. Para ampliar información vaya a
http://www.wikilearning.com/que_es_freenx-wkccp-6865-2.htm
La siguiente es un receta que hemos tomado de la experiencia del IES Averroes. Personalmente no la
hemos probado.
3.2.9.3. Escritorio Remoto con VNC
Otra posibilidad de acceder remotamente a un ordenador de la red es la de usar VNC, un software
cliente/servidor que permite acceder remotamente a sesiones gráficas.
El primer paso para utilizar este software en Guadalinex es instalarlo ya que no viene incluido en la
distribución.
El paquete que debemos instalar irá en función del uso que pretendamos darle. Vamos a exponer algunas
posibilidades:
Si queremos un escritorio remoto podemos instalar el paquete vncserver o, mejor aún, una versión
mejorada del mismo TightVNC que comprime el tráfico de datos y alcanza mayor velocidad que el VNC estandar y es compatible con él. Para instalarlo debemos buscar con Synaptic el paquete tightvncserver
e instalarlo o, desde un terminal como root, ejecutar la instrucción
# apt-get install tightvncserver
La instalación debemos efectuarla tanto en el ordenador que actuará como servidor como en el que
actuará como cliente, a no ser que en éste dispongamos de otro cliente compatible distinto. Guadalinex
2004 incorpora un cliente de vnc en Aplicaciones−→Internet−→Remote Desktop.
VNC nos permitirá iniciar sesiones remotas de un modo similar a lo que ya hemos visto. Pero si lo
que queremos es controlar la sesión gráfica iniciada por un usuario en el ordenador remoto necesitamos
programas distintos. Esto puede ser muy útil en procesos de formación: el profesor está sentado delante de
74
Capítulo 3. Configuración de dispositivos
su ordenador y el alumno en el suyo. Ahora el profesor muestra al alumno cómo hacer algo y el alumno lo
ve en su propio ordenador. Al tiempo el profesor puede ver en todo momento qué está haciendo el alumno.13
Dos paquetes que permiten hacer esto son x11vnc y rfb. Aunque ambos programas son similares vamos
a describir el uso de rfb que admite una configuración gráfica y además cuando el servidor está funcionando
aparece una ventana en el escritorio del servidor, con lo que el usuario que está ante él sabe que su sesión
gráfica está siendo capturada, con lo cual se evita la intromisión en la intimidad del usuario.14
3.2.9.4. Instalación y uso de rfb
Para instalar rfb lo hacemos como siempre, lo buscamos con Synaptic y lo instalamos. Tras la instalación tendremos dos programas:
• x0rfbserver:
el servidor
• x0rfbviewer:
el cliente
El uso del visualizador es muy sencillo, en primer lugar ejecutamos el servidor en el ordenador
que queremos que actúe como servidor. Para ello debemos ejecutar el comando xorfbserver en
Acciones−→Ejecutar un programa o bien creando un nuevo lanzador. También podemos encontrarlos
en Menú Debian−→Aplicaciones−→Herramientas
Tras la ejecución aparecerá en el escritorio la ventana del programa. Haciendo clic con el botón derecho sobre la ventana podremos configurar algunas opciones. Lo hacemos y seleccionamos Properties
(Propiedades).
En la primera de las pestañas (Incomming Connections) podemos introducir una contraseña para que el
servidor acepte las conexiones y activar la casilla para acceder al teclado y al ratón desde el cliente.
Ahora nos centramos en el cliente. Para ello, en el ordenador cliente, tenemos que ejecutar el programa
x0rfbviewer ya sea desde Aplicaciones−→Ejecutar un programa o creando un lanzador.
Tras la ejecución aparecerá una ventana en la que sólo tendremos que introducir la ip del ordenador que
actúa como servidor. Una vez establecida la conexión podremos ver la sesión gráfica que esté ejecutándose
en el servidor.
Todo esto le da a usted una idea de las potencialidades del sistema X Window. Cuando redactábamos
estas páginas encontramos una interesante noticia en http://www.fxguide.com/press-337.html.
Como usted sabe las animaciones de la película Las crónicas de Narnia, a cargo de la empresa Rhythm &
Hues™, fueron creadas con un programa de animación en 3D basado en inteligencia artificial. Tal programa
es Massive Software.
Massive es usado por compañías líderes en la producción digital y los estudios de efectos especial tales
como Weta Digital™, The Mill™, Animal Logic™, Rhythm & Hues™ and Digital Domain™. En 2004,
Massive fue honrada con el el Premio de Ciencia e Ingeniería de la Academy of Motion Picture Arts and
Sciencies, y con el Premio de Innovación Técnica en 3D en Copenhage.
Si accede a la página de Massive (http://www.massivesoftware.com/requirements.html) podrá ver que
necesita para ejecutarse de RedHat 7.3, 9 o Fedora Core 2, todas ellas distribuciones GNU/Linux. Los
autores no puede evitar sonreir cuando alguien indignado hecha de menos en GNU/Linux aplicaciones
gráficas tan "potentes" como Corel Draw™.
75
Capítulo 3. Configuración de dispositivos
3.3. Configuración de la tarjeta de sonido
Normalmente este dispositivo debe instalarse correctamente. Sabrá que está correctamente instalado si
en el panel superior ve un icono en forma de altavoz y al hacer clic en él puede ampliar y disminuir el
volumen. Si está teniendo problemas debe probar algo de lo siguiente.
En esta sección vamos a tratar tres modos de configuración de la tarjeta de sonido.
3.3.1. Averiguar el modelo de nuestra tarjeta de sonido
El paso previo a la configuración de nuestra tarjeta de sonido sería comprobar el modelo. Para
comprobar el modelo de su tarjeta de sonido, puede utilizar cualquiera de los procedimientos que vimos
anteriormente para la tarjeta de vídeo. Puede utilizar hardinfo. Diríjase al Menú General de Gnome
(Aplicaciones−→Herramientas del sistema−→Información del sistema). Se abrirá una ventana
llamada System Information. Presione sobre la pestaña Devices y observe entre los dispositivos
reconocidos si aparece su tarjeta de sonido. Puede también tratar de detectarla con
# lspci | grep audio
Puede ocurrir que su tarjeta de sonido haya sido detectada pero no esté configurada. En esta situación
usted verá el icono en forma de altavoz en la barra de tareas pero al hacer clic sobre él y tratar de ampliar el
volumen verá que no responde. En este caso debe proceder a configurarla.
3.3.2. Configuración automática mediante alsaconf
Para comenzar el método de detección automática de alsaconf, debemos lanzar, en primer lugar, una
Terminal de Root.
Una vez hemos conseguido la terminal, tecleamos la instrucción alsaconf y pulsamos la tecla Enter.
A continuación, podremos comprobar cómo nos aparece una pantalla de bienvenida de la aplicación ALSA
CONFIGURATOR. Debemos presionar Enter para pasar a la autodetección. Una vez hecho esto, y finalizado
el proceso, se nos presentarán en pantalla aquellas tarjetas de sonido posiblemente detectadas en nuestro
sistema. Debemos seleccionar el modelo correspondiente a nuestra tarjeta de sonido, y presionar la tecla
Enter. Una vez hecho esto, ya tendremos audio en nuestro escritorio Gnome.
Detección con ALSA
76
Capítulo 3. Configuración de dispositivos
3.3.3. Configuración manual mediante modconf
En caso de que la autodetección de alsaconf haya resultado infructuosa, debemos proceder a la configuración manual de la tarjeta de sonido mediante modconf. Para ello, debemos acceder a una terminal
root y teclear la instrucción modconf y pulsamos la tecla Enter.
A continuación, se nos presentará un menú de selección, por el que tendremos que navegar manejando
las teclas con símbolos de dirección del teclado numérico (flechas) a través de las diferentes secciones
kernel/sound.
Una vez hemos alcanzado la sección citada, debemos proceder a la búsqueda de nuestra tarjeta de sonido,
la seleccionaremos y pulsaremos Enter en dos ocasiones (una para seleccionar, y la siguiente tras una
solicitud de información del sistema, que deberemos mantener vacía).
Ya configurada nuestra tarjeta de sonido, sólo tenemos que volver a la entrada Salir del menú, hasta dejar
la aplicación modconf. Y por último, cuando nos hemos percatado de que se ha cerrado correctamente la
aplicación modconf, podemos cerrar la terminal y estar tranquilos de que a partir de la próxima sesión,
mantendremos nuestra tarjeta de sonido configurada en el equipo.
Si todavía no ha conseguido configurar su tarjeta de sonido queda una solución avanzada. Trate de averiguar cuál es exactamente la marca y modelo de su fabricante, mirando la documentación de la tarjeta o
viendo cómo la ha detectado otro sistema operativo en el que funciona correctamente.
Intente los métodos anteriormente descritos para ver si existe un driver disponible para su tarjeta. Si no
existe mire en la página del fabricante o busque en Internet por si existiera un driver para su tarjeta. Si tiene
la fortuna de encontralo normalmente será en código fuente y deberá compilarlo e instalarlo en su sistema.
Habitualmente cuando se encuentra un driver así viene también con instrucciones para hacer esto. En el
útimo capítulo de este curso trataremos de introducirnos en la compilación e instalación de módulos.
3.4. El servicio de impresión
3.4.1. El sistema de impresión CUPS™
Tradicionalmente se han utilizado en Unix™ dos sistemas de impresión Berkeley Line Printer Daemon
(LPD) y el ATandT Line Printer creados en los años 70 para usar las impresoras matriciales de la época.
Más tarde, con la evolución de éstos periféricos incorporando las tecnologías láser o de chorro de tinta, estos
sistemas fueron adaptándose e incluyendo controladores que permitieran su uso en este tipo de impresoras,
aunque sin mejorar sustancialmente sus capacidades originales.
Importante: CUPS ha sido desarrollado por la empresa californiana Easy Software Products™
(http://www.easysw.com/) y toda la información sobre el mismo puede encontrarse en la dirección
http://www.cups.org
A finales de los años 90 surgieron diferentes iniciativas orientadas a la creación de un sistema estándar
de impresión, estableciéndose las especificaciones del protocolo IPP (Internet Printing Protocol) como una
extensión del HTTP (HyperText Transfer Protocol)en el que se basa la navegación por la Internet, con el
propósito de proporcionar servicios de impresión remota. CUPS™ (Common UNIX Printing System) es
software libre, distribuido conforme a los términos de la Licencia Pública General (GPL) y basado en este
77
Capítulo 3. Configuración de dispositivos
protocolo IPP, apareciendo su primera versión en octubre de 1999 con el objetivo de dotar de una solución
moderna, en materia de impresión, a los sistemas tipo Unix™.
Un ordenador cliente envía una petición al servidor CUPS. Esta demanda es recogida por el demoniocupsd y se ocupa de trasladarlos a la impresora que los convertirá en el documento impreso.
Este sistema de impresión está concebido como un servicio de red, incluso si Guadalinex está instalado
en un único ordenador, en este sentido, funciona como cualquier otro servicio, basado en la filosofía clienteservidor.
Normalmente este sistema se encuentra implementado en la instalación de Guadalinex y configurado
para que se inicie al arrancar el sistema, sin embargo podemos comprobar el estado de CUPS abriendo una
terminal Aplicaciones−→Herramientas del sistema−→Terminal y ejecutando la orden:
[grimaldos@ron:~]$ ps aux | grep cupsd
root
528 0.0 0.6 6304 3172 ?
grimaldos 2855 0.0 0.1 2032 684 pts/1
S
R
15:36
21:40
0:01 /usr/sbin/cupsd
0:00 grep cupsd
Recordemos que estamos haciendo una petición al sistema para que nos muestre todos los procesos (ps)
y filtramos (|) la salida de la orden (grep) para que nos muestre sólo aquellos que contengan la instrucción
cupsd. Este comando nos devuelve dos líneas, donde la primera es la que realmente nos informa de que
el demonio cupsd está en ejecución, ya que la segunda es el proceso correspondiente a nuestra propia
petición.
Pero, ¿qué hacer si cupsd no se está ejecutando? Pues tenemos que "levantar" el servicio de impresión,
bien utilizando el entorno gráfico o, directamente, ejecutando la orden:
[root@secre01:~]# /etc/init.d/cupsys start
3.4.2. Nada es lo que parece
No se trata de sembrar el desconcierto, simplemente queremos destacar que en Guadalinex, y por extensión en ningún sistema GNU/Linux, no debemos confundir el concepto de impresora con el objeto físico,
es decir, con una impresora real, al menos, no tiene por qué ser así.
En la mayoría de las ocasiones cuando nos referimos a una impresora o cuando enviamos un trabajo a
imprimir, en realidad deberíamos precisar que se trata de una cola de impresión configurada conforme a
unas características particulares establecidas por las necesidades de cada usuario. Tal vez un ejemmplo nos
ayude a explicar esta situación.
Supongamos una impresora de inyección de tinta con calidad fotográfica. Es este caso, deseamos configurarla correctamente, de modo que nos permita imprimir las fotos e ilustraciones con unos resultados
ciertamente vistosos. Sin embargo, ¿qué ocurre cuando necesitamos imprimir una o varias páginas de texto puro? Pues, seguramente la configuración con calidades altas no mejorará sensiblemente el aspecto de
nuestros textos impresos, tan sólo ocasionará un mayor gasto de tinta y, como consecuencia un despilfarro
que, aunque leve, no menos indeseable.
La solución pasa por definir distintas colas de impresión que el sistema asumirá como impresoras aunque se trate en realidad del mismo dispositivo físico. Podríamos definir una impresora, así entendida con
resoluciones altas, llamada foto por ejemplo, para enviar a ella los trabajos que requieran de una impresión
de calidad. Otra, llamada normal, para imprimir documentos a color, pero sin unas exigencias de nitidez
elevadas, por ejemplo, páginas de Internet. Finalmente, una tercera impresora, borrador, a la que envia-
78
Capítulo 3. Configuración de dispositivos
remos los trabajos que sólo contengan texto puro, configurada con una calidad económica. De esta forma,
el sistema se comporta como si tuviésemos tres impresoras distintas cuando en realidad se trata del mismo
dispositivo configurado adecuadamente para cada necesidad.
Por no mencionar la posibilidadde auditar el uso de la impresora o establecer distintos niveles de acceso
y determinar qué usuarios pueden utilizar cada recurso, por ejemplo, que el departamento de contabilidad
no pueda imprimir sus balances en la "Laser Color" reservada al departaménto de márketing, o que pueda
hacerlo sólo el responsable de finanzas para imprimir el crecimiento económico en unos colores vistosos.
Evidentemente esta característica del sistema es totalmente opcional, quedando a criterio del usuario el
uso que hace de ella. Sin embargo, es conveniente aclarar que cuando decimos configurar la impresora,
vamos a configurar realmente una cola de impresión.
3.4.3. Instalación de la impresora con asistente
El uso más básico del recurso de impresión proporcionado por Guadalinex consiste en tener un dispositivo físico directamente conectado al equipo e integrarlo en el sistema, de manera que podamos obtener
documentos impresos desde cualquier aplicación con esta capacidad.
Cuando nuestras necesidades no pasan de ahí, será suficiente invocar la ayuda del asistente e ir cumplimentando las sucesivas pantallas que obtenemos.En este caso, el proceso es bastante sencillo.
Asegúrese de que la impresora esté encendida y conectada correctamente al
ordenador. Para abrir el asistente de instalación de impresoras vamos al menú
Aplicaciones−→Configuración−→Sistema−→Impresoras. Se nos pedirá la contraseña de
administrador, tras ponerla, se abrirá el panel de control de impresoras
Ventana inicial del asistente para añadir impresoras
79
Capítulo 3. Configuración de dispositivos
Añadir impresora
Del menú Editar seleccionamos Add printer.
Inicio del asistente
Se iniciará así el asistente para la instalación de impresoras Pulse Adelante y se le mostrará una ventana
con todas las impresoras que hayan sido detectadas por el sistema.
Autodetección del puerto de impresión
En la imagen podemos ver cómo el sistema ha detectado dos impresoras: una está en el puerto paralelo y se
llama Xerox DocuPrint P8e; la otra está en un puerto USB y es una Samsung ML-1510. Vamos a instalar
ésta última. Pulsamos el botón Adelante.
80
Capítulo 3. Configuración de dispositivos
Definición de la cola de impresión
El sistema habrá identificado correctamente su impresora, puede dejar todo tal como está y pulsar Adelante.
Pero si lo desea puede cambiar el campo Queue Name (Nombre de la cola) poniendo aquí el nombre con
el que se conocerá la impresora e introducir una descripción para ella.
Elección de la marca y modelo
A continuación deberá seleccionar el controlador (driver) apropiado para su modelo y marca de impresora, en nuestro caso elegimos Samsung, que es la marca de nuestra impresora, y ML-1510 que es el
modelo.
Importante: Aunque Guadalinex tiene soporte para una gran cantidad de impresoras puede ocurrir
que la suya no aparezca listada. En ese caso pueden suceder dos cosas: que su modelo y marca
de impresora sea compatible con otras de las que sí están listadas; o que necesite descargar un
driver específico, en este último caso diríjase a http://www.linuxprinting.org, y localice allí su driver.
Si su impresora es Postscript, lo cual no es frecuente si se trata de una impresora de bajo coste,
consulte no obstante el manual de la impresora, no necesitará descargar ningún driver, bastará con
disponer del fichero .ppd que suele venir en el cd de instalación facilitado por el fabricante. Más adelante
precisaremos un poco más el camino a seguir en esta situación.
81
Capítulo 3. Configuración de dispositivos
Elección del driver
Una vez seleccionado el modelo y marca se le ofrecerán los drivers disponibles para ese modelo, habitualmente elegiremos el recomendado (recommended) y pulsaremos Adelante.
La instalación está casi lista. Pulse ahora el botón Aplicar para finalizar la instalación.
Finalización del asistente
Regresamos así al Panel de control de impresoras, donde se nos mostrarán las impresoras instaladas y
cuál de ellas es la predeterminada (default queue)
82
Capítulo 3. Configuración de dispositivos
Impresoras instaladas
Si tiene varias impresoras instaladas podrá elegir cuál de ellas se usará por defecto simplemente seleccionándola y eligiendo Make Default desde el menú Configuración. Para configurar las propiedades de
la impresora selecciónela y vaya al menú Configuración−→Printer Options. Las opciones disponibles
dependerán de la marca y modelo de su impresora.
Opciones de la cola de impresión
Una misma impresora física puede instalarse más de una vez con distintos nombres, como ya explicamos
en una sección anterior. Pues bien, para instalar la misma impresora física dos veces, con diferentes configuraciones de impresión, bastará con poner nombres distintos (en el campo Queue Name) cuando se le pida,
y elegir luego las opciones apropiadas. De este modo podrá imprimir cómodamente desde los programas
sin tener que estar cambiando continuamente las opciones de impresión, sólo tendrá que seleccionar la cola
de impresión adecuada.
Posteriormente podrá controlar las impresoras, por ejemplo parar trabajos o cancelarlos, desde el panel
de control de impresoras (Aplicaciones−→Configuración−→Sistema−→Impresoras) haciendo doble
clic en el icono que representa a la impresora.
3.4.4. Instalación de la impresora con el navegador
Otra forma de añadir una impresora15 al sistema es utilizando un navegador. Para ello basta apuntar a
83
Capítulo 3. Configuración de dispositivos
nuestro propio equipo lanzando la petición al puerto 631, para ello, escribiremos en la barra de direcciones:
http://localhost:631
Pantalla inicial del servidor CUPS
A través de esta interfaz web podremos realizar el proceso de añadir una nueva impresora y/o controlar
las existentes. Este proceso lo detallaremos en una sección posterior dedicada a la impresión en red.
3.4.5. ¿Qué hacer si mi impresora no está listada?
El soporte para dispositivos de impresión bajo GNU/Linux no suele ofrecer demasiados contratiempos,
normalmente, la mayoría de las impresoras se encuentran plenamente operativas o en un estado de desarrollo de drivers específicos bastante avanzado. Tal vez, los últimos modelos todo-en-uno multifunción gozan
de un soporte más precario o alguna de sus funcionalidades no se encuentra totalmente operativa a consecuencia de la imposibilidad de facilitar drivers por parte de los fabricantes con acuerdos en exclusiva con
Microsoft™. Hemos, por tanto, de tener presente esta circunstancia a la hora de elegir un nuevo producto
y procurar que cumpla todos los estándares para asegurarnos que estará plenamente soportado en cualquier
plataforma.
En cualquier caso, esté nuestra impresora soportada o no, es conveniente siempre visitar LinuxPrinting.org (http://www.linuxprinting.org), el lugar donde se centralizan todos los recursos de impresión bajo
GNU/Linux. Allí podremos consultar en su base de datos (http://www.linuxprinting.org/printer_list.cgi) si
nuestro dispositivo funcionará correctamente, qué driver debemos elegir, así como, las recomendaciones
para la instalación y puesta a punto de la impresora.
Importante: Suele ocurrir en muchas ocasiones que los fabricantes comercializan distintos modelos de
impresora con el mismo soporte físico.GNU/Linux les hará funcionar a todas con el mismo controlador y
extraerá, por tanto, el máximo rendimiento, sin importar el modelo concreto, siempre funcionarán igual
que el más alto de la gama.
En el caso de no encontrar nuestra impresora en la lista, ya sea del asistente o de la configuración
mediante el navegador, consultaremos la base de impresoras citada anteriormente y distinguiremos dos
situaciones:
•
Impresora PostScript™. En este caso no hay ningún problema, este tipo de impresoras
funcionan con un fichero .ppd que podemos obtener del disco suministrado con el aparato,
descargar de Linuxprinting.org (http://www.linuxprinting.org) o, incluso de la web de Adobe
(http://www.adobe.com/products/printerdrivers/) que mantiene una extensa colección de
archivos PPD para diferentes impresoras. Una vez obtenido, bastará copiarlo a la carpeta
84
Capítulo 3. Configuración de dispositivos
/usr/share/cups/model/, reiniciar el servicio /etc/init.d/cupsys restart y listo. Nuestra
impresora ya está preparada para funcionar a pleno rendimiento.
•
Impresora no PostScript™. En este caso, consultaremos en la base de datos
(http://www.linuxprinting.org/printer_list.cgi) de Linuxprinting.org (http://www.linuxprinting.org) para
comprobar si está totalmente soportada y qué controlador es necesario. En caso de existir el driver, lo
descargaremos e instalaremos siguiendo las indicaciones específicas de cada modelo. Puede ocurrir que
el controlador se encuentre "empaquetado" en un conjunto de drivers junto al de otros modelos, por
ejemplo, gimp-print, en cuyo caso, bastará con instalar el paquete gimp-print-cups
3.5. La impresión en red
Evidentemente no pretendemos desarrollar este apartado pensando en las necesidades de impresión de
una red corporativa, ni siquiera de pequeño tamaño. La solución y el mantenimiento de este tipo de tareas
complejas no están al alcance de nuestras capacidades, lamentablemente. En cambio, el hecho de compartir
impresora para varios equipos sí es cada vez más frecuente, ya sea en el ámbito de una pequeña red local o
incluso en alguna instalación doméstica.
La impresora, como recurso de red, proporciona importantes ventajas y un considerable ahorro, tanto
en equipos como en mantenimiento, por ello, es interesante aprovechar las posibilidades que nos brinda
CUPS pues, aunque está diseñado para proporcionar soluciones avanzadas a grandes instalaciones, podemos
aprovechar sus capacidades para nuestras necesidades domésticas.
3.5.1. Configuración del servidor
Entenderemos como servidor en este contexto, un ordenador que posee una/s impresora/s configuradas16
y CUPS instalado y ejecutándose en él.
Las
directivas
para
el
comportamiento
como
servidor
se
encuentran
en
el
fichero
/etc/cups/cupsd.conf y su manejo es muy similar al fichero de configuración del servidor web
Apache. En condiciones normales no será necesaria su modificación pues los servicios de impresión
locales funcionarán perfectamente, tan sólo ajustaremos aquellos que afectan a los accesos vía red.
Importante: Como en toda tarea de administración crítica tomaremos la precaución de realizar
una copia de seguridad del fichero para prevenir algún desastre: #cp /etc/cups/cupsd.conf
/etc/cups/cupsd.conf.orig
La/s impresora/s configuradas serán las que podamos compartir con el resto de usuarios de la red, en
este sentido podemos decidir si utilizamos las del sistema o definimos nuevas colas con el propósito de
utilizarlas como recurso de red.
3.5.1.1. El fichero cupsd.conf
Como es habitual en los ficheros de configuración las entradas precedidas por el carácter # no son tenidas
en cuenta por la aplicación y se utilizan para reseñar comentarios que permitan una mejor comprensión de
cada una de las directivas. De la misma forma, es una buena costumbre, cada vez que modifiquemos alguna
entrada, colocar un comentario acerca de la modificación.
Todas las directivas de este fichero están agrupadas por secciones. Comentaremos sólo algunas de ellas,
sobre todo las decisivas a la hora de proporcionar servicio de impresión remota.
85
Capítulo 3. Configuración de dispositivos
3.5.1.1.1. Server Identity
Aquí se configura el nombre del servidor y la cuenta de correo del administrador para que los clientes le
puedan comunicar problemas en la impresión.
#ServerName equipo.dominio.com
#ServerAdmin [email protected]
3.5.1.1.2. Server Options
Diversas características como la ubicación del fichero de registro, directorio de datos, codificación de
caracteres, idioma, directorio de documentación, nivel de registro de errores, mantener copia de los trabajos,
etc.
######## Server Options
########
#AccessLog /var/log/cups/access_log
#Classification classified
#Classification confidential
#Classification secret
#Classification topsecret
#Classification unclassified
#
# The default is off.
ClassifyOverride off
#
# DataDir: the root directory for the CUPS data files.
# By default "/usr/share/cups".
DataDir /usr/share/cups
# DefaultCharset: the default character set to use. If not specified,
# defaults to "utf-8". Note that this can also be overridden in
# HTML documents...
DefaultCharset iso-8859-1
# DefaultLanguage: the default language if not specified by the browser.
# If not specified, the current locale is used.
DefaultLanguage es
# DocumentRoot: the root directory for HTTP documents that are served.
# By default "/usr/share/cups/doc-root".
DocumentRoot /usr/share/cups/doc-root
# ErrorLog: the error log file; if this does not start with a leading /
# then it is assumed to be relative to ServerRoot. By default set to
# "/var/log/cups/error_log"
#
ErrorLog /var/log/cups/error_log
86
Capítulo 3. Configuración de dispositivos
#
#
#
#
FileDevice: determines whether the scheduler will allow new printers
to be added using device URIs of the form "file:/foo/bar". The default
is not to allow file devices due to the potential security vulnerability
and due to the fact that file devices do not support raw printing.
FileDevice No
# FontPath: the path to locate all font files (currently only for pstoraster)
# By default "/usr/share/cups/fonts".
FontPath /usr/share/cups/fonts
# LogLevel: controls the number of messages logged to the ErrorLog
# file and can be one of the following:
#
#
debug2 Log everything.
#
debug Log almost everything.
#
info
Log all requests and state changes.
#
warn
Log errors and warnings.
#
error
Log only errors.
#
none
Log nothing.
#
LogLevel info
# MaxLogSize: controls the maximum size of each log file before they are
# rotated. Defaults to 1048576 (1MB). Set to 0 to disable log rotating.
MaxLogSize 0
# PageLog: the page log file; if this does not start with a leading /
# then it is assumed to be relative to ServerRoot. By default set to
# "/var/log/cups/page_log"
PageLog /var/log/cups/page_log
# PreserveJobHistory: whether or not to preserve the job history after a
# job is completed, cancelled, or stopped. Default is Yes.
#
PreserveJobHistory Yes
# PreserveJobFiles: whether or not to preserve the job files after a
# job is completed, cancelled, or stopped. Default is No.
PreserveJobFiles No
# AutoPurgeJobs: automatically purge jobs when not needed for quotas.
# Default is No.
AutoPurgeJobs No
# MaxCopies: maximum number of copies that a user can request. Default is
# 100.
MaxCopies 100
# MaxJobs: maximum number of jobs to keep in memory (active and completed.)
# Default is 500; the value 0 is used for no limit.
MaxJobs 500
# MaxJobsPerPrinter: maximum number of active jobs per printer. The default
# is 0 for no limit.
MaxJobsPerPrinter 0
87
Capítulo 3. Configuración de dispositivos
# MaxJobsPerUser: maximum number of active jobs per user. The default
# is 0 for no limit.
MaxJobsPerUser 0
#
# MaxPrinterHistory: controls the maximum number of history collections
# in the printer-state-history attribute. Set to 0 to disable history
# data.
#
MaxPrinterHistory 10
# Printcap: the name of the printcap file. Default is /etc/printcap.
# Leave blank to disable printcap file generation.
#
Printcap /var/run/cups/printcap
#
# PrintcapFormat: the format of the printcap file, currently either
# BSD or Solaris. The default is "BSD".
#
#PrintcapFormat BSD
#PrintcapFormat Solaris
# RequestRoot: the directory where request files are stored.
# By default "/var/spool/cups".
#
RequestRoot /var/spool/cups
# RemoteRoot: the name of the user assigned to unauthenticated accesses
# from remote systems. By default "remroot".
#
#RemoteRoot remroot
# ServerBin: the root directory for the scheduler executables.
# By default "/usr/lib/cups".
ServerBin /usr/lib/cups
# ServerRoot: the root directory for the scheduler.
# By default "/etc/cups".
#
ServerRoot /etc/cups
Como puede observarse, el fichero de configuración está plagado de comentarios (aunque en inglés) que
describen el comportamiento de cada directiva afectando al funcionamiento general de CUPS, en cambio,
las opciones por defecto funcionarán correctamente y no será necesario realizar ningún ajuste, salvo los
relativos a permitir el acceso a los recursos, para implementar el servicio de impresión a través de la red.
88
Capítulo 3. Configuración de dispositivos
3.5.1.1.3. Encryption Support
Si deseamos que las comunicaciones entre el servidor y los clientes viajes cifradas, aquí le indicaremos
al CUPS dónde se encuentran el certificado y la clave del servidor respectivamente.
#ServerCertificate /etc/cups/ssl/server.crt
#ServerKey /etc/cups/ssl/server.key
3.5.1.1.4. Filter Option
El servidor CUPS se inicia al arrancar el ordenador con privilegios de root, en cambio, una vez iniciado
asume la identidad de un usuario y grupo del sistema. Es aquí donde establecemos ésta. En los sistemas
derivados de Red Hat el usuario suele ser lp y el grupo sys, en cambio, en los derivados de Debian, como
Guadalinex, la identidad por defecto es:
User lp
Group lpadmin
3.5.1.1.5. Network Options
Esta es una de las secciones donde modificaremos alguna de las directivas para un correcto funcionamiento del servicio de impresión para clientes de red.
Para una configuración mínima que implante este servicio sin demasiadas exigencias, no será necesario
tocar demasiadas entradas.
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
#
Ports/addresses that we listen to. The default port 631 is reserved
for the Internet Printing Protocol (IPP) and is what we use here.
You can have multiple Port/Listen lines to listen to more than one
port or address, or to restrict access:
Port 80
Port 631
Listen hostname
Listen hostname:80
Listen hostname:631
Listen 1.2.3.4
Listen 1.2.3.4:631
NOTE: Unfortunately, most web browsers don’t support TLS or HTTP Upgrades
for encryption. If you want to support web-based encryption you’ll
probably need to listen on port 443 (the "https" port...)
#Port 80
#Port 443
Port 631
Esta parte nos permite establecer a quién y/o dónde escuchará peticiones el "demonio" cupsd. Por defecto
viene establecido el puerto 631, reservado inicialmente para las transacciones del protocolo IPP
89
Capítulo 3. Configuración de dispositivos
Se pueden establecer varias directivas, basadas en el puerto y/o basadas en la procedencia, por ejemplo,
si queremos limitar el acceso a CUPS exclusivamente a nuestra máquina local estableceremos una única
línea activa con la entrada:
Listen 127.0.0.1:631
En esta sección controlamos otros comportamientos generales que afectan a la operativa de CUPS como
el trabajo con nombres de máquina totalmente cualificados, el máximo de clientes simultáneos, el de peticiones por equipo, el tamaño máximo de los trabajos de impresión o el tiempo de espera para atender las
peticiones:
#HostNameLookups On
#MaxClients 100
#MaxClientsPerHost 0
#MaxRequestSize 0
#Timeout 300
3.5.1.1.6. Browsing Options
El comportamiento predeterminado de CUPS es difundir las impresoras a través de la red, de manera
que los clientes detecten los recursos compartidos automáticamente.
En esta sección estableceremos las características de este comportamiento indicando si deseamos esta
difusión, el protocolo a utilizar y la dirección de multidifusión:
#Browsing On
# BrowseProtocols: which protocols to use for browsing. Can be
# any of the following separated by whitespace and/or commas:
#
#
all - Use all supported protocols.
#
cups - Use the CUPS browse protocol.
#
slp - Use the SLPv2 protocol.
#BrowseProtocols cups
#BrowseAddress x.y.z.255
#BrowseAddress x.y.255.255
#BrowseAddress x.255.255.255
#BrowseAddress 255.255.255.255
#BrowseAddress @LOCAL
#BrowseAddress @IF(name)
3.5.1.1.7. Security Options
En este lugar radica verdaderamente la posibilidad de establecer los niveles de acceso a los diferentes
recursos proporcionados por CUPS y afinar, combinando las distintas directivas, para conseguir un rendimiento óptimo y seguro de este servicio.
Para clarificar algo el significado de algunas directivas quizás sea necesario conocer con precisión algunos términos utilizados en esta sección:
classes. El concepto de clase en CUPS es una generalización de la idea de impresora, puede ser entendido
como un conjunto de impresoras. Por ejemplo la clase laser puede entenderse como un grupo de impresoras láser entre las que CUPS distribuirá el trabajo según su nivel de ocupación para optimizar la tarea
90
Capítulo 3. Configuración de dispositivos
de impresión. Evidentemente este recurso está diseñando para su implementación en instalaciones con un
elevado nivel de exigencia.
jobs. Todos los trabajos aceptados por el "demonio" cupsd
printers. Todas las impresoras definidas en el sistema. En este sentido printer/laserHP designaría a una
impresora del mismo de nombre laserHP
/. Todos los servicios proporcionados por CUPS y, por consiguiente, la posibilidad de acceso a configuración
de los mismos.
admin. Todas las tareas de configuración de CUPS
AuthType. Tipo de autentificación para el acceso a un determinado recurso.
•
none. Ninguna. Acceso anónimo.
•
basic. Modelo basado en la pareja "usuario" y "contraseña".
•
digest. También basado en el "usario" y "contraseña" pero éstas viajan cifradas hasta el servidor.
AuthClass. Nivel de autentificación requerido según el tipo establecido en la directiva anterior. Los valores
aceptados son:
•
Anonymous. Ninguna. No es necesaria autentificación. Es el valor por defecto.
•
User. Requiere "usuario" y "contraseña".
•
System. Es necesario que el usuario proporcionado pertenezca al grupo del sistema sys
•
Group. Con el mismo sentido que el anterior, sólo que ahora es necesario que el usuario proporcionado
pertenezca al grupo establecido en la directiva AuthGroupName
Order. Orden secuencial en el que el sistema procesa las directivasallow y deny
Allow From / Deny From. Permite/Deniega el acceso desde ciertos equipos, dominios, etc.
3.5.1.2. Ejemplos de configuración
El fichero /etc/cups/cupsd.conf es suficientemente autoexplicativo. Vamos a indicar, sin embargo,
algunos ejemplos prácticos para una configuración sin demasiadas pretensiones. En todos ellos suponemos
que este fichero permanece con las directivas por defecto y mencionaremos aquellas que hemos de cambiar
para ajustar su comportamiento.
3.5.1.2.1. Compartir todas las impresoras
Para que CUPS ofrezca la posibilidad de instalar todas las impresoras configuradas en cualquier máquina
cliente que pueda comunicarse con él a través del puerto 631, será suficiente con establecer una entrada,
como la siguiente:
<Location /printers>
</Location>
En este caso CUPS asumiría los valores por defecto que son permitir el acceso anónimo al recurso
printers.
91
Capítulo 3. Configuración de dispositivos
3.5.1.2.2. Compartir una determinada impresora
Si queremos compartir una impresora que tengamos instalada de nombre, por ejemplo p8ered, la entrada
sería ahora:
<Location /printers/p8ered>
</Location>
Si este recurso queremos que esté disponible exlcusivamente para una determinada máquina de nuestra
red, la entrada sería:
<Location /printers/p8ered>
Order Deny,Allow
Deny From All
Allow From 192.168.1.12
</Location>
3.5.1.2.3. Administrar CUPS en remoto
En muchas ocasiones, CUPS se instala en un viejo equipo preparado para el uso exclusivo de servicios
de impresión y puede estar ubicado físicamente en un lugar alejado de nuestro puesto de trabajo habitual.
Si deseamos tener la posibilidad de acceder a la administración del servidor CUPS desde una máquina
diferente deberíamos configurar las entradas:
<Location />
#Permitimos el acceso a la raíz de CUPS
#sólo a la máquina local y a la IP 192.168.1.12
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 192.168.1.12
</Location>
<Location /admin>
#Autentificación básica basada en usuario y contraseña
AuthType Basic
AuthClass User
#Permitimos el acceso a la administración de CUPS
#sólo a la máquina local y a la IP 192.168.1.12
Order Deny,Allow
Deny From All
Allow From 127.0.0.1
Allow From 192.168.1.12
</Location>
Por último, indicar que es necesario, para que los cambios en este fichero tengan efecto, reiniciar el
servicio de impresión. Para ello bastará con ejecutar:
[root@ron~]# /etc/init.d/cupsys restart
92
Capítulo 3. Configuración de dispositivos
3.5.1.3. Una triste alegría
Todas las tareas de administración, y sobre todo aquellas que afectan a situaciones críticas del sistema
deben realizarse como norma general prescindiendo del entorno gráfico y accediendo directamente a los
ficheros de configuración. De esta forma no estaremos a merced de un comportamiento anómalo de la
herramienta gráfica que supone, en ocasiones, un verdadero rompecabezas a la hora de detectar fallos en
algún servicio.
Siempre que utilizamos una herramienta gráfica para cualuqier tarea, estamos incorporando un elemento
más a nuestra interacción con el sistema y, por tanto, incrementamos las posibilidades de error. En este caso,
Guadalinex dispone de una herramienta gráfica para configurar CUPS llamada cupsdconf que podemos
invocar desde cualquier terminal gráfica de root.
Esta herramienta es parte del paquete de administración del entorno KDE y necesita, por tanto, las
librerías gráficas de este escritorio que están presentes en Guadalinex para que pueda ejecutarse K3b. Sería,
en un principio la buena noticia, contar con un aliado que hiciese más amigable la interacción con el servidor
CUPS.
Si invocamos a esta aplicación desde una terminal gráfica como usuario sin privilegios, nos solicitará las
claves de administración, bien del "root" o del usuario con acceso a la configuración de CUPS que podamos
haber establecido en el fichero /etc/cups/cupsd.conf, según hemos indicado con anterioridad.
Autentificación
Una vez registrados correctamente accedemos a una pantalla de bienvenida en castellano acompañada de
un panel lateral donde se nos permitirá configurar cada uno de los servicios de CUPS siguiendo la estructura
de secciones del fichero cupsd.conf reseñadas en los apartados anteriores.
93
Capítulo 3. Configuración de dispositivos
Pantalla de bienvenida
A través de la pestaña de Seguridad podemos establecer las directrices para compartir los recursos de
impresión o habilitar la configuración remota:
Seguridad
En la "caja" inferior del centro de la ventana aparecen los distintos servicios y una botonera para añadir
nuevos elementos o establecer privilegios de acceso.
Compartir recursos
Esta podría ser una magnífica noticia, puesto que contamos con un aliado para "suavizar" nuestra interacción con el sistema, sin embargo, esta herramienta no se comporta todo lo bien que sería deseable, lo que
convierte en "triste" la alegría de este descubrimiento.
Por alguna extraña razón, si configuramos CUPS con esta herramienta funciona correctamente al principio, pero no podemos reiniciar el servicio de impresión posteriormente no tenemos acceso a la administra-
94
Capítulo 3. Configuración de dispositivos
ción del mismo para corregir algún defecto de configuración, de modo que nos vemos obligados a volver al
estado inicial del fichero cupsd.conf y establecer las directivas manualmente. Por lo tanto, si está interesado en profundizar en el uso de esta herramienta y averiguar la causa de su inestabilidad, le recomendamos
encarecidamente que efectúe una copia de seguridad del fichero original ya que sobreescribe su contenido.
3.5.2. Configuración del cliente
CUPS también funciona como cliente del servicio de impresión y guarda sus parámetros de configuración
en el fichero /etc/cups/client.conf, sin embargo, no será necesario efectuar ningún cambio en este
fichero en la mayoría de las ocasiones pues todo funcionará correctamente con sus valores por defecto. Sólo
tendremos que añadir una impresora al sistema como si de una local se tratase. Lo vemos en detalle.
3.5.2.1. El fichero client.conf
Este fichero no necesita modificaciones, citaremos únicamente las directivas que contiene y su significado.
La entrada ServerName nos permite indicar el nombre (o la dirección IP) de nuestro servidor de impresión lo que ocasionará que los trabajos se almacenen en él, en lugar de hacerlo en el directorio de spool de
la máquina local.
#ServerName gutemberg.dominio.com
La directiva Encryption nos permite decidir si usaremos algún tipo de cifrado en las comunicaciones
con el servidor, podríamos establecer como valores posibles:
Always. Para usar siempre cifrado de tipo SSL.
Never. No usar nunca cifrado.
Required. Para usar cifrado de tipo TLS
IfRequested. Para usar cifrado únicamente cuando lo pida el servidor. Es la opción por defecto.
#Encryption
#Encryption
#Encryption
#Encryption
Always
Never
Required
IfRequested
3.5.2.2. Añadir una impresora de red
El procedimiento para configurar una impresora de red es totalmente análogo al seguido para las impresoras locales, tan sólo varía el parámetro relativo al puerto de conexión. Veamos en detalle este procedimiento
utilizando el navegador y nos servirá como método alternativo al uso de asistente.
Apuntamos con el navegador a la máquina local en en puerto 631 tecleando en la barra de dirección
http://localhost:631
95
Capítulo 3. Configuración de dispositivos
Pantalla inicial de CUPS
Pulsando en el enlace Administración lógicamente nos solicita la contraseña de root ya que accederemos
a dispositivos físicos del sistema.
Pantalla de registro
Una vez registrados convenientemente y en el menú de administración pulsaremos sobre el botón Añadir
impresora o Add Printer.
Nueva impresora
En este formulario introduciremos el nombre17, obligatoriamente y dos campos opcionales para indicar
la ubicación física y una descripción del dispositivo
Tipo de conexión
96
Capítulo 3. Configuración de dispositivos
En el menú emergente de esta ventana establecemos el tipo de conexión, en este caso ipp, si se trata de
una impresora local, aquí estableceríamos el bus correspondiente.
Dirección de la impresora
Aquí le indicamos la forma de localizar la impresora. En este ejemplo, se alcanza a través de
ipp://192.168.1.48:631/printers/p8ered, es decir, en la máquina con IP 192.168.1.48 hay una
impresora configurada y compartida, con el nombre p8ered que aceptará las peticiones de impresión.
Fabricante
Comienza el proceso para establecer el driver, seleccionando el fabricante de la impresora.
Modelo de impresora
Finalmente, fijamos el controlador concreto según el modelo de impresora.
97
Capítulo 3. Configuración de dispositivos
Impresora añadida
Esta tranquilizadora pantalla nos informa que el proceso ha concluido correctamente.
Nueva impresora
Pulsamos ahora sobre Configure Printer para establecer el comportamiento y las características concretas de impresión. Recordemos que se pueden definir distintas calidades de impresión asociadas a un mismo
dispositivo.
Página de prueba
Para concluir enviamos una página de prueba y así nos aseguramos que todo está correctamente configurado.
98
Capítulo 3. Configuración de dispositivos
Test Page
3.6. Accediendo al escáner
Estos dispositivos de captura de imágenes pueden encontrarse con frecuencia en las instalaciones domésticas. El abaratamiento paulatino de su coste junto al inusual aumento de prestaciones son elementos
que explican esta evolución.
Integrar este periférico en Guadalinex es una tarea bastante sencilla, sin embargo hemos de insistir en
los problemas derivados de los componentes no compatibles por no cumplir los estándares internacionales
debido, en la mayor parte de los casos, a los acuerdos con Microsoft™ y en otros a la comercialización de
pseudodispositivos de bajo precio adaptados exclusivamente al funcionamiento con cierto sistema operativo
y con una funcionalidad limitada como consecuencia de su emulación por software.
También aquí nos encontramos con el caso de distintos fabricantes que comercializan una serie de modelos utilizando el mismo chipset. En estos casos el controlador será el mismo para todos ellos y funcionarán
en GNU/Linux con el máximo de prestaciones que permita el más alto de la gama.
3.6.1. ¿Está mi escáner soportado?
Esta es la primera cuestión que nos planteamo cuando tratamos de utilizar el escáner bajo Guadalinex.
A diferencia de las impresoras, aquí influye bastante tanto el tipo de conexión como el chipset concreto que
incorpore el dispositivo, incluso el mismo modelo con distinta interfaz de conexión, puede que funcione
correctamente el tipo USB y no estar soportado el que se conecta mediante el puerto paralelo.
En cualquier caso, para salir de dudas, miraremos primero en la página de SANE (http://www.saneproject.org/), donde se centraliza todo lo relativo al funcionamiento de los escáneres bajo GNU/Linux,
concretamente en http://www.sane-project.org/sane-supported-devices.html tenemos una relación completa, clasificada por fabricantes y por controlador, con el driver y las indicaciones pertinentes para hacer
funcionar cada modelo de escáner.
Básicamente podríamos decir que si se trata de un modelo con conexión SCSI, seguramente estará soportado y no tendrá ningún problema para su configuración y uso en Guadalinex, al igual que la mayoría
de escáneres con conexión USB. Actualmente los fabricantes están colaborando con el proyecto SANE,
conscientes de las posibilidades que representa este creciente mercado de usuarios de sistemas libres. Si
está pensando en adquirir un escáner, asegúrese previamente que funcionará a pleno rendimiento en Guadalinex, consultando en la página referenciada anteriomente.
99
Capítulo 3. Configuración de dispositivos
3.6.1.1. La aplicación SANE
SANE son las siglas de Scanner Access Now Easy. Es una interfaz de acceso estandarizado a cualquier
dispositivo de captura de imágenes concebida con unas características muy avanzadas que la sitúan por
encima de otros proyectos similares.
Permite, por ejemplo, el acceso al escáner a través de una red, o la posibilidad de escanear
desde la consola de texto ,lo que simplifica la automatización de tareas mediante scripts, separando
claramente la interfaz de usuario para la captura de imágenes, de los controles del dispositivo. Se trata
de software de dominio público y puede distribuirse conforme a los términos de la Licencia GPL
(http://www.gnu.org/copyleft/gpl.es.html).
Para conocer más características de esta aplicación puede visitar su página principal (http://www.saneproject.org/) desde la que tendrá acceso a todos los proyectos relaccionados con el tema de captura de
imágenes soportados por SANE.
3.6.1.2. Comprobando los dispositivos
Guadalinex incorpora por completo la aplicación SANE desde la instalación, sin embargo, en caso necesario o si desea conocer qué software requiere el soporte para el escáner, en el caso de Debian, se encuentra
en los paquetes:
• sane-backends
• sane-backends-extras
• sane-frontends
• XSane
La última versión de estos paquetes se pueden obtener directamente con apt, o usando Synaptic incluyendo en el fichero /etc/apt/sources.list:
deb http://people.debian.org/~aurel32/SANE sarge main
deb-src http://people.debian.org/~aurel32/SANE sarge main
La primera línea será suficiente para instalar el soporte de SANE y, la segunda, si estamos interesados
en los ficheros fuente.Veamos qué ocurre con los dispositivos según el método de conexión:
3.6.1.2.1. Conexión SCSI
Si el escáner se conecta mediante este bus, seguramente poseerá una tarjeta controladora SCSI y puede
que tenga más de un periférico en lo que se conoce como cadena SCSI
Se trata, pues, del caso más elemental puesto que GNU/Linux soporta nativamente los dispositivos SCSI,
de hecho, los accesos a otros periféricos, como llaves de memoria o grabadoras, aún guardan parte de esa
herencia.
Con el escáner conectado, comprobaremos que el sistema lo ha detectado ejecutando la instrucción:
[grimaldos@guadalinex:~]$ cat /proc/scsi/scsi
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: Model: Scanner 300A4 Rev: 3.00
Type: Scanner ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
100
Capítulo 3. Configuración de dispositivos
Vendor: HL-DT-ST Model: CD-RW GCE-8240B Rev: 0009
Type: CD-ROM ANSI SCSI revision: 02
Esta orden nos mostrará toda la cadena de periféricos SCSI conectados a nuestro sistema, en este caso,
un escáner y una grabadora de CD’s.
3.6.1.2.2. Conexión USB
Si el escáner se conecta al equipo mediante un puerto USB, podemos cerciorarnos que ha sido reconocido
ejecutando:
grimaldos@guadalinex:~$ cat /proc/bus/usb/devices
T: Bus=04 Lev=00 Prnt=00 Port=00 Cnt=00 Dev#= 1 Spd=12 MxCh= 2
B: Alloc= 0/900 us ( 0%), #Int= 0, #Iso= 0
D: Ver= 1.10 Cls=09(hub ) Sub=00 Prot=00 MxPS= 8 #Cfgs= 1
P: Vendor=0000 ProdID=0000 Rev= 2.06
S: Manufacturer=Linux 2.6.5 uhci_hcd
S: Product=Intel Corp. 82801DB USB (Hub #3)
S: SerialNumber=0000:00:1d.2
C:* #Ifs= 1 Cfg#= 1 Atr=40 MxPwr= 0mA
I: If#= 0 Alt= 0 #EPs= 1 Cls=09(hub ) Sub=00 Prot=00 Driver=hub
E: Ad=81(I) Atr=03(Int.) MxPS=
2 Ivl=255ms
T:
D:
P:
S:
S:
C:*
I:
E:
E:
E:
Bus=04 Lev=01 Prnt=01 Port=00 Cnt=01 Dev#= 2 Spd=12 MxCh= 0
Ver= 1.10 Cls=ff(vend.) Sub=00 Prot=ff MxPS= 8 #Cfgs= 1
Vendor=04b8 ProdID=011d Rev= 1.00
Manufacturer=EPSON
Product=EPSON Scanner
#Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 2mA
If#= 0 Alt= 0 #EPs= 3 Cls=ff(vend.) Sub=00 Prot=ff Driver=(none)
Ad=81(I) Atr=03(Int.) MxPS=
1 Ivl=16ms
Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
Ad=03(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
En este caso, nos interesa el segundo bloque informativo donde aparece reconocido el escáner, pero aún
sin controlador conocido.
3.6.1.3. El acceso al dispositivo
A estas alturas ya somos conscientes que el GNU/Linux todo es un fichero. En el caso del escáner
también accederemos a través de un archivo del directorio /dev
3.6.1.3.1. Dispositivo SCSI
Si la conexión es SCSI, el acceso será a través de /dev/sg[0...n] dependiendo del lugar que ocupe
el escáner en la cadena SCSI.
[grimaldos@guadalinex:~]$ ls -al /dev/sg0
crw------- 1 root root 21, 0 2006-01-24 17:26 /dev/sg0
Si no tocamos este fichero, seguramente nos aparecerán los típicos problemas de "sólo puedo escanear
como root", lógicamente dada la cadena de permisos que podemos observar. Solucionaremos este inconveniente ejecutando:
101
Capítulo 3. Configuración de dispositivos
[grimaldos@guadalinex:~]$ su
Password:
# chmod 660 /dev/sg0
# chgrp scanner /dev/sg0
# ls -al /dev/sg0
crw-rw---- 1 root scanner 21, 0 2006-01-24 17:26 /dev/sg0
De esta forma el dispositivo pertenece al "root", pero el grupo "scanner" tiene permisos para utilizarlo.
Sólo tendremos que añadir a este grupo a los usuarios que vayan a usarlo.
3.6.1.3.2. Dispositivo USB
Tal vez esta forma es la más frecuente actualmente y, a la vez, la que ocasiona algunos problemas, sobre
todo en los centros TIC, a la hora de utilizar el escáner.
La razón es que el soporte para dispositivos USB, en versiones anteriores a los núcleos de la serie 2.4
se realizaba mediante un módulo directamente "inyectado" en el kernel. A partir de esta versión del núcleo,
esta característica ha sido abandonada y el acceso se realiza a través de libusb.
Guadalinex se encuentra a caballo entre los dos sistemas, aunque las versiones más recientes, sólo soportarán acceso mediante libusb, dado que el soporte como módulo del núcleo ha desaparecido en los
últimos kernels.
Perfecto, pero ¿cuál es el problema? Pues el soporte mediante libusb implementa un acceso al dispositivo "en caliente", es decir, éste se regenera cuando se conecta el escáner y el núcleo informa de esta
situación a los ficheros de proceso, ésto ocasiona dos inconvenientes.
Es necesario que el núcleo detecte el dispositivo cuando está a pleno funcionamiento y éste proceso no
se realiza todavía desde el arranque, por lo tanto, es necesario desconectar y volver a conectar el escáner,
una vez el sistema cargado, para que éste regenere el fichero de dispositivo.
El otro inconveniente es el control de los permisos de acceso. A diferencia del modelo anterior, no
existe un dispositivo fijo en el directorio /dev, como /dev/usbscanner0 o /dev/usb/scanner0,
sino que ahora el dispositivo está localizado bajo /proc/bus/usb/ y puede ser algo como
/proc/bus/usb/001/003 o en /dev/bus/usb/, por ejemplo /dev/bus/usb/001/003
Pueden cambiarse los permisos mediante la orden:
chmod a+rw /proc/bus/usb/001/003
Todo funcionaría correctamente, el problema es que este cambio no es persistente y se perdería en el siguiente reinicio o reconexión del escáner. La solución pasa por fijarlos en los ficheros libsane.usermap
y libusbscanner situados en /etc/hotplug/usb, pero es una tarea compleja.
Existe una solución intermedia que consiste en crear/modificar una entrada en el fichero /etc/fstab
con el contenido:
none
/proc/bus/usb
usbfs
defaults,devmode=0666
usbfs
rw
0
0
O simplemente:
none
/proc/bus/usb
0
0
102
Capítulo 3. Configuración de dispositivos
3.6.2. Configurando SANE
En cualquier caso, hasta ahora hemos comprobado que el dispositivo es detectado por el sistema, sin
embargo es posible que todavía no podamos acceder a él porque sea necesario ajustar el controlador.
No hay que fiarse de las apariencias, miraremos en la página de SANE (http://www.saneproject.org/sane-mfgs.html) donde se encuentran ordenados por fabricante todos los modelos y
comprobaremos el nuestro, observando qué controlador necesitamos activar. Por ejemplo, para el EPSON
Perfection 1260, resulta que el driver es plustek, en lugar de epson como pudiera parecer en un
principio.
El primer lugar donde miraremos es en el fichero /etc/sane.d/dll.conf. Se trata de un cargador
dinámico de controladores que informa a SANE qué backend debe preparar para acceder al escáner. Su
estructura es una simple lista de backends, precedidos (o no) del símbolo #. Cuando SANE encuentra un
backend comentado entiende que no debe preocuparse en cargar dicho controlador pues el dispositivo no
estará presente en la instalación.
Por continuar con el ejemplo nos aseguramos que la entrada plustek está descomentada18, lo que permitirá a SANE preparar este controlador para acceder al escáner.
También es siempre una buena idea leer la página de manual correspondiente a nuestro driver concreto,
en este caso, accederemos con:
man sane-plustek
Siempre encontraremos información útil y consejos para conseguir una óptima configuración.
Siguiendo las indicaciones, editaremos el fichero correspondiente a nuestro controlador, en este caso
/etc/sane.d/plustek.conf y nos aseguramos que todas las entradas se corresponden con lo
referenciado en la página de manual.
En nuestro ejemplo, no es necesario tocar el fichero pues ya viene preparado con la línea device auto
descomentada.
Tarea concluida, a partir de este momento tenemos el escáner a disposición de cualquier herramienta de
captura presente en el sistema.
3.6.3. Otras herramientas de detección
Para asegurarnos que el acceso al escáner está correctamente configurado, todavía disponemos de algunas
herramientas auxiliares, de hecho, es aconsejable utilizarlas antes de intentar capturar alguna imagen, pues
hasta que éstas no reconozcan el escáner no estaremos seguros que lo harán las aplicaciones de escaneo.
En primer lugar ejecutaremos:
grimaldos@guadalinex:~$ sane-find-scanner
# No SCSI scanners found. If you expected something different, make sure that
# you have loaded a SCSI driver for your SCSI adapter.
found USB scanner (vendor=0x04b8 [EPSON], product=0x011d [EPSON Scanner], chip=LM9832/3) at libusb:004:
# Your USB scanner was (probably) detected. It may or may not be supported by
# SANE. Try scanimage -L and read the backend’s manpage.
# Not checking for parallel port scanners.
# Most Scanners connected to the parallel port or other proprietary ports
# can’t be detected by this program.
103
Capítulo 3. Configuración de dispositivos
# You may want to run this program as root to find all devices. Once you
# found the scanner devices, be sure to adjust access permissions as
# necessary.
Esta utilidad ha detectado nuestro escáner y nos informa del código del fabricante, del modelo, el tipo
de chipset y el dispositivo donde se encuentra accesible, así sabemos que estamos utilizando el modo de
acceso mediante libusb, en la dirección: :004:002.
Todo esto nos indica que el escáner está accesible y listo para usarse, no obstante, aún podemos realizar
otra comprobación:
grimaldos@guadalinex:~$ scanimage -L
device ‘plustek:libusb:004:002’ is a Epson Perfection 1260/Photo USB flatbed scanner
La salida de este comando corrobora la información que ya conocíamos.
Importante: No olvide que siempre podemos contar con las páginas de manual para conocer algún
detalle sobre el comportamiento y las opciones tanto de los ficheros de configuración como de los
comandos del sistema.
3.7. Cámaras digitales
Otro de los periféricos que se ha convertido en omnipresente en la mayoría de instalaciones domésticas.
La comodidad de su uso pudiendo prescindir del tradicional carrete y la espera al proceso de revelado. La
calidad, cada vez mayor, y un coste ajustado que lo convierten en un magnífico regalo de Reyes, son factores
que ayudan a explicar la masiva presencia de una cámara digital, al menos, en la mayoría de los hogares.
Prácticamente podemos indicar las mismas consideraciones que en el caso de los escáneres o las impresoras. Si usted dispone de una cámara digital estandarizada, seguramente tendrá un buen aparato y completamente soportado por GNU/Linux, en cambio, si el dispositivo está artificialmente limitado y le obliga a
utilizar un CD de instalación en cierto sistema operativo para tener acceso a sus fotografías, posiblemente
no podrá recuperar sus imágenes desde Guadalinex.
Por otra parte, tampoco necesita un software especial para acceder a las fotografías y archivarlas en el
disco duro o realizar copias de seguridad de las mismas. En este sentido, la memoria de la cámara y las
tarjetas de almacenamiento deben comportarse exactamente igual que los llaveros USB, usan el mismo
fundamento.
Es cierto que, en ocasiones, disponer de una aplicación gráfica que mejore la interacción con alguna tarea
compleja del sistema o que faciliten la comunicación con algún periférico, es una ventaja muy de agradecer,
sin embargo, en este caso, se convierte más bien en una incómoda interfaz que únicamente sirve para ocultar
el proceso de transferencia al usuario y hacer ésta más transparente.
3.7.1. Acceso en modo disco
Normalmente las cámaras digitales pueden configurarse de dos modos para comunicarse con un PC: En
modo disco o en modo cámara19, es decir, como cualquier otro dispositivo USB Mass Storage Mode, como
una llave de memoria o mediante el Protocolo de Transferencia de Imágenes (http://ptp.sourceforge.net/)
(Picture Transfer Protocol) que, aunque pueda parecer lo contrario se trata de una implementación estandarizada y regulada por la norma PIMA/ISO 15740.
104
Capítulo 3. Configuración de dispositivos
Si accedemos al menú de configuración de la cámara y establecemos modo disco, accederemos a ella en
cualquiera de los puntos de montaje reservados para unidades USB en Guadalinex
Podemos asegurarnos antes que está reconocida por el sistema, ejecutando:
grimaldos@guadalinex:~$ cat /proc/bus/usb/devices
......................
T: Bus=02 Lev=01 Prnt=01 Port=01 Cnt=01 Dev#= 4 Spd=12 MxCh= 0
D: Ver= 2.00 Cls=00(>ifc ) Sub=00 Prot=00 MxPS=64 #Cfgs= 1
P: Vendor=03f0 ProdID=6702 Rev= 0.01
S: Manufacturer=Hewlett-Packard
S: Product=hp photosmart 720
C:* #Ifs= 1 Cfg#= 1 Atr=c0 MxPwr= 10mA
I: If#= 0 Alt= 0 #EPs= 3 Cls=06(still) Sub=01 Prot=01 Driver=(none)
E: Ad=01(O) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=82(I) Atr=02(Bulk) MxPS= 64 Ivl=0ms
E: Ad=83(I) Atr=03(Int.) MxPS=
2 Ivl=255ms
......................
Observaremos varios bloques correspondientes a los dispositivos USB del sistema, entre ellos, el anterior
que nos garantiza que la cámara ha sido reconocida por el sistema.
Sólo tenemos que montarla y acceder a su contenido con Nautilus, por ejemplo:
Acceso con Nautilus
En este caso, tarjeta de memoria de la cámara ha sido detectada en /mnt/usb2 y tenemos completo
acceso a las imágenes para transferirlas, manipularlas, etc. como cualquier otro fichero del disco duro.
Si aún así, está empeñado en utilizar una aplicación para acceder a la cámara en modo PTP, lea la
siguiente sección.
3.7.2. Acceso en modo PTP
Para comunicarnos con la cámara mediante este protocolo, tenemos dos alternativas: gThumb y gtkam,
ambas instaladas "de serie" con Guadalinex.
Si conectamos la cámara en este modo al puerto USB, accederemos perfectamente a ella, siempre que
lancemos cualquiera de las dos aplicaciones anteriores como "root"
[grimaldos@guadalinex:~]$ su
105
Capítulo 3. Configuración de dispositivos
Password:
guadalinex:/home/grimaldos# gtkam
Si no es así, no tendremos acceso al dispositivo. El problema es similar al caso del escáner. Todo
se fundamenta en los permisos del fichero generado por libusb situado el el directorio de procesos
/proc/bus/usb/
Para acceder como usuario "normal" al contenido de la cámara podemos establecer:
root@guadalinex# chmod -R a+rxw /proc/bus/usb/
De esta forma, cualquiera podrá acceder. No es tampoco una cuestión crucial para la seguridad, pues
este fichero se regenera "en caliente" con los permisos adecuados, por lo tanto, no se trata de una solución
definitiva.
Acceso con gThumb
Lanzamos gThumb y seleccionamos Importar fotos. Nos mostrará una previa de las imágenes de la
cámara y podremos realizar la transferencia según el protocolo PTP.
Buscar la cámara con gtkam
De la misma forma podemos lanzar la aplicación gtkam20 y elegir la opción Añadir cámara. Este procedimiento lo realizaremos únicamente la primera vez que conectamos cada cámara, a partir de ese momento,
el programa guarda las entradas y nos carga directamente el contenido de la memoria.
106
Capítulo 3. Configuración de dispositivos
Acceso con gtkam
De la misma forma que en el caso anterior, estamos en condiciones de utilizar el protocolo PTP para
transferir las fotos al disco duro.
Lógicamente, ésta no es una solución "elegante", sin embargo, tal vez no merezca la pena el esfuerzo en
configurar los niveles de acceso en libusb para la simple tarea de copiar unos ficheros al disco duro, no
obstante, si desea investigar esta posibilidad y configurar de una manera precisa el acceso de los usuarios
a la cámara digital, puede consultar esta documentación (http://www.gphoto.org/doc/manual/permissionsusb.html). También puede consultar aquí (http://www.teaser.fr/~hfiguiere/linux/digicam.html) el listado de
cámaras soportadas actualmente mediante PTP.
Notas
1. En la actualidad se trabaja con la revisión 6 de la versión 11 (X11R6
2. En la actualidad hay otra versión de las X disponible para GNU/Linux, nos referimos a XOrg
(http://www.x.org/). La primera versión de Xorg, la X11R6.7.0, fue una bifurcación del proyecto
XFree86 debido a un desacuerdo con la nueva licencia de XFree86 4.4 final. Varios de los anteriores
desarrolladores de XFree86 se han sumado al proyecto, ya que se gestiona de una forma más abierta
que XFree86. El servidor XOrg aumenta día a día su popularidad entre los sistemas operativos de
código abierto. Ha sido adoptado por Gentoo Linux, Fedora Core, Slackware, SuSE, Mandrakelinux,
Cygwin/X, Ubuntu Linux y FreeBSD 5.x en lugar de XFree86. Debian actualmente lo tiene en
sus versiones testing (pruebas) y en unstable (desarrollo). Las versiones actuales de XOrg son la
X11R6.9.0 y X11R.7.0, lanzadas el 21 de Diciembre del 2005. Guadalinex 2004 hace uso de XFree86.
Sin embargo la nueva vesión, Guadalinex V3, que está en fase de pruebas usará el servidor XOrg.
3. Una lista de los drivers disponibles así como de las tarjetas gráficas soportadas por cada driver puede
verse en http://www.xfree86.org/current/RELNOTES4.html, allí también pueden encontrarse detalladas
instrucciones para el uso de cada uno de los drivers.
4. Existe casi un centenar de gestores de ventanas para GNU/Linux, si quiere puede verlos coleccionados
en URL http://xwinman.org/
5. El primer entorno moderno de escritorio que se comercializó fue desarrollado por Apple™ en los
años 1980. En http://www.pegasus3d.com/apple_screens.html puede encontrar una curiosa historia de
la evolución de este entorno de escritorio.
6. Guadalinex incorpora bastantes aplicaciones KDE y más aún si se tiene instalado el paquete educativo
como ocurre con los sistemas de los Centros TIC. Muchas de estas aplicaciones tienen un nombre que
empieza por K
107
Capítulo 3. Configuración de dispositivos
7. Estas exigencias han ido creciendo conforme los entornos de escritorio han ido desarrollándose, así las
primeras versiones de GNOME tenían suficiente con 32 MB cuando actualmente necesitan un mínimo
de 128MB.
8. Por ejemplo muchos de los equipos APD e Inves con que están equipados los Centros TIC que utilizan
el chip Intel 810 integrado en placa.
9. Para la versión 4.x de XFree86. Para la versión 3.3.x el fichero de configuración es
/etc/X11/XF86Config.
10. A la vista de este ejemplo ¿qué teclado está usando el servidor por defecto? Más abajo en el fichero
puede haber muchas entradas InputDevice. Pues bien, el teclado por defecto será aquel que se especifica en la Section InputDevice cuyo nombre (Identifier) sea Keyboard0
11. Este parámetro puede expresarse también como ColorDepth
12. Aburrido de tener siempre la misma pantalla de login gráfico mostrándole el logo de la Junta. No
hay problema. Vaya a Configuración−→Sistema−→Configuración de la pantalla de sesión.
Se le pedirá la contraseña de "root". Pulsa la pestaña Interfaz de inicio gráfica. Seleccione aquí el
tema que más le guste. ¿Qué no le gusta ninguno? ¡caramba! es usted difícil de contentas. Vaya a
http://art.gnome.org/themes/gdm_greeter/ y descarge el tema que le guste a cualquier lugar de su disco
duro, no es necesario que descomprima el fichero. Vuelva a abrir la Configuración de la pantalla de
inicio gráfica y vaya a la pestaña Interfaz de inicio gráfica. Pulse el botón Instalar nuevo tema y
busque el lugar donde tiene el fichero de tema comprimido. Ahora ya tiene un nuevo tema disponible.
13. El Cañón de red virtual (CRV) instalado en los Centros TIC no es más que esto, aunque se le ha privado
de la funcionalidad de poder ver qué está haciendo el alumno
14. Con x11vnc se consiguen resultados análogos pero el usuario tiene más complicado notar que su sesión
está siendo capturada.
15. En realidad una cola de impresión
16. Aunque no estén físicamente conectadas a él, el acceso puede ser a través de la red, o la/s impresora/s
pueden también ser de red.
17. Sin caracteres especiales ni espacios en blanco.
18. Si no tenemos más dispositivos, podemos comentar todas las entradas restantes ya que no serán necesarias.
19. PTP mode
20. Situada bajo el apartado Visores del Menú Debian
108
Capítulo 4. Conexión a la red
4.1. Conectarse a Internet
Para poder acceder a Internet necesitará tener un proveedor de acceso (ISP), una línea telefónica, RTB
o ADSL, y un módem o router mediante el que establecer las conexiones. En el escritorio de Guadalinex
tenemos un acceso directo llamado Conexión a Internet que nos llevará a una carpeta. Allí hay un fichero con el nombre LEAME-PRIMERO.txt con instrucciones concretas de cómo realizar las conexión para
diversas modalidades de acceso. Aquí seguiremos en parte las indicaciones contenidas en el fichero pero
añadiremos algo nuevo a fin de que tenga un mayor control sobre el proceso. Examine cuál es su caso y
vaya directamente a su modalidad de acceso.
4.1.1. Módem analógico y Red Telefónica Básica (RTB)
Este es un caso muy frecuente: usted dispone de un módem conectado a su línea telefónica convencional, a la que se denomina RTB. Tanto si su módem es interno como externo Guadalinex lo detectará
automáticamente y estaremos en condiciones de configurar nuestra cuenta de acceso.
Importante: Si su modem es interno podrían presentarse problemas en la detección. Existe una familia
de modems llamados winmodems algunos de los cuales no son detectados. La razón es que éstos son
en realidad falsos módems puesto que suplen parte de la funcionalidad hardware propia de un modem
recurriendo al sistema operativo Windows™. Su uso se ha extendido bastante debido a su bajo coste,
aunque suelen ser de poca calidad.
Para configurar la conexión disponemos de varios programas: gnome-ppp, gkdial y pppconfig. Los dos
primeros bajo un entorno gráfico y el último en modo texto.
Trataremos aquí únicamente del primero y dejaremos los otros dos para una posible ampliación de contenidos.
Según se recomienda en la Guadapedia,1 antes de comenzar con la configuración es necesario
desinstalar el paquete irda-utils, incluído en Guadalinex, que interfiere con este proceso. La forma
más sencilla de desintalarlo es utilizando la herramienta synaptic o a través de una Terminal de Root
(Aplicaciones−→Configuración−→Terminal de Root) ejecutando la orden:
# apt-get remove irda-utils.
Una vez eliminado este paquete podemos comenzar la configuración sin interferencias de ningún tipo.
Asegúrese que tiene el modem conectado al ordenador y a la línea telefónica y que está encendido (si es
externo) antes de seguir las instrucciones:
1. Acceda a la carpeta del escritorio Conexión a Internet.
2. Haga doble clic sobre el icono Conexiones por modem. El programa que se inicia
se
llama
gnome-ppp.
También
puede
ejecutarlo
desde
Aplicaciones−→Menú
Debian−→Aplicaciones−→Red−→GnomePPP
109
Capítulo 4. Conexión a la red
Inicio de gnome-ppp
3. Antes de nada debe configurar una conexión. Haga click en el botón Configuración.
4. Aparecerá una nueva ventana con tres pestañas: Módem, Red y Opciones.
Ventana principal de configuración de gnome-ppp
a. En la pestaña modem pulse el botón Detectar. Esto intentará encontrar un módem en su sistema
y configurará los datos automáticamente. El resto de opciones puede dejarlas como están.
b. En la pestaña Red configure cada sección según las instrucciones de su proveedor de internet
(ISP). Normalmente se configura con "IP dinámica" y "DNS automático".
c. En la pestaña Opciones le aconsejamos que marque la casilla Minimizar, pues hará desaparecer
la ventana del programa una vez se establezca la conexión. Tendrá total control de la conexión con
el applet Luces del modem que configurará más adelante.
5. Pulse el botón Cerrar para aceptar los cambios y cerrar la ventana.
6. De nuevo en la ventana principal escriba los datos apropiados en "Usuario", "Contraseña" y "Número
de teléfono" con el nombre de usuario, contraseña y número de teléfono a marcar. Estos datos debe
ser facilitados por su proveedor de internet. Puede marcar la casilla Recordar contraseña para que la
contraseña quede guardada en la configuración. No cierre la ventana.
110
Capítulo 4. Conexión a la red
Ventana de marcado de gnome-ppp
7. A continuación ponga un icono nuevo en uno de los paneles del escritorio. Puede hacerlo tanto en el
superior como en el inferior. Para ello haga clic con el botón derecho de ratón sobre una zona sin usar
de la barra y seleccione el menú Añadir al panel−→Internet−→Luces del modem. Esta aplicación
le servirá para ver si está conectado, el tiempo total de conexión, una pequeña gráfica de ancho de
banda usado y las luces de envío y recepcion del modem. Pulse ahora el botón Conectar en la ventana
principal de GnomePPP, una vez establecida la conexión la ventana se minimizará y podrá controlar
la conexión con el aplique de la barra de tareas. Para desconectarse pulse sobre la luz verde de ese
aplique.
8. A partir de ahora podrá conectar y desconectar usando el aplique Luces del modem. Cuando el modem
esté desconectado la luz del aplique estará apagada, para conectar pulse sobre esa luz, y a continuación
pulse el botón Conectar de la ventana de diálogo de confirmación. Mientras se está conectando la
luz del modem aparecerá en amarillo. Una vez conectado la luz del modem se pondrá en verde. Pulse
de nuevo en la luz verde para desconectarse. Alternativamente puede ir a la aplicación GnomePPP
desde Aplicaciones−→Menú Debian−→Aplicaciones−→Red−→GnomePPP y pulsar el botón
conectar.
4.1.2. Acceso ADSL
Otra de las formas habituales de conectarnos a Internet es utilizando una línea telefónica del tipo ADSL.
El dispositivo para efectuar esta conexión puede ser, básicamente, un modem USB o un modem/router
cableado o inalámbrico. Esta circunstancia es crucial para configurar bien la conexión.
Si todavía no tiene contratada la línea ADSL pero planea hacerlo le recomendamos encarecidamente
que solicite un modem/router independientemente de qué proveedor de acceso tenga pensado elegir.2 En el
caso de usar un modem USB tendrá que padecer los efectos de la negativa habitual de algunos proveedores
de acceso y fabricantes a facilitar soporte a las conexiones basadas en GNU/Linux. De modo que se verá
obligado a conseguir el controlador para su modelo de módem y preparar el sistema para que lo reconozca.
No obstante Guadalinex cuenta con herramientas que le facilitarán esta tarea.
4.1.2.1. Configuración del modem USB para conectar con ADSL.
La configuración del modem ADSL USB depende en gran medida de la marca y modelo de modem que
tiene y del proveedor de internet que usa. Encontrará una aplicación en Guadalinex llamada tkpppoe que
sirve para configurar los parámetros de cualquier conexión ADSL que use el protocolo PPPoE (PPP over
Ethernet).
Según la marca del modem que tenga tendrá que realizar los siguientes pasos antes de poder usar tkpppoe:
4.1.2.1.1. Configuración modem Comtrend CT-350 o Sagem Fast 800
Si tiene un modem Comtrend CT-350 o un Sagem Fast 800 debe usar el fichero que encontrará en la
carpeta Conexión a Internet/ADSL del escritorio llamado eagle-usb_1.9.8-1_i386.deb. Haga doble
111
Capítulo 4. Conexión a la red
clic sobre el fichero para iniciar la instalación.
Al final de la instalación se iniciará automáticamente la configuración del ADSL. Es necesario responder
a una serie de preguntas relativas al modem, que han de ser suministradas por la compañía que presta los
servicios de conexión a Internet:
•
Identificador numérico del proveedor de conexión
•
Nombre de usuario (login) para la conexión
•
Contraseña de conexión a la red
Importante: Puede darse el caso en el que tras el proceso de instalación, se produzca el siguiente
error:
Carga del módulo... [ OK ]
Carga del DSP & options... [ Error ]
dpkg: error al procesar eagle-usb (--install):
el subproceso post-installation script devolvió el código de salida de error 1
Se encontraron errores al procesar:
eagle-usb
En este caso, es necesario desconectar el módem del puerto USB y reiniciar el ordenador
(Acciones−→Terminar la sesióny posteriormente Sistema−→Reiniciar el equipo)
Debemos conectar el módem en la pantalla de bienvenida de GDM (aquella en la que se nos solicita
usuario y contraseña). Esperamos aproximadamente 15 segundos y la luz bajo el identificador Connection
del módem parpadeará cuatro veces y permanecerá fija.
Introducimos usuario y contraseña
Abrimos una Terminal Root (Aplicaciones−→Configuración−→Terminal de Root) y tecleamos la
instrucción eagleconfig contestando todas las preguntas que se solicten pulsando la tecla Intro. Al finalizar, aparecerá el mensaje: Configuración completada
Una vez hemos completado todos estos pasos con éxito, podemos conectar a Internet. Para ello, Lanzamos la orden startadsl en una Terminal de Root. Para finalizar la conexión, debemos lanzar la aplicación
stopadsl (también en una Terminal de Root).
Durante el proceso de conexión, parpadeará varias veces la luz "Data". Haciendo doble click al icono
Navegador web podremos comprobar que hemos conectado por fin a Internet
Importante: Cada vez que encendemos el equipo para entrar en Guadalinex 2004 debemos desconectar el módem antes de iniciar el sistema y es necesario conectarlo cuando aparezca la pantalla de
Bienvenida.
En el caso en que deseemos que todos los usuarios puedan hacer uso de la conexión debemos realizar la
siguiente secuencia de órdenes:
•
Abrimos una Terminal Root y tecleamos la orden gedit /etc/sudoers
112
Capítulo 4. Conexión a la red
•
Modificamos el fichero sudoers añadiendo al final cuatro líneas. El resultado debería ser (respetando
mayúsculas, minúsculas y espacios):
ALL
ALL
ALL
ALL
ALL
ALL=NOPASSWD:
ALL=NOPASSWD:
ALL=NOPASSWD:
ALL=NOPASSWD:
ALL=NOPASSWD:
/usr/sbin/goff-halt-enabled
/usr/sbin/startadsl
/usr/sbin/stopadsl
/usr/sbin/eaglediag
/usr/sbin/eagleconfig
Podemos añadir ahora el applet Luces del módem de la misma forma que en el caso anteriormente
descrito. Una vez hemos añadido el applet, hacemos clic con el botón derecho sobre él, y seleccionamos
la opción Propiedades. Completamos a continuación los campos Comando de conexión y Comando de
desconexión con las instrucciones sudo /usr/sbin/startadsl y sudo /usr/sbin/stopadsl respectivamente.
Por fin hemos acabado el proceso de configuración. Para conectar, sólo necesitamos hacer click en el
botón izquierdo del applet Luces del modem y lo mismo para desconectar.
4.1.2.1.2. Configuración modem Vitelcom
En primer lugar, debemos movernos hacia el directorio Conexión a Internet−→ADSLdel escritorio
de Guadalinex 2004, y hacer doble clic sobre el fichero cxacru_2.6.5-20040623_i686.deb. A continuación, debemos instalar los paquetes libatm1 y atm-tools (disponibles en el repositorio de Guadalinex) mediante synaptic (Aplicaciones−→Configuración−→Sistema−→Synaptic). Posteriormente,
hemos de modificar el archivo /etc/cxacru con los siguientes parámetros:
PATH_ATM="/sbin"
PROTOCOL_MODE=4
Sólo en el caso de tener asignada IP estática, debemos añadir también lo siguiente (modificando los
valores x.x.x.x por aquellos proporcionados por nuestro proveedor de servicios de Internet):
IP_ADDRESS=x.x.x.x
NETMASK=255.255.255.0
GATEWAY=x.x.x.x
El siguiente paso, será crear un enlace simbólico de la forma siguiente: Lanzamos una Terminal de Root
y tecleamos la orden
ln -s /usr/sbin/br2684ctl /sbin/br268ctl
Es necesario copiar el fichero /etc/ppp/peers/provider a /etc/ppp/peers/dsl-provider3.
Ahora debemos editar este fichero y modificar el valor /dev/ttyS1 por /dev/modem (lanzamos la
orden
gedit /etc/ppp/peers/dsl-provider
desde la terminal de root anterior
Ejecutamos adsl-setup. Se nos solicitará una interfaz de conexión (por defecto asignará eth0), debemos teclear nas0
113
Capítulo 4. Conexión a la red
Ejecutamos adsl-start. Por último, debemos añadir nuestros servidores DNS al fichero
/etc/resolv.conf (deben ser proporcionados por la compañía proveedora de servicios de Internet). El
modelo del fichero, ha de ser:
nameserver x.x.x.x # DNS Primerio
nameserver x.x.x.x # DNS secundario
En el caso en que deseemos conectar como usuario (por ejemplo, para poder usar el applet Luces del
módem (podemos colocarlo en el panel superior de Gnome haciendo clic en el botón derecho sobre él y seleccionando la opción Añadir al panel−→Internet−→Luces del módem), debemos realizar la siguiente
secuencia de órdenes:
•
Abrimos una Terminal Root y tecleamos la orden gedit /etc/sudoers
•
Modificamos el fichero sudoers añadiendo al final dos líneas. El resultado debería ser (respetando
mayúsculas, minúsculas y espacios):
ALL ALL=NOPASSWD: /usr/sbin/goff-halt-enabled
ALL ALL=NOPASSWD: /sbin/start-adsl
ALL ALL=NOPASSWD: /sbin/stop-adsl
Una vez hemos añadido el applet Luces del módem, hacemos click con el botón derecho sobre él, y
seleccionamos la opción Propiedades. Completamos a continuación los campos Comando de conexión y
Comando de desconexión con las instrucciones sudo /sbin/start-adsl y sudo /sbin/stop-adsl
respectivamente.
Por fin hemos acabado el proceso de configuración. Para conectar, sólo necesitamos hacer click en el
botón izquierdo del applet (mismo mecanismo a seguir para desconectar).
4.1.2.1.3. Configuración modem Conexant Accessrunner USB
Si tiene un módem Conexant Accessrunner USB debe usar el fichero que encontrará en la carpeta Conexión a Internet−→ADSL del escritorio llamado cxacru_2.6.5-20040623_i686.deb. Haga doble clic
sobre el fichero a fin de iniciar la instalación.
Al final de la instalación se iniciará automáticamente la configuración del ADSL. Tenga los datos de su
conexión a mano, pues los necesitará en este punto.
4.1.2.1.4. Otros modem USB ADSL
Existe un driver para modems usb adsl, basados en el conjunto de chips Globespan, llamado
ECI que tiene soporte para 56 modelos. Consulte la lista de modem soportados en la dirección
http://eciadsl.flashtux.org/ en la sección Modems. Si usted tiene uno de los modem allí listados, descargue
el driver y siga el procedimiento de instalación que se indica en la sección de Documentación de la
mencionada página (hay versión en español). En la misma documentación se le indica qué comandos usar
para conectar a Internet.
4.1.2.1.4.1. Uso de tkpppoe
El programa tkpppoe es una interfaz gráfica para rp-pppoe, y le servirá para configurar una conexión
adsl basada en PPPoE4
114
Capítulo 4. Conexión a la red
Si al instalar el driver se inició automáticamente la configuración de la conexión a Internet no necesitará
esta sección. Si instaló y configuró el driver ECI y su proveedor de acceso utiliza PPPoE tendrá que crear
una conexión con tkpppoe.
root@guadalinex:/home/saorin# tkpppoe
Nueva conexión
Vaya a la pestaña básico y rellene los datos que se le piden. Observe que al situar el puntero del ratón
sobre cada campo se le dará información sobre los datos requeridos.
Nombre de la conexión: escriba un nombre que identifique la conexión
Nombre de usuario: escriba el nombre de usuario facilitado por su proveedor.
Red: algunos proveedores de servicios requieren que ponga aquí su nombre de dominio (por ejemplo,
terra.es). Si no está seguro no escriba nada.
Contraseña: escriba la contraseña facilitada por su proveedor.
Vaya a la pestaña NIC y DNS:
Interfaz: seleccione dónde está conectado su modem haciendo clic en botón con puntos suspensivos. Habitualmente éste habrá sido detectado.
Configuración DNS: > Seleccione Desde el servidor si usa DNS dinámico o Especificar si quiere escribir el número de DNS manualmente. Habitualmente será suficiente con dejar la configuración Desde el
servidor.
Vaya a la pestaña Opciones. Si quiere permitir que todos los usuarios puedan usar la conexión seleccione
Permitir el uso a usuarios distintos de root. Puede dejar los otros campos tal como vienen.
Nueva conexión. Opciones
No es necesario que abra la pestaña Avanzado. Pulse Ok
Para conectar a Internet pulse el botón Iniciar. Para terminar pulse Finalizar
115
Capítulo 4. Conexión a la red
Gestionar la conexión
Posteriormente cuando quiera conectarse a Internet ejecute la aplicación tkpppoe. Si concedió permiso
para ello todos los usuarios podrán ejecutarla, en caso contrario sólo el root podrá hacerlo.
4.1.2.2. Conexión a internet con un Router ADSL.
La conexión con un modem/router ADSL es la más fácil de configurar y la más estable. Si cuando instaló
Guadalinex 2004 tenía el modem conectado y encendido probablemente no necesite hacer esto. Pero si tiene
que hacerlo ahora asegúrese de que su módem está bien conectado y encendido.
1. Aconsejamos que la conexión se haga, por facilidad, con el router configurado en modo "multipuesto" y con el servidor DHCP activado. Puede consultar a su proveedor de Internet cómo hacer dicha
configuración.5
2. Una vez que el router está configurado en "multipuesto" puede acceder al menú
Aplicaciones−→Configuración−→Sistema−→Red. Se le pedirá la clave de "root" para acceder a
dicha aplicación.
3.
Ventana inicial de configuración de la red
Vaya a la pestaña Conexiones y modifique la configuración de su tarjeta de red ethernet, haciendo
clic en el botón Propiedades. Debe configurarla en modo DHCP.
116
Capítulo 4. Conexión a la red
Configuración de la tarjeta de red
4. En las propiedades de la conexión también puede indicar que la tarjeta se inicie al encender el equipo.
En este momento si quiere iniciar la conexión haga click en Activar. Para detener la conexión, haga
click en Desactivar.
5. En las siguientes ocasiones si marcó la casilla para activar la tarjeta cuando se encienda el equipo no
necesitará hacer nada. Simplemente abra su navegador y disfrute de Internet.
Importante: En raras ocasiones sucede que el servidor DHCP de que está dotado el router no es
capaz de facilitar los números de DNS correctos. Esto provocaría que su navegador no encuentre
nada cuando se escribe una dirección en la barra de direcciones. Si esto ocurriera vaya a la
pestaña DNS e introduzca manualmente los números de DNS facilitados por su proveedor.
4.1.2.3. Conexión a internet con un modem-cable.
La configuración es idéntica que la del Router ADSL en "multipuesto". Acceda al menú
Aplicaciones−→Configuración−→Sistema−→Red. Se le pedirá la clave de "root" para acceder a dicha
aplicación.
Vaya a la pestaña Conexiones y modifique la configuración de su tarjeta de red ethernet. Debe configurarla en modo DHCP. En las propiedades de la conexión también puede indicar que la tarjeta se inicie al
encender el equipo. Para iniciar la conexión haga clic en Activar y para detener la conexión, haga clic en
Desactivar.
4.1.3. Configuración de una conexión inalámbrica
Una de las formas de conexión a la red que mayor auge está teniendo es la conexión con tarjeta de
red inalámbrica o WiFi. La fuente de información que manejamos en lo que respecta a la configuración
de tarjetas inalámbricas está tomada fundamentalmente de la Guadapedia. Probar todas las configuraciones
supondría disponer de una gran cantidad de hardware distinto, tan sólo hemos podido experimentar con
algunas de ellas.
El primer paso consiste en comprobar si su tarjeta de red inalámbrica está soportada en GNU/Linux. En
español existe una base de datos más o menos completa en http://www.compatiblelinux.org/.6 En general
podemos comprobar si nuestra tarjeta ha sido reconocida por el sistema ejecutando el comando
117
Capítulo 4. Conexión a la red
#iwconfig
cuya salida es similar a esta:
lo
no wireless extensions.
sit0
no wireless extensions.
eth0
no wireless extensions.
eth1
no wireless extensions.
wlan0
unassociated ESSID:off/any
Mode:Managed Channel=0 Access Point: 00:00:00:00:00:00
Bit Rate=0kb/s
Tx-Power=20 dBm
RTS thr:off
Fragment thr:off
Encryption key:off
Power Management:off
Link Quality:0 Signal level:0 Noise level:0
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0
Missed beacon:0
Si su tarjeta ha sido detectada una de las interfaces de red tendrá una extensión inalámbrica (wireless).
También puede comprobarlo con el comando
#lspci0000:01:07.0 Network controller: Intel Corp. PRO/Wireless 2200BG (rev 05)
Si se trata de una tarjeta WiFi USB podemos comprobarlo con
#lsusb
4.1.3.1. Configuración genérica
Para las tarjetas genéricas (aquellas que no tengan ningún tipo de problemas de detección en Guadalinex),
configuramos la red de la forma siguiente: Editamos el fichero /etc/network/interfaces ejecutando
la instrucción gedit /etc/network/interfaces/ y añadimos al final del fichero las siguientes líneas:
Caso DHCP:
auto eth1
iface eth1 inet dhcp
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
Caso IP Fija:
auto eth1
iface eth1 inet static
address x.x.x.x
netmask x.x.x.x
gateway x.x.x.x
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
Debemos modificar el identificador eth1 de las líneas citadas anteriormente por el identificador apropiado que podemos obtener tras ejecutar la orden iwconfig en la Terminal de Root corresponidente. Nos
debemos fijar en la salida por pantalla de la instrucción anterior, que será de la forma:
118
Capítulo 4. Conexión a la red
eth1 IEEE 802.11b ...
...
En los ejemplos de configuración se asume además que su red tiene encriptación WEP. En general existen dos modos de pasar la clave WEP o mediante números hexadecimales o mediante una palabra de paso. En el anterior ejemplo se supone que usted pasa la clave como palabra de paso. Si se
quiere pasar en hexadecimal simplemente habría que modificar la línea de este modo wireless_key
"número_en_hexadecimal"
Por otra parte si la red no está encriptada entonces modificaríamos la línea así:
wireless_key off
4.1.3.1.1. Configuración e instalación de controladores ndiswrapper
Algunos proveedores de tarjetas WiFi rehusan publicar sus especificaciones hardware o los controladores
para sus productos sobre sistemas operativos distintos a Microsoft Windows™. El proyecto ndiswrapper
hace que sea posible usar este tipo de hardware con Linux gracias a un módulo del kernel que "maneja" los
controladores NDIS (API del controlador de red de Windows).
Para ver una lista completa de las tarjetas WiFi soportadas por ndiswrapper vaya a
http://ndiswrapper.sourceforge.net/mediawiki/index.php/List
Para proceder a la configuración, en primer lugar, necesitamos descargar los controladores
de su dispositivo WiFi para Windows. Sólo necesitaremos los ficheros *.inf y *sys. Puede
que dispongamos de un CD-ROM o disquete suministrados con el paquete de compra. En caso
contrario los podemos descargar de la página del fabricante o directamente de la anterior URL
(http://ndiswrapper.sourceforge.net/mediawiki/index.php/List)
En segundo lugar, necesitamos cargar por primera y única vez estos controladores escribiendo las siguientes instrucciones en una Terminal de Root:
ndiswrapper -i driver.inf
ndiswrapper -i driver.sys
(donde driver.inf y driver.sys son los ficheros apropiados a su tarjeta)
Por último, añadiremos esto al fichero /etc/network/interfaces:
auto wlan0
iface wlan0 inet dhcp
pre-up modprobe ndiswrapper
post-down rmmod ndiswrapper
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
Sustituiremos los valores "nombre_de_la_red" y "contraseña" por los datos correspondientes de la red,
del modo que se describió más arriba. En esta configuración hemos supuesto que su tarjeta inalámbrica
obtiene la dirección IP de un servidor de DHCP, si fuera una IP fija entonces:
auto wlan0
iface wlan0 inet static
address x.x.x.x
netmask x.x.x.x
gateway x.x.x.x
119
Capítulo 4. Conexión a la red
pre-up modprobe ndiswrapper
post-down rmmod ndiswrapper
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
Finalmente para iniciar la red una vez efectuados todos estos pasos, ejecutaremos en la terminal de root
anterior, la instrucción ifup wlan0 (a partir de este momento tendremos configurada la red wifi y no
necesitaremos volver a ejecutar esta serie de operaciones. Cada vez que iniciemos el sistema, la red wifi
quedará autoconfigurada).
En caso de disponer de varias interfaces wlan en el ordenador, puede que necesitemos cambiarlo a
wlan1 o algún otro identificador. Podremos obtenerlo de la forma siguiente: Nos debemos fijar en la salida
por pantalla de la instrucción iwconfig (desde la Terminal de Root), que será de la forma:
eth1 IEEE 802.11b ...
...
4.1.3.1.2. Configuración de una tarjeta Intel PRO/Wireless 2100
Instalar el driver compilándolo a partir del código fuente:
1. Lanzamos una Terminal de Root
2. Instalamos
el
paquete
kernel-source-2.6.5
mediante
la
orden
apt-get install
kernel-source-2.6.5
3. Descomprimimos el kernel en disco, ejecutando la instrucción cd /usr/src/ && tar jxvf
kernel-source-2.6.5.tar.bz2
4. Creamos los enlaces simbólicos correspondientes en el directorio /usr/src a través de la
orden
ln -sf /usr/src/kernel-source-2.6.5 /usr/src/linux-2.6.5 && ln -sf
/usr/src/kernel-source-2.6.5 /usr/src/linux
5. Ejecutamos la orden cd linux && make oldconfig (seguidamente debemos pulsar la tecla Intro
sin leer las preguntas, hasta volver a obtener el símbolo del sistema).
6. Descargamos los drivers ipw2100-0.56.tgz desde la web http://ipw2100.sourceforge.net/
7. Los descomprimimos en disco mediante la orden cd directorio_descargas_firefox && tar
zxvf ipw2100-0.56.tgz
8. Compilamos el módulo ejecutando la instrucción cd ipw2100-0.56 && make
9. Instalamos los drivers con la orden make install
10. Descargamos el firmware de la tarjeta (fichero ipw2100-fw-1.3.tgz) desde la url
http://ipw2100.sourceforge.net/firmware.php (primero hemos de aceptar el contrato de licencia).
11. Descomprimimos el paquete de firmware mediante la orden tar zxvf ipw2100-fw-1.3.tgz
12. Instalamos el firmware en su ubicación correspondiente a través de la orden mv *.fw
/usr/lib/hotplug/firmware/
13. Configuramos la red de la forma siguiente: Editamos el fichero /etc/network/interfaces ejecutando la instrucción gedit /etc/network/interfaces/ y añadimos al final del fichero las siguientes líneas, según se trate de los casos DHCP o IP fija, respectivamente:
120
Capítulo 4. Conexión a la red
auto eth1
iface eth1 inet dhcp
pre-up modprobe ipw2100
post-down rmmod ipw2100
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
auto eth1
iface eth1 inet static
address x.x.x.x
netmask x.x.x.x
gateway x.x.x.x
pre-up modprobe ipw2100
post-down rmmod ipw2100
wireless_essid nombre_de_la_red
wireless_key "s:contraseña"
14. Debemos modificar el identificador eth1 de las líneas citadas anteriormente por el identificador apropiado que podemos obtener tras ejecutar la orden iwconfig en la Terminal de Root corresponidente.
Nos debemos fijar en la salida por pantalla de la instrucción anterior, que será de la forma:
eth1 IEEE 802.11b ...
4.1.3.1.3. Instalar el driver a partir de un paquete Debian
Si no desea compilar el código fuente puede instalar el driver a partir de un paquete, para ello abra una
terminal de root y ejecute
#apt-get install ipw2100-modules-2.6.5.deb
El driver no incluye los ficheros de firmware necesarios para el funcionamiento de la tarjeta así que debe
descargarlos y descomprimirlos en el lugar adecuado. Para ello:
1. Descargamos la versión 1.3 del firmware de la tarjeta (fichero ipw2100-fw-1.3.tgz) desde la url
http://ipw2100.sourceforge.net/firmware.php (primero hemos de aceptar el contrato de licencia).
2. Descomprimimos el paquete de firmware mediante la orden tar zxvf ipw2100-fw-1.3.tgz
3. Instalamos el firmware en su ubicación correspondiente a través de la orden mv *.fw
/usr/lib/hotplug/firmware/
La configuración es la misma que en el caso Configuración genérica reseñado más arriba.
4.1.3.1.4. Configuración de una tarjeta Intel PRO/Wireless 2200
Este chip es muy frecuente en los de los portátiles con tecnología Centrino™.
Para esta tarjeta existe un paquete en los repositorios de guadalinex con el driver compilado para el kernel
2.6.5. Para instalarlo escriba
#apt-get install ipw2200-modules-2.6.5.deb
121
Capítulo 4. Conexión a la red
El driver no incluye los ficheros de firmware necesarios para el funcionamiento de la tarjeta así que debe
descargarlos y descomprimirlos en el lugar adecuado. Para ello:
1. Descargamos la versión 2.2 del firmware de la tarjeta (fichero ipw2200-fw-2.2.tgz) desde la url
http://ipw2200.sourceforge.net/firmware.php (primero hemos de aceptar el contrato de licencia).
2. Descomprimimos el paquete de firmware mediante la orden tar zxvf ipw2200-fw-2.2.tgz
3. Instalamos el firmware en su ubicación correspondiente a través de la orden mv *.fw
/usr/lib/hotplug/firmware/
La configuración es la misma que en el caso Configuración genérica reseñado más arriba.
4.1.3.1.5. Configuración de tarjetas WiFi que incorporan el chip Atheros™
Multiband Atheros Driver for WiFi (MADWIFI) es un driver Linux para tarjetas que usan el chipset Atheros. Para ver una lista de las tarjetas soportadas por este driver vea http://madwifi.org/wiki/Compatibility
El driver puede instalarse desde el código fuente descargándolo de http://madwifi.org/
También pude crear sus propios paquetes Debian siguiendo las instrucciones que se encuentran en
http://www.marlow.dk/site.php/tech/madwifi
Alternativamente puede usar el paquete existente en el repositorio de Guadalinex para ello abra una
terminal de root y escriba la orden:
#apt-get install madwifi
La configuración es la misma que en el caso Configuración genérica reseñado más arriba.
4.1.3.1.6. Configuración de tarjetas Wifi que incorporan el chip acx100
Utilizaremos el driver acx100. Puede consultar una lista de tarjetas soportadas por este driver en
http://acx100.sourceforge.net/wiki/Device_list
Abra una terminal de root y ejecute la orden:
#apt-get install acx-pci
4.1.3.2. Algunas utilidades para redes wireless
Este apartado no pretende ser una guía completa de todas las utilidades de red Wifi tan sólo una guía
rápida de algunos comandos básicos.
El comando iwlist le permitirá obtener información detallada acerca de su interfaz wifi. Algunos ejemplos de uso suponiendo que su interfaz de red es wlan0 (sutituya este parámetro por el valor adecuado a su
situación:
#iwlist wlan0 scan
Le dará información detallada sobre las redes inalámbricas a su alcance.
122
Capítulo 4. Conexión a la red
#iwgetid
Mostrará el nombre de la red a la que se encuentra conectado.
#imgetid -m
Le mostrará el modo de trabajo en que se encuentra configurada su tarjeta. Los modos son fundamentalmente tres: ad-hoc, managed y master.
Ad-hoc: Estas redes se construyen normalmente sin necesidad de disponer de un punto de acceso y se
configuran de modo que todos los ordenadores de la red trabajan "par a par", todos reciben los paquetes
de todos y envían sus propios paquetes a todos los ordenadores de la red. Para esto no se necesita nada
especial, sólo definir una red con un nombre (ESSID), preferiblemente encriptar a 128 bits (con WEP) y no
tener demasiados ordenadores en la misma red.
Managed: En este caso exite un servidor independiente, Access Point (punto de acceso) al cual se conectan
todos los ordenadores. El access point entonces envía las tramas 802.11 a los destinatarios finales. Normalmente los access points soportan roaming, es decir los clientes pueden estar en movimiento a ir cambiando
de punto de acceso de acuerdo a la potencia de la señal. También los access points suelen ofrecer servicios
de enrutado IP, servidor DHCP y bridging sobre una Ethernet. Cuando un ordenador o tarjeta está conectado a la red a través de un punto de acceso se dice que está en modo managed. Este es quizá el modo más
habitual y con el que se conectará por ejemplo al modem/router inalámbrico facilitado por su proveedor de
Internet.
Master: Es el modo en que trabaja el access point descrito en el punto anterior. Es posible también fabricar
un access point con Linux, aunque la explicación de cómo hacerlo escapa a los propósitos de este apartado.
También hay un par de apliques gráficos que le pueden resultar divertidos. El Monitor de enlace inalámbrico le mostrará la calidad de la señal de su tarjeta. Para agregarlo haga clic en cualquier lugar vacío
del panel y seleccione Añadir al panel−→Internet−→Monitor de enlace inalámbrico.
Puede añadir el aplique Netspeed que le notificará de forma gráfica la velocidad de su red. Para añadirlo haga clic con el botón derecho del ratón en cualquier lugar vacío del panel y seleccione Añadir al
panel−→Internet−→Monitor de red. Una vez agregado el aplique pulse en él con el botón derecho y seleccione Preferecias. En la ventana emergente seleccione su interfaz y configure el modo como el aplique
mostrará la información.
4.2. Compartir la conexión a Internet
En redes de área local (LAN) tales como la de un Centro educativo suele ser necesario compartir la
conexión a Internet: en estos casos una sola computadora tiene acceso directo a Internet y las otras máquinas
de la red lo hacen a través de ella. De esta forma tendremos un gran control sobre el acceso y la seguridad
de la red.
Para el administrador tal procedimiento pasa por un buen conocimiento de la herramienta iptables y
eventualmente de servicios de proxy de red tales como Squid.
A diferencia de otros sitemas operativos el filtrado de paquetes, necesario para compartir la conexión a
Internet o implementar un cortafuegos, es realizado directamente en el núcleo y por tanto no se requiere de
software adicional. Iptables es simplemente una herramienta para configurar, administrar e inspeccionar las
reglas de filtrado de paquetes del núcleo Linux.7
123
Capítulo 4. Conexión a la red
También en pequeñas redes domésticas suele ser necesario compartir la conexión a Internet cuando
el dispositivo de conexión ofrezca servicio únicamente a un puesto.8 Guadalinex cuenta para ello con un
sistema cómodo y fácil para el usuario final.
El primer paso a realizar es lanzar una Terminal de Root. Una vez ejecutada, introducimos la orden
gedit /etc/init.d/guadalinex. Tendremos que hacer las modificaciones marcadas a continuación
en el citado fichero, y posteriormente Guardar:
case "$1" in
start)
echo -n "Starting $DESC: $NAME"
echo 1 > /proc/sys/net/ipv4/ip_forward
iptables -t nat -A POSTROUTING -s 10.0.0.0/8 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 172.26.0.0/16 -o eth0 -j MASQUERADE
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
cd /dev && MAKEDEV busmice
mknod /dev/ppp c 108 0
chown root.dialout /dev/ppp
chmod 660 /dev/ppp
En caso de estar compartiendo una conexión ppp (módem analógico), será necesario modificar el valor
eth0 por ppp0. En caso de compartir conexión de salida a Internet a través de red inalámbrica será necesario
modificar el valor eth0 por el identificador de interfaz asociado a esa red (comunmente eth1 o wlan0).
Una vez realizadas estas modificaciones, habremos compartido automáticamente la conexión a Internet
cada vez que arranquemos Guadalinex. Si deseamos también activarla en este preciso momento, debemos
ejecutar las siguientes instrucciones:
echo 1 >
iptables
iptables
iptables
/proc/sys/net/ipv4/ip_forward
-t nat -A POSTROUTING -s 10.0.0.0/8 -o eth0 -j MASQUERADE
-t nat -A POSTROUTING -s 172.26.0.0/16 -o eth0 -j MASQUERADE
-t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
Aunque probablemente con esto es suficiente, puesto que usted se dispone a administrar un sistema
GNU/Linux no es bueno que haga las cosas sin reflexión. Así que permítanos que le expliquemos algo de lo
que hemos hecho y así comprenderá cómo algunas líneas de las que acabamos de escribir son innecesarias
e incluso inadecuadas.
echo 1 > /proc/sys/net/ipv4/ip_forward
Con esto activamos el ruteo de paquetes, es decir, permitimos que pasen a través de nuestra máquina
paquetes TCP/IP que no van destinados a ella.
iptables -t nat -A POSTROUTING -s 192.168.0.0/24 -o eth0 -j MASQUERADE
Con esta instrucción hacemos que todos los paquetes procedentes de las máquinas cuya IP comienza
con 192.168. y que salen por la interfaz eth0 (que suponemos es la interfaz de conexión a Internet) se
enmascaren, es decir, aparezcan como procedentes de la IP que tenga la interfaz de red eth0. Pero ¿qué
sucede si las máquinas de nuestra red no tienen una ip tal como 192.168.0.4 o 192.168.1.2?. Pues que será
necesario cambiar el parámetro -s 192.168.0.0/24 por el adecuado a su red.
En la configuración de más arriba se parte de la conjetura de que los modems/routers distribuidos por
las compañías de acceso a Internet asignan direcciones de alguna de esas redes (10.0.0.0/8; 172.26.0.0/16;
192.168.0.0/24)9, pero la configuración de su red podría ser distinta. Podría necesitar cambiarlo y en todo
caso probablemente únicamente necesitará una línea, la que se ajuste a su configuración de red.
Una vez que ha terminado la configuración, la IP de su máquina funcionará como puerta de enlace
(gateway) a Internet para el resto de computadoras de la red.
124
Capítulo 4. Conexión a la red
Finalmente debe indicarles a las computadoras cliente, es decir aquellas que van a hacer uso de la conexión compartida, como puerta de enlace la IP de la máquina recién configurada. Para ello vea la sección
más abajo sobre "Configuración de la red".
4.3. Configuración de un cortafuegos
La seguridad de la información en una red supone la implementación de algún mecanismo dedicado para
controlar los privilegios de acceso y restringir los recursos de la red a los usuarios autorizados, identificables
y localizables.
Los cortafuegos o firewalls son uno de los componentes principales de la implementación de seguridad. Los cortafuegos pueden ser soluciones de hardware independiente, tales como aparatos cortafuegos de
Cisco™, Nokia™, Sonicwall™... También existen soluciones de cortafuegos de software propietario desarrolladas para los mercados del hogar y de negocios por vendedores tales como Checkpoint™, McAfee™
o Symantec™.
El subsistema Netfilter proporciona a GNU/Linux un poderoso mecanismo cortafuegos capaz de satisfacer un amplio abanico de necesidades: desde los usuarios del hogar protegiendo un PC hasta las soluciones
de Centros de Datos resguardando información vital de la corporación.
La implementación de soluciones cortafuegos con GNU/Linux en entornos con altos requirimientos de
seguridad implica un buen conocimiento de la herramienta iptables. Sin embargo el usuario doméstico
o el administrador de una LAN de tamaño medio, tiene al alcance soluciones más sencillas sin perder nada
de la potencia de Netfilter. En este caso la simplicidad no significa pérdida de potencia.
4.3.1. Configuración con gnome-lokkit
La aplicación lokkit le permite a un usuario medio configurar los parámetros básicos de seguridad de su
máquina mediante la creación de reglas de red iptables básicas.
En lugar de tener que escribir las reglas, el programa Lokkit le formula una serie de preguntas sobre
cómo utiliza el sistema y, a continuación, escribe por usted las reglas en un fichero de forma automática.
Las posibilidades que tiene Iptables son infinitas y pueden llegar a ser muy complejas. Lokkit no está diseñado para generar reglas complejas, sino que está orientado a crear configuraciones sencillas para ofrecer
protección a usuarios con conexiones de módem, ADSL y cable.
En primer lugar será necesario instalar los paquetes gnome-lokkit y lokkit. Para ello abra una terminal de root y escriba:
#apt-get install gnome-lokkit lokkit
Para
iniciar
la
aplicación
Lokkit
vaya
a
Aplicaciones−→Menú
Debian−→Aplicaciones−→Sistema−→Gnome-lokkit
o
alternativamente
pulse
en
Acciones−→Ejecutar un programa y escriba gnome-lokkit introduzca la contraseña de administrador
y se ejecutará el programa. Se iniciará un sencillo asistente que le irá guiando para configurar sus políticas
de seguridad.
125
Capítulo 4. Conexión a la red
Inicio de la herramienta
En la ventana de bienvenida pulse siguiente y avanzará hasta la ventana de Configuración Básica, donde
elegirá el nivel de seguridad adecuado para su sistema. Existen 3:
Configuración básica
Seguridad Alta. Esta opción desactiva la mayoría de las conexiones de red, excepto las respuestas de DNS
y DHCP para que se puedan activar las interfaces de la red. IRC, ICQ y otros servicios de mensajería
instantáneo, así como RealAudioTM no funcionan sin un proxy.
Seguridad Baja. Esta opción no permite conexiones remotas en el sistema, incluidas las conexiones NFS
y las sesiones remotas de un sistema X Window. Los servicios que se ejecutan en el puerto 1023 no aceptan
las conexiones, incluidas las realizadas con FTP, SSH, Telnet y HTTP.
Deshabilitar cortafuegos. Esta opción no crea ninguna regla de seguridad. Sólo se recomienda seleccionar
esta opción si el sistema se encuentra en una red de confianza (no en Internet), si el sistema tiene instalado
un firewall grande o si escribe personalmente las reglas del firewall. Si elige esta opción y hace click en
Siguiente, pase a la la sección de nombre Activación del servicio iptables. No se cambiará la seguridad del
sistema.
Hosts Locales. Si elige una de las dos primeras opciones, el asistente le seguirá preguntando las configuraciones que desea incluir en su sistema de seguridad.
126
Capítulo 4. Conexión a la red
Hosts locales
Si hay dispositivos Ethernet en el sistema, la ventana de Hosts Locales le permitirá configurar si las
reglas del cortafuegos se utilizan en las peticiones de conexión enviadas a cada dispositivo. Si el dispositivo
conecta su sistema a una red área local con un cortafuegos y no se conecta directamente a Internet, pulse Sí.
Si su sistema esta directamente conectado a Internet a través de un módem ADSL o por cable, se recomienda
seleccionar No. Pulse siguiente.
DHCP. Si utiliza el protocolo DHCP para activar algunas de las interfaces de su sistema, debe responder
Sí a la pregunta sobre DHCP. Si contesta No, no podrá conectar con un servidor DHCP y puede crearle
problemas. Si conecta a Internet a través de un módem ADSL o cable-módem elija Si. Pulse siguiente.
DHCP
Configuración de servicios. Lokkit también le permite activar y desactivar ciertos servicios comunes. Si
responde Sí a la configuración de servicios, se le pedirá información sobre los servicios siguientes. Si elige
no, se negará el accesos a estos sevicios.
•
Servidor Web. Si desea que el resto de los usuarios puedan acceder a un servidor web instalado en su
máquina, como Apache por ejemplo, elija Sí. Si no existe ningún servidor web en su sistema, elija No.
•
Correo STMP de Entrada. Pulse Sí si desea que el sistema acepte el correo entrante. No necesitará usar
esta opción si recupera el correo electrónico mediante IMAP, POP3 o fetchmail.
•
Shell Seguro de Entrada. También llamado SSH, es un conjunto de herramientas para el registro y
ejecución de comandos en una máquina remota a través de una conexión cifrada. Si necesita tener acceso
a la máquina de forma remota a través de SSH desde otros ordenadores, seleccione Sí.
127
Capítulo 4. Conexión a la red
•
Telnet de Entrada. Telnet le permite registrarse en su máquina remotamente, pero no es un método
seguro. Envía texto plano a través de la red. Se recomienda utilizar SSH para registrarse en la máquina
remotamente. No obstante, si necesita tener acceso al sistema vía Telnet, seleccione la opción Sí y presione Siguiente.
•
Activación del Firewall. Para Aplicar los cambios pulse el botón de Terminar.
Mail Relay. Mail Relay es un sistema que permite a otros sistemas enviar correo a través de él. Si el sistema
es un mail relay, algunos usuarios podrían usarlo para enviar correo basura a otros desde su máquina.
Si decide activar los servicios de correo, después de hacer click en Terminar en la página Activar el
Firewall, se le pedirá que compruebe el sistema de mail relay. Si pulsa Sí para comprobarlo, GNOME
Lokkit intentará conectarse al sitio Web de Mail Abuse Prevention System en la dirección http://www.mailabuse.org/ y ejecutará un programa de comprobación de mail relay. Los resultados de la comprobación
se mostrarán cuando haya acabado. Si el sistema permite mail relay, es muy recomendable que configure
Sendmail para evitar su uso.
4.3.2. Configuración de cortafuegos con Firestarter
Firestarter es un programa de cortafuegos gráfico que trata de combinar la facilidad de uso con la potencia necesaria para servir tanto a los usuarios medios como a los administradores de sistema. Según reza
en su web (http://www.fs-security.com): "Usted debe preocuparse únicamente en tomar las decisiones sobre políticas de seguridad y nosotros nos ocuparemos de todo el trabajo. Esto supone un cambio radical
respecto del modo como se han implementado hasta ahora los cortafuegos en Linux, que tradicionalmente
han exigido un conocimiento de los arcanos".
Firestarter le permitirá entre otras cosas: compartir una conexión de Internet, activar el reenvío de puertos,
monitorizar la red incuidas las conexiones que atraviesan el cortafuegos, abrir y cerrar puertos, etc.
El fichero de configuración de Firestarter se guarda en /etc/firestarter/firestarter.sh que es
un script de shell conteniendo reglas de iptables. El fichero se crea una vez que firestarter es configurado.
Importante: No es conveniente que utilice simultáneamente gnome-lokkit o escriba usted mismo
reglas de iptables pues lo primero que hace firestarter al ejecutarse es borrar todas las reglas existentes.
Para ejecutar la aplicación vaya a Aplicaciones−→Configuración−→Sistema−→Firestarter, se le
pedirá la contraseña de root.
128
Capítulo 4. Conexión a la red
Firestarter
La primera vez que se ejecuta Firestarter le mostrará un asistente. Después de la pantalla de bienvenida
se le pedirá que seleccione su dispositivo de red de una lista de los que han sido detectados en su máquina.
En caso de tener múltimples interfaces seleccione aquella que utilice para conectarse a Internet. Si no lo
sabe o no está seguro deje el valor predeterminado.
Configuración del dispositivo de red
Si su interfaz de conexión a Internet recibe la dirección IP desde un servidor DHCP marque la casilla
"Dirección IP asignada vía DHCP". Si desea que el cortafuegos se inicie cuando se conecte a Internet
marque la casilla "Iniciar el cortafuegos al conectarse al exterior". Pulse ahora Adelante
Si va a compartir su conexión a Internet con el resto de máquinas de la red marque la casilla "Habilitar
la traducción de direcciones (NAT)". Si su máquina tiene más de una interfaz de red seleccione ahora cuál
de ellas es la que utiliza para conectar con su red local.10 Pulse Adelante
Red compartida
Si ejecuta programas de servidor en su máquina puede ahora permitir o denegar el acceso a esos servicios.
129
Capítulo 4. Conexión a la red
Servicios de red
Si marca la casilla "Habilitar acceso público a los siguientes servicios" asegúrese de que realmente
se están ejecutando los servidores correspondientes. Si planea compartir recursos con máquinas Windows
marque el servicio SAMBA. Puse Adelante
Final del asistente
Una vez que el asistente ha terminado pulse el botón Guardar. El cortafuegos está ahora listo y su
máquina está segura. Firestarter está ahora funcionando en su modo predeterminado que consiste en aplicar
un política muy restrictiva para el tráfico entrante y bastante permisiva con las conexiones salientes. Esto
significa que usted está completamente protegido contra los intentos de conexión provinientes del exterior,
pero que se le permitirá navegar por la web, leer el correo, etc. con toda normalidad. No necesita configurar
nada más si esta política por defecto le resulta satisfactoria.
Una pregunta que podría hacerse es qué sucede cuando se cierra el programa. La respuesta es que el
firewall sigue funcionando. Puesto que Firestarter se ejecuta como un servicio se iniciará cuando el sistema
arraque. Además puede usted controlarlo con las sentencias:
#/etc/init.d/firestarter start
para iniciarlo o
#/etc/init.d/firestarter stop
para pararlo. Puede usted ver qué reglas de cortafuegos han sido aplicadas con
#/etc/init.d/firestarter status
Del mismo como la haría ejecutando el comando
#iptables -nL
4.4. Redes de área local
4.4.1. Introducción
Una red de computadoras (también llamada red de ordenadores, red informática o red a secas) es un
conjunto de tres o más computadores o dispositivos conectados entre sí y que comparten información (ar-
130
Capítulo 4. Conexión a la red
chivos), recursos (CD-ROM, impresoras, etc.) y servicios (e-mail, chat, juegos), etc.
Las redes de área local, generalmente llamadas LAN (local area networks) son redes de propiedad privada dentro de un solo edicifio o campus de hasta unos cuantos kilómetros de extensión. Se usan ampliamente
para conectar computadoras personales y estaciones de trabajo en oficinas de compañías, fábricas o centros
educativos con objeto de compartir recursos (por ejemplo, impresoras) e intercambiar información.
Las LAN a menudo usan una tecnología de transmisión que consiste en un cable sencillo (coaxial o de par
trenzado) al cual están conectadas todas las máquinas. Los dispositivos físicos necesarios para construir una
LAN son al menos: tarjetas de red para los computadores; uno o más concentradores (hub) o conmutadores
(switch) de red; una cantidad suficiente de cable, frecuentemente de par trenzado.
Tarjeta de red PCI 10/100 Mbps
La tarjeta de red o NIC (Network Interface Card, Tarjeta de Interfaz de Red, en español), es un dispositivo
electrónico que permite a un ordenador o impresora acceder a una red y compartir recursos entre dos o más
equipos (discos duros, cdrom, etc). Hay diversos tipos de adaptadores en función del tipo de cableado o
arquitectura que se utilice en la red (coaxial fino, coaxial grueso, etc.), pero, actualmente el más común es
del tipo Ethernet utilizando un interfaz o conector RJ45.
Las tarjetas de red Ethernet pueden variar en función de la velocidad de transmisión, normalmente 10
Mbps ó 10/100 Mbps. Actualmente se están empezando a utilizar las de 1000 Mbps, también conocida
como Gigabit Ethernet y en algunos casos 10 Gigabit Ethernet, utilizando también cable de par trenzado,
pero de categoría 6, 6e y 7 que trabajan a frecuencias más altas.
Las tarjetas están conectadas por medio de un cable de par trenzado terminado en un conector RJ45 que
va a parar a un switch. Cada tarjeta de red tiene un número identificativo único de 48 bits, en hexadecimal
llamado MAC. Estas direcciones hardware únicas son administradas por el Institute of Electronic and Electrical Engineers (IEEE). Los tres primeros octetos del número MAC identifican a proveedores específicos
y son designados por la IEEE.
Cable de par trenzado
131
Capítulo 4. Conexión a la red
Conector RJ45
Conexiones RJ45 en un switch Ethernet
Un switch (en español "interruptor" o "conmutador") es un dispositivo de interconexión de redes de computadoras. A diferencia del hub (concentrador) que difunde los paquetes de datos en todas las direcciones,
el switch posee la capacidad de aprender y almacenar las direcciones de red de nivel 2 (direcciones MAC)
de los dispositivos alcanzables a través de cada uno de sus puertos, con lo que se mejora notablemente el
rendimiento de la red.
Switch
También es posible construir una red de área local utilizando dispositivos inalámbricos, en este caso lo
único que se precisa es de una tarjeta de red inalámbrica (tarjeta WiFi) para cada computadora y uno o más
puntos de acceso (Acces Point). En realidad, la comunicación inalámbrica digital no es una idea nueva. Ya en
1901 el físico italiano Marconi demostró un telégrafo inalámbrico de barco a costa usando el código Morse
(los puntos y las rayas son binarios después de todo). Los sistemas inalámbricos modernos tienen mejor
rendimiento, pero la idea básica es la misma. La tarjeta inalámbrica es ya moneda corriente en portátiles,
pero también es frecuente en equipos de sobremesa.
132
Capítulo 4. Conexión a la red
Tarjeta de red inalámbrica
Punto de acceso
Además de los dispositivos físicos para que sea posible la comunicación todas las computadoreas de
la red, independientemente de cual sea su sistema operativo, tienen que hablar el mismo lenguaje. A ese
lenguaje común que permite el intercambio de información en la red le llamamos un protocolo de red.
Aunque son muchos los protocolos de red nos interesa el TCP/IP puesto que es la base sobre la que se
contruye Internet y la mayoría de las redes locales.
En realidad TCP/IP más que un protocolo es un conjunto de protocolos: Protocolo de Control de Transmisión (TCP) y Protocolo de Internet(IP). Aunque la descripción de este conjunto de protocolos escapa con
mucho a los propósitos de este curso nos quedaremos con lo más característico.
El protocolo TCP/IP exige que cada máquina de la red tenga una dirección IP única. La convención es
escribir estas direcciones en la denominada notación decimal separada por puntos (dotted decimal notation).
En esta notación cada dirección IP es descrita como un conjunto de cuatro números del rango 0 a 255
separados por puntos. Así 192.168.0.1 ó 172.126.0.1 son direcciones IP válidas mientras que 192.162.256.0
ó 192.23.4 no lo son.
4.4.2. Configuración de la red con Guadalinex
El proceso de configuración de una tarjeta de red en Guadalinex se realiza, comunmente, durante la
instalación del sistema operativo. En cualquier caso, el usuario pudo decidir postergar este proceso por
diferentes razones. El proceso a seguir para preparar el ingreso del equipo en una red local es el siguiente:
1. Lanzamos la aplicación Red del menú Aplicaciones de Gnome (submenú Configuración/Sistema)
2. Introducimos la contraseña de administración y nos centramos en la pestaña Conexiones
133
Capítulo 4. Conexión a la red
Configuración de la red
3. Seleccionamos el dispositivo asignado a nuestra tarjeta de red y pinchamos en Propiedades
Propiedades del dispositivo
4. En la ventana propiedades de la interfaz, seleccionamos la opción Manual (si necesitamos una configuración de red fija), o bien Automática (si disponemos de un servidor dhcp en la red)
5. En caso de seleccionar el modo Manual, debemos asignar una dirección IP y máscara de subred al
equipo, acorde con los datos de nuestra red local (solicite estos datos al administrador de la red local).
El dato puerta de enlace no es necesario para configurar una red local. Sin embargo si usted tiene
acceso a Internet a través de algún dispositivo tal como un modem/router o una computadora que esté
134
Capítulo 4. Conexión a la red
compartiendo la conexión a Internet debe poner aquí su dirección IP.
Todos estos datos son escritos en el fichero /etc/network/interfaces cuyo contenido puede ser
más o menos el siguiente:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp
name Tarjeta de red Ethernet
En este fichero la primera intefaz definida es lo que es la interfaz de loopback necesaria para el buen
funcionamiento de sistema. En general no tendrá que preocuparse de ella.
Al siguiente interfaz definida es la interfaz Ethernet eth0. Se dice que tomará la dirección por medio de
un servidor dhcp y que se activará automáticamente en el arranque (auto eth0)
Aquí tiene otro ejemplo esta vez con asignación de IP estática y con puerta de enlace en 192.168.1.1
auto eth0
iface eth0 inet static
address 192.168.1.6
netmask 255.255.255.0
gateway 192.168.1.1
Usted puede ver en todo momento cómo está configurada su/s tarjeta/s de red con el comando:
#ifconfig eth0
Link encap:Ethernet HWaddr 00:03:0D:2C:E4:D9
inet addr:192.168.1.6 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::203:dff:fe2c:e4d9/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:19379 errors:0 dropped:0 overruns:0 frame:0
TX packets:16890 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:20769263 (19.8 MiB) TX bytes:2614203 (2.4 MiB)
Interrupt:5 Base address:0x400
Asimismo puede ver la tabla de rutas de red incluido su gateway con
#routeKernel IP routing table
Destination
Gateway
Genmask
192.168.1.0
*
255.255.255.0
default
192.168.1.1 255.255.255.0
UG
Flags Metric Ref
U
0
0
0
0
Use Iface
0 eth0
0 eth0
Una misma tarjeta de red puede tener más de una dirección IP. Para ello modifique el fichero
/etc/network/interfaces de este modo:
auto eth0
iface eth0 inet static
address 192.168.1.6
netmask 255.255.255.0
gateway 192.168.1.1
auto eth0:0
iface eth0:0 inet static
address 172.74.1.2
netmask 255.255.255.0
135
Capítulo 4. Conexión a la red
Como ve puede añadir tantos dispositivos como desee comenzando por eth0:0 y siguiendo por eth0:1,
eth0:2, etc. Para activar un tarjeta de red inmediatamente utilice el comando ifup cuya sintaxis general es
ifup nombre_interfaz por ejemplo, ifup eth0:0 Para desactivar una tarjeta de red inmediatamente
utilice el comando ipdown cuya sintaxis general es ifdown nombre_interfaz por ejemplo, ifdown
eth0
4.4.3. Compartir recursos en redes Windows™ con SAMBA
Samba es una suite de aplicaciones Unix que habla el protocolo SMB (Server Message Block). Mediante el soporte de este protocolo, Samba permite a los servidores Unix entrar en acción, comunicando
con el mismo protocolo de red que los productos de Microsoft Windows™. De este modo, una máquina
GNU/Linux con Samba puede funcionar como servidor en una red Microsoft™ y ofrecer entre otros los
siguientes servicios:
•
Compartir uno o más sistemas de archivos.
•
Compartir impresoras, instaladas tanto en el servidor como en los clientes.
•
Funcionar como un Controlador Principal de Dominio (PDC)
•
Samba puede actuar también como cliente usando los servicios (discos e impresoras) ofrecidos por máquinas Windows.
4.4.3.1. Acceder desde Guadalinex a recursos compartidos en máquinas
Windows
En este primer caso veremos a Guadalinex como cliente accediendo a recursos compartidos en computadoras con Windows. Los pasos a seguir para acceder a recursos compartidos fuera de nuestra máquina son
los siguientes:
1. Hacemos doble click en el icono Equipo del Escritorio.
2. Posteriormente, doble click en el icono Red.
3. A continuación, tras un pequeño tiempo de espera, aparecerá el icono Red de Windows, sobre el que
tendremos que hacer doble click.
4. Tras un lapso de espera, surgirán los dominios y grupos que se encuentren en la Intranet. Accederemos
a ellos con doble click.
136
Capítulo 4. Conexión a la red
Red Windows
5. Una vez dentro del dominio/grupo, aparecerán automáticamente los equipos disponibles. Tendremos
que hacer doble click sobre el equipo al que queramos acceder.
Equipos del dominio
6. Por último, debemos facilitar el nombre de usuario y contraseña correctos para poder acceder al equipo
si así se solicita, y a continuación, acceder al recurso que buscábamos.
137
Capítulo 4. Conexión a la red
Recursos compartidos
Si lo que queremos es montar el recurso windows como parte de nuestro propio sistema de ficheros
utilizaremos la orden:
#smbmount //nombre_máquina_windows/nombre_recurso
punto_de_montaje
Por ejemplo
#smbmount //portatil/documentos /mnt/documentos
Donde portatil es la máquina con Windows que comparte el recurso documentos. Por su parte el directorio /mnt/documentos debe existir previamente.
Habitualmente lo mejor es incluir una línea como ésta en el fichero filename>/etc/fstab
//portatil/documentos /mnt/documentos smbfs username=pepe,password=dr45g,user,noauto,rw 0 0
Si el acceso al recurso no requiere de nombre de usuario y contraseña omitiremos los parámentros
username y password)
Esto nos permitiría montar el recurso con tal sólo un par de clics de ratón desde el icono Equipo.
4.4.3.2. Acceder desde Windows a recursos compartidos en máquinas
Guadalinex
En este segundo caso nuestro Guadalinex funcionará como servidor ofreciendo recursos (carpetas y
archivos) para que puedan ser accedidos desde las computadoras Windows. En primer lugar debemos asegurarnos de que el servidor samba está activo. Para activarlo vaya ejecute la orden
# /etc/init.d/samba start
138
Capítulo 4. Conexión a la red
Si quiere que se active cada vez que se arranque el sistema la manera más fácil es ir al menú
Aplicaciones−→configuración−→Sistema−→Red. En la ventana emergente y bajo la pestaña General
marque la casilla Habilitar el trabajo en red de Windows. Ponga en Descripción una breve descripción de
su equipo o deje el valor por defecto. En el campo Dominio/Grupo de trabajo escriba el nombre del grupo
de trabajo o dominio de Windows al que pertenecerá su equipo. Finalmente pulse Aceptar.
Habilitar SAMBA
El fichero de configuración del servidor samba es /etc/samba/smb.conf Durante la instalación de
Guadalinex 2004 se crea este fichero con unas configuraciones suficientes para que el servidor se ejecute
sin problemas. Sin embargo, de acuerdo con nuestros objetivos debemos hacer algunas modificaciones. El
fichero smb.conf tiene un aspecto muy parecido al del los ficheros de configuración *.ini de Windows.
Está divido en secciones marcadas entre corchetes [] que contienen diferentes parámetros. Los signos # y ;
son comentarios.
La primera sección es [global] que controla la operativa general del servidor. Su aspecto inicial es:
[global]
netbios name = GUADALINEX2004
server string = GUADALINEX 2004
workgroup = GUADALINEX
wins support = no
encrypt passwords = true
netbios name. El nombre netbios es el nombre con que será conocido el equipo en la red Windows. Puede
dejarlo como está. Ahora bien si en su red hay varios equipos con Guadalinex instalado debe cambiarlo
puesto que el nombre netbios debe ser único. Para este propósito puede hacer dos cosas o bien asigna
un nombre del modo: netbios name = marlera (Para el nombre netbios no utilice ni espacios ni caracteres extraños tales como acentos o eñes) o bien comenta o borra este parámetro.;netbios name =
GUADALINEX2004, en cuyo caso se tomará como nombre netbios el nombre UNIX de la máquina. Puede
ver el nombre de su máquina con tan solo ejecutar la orden: #hotsname11
139
Capítulo 4. Conexión a la red
server string = GUADALINEX 2004. Se pone aquí una descripción de la máquina con la que será conocida
en la red Windows. Puede poner aquí una descripción significativa de su computadora.
workgroup = GUADALINEX. Cambie este parámetro para ajustarlo al nombre del grupo de trabajo o
dominio de Windows al que pertenecerá su máquina.
A continuación vienen una o más secciones acotadas entre corchetes [...] indicando los recursos compartidos así como los privilegios de acceso que tendrán los usuarios cuando accedan a ellos.
[compartido]
path = /home/compartido
comment = Directorio compartido en Guadalinex 2004
writeable = no
guest ok = yes
guest only = yes
browseable = yes
La sección indica que estamos compartiendo la carpeta /home/compartido, que será vista por los
equipos Windows con el nombre "compartido". Expliquemos esta sección un poco más.
[compartido]. Indica el nombre con que verán las máquinas Windows el recurso.
path= /home/compartido. Indica cuál es la carpeta real de su sistema de ficheros que está siendo compartida. Todo lo que pongamos en el interior de /home/compartido será visto por la máquinas de la red
Windows.
writeable = no. No se pueden borrar ni crear ficheros o subdirectorios en la carpeta "compartido", loo que
significa que se comparte con permisos de sólo lectura.
guest ok = yes / guest only = yes. No se precisa ser un usuario registrado del sistema para acceder a la
carpeta
browseable = yes. Los usuarios que accedan al recurso podrán explorar el contenido de la carpeta y de las
subcarpetas que pudiera contener.
Importante: En guadalinex 2004 se ha habilitado un mecanismo para facilitar al usuario final compartir
carpetas con el resto de usuarios de la red. En cada home de usuario existe una carpeta de nombre
"compartido" que en realidad es un enlace simbólico a /home/compartido. Así que cuando queremos
ofrecer al resto de la red un fichero o directorio tan sólo tenemos que copiarlo o crearlo aquí.
Seguramente la mejor forma de ver cómo funciona el servidor Samba sea con unos sencillos ejemplos.
En lo que sigue supondremos que tenemos la siguiente estructura:
•
Máquina Guadalinex.
nombre = marlera
descripción = Guadalinex 2004
•
Máquina Windows XP.
nombre = portatil
descripción = Equipo con Windows XP
Ambos equipos pertenecen al grupo de trabajo CVALERA
Caso 1. Queremos que las máquinas Windows accedan al recurso cuyo nombre es "compartido" situado en
marlera pero sin tener que utilizar un nombre y contraseña de usuario.
140
Capítulo 4. Conexión a la red
Debemos modificar la sección [global] añadiendo la línea
security = share
Explicación. Por defecto cuando una máquina Windows trata de acceder a un recurso en un servidor
samba debe suministrar un nombre de usuario y contraseña válidos. De este modo deshabilitamos tal necesidad. Los privilegios de acceso serán los que se indiquen para cada recurso compartido.
Adicionalmente queremos que se pueda borrar y crear carpetas o ficheros en el recurso compartido.
Debemos entonces modificar la sección
[compartido]
writeable = yes
También queremos añadir un nuevo recurso compartido con el nombre "publico" que corresponda a la
carpeta real /home/samba. Para ello:
mkdir /home/samba
chmod 755 /home/samba
Y en el fichero smb.conf añadimos:
[publico]
path = /home/samba
comment = Directorio de acceso pubico
writeable = no
guest ok = yes
guest only = yes
browseable = yes
Para que los cambios tengan efecto debe reiniciar el servidor samba:
#/etc/init.d/samba restart
Previamente podemos comprobar si hemos escrito correctamente todo en smb.conf con la orden:
#testparm
Ahora en la máquina Windows XP en el explorador de ficheros y tras pulsar el enlace "Ver equipos del
grupo de trabajo" nos aparecerá una ventana como la siguiente:
141
Capítulo 4. Conexión a la red
Acceso desde Windows XP
Si hacemos doble clic sobre el icono que representa al equipo Guadalinex 2004 (Marlera) podremos ver
los recursos que nos ofrece sin necesidad de suministrar un nombre de usuario.
142
Capítulo 4. Conexión a la red
Recursos compartidos
Caso 2. Queremos que sólo los usuarios registrados en Guadalinex puedan tener acceso a los recursos
compartidos.
En primer lugar en la sección [global] añadimos la línea
security = user
Esto no es necesario ya que éste es el modo por defecto del servidor samba. Si lo añadimos es simplemente por claridad. Ahora debemos crear el usuario para el servidor samba. Para crear un usuario samba
#smbpasswd -a pepe
Se nos pedirá dos veces que escribamos la contraseña para ese usuario.12 Es importante distinguir los
usuarios UNIX estándar creados con el comando adduser y almacenados en el fichero /etc/passwd; de
los usuarios samba creados con smbpasswd y almacenados en /etc/samba/smbpasswd. Para que un
usuario pueda acceder a un recurso compartido en un servidor samba no basta con que tenga una cuenta
unix estándar, es necesario que además tenga una cuenta samba. Sin embargo para que un usuario pueda ser
añadido a un servidor samba es preciso que tenga ya previamente una cuenta unix estándar. No ocurre así
con la contraseña que puede ser diferente.
Ahora en las máquinas Windows cuando tratemos de acceder a la máquina Guadalinex se nos solicitará
un nombre de usuario y una contraseña sin la cual no tendremos acceso a los recursos.
Registro
Adicionalmente queremos que cuando un usuario acceda a la máquina con Guadalinex se le muestre,
además de los recursos compartidos en general, su propia carpeta de inicio de usuario. Para ello añadimos
la sección
[homes]
comment = Carpeta de inicio de usuario
browseable = no
writable = yes
valid users = %S
create mode = 0664
directory mode = 0775
Cuando el usuario acceda desde la máquina Windows a Guadalinex verá además de los recursos compartidos generales su propia carpeta de inicio.
143
Capítulo 4. Conexión a la red
Compartir la carpeta de inicio
4.4.3.3. Agregar a una impresora instalada en Windows.
Veamos cómo imprimir en una impresora conectada a una máquina windows utilizando samba.
Supongamos una impresora de nombre lexmark conectada a un equipo Windows de nombre fede. Para
ello iniciamos CUPS y accedemos mediante el navegador con: localhost:631.
Optamos por añadir una impresora y para ello pulsamos el enlace Manage Printers y después Add
printers. Rellenamos los campos Name, Location y Description como de costumbre.
En la lista desplegable Device seleccionamos Windows Printer via Samba y pulsamos Continue
144
Capítulo 4. Conexión a la red
Añadir impresora compartida
En el campo de texto Device URI escribimos:
•
Si la máquina está en el mismo grupo de trabajo y no se requiere usuario y contraseña
smb://nombre_máquina/nombre_impresora
•
Si la máquina está en el mismo grupo de trabajo y se requiere usuario y contraseña
smb://usuario:contraseña@nombre_máquina/nombre_impresora
•
Si la máquina está en otro grupo de trabajo y no se requiere usuario y contraseña
smb://grupo_trabajo/nombre_máquina/nombre_impresora
•
Si
la
máquina
está
en
otro
grupo
de
trabajo
y
se
requiere
usuario
y
contraseña
smb://usuario:contraseña@grupo_trabajo/nombre_máquina/nombre_impresora
Ahora sólo nos queda seleccionar el driver adecuado.
145
Capítulo 4. Conexión a la red
Configurar el acceso
4.4.3.4. Agregar una impresora instalada en Guadalinex
Veamos cómo imprimir en una impresora conectada a una máquina Guadalinex utilizando samba. Tenemos que modificar la sección [global] del fichero smb.conf añadiendo las líneas:
load printers = yes
printing = cups
printcap name = cups
Debemos también añadir una sección
[printers]
comment = All Printers
path = /var/spool/samba
browseable = no
public = yes
guest ok = yes
writable = no
printable = yes
printer admin = root, @ntadmins
También hay que modificar un par de ficheros de CUPS para permitir que se envíen a la impresora datos
"crudos" sin aplicarles filtro alguno, ya que esta función la realizará el driver instalado en Windows.
En /etc/cups/mime.types hacia el final descomente la línea application/octet-stream
En /etc/cups/mime.conv hacia el final descomente la línea
application/octet-stream
application/vnd.cups-raw
0
-
En la máquina Windows instale la impresora como lo haría si estuviese conectada a un equipo Windows.
146
Capítulo 4. Conexión a la red
4.4.4. El sistema de ficheros NFS
Aunque puede utilizarse Samba para compartir recursos entre equipos sólo con Guadalinex lo más elegante y a la larga más eficaz para estos casos es utilizar NFS.13 El Sistema de Archivos de Red (NFS,
Network File System) es una forma de compartir ficheros eficaz y rápida entre equipos de una misma red
que soporten este sistema, de forma que tenga la apariencia de que éstos están en el disco duro del equipo
cliente.
NFS sólo podrá ser utilizado cuando los equipos entre los cuales deseamos compartir los archivos utilizan
Linux como sistema operativo.
El funcionamiento de NFS es muy sencillo; se basa en el concepto de que un equipo actúe como servidor
al compartir archivos y otro como cliente, pudiendo operar un mismo equipo como servidor y como cliente
al mismo tiempo (si deseamos compartir archivos o carpetas de nuestra propiedad y a la vez queremos tener
acceso a recursos de otros equipos).
Lo mejor será verlo con un ejemplo. Partimos de una máquina cuya dirección IP es 192.168.1.6 que actuará como servidor y compartirá vía nfs el directorio /home/nfs en el que todo el mundo tendrá permisos
de lectura y escritura. Además quiere que el recurso compartido esté disponible para todas las máquinas de
su red.
4.4.4.1. Configuración del servidor
Lo primero es instalar los paquetes necesarios para el sistema nfs, para ello:
#apt-get install nfs-common nfs-user-server portmap
Importante: En vez del paquete nfs-user-server podría haberse instalado en su lugar
nfs-kernel-server. En ambos casos estamos proporcionando soporte para el servidor nfs, sólo que
un caso a nivel de espacio de usuario y en otro a nivel de kernel. El soporte a nivel de kernel es más
rápido, el soporte en espacio de usuario es más lento pero ofrece más posibilidades.
El fichero clave para NFS es /etc/exports, aquí situaremos qué vamos a compartir, quién tendrá
acceso y con qué privilegios. Siguiendo con nuestro ejemplo lo primero será crear el directorio /home/nfs,
para ello:
#mkdir /home/nfs
#chmod 777 /home/nfs
Ahora modificamos el fichero /etc/exports añadiéndole la línea
/home/nfs 192.168.1.0/255.255.255.0(rw)
En esta línea decimos que vamos a compartir el directorio /home/nfs, qQue al él tendrán acceso todas
las máquinas de la red 192.168.1.0 (es decir todas las máquinas de nuestra red) y que será compartido con
permisos de lectura y escritura. Una vez hechas las modificaciones únicamente nos queda que el servidor
las lea, para ello ejecutamos:
#/etc/init.d/nfs-user-server restart
147
Capítulo 4. Conexión a la red
4.4.4.2. Configuración del cliente
Será necesario instalar al menos los paquetes nfs-common y portmap, aunque podría ser también conveniente instalar nfs-user-server, si queremos más adelante servir ficheros vía nfs. Para ello ejecutamos
la orden:
#apt-get install nfs-common portmap
Y ahora simplemente montamos el recurso con la orden:
#mount -t nfs 192.168.1.5:/home/nfs /mnt/test
Donde /mnt/test es un punto de montaje que debe existir previamente en nuestro sistema de ficheros.
En principio podemos hacer el montaje en cualquier directorio de nuestro sistema de ficheros.
Si queremos que el montaje sea automático cada vez que arranquemos el ordenador tan sólo debemos
incluir una nueva línea en nuestro fichero /etc/fstab de este modo:
192.168.1.6:/home/nfs
/mnt/test
nfs rsize=8192,timeo=14,intr
Conviene explicar esto un poco. En el primer campo indicamos la dirección del servidor y el recurso
que vamos a montar. En el segundo indicamos el punto de montaje. En el tercero indicamos el sistema de
ficheros, en este caso nfs. El cuarto campo es un tanto más críptico:
rsize indica el tamaño del datagrama de usuario enviado por los clientes en las operaciones de lectura y
escritura.
timeo indica el tiempo en décimas de segundo que el cliente esperará a que una operación se complete.
Es decir, indica el tiempo que el cliente esperará a que el servidor le responda. Si se sobrepasa este tiempo
(timeout) entonces ocurrirá lo que indica el siguiente parámetro.
intr indica abortar la operación cuando el servidor no responde.
Estos dos últimos parámetros, en definitiva, indican qué hay que hacer cuando el servidor no responde,
bien porque esté muy ocupado o bien porque se haya caido.
Notas
1. La Guadapedia trata de recopilar toda la información acerca de la configuración y uso de Guadalinex,
puede encontrarse en la dirección URL http://www.guadalinex.org/guadapedia/
2. Lo único que tendrá que hacer es instalar en su ordenador una tarjeta de red si es que no la tiene ya.
La conexión con modem/router es más versátil, de mayor calidad y es completamente independiente
del sistema operativo de los ordenadores cliente. Por ejemplo con un modem/router podrá conectar sin
ningún problema varios ordenadores a Internet simultáneamente.
3. en la terminal de root lanzada anteriormente, tecleamos la orden
cp /etc/ppp/peers/provider /etc/ppp/peers/dsl-provider
4. PPPoE (Point-to-Point Protocol over Ethernet) es un protocolo usado por muchos proveedores de Servicios de Internet sobre ADSL. Tendrá que consultar a su proveedor para saber si utiliza este protocolo.
Habitualmente si no tiene ip fija será éste su caso
5. Habitualmente los proveedores de acceso distribuyen los routers configurados en modo "multipuesto",
por lo que lo único que tendrá que hacer es asegurarse de que es así. Por supuesto para hacer la configu-
148
Capítulo 4. Conexión a la red
ración aquí descrita olvide cualquier CDROM o Kit autoinstalable que le haya facilitado su proveedor.
Le recordamos que para esta configuración su ordenador necesita una tarjeta de red. Aunque la inmensa
mayoría de las tarjetas de red están soportadas por GNU/Linux, si planea comprar una asegúrese de que
está soportada. En cambio en general no importa cuál sea la marca o modelo del modem/router.
6. La compatibilidad de una tarjeta depende del chipset que incorpore. Chipset significa conjunto de circuitos integrados. Un mismo chipset puede estar incorporado a distintas tarjetas de marcas y modelos
diferentes. Por ello para saber si una tarjeta WiFi está soportada más que el dato de marca y modelo
será necesario conocer cuál es su chipset
7. En sentido estricto el filtrado de paquetes es proporcionado por el subsistema netfilter. El subsistema
netfilter proporciona un filtrado de paquetes con vigilancia continua o sin ella, así como también NAT
y servicios de enmascaramiento IP. Netfilter también tiene la habilidad de mutilar la información IP de
cabecera para un enrutamiento avanzado y gestión del estado de la conexión. Netfilter es controlado a
través de la utilidad iptables.
8. Esto sucede típicamente cuando se usa un modem USB, serie o interno. El procedimiento aquí descrito
y tomado de la Guadapedia es útil para pequeñas redes domésticas. Si usted administra una LAN de
mayor tamaño y sobre todo con mayores requerimientos de seguridad, deberá ampliar la información
sobre el uso de iptables.
9. El número detrás de la barra inclinada "/" indica la máscara de red en notación abreviada. Asi 24
equivale en notación decimal a la máscara 255.255.255.0 es decir, tres octetos a uno lo que da 24. 16
equivale a 255.255.0.0 es decir, dos octetos a 1 lo que da 16
10. En una situación típica usted conectará su máquina a Internet con un modem USB o serie y compartirá
la conexión con el resto de equipos a través de su tarjeta de red Ethernet, conectada a un concentrador de
red o mediante un cable cruzado. En ese caso su interfaz de acceso a Internet será ppp0 y la interfaz de
red interna eth0. En otro escenario usted podría tener un modem/router de acceso a Internet confgurado
en monopuesto y su máquina una sola interfaz de red. En ese caso tanto la interfaz de acceso a Internet
como la de la red interna serían la misma. Un último escenario, frecuente por ejemplo en un Centro
educativo, es que se disponga de un modem/router configurado en modo monopuesto y una máquina
con dos interfaces de red: una conectada al router y la otra a la red interna mediante un concetrador. En
ese caso la interfaz de Internet podría ser por ejemplo eth0 y la interna eth1
11. Cambiar el nombre de su máquina es sencillo, simplemente ejecute la orden #hostname
nuevo_nombre
12. Si más adelante queremos cambiar la contraseña suprimiremos el parámetro -a y escribiremos únicamente smbpasswd pepe Para eliminar un usuario escriba smbpasswd -x nombre_usuario
13. Por cierto este es el sistema que se emplea actualmente en los Centros TIC, para que los usuarios puedan
acceder a sus carpetas desde cualquier máquina de la red.
149
Capítulo 5. Instalación de programas
5.1. Introducción
Lo único que pretendemos en estas páginas es ofrecer una guía rápida útil para el usuario final. La
información contenida en este capítulo puede ampliarse convenientemente consultando la guía de referencia
Debian (http://www.debian.org/doc/manuals/reference/reference.es.html)
A estas alturas seguramente no le extraña que le remitamos a Debian, pues como usted sabe Guadalinex
no es otra cosa que una metadistribución de Debian, una de las distribución de GNU/Linux consideradas
"mayores".1
Podría considerarse que el modo más simple de instalar una aplicación sería copiar al disco duro todos
los ficheros, binarios y de configuración, necesarios para que ésta funcione. Pero esta tecnología de instalación aparentemente sencilla es sin embargo muy ineficaz. Sucede a menudo que una o más aplicaciones
comparten rutinas, funciones o procedimientos. Ocurre incluso que una aplicación hace uso de la funcionalidad que aportan otras aplicaciones. En este escenario instalar las aplicaciones como todos separados es
poco eficiente puesto que duplicaríamos innecesariamente y de modo desproporcionado el número de los
ficheros.
Los paquetes normalmente contienen todos los archivos necesarios para implementar un conjunto de
aplicaciones o características relacionadas. Un "paquete" Debian, o un archivo Debian, contiene los ejecutables, bibliotecas y documentación asociada con una forma particular de un programa o conjunto de
programas relacionados. Normalmente un archivo Debian tiene un nombre que acaba en .deb.
En Debian se emplea un sistema de control de paquetes que permite que el administrador del sistema
instale o desinstale éstos, sin que en ningún momento queden programas instalados que no funcionen por
falta de otros incluidos en su paquete. El sistema de control de paquetes usualmente también se ocupa
de mantener las dependencias entre paquetes: si algún paquete depende de otro, el sistema se encarga de
instalar este primero.
En efecto, la instalación de software por el sistema de paquetes usa "dependencias" que son cuidadosamente diseñadas por los encargados del paquete. Estas dependencias están documentadas en el archivo
de control asociado con cada paquete. Por ejemplo, el paquete que contiene el compilador de C de GNU
(gcc) "depende" del paquete binutils que incluye el enlazador y el ensamblador. Si un usuario intenta
instalar gcc sin haber instalado antes binutils, el sistema de paquetes de Debian dará un mensaje de error
avisando de que necesita la instalación de éste.
El sistema de paquetes Debian tiene un conjunto de "dependencias" diseñadas para indicar hasta qué
punto un paquete cualquiera, al que llamaremos A, necesita o está relacionado con cualquier otro paquete,
al que llamaremos B. Así decimos que:
•
El paquete A depende del paquete B si B tiene que estar instalado obligatoriamente para que funcione A.
•
El paquete A recomienda al paquete B, si el responsable del paquete considera que la mayoría de usuarios
no querrán A sin tener la funcionalidad permitida por B.
•
El paquete A sugiere al paquete B si B contiene archivos que están relacionados con (y normalmente
mejoran) la funcionalidad de A.
•
El paquete A entra en conflicto con el paquete B cuando A no funcionará si B está instalado en el
sistema. La mayoría de las veces los conflictos son casos en los que A contiene archivos que son una
mejora respecto a los que contiene B. Los "Conflictos" se combinan frecuentemente con "reemplazos".
150
Capítulo 5. Instalación de programas
•
El paquete A reemplaza al paquete B cuando archivos instalados por B son borrados y (en algunos casos)
sobrescritos por archivos en A.
•
El paquete A proporciona el paquete B cuando todos los archivos y la funcionalidad de B se incorporan
en A. Este mecanismo proporciona un modo de que los usuarios con espacio de disco reducido instalen
la parte del paquete A que realmente necesitan.
5.2. Distribuciones Debian
Los programas en Debian, como en cualquier otro sistema, están en constante evolución: algunos paquetes se eliminan porque son considerados obsoletos, otros se mejoran y se crean otros nuevos.
En el proceso de creación de una aplicación cualquiera se pasa normalmente por tres fases: una primera
fase donde la aplicación aunque tal vez sea usable es sin embargo muy inestable; un segundo período donde
parece funcionar bien aunque no se descarta que produzca errores; hasta que llega a la madurez, se consolida
y la consideramos ya fiable. Poco más o menos lo que ocurre con el desarrollo intelectual, emocional y moral
de las personas. O tal vez no...
Las empresas de desarrollo comerciales siempre tratan de adelantarse a la competencia sacando a la
luz un software con el propósito de ganar cotas de mercado. Esto a menudo supone que el programa se
comienza a vender prematuramente, antes de que esté listo. Más adelante se comienzan a distribuir un sin
fin de parches y parches de parches.
En cambio en Debian la preocupación fue siempre la estabilidad y fiabilidad del sistema. Por eso se
distribuye en tres versiones, dependiendo del estado de desarrollo del conjunto de las aplicaciones: estable
(stable), de prueba (testing) e inestable (unstable).
La versión estable, denominada también sarge, es la más fiable, la que ha sufrido un mayor proceso de
prueba y depuración. Esta versión es la única que tiene número (actualmente la 3.1, publicada el 6 de junio
de 2005). A las demás no se les asigna un número sino únicamente un nombre.
La versión de prueba, también conocida como etch, contiene los paquetes que ya han sido probados
durante un cierto tiempo en la rama inestable. Estos paquetes deben estar en sintonía con todas las arquitecturas para las cuales fueron construidos y deben poder instalarse; además, deben tener menos fallos críticos
que las versiones que se encuentran en la rama inestable. De esta manera, es de esperar que la rama de
prueba sea la posible candidata de la próxima versión.
La distribución inestable, denominada siempre sid, contiene la imagen más reciente del sistema en desarrollo. Se alienta a los usuarios a usar y probar estos paquetes pero se les advierte sobre su estado. La
ventaja de usar la distribución inestable es que uno siempre está actualizado con lo último del proyecto
Debian, pero también corre el riesgo de que deje de funcionar. Esta versión no es recomendable instalarla
en sistemas en producción.2
A la versión stable se la ha tachado en ocasiones de ser demasiado "conservadora". Por ello muchos
usuarios Debian prefieren la versión testing, se benefician de este modo de los más recientes desarrollos al
tiempo que conservan un buen nivel de fiabilidad. Guadalinex está basada, según sus desarrolladores, en la
rama estable. Aunque es posible, no suele ser buena idea mezclar paquetes procedentes de distintas ramas,
a no ser que se sea un usuario experimentando y se sepa muy bien qué se está haciendo.
5.3. Herramientas para el manejo de paquetes
dselect. herramienta de administración de paquetes basada en menús
151
Capítulo 5. Instalación de programas
dpkg. instala paquetes
apt-get. instala paquetes resolviendo las dependencias
tasksel. instala tareas (conjunto de paquetes)
aptitude. interfaz gráfica para APT basada ncurses
synaptic. otra interfaz gráfica para APT
Estas herramientas no están en un mismo nivel. dselect se ejecuta encima de APT (apt-get) y dpkg,
es decir, cuando se le pide a dselect que haga algo automáticamente echará mano de apt-get y dpkg.
En cuanto a la dependencia entre paquetes, apt-get obtiene automáticamente los paquetes que dependen
entre sí (depends) pero ignora los paquetes recomendados (recommends) y sugeridos (suggests). dselect,
en cambio, ofrece un control más avanzado de los paquetes basado en menús que ofrece la posibilidad de
elegir paquetes basándose en depends, recommends y suggests. aptitude tiene la opción de descargar todos
los paquetes automáticamente basándose en depends, recommends y suggests.
En lo que sigue no vamos a ver ni todas las utilidades ni todas las funciones de cada una de ellas, nos
centraremos en cambio en el uso más frecuente que necesitará hacer de ellas.
5.3.1. La herramienta APT
5.3.1.1. Configuración de fuentes para apt (el fichero
/etc/apt/sources.list)
Toda la información contenida en esta sección puede ampliarse consultando el how-to (cómo) de apt.
Para ello abra una terminal y escriba:
apt-howto
Lo primero que hay que hacer para usar apt y los programas que dependen de él es indicarle dónde
debe buscar paquetes Debian para crear su base de datos. Las fuentes de paquetes se indican en el fichero
/etc/apt/sources.list y son básicamente de dos tipos: URLs y CD-ROMs. Los primeros incluyen
direcciones http, ftp y directorios locales, mientras que los segundos se refieren a unidades de CD extraibles,
como los CD s de instalación de Debian y otros CDs conteniendo paquetes debian. Las fuentes tipo URL
se indican en /etc/apt/sources.list con líneas de este tipo:
deb http://http.guadalinex.org/debian/ sarge main contrib non-free
En cada línea se indica la localización del directorio principal, la versión de la distribución (sarge o
stable, testing, unstable) y las secciones que se quieren tomar.
Para hacer uso de esta funcionalidad se requiere tener acceso a Internet, pues los paquetes así indicados se guardan en grandes depósitos, a los cuales denominamos repositories (traducido literalmente como
repositorios). Debian mantiene una lista de repositorios oficiales para cada una de las versiones. Si todos
los usuarios a la hora de instalar paquetes accediesen a los repositorios oficiales terminarían colapsando el
sistema. Para evitar este problema se mantienen copias exactas de los repositorios Debian en otros lugares
de Internet.
A estos lugares que mantienen una copia de la paquetería oficial de Debian les denominamos mirrors
(espejos). A su vez otros grupos de usuarios que trabajan en proyectos relacionados con Debian pueden
mantener sus propios repositorios no oficiales contiendo paquetes que habitualmente no están integrados en
ninguna de las ramas oficiales.
152
Capítulo 5. Instalación de programas
Guadalinex 2004 mantiene su propio repositorio basado en el sarge de Debian. Pero no es un repositorio
oficial Debian y además hace ya bastante tiempo que no se actualiza. Podría pensarse que, puesto que el
repositorio Guadalinex está basado en sarge no habría problema en mezclar paquetes de Guadalinex 2004
con paquetes provinientes del repositorio oficial Debian sarge. Sin embargo nuestra experiencia es que al
mezclar paquetes de ambos repositorios el resultado no siempre es satisfactorio.
Su fichero /etc/apt/sources.list podría tener este aspecto:
# Junta de Andalucía (Repositorio raiz)
# Método HTTP
deb
deb
deb
deb
http://http.guadalinex.org/debian/ sarge main contrib non-free
http://http.guadalinex.org/debian-non-US/ sarge/non-US main contrib non-free
http://http.guadalinex.org/debian-security/ sarge/updates main contrib non-free
http://http.guadalinex.org/repositorio/ muflon guada
# Fuentes
# deb-src http://http.guadalinex.org/debian/ sarge main contrib non-free
# deb-src http://http.guadalinex.org/repositorio/ muflon guada
# Método FTP
# deb ftp://ftp.guadalinex.org/repositorio/ muflon main contrib non-free guada
# deb ftp://ftp.guadalinex.org/repositorio/ muflon/non-US main contrib non-free
# Mirror Oficial de Guadalinex: Centro Informático Científico de Andalucía (CICA)
# deb ftp://ftp.cica.es/debian/ testing main contrib non-free
# deb ftp://ftp.cica.es/guadalinex/repositorio/ muflon guada
#
#
#
#
#
#
Mirror Oficial de Debian
Sarge
deb http://ftp.fi.debian.org/debian/ testing main contrib non-free
deb http://ftp.fi.debian.org/debian-security/ sarge/updates main contrib non-free
deb http://non-us.debian.org/debian-non-US/ sarge/non-US main
contrib non-free
En este fichero las líneas que comienzan con # son comentarios y por tanto son ignoradas por apt.
También comienzan con # las líneas que hacen referencia a repositorios que en este momento no queremos
tener activos.
Las fuentes tipo CD ROM no se crean manualmente, sino que son introducidas en
/etc/apt/sources.list ejecutando el comando
#apt-cdrom add
Entonces el sistema pedirá que introduzcamos un CD ROM en la unidad, lo analizará en busca de paquetes Debian y actualizará tanto la información en el fichero de fuentes como otra información interna para
recordar en el futuro en qué CD ROM se encuentra cada paquete.
En cualquier caso siempre que hagamos cambios en el fichero /etc/apt/sources.list ya sea para
activar unos repositorios o desactivar otros se debe actualizar la base de datos de APT ejecutando:
#apt-get update
153
Capítulo 5. Instalación de programas
5.3.1.2. Instalación y desinstalación de paquetes
La instalación y desinstalación de paquetes con APT es extraordinariamente sencilla si se conoce el
nombre del paquete a instalar. Basta con ejecutar el comando
apt-get install
seguido de la lista de paquetes a instalar.
APT instalará los paquetes seleccionados y cualquier otro del que éstos dependan, resolviendo todas las
dependencias. Para la instalación considerará todas las fuentes listadas en /etc/apt/sources.list y
obtendrá las versiones más actualizadas de los paquetes, realizando las conexiones necesarias y solicitando los CDs que se necesiten. En caso de encontrar un paquete en varias fuentes, utilizará aquella que se
especifique en primer lugar en el fichero de fuentes. Por ejemplo,
#apt-get install mozilla gimp gnome-xbill
instalará los paquetes mozilla, gimp y gnome-xbill más todos aquellos que éstos necesiten. Para
desinstalar paquetes
apt-get remove
seguido de la lista de paquetes a desinstalar
Por defecto se conservan los ficheros de configuración del paquete que se desinstala, pero se puede
indicar que se borren con la opción --purge.
Por ejemplo,
#apt-get remove mozilla gimp gnome-xbill
desinstala los paquetes anteriores, y
#apt-get --purge remove mozilla gimp gnome-xbill
borraría además los ficheros de configuración.
El sistema APT incluye potentes algoritmos que permiten actualizar una gran cantidad de paquetes simultáneamente e incluso renovar la distribución completamente. Por ejemplo, si en el servidor web o ftp
han actualizado los paquetes de nuestra versión, podemos obtener las listas actualizadas con:
#apt-get update
y luego actualizar a las nuevas versiones de todos los paquetes que hayan sido actualizados con:
#apt-get upgrade
Este comando actualizará los paquetes que ya tuviéramos instalados en nuestro sistema, pero no añadirá
paquetes nuevos. Si estos paquetes nuevos son necesarios para actualizar alguno que ya tuviéramos instalado, simplemente éste último no se actualizará. Así que si lo que queremos es una actualización completa
del sistema debemos utilizar el comando:
#apt-get dist-upgrade
Este comando es útil sobre todo cuando la actualización supone un cambio a una versión completamente
nueva de la distribución (porque aparezca una nueva versión mayor o porque queramos cambiar a una de las
154
Capítulo 5. Instalación de programas
versiones de desarrollo) necesitamos usar otra opción que es capaz de manejar la actualización simultánea
de todos los paquetes de la distribución.
5.3.1.3. Otras opciones de apt-get
Cuando APT instala un paquete, descarga los archivos necesarios de los servidores
listados en /etc/apt/sources.list, éstos a su vez son guardados en un depósito local
(/var/cache/apt/archives/), y de ahí se procede con la instalación.
Con el tiempo el depósito puede crecer y ocupar mucho espacio en disco. Afortunadamente, APT provee
de herramientas para manejar su depósito local:
#apt-get clean
borra totalmente el repositorio local que contiene los ficheros .deb descargados
#apt-get autoclean
Al igual que clean, autoclean borra el repositorio local de paquetes descargados. La diferencia reside
en que sólo borrará aquellos paquetes que ya no pueden ser descargados, o son claramente inservibles.
apt-get -f
Algunas veces en la instalación de paquetes pueden producirse dependencias circulares, para salir de esta
situación utilice esta opción que trata de resolver conflictos de dependencias en la instalación de paquetes.
apt-get -s
Muestra las operaciones que haría pero no hace cambios en realidad.
5.3.1.4. Obtención de información sobre paquetes
La utilidad apt-cache permite obtener información diversa sobre los paquetes. Aquí se muestran las
opciones más útiles:
#apt-cache stats. muestra estadísticas generales sobre el sistema de paquetes: paquetes instalados,
disponibles, etc.
# apt-cache show paquete. muestra información general sobre paquete, incluyendo una descripción.
# apt-cache search regexp. busca paquetes con la expresión regular regexp en su descripción. Muy útil
para buscar un paquete sobre un tema determinado. Por ejemplo si queremos saber qué paquetes contienen
juegos de ajedrez podríamos utilizar:
$apt-cache search chess3dchess - 3D chess for X11
cgoban - complete Go board
cl-cil - Chess In Lisp. A library for cmucl.
eboard - A graphical chessboard program
...
Luego no tenemos más que instalar el paquete de nuestra elección.
155
Capítulo 5. Instalación de programas
5.3.1.5. Reconfiguración de paquetes instalados
Cada vez que un paquete es instalado, el sistema pasa automáticamente a la fase de configuración del
mismo. En muchas ocasiones la configuración se realiza sin la intervención del usuario, pero otras veces
ésta es necesaria para que el usuario eliga ciertas preferencias sobre la operación del programa, como en el
caso de los paquetes exim o ssh. Si en el futuro queremos modificar las opciones de instalación de uno de
los paqutes instalados, pueden darse tres situaciones:
1. No hay programa de reconfiguración: en este caso se deben editar los ficheros apropiados y modificar
allí las opciones deseadas. Es el caso, por ejemplo, de la configuración de los parámetros de la red.
2. El paquete posee un programa de configuración propio: en este caso basta con ejecutar dicho programa.
Por ejemplo, eximconf configura la instalación inicial del paquete exim.
3. El paquete emplea el sistema debconf para su configuración inicial. El sistema debconf es la interfaz
genérica de Debian para configurar paquetes durante su intalación inicial. Se tiende a que todos los paquetes de la distribución empleen este sistema. Si el paquete emplea este sistema, se puede reconfigurar
con el el comando
#dpkg-reconfigure
que presentará por defecto los parámetros de configuración empleados la última vez que se configuró
el paquete. Por ejemplo, para reconfigurar el paquete sshd:
# dpkg-reconfigure sshd
El propio sistema debconf puede configurarse con este método. Entre otras facilidades, debconf proporciona una variedad de interfases de configuración y la posibilidad de configurar los paquetes en bloque
antes de su descarga e instalación.
En cualquier caso, se recuerda que esta configuración se refiere a las opciones de instalación inicial de
los paquetes, y no a programas generales de configuración y administración del software. Estos programas,
si existen, dependen de cada paquete en concreto y tendremos que consultar la documentación del paquete
para averiguar si existen y cómo se usan.
5.3.2. La herramienta dpkg
La manipulación directa de ficheros de paquetes se realiza con el comando dpkg. Gracias a la existencia
de programas como dselect y apt-get, sólo es necesario usar dpkg cuando nos encontramos con paquetes
Debian sueltos, ésto es, que no forman parte de un archivo estructurado en la red o de un CD ROM con el
formato adecuando para apt-cdrom. El comando
#dpkg --install paquete.deb
instalará el fichero de paquete indicado. En caso de que se produzcan problemas de dependencias (falta
un paquete del que depende), el paquete no será configurado, pero será desempaquetado. En este caso
deberemos instalar también los paquetes necesarios para resolver las dependencias, con dselect o apt-get si
es posible o bien con dpkg y finalmente ejecutar
#dpkg --configure --pending
para configurar todos los paquetes pendientes de configuración.
Es necesario advertir que se debe ser cuidadoso con los paquetes instalados directamente con dpkg.
Por ejemplo, si tenemos instalada una versión stable de la distribución y tomamos paquetes de la versión
unstable , casi con toda seguridad tendremos que instalar versiones nuevas de las que depende este paquete.
156
Capítulo 5. Instalación de programas
El número de dependencias implicadas puede llegar a ser tan alto que implique a la práctica totalidad de los
paquetes instalados o a paquetes vitales para el sistema cuya instalación manual es, cuando menos, delicada
si no se sabe bien lo que se hace.
Una opción más adecuada para tomar paquetes de la distribución inestable es descargar los fuentes de
los mismos y compilarlos en nuestro sistema. Esto se realiza con la opción source de apt-get y con el
comando dpkg-buildpackage. El procedimiento se explica en el apartado siguiente.
Para desinstalar paquetes con dpkg se emplea
#dpkg --remove paquete
o bien
#dpkg --purge paquete
si se quiere además borrar los ficheros de configuración. En ambos casos se indica el nombre del paquete,
no del fichero .deb.
Otras opciones útiles de dpkg son:
#dpkg -I paquete.deb
nos muestra información detallada sobre el paquete. (Creador, fecha de creación, descripción, etc.)
#dpkg -c paquete.deb
nos muestra la lista de ficheros contenidos en el paquete.
5.3.3. Obtención y compilación de paquetes fuente Debian
También es posible descargar el código fuente de los paquetes Debian. Para ello debemos tener configurado el fichero sources.list con las líneas deb-src adecuadas. Por ejemplo:
deb-src ftp://ftp.uk.debian.org/debian unstable main contrib nonfree
Para descargar paquetes fuente se emplea la opción source de apt, siendo conveniente disponer de un
directorio específico para realizar las descargas, como /usr/local/deb. Por ejemplo:
#cd /usr/local/deb-src
#apt-get source gtoaster
La principal utilidad que tiene el descargar paquetes fuente para el usuario medio, es la posibilidad de
compilar en un sistema stable paquetes de la rama unstable.
Como se comentó más arriba, la instalación directa de paquetes binarios de la rama unstable en la stable
provoca múltiples conflictos de dependencias que prácticamente pueden obligar a la actualización completa
de la instalación a unstable, pero esto no suele ser deseable en sistemas en producción.
Muchas de estas dependencias se resuelven si obtenemos el paquete de la rama unstable en formato
fuente y lo compilamos dentro de la stable usando las librerías presentes en las mismas.
No obstante, es posible que programas de la rama unstable necesiten versiones actualizadas de las librerías u otros programas. Este hecho es más probable cuanto más espacio temporal separe las ediciones
estable e inestable de la distribución. En este caso es necesario obtener los paquetes fuente de las librerías
o programas a actualizar y realizar el mismo proceso con éstos.
157
Capítulo 5. Instalación de programas
A continuación se enumeran los pasos a seguir para obtener y compilar un paquete fuente. Se supone
que trabajamos con una versión estable y que queremos obtener y compilar paquetes de la rama inestable.
1. Configuramos /etc/apt/sources.list con las direcciones donde encontrar paquetes fuente:
deb-src ftp://ftp.uk.debian.org/debian unstable main contrib nonfree
deb-src ftp://ftp.uk.debian.org/debian/non-US unstable/non-US main contrib non-free
2. Cambiamos al directorio adecuado y descargamos el código fuente del paquete a compilar:
#cd /usr/local/deb-src
#apt-get source paquete.deb
Este proceso descarga tres ficheros por cada paquete: paquete.orig.tar.gz: código fuente original
del programa, antes de ser modificado por el equipo de Debian.paquete.diff.gz: modificaciones
realizadas por el equipo de Debian al código original. paquete.dsc: información administrativa sobre
el paquete. Además, se habrá creado un directorio con el nombre del paquete donde se ha descomprimido el código y se han aplicado las modificaciones realizadas por Debian.
3. Para compilar cualquier programa se necesita tener instaladas librerías de desarrollo. Las librerías
necesarias para compilar el paquete se mencionan el el fichero paquete.dsc o en el fichero
paquete/debian/control en la línea encabezada con Build Depends: Si las versiones de estos
paquetes están disponibles en la versión estable de la distribución, basta con instalarlos directamente
con apt-get install En caso de que no dispongamos de alguna de las librerías o fuera necesaria una
versión posterior, tendríamos que obtener el paquete fuente de esa librería y repetir el mismo proceso
que estamos describiendo.
4. Compilamos el código fuente. Para ello entramos en el directorio del paquete y ejecutamos el comando
dpkg-buildpackage:
#cd paquete
#dpkg-buildpackage
Aquí debemos estar atentos a los posibles errores que en la mayoría de los casos se deben a la falta de
algún programa de desarrollo (compilador, etc.) o de alguna de las librerías mencionadas anteriormente.
Tras resolver el problema se vuelve a ejecutar el comando hasta que el proceso finalice correctamente.
El paquete binario generado tiene extensión .deb y se escribe en el directorio superior, junto al fichero
.dsc.
5. Instalar el paquete generado. Se hace, como vimos en el apartado anterior, con el comando dpkg
--install, instalando así mismo aquellos paquetes de los que dependa y que imposibiliten su configuración. En este punto es posible que la dependencia de alguna versión más reciente de otro programa
nos obligue a compilar ese programa desde el código fuente. Al igual que antes, esto es más probable
cuando el tiempo que separa las distribuciones estabe e inestable es mayor.
5.3.4. Instalar paquetes con synaptic
Synaptic es una aplicación gráfica que le permitirá instalar paquetes del modo más sencillo. Para lanzar
la aplicación vaya a Aplicaciones−→Configuración−→Sistema−→Synaptic
158
Capítulo 5. Instalación de programas
Synaptic
Cuando accedemos a Synaptic nos encontramos con una ventana de aplicación típica del entorno gráfico
en la que se distinguen los siguientes elementos:
Barra de menú. Que contiene todas las opciones de la aplicación clasificadas bajo cinco entradas.
Barra de menú
Barra de herramientas
Barra de herramientas
Recargar: Consulta de nuevo a los repositorios y actualiza la lista de paquetes disponibles.
Marcar todas las actualizaciones: Localiza los paquetes para los que hay versiones nuevas, excepto los
que dependen de otros paquetes y los actualiza a la última versión disponible en los repositorios.
Aplicar: Inicia el procedimiento para actualizar/instalar los paquetes seleccionados.
Propiedades: Muestra las propiedades del paquete seleccionado.
Buscar: Abre el diálogo de búsqueda
159
Capítulo 5. Instalación de programas
Selector de categorías
Selector de categorías. El selector de categorías del lado izquierdo permite clasificar los paquetes listados
por categorías.
Las siguientes categorías están disponibles:
Secciones. Muestra los paquetes pertenecientes a la sección seleccionada
Estado. Muestra los paquetes con el estado seleccionado
Alfabético. Muestra los paquetes cuya letra inicial coincida con la seleccionada
Filtro. Muestra los paquetes que coniciden con el criterio personalizado de selección
Histórico de búsqueda. Muestra los resultados de la búsqueda seleccionada.
Lista de paquetes
La lista de paquetes muestra una lista de los paquetes de la categoría seleccionada. Para abrir el diálogo
de propiedades del paquete seleccionado: Elija Paquete−→Propiedades en el menú o alternativamente
pulse el botón Propiedades en la barra de herramientas.
La ventana emergente tiene tres solapas:
Común. Muestra la información básica del paquete: nombre, descripción corta, mantenedor, estado, prioridad, etiquetas y versión.
Descripción. Muestra una extensa descripción del paquete
Dependencias. Lista los paquetes requeridos, dependientes, proporcionados, sugeridos y recomendados.
Veámos ahora cómo hacer algunas cosas habituales.
160
Capítulo 5. Instalación de programas
5.3.4.1. Actualización completa del sistema
Pulse el botón Recargar a fin de que se actualice la lista de los paquetes disponibles en los repositorios. Pulse Marcar todas las actualizaciones Aparecerá una ventana de diálolo preguntándole que tipo de
actualización desea:
Actualización
Actualización (Modernización) predeterminada. Este método se salta las actualizaciones que podría introducir conflictos o que requieran instalar paquetes adicionales. Equivale a la opción apt-get upgrade
Actualización inteligente. Este método intenta resolver los conflictos y completar todas las dependencias
instalado paquetes nuevos si fuera necesario. Equivale a la opción apt-get dist-upgrade.
Una vez elegido el método de actualización se marcarán todos los paquetes que van a ser actualizados.
Para iniciar la actualización pulse el botón Aplicar.
Se le informará de todos los paquetes que serán instalados, actualizados y eliminados. Acepte. A continuación se descargarán desde Internet todos los paquetes necesarios, una vez descargados se procederá a su
configuración. Una vez que haya terminado todo el proceso cierre la ventana.
5.3.4.2. Instalar una aplicación.
Vamos a ilustrar con un ejemplo práctico la instalación de una aplicación en Guadalinex, no sin antes
advertir que esta herramienta es de una indudable potencia y, usada sin precaución, podría dañar nuestro
sistema.
Supongamos que tenemos interés en editar ficheros PDF. Para ello necesitaremos un procesador de textos
que tenga esa posibilidad, instalaremos Koffice.
Iniciamos Synaptic en el cuadro de diálogo para las búsquedas Buscar introducimos koffice y, rápidamente se selecciona el programa mostrándonos sus características junto a una breve descripción de sus
capacidades.
Seleccionamos el paquete, hacemos clic con el botón derecho del ratón y seleccionamos Instalar en el
menú contextual.3
161
Capítulo 5. Instalación de programas
Marcar para instalación
Si la instalación del paquete requiere que se instalen paquetes adicionales, como en este caso, se nos
preguntará si deseamos también marcarlos para la instalación.
Marcar recomendados
Si deseamos marcarlos pulsamos el botón Marcar.
Después pulsamos el botón Aplicar, aparecerá una ventana informativa con un resumen de las tareas que
realizará Synaptic, a modo de advertencia.
Finalmente, si todo es correcto, optaremos por Proceder y, ¡esto es todo! Synaptic nos informa del
progreso y del origen de la descarga así como del proceso de instalación y configuración.
Cuando
termina
su
tarea,
miramos
en
Debian−→Aplicaciones−→Editores y, ¡allí está Koffice!
el
menú
Aplicaciones−→Menú
Tan sólo tenemos que ejecutarlo, probarlo, utilizarlo y, si no nos convence, desinstalarlo.
Synaptic ha trabajado por nosotros, localizando el programa, resolviendo las dependencias, descargando
los archivos necesarios, descomprimiendo, instalando y configurando la aplicación, todo ello, de una forma
transparente.
Synaptic siempre nos pedirá que instalemos el/los paquete/s de que depende aquel que hemos marcado
para la instalación. Además algunos paquetes indican otros paquetes como recomendados o sugeridos. La
instalación de estos últimos no es obligatoria, pero si desea añadirlos al sistema
162
Capítulo 5. Instalación de programas
5.3.4.2.1. Repositorios
Ya hemos tratado más arriba de los repositorios y hemos visto también cómo añadir o quitar repositorios
del fichero /etc/apt/sources.list. Pues bien, synaptic provee también de un procedimiento para
editar, añadir o quitar repositorios.
Para abrir el editor de repositorios vaya a Configuración−→Repositorios
Repositorios
En la imagen podemos ver los elementos que debemos incluir cuando creamos o editados un repositorio:Deb, este elemento describe el tipo de repositorio. Los valores posibles son deb (Paquetes binarios de
Debian) y deb-src (paquetes de fuente de Debian), URI http://http.guadalinex.org/debian/,
el segundo elemento es la ubicación del repositorio. Lo más habitual es utilizar los protocolos HTTP y
FTP. sarge el tercer elemento describe la distribución para la que lo paquetes están hechos. En este caso es
un repositorio para la versión stable (sarge). main contrib non-free el cuarto elemento describe la/s sección/es del repositorio que deberían ser incluidas. Por omisión los repositorios se separan en main, contrib
y non-free.
En cada momento tendremos uno o varios repositorios activos, que son aquellos que aparecen con una
marca en sus casilla de verificación. Podemos desactivarlo simplemente desmarcándolos y marcando unos
nuevos. Después de esta operación debemos pulsar siempre el botón Recargar de la barra de herramientas a
fin de actualizar la lista de paquetes disponibles. En general no es buena idea mezclar paquetes procedentes
de distintas versiones de Debian.4
Para añadir repositorios desde un CD-ROM vaya el menú Editar−→Añadir−→CD-ROM
5.4. Otras formas de instalar programas
Además de los paquetes .deb existen otras formas de instalar programas. Esencialmente hay otras dos
formas:
•
A partir del código fuente, realizando nosotros el proceso de compilación.
•
A partir de binarios la compilados y que nosotros instalamos en el lugar elegido.
5.4.1. Instalación a partir del código fuente
Normalmente los ficheros en código fuente vienen en formato .tar.gz; .tgz; tar.bz2
163
Capítulo 5. Instalación de programas
Antes de ver cómo se instalan programas de este modo veamos cómo funciona el comando tar. Mediante el comando tar podemos empaquetar muchos ficheros (e incluso un árbol o árboles de directorios
completos). La extensión normal para un fichero empaquetado con tar es .tar.
Para crear un fichero tar de un directorio completo utilizamos el comando:
tar -cf fichero.tar directorio
Con esto creamos el fichero fichero.tar que contiene todo lo que cuelgue del árbol que empieza en
directorio. Por ejemplo
$tar -cf home.tar /home
Estamos empaquetando (opción c) en el fichero home.tar el directorio /home con todo su contenido.
Si quisiéramos restaurar el contenido del directorio escribimos
$tar -xf home.tar
y toro el árbol de directorios guardado se restaurará en la ubicación donde estemos. Una vez que tenemos
un archivo tar normalmente lo comprimimos para que no ocupe tanto espacio, para ello
$gzip home.tar
de este modo obtendremos el fichero comprimido home.tgz.
El proceso de empaquetado y compresión puede hacerse en un sólo paso con el comando
$tar -czvf home.tar.gz /home
Y lo descomprimiríamos con
$tar -xzvf home.tar.gz
Si queremos usar el algoritmo de compresión bzip2 que es más potente pero también un poco más lento
utilizaríamos
$tar -cjvf home.tar.bz2 /home
Y para descomprimir
$tar -xjvf home.tar.bz2
Veamos ahora como se instala un programa desde las fuentes. Para ello utilizaremos como ejemplo la
instalación del programa nightfall, una aplicación interactiva de astronomía que puede generar animaciones
de eclipses, curvas, velocidad radial, etc.
El fichero fuente lo obtendremos de http://www.hs.uni-hamburg.de/DE/Ins/Per/Wichmann/Nightfall.html#down
(>http://www.hs.uni-hamburg.de/DE/Ins/Per/Wichmann/Nightfall.html#down)
Hacemos clic en el enlace Source code: nightfall-1.44.tar.gz y una vez en nuestra máquina lo
desempaquetaremos con
$tar -xzvf nightfall-1.44.tar.gz
y vemos cómo se crea un directorio de nombre nightfall-1.44. Ahora nos vamos a ese directorio
$cd nightfall-1.44
164
Capítulo 5. Instalación de programas
Vemos que hay un fichero README con instrucciones sobre la instalación. Normalmente cuando instalamos desde la fuente debemos buscar un fichero cuyo nombre será README, INSTALL o LEAME conteniendo instrucciones para la instalación. Si leemos éste fichero veremos qué requerimientos debemos tener
en nuestro sistema y los pasos para compilar e instalar el programa. En este caso necesitaremos el programa
gnuplot que normalmente viene instalado con Guadalinex.
La instalación de este programa la podemos hacer de dos formas: utilizando el script DoInstall.sh o
manualmente. Si decidimos hacer la instalación automática entonces ejecutaremos como root:
#./DoInstall.sh
El proceso manual, que es el más frecuente en este tipo de instalaciones sería así.
$./configure
$make
Este comando iniciará la compilación del programa. El resultado final será un fichero binario, qe podemos ejecutar desde el directorio donde hemos realizado la compilación. Si además queremos que el
programa esté disponible para todos los usuarios ejecutaremos como root:
#make install
De este modo el fichero binario que acabamos de compilar se copiará en el directorio /usr/local/bin.
Ahora cualquier usuario del sistema puede ejecutar la aplicación. Así podemos escribir:
$nightfall -A -Db 0.9 80 1.0 0.7 4000. 5000.
Ejecución de nightfall
5.4.2. Instalación a partir de binarios
La instalación a partir de binarios es similar a la anterior, pero ahora no tenemos que compilar sino
únicamente instalar los ejecutables de la aplicación.
Para ver cómo se hace ésto instalaremos la aplicación Skype. Se trata de una aplicación de voz sobre IP
que nos permitirá llamar a cualquier otra persona en cualquier lugar del mundo y hablar con ella de modo
totalmente gratuito, siempre que tenga también este programa.
165
Capítulo 5. Instalación de programas
Lo
primero
es
descargar
la
aplicación
de
su
(http://www.skype.com/intl/es/products/skype/linux/)
pinchando
en
el
binario dinámico. Una vez tenemos la aplicación en nuestra máquina ejecutamos:
página
enlace
oficial
Tar.bz2
$tar xjvf skype-1.2.0.18.tar.bz2
Esto creará el directorio skype-1.2.0.18. Para ejecutar la aplicación no tenemos más que escribir
$/skype-1.2.0.18/skype
Ahora bien si queremos hacer una instalación más elegante de modo que esté disponible para todos los
usuarios, nos registramos como root y escribimos:
#cp skype-1.2.0.18.tar.bz2 /usr/local
#cd /usr/local
#tar -xjvf skype-1.2.0.18.tar.bz2
#ln -s /usr/local/skype-1.2.0.18/skype /usr/local/bin/skype
De este modo cualquier usuario podría ejecutar skype con tan sólo escribir en una terminal
#skype
Si queremos añadir un acceso directo en el escritorio, nos vamos a cualquier lugar vacío del mismo,
hacemos clic con el botón derecho del ratón y elegimos Crear un lanzador y rellenamos los campos de
este modo:
Nombre: Skype
Comando: skype
Para
añadirle
un
icono
pulsamos
en
el
botón
Icono
y
buscamos
y
seleccionamos
el
icono
del
tamaño
que
más nos guste. Ahora haciendo doble clic sobre el icono del escritorio ejecutaremos la aplicación.
/usr/local/skype-1.2.0.18/icons
5.5. El emulador Wine
Wine es un programa que nos permite ejecutar aplicaciones de Windows™ desde Linux. Este programa
está en constante evolución y la última versión que hemos podido probar es realmente muy potente. Sin
embargo no está disponible para la versión sarge de Debian y su instalación puede dejar el sistema bastante
inestable. No obstante si quiere experimentar con ella añada a su fichero /etc/apt/sources.list las
las siguiente líneas.
deb http://wine.sourceforge.net/apt/ binary/
deb-src http://wine.sourceforge.net/apt/ source/
deb http://ftp.fi.debian.org/debian/ testing main contrib non-free
Ejecute como de costumbre:
#apt-get update
#apt-get install wine
Sin embargo en esta sección nos basaremos en la última versión Wine existente en los repositorios de
Guadalinex, con lo cual no necesita hacer ninguna modificación a su fichero sources.list
Veremos a título de ejemplo cómo ejecutar la aplicación HotPotatoes5. Lo primero será actualizar Wine
a la última versión disponible:
166
Capítulo 5. Instalación de programas
#apt-get update
#apt-get install wine
La aplicación puede instalarse sin necesidad de ser root. En este caso únicamente estará disponible para
el usuario que la instale.
Para que HotPotatoes funcione correctamente necesitaremos tener instalada una versión de Wine igual
o superior a la 20041201. Para comprobar qué versión de Wine tenemos instalada abra una terminal (no es
necesario que sea de root) y teclee
$wine --version
Obtendrá una salida similar a ésta, indicándole la versión instalada
Wine 20041201
Wine exited with a successful status
A continuación nos dirigiremos a la página web de HotPotatoes (http://hotpot.uvic.ca/) y pinchamos en
Downloads. En la página que aparece busque el enlace que reza: Hot Potatoes for Linux users running Wine
(version 6.0.4; this is a zip file containing the folder structure of the Windows version of Hot Potatoes. You
can extract this to create the HotPot program folder without running the setup program if you prefer).
El uso de Hot Potatoes es gratuito para particulares y para instituciones educativas sin ánimo de lucro a
condición de que los materiales que se elaboren con este programa se distribuyan gratuitamente a través de
la WWW a toda persona interesada.
Si ha hecho todo correctamente habrá descargado en su directorio personal el fichero
wine_hotpot60.zip. Para instalar la aplicación proceda así:
1. Abra el explorador de ficheros Nautilus.
2. Busque el fichero wine_hotpot60.zip
3. Haga doble clic sobre él a fin de descomprimirlo
4. Pulse el botón Extraer.
5. En la ventana de diálogo que aparece pulse un nuevo botón Extraer
Esto habrá creado una carpeta en su directorio personal con el título hotpotatoes6. Si es así ya tiene
HotPotatoes instalado. Para ejecutar la aplicación recién instalada abra una terminal (no es necesario que
sea de root) y escriba
$wine hotpotatoes6/HotPot.exe
167
Capítulo 5. Instalación de programas
HotPotatoes
Notas
1. En español, el nombre del proyecto es una palabra llana, así que se pronuncia "Dé-bian", con acento
en la e. La palabra es la contracción de los nombres Debra, esposa de Ian Murdock) e Ian Murdock,
quienes fundaron el proyecto.
2. En el pasado se utilizaron otros nombres clave para las distintas versiones: buzz para Debian 1.1, rex
para Debian 1.2, bo para Debian 1.3.x, hamm para Debian 2.0, slink para Debian 2.1, potato para
Debian 2.2, y woody para Debian 3.0. Como puede ver son todos nombres de personajes de la película
Toy Story, de los estudios de animación Pixar.
3. Algunos paquetes indican otros paquetes como recomendados o sugeridos. La instalación de estos últimos no es obligatoria, pero si desea añadirlos al sistema seleccione las opciones Marcar recomendados
para la instalación, Marcar sugeridos para la instalación
4. Actualmente tampoco suele dar buen resultado mezclar los repositorios sarge de Guadalinex con la rama
stable oficial Debian. Tal vez se pregunte ¿por qué no si ambas son la misma versión de Debian? Porque
los repositorios Guadalinex no están actualizados a la última versión sarge de Debian. Esta situación
es reversible y es posible que en el momento en que se escriben estas líneas el equipo de desarrollo de
guadalinex haya hecho una puesta en forma.
5. Actualmente el equipo de desarrollo de HotPotatoes está trabajando en una versión Java de la aplicación,
que permitiría ejecutarla en cualquier plataforma que contase con la máquina virtual Java. Lo que en la
práctica significaría que no sería necesario ningún tipo de emulación.
168
Capítulo 6. APACHE, PHP y MYSQL
6.1. Introducción
La combinación del servidor web Apache, el servidor de bases de datos MySQL y el lenguaje PHP ha
adquirido en la actualidad un protagonismo creciente, pues sirve de base para la instalación de multitud de
gestores de contenidos y plataformas de formación en línea.
Este capítulo no puede ser un estudio detallado de los mencionados servidores. Tal propósito sería más
propio de un curso de administración de redes con GNU/Linux. Se tratarán únicamente aquellos aspectos
y configuraciones que le permitan tener una plataforma disponible para el soporte de diversos gestores
de contenidos y plataformas de formación en línea. Incluso esto último podría ser innecesario si en vez
de administrar su propio servidor en el Centro, se dispone a contratar un alojamiento (hosting). Algunos
de estos alojamientos tales como Lo Mejor de Internet (http://www.lomejordeinternet.net/) le permitirán
instalar gestores de contenidos, blog, foros, etc. con tan sólo un par de clics de ratón por un precio bastante
moderado.
Así pues, nuestro propósito es introducirle en la administración de servidores de Internet con
GNU/Linux, sin embargo las configuraciones aquí tratadas aunque sencillas son plenamente funcionales.
Antes de comenzar con la instalación y configuración de los servicios anunciados permítanos unas líneas
sobre gestores de contenidos y sistemas de aprendizaje en línea.
6.2. CMS (Content Management System)
Frente a las clásicas páginas web de Centro que una o varias personas debían mantener con la sobrecarga de trabajo que ello supone y el riesgo de falta de actualización, un Sistema de Gestión de Contenido
(Content Management System, en inglés, abreviado CMS) permite la creación y administración de contenidos principalmente en páginas web.
Consiste en una interfaz que controla una o varias bases de datos donde se aloja el contenido del sitio.
El sistema permite manejar de manera independiente el contenido por una parte y el diseño por otra. Así,
es posible manejar el contenido y darle en cualquier momento un diseño distinto al sitio sin tener que darle
formato al contenido de nuevo, además de permitir la fácil y controlada publicación en el sitio a varios
editores, lo que los hace idóneos para construir mediante ellos la página web del Centro.
La multitud de diferentes CMS existentes se pueden agrupar en las siguientes categorías:
•
Foros. Crea un foro de discusión en línea donde la gente se puede reunir y discutir temas en los que están
interesados.
•
Blogs. Publica noticias o artículos que no pueden ser editados, pero que tienen un espacio para comentarios y discusión.
•
Wikis. Todo el mundo puede colaborar en los artículos y también permite espacio para discusiones.
Indicado para material que irá evolucionando con el tiempo.
•
Portales. Sitios que combinan varias características para crear una comunidad en línea. Básicamente, un
foro y un blog conjuntamente, y algunas veces espacio para artículos que no son noticias.
Algunos de los CMS de código abierto más utilizado son:
•
Action Applications. (PHP)
169
Capítulo 6. APACHE, PHP y MYSQL
•
Apache Lenya. (Java/XML)
•
CMS Contenido. (PHP)
•
DotNetNuke. (.NET) CMS desarrollado en .NET, gratis y con fuentes.1
•
Drupal. (PHP)
•
Jaws. (PHP)
•
Joomla. http://www.joomlaos.net/ (http://www.joomlaos.net/) (PHP) Versión surgida de Mambo de
codigo abierto, independiente de aquel.
•
Mambo. http://www.mambohispano.org/ (http://www.mambohispano.org/) (PHP) CMS muy fácil de
usar, pero con posibilidades un poco limitadas.
•
NukeET. (PHP) CMS totalmente en español basado en el PHP-Nuke.
•
Openflavor. (PHP) Gestor de contenidos web en castellano.
•
OpenCMS. (Java)
•
PHP REGION N. (PHP) Un cms al estilo php-nuke pero desarrollado totalmente en español.
•
Plone. (Zope/Python)
•
PHP-Nuke. http://phpnuke.org/ (http://phpnuke.org/) (PHP)
•
POC-CMS. (PHP) CMS totalmente desarrollado en español basado en el PHP REGION N
•
Postnuke. (PHP) CMS modular de código libre bajo licencia GNU/GPL
•
Sa.Bros.us. Gestor de enlaces totalmente en castellano, del estilo a del.icio.us.
•
SPIP. (PHP) Gestor de Contenido de licencia libre
•
Textpattern. (PHP)
•
TikiWiki. (PHP)
•
Typo3. (PHP) CMS muy potente, pero muy difícil de utilizar pues utiliza un lenguaje de scripts para las
plantillas.
•
WordPress. Portal para blogs.
•
Xaraya. (PHP). Es un CMS bastante potente y general, aunque con una elevada curva de aprendizaje.
•
XOOPS. http://www.xoops.org/ (http://www.xoops.org/) (PHP) CMS modular.
En http://www.opensourcecms.com/ o en http://www.cmsinfo.org/ puede encontrar una lista completa
de los CMS de código abierto clasificados con diversos criterios. En este capítulo veremos cómo instalar
Joomla.
6.3. LMS (Learning Management System)
Un Sistema de Gestión de la Enseñanza (LMS en inglés) es una apliación, normalmente basada en web,
usada para proyectar, implementar y evaluar procesos de aprendizaje.
Típicamente un LMS permite crear y entregar contenidos, monitorizar la participación de los estudiantes, y evaluar el proceso de enseñanza-aprendizaje. A menudo cuenta con la posibilidad de incorporar herramientas interactivas tales como mensajería, chats, video conferencia y foros de discusión.
Algunos de los LMS de código abierto más populares son: Claroline (http://www.claroline.net/), Dokeos
(http://www.dokeos.com/), ILIAS (http://www.ilias.de/ios/index-e.html) y Moodle (http://moodle.org/). En
este capítulo veremos cómo instalar Moodle.
170
Capítulo 6. APACHE, PHP y MYSQL
6.4. El servidor web Apache
6.4.1. Instalación
Apache es actualmente el servidor web más utilizado en el mundo. Su potencia, fiabilidad y sencillez de
configuración lo hacen sin duda un fuerte rival para sus competidores. La actual serie del veterano servidor
web es Apache2 y es ésta la que vamos a instalar.
Apache2 se presenta en Debian en diferentes versiones dependiendo de cuál sea el Módulo de Multiproceso (Multi-Processing Modules, MPM) de que haga uso. Así tenemos diferentes paquetes como candidatos
a la instalación:
apache2-mpm-worker
apache2-mpm-threadpool
apache2-mpm-prefork
apache2-mpm-perchild
El significado en detalle de cada uno de estos paquetes escapa a este capítulo, dígamos sólo lo esencial.
Apache2 basa su arquitectura en módulos multiproceso (Multi-Processing Modules). Con ellos podemos
cambiar la forma en que el servidor Web inicia los procesos y atiende las solicitudes. En esencia nos interesan dos de estos módulos:
•
El módulo worker. Este Módulo de MultiProcesamiento (MPM) implementa un servidor híbrido
multiproceso-multihilo. Usando hilos para atender peticiones, el servidor puede servir un mayor número
de peticiones con menos recursos de sistema que un servidor basado únicamente en procesos. No
obtante, se mantiene casi por completo la estabilidad de un servidor basado en procesos manteniendo la
capacidad multiproceso, pudiendo cada proceso tener muchos hilos. Es considerablemente más rápido
que el modelo tradicional de multiproceso. Es una buena elección para servidores con mucho tráfico y
es el recomendado.
•
El módulo prefork. Este Módulo de MultiProcesamiento(MPM) implementa un servidor web sin hilos
que trata las peticiones de una manera similar a como lo hacía Apache 1.3. Es decir, para cada solicitud al servidor Web se inicia un proceso hijo que la atiende. Este módulo hace al servidor Web más
lento pero considerablemente más estable. Por otra parte apenas si requerirá modificar las directivas de
configuración.
El paquete apache2 es un paquete virtual que instalará por defecto apache compilado con el módulo de
multiproceso worker. Así que con la órden:
#apt-get install apache2
se instalaría apache worker.
Nosotros en cambio vamos a ser un poco mas conservadores y trabajaremos con apache compilado con
el módulo de multiprocesamiento prefork. Para ello ejecutamos:
#apt-get install apache2-mpm-prefork apache2-doc
El único paquete fundamental es el primero. El segundo (apache2-doc) es la documentación que acompaña al programa. En general el servidor web se inciará de forma automática y se crearan las entradas
adecuadas en los scripts de arranque. Si esto no ocurre ejecutaremos:
#/etc/init.d/apache2 start
171
Capítulo 6. APACHE, PHP y MYSQL
para iniciar el servidor2 y #update-rc.d apache2 defaults para añadir las entradas necesarias para
que el servidor web se inicie automáticamente cuando arranque la máquina.
Una vez instalado puede comprobar que funciona con tan solo escribir en la barra de direcciones del
navegador http://localhost3. Verá entonces una página como ésta:
Bienvenida de Apache
En la página econtrará un enlace con el título Documentación, pulse en él para aprender todo sobre el
servidor Apache.
Si quiere tener una información completa de las características del servidor recién instalado ejecute:
# apache2 -V
Server version: Apache/2.0.51
Server built:
Sep 18 2004 17:21:03
Server’s Module Magic Number: 20020903:9
Architecture:
32-bit
Server compiled with....
-D APACHE_MPM_DIR="server/mpm/prefork"
-D APR_HAS_SENDFILE
-D APR_HAS_MMAP
-D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
-D APR_USE_SYSVSEM_SERIALIZE
-D APR_USE_PTHREAD_SERIALIZE
-D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
-D APR_HAS_OTHER_CHILD
-D AP_HAVE_RELIABLE_PIPED_LOGS
-D HTTPD_ROOT=""
-D SUEXEC_BIN="/usr/lib/apache2/suexec2"
-D DEFAULT_PIDLOG="/var/run/httpd.pid"
-D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
-D DEFAULT_LOCKFILE="/var/run/accept.lock"
-D DEFAULT_ERRORLOG="logs/error_log"
-D AP_TYPES_CONFIG_FILE="/etc/apache2/mime.types"
-D SERVER_CONFIG_FILE="/etc/apache2/apache2.conf"
Como puede ver por la salida del comando su servidor ha sido compilado con el módulo prefork.
También puede ver que el fichero de configuración del servidor es /etc/apache2/apache2.conf
172
Capítulo 6. APACHE, PHP y MYSQL
6.4.2. Configuración
El archivo de configuración principal es /etc/apache2/apache2.conf
En el subdirectorio /etc/apache2 se encuentran además los ficheros magic. lo normal es que no
tengamos que modificar este fichero nunca. Contiene los datos del módulo mod_mime_magic que es capaz
de determinar el tipo MIME de un fichero.
ports.conf contiene las directivas de configuración para los puertos y direcciones IP en que
escucha el servidor y los directorios mods-available/ contiene las directivas para cargar y
configurar los módulos que usa Apache, mods-enable/ contiene enlaces simbólicos al directorio
mods-available.sites-available/ contiene directorios de configuración para hosts virtuales,
sites-enabled/ contiene enlaces simbólicos a los lugares sites-available que deseamos activar.
Para el propósito que perseguimos apenas si tendremos que modificar estos ficheros de configuración.
Apache buscará los contenidos a servir en el directorio /var/www/apache2-default. Es en este directorio donde debemos situar nuestras páginas. Podemos crear aquí también subdirectorios que tendrán
que tener permisos de lectura y ejecución para todo el mundo si queremos que sean accesibles. El directorio
donde Apache buscará los contenidos está indicado en la directiva DocumentRoot. Salvo que tengamos
que crear hosts virtuales no será necesario modificarla.
6.5. PHP
PHP es un lenguaje de script que se ejecuta en el servidor web y permite que las páginas sean dinámicas.
Nos permite entre otras cosas acceso a base de datos. Este es el soporte de sistemas como los CMS de que
hablamos más arriba.
Para que nuestro servidor web sea capaz de interpretar y ejecutar las páginas php necesitaremos instalar
los módulos necesarios. Para ello ejecute la órden:
#apt-get install libapache2-mod-php4
El proceso de instalación reinciará automáticamente el servidor apache para que lea la nueva configuración. En caso de que esto no ocurriera ejecute:
#apache2ctl graceful
Para comprobar que nuestro servidor es capaz de interpretar el lenguaje PHP crearemos una página y
trataremos de verla funcionado.
Lo primero es "limpiar" el directorio de las páginas de comprobación que se instalan por defecto.
#cd /var/www/apache2-default
#rm -f *
Ahora crearemos nuestra página php
#gedit index.php
Ahora en el editor gedit escriba esto:
<html>
<head><title>PHP Test</title></head>
<body>
<?php echo "GNU/Linux es chachi<P>"; ?>
173
Capítulo 6. APACHE, PHP y MYSQL
<?php phpinfo(); ?>
</body>
</html>
Finalmente escriba en la barra de direcciones de su navegador http://localhost y obtendrá un resultado
parecido a éste
Comprobar PHP
Lo que significa que su servidor está listo para interpretar páginas php. El fichero de configuración de
php es /etc/php4/apache2/php.ini
Son también pocas las cosas que tenemos que cambiar aquí para nuestros propósitos.
6.6. El sevidor de bases de datos MySQL
Para instalar el servidor escriba:
#apt-get install mysql-server
Como además necesitamos que php pueda interactuar con mysql server instalaremos el módulo adecuado:
apt-get install php4-mysql
La estructura de mysql es bastante simple y, a la vez, muy potente. En principio un servidor puede servir
una o varias bases de datos identificadas por un nombre, cada base de datos consta de una o varias tablas, a
su vez cada tabla consta de uno o varios registros.
Por otro lado tenemos los usuarios del servidor con sus privilegios: un usuario puede tener permisos en
una o varias bases de datos, dentro de cada una de ellas el usuario puede tener permisos de sólo consulta
o también de creación/modificación de tablas y registros. Y por encima de todos los usuarios está el administrador (root) del servidor. No debemos confudir el usuario root del servidor mysql con el root de la
máquina, se trata de usuarios distintos.
Inicialmente cualquiera puede conectarse al servidor MySQL y crear y modificar bases de datos. Así que
lo primero que tenemos que hacer es asignar al root (administrador del servidor MySQL) una contraseña de
acceso. Podemos conseguirlo de diferentes modos, uno de ellos es:
# mysqladmin -u root password 12345
174
Capítulo 6. APACHE, PHP y MYSQL
donde 12345 es la contraseña que queremos asignar al root del servidor. Si más adelante queremos
cambiar la contraseña del root escribimos
# mysqladmin -u root -p
password 7890
donde 7890 es la nueva contraseña para el administrador. Se nos pedirá en este caso la antigua contraseña.
Existe un modo muy cómodo de administrar un servidor MySQL que consiste en utilizar la aplicación
phpmyadmin
6.6.1. PHPMyAdmin
Se trata de un conjunto de scripts de php que permiten gestionar bases de datos MySQL
usando un navegador web. Lo primero que tenemos que hacer es descargarla de la web
http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.7.0-pl2.zip?download.
Una
vez
descargada ejecutamos los comandos:
#
#
#
#
cp /home/usuario/phpMyAdmin-2.7.0-pl2.zip /var/www/
cd /var/www/
unzip phpMyAdmin-2.7.0-pl2.zip
mv phpMyAdmin-2.7.0-pl2 phpmyadmin
Donde /home/usuario/ es el lugar dónde hemos descargado el paquete. Usaremos unzip si descargamos el fichero .zip; si nos descargamos otro formato comprimido tal como tar.bz2 usaremos el comando
apropiado. Por último, es recomendable cambiar el nombre del directorio que contiene PHPMyadmin.
A continuación creamos el fichero de configuración copiando el que viene como demostración.
# cp config.default.php config.inc.php
Y lo editamos con gedit:
# gedit phpmyadmin/config.inc.php
Cambiamos simplemente la línea
$cfg[’Servers’][$i][’auth_type’]
= ’config’;
// Authentication method (config, http or cookie ba
Para que tenga este aspecto:
$cfg[’Servers’][$i][’auth_type’]
= ’http’;
// Authentication method (config, http or cookie base
Escriba ahora en la barra de direcciones del navegador http://localhost/phpmyadmin Le aparecerá una
ventana de diálogo preguntándole por un nombre de usuario y contraseña. Ponga aquí como nombre de
usuario root, y como contraseña la que asignó al administrador del servidor en el paso anterior.
175
Capítulo 6. APACHE, PHP y MYSQL
PHP MyAdmin
6.7. Instalación de Joomla
Joomla es quizá uno de los CMS más populares. En este apartado veremos cómo instalarlo. Para lo que
sigue supondremos la siguiente situación: queremos desarrollar nuestro sitio web enteramente con joomla,
del tal modo que al escribir http://localhost en la barra de direcciones del navegador nos aparezca. Al mismo
tiempo queremos instalar la plataforma de formación en línea Moodle en un directorio aparte de tal modo
que nos aparezca cuando escribamos en el navegador http://localhost/aula
Lo primero es descargar la última versión de Joomla 4en la dirección de su sitio web
(http://developer.joomla.org/sf/frs/do/viewRelease/projects.joomla/frs.joomla_1_0.1_0_7)
y
descargaremos el paquete Joomla_1.0.7-Stable-Full_Package.tar.bz2. Antes de nada podemos
"limpiar" el DocumentRoot del servidor
# rm -f * /var/www/apache2-default/
Ahora copiamos el paquete al lugar adecuado.
# cp /home/usuario/Joomla_1.0.7-Stable-Full_Package.tar.bz2 /var/www/apache2-default/
# cd /var/www/apache2-default/
# tar xjvf Joomla_1.0.7-Stable-Full_Package.tar.bz2
Simplemente hemos copiado el paquete desde el lugar donde estuviera descargado y lo hemos descomprimido en el DocumentRoot de apache
Ahora tenemos que preparar y configurar Joomla. Lo primero será crear una base de datos. Podemos hacerlo directamente desde una terminal o utilizando el programa phpmyadmin. Esta vez lo haremos de forma
sencilla. Abra un navegador cualquiera y escriba en la barra de direcciones http://localhost/phpmyadmin/.
Utilice el cuadro de texto Crear una nueva base de datos. Escriba aquí cualquier nombre para su base de
datos, por ejemplo joomla5. Pulse el botón Crear. Nuestra base de datos está creada. Ahora debemos crear
un usuario con privilegios completos sobre esa base de datos.
Pulse ahora el icono en forma de casita que hay en el margen izquierdo de la página. Busque en la parte
derecha de la página el enlace Privilegios y púlselo. En la página que aparece pulse el enlace Agregar
nuevo usuario
176
Capítulo 6. APACHE, PHP y MYSQL
Usuarios en la base de datos
Rellene ahora los campos de texto
Nuevo usuario
En nombre de usuario escriba cualquier nombre, por ejemplo web. En servidor escriba localhost. En
contraseña escriba la contraseña, por ejemplo vgu34. Escríbala de nuevo en el campo Debe volver a escribir. No marque ninguna otra casilla y pulse al pie de la página en Continuar. En la página que aparece vaya
al título Privilegios específicos para la base de datos. En la lista desplegable Añadir privilegios a esta
base de datos seleccione joomla. Aparecerá una nueva página. En el título Privilegios específicos para la
base de datos pulse en enlace Marcar todos. Y después el botón Continuar.
Privilegios en la base de datos
177
Capítulo 6. APACHE, PHP y MYSQL
Bien, ya hemos terminado de configurar la base de datos para Joomla. Recuerde este procedimiento
porque será igual para cualquier CMS o LMS que quiera instalar en el sistema. Pasamos entonces a la
configuración de Joomla.
Escriba en la barra de direcciones de su navegador http://localhost Aparecerá una página como ésta:
Inicio de la instalación de Joomla
En esta página el instalador comprueba si todo es correcto para el buen funcionamiento de Joomla.
Debemos hacer los cambios necesarios para que casi todos los mensajes de estado aparezcan en verde. Allá
vamos
El primer mensaje de error que nos encontramos es éste:
MySQL support Unavailable
Esto significa que el servidor apache no soporta la interacción con mysql. Pero... ¡cómo! si acabamos
de instalar el módulo de interacción php-mysql. Efectivamente, pero no le hemos dicho al servidor apache
que lea la nueva configuración. Ejecutemos
# apache2ctl graceful
Pulse ahora el botón de Recargar/Actualizar de su navegador y verá como este mensaje de error desaparece. El siguiente mensaje de error es:
configuration.php Unwriteable
Lo que significa que el fichero de configuración de Joomla (configuration.php) no es escribible.
Este no es un error fatal pues podemos continuar con la instalación y al final copiar el código y guardarlo
con el nombre configuration.php, y esto es lo que haremos.
A continuación nos aparecen varios mensajes de error relacionados con los permisos sobre ciertos directorios. Debemos cambiar los permisos para que todos los mensajes aparezcan en verde.
#cd /var/www/apache2-default/
#chmod 777 administrator/backups administrator/components
administrator/modules administrator/templates cache components images
images/banners images/stories/ language mambots/ mambots/content
mambots/content mambots/editors mambots/editors-xtd mambots/search
media modules templates
Importante: Si quiere ahorrarse la molestia de tener que teclear todo esto, seleccione el texto de más
arriba (sin incluir el símbolo #), pulse Ctrl+C, abra una terminal de root y vaya al menú Editar/Pegar y
pulse intro. Verá como se cambian los permisos a los directorios.
178
Capítulo 6. APACHE, PHP y MYSQL
Pulse ahora el botón Recargar/Actualizar del navegador, o el enlace Check Again en la parte superior
derecha de la página y verá como todo (a excepción del mensaje sobre configuration.php) aparece en
verde.
Podemos continuar con la instalación, para ello pulse el botón Next en la parte superior derecha de la
página. Se nos muestra la licencia con que se distribuye Joomla. Pulsamos Next para pasar a la siguiente
página. En esta página rellenamos los campos de texto de acuerdo con la base de datos que creamos más
arriba.
HostName (Hombre del servidor): localhost
MySQL User Name (Usuario de la base de datos): web
MySQL Password (contraseña para el usuario de la base de datos): vgu34
MySQL Database Name (nombre de la base de datos): joomla
Conexión con la base de datos
Y dejamos todo lo demás como está. Nos aparecerá entonces una página preguntándonos por el nombre
de nuestro sitio
Nombre del sitio
Escriba aquí un nombre para su sitio, por ejemplo IES Cura Valera (lo que ponga aquí aparecerá en la
barra de título del navegador). Pulse ahora Next. En la página que aparece deje todo como está a excepción
de Your e-mail: Ponga aquí una dirección de correo. Admin password: escriba aquí la contraseña que
utilizará para administrar su sitio web.
179
Capítulo 6. APACHE, PHP y MYSQL
Final de la instalación de Joomla
Ya hemos instalado Joomla!. Necesitamos hacer un par de cosas para dejarlo completo. La primera es
crear el fichero configuration.php Para ello seleccionamos el código que aparece en una ventanita en
la página y que comienza con <?php Pulsamos la combinación de teclas Ctrl+C a fin de copiarlo. Abrimos
una terminal de root y escribimos:
# cd /var/www/apache2-default
# gedit configuration.php
Pulsamos Ctrl+V a fin de pegar el texto y pulsamos el botón Guardar. Cerramos el editor gedit. Finalmente y por motivos de seguridad borramos el directorio installation
# rm -Rf installation/
Volvemos ahora a la página que teníamos abierta en el navegador y pulsamos el botón Administration.
Se nos pedirá el nombre de usuario y contraseña del administrador de nuestro sitio web joomla. Como
nombre de usuario utilizaremos admin, como contraseña la que pusimos durante la instalación. Podemos
crear ahora secciones, categorías, noticias, galerías, etc... en fin todo lo que constituye un moderno sitio
web. Para configurar nuestro sitio accederemos siempre con http://localhost/apache2-default/administrator/
6.8. Moodle
6.8.1. Descargar y copiar los ficheros de Moodle en el lugar
apropiado
La instalación de Moodle funciona de un modo similar. Lo primero es descargar la última versión stable de Moodle. Para ello vamos a la página oficial (http://download.moodle.org/?lang=en) y descargamos
Latest Release 1.5.3 en formato tgz (o zip)
Vamos a instalar moodle de tal modo que tengamos acceso a través de http://localhost/aula Para ello
abrimos una terminal de root y escribimos
# mkdir /var/www/aula
Descomprimimos ahora el fichero que contiene moodle, lo hacemos como usuario normal desde el directorio donde lo descargamos.
180
Capítulo 6. APACHE, PHP y MYSQL
$ tar xzvf moodle-1.5.3.tgz
Esto creará un directorio con el nombre moodle. Ahora como root lo copiamos al lugar adecuado.
$ su
# cp -R moodle/*
/var/www/aula
6.8.2. Configurar el servidor apache
Moodle requiere para su buen funcionamiento que se añadan al fichero de configuración de Apache
algunas directivas:
# gedit /etc/apache2/apache2.conf
Añadiremos la línea:
AcceptPathInfo on
Al principio del fichero justo después de la directiva ServerRoot. Guardamos los cambios y cerramos
gedit.
Moodle requiere también para funcionar que PHP esté bien configurado. En la mayor parte de los servidores no habrá que hacer modificación alguna. Para comprobarlo edite el fichero /etc/php.ini y compruebe que los siguientes parámetros son correctos:
magic_quotes_gpc = On
magic_quotes_runtime = Off
file_uploads = On
session.auto_start = 0
En la instalación por defecto en Guadalinex estos parámetros son correctos y no es necesaria modificación alguna. Una vez haya hecho las modificaciones oportunas ejecute:
#apache2ctl graceful
6.8.3. Crear una base de datos
Creamos una base de datos y un usuario con privilegios en ella de un modo similar a como hicimos para
el caso de Joomla. En aquel momento vimos cómo hacerlo utilizando el gestor PHPMyAdmin. Vamos a
hacerlo ahora con el cliente mysql en línea de comandos.
#mysql -u root -p
Se nos pedirá la contraseña del administrador del servidor Mysql Una vez suministrada la contraseña nos
aparecerá un intérprete de comandos vacío indicado por el símbolo
>
Lo primero es crear una base de datos y asignarle un nombre, por ejemplo moodle
>CREATE DATABASE moodle;
Una vez escrito esto pulsamos la tecla Intro. La base ya está creada. Seguimos escribiendo:
181
Capítulo 6. APACHE, PHP y MYSQL
> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER ON moodle.* TO usuario@localhost IDENTIFIED
Donde usuario es el nombre del usuario con privilegios en esa base de datos, por ejemplo aula. Y
contraseña es la contraseña para ese usuario, por ejemplo, virtual2.Finalmente:
>quit
para abandonar la base de datos. Después de ésto debemos hacer que el servidor mysql lea la nueva base:
# mysqladmin -u root -p reload
6.8.4. Crear un directorio para los datos
Moodle necesitará un espacio en el disco duro del servidor para almacenar los ficheros y directorios
subidos como parte de la documentación de los cursos. Por razones de seguridad lo mejor es que este
directorio no sea accesible directamente por el servidor web. La forma más sencillo de conseguir esto es
simplemente situarlo fuera del directorio del servidor web, lo que en nuestro caso significaría situarlo fuera
de /var/www. Para ello ejecutaremos:
# mkdir /var/moodledata
Siendo moodledata el directorio donde moodle colocará los ficheros subidos, por supuesto puede emplear otro nombre para este directorio.
También tenemos que asegurarnos que apache tendrá permisos de lectura, escritura y ejecución en este
directorio. Esto significa que el propietario del directorio tiene que ser el usuario con cuya identidad se
ejecuta el servidor apache. En nuestro caso apache se ejecuta con la identidad del usuario www-data y del
grupo www-data. Así que para ajustarnos a la configuración que necesita Moodle ejecutaremos:
#chown www-data.www-data /var/moodledata/
A fin de cambiar el propietario y el grupo del directorio.6
6.8.5. Ejecutar el script de instalación de Moodle
Para iniciar el proceso de instalación y configuración de Moodle abra un navegador y escriba en la barra
de direcciones: http://localhost/aula/install.php A partir de aquí seguiremos las instrucciones.
Elección del idioma
182
Capítulo 6. APACHE, PHP y MYSQL
Lo primero es elegir el lenguaje. En la lista desplegable seleccionamos Español (España). Pulsamos el
botón Next. Nos encontraremos aquí con una pequeña dificultad, y es que no disponemos de la librería GD.
Se nos avisa con un mensaje de Precaución. Moodle usa la librería GD para manipular imágenes tales como
las fotos que suben los usuario u otras imágenes que queremos colocar en los cursos. Este pequeño escollo
se soluciona instalando el paquete php4-gd
# apt-get install php4-gd
# apache2ctl graceful
Para comprobar que todo ha ido bien, regresamos a la página anterior pulsando en el botón Anterior y
una vez allí pulsamos Next/Siguiente para que se vuelva a ejecutar la comprobación. Esta vez el mensaje
de precaución habrá desaparecido.
Comprobando PHP
Pulsamos entonces Siguiente. En la siguiente página se nos preguntará por la dirección de nuestro servidor web, por el directorio donde se encuentra moodle, y por el directorio donde se situarán los ficheros
subidos como parte de la documentación de los cursos. El proceso de instalació tratará de detectar automáticamente estos parámetros. Habitualmente únicamente tendremos que cambiar el campo Datos para que
refleje el directorio adecuado, en nuestro caso /var/moodledata
Rutas de Moodle
Pulsamos Siguiente. Ahora se nos pedirán los datos necesarios para localizar el servidor MySql y la
base de datos creada para alojar nuestro moodle.
183
Capítulo 6. APACHE, PHP y MYSQL
Conexión con MySQL
Rellenamos los campos del siguiente modo:
Tipo:mysql
Servidor:localhost
Base de datos: moodle
usuario: aula
# que fue el usuario que creamos anteriormente
# para la base de datos moodle
contraseña: virtual2
#que fue la contraseña que pusimos al usuario aula
Prefigo de tablas: mdl_
Pulsamos Siguiente. Ya hemos realizado la primera parte de la instalación de Moodle que culmina con
la creación del fichero config.php
En la mayoría de los casos no se habrá podido crear este fichero automáticamente, así que lo más apropiado es descargarlo al disco duro y copiarlo al lugar adecuado. Para ello pulse el botón Descargar y guárdelo
en su disco. Ahora como root escriba:
#cp /home/usuario/config.php /var/www/aula
Donde /home/usuario es el directorio donde descargó el fichero.
6.8.6. Configuración de Moodle
Vuelva a su navegador y pulse el botón Continuar. Si lo cerró no se preocupe, simplemente escriba
http://localhost/aula. La primera vez que se accede a la página de administración se nos presentará la Licencia GPL, debemos aceptar la licencia para continuar con el proceso de instalación.
184
Capítulo 6. APACHE, PHP y MYSQL
Licencia
Una vez aceptada la licencia el proceso de instalación tratará de poblar la base de datos creando las tablas
y registros apropiados si todo a ido bien verá varios mensajes en verde con el título Exito. Al final de la
página encontrará un botón Continuar, púlselo.
Se nos informa de la versión de Moodle que estamos instalando (1.5.3+). Pulse Continuar.
Se nos preguntará ahora por una serie de variables que determinarán el comportamiento del sitio. Todas
las variables están perfectamente explicadas. Puede dejarlas tal cual están, más adelante podrá volver a esta
página para modificar lo que necesite. Vaya al pie de la página y pulse el botón Guardar cambios
6.8.7. Instalación de módulos y actualización de la base de
datos
A continuación comienza la instalación de los módulos. Si todo ha ido bien verá una serie de mensajes
en verde con el título Exito. Vaya al pie de la página y pulse Continuar. Finalmente se procede en varias
pantallas a la actualización de las bases de datos. Volverá a ver una serie de mensajes con el título Exito
Bases de datos
6.8.8. Configuración de la página de inicio
En esta página determinaremos el aspecto que va a tener la página principal del Moodle. Más adelante
podremos volver a esta página para hacer los cambios que estimemos oportunos. Una vez hemos terminado
185
Capítulo 6. APACHE, PHP y MYSQL
la configuración pulsamos Guardar cambios
Página de inicio
6.8.9. Creación de la cuenta de administrador
En esta página crearemos la cuenta del administrador del sitio. Rellenamos los campos Nombre de
usuario y Nueva contraseña poniendo el nombre de usuario y la contraseña que estimemos oportunos. Es
importante que no olvidemos estos datos una vez escritos, pues aunque es posible recuperar una contraseña
de administrador olvidada es un proceso que implica deshacer gran parte del proceso de instalación. Una
vez que hemos terminado pulsamos el botón Actualiza información personal.
La instalación y configuración han terminado. Ya tiene su plataforma Moodle lista para usar. Una plataforma como la que soporta estos cursos que usted está siguiendo.
Moodle funcionando
Notas
1. Más que un CMS en sí es un Framework de .NET pensado para desarrollar CMS entre otras cosas.
2. Puede también utilizar para el mismo propósito el comando: #apache2ctl start
3. Puesto que usted no tendrá seguramente un servidor de nombres de dominio(DNS) funcionando en el
sistema, deberá llamar al servidor con el nombre genérico localhost. También puede llamar a su servidor
utilizando el nombre de su máquina con tal que éste aparezca recogido en el fichero /etc/hosts. Sin
186
Capítulo 6. APACHE, PHP y MYSQL
embargo no podrá llamar al servidor por su nombre en las otras máquina de la red, a no ser que disponga
de un servidor DNS
4. Joomla es un proyecto muy activo, hasta el punto que las versiones cambian casi día a día, es posible
que la última versión que nos descargemos no esté "completamente fina", y nos aparezca por ejemplo a
medio traducir. En todo caso para los propósitos de esta práctica es indiferente qué versión utilicemos,
aunque documentaremos la última disponible cuando se redactan estas páginas.
5. Puede escribir lo que quiera con tal de que el nombre no contenga ni espacios ni caracteres extraños.
6. En sentido estricto únicamente necesitamos cambiar el propietario y no el grupo, lo hacemos así por
claridad.
187

Documentos relacionados