Professional Documents
Culture Documents
1 Tareas Pre-Instalación
En los capítulos anteriores, se trataron los diversos pasos para prepararse para la
instalación de los sistemas operativos Linux. Esto incluía determinar las necesidades de
hardware y software así como la compatibilidad. También se trataron las diversas
distribuciones de Linux y la elección de la distribución apropiada para la instalación.
Después de tomar estas decisiones el siguiente paso es realmente comenzar a instalar
el sistema operativo. Si recuerda de previos capítulos también, hay muchos métodos
de instalación diferentes de los cuales elegir. Se puede instalar un sistema operativo
mediante un disco booteable, CD-ROM o red (Web, ftp, NFS, SMB).
Instalar Linux usando este método requerirá que el sistema se arranque primero
usando diskettes booteables o un CD-ROM booteable. Estos discos a veces se
empaquetan con la distribución Linux que se está instalando. Usar este método es útil
para instalar esa distribución de Linux en particular solamente, así como llevar a cabo
mantenimiento en el sistema. Este método también requiere que se haga la
configuración apropiada primero en el BIOS del sistema. Hay una configuración en el
BIOS que le indicará al sistema desde qué medio arrancar. Algunas de estas opciones
son diskette, disco rígido, CD-ROM, una unidad de red que tiene los archivos
almacenados en un servidor, o una unidad removible de alta capacidad como una
Éstos son los primeros pasos que se darán después de haber seleccionado el método
de instalación apropiado y el sistema se ha arrancado. Algunas de las primeras
pantallas mostradas darán opciones para seleccionar determinados parámetros para el
sistema operativo. Estas opciones incluyen cosas tales como el idioma que se usará, y
la fase de detección del hardware. Todos estos procedimientos proporcionan un medio
para aplicar los parámetros que el sistema necesitará para poder estar preparado para
la siguiente fase, que será seleccionar los paquetes apropiados para instalar.
Idioma
Una de las primeras opciones que se mostrarán será la opción de qué idioma ha de
que pueden instalarse, como se muestra en la Figura . Hay muchos paquetes de los
cuales elegir, dependiendo de qué distribución se está instalando. Tenga en cuenta que
hay una cantidad limitada de espacio en el disco disponible. Instalar todos estos
paquetes consumirá espacio del disco. Por ejemplo, muchos de los paquetes, en
particular de la estación de trabajo KDE o GNOME pueden consumir cientos de
megabytes de espacio en disco. Algunas distribuciones mostrarán cuánto espacio será
necesario para el paquete en particular que será instalado. Otras distribuciones no
muestran esto hasta que el paquete no se ha seleccionado y el proceso de instalación
pasa al siguiente paso.
Algunas distribuciones, como Mandrake, permitirán la opción de seleccionar todo o
parte de un paquete a instalar. Esto es de ayuda si se desea alguna de las funciones de
un paquete en particular. Si se selecciona esta opción, la capacidad de navegar a
través del paquete y seleccionar las funciones particulares deseadas es posible.
Algunas de estas funciones individuales de paquetes tienen una dependencia, lo cual
significa que otros programas individuales o funciones necesitarán instalarse para que
funcionen. Instalando uno de estos paquetes sin instalar el programa de dependencia o
paquete, el sistema indicará que los otros paquetes deben instalarse.
Una vez seleccionados los paquetes, el proceso de instalación procederá al siguiente
paso. Esto es donde la instalación real del sistema operativo tiene lugar.
9.1.6 Multimedia Linux
xvinfo .
En general, hay tres tipos de archivos de película disponibles. Primero, están los
archivos MPEG-1. No debería haber ningún problema en reproducirlos porque no se
necesita ningún programa de compresión/decodificador (codec) propietario. Esto
significa que se puede reproducir el archivo en cualquier reproductor. Además de estos
archivos MPEG disponibles en general, están los archivos AVI. La mayor parte del
tiempo, éstos son archivos codificados y comprimidos por medio de un codec
propietario. Para reproducir archivos AVI, se necesita el codec propietario, que no
siempre es bien soportado en Linux.
Un programa popular de uso en Linux, que es capaz de soportar muchos de estos
codecs propietarios como archivos .avi o .mov, es Xine. Necesitará descargar dos
partes para poder usar Xine. Uno es el archivo con las librerías necesarias en él y el
otro es un archivo que contiene los binarios. Para instalar Xine, descargue las librerías
primero, compílelas y luego descargue los archivos-ui (archivos de interfaz del usuario).
Una vez descargados los archivos, compílelos e instálelos. Luego diríjase al directorio
fuente, que se creó al extraer los archivos, y emita los siguientes comandos. Necesitará
un compilador C/C++ para poder llevar a cabo la siguiente operación.
./configure
make install
make clean
Haga esto primero para las librerías Xine, luego descargue los archivos-ui de Xine y
lleve a cabo el mismo procedimiento en ellos. Existen posibilidades de que obtenga un
mensaje de error mientras intenta configurar la interfaz del usuario de Xine. Esto
podría deberse a que el instalador no pudo encontrar las librerías de Xine. Si esto
ocurre, abra /etc/ld.so.conf, agregue la ubicación de las librerías recientemente
instaladas y guarde el archivo y ejecute ldconfig para hacer saber a su sistema acerca
de esta ubicación. Después de eso, no debería tener más problemas para ejecutar
./configure en los archivos-ui de Xine. Una vez todo configurado y compilado, inícielo
ejecutando el comando xine. Esto abre una ventana y un panel como el de un
reproductor de CD
9.2 Instalación y Configuración de Linux
tipeo. Ver Figura . Corel Linux es la única distribución importante que no requiere que
la cuenta Raíz se configura durante la instalación. La mayoría de las distribuciones de
Linux tienen reglas concernientes a la longitud y el contenido de la contraseña. Las
reglas variarán dependiendo de la distribución. Las contraseñas deben tener al menos
cuatro a ocho caracteres de largo y no pueden ser términos comunes hallados en el
diccionario. Algunas distribuciones tienen otras reglas, como que al menos uno o dos
caracteres no sean letras, sino números o un signo de puntuación por ejemplo.
Definición de las Cuentas de Usuario durante la Instalación
Hay ventajas y desventajas en la creación de cuentas de usuario durante la instalación.
Comprenderlas ayudará a cualquier administrador a determinar qué es mejor
basándose en las implementaciones de seguridad que se han planeado. Se enunció
antes que al menos una cuenta de usuario deberá crearse durante la instalación para
que el administrador del sistema use, incluso si nadie más está usando o accediendo al
sistema. La desventaja de crear cuentas de usuario durante la instalacion es que
muchas de las opciones como configurar directorios home no estándar, expiración de
la cuenta, y definición de políticas de grupo, no están disponibles.
Opciones de Contraseña
Aunque no configurable durante el proceso de instalación, es importante tratar las
contraseñas sombra en este punto. Éstas son valiosas para la seguridad de un sistema
Linux. La mayoría de las distribuciones de Linux usan métodos de codificación por
contraseña MD5 o DES. Algunas usan MD5 por defecto porque es más nuevo y tiene
mejor seguridad que DES. Por lo común, los sistemas Linux y UNIX almacenan la
información sobre cuentas y las contraseñas en forma cifrada en un archivo llamado
/etc/passwd. Este archivo necesita ser accedido por todos los usuarios porque diversas
otras herramientas necesitan acceder a este archivo para información no relacionada
con contraseñas. Usando contraseñas sombra las contraseñas se almacenan en un
archivo diferente que es inaccesible para los usuarios normales, lo cual mejora mucho
la seguridad.
Configuración de Límites en los Inicios de Sesión, Uso de la Memoria y
Procesos
Tampoco configurable durante la instalación pero importante de tratar son las
configuraciones de límites a los inicios de sesión, el uso de la memoria y los procesos.
Cuando se está configurando un sistema multi-usuario como Linux, debe prestarse
mucha atención al uso de la memoria y los procesos. Por ejemplo, un proceso errante
podría consumir toda la memoria del sistema disponible y/o CPU en el sistema. Cuando
esto ocurre, el desempeño en ese sistema puede degradarse resultando en cuelgues
del sistema, pantallas congeladas y muchas otras consecuencias desagradables.
Como administrador, es importante aprender las herramientas y utilidades en Linux
que pueden usarse para resolver estos tipos de problemas. El archivo limits.conf ,
ubicado en /etc/security proporciona la capacidad para especificar límites de nivel de
usuario y grupo a ciertos tipos de recursos del sistema, incluyendo la memoria. Los
límites configurados en este archivo se establecen por usuario y grupo.
La sintaxis básica para limits.conf consiste en líneas individuales con valores de los
siguientes tipos: (dominio) (tipo) (elemento) (valor) donde dominio es el usuario o
grupo, tipo se refiere a un límite de hard o soft, elemento se refiere al recurso que se
está limitando y valor se refiere al valor asociado al límite establecido. Por ejemplo,
agregar la siguiente línea a este archivo coloca un límite en hard sobre la prioridad
según la cual los trabajos se programan para un usuario llamado 'Linux_User'.
Linux_User hard priority 19
Para establecer un máximo de tiempo de CPU de 10 minutos para Linux_User,
establezca el siguiente valor:
Linux_User hard cpu 10
También es posible establecer limitaciones de inicios de sesión con limits.conf. Para
establecer un límite de 3 inicios de sesión fallidos para un grupo llamado
"remote_users", establezca el siguiente valor:
@Remote_Users - maxlogins3
Establecer límites en procesos errantes por usuario puede limitar el impacto potencial y
las vulnerabilidades de muchos usuarios que iniciaron sesión o conectados a un
sistema multi-usuario. Esto puede hacerse configurando el comando ulimit en
/etc/profile.
Para establecer un límite en la cantidad máxima de memoria disponible para un
proceso dado, a un valor menor que la cantidad total de memoria en el sistema que
tiene 1 GB de memoria real y 500 MB de memoria virtual, se establecerían los
siguientes valores en /etc/profile:
ulimit -S -m 1000000
ulimit -S -v 500000
Con este valor configurado, el sistema abortará cualquier proceso que intente tomar
más recursos que los que se han establecido como límite.
9.2.4 Configuración de red
En este punto, la mayor parte del proceso de instalación inicial deberá estar completo
a excepción de algunas configuraciones finales. Éstas incluyen elementos como Zona
Horaria, Impresora, Configuración de Servicio y Opciones de Arranque.
Configuración de la Zona Horaria
Nuevamente, las especificaciones para configurar la zona horaria variarán dependiendo
de qué distribución de Linux se está instalando. Cuando se alcanza este punto en la
instalación, aparecerá una pantalla que permitirá la selección de en qué zona horaria
En este punto, Linux deberá estar completamente instalado y operativo. Para obtener
toda la funcionalidad del sistema Linux, familiarícese con cómo instalar y configurar el
X server del sistema. Esto es así especialmente si se usa la interfaz GUI. La instalación
inicial es solamente la primera parte de instalar un sistema operativo. Hay también
otras configuraciones que será necesario completar una vez que se han instalado el
sistema operativo. La importancia de aprender cómo instalar y configurar X server no
puede subestimarse. Primero, es el único punto que presentará la mayoría de los
problemas. Otras razones son que los usuarios desearán poder ajustar y modificar el
entorno del usuario según sus propias preferencias, como el tamaño de la pantalla o la
resolución. Si en algún punto la placa de video del sistema se actualiza, es importante
el conocimiento de cómo establecer las configuraciones apropiadas para que la placa
funcione con el sistema Linux.
Averiguar qué chipset usa la placa de video es importante. Puede ser difícil encontrar
qué chipset tiene la placa de video, a menos que se esté instalando una placa nueva y
la caja o manual que vienen con la placa puedan verse. Lo más probable es que la
placa de video esté instalada en el sistema, haciendo difícil saber cuál es su chipset.
Hay otras maneras de obtener esta información. La primera es cuando el sistema
detecta automáticamente la placa de video. Otra forma es ejecutar la herramienta de
configuración X después de la instalación. Otro medio de averiguar el chipset de la
placa de video es leyendo la documentación del producto. Éste no siempre es el mejor
método, no todos los fabricantes de placas de video dirán cuál es su chipset y puede
Se mencionó antes que los dispositivos de entrada y el hardware que interactúa con el
sistema X Window y el X server necesita configurarse apropiadamente. Las
herramientas usadas para ello también se han tratado. Algunos de los principales
dispositivos de hardware que es necesario configurar con el X server son el teclado, el
mouse, el monitor, y la placa de video. Si cualquiera de estos dispositivos no está
configurado correctamente, X server no operará según su desempeño óptimo o puede
no funcionar en absoluto.
Teclado
No hay muchas configuraciones que necesiten establecerse o cambiarse para el
teclado. Las configuraciones por defecto funcionan bien. Hay una sola configuración
que debería cambiarse no obstante. Ésta es la función AutoRepetición. Al mantener
presionada una tecla en el teclado, el carácter se repetirá continuamente. Esta función
puede ocasionar problemas y ser molesta en ocasiones. Es una buena idea inhabilitar
esta función. Esto puede hacerse usando una de las herramientas de la GUI. Editar la
línea AutoRepeat en el archivo de configuración puede cambiarlo. Cambiar los valores
de retraso y velocidad cambiará la velocidad a la cual las teclas se repiten cuando se
presionan en el teclado. El valor de retraso es el tiempo, en milisegundos, que el
sistema esperará hasta que la tecla se repita. La velocidad es el intervalo según el cual
la tecla se repite una vez que el sistema comienza a repetirla. Un ejemplo de este
que las partes se separan y explican, como se muestra en la Figura el paquete RPM
es más fácil de comprender.
Una vez que se ha descargado un paquete, se deberá verificar si la checksum MD5
coincide con la proporcionada en las páginas de descarga del paquete. Cada paquete
tiene una checksum individual que se puede verificar mediante el siguiente comando:
#md5sum <package>
No todos los sistemas operativos soportan el comando md5sum. En algunos OSs se
llama simplemente md5, otros no lo incluyen en absoluto. En Linux, es parte del
paquete de Utilidades de Texto de GNU, que está disponible para un amplio rango de
plataformas. Se puede descargar el código fuente del vínculo de más abajo también.
Para los paquetes RPM, no hay checksum o firma separadas. Los paquetes RPM tienen
una firma GPG incorporada y checksum MD5. Se puede verificarlas ejecutando el
siguiente comando:
#rpm --checksig <package>.rpm
Administrador de Paquetes Debian
Los paquetes Debian son muy similares a los paquetes RPM. Debian contiene una base
de datos de paquetes que tiene las mismas funciones que la base de datos RPM, no
obstante, la base de datos Debian está almacenada en el directorio /var/lib/dpkg La
diferencia entre paquetes Debian y RPM es que no son intercambiables. Los paquetes
Debian no pueden usarse en una distribución que soporte paquetes RPM, y viceversa.
Un paquete Debian tendrá un aspecto similar al paquete RPM y se instala de manera
muy similar. Un paquete Debian tiene el siguiente aspecto:
# dpkg –i samba-common_2.0.7-3.deb
Después de recordar lo que todas estas partes significan de la sección sobre el RPM,
será fácil comprender qué representan estas partes del paquete Debian. Significan lo
mismo, no obstante, los paquetes Debian usan dpkg en lugar de RPM para
identificarse.
Los paquetes Debian también usan switches que pueden colocarse al principio del
comando para especificar instrucciones al paquete. Un ejemplo es -i, se usa para
instalar el paquete. Otros ejemplos que pueden usarse son -r, que eliminará el paquete
pero dejará sus archivos de configuración. El switch -P elimina el paquete y sus
archivos de configuración, y -B inhabilita los paquetes que se basan en un paquete
eliminado.
Diversidad de los Paquetes Debian
El Administrador de Paquetes Red Hat se originó en Red Hat, el Administrador de
Paquetes Debian se originó en la distribución Debian de Linux. La evolución del
administrador de paquetes Debian se dio de manera muy similar a RPM. Otras
distribuciones que se basan en Debian como Storm Linux, Corel Linux, y Libranet usan
paquetes Debian. Los paquetes y distribuciones Debian no han sido tan populares
porque Debian Linux no enfatiza una instalación o herramientas de configuración GUI,
lo que lo hace difícil para el usuario inexperto. Storm y Corel Linux han agregado
algunas de estas características de GUI que los hacen más atractivos. El enfoque de
Debian Linux se ha concentrado tradicionalmente hacia los principios de fuente abierta
más que las distribuciones que se basan en los paquetes RPM.
También de manera similar a los paquetes RPM, los paquetes Debian pueden usarse a
través de varias distribuciones y con compatibles con diversas CPUs. Es raro ver un
paquete Debian usado en un sistema que no sea Linux.
Tarballs
Tarballs son por mucho el tipo más ampliamente soportado de paquete disponible con
Linux. Tarballs, como los paquetes RPM y Debian, son una colección de archivos
comprimidos que pueden descomprimirse e instalarse en un sistema Linux o UNIX.
Tarballs se descomprime con la utilidad compress o qzip. Cada distribución puede usar
tarballs para instalar o eliminar aplicaciones y programas. No obstante, tarballs no es
tan avanzado como los paquetes RPM o Debian. Primero, tarballs no mantiene una
base de datos de los paquetes. Esto hace difícil eliminar programas que se han
instalado usando tarballs porque no hay una base de datos que mantenga el rastreo de
dónde están ubicados todos los archivos. Tarballs no tiene información de dependencia.
Esto puede hacer difícil determinar qué otro programa podría necesitar instalarse para
que el programa actualmente instalado funcione. Incluso puede ser difícil saber si hay
problemas de dependencia. Los paquetes RPM y Debian notificarán inmediatamente si
hay problemas de dependencia.
Los paquetes tarball son identificados por medio del comando tar Originalmente
tarballs se usaba para archivar archivos en una dispositivo de backup a cinta y se
conocía como "archivador de cinta" [tape archiver]. Tarballs es un medio excelente de
hacer backups y comprimir archivos en un disco rígido. Llevar a cabo un backup
mediante el comando tar e tratará en capítulos posteriores. El comando tar e usa en
conjunción con una utilidad de compresión como compress, gzip o bzip2. El más
popular de los tres es gzip. Los archivos se comprimen primero con una de estas
utilidades de compresión, y luego se archivan usando el comandotar Como resultado,
el archivo tendrá dos extensiones, como .tar.gz.Tarballs es similar a los archivos
zipeados mediante la utilidad WinZip en Windows. Un ejemplo de un paquete tarball
que se está descomprimiendo e instalando es el siguiente:
# tar –xvzf samba-2.0.7.tar.gz
Se mencionó anteriormente que tarballs podía usarse como mecanismo de distribución
de paquetes en cualquier distribución de Linux. No obstante, Slackware es una
distribución de Linux que principalmente usa sólo Tarballs. Slackware es la más antigua
de las principales distribuciones de Linux. Como Debian Linux, Slackware no usa una
configuración o herramientas de instalación GUI de lindo aspecto. Slackware tiende a
favorecer un enfoque más simple en lugar de usar cualquiera de las herramientas de
administración de paquetes que vienen con paquetes RPM y Debian.
9.4.2 Creación de archivadores y cambios básicos para makefiles
gzip
Desafortunadamente, la mayoría de los programas de software que encontrará se
encuentran en formato de paquete RPM. Por lo común, estas piezas se descargan
mediante FTP anónimo de algún sitio de archivadores. El proceso de instalar software
puede ir de lo extremadamente simple hasta lo casi imposible. Todo depende de cuán
bien los autores del software escribieron sus scripts de instalación y de cuán buena es
la documentación de instalación.
Los paquetes de software que se obtienen mediante FTP anónimo estarán virtualmente
todos en la forma de un archivo tar comprimido. Estos archivos pueden crearse de un
par de maneras diferentes. Por lo común, un árbol de directorio contiene archivos
fuente, librerías, documentación, ejecutables y otros archivos necesarios que se
empaquetan en un archivo tar usando el programa tar. Este archivo tar es comprimido
después por lo general para ahorrar espacio.
El paquete de software probablemente tendrá una extensión al final del nombre de
archivo que le indica en qué formato se encuentra. Si el archivo termina en .gz, fue
comprimido con el programa gzip de GNU. Éste es el formato de compresión de
archivos más común de los paquetes de software de Linux. Si el nombre del archivador
termina con una .Z, fue comprimido con el programa compress. Por ejemplo, el
paquete de software test.tar.gz es un archivador tar que ha sido comprimido con gzip.
Algunos paquetes de software son bastante grandes, así que es una buena idea
colocarlos en un sistema de archivos que tenga una buena cantidad de espacio libre.
Algunas personas crean un sistema de archivos separado para fuentes y lo montan
bajo un directorio, como /usr/local/src o /src. Donde quiera que decida construir sus
paquetes de software, asegúrese de que tenga el suficiente espacio en el disco para
que el software pueda compilarse exitosamente.
Ahora, puede seguir adelante y mover el paquete de software al árbol fuente que ha
establecido y descomprimirlo y expandir el archivador. Si un archivo está comprimido
con gzip, se puede descomprimirlo con el comando gzip -d. Por ejemplo, el siguiente
comando expande el archivo comprimido test.tar.gz y lo reemplaza por el archivador
tar llamado test.tar.
• gzip -d test.tar.gz
cpio
El comando cpio manipula archivos llamados archivadores cpio. Un cpio copia los
archivos dentro o fuera de un archivador tar. El archivador puede ser otro archivo en el
disco, una cinta magnética, o un pipe. Con cpio, se puede crear un nuevo archivador,
extraer el contenido de un archivador existente, hacer una lista de los contenidos del
archivador, y copiar archivos de un directorio a otro.
Cuando cpio agrega un archivo no comprimdo a un archivador, lo almacena como
archivo no comprimido pero también almacena su atributo. Cuando un archivo con un
atributo no comprimido es extraído a un sistema de archivos NTFS (que soporta
archivos no comprimidos), el archivo es extraído como archivo no comprimido. En otros
sistemas de archivos, se advierte y se extrae como archivo comprimido. Los archivos
no comprimidos de un archivador nunca se crean porque la mayoría de las cintas,
diskettes y otros medios de archivo no pueden comprenderlos. Se recomienda que
comprima cualquier archivador que contenga archivos con el atributo de no
comprimido establecido para mantener el tamaño del archivador razonable.
Las tres formas del comando mostrado abajo representan las principales funciones de
cpio. Cada llamada a cpio debe especificar una y sólo una de las siguientes opciones
principales:
• -i – Lee un archivador existente (creado con la opción -o) a partir de la entrada
estándar.
• -o Escribe un nuevo archivador a la salida estándar, usando la lista de archivos
leídos a partir de la entrada estándar. Tal lista podría se producida por los
comandos ls o find. Por ejemplo, el siguiente comando usa ls para hacer una
lista con los archivos del directorio actual, luego usa pipe para pasar esta lista
como entrada para cpio. El archivador resultante contiene el contenido de todos
los archivos, y se escribe en arch.
ls . | cpio -o >arch
-p Copia la lista de archivos leídos desde la entrada estándar al directorio
especificado. Se puede usar esta opción para copiar árboles de archivos
enteros.
Para copiar todo el sistema de archivos de un diskette al directorio actual, use:
find a: -type f | cpio -pvd .
Para archivar el directorio actual en un diskette en formato portátil:
find . -type f | cpio -ocO a:
Para recuperar un directorio a partir de un diskette archivador portátil:
cpio -icdm -I a:
Makefiles
Makefiles se usa para compilar programas y paquetes. Para instalar algunos programas
es enecesario compilar los archivos binarios y librerías. La aplicación de medios Xine es
un perfecto ejemplo de esto, que se trató previamente.
Lleva mucho tipeo compilar un programa con varios archivos fuente. Además, si se
tienen las líneas suficientes de código fuente, puede llevar mucho tiempo para el
compilador realmente compilarlas todas.
Hay un programa llamado make que le permite compilar automáticamente todos sus
archivos fuente simplemente tipeando make. Esto nuevamente, se hizo para Xine
antes. Además, si solamente se han cambiado algunos de los archivos, solamente
recompilará aquellos archivos fuente que dependen de los archivos en los cuales haya
hecho cambios.
Por supuesto, tiene que indicar qué archivos dependen de qué otros archivos creando
un archivo llamado Makefile.
Hay cuatro tipos básicos de sentencias en un Makefile:
• Comentarios Cualquier línea que comience con un # es un comentario y será
ignorado.
• Macros Las macros asumen la siguiente forma:
• nombre = datos Éstos se interpretan de manera similar a las sentencias
#define en ANSI C. Todas las instancias de $(nombre) en las sentencias
siguientes son reemplazados por datos. Por ejemplo, si la siguiente
macro:
• SRC = main.m Hace que una línea se interprete como: gcc main.m
• Reglas explícitas Las reglas explícitas le indican a
make qué archivos dependen de la compilación de otros archivos, y los
comandos requeridos para compilar un archivo en particular. Asumen la
siguiente forma:
• targetfile: sourcefiles
Esta regla de arriba dice que para crear el targetfile (archivo de destino),
make debe llevar a cabo los comandos enumerados en sourcefiles
(archivos fuente). Por ejemplo, la siguiente regla significa que para poder
crear el archivo de destino main, los archivos fuente main.m y List.h
tienen que existir, y make deberá usar el comando gcc -o main main.m
List.h para crearlo.
main: main.m List.h
gcc -o main main.m List.h
• Reglas implícitas Las reglas implícitas son iguales que las reglas explícitas,
excepto que se las enumera sin comandos.
make usa los sufijos de los archivos para determinar qué comando llevar a
cabo.
la Figura . Éste es el archivo que define cómo se arrancará un sistema. Cada línea de
este archivo contiene información acerca de cómo se arranca el sistema. Define desde
qué partición arrancar, cuál es el OS por defecto para arrancar si hay más de uno, y
cuánto tiempo la pantalla de LILO se retrasará al arrancar. Para reconfigurar LILO, el
usuario debe tener algún conocimiento acerca de la información contenida en este
archivo y cómo hacer los cambios necesarios para reconfigurar LILO. Las secciones del
archivo lilo.conf son las siguientes:
• boot=/dev/hda Esta sección del archivo define dónde se instalará LILO. En este
caso LILO se instalará a sí mismo en el MBR del primer disco EIDE. La porción
hda indica esto. Para cambiar la ubicación de dónde se encuentra LILO
simplemente cambie esta porción del archivo a un valor que represente otra
partición de Linux.
• Prompt Agregando esta línea al archivo LILO pedirá al usuario que seleccione
un OS para arrancar antes de arrancar el OS. Esta línea puede eliminarse si no
se desea ningún prompt para el usuario.
• timeout=50 Esto representa el tiempo en décimas de segundo que LILO
tardará hasta arrancar el sistema operativo.
• default=linux Esto define el sistema operativo por defecto que se cargará.
• lba32 Agregar esta línea al archivo lilo.conf especifica que LILO puede arrancar
kernels ubicados más allá del 1024º cilindro del disco rígido.
Hay unas pocas cosas que es importante conocer acerca del cargador de arranque
LILO. La página man de lilo.conf es otro buen lugar para averiguar más acerca del
archivo lilo.conf. Después de hacer cambios al archivo lilo.conf, el comando lilo debe
introducirse en el prompt de comandos para activar los cambios que se han hecho. Es
importante no olvidar este paso o el sistema continuará usando el antiguo cargador de
arranque.
Configuración de LILO para Dos Sistemas Operativos
Hay dos cosas a considerar al agregar o instalar otro sistema operativo. Primero, es
una buena idea usar LILO porque LILO puede usarse para arrancar el otro sistema
operativo. La segunda cuestión a considerar es que configurar LILO para Linux y un
segundo OS no es tan difícil. Requiere hacer los cambios necesarios al archivo lilo.conf
que se trató en la sección anterior.
Para configurar LILO para dos sistemas operativos Linux, introduzca nueva información
al archivo lilo.conf. Este nuevo texto tendrá exactamente el mismo aspecto que el texto
que ya está ahí para el OS existente. Si el nuevo OS Linux tiene una versión de kernel
diferente, la única parte de este texto que será necesario cambiar es la línea de la
imagen. Será necesario especificar también la partición raíz correcta para el nuevo OS.
El procedimiento correcto para ello puede ser un poco complicado, pero no es tan
difícil. Primero, la partición raíz del segundo sistema operativo Linux necesita montarse
dentro del sistema de archivos Linux existente, luego configurar la nueva partición raíz
para que señale al kernel del segundo sistema Linux. Esto es realmente simple. Todo lo
que se requiere es agregar la línea apropiada al archivo lilo.conf para que señale al
kernel del nuevo sistema Linux. La segunda partición raíz necesita instalarse en un
directorio de la partición del sistema existente como /linux2 por ejemplo. Luego, la
línea de la imagen para el segundo OS en lilo.conf necesita cambiarse a algo como
image=/linux2/boot/bzImage-2.2.17.
Configurar LILO para otro OS además de Linux es un proceso más simple. Nuevamente,
es necesario agregar el texto apropiado al archivo lilo.conf. Agregar el parámetro other
al archivo hace esto. Por ejemplo, agregue el siguiente texto al archivo lilo.conf al
configurar LILO para arranque dual con Windows:
Other=/dev/hda3
label=windows
table=/dev/hda
Instalación de un Nuevo Cargador de Arranque
El proceso es bastante fácil cuando se usa el cargador de arranque LILO y se lo
reemplaza por otro cargador de arranque como GRUB. Primero, será necesario
configurar el archivo grub.conf. Este archivo es similar al archivo lilo.conf en que
contiene la información requerida para arrancar el sistema operativo. Este archivo ya
debería existir y estar configurado con los valores por defecto del sistema dependiendo
de qué distribución se usa. Una vez que el archivo grub.conf ha sido configurado con
cualquier cambio por hacer, el usuario debe decidir dónde instalar el cargador de
arranque GRUB. Para instalar el cargador de arranque GRUB en el MBR del primer disco
rígido introduzca el siguiente comando en el prompt:
# grub-install /dev/hda
Esto habilitará el MBR para que ahora arranque usando GRUB en lugar de LILO. Ahora,
vuelva a arrancar la computadora y la pantalla de arranque de GRUB debería verse
ahora.
Si el usuario está usando GRUB inicialmente y ahora desea usar el cargador de
arranque LILO, use el mismo proceso que antes, pero en cambio use el archivo lilo.conf.
Luego, use el comando lilo para escribir el nuevo MBR y hacer que el sistema arranque
usando LILO.
9.4.4 Problemas del kernel
Las Variables del Entorno contienen información acerca del sistema informático que
usan los programas para obtener un informe de estado sobre la condición actual de la
computadora. Las Variables del Entorno en un sistema Linux contienen información
como directorio home del usuario, espacio en disco, nombre de host, el nombre del
shell actual, o simplemente para averiguar qué recursos están disponibles en el
sistema. Los programas que están instalados contienen algunas de sus propias
variables del entorno que se usan para saber dónde están ubicados sus archivos de
configuración o cómo mostrar información.
Variables del Entorno Comunes de Linux
Existen muchos tipos diferentes de variables del entorno que pueden establecerse para
un sistema Linux. Para ver una lista de todas las actualmente establecidas, tipee el
La etapa final del proceso de instalación consiste en probar y verificar que los
programas, aplicaciones y sistema operativo estén funcionando apropiadamente. Una
vez que el sistema operativo inicial se ha instalado y las configuraciones e
instalaciones post-instalación se han establecido, es importante probar las
configuraciones antes de implementar el sistema. Una prueba apropiada ahorrará
tiempo al administrador en resolver problemas después. Los problemas son inevitables
y ocurrirán después de probar el funcionamiento y desempeño apropiados. Cómo
arreglar estos problemas se tratará en el Capítulo 13, esta sección se concentra en
cómo probar aplicaciones en un sistema de prueba así como en un sistema de
producción.
Verificación en un Entorno de Prueba
Hay muchas razones para probar las aplicaciones y programas antes de instalarlos en
un entorno de producción. Supongamos que se está efectuando una actualización
completa del sistema operativo. Por ejemplo, una compañía desea actualizar todos sus
sistemas Linux a Red Hat 7.2. Es una buena idea instalar el sistema operativo primero
en una red de prueba. Luego instale todos los programas y aplicaciones en el sistema y
verifique que todo funcione apropiadamente. Incluso si se trata de una única aplicación
o una actualización a una aplicación, no es inteligente instalarla directamente en un
sistema de producción. Hacerlo puede introducir bugs, cambios de configuración a
formatos de archivos, y compatibilidad con otros programas. Probar y evaluar el nuevo
software en un sistema de prueba ayuda a reducir estos problemas.
Para establecer un entorno de prueba apropiado, recree tan exactamente como sea
posible el sistema o sistemas existente(s). Esto incluye tener el sistema operativo
exacto y los programas instalados en el sistema así como asegurarse de que el sistema
de prueba tiene todos los mismos archivos de configuración y configuraciones que
tiene el sistema de producción. Esto incluye tener el hardware exacto en el sistema de
prueba que en el sistema de producción. De ser posible, es una buena idea copiar la
imagen del disco rígido del sistema de producción al disco rígido del sistema de
prueba. Si se está haciendo una actualización es una buena idea instalar la versión
antigua en el sistema de prueba y llevar a cabo la actualización como se haría en el
sistema de producción.
En algunos casos, crear una réplica exacta de la computadora de producción no es una
opción. Esto no es enteramente malo ya que la mayoría del software instalado no
depende de qué hardware está instalado. No obstante, la versión y distribución
correctas de Linux debe instalarse en el sistema de prueba que estará en el sistema de
producción. Esto se debe a que diferentes distribuciones de Linux pueden contener
colecciones de paquetes muy diferentes, que contienen controladores específicos. Por
lo tanto, si no se sigue esta regla, cuando el software se use en un sistema de
producción, podría fallar.
Un único programa podría simplemente involucrar probar unas pocas veces y puede
llevar muy poco tiempo. Una instalación importante de software o paquete como un
nuevo servidor web o sistema operativo deberá requerir pruebas más extensivas y
formales. Una buena práctica cuando se hace la instalación o se actualiza en el entorno
de prueba es tomar buenas notas para referirse a ellas cuando se haga el trabajo real
en el entorno de producción.
Verificación en un Entorno de Producción
Una vez que las pruebas apropiadas se han llevado a cabo en el entorno de prueba y
todo ha sido verificado y funciona apropiadamente, es hora de instalar el software en el
sistema de producción. Una buena práctica es hacer un backup de todo en el sistema
de destino primero en caso de que algo efectivamente salga mal. Otra buena práctica
es establecer marcas de desempeño antes de la actualización. Éstas pueden
compararse después de que la actualización esté completa para probar si el sistema
puede manejar eficazmente el nuevo software. Esto deberá cubrirse en el entorno de
prueba, recuerde que no siempre es posible establecer una réplica completa del
sistema de producción. Con los archivos en backup es posible restaurar el sistema a su
configuración original. Incluso si se pasa la prueba, cualquiera que haya hecho
instalaciones y actualizaciones en computadoras sabe que los problemas pasan y nada
funciona 100 por ciento del tiempo.
Algunos problemas importantes a tener en cuenta es que lo más probable es que el
sistema de producción necesite llevarse offline para poder llevar a cabo la
actualización o instalación. A veces es una buena idea, para que, si algo sale mal otras
computadoras conectadas al sistema no se vean afectadas. Otra cosa importante a
tener en cuenta es que podría haber otras computadoras o usuarios de esas
computadoras que se basan en el sistema que se está actualizando. Esto es
especialmente cierto si el sistema es un servidor de red. Por ejemplo, si el sistema es
un servidor de archivos que contiene los archivos de la compañía a los que los
empleados necesitan acceder. De ser éste el caso, entonces el mejor momento para
programar la actualización es durante momentos en los cuales los usuarios vayan a
usar lo menos posible el servidor. Otra buena idea podría ser mantener el sistema de
prueba disponible para reemplazar temporalmente el sistema de producción mientras
se lo está actualizando. En último lugar, es importante notificar a los usuarios del
trabajo que se está haciendo para que estén concientes y puedan prepararse para el
tiempo de inactividad del servidor por anticipado.
Una vez que la instalación o actualización se ha completado y el sistema de producción
está de nuevo online y funcionando, es una buena idea practicar una serie de pruebas.
Esto es para asegurarse de que el sistema funcionará apropiadamente. Una buena
práctica en este punto es establecer el desempeño post instalación o actualización
mediante marcas y compararlas con las marcas tomadas antes.
Como parte de la verificación en un entorno de producción viene un continuo
monitoreo durante días e incluso semanas si la instalación o actualización fue
importante. En un sistema Linux use el comando ps para verificar que el proceso aún
esté en funcionamiento. Es una buena idea verificar los archivos log del sistema para
monitorear el desempeño del sistema a lo largo de un periodo de tiempo. Los archivos
log en sistemas Linux se almacenan usualmente en el árbol de directorios /var/log.
Resumen