6.1 6.1.1
Características de un Sistema Operativo de Red Descripción general de las características de los NOS
La función de un sistema operativo (OS) es controlar el hardware de la computadora, el entorno de ejecución de los programas, y la interfaz del usuario. El OS lleva a cabo estas funciones para un único usuario o una cantidad de usuarios que comparten la máquina más serialmente que concurrentemente. Un administrador puede configurar cuentas para más de un usuario, pero los usuarios no pueden iniciar sesión al sistema al mismo tiempo. En contraste, los sistemas operativos de red (NOSs) distribuyen sus funciones a través de una cantidad de computadoras en red. Un NOS depende del OS nativo de cada computadora individual. Luego agrega funciones que permiten el acceso a los recursos compartidos por una cantidad de usuarios concurrentemente. La Figura compara cómo está diseñada una relación cliente-servidor comparada a otros entornos típicos. Las computadoras NOS asumen roles especializados para lograr un acceso concurrente a recursos compartidos. Los sistemas cliente contienen software especializado que les permite solicitar recursos compartidos que son controlados por sistemas servidores respondiendo a una solicitud del cliente. La Figura ilustra el concepto de cómo los datos que se almacenan en servidores se hacen disponibles ante las solicitudes de los clientes. 6.1.2
Diferencias entre las PCs y un NOS
Las PCs funcionan como clientes en un entorno NOS. Usando las funciones del sistema operativo nativo de la PC, el usuario puede acceder a recursos que son locales en relación con la PC. Éstos incluyen aplicaciones, archivos, y dispositivos que están directamente conectados, como impresoras. Cuando una PC se convierte en cliente de un entorno NOS, software especializado adicional permite al usuario local acceder a recursos no locales o remotos como si estos recursos fueran parte del sistema local. El NOS mejora el alcance de la PC cliente haciendo los servicios remotos disponibles como extensiones del sistema operativo nativo local. Aunque una cantidad de usuarios pueden tener cuentas en una PC, sólo una única cuenta está activa en el sistema en un momento dado. En cambio, un NOS soporta varias cuentas de usuario al mismo tiempo y permite el acceso concurrente a recursos compartidos por varios clientes. Los servidores deben soportar varios usuarios y actuar como repositorios de recursos que son compartidos por muchos clientes. Los servidores requieren software especializado y hardware adicional. La Figura ilustra mejor este concepto. El servidor debe contener varias cuentas de usuario y poder permitir acceso a más de un usuario a la vez a los recursos de la red. 6.1.3
Sistemas multiusuario, multitarea y multiprocesador
Para poder soportar varios usuarios concurrentes y proporcionar acceso compartido a servicios, recursos, y dispositivos de la red, los servidores de los NOSs deben correr sistemas operativos con características que se extiendan más allá de aquéllas de las PCs clientes. Una cantidad de sistemas operativos como Linux, Windows NT/2000/XP, y Novell NetWare pueden integrar las características que se requieren para funcionar como servidor NOS. Un sistema capaz de operar como servidor NOS debe poder soportar varios usuarios concurrentemente. El administrador de la red crea una cuenta para cada usuario, permitiendo al usuario conectarse e iniciar sesión al sistema de servidores. Una cuenta de usuario en el servidor permite al servidor autenticar al usuario y adjudicar los recursos apropiados a los que se permite acceder al usuario. Los sistemas que proporcionan esta capacidad se denominan sistemas multiusuario. UNIX, Linux, y Windows NT/2000/XP soportan todos esta capacidad multiusuario. Un servidor NOS es un sistema multitarea. Internamente, el OS debe ser capaz de ejecutar varias tareas o procesos al mismo tiempo. Los sistemas operativos de servidor logran esto mediante software de cronograma incorporado al entorno de ejecución. El software de cronograma adjudica
tiempo interno del procesador, memoria, y otros elementos del sistema a diferentes tareas de forma tal que les permite compartir los recursos del sistema. Cada usuario del sistema multiusuario es soportado por una tarea o proceso separado internamente en el servidor. Estas tareas internas se crean dinámicamente a medida que los usuarios se conectan al sistema y son borrados cuando los usuarios se desconectan. Otra función de los sistemas capaz de actuar como servidores NOS es la potencia de procesamiento. Por lo común, las computadoras tienen una única unidad central de procesamiento (CPU) que ejecuta las instrucciones que componen una determinada tarea o proceso. Para poder trabajar eficientemente y entregar rápidas respuestas a las solicitudes de los clientes, un OS que funciona como servidor NOS requiere una CPU potente para ejecutar sus tareas o programas. Sistemas de procesador único con una CPU pueden cumplir las necesidades de la mayoría de los servidores NOS si tienen la velocidad necesaria. Para lograr velocidades de ejecución más altas, algunos sistemas vienen equipados con más de un procesador. Tales sistemas se denominan sistemas multiprocesadores. Son capaces de ejecutar varias tareas en paralelo asignando cada tarea a un procesador diferente. La cantidad agregada de trabajo que el servidor puede llevar a cabo en un momento determinado está muy mejorada en los sistemas multiprocesadores. La Figura ilustra un servidor multitarea típico que está ejecutando varias instancias de servicios de red a los que se está accediendo mediante varios sistemas cliente. Los servidores de esta naturaleza a veces se denominan servidores empresariales a causa de su capacidad de manejar servicios grandes y varios. Los servidores empresariales también son capaces de ejecutar copias concurrentes de un comando en particular. Esto les permite ejecutar varias instancias del mismo servicio llamadas thread. Una thread es un término de programación de computadoras que describe un programa que puede ejecutarse independientemente de otras partes. Los sistemas operativos que soportan multithreading permiten a los programadores diseñar programas cuyas partes divididas y autónomas puedan ejecutarse concurrentemente. 6.1.4
Hardware de servidor para un NOS
En un entorno NOS, muchos sistemas cliente acceden a y comparten los recursos de uno o más servidores. Los sistemas de cliente de escritorio están equipados con su propia memoria y dispositivos periféricos como un teclado, monitor, y unidad de disco. Para soportar el procesamiento local, los sistemas servidores deben estar equipados para soportar a varios usuarios concurrentes y varias tareas concurrentes a medida que los clientes hacen demandas de recursos remotos al servidor. En general, los servidores NOS son sistemas más grandes con memoria adicional para soportar varias tareas que estén todas activas, o residentes, en la memoria al mismo tiempo. También se requiere espacio en disco adicional en los servidores para contener los archivos compartidos y para funcionar como extensión de la memoria interna del sistema. Además, los servidores en general requieren slots de expansión extra en sus placas del sistema para conectar dispositivos compartidos, como impresoras y varias interfaces de red. En servidores multiprocesador, CPUs adicionales mejoran la potencia de procesamiento. Puesto que los servidores NOS funcionan como repositorios centrales de recursos vitales para la operación de sistemas cliente, los servidores no sólo deben ser eficientes sino también robustos. El término robusto indica que los sistemas del servidor son capaces de funcionar eficazmente bajo cargas pesadas. También significa que los sistemas pueden sobrevivir al fallo de uno o más procesos o componentes sin experimentar un fallo general del sistema. Este objetivo se cumple incorporando redundancia a los sistemas de servidor. Redundancia es la inclusión de componentes de hardware adicionales que pueden tomar el mando si otros componentes fallan. La redundancia es una característica de sistemas tolerantes a fallos que están diseñados para sobrevivir a fallos e incluso ser reparados sin interrupción mientras están funcionando. Un NOS depende de la operación continua de sus servidores. Por lo tanto, los componentes extra de hardware justifican el gasto adicional. 6.1.5
Elección de un NOS
Las principales características a considerar al seleccionar un NOS incluyen el desempeño, las herramientas de administración y monitoreo, la seguridad, la escalabilidad, y la robustez/tolerancia a fallos. La siguiente sección define brevemente cada una de estas características. Desempeño Un NOS debe desempeñarse bien leyendo/escribiendo archivos a través de la red entre clientes y servidores. Debe poder sostener un desempeño rápido bajo pesadas cargas cuando muchos, quizás cientos de clientes estén efectuando solicitudes. Un NOS debe responder a las solicitudes de los clientes de acceso a las bases de datos del servidor. Por ejemplo, una solicitud de transacción para extraer registros de una base de datos albergada en el sistema de servidores del NOS. Un desempeño consistente bajo una fuerte demanda es algo importante para un NOS. Administración y Monitoreo La interfaz de administración del servidor en un NOS proporciona las herramientas para monitoreo del servidor, administración de clientes, administración de archivos e impresión, y administración de almacenamiento en disco. La interfaz de administración proporciona herramientas para la instalación de nuevos servicios y la configuración de dichos servicios. Además, los servidores requieren un monitoreo y ajuste regulares. Seguridad Un NOS debe proteger los recursos compartidos bajo su control. La seguridad incluye autenticar el acceso a los servicios de parte del usuario para evitar un acceso no autorizado a los recursos de la red. La seguridad también lleva a cabo el cifrado para la protección de la información a medida que viaja entre clientes y servidores. Escalabilidad La escalabilidad es la capacidad del NOS de crecer sin degradación en el desempeño. El NOS debe ser capaz de sostener su desempeño a medida que nuevos usuarios se unen a la red y nuevos servidores se agregan para soportarlos. Robustez/Tolerancia a Fallos Una medida de robustez es la capacidad de entregar servicios de NOS consistentemente bajo pesadas cargas y de sostener sus servicios si los componentes de los procesos fallan. Dispositivos de disco redundantes y equilibrio de la carga en varios servidores pueden mejorar la robustez del NOS. 6.1.6
Tipos de NOSs
Elegir un NOS puede ser una decisión compleja y difícil. Todo NOS popular tiene sus fortalezas y debilidades. Un NOS puede costar miles de dólares más que los sistemas operativos de escritorio, dependiendo de la cantidad de clientes que estarán conectados al servidor. Es importante conocer lo básico acerca de las familias de NOS populares. Muchas redes incluyen ahora más de un tipo de servidor, y sabiendo cómo hacer interoperar estos diversos sistemas es una habilidad importante para un administrador de red. Los sistemas operativos en la red tienen su propio lenguaje. Diferentes fabricantes de NOS usan los mismos términos en diferentes formas. Por ejemplo, en un entorno UNIX, "raíz" se refiere a la cuenta administrativa master, pero en redes NetWare, se usa para identificar un objeto de los servicios de directorio Novell (NDS). En Windows, raíz puede relacionarse con el dominio que se encuentra en la parte superior de un árbol de dominio Windows 2000 o XP o al componente básico de un Sistema de Archivos Distribuido (DFS). La Figura diferentes tipos de NOSs que se tratarán en este curso.
muestra ejemplos de algunos de los
En las siguientes secciones, se tratarán las siguientes redes populares basadas en NOS: •
Linux
•
Windows NT and Windows 2000
•
Windows XP
6.2.1
Terminología Windows
Las redes basadas en servidores Windows que ejecutan Windows NT Server o Windows 2000 Server se basan en el concepto de dominio. Un dominio es un grupo de computadoras y usuarios que sirven como frontera de autoridad administrativa. Los dominios Windows NT y los dominios Windows 2000, aunque de función similar, interactúan entre sí de manera diferente. Microsoft usa el término "dominio" para describir grupos de computadoras, usuarios y recursos que forman una frontera administrativa. Microsoft usa el término "controlador de dominio" para describir los servidores de autenticación de inicio de sesión que contienen una copia de la base de datos de cuentas de seguridad. También específica de las redes Microsoft es la distinción entre la impresora, usada para describir una construcción de software lógica, y el dispositivo de impresión, que hace referencia a la pieza de hardware real que imprime el documento. La terminología de networking de Windows 2000 es familiar para aquéllos que hayan trabajado con Windows NT 4.0. No obstante, algunos términos y conceptos, como el árbol y bosque de dominios, podrían ser nuevos para los administradores NT. Además, los administradores que llegan al networking Windows desde un entorno NetWare podrían hallar que algunos términos familiares, como "árbol", ahora tienen significados diferentes. En las siguientes secciones, se examinan características específicas de Windows NT 4.0 y Windows 2000. La Figura ilustra un ejemplo de las diversas formas en que las computadoras pueden disponerse en una red. Pueden ser autónomas, miembro de un dominio de un único grupo o de un dominio de varios grupos. 6.2.2
Windows NT 4.0
Windows NT Workstation fue el primer sistema operativo de escritorio de Microsoft que estaba dirigido al mercado corporativo. La última versión del sistema operativo NT es NT 4.0, que tiene una interfaz de usuario similar a la de Windows 95. Antes del lanzamiento de NT 4.0, Microsoft lanzó NT 3.x, que tiene la interfaz de Windows 3.x. Windows NT fue diseñado para proporcionar un entorno para negocios críticos para la misión que serían más estables que los sistemas operativos para consumidores de Microsoft. Cuando se lanzó la primera versión de Windows NT, Microsoft afirmó que el acrónimo significaba "Nueva Tecnología". Más recientemente, la compañía ha declarado que "NT" es autónomo y no una sigla. Algunas ventajas de Windows NT Workstation como sistema operativo de escritorio y cliente de red son las siguientes: •
Es un auténtico sistema operativo de 32 bits, y soporta multitasking preferencial y mayor estabilidad del sistema.
•
Incluye seguridad a nivel de los archivos y compresión de datos archivo por archivo.
•
Es compatible con muchos programas de 16 bits, sin sacrificar confiabilidad. NT ejecuta DOS y antiguos programas Windows en Máquinas Virtuales (VMs). Usando este método, si una aplicación se cuelga, esto no afecta a otras aplicaciones ni requiere un reinicio del sistema operativo.
La integración de la red es un foco principal en el diseño de Microsoft Windows NT. NT incluye soporte para placas de interfaz de red (NICs) comunes así como el software necesario para conectarse a redes Microsoft y NetWare. También se incorpora la capacidad para funcionar como cliente o servidor de acceso remoto. Estructura de Dominio de Windows NT La estructura de dominio de Windows NT es enteramente diferente de la estructura de dominio en Windows 2000. En lugar de Active Directory, Windows NT proporciona una herramienta administrativa llamada Administrador de Usuarios para Dominios. La Figura proporciona un ejemplo de la pantalla de administración de cuentas del Administrador de Usuarios para Dominios
de Windows NT. Se accede desde el controlador de dominios y se usa para crear, administrar y eliminar cuentas de usuarios de dominios. El Administrador de Usuarios para Dominios permite al administrador crear nuevas cuentas de usuario y grupos, renombrar, modificar y eliminar cuentas, asignar contraseñas, configurar políticas de cuentas, y establecer restricciones sobre los usuarios. Las restricciones sobre los usuarios incluyen especificar cuándo y desde qué estaciones de trabajo pueden iniciar sesión. Cada dominio NT requiere un (y sólo uno) Controlador de Dominio Principal (PDC). Éste es el servidor "master" que contiene la Base de Datos de Administración de Cuentas de Seguridad (a menudo llamada SAM). Un dominio también puede tener uno o más Controladores de Dominio de Respaldo (BDCs), cada uno de los cuales contiene una copia de sólo lectura de la SAM. La SAM es lo que controla el proceso de autenticación cuando un usuario inicia sesión en el dominio. Cuando un usuario intenta iniciar sesión, la información de cuenta se envía a la base de datos SAM. Si la información para esa cuenta se almacena en la Base de Datos SAM, entonces el usuario será autenticado para el Dominio y tendrá acceso a la estación de trabajo y los recursos de la red. Los usuarios pueden iniciar sesión y recibir autenticación por un PDC o un BDC. No obstante, los cambios en la SAM sólo pueden hacerse en el PDC. Estos cambios luego se replican en los BDCs regularmente. Los BDCs equilibran la carga de tráfico de autenticación y sirven como respaldos en caso de que el PDC pase a inactividad. Si el PDC pasa a inactividad de manera permanente, un BDC puede ser "promovido" y convertirse en PDC. 6.2 6.2.3
Windows Sistemas Operativos Windows 2000 y XP
Windows 2000 y Windows XP son unos de los sistemas operativos de Microsoft para el escritorio corporativo. El diseño de Windows 2000 y Windows XP está basado en la tecnología que Microsoft desarrolló con su sistema operativo de red basado en el cliente anterior, Windows NT. Windows 2000 y XP combinan las tecnologías de Windows NT y agregan muchas nuevas funciones y mejoras. Windows 2000 y XP no están diseñados para ser un auténtico NOS para servidores. No proporcionan un controlador de dominio, servidor DNS, servidor DHCP, ni entregan ninguno de los servicios que pueden implementarse con la familia de servidores Windows 2000/2003. Su propósito principal es ser parte de un dominio como sistema operativo del lado del cliente. El tipo de hardware que puede instalarse en el sistema es limitado. Por ejemplo, muchos servidores requieren varios procesadores y/o NICs. Windows 2000 y XP Professional pueden soportar hasta dos procesadores. Si el sistema necesita hacer mucho procesamiento de datos, se requeriría un sistema que soporte más de dos procesadores. Windows 2000 y XP Professional pueden proporcionar algunas capacidades de servidor para pequeñas redes. Por ejemplo, 2000 y XP pueden servir como servidor de archivos, servidor de impresión, servidor FTP, y servidor web. No obstante, será necesario actualizar a Windows 2000/2003 Server a un sitio FTP o sitio web que vaya a recibir mucho tráfico simultáneo. Windows 2000 y XP Professional sólo soportarán hasta diez conexiones simultáneas. Windows 2000 y XP Professional soportan tecnología plug-and-play. Ambos OSs pueden ser instalados utilizando el sistema de archivos FAT32 o NTFS, e incluyen cifrado de datos para asegurar los datos del disco rígido. La tecnología plug-and-play es una herramienta muy útil que permite a un administrador rápida y fácilmente agregar componentes al sistema. El OS reconocerá automáticamente e instalará los controladores para el dispositivo. Esencialmente, una vez que el componente es conectado al sistema, funcionará automáticamente sin configuración adicional del administrador. Antes, cuando se agregaba un nuevo componente, había que instalar controladores y el dispositivo necesitaba configurarse manualmente. Windows 2000 viene con una enorme base de datos para dispositivos plug-and-play comunes. Otras ventajas de Windows 2000 y XP Professional como sistema operativo de escritorio y cliente de red incluyen las siguientes:
•
Ofrece un mejor soporte para usuarios móviles mediante la Administración Avanzada de Energía (APM) y ACPI. Windows NT no soporta ACPI.
•
Proporciona un networking privado virtual más seguro con el Protocolo de Tunneling de Capa 2(L2TP) e IP Security (IPSec). Versiones anteriores de Windows soportaban sólo el Protocolo de Tunneling Punto a Punto (PPTP) para las VPNs. L2TP es una extensión al protocolo PPP que permite a los ISPs operar Redes Privadas Virtuales (VPNs). IPSec es un conjunto de protocolos desarrollados para soportar un intercambio seguro de paquetes en la capa IP, que también se utiliza en conexiones VPN.
•
La función carpetas offline permite a los usuarios copiar y sincronizar documentos desde la red al sistema local para que pueda accederse a ellos cuando la computadora no está conectada a la red.
•
El Protocolo de Impresión de Internet (IPP) permite a los usuarios imprimir un URL y administrar impresoras mediante una interfaz de navegador web.
•
Defragmentadores de disco incorporados y otras herramientas y utilidades ayudan a los usuarios a mantener y administrar el sistema operativo. Éstas tienen que adquirirse separadamente a terceros en Windows NT.
•
Soporta seguridad Kerberos (estándar en desarrollo para autenticar a usuarios de red), y las funciones de un dominio Windows 2000 como cliente de Active Directory.
Además de las ventajas anteriores, Windows XP proporciona unas pocas ventajas más allá de las capacidades de Windows 2000. Algunas de ellas son:
•
Soporte a hardware y controladores más extensivo.
•
Archivos compartidos más amigables con el usuario y configuración de red para establecer redes hogareñas.
•
Funciones de redes inalámbricas mejoradas.
•
Mayor seguridad.
•
Control de Escritorio Remoto.
•
Mejoras generales a la GUI, incluyendo las adiciones de pantalla de bienvenida, mejoras al menú inicio, y más fácil administración de archivos con el windows explorer.
•
Soporte multimedia mejorado para video digital, audio e imágenes.
6.2.4
Sistemas Operativos Windows 2000 y 2003 Server
Los sistemas operativos Windows 2000 Server incluyen a Windows 2000 Server y Windows 2000 Advanced Server. Las necesidades específicas de la red determinarán la mejor versión de Windows 2000 para su instalación. Windows 2000 Server Windows 2000 Server incluye todas las funciones de la sección Windows 2000 Professional así como muchas nuevas funciones específicas de un servidor. Windows 2000 Server también puede operar como servidor de archivos, impresoras, web así como servidor de aplicaciones. Lo que separa a Windows 2000 Server de Windows 2000 Professional es un completo conjunto de servicios de infraestructura basados en servicios de Active Directory. Active Directory, similar a Novell NDS, sirve como punto centralizado de administración de usuarios, grupos, servicios de seguridad, y recursos de la red. Windows 2000 Server también soporta sistemas de Multiprocesamiento Simétrico (SMP) de cuatro vías y permite hasta 4 gigabytes (GB) de memoria física. El multiprocesamiento simétrico es una arquitectura informática que proporciona elevado desempeño haciendo que varias CPUs estén disponibles para procesos individuales. El multiprocesamiento simétrico permite que varios procesadores trabajen en paralelo y aún usen una única imagen de sistema operativo, memoria común y recursos de I/O de disco. En pocas palabras,
el Multiprocesamiento simétrico es cuando varios procesadores trabajan juntos para compartir la carga de trabajo en una computadora. Incluye las capacidades multipropósito requeridas para grupos de trabajo y sucursales así como para implementaciones departamentales de servidores de archivos e impresión, servidores de aplicaciones, servidores web, y servidores de comunicación. Windows 2000 Server tiene como objetivo su uso en entornos empresariales de tamaño pequeño a mediano. Algunas otras mejoras que vienen con Windows 2000 Server son soporte incorporado para los más importantes protocolos de red que están en uso en las redes de hoy como TCP/IP e IPX/SPX. Windows 2000 Server proporciona conectividad integrada con sistemas Novell NetWare, UNIX, y AppleTalk. Un Windows 2000 Server configurado como servidor de comunicaciones puede proporcionar servicios de networking de conexión telefónica para usuarios móviles. Windows 2000 Server puede soportar hasta 256 sesiones de conexión telefónica entrantes simultáneas, en contraste con Windows 2000 Professional, que puede proporcionar soporte para sólo una sesión de conexión telefónica a la vez. Windows 2000 Advanced Server Windows 2000 Server and Windows 2000 Advanced Server son lo mismo excepto en que Advanced Server proporciona soporte para hardware y software que un administrador de sistemas necesitará en una red empresarial y extremadamente grande que puede incluir varios vínculos WAN a oficinas de todo el mundo. Advanced Server es un sistema operativo de servidor de aplicaciones y departamental más potente que incluye todas las funciones de Windows 2000 Server y agrega la avanzada alta disponibilidad y escalabilidad mejorada requerida para grandes redes. Windows 2000 Advanced Server soporta SMP de ocho vías, lo cual sería ideal para trabajo intensivo en base de datos. Advanced Server también proporciona soporte para hardware de alta potencia que soporta una red empresarial. Por ejemplo, Advanced Server proporciona soporte para más de 4 GB de memoria física. Windows .NET Server Microsoft ha desarrollado Windows .NET Server con la capacidad para proporcionar un sistema seguro y confiable para correr sitios web y FTP a nivel empresarial para competir con los sistemas operativos Linux, UNIX y Novell Netware Server. Con la creciente emergencia del e-commerce, las compañías basadas en la web, y las compañías que están expandiendo sus servicios a Internet, existe la necesidad de un servidor que sea capaz de proporcionar servicios web y FTP seguros y confiables. Windows .NET Server, que está armado sobre el Kernel de Windows 2000 Server, está específicamente adaptado para proporcionar estos tipos de servicios. El Windows .NET Server proporciona servicios web XML a compañías que corren tráfico web de medio a alto volumen. .NET server proporcionará soporte a las compañías que están comenzando en esta nueva generación de negocios así como negocios que han estado proporcionando soluciones de negocios basadas en Internet durante algún tiempo. La Figura Sistemas Operativos Windows 2000.
proporciona una comparación de la familia de
Windows 2003 Server Las versiones de Windows 2003 Server incluyen la Standard Edition, Enterprise Edition, Datacenter Edition, Web Edition, y Small Business Server Edition. Siga el vínculo de más abajo para aprender más y comparar las especificaciones de las diferencias entre las ediciones de Windows 2003 Server. Una de las principales funciones que Microsoft ha implementado para su lanzamiento de 2003 Server es soporte disponible para sistemas de 64 bits para poder competir en la arena de los servidores a nivel empresarial. Muchas de las mismas funciones que se incluyeron en la edición Windows 2000 Server siguen estando en 2003 Server Edition, no obstante Microsoft afirma que ha mejorado la eficiencia general de las funciones. Algunas de las principales características que han sido agregadas a 2003 server que no estaban en 2000 Server son las siguientes: •
Servicios de clustering y equilibrio de carga mejorados.
•
Construcción y hosting de aplicaciones web, páginas web, y Servicios Web XML.
•
Desarrollo e implementación de servicios Web XML y aplicaciones que usan la tecnología ASP.NET.
•
Arquitectura de Seguridad de Internet.
•
Servicios de Red Inalámbricos.
•
Servicios y Soporte Metadirectorio.
•
Firewall de Conexión a Internet.
•
Infraestructura de Clave Pública, Servicios de Certificados, y Smart Cards.
•
Escritorio Remoto para la Administración y Servidor de Terminal Integrados.
•
Servicios para interoperabilidad con UNIX
•
Soporte a la Red Privada Virtual (VPN).
•
Soporte para IPv6.
6.3
Linux
6.3.1
Historia de Linux
Linux es un sistema operativo similar a UNIX. Se ejecuta en computadoras muy diferentes. Linux fue lanzado en 1991 por su autor Linus Torvalds de la Universidad de Helsinki. Desde entonces, Linux ha crecido en popularidad a medida que programadores de todo el mundo adoptaron la idea de construir un sistema operativo gratuito, agregar funciones y resolver problemas. Linux es popular entre la generación actual de usuarios de computadoras por la misma razón que las primeras versiones del sistema operativo UNIX tentaron a los usuarios hace más de 20 años. Linux es portátil, lo que significa que las versiones pueden hallarse funcionando en PCs de marca o clones, Apple Macintosh, estaciones de trabajo Sun, o computadoras basadas en Alpha de Digital Equipment Corporation. Linux también viene con código fuente, para que el usuario pueda cambiar o personalizar el software para adaptarlo a sus necesidades. Finalmente, Linux ofrece muchas características adoptadas de otras versiones de UNIX. La Figura del desarrollo de UNIX/Linux.
muestra una línea de tiempo
La Iniciativa Fuente Abierta La Iniciativa Fuente Abierta proporciona una marca registrada para desarrolladores de software que desean compartir, modificar y redistribuir su código. Para usar la marca registrada, el software debe cumplir con ciertos criterios. Debe ser distribuido gratuitamente sin restricción y el código fuente debe estar disponible. Ejemplos de software que cumplen estos requisitos son Linux, la versión Berkeley Software Design (BSD) de UNIX, el Sistema X Window, y las aplicaciones desarrolladas bajo el proyecto GNU. 6.3.2
¿Qué es UNIX?
Es importante mencionar las funciones y usos de UNIX al tratar Linux. El NOS UNIX fue desarrollado en 1969, y ha evolucionado en muchas variedades. El código fuente es abierto, es decir, disponible sin costo a cualquiera que desee modificarlo. Además, está escrito en lenguaje de programación C, para que los negocios, instituciones académicas, e incluso individuos puedan desarrollar sus propias versiones. Los sistemas operativos UNIX se usan en estaciones de trabajo de alto propósito, como máquinas Silicon Graphics y Sun. UNIX puede ejecutarse como sistema operativo de línea de comandos o con una interfaz gráfica del usuario (GUI) como X Window. La Figura la GUI X Window de UNIX.
proporciona un ejemplo de
Sistemas Operativos UNIX Hay cientos de diferentes versiones de UNIX. Algunas de las más populares son las siguientes: •
Berkeley Software Design, Inc, (BSD UNIX, que ha originado variantes como FreeBSD)
•
Santa Cruz Operation (SCO) UNIX
•
Sun Solaris
•
AIX (IBM's UNIX)
•
HP-UX (Hewlett Packard UNIX)
El código de fuente abierta es tanto la fortaleza como la debilidad del sistema operativo UNIX. Los desarrolladores se ven libres de mejorar y personalizar el sistema operativo. Aunque esto resulta en una falta de normalización que pueda frustrar a los usuarios, administradores y desarrolladores de aplicaciones, hay un gran cuerpo de software de aplicaciones que puede usarse en plataformas UNIX y Linux. A pesar de la popularidad de Windows y NetWare en LANs corporativas, gran parte de Internet todavía corre en potentes sistemas UNIX. UNIX se asocia en general con hardware caro y se considera "no amigable con el usuario" pero recientes desarrollos han cambiado esa imagen. En particular, el surgimiento en los '90 de Linux ha llevado la informática UNIX al mundo de la PC. 6.3.3
Sistema Operativo Linux
Linux se denomina en ocasiones "UNIX Lite", y está diseñado para ejecutarse en PCs compatibles con Intel. No obstante, Linux se ejecutará en otras máquinas también. Linux lleva las ventajas de UNIX a las computadoras hogareñas y de pequeños negocios. Al igual que sucede con UNIX, existen numerosas distribuciones de Linux. Una distribución incluye elementos tales como un programa de instalación, un kernel, scripts de inicio, archivos de configuración, y software de soporte crítico. Las diferentes distribuciones pueden usar versiones completamente diferentes de cualquiera o todas estas características, lo cual producirá un aspecto claramente diferente. En total, existen de 24 a 36 distribuciones importantes diferentes disponibles. Además de eso, hay varias otras menos populares y especializadas ediciones de Linux. Algunas de estas distribuciones son descargas gratuitas de la World Wide Web, y otras se distribuyen comercialmente. Las siguientes son algunas de las más populares. Red Hat Linux (http://www.redhat.com/) Red Hat Linux es una de las versiones más antiguas de Linux y ha sido también una de las distribuciones más influyentes. Red Hat Linux es famosa por crear el formato RPM que ahora es usado por otras distribuciones ni siquiera basadas en Red Hat. Red Hat contiene un proceso de instalación de la GUI así como herramientas para la configuración de la GUI. Red Hat es compatible con varias CPUs, incluyendo x86, IA-64, y Alpha. Un gráfico de muestra del packaging de Red Hat Linux se muestra en la Figura
.
Linux Mandrake (http://www.mandriva.com/en/ community/resources/about_mandriva_linux) Mandrake es una versión de Linux de origen francés y probablemente la versión más similar a Red Hat Linux. Mandrake se desarrolló originalmente como una versión de Red Hat con el Entorno de Escritorio K (KDE). Desde entonces Mandrake ha desarrollado una identidad propia que tiene un proceso de instalación de la GUI así como diferentes características para su configuración de servidor. Por ejemplo, Mandrake usa Postfix, en lugar de Sendmail como servidor de correo. Mandrake es compatible con diversos tipos de CPUs incluyendo x86, IA-64, SPARC, Alpha, y PowerPC. Una captura de pantalla de muestra de Mandrake Linux se muestra en la Figura Note cómo se parece a Red Hat.
.
Caldera eDesktop and eServer (http://www.caldera.com/) Como se nota por sus nombres, esta versión de Linux ha sido lanzada por Caldera, así como Red Hat lanza Red Hat. También Caldera Linux tiene dos versiones, una de las cuales está dirigida a estaciones de trabajo solamente y la otra está dirigida a servidores solamente. Como Red Hat, Caldera Linux está basado en RPM y tiene herramientas de configuración de la GUI muy sofisticadas. No obstante, la distribución Caldera de Linux no deriva de Red Hat en absoluto.
Caldera Linux está sólo disponible en una CPU x86. Una captura de pantalla de muestra de Caldera Linux se muestra en la Figura
.
Debian GNU/Linux (http://www.debian.org/) Esta distribución de Linux es diferente de las otras distribuciones en que fue construida únicamente para usos sin fines de lucro. Las otras distribuciones fueron construidas principalmente para compañías con fines de lucro. Esto hace de Debian Linux una opción muy popular para muchos de los usuarios a quienes les interesa la iniciativa de fuente abierta. También otorga a los usuarios la capacidad para personalizar estos archivos según su propio gusto. Debian usa muchas de las herramientas de configuración de la GUI usadas por las otras versiones de Linux. Debian Linux puede usarse en procesadores x86, PowerPC, Alpha, SPARC, y 680x0. La Figura captura de pantalla de Debian Linux.
muestra una
Corel Linux (http://corel.linux.com) La distribución Corel Linux se basa en Debian GNU/Linux pero tiene algunas características amigables con el usuario que han sido agregadas, como un nuevo proceso de instalación y nuevas herramientas de configuración de la GUI. Por ello, no obstante, ejecutar comandos Linux tradicionales desde la línea de comandos no siempre funcionará. Corel Linux está diseñado principalmente para uso en escritorio/estación de trabajo y está dirigido a principiantes en Linux que están familiarizados en el uso de Microsoft Windows. Corel Linux sólo está disponible en una CPU x86. Una captura de pantalla de muestra de Corel Linux se muestra en la Figura
.
LinuxPPC Esta distribución de Linux está específicamente diseñada para su uso en sistemas con una CPU PowerPC. La CPU PowerPC es la CPU que se usa en todo sistema Macintosh moderno y por lo tanto LinuxPPC también está diseñada para el mercado Macintosh. Esta distribución es un derivado de Red Hat que tiene como propósito el uso en PCs Macintosh. Una captura de pantalla de LinuxPPC se muestra en la Figura
.
Slackware (http://www.slackware.com/) Slackware es una distribución de Linux que es muy similar a Debian Linux en que está dirigida a usuarios avanzados que prefieren el entorno estándar UNIX en Linux. Slackware usa todas las herramientas de configuración basadas en texto y no usa ninguna GUI para estas configuraciones. Es también la más antigua distribución Linux disponible y es la única distribución que se basa en la administración de paquetes. Slackware puede ejecutarse en CPUs x86, Alpha, y SPARC. Storm Linux (http://www.stormlinux.com/) Storm Linux es distribuida por Stormix. Como Slackware, Storm Linux es una variante de Debian Linux. Storm Linux también es similar a Corel Linux en el hecho de que agrega herramientas de configuración para la GUI al núcleo de Debian. No obstante, Storm Linux difiere de Corel Linux en que no es tan dependiente de estas herramientas como lo es Corel Linux. Storm Linux sólo puede ejecutarse en procesadores x86. SuSE Linux (http://www.suse.com/) Esta distribución de Linux es popular en Europa y es producida por una compañía alemana. Al igual que Red Hat Linux, SuSE Linux puede usar RPMs, pero en otros aspectos no se basa en Red Hat. SuSE usa software DVD-ROM para abrir paquetes, si el sistema tiene una unidad de DVDROM. A diferencia de las otras distribuciones, SuSE Linux incluye alrededor de media docena de CDs, que contienen prácticamente cualquier paquete que un usuario podría desear para el sistema Linux. A veces puede ser difícil buscar en estos CDs para encontrar el paquete que se necesita. SuSE Linux también viene con las herramientas de configuración e instalación de la GUI esenciales. SuSE Linux puede instalarse en sistemas que usen procesadores x86, IA-64, PowerPC, y Alpha. Turbo Linux (http://www.turbolinux.com/) Turbo Linux está estrictamente dirigido hacia el mercado de servidores y se deriva de Red Hat Linux. Turbo Linux contiene fuerte soporte para Idiomas Asiáticos. Turbo Linux puede instalarse en procesadores x86, IA-64, y Alpha.
Yellow Dog Linux (http://www.yellowdoglinux.com/) Yellow Dog Linux es similar a LinuxPPC en dos aspectos. Primero, también se deriva de Red Hat Linux, y está principalmente diseñado para ejecutarse en procesadores PowerPC, lo que lo hace principalmente para sistemas Macintosh. Una reciente tendencia ha sido crear versiones de Linux que encajen en uno o dos diskettes. Una versión así recortada se llama "Linux On A Floppy" (LOAF), que entra en un disco. DOS Linux es otro NOS Linux pequeño y puede instalarse en un sistema DOS existente. Un tercero, Coyote Linux, es una distribución pequeña y especializada diseñada para compartir una conexión a Internet. Con todas las diferentes distribuciones de Linux disponibles en el mercado puede resultar difícil elegir cuál usar. Pero algunos de los factores obvios, como el procesador que el sistema informático está usando, ayudarán a decidir qué de qué distribuciones elegir. Algunos de los otros factores que pueden ayudar a reducir la decisión son qué tipo de sistema está construyendo el usuario. Si el sistema es un servidor entonces podría pensarse en Caldera eServer o Turbo Linux, que están específicamente dirigidos hacia el mercado de servidores. No obstante, tenga en cuenta que muchas de las otras distribuciones de Linux pueden usarse para ejecutarse en servidores también. Otro factor que podría determinar qué versión usar sería si el usuario está interesado en usar una GUI o no. Por último, los usuarios podrían pensar en sus niveles de experiencia. Si son nuevos para Linux entonces Caldera eDesktop, Corel, o Mandrake Linux podrían ser una buena opción para ellos. 6.3.4
Clientes Linux
Los clientes Windows pueden acceder a recursos y servidores Linux. El sistema de archivos cliente/servidor usado por la mayor parte de variedades de servidores de archivos Linux es un Sistema de Archivos de Red (NFS), que fue desarrollado por Sun Microsystems. Puede instalarse en clientes Windows que usan software tal como Solstice Network Client de Sun. NFS requiere TCP/IP, u otro software cliente NFS, para la transferencia de archivos. Los sistemas operativos Windows no incluyen un cliente NFS. Los clientes Windows pueden acceder a los servidores Linux sin software cliente si los servidores UNIX ejecutan Samba, que es un programa que usa el protocolo de capa de aplicación Server Message Block (SMB). Las computadoras Windows usan SMB para el acceso a archivos a través de la red. Samba les permite ver el sistema de archivos Linux. La Figura ilustra cómo un servidor Samba permitirá que diferentes tipos de sistemas accedan al servidor de archivos Samba. 6.4 6.4.1
Determinación de los Requisitos de Software para un NOS Linux Software y programas de la estación de trabajo
La mayor parte del software y los programas que un usuario encontraría en una estación de trabajo Linux están diseñados para ayudar al usuario a hacer su trabajo. Una Estación de Trabajo Linux no necesitará ninguno de los programas o software que el usuario normalmente encontraría en un sistema Linux configurado como servidor. Si cualquier software o programas de servidor de correo se instalaran en una estación de trabajo Linux, ésta sería un servidor de correo, que proporciona servicios locales para enviar y recibir e-mail. El Sistema X Window El Sistema X Window (abreviado, X) es lo que forma el entorno GUI de Linux. Linux es capaz de correr sin una GUI, no obstante, si un usuario está configurando Linux como estación de trabajo entonces lo más probable es que el usuario quiera asegurarse de que el Sistema X Window está instalado mediante el paquete Xfree86. Instalar y configurar X Window y el paquete Xfree86 se tratará en detalle en posteriores capítulos. Existen varias razones por las cuales el Sistema X Window debe instalarse en una estación de trabajo Linux. La más importante es porque casi todos los programas de una estación de trabajo requieren X Window para poder ejecutarse. Existen varias herramientas adicionales que también son parte del Sistema X Window que ayudan a la GUI a operar y ejecutarse sin problemas. Éstas incluyen Window Managers, que proporciona
límites y control en torno a las ventanas, y Desktop Environments. Desktop Environments incluye varias utilidades adicionales que ayudan a un usuario a personalizar y controlar su entorno de trabajo. Dos de los más populares Desktop Environments que vienen con Linux son el Entorno de Escritorio K (KDE, http://www.kde.org/) y el GNU Network Object Model Environment (GNOME, http://www.gnome.org/). Herramientas de Oficina Tener un software de suite de oficina eficiente es obligatorio para cualquier estación de trabajo, especialmente si la estación de trabajo es parte de una red y se encuentra en una compañía. Si Linux ha tenido algún defecto, ha sido en su falta de proporcionamiento de software de suite de oficina que se ejecute en Linux pero que sea tan bueno como Microsoft Office. No obstante, Linux sí tiene la capacidad de ejecutar software de suite de oficina. WordPerfect de Corel y Sun StarOffice son los dos software de suite de oficina principales de los capaces de ejecutarse en Linux. StarOffice puede ser una opción popular en Linux porque también puede usarse en Windows. Esto ayuda a evitar cualquier problema de compatibilidad en un entorno donde hay computadoras tanto Linux como Windows. Otras alternativas de suite de oficina son ApplixWare de Applix (http://www.applix.com/). La Figura muestra un ejemplo de la suite de oficina ApplixWare. También hay paquetes únicos en lugar de suites de oficina completas que vienen con Linux y algunos son instalados por defecto durante el proceso de instalación. Algunos ejemplos de ellos son LyX (http://www.lyx.org/) y AbiWord (http://www.abisource.com/). La Figura
muestra un
ejemplo de la herramienta procesadora de texto LyX. La Figura muestra un ejemplo de la herramienta procesadora de texto AbiWord. Éstos son dos procesadores de texto populares que pueden instalarse sin tener que instalar una suite de oficina completa. Clientes de Red Una estación de trabajo que funciona en una red empresarial o incluso una pequeña red necesitará poder acceder a recursos de networking. Las estaciones de trabajo usan una variedad de software de cliente de red para ello. Ejemplos incluyen navegadores web como Netscape u Opera, lectores de correo como KMail, y clientes FTP como gFTP. Existe una amplia variedad de clientes de red que se incluyen con cada distribución de Linux que un usuario podría necesitar. No obstante, si hay un cliente de red que se necesite que no se incluye en los CDs de instalación, éstos son fácilmente descargables desde Internet. Programas y Software Audiovisuales Con la cantidad de funciones multimedia que las computadoras son capaces de realizar, una estación de trabajo no podría competir a menos que proporcionara los programas y el software disponibles para ver, reproducir y editar archivos de video, gráficos y de música. Estas funciones no sólo son importantes para el usuario hogareño sino que también pueden ser importantes en un negocio. Artistas gráficos, diseñadoresde web y arquitectos, todos necesitarán tener estas características disponibles en sus sistemas. Algunos de los programas audiovisuales populares disponibles para Linux incluyen herramientas para visualizar y editar gráficos como XV (http://www.trilion.com/) y GIMP (http://www.gimp.org/); reproductores multimedia como Xanim (http://xanim.va.pubnix.com); editores de audio/video como Broadcast (http://heroines.sourceforge.net/bcast2000.php3) y Linux Video Studio (http://ronald.bitfreak.net/lvs/). La Figura proporciona un ejemplo de algunas de las herramientas de edición disponibles con GIMP. Los programas audiovisuales son otra área en la que Linux, en pasados años, no ha podido competir, al igual que ocurre con las suites de oficina. No obstante, desde entonces, un mejor software ha comenzado a emerger que se ha vuelto capaz de proporcionar estas funciones multimedia a un usuario Linux. 6.4.2
Software y programas para servidores
El software y los programas instalados en un servidor lo son con el propósito de proporcionar alguna clase de servicio a otros sistemas informáticos que están conectados a él a través de una red. El software y los programas que se ejecutan en un servidor se usan de manera diferente que el software y los programas que se instalan en una estación de trabajo. Los usuarios no usan
directamente el software o los programas que están en el servidor. En general, el administrador del servidor será el único usuario que usa el software e incluso entonces no será muy usado. En cambio, el software y los programas que se instalan en los servidores se están ejecutando constantemente en segundo plano en el servidor. Cuando una computadora cliente hace una solicitud, el servidor responderá a esa solicitud. Servidores Web Uno de los usos más populares de un sistema Linux en el mundo de hoy es como servidor web. El software de servidores web usa el Protocolo de Transferencia de Hipertexto (HTTP) para entregar archivos a usuarios que lo solicitan, usando un navegador web desde su estación de trabajo. El software de servidor web más popular disponible para Linux es Apache (http://www.apache.org/), un programa de fuente abierta que viene incluido con el CD de instalación. Otro software de servidor web disponible para Linux es Roxen y thttpd. Roxen está diseñado como servidor web comercial de alta potencia y thttp está más orientado a sitios web pequeños y de bajo tráfico. Servidores de Correo Un Servidor de Correo es un sistema que está configurado con los programas y servicios apropiados que permiten al servidor manejar el intercambio de e-mail que se está enviando de un cliente a otro. Este intercambio se tratará en capítulos posteriores. Cada distribución de Linux incluye un servidor de correo. Una versión que es popular y viene con Red Hat es Sendmail (http://www.sendmail.org/). Otros servidores de correo populares disponibles para Linux incluyen Exim (http://www.exim.org/) y Postfix (http://www.postfix.org/). Estos servidores de correo usan una variedad de protocolos para recibir el correo entrante y luego distribuir el correo saliente a las ubicaciones apropiadas. Por ejemplo, el Protocolo de Transferencia de Mail Simple (SMTP) se usa para entregar correo entre servidores de correo a través de Internet. SMTP también se usa en redes de área local (LANs) para transferir correo. Cada distribución de Linux incluye servidores Post Office Protocol (POP) e Internet Message Access Protocol (IMAP). Estos protocolos se usan para enviar el correo a los usuarios finales o a la computadora de destino dentro de la LAN. Muchos servidores Linux se basan en el protocolo SMTP para otros servicios también. Por ejemplo, el SMTP se usa para entregar importantes informes del estado del sistema al administrador del sistema. Por esta razón, se recomienda que el servidor SMTP de un sistema Linux nunca se inhabilite, incluso aunque no sea un servidor de correo. Servidores de Inicio de Sesión Remoto Acceder a un servidor remotamente así como los muchos diferentes programas que podrían usarse se trató en el Capítulo 5, "Descripción General de los Servicios de Red". El servidor de inicio de sesión más conocido es Telnet. En Linux, el servidor telnetd o in.telnetd ejecuta el protocolo Telnet. El servidor Telnet está incluido en cada distribución de Linux. No obstante, no está habilitado por defecto. Nunca use el protocolo Telnet en un sistema Linux, y manténgalo inhabilitado a causa de los problemas de seguridad. Telnet no es un protocolo seguro y es susceptible de ser interceptado mientras se transfieren archivos entre dos sistemas, comprometiendo así datos importantes. Otros servidores de inicio de sesión remoto están disponibles pero una mejor alternativa a Telnet es el Protocolo de Shell Seguro (SSH). SSH cifra todos los datos que se envían entre dos sistemas haciendo inservibles a los datos interceptados. Servidores de Acceso a Archivos El sistema operativo Linux proporciona un medio excelente de servidor de archivos en un entorno Linux o en un entorno multiplataforma que consista en estaciones de trabajo Windows, Macintosh, UNIX, u OS/2. La razón es que Linux soporta muchos protocolos para compartir archivos que pueden configurarse para permitir el acceso mediante todos estos sistemas operativos. Un servidor de archivos Linux permite a los usuarios leer y escribir archivos y directorios desde una ubicación remota. Existen varios protocolos que pueden usarse para lograr esto. El Protocolo de Transferencia de Archivos (FTP) es más bien un medio tradicional de transferir archivos a un servidor de archivos. Existen otros protocolos, software y programas que pueden instalarse en un servidor Linux que permitirán que una computadora trate a los archivos y directorios ubicados en el servidor de archivos como si fueran locales. El Sistema de Archivos de Red (NFS) de Sun es un ejemplo de este tipo de programa, que puede usarse para compartir archivos entre sistemas UNIX y Linux. El Server Message Block (SMB) funciona casi de la misma forma que el NFS pero se usa para permitir que otros OSs como sistemas DOS, Windows, NetWare, Macintosh, y OS/2 accedan
a un servidor de archivos Linux. Los sistemas DOS y Windows usan el protocolo SMB. NetWare usa los paquetes mars_new y lwared. Macintosh usa Applshare a través de Netatalk. Otros Servidores Linux Los diferentes tipos de servidores y programas Linux que se instalan y se mencionaron antes son los que un usuario más probablemente encuentre en una mayoría de servidores de cualquier compañía de tamaño mediano a grande. No obstante, esta lista está lejos de ser completa. Muchos de los otros tipos de servidores que se usan pueden no serlo tan ampliamente o simplemente no pueden clasificarse en ninguna categoría específica. Algunos ejemplos de estos tipos de servidores incluyen a Squid (http://www.squid-cache.org/), que es un servidor proxy Linux. Los servidores proxy controlan cosas como la seguridad de la red restringiendo el acceso a Internet. Los servidores DHCP y DNS recaen también en esta categoría. También es importante mencionar aquí las herramientas ipchains e iptables, incluso aunque pueden no considerarse servidores de verdad. Estas herramientas se usan al configurar un sistema Linux como firewall, lo cual se trató en capítulos anteriores. Estas herramientas son herramientas de seguridad que pueden bloquear el acceso al servidor basándose en direcciones IP o números de puerto. La diferencia entre los dos es que ipchains se usa en sistemas Linux que corren el kernel serie 2.2.x e iptables funciona con los kernels más nuevos 2.4.x. 6.4.3
Software y programas adicionales
Las dos secciones anteriores trataban muchos de los programas y software esenciales que es necesario instalar en una estación de trabajo o servidor. No obstante, existen programas y software esenciales para agregar a un sistema Linux independientemente de si está configurado como estación de trabajo o servidor. Estos programas ayudarán a un usuario a llevar a cabo tareas comunes del usuario en su estación de trabajo pero permiten a un administrador administrar apropiadamente un sistema. Editores de Texto Los editores de texto son una herramienta valiosa que recibirá mucho uso en cualquier sistema Linux, ya sea estación de trabajo o servidor. Algunos ejemplos de editores de texto disponibles en Linux son vi, jed, pico, o Emacs. Cómo usar estos editores de texto se tratará en detalle en posteriores capítulos. Estos editores de texto son esenciales para llevar a cabo cualquier tipo de tareas de mantenimiento que un usuario o administrador pueda necesitar hacer. Los cuatro editores mencionados más arriba son todos ellos editores basados en texto, un par de ellos tienen algunas extensiones X, lo cual les permite ejecutarse en un entorno GUI. Un ejemplo de estas extensiones X es XEmacs (http://www.xemacs.org/), que es una versión mejorada de Emacs. La Figura proporciona un ejemplo del editor de texto XEmacs. Existe otros editores de texto también que están diseñados como editores de texto estrictamente GUI. Nedit (http://www.nedit.org/), que se muestra en la Figura
, gEdit (se ejecuta con GNOME), que se
muestra en la Figura , y KEdit (se ejecuta con KDE), que se muestra en la Figura , son todos ejemplos de editores de texto GUI. Estos editores de texto GUI pueden ser más fáciles de usar. No obstante, hay algunas instancias en las cuales éstos no pueden usarse y sí en cambio un editor de texto no GUI. Por lo tanto, es una buena idea sentirse cómodo también en el uso de uno de los editores de texto no GUI. Un ejemplo de cuándo esto podría ocurrir es cuando un usuario está haciendo telnet a un servidor remoto. Cuando el usuario hace telnet al servidor, estará restringido al modo sólo texto y por lo tanto se verá forzado a usar uno de los editores de texto. Otra instancia es que no todos los sistemas Linux tiene instalado X Window. Si la GUI no está instalada, la opción de usar un editor de texto GUI no estará disponible. Herramientas de Programación Las herramientas de programación son muy útiles para cualquier administrador que esté ejecutando servidores Linux así como para usuarios específicos en estaciones de trabajo si son programadores. Estas herramientas de programación también se denominan compiladores o intérpretes. Un compilador convierte el código fuente del programa, que está escrito por el programador, a forma binaria que la computadora pueda leer. Si el lenguaje de programación es
interpretado entonces el lenguaje de programación no es convertido, sólo es traducido a código de máquina inmediatamente. Linux incluye una variedad de diferentes tipos de compiladores. El más conocido e importante de estos compiladores es probablemente el Compilador GNU C (GCC). No obstante, como administrador, si un administrador está instalando estos compiladores en una estación de trabajo para un usuario, es una buena idea preguntarle al usuario qué herramientas de programación específicas necesitará. Algunos otros tipos de herramientas de programación son dignas de mención porque dependiendo de los usuarios o del tipo de servidor, puede ser necesario instalar estas otras herramientas de programación. Algunos de estos tipos de herramientas de programación se denominan lenguajes de script. Lenguajes de script comunes incluyen Javascript, Python, y Perl. Estas herramientas de programación pueden ser usadas tanto por programadores que usan una estación de trabajo para crear scripts para software que podrían estar desarrollando o por administradores que usan un servidor para ejecutar scripts en él. Librerías Las librerías no se consideran software en general sino que son conjuntos de rutinas que son usadas por el software. El código Linux está principalmente escrito en código de programación C. Cada sistema Linux se basa en una librería llamada la librería C (libc). Los sistemas Linux se basan en la librería C para las rutinas que son necesarias para que los programas C se ejecuten en Linux. Si un usuario está intentando instalar un paquete, el usuario también debe tener la librería apropiada instalada para que el programa se ejecute. Si el usuario no tiene instalada la librería apropiada, se generará un mensaje de error para advertir al usuario sobre el problema. 6.4.4
Verificación de la compatibilidad del software
En su mayor parte, al instalar software en un sistema Linux de paquetes que se incluyen en el CD, los paquetes funcionarán. Algunos paquetes tienen una dependencia, lo cual significa que requieren la instalación de otros paquetes también para que se ejecuten correctamente. Todas las distribuciones importantes tienen administradores de paquetes, que se trataron en capítulos anteriores, que rastrean esto y cuando notan que un paquete que está siendo instalado tiene dependencias, aparecerá un mensaje proporcionando al usuario información sobre qué paquetes adicionales necesitarán instalarse. Puede que sea necesario tomar medidas extra cuando se instalan paquetes no incluidos en el CD de distribución. Siempre es una buena práctica verificar con el sitio web del fabricante o en la documentación de los paquetes para ver qué requisitos puede ser necesario instalar. Algunos de estos requisitos incluyen sistemas operativos soportados, distribuciones soportadas, requisitos de CPU, requisitos de librerías, y herramientas y librerías de desarrollo. Sistemas Operativos Soportados Al instalar un paquete, el primer paso deberá ser siempre verificar y asegurarse de que el sistema operativo soporta el paquete. En general, cualquier software y paquetes Linux puede instalarse en cualquier sistema operativo semejante a UNIX. No obstante, ésta no es siempre la regla. Siempre es una buena idea verificar primero. El software y los paquetes UNIX deberán ejecutarse en general en la mayoría de los sistemas Linux porque serán capaces de compilar el código fuente. No obstante, deberá tenerse cuidado al hacerlo, ya que éste no siempre es el caso. A veces si un paquete es muy grande, la instalación puede encontrarse con algunos problemas si no está explícitamente diseñada para ejecutarse con Linux. Distribuciones Soportadas Las mismas reglas que se aplican a la verificación de la compatibilidad con el sistema operativo se aplican a la compatibilidad con la distribución. En general, es posible instalar paquetes diseñados para instalarse en una distribución, para que se ejecuten en otra. A menudo este proceso es simple y otras veces el usuario tendrá que instalar una serie de dependencias para que un paquete funcione cuando no está explícitamente diseñado para ejecutarse en esa distribución en particular. Requisitos de CPU Es importante verificar la compatibilidad con la CPU al instalar software que viene en código fuente y debe ser compilado por la CPU. La razón principal para esto es que no todas las CPU son capaces de compilar el software correctamente. Un ejemplo de esto son los programas sólo binario que sólo se ejecutarán en CPUs x86 o PowerPC.
Requisitos de librerías Las librerías se trataron en las secciones anteriores y también se mencionó cómo determinados paquetes requieren la instalación de determinadas librerías para poder ejecutarse. Es una buena práctica verificar qué librería requiere un paquete en particular. Herramientas y Librerías de Desarrollo Las herramientas de desarrollo y las librerías de desarrollo no son algo por lo que el usuario cotidiano necesitará preocuparse. Éstas son herramientas para programadores que deseen compilar programas por sí mismos. La principal preocupación a tener en cuenta aquí es que un usuario necesita estar seguro de que estén instaladas las herramientas de y librerías de desarrollo. Por ejemplo, si un programa está escrito en C++, el usuario necesitará un compilador C++. Resumen Este capítulo trató los sistemas operativos de red (NOSs). Algunos de los conceptos importantes a retener de este capítulo incluyen los siguientes: •
Los NOSs distribuyen sus funciones a través de una cantidad de computadoras en red. Dependen del OS nativo de cada computadora individual y luego agregan funciones para que los recursos puedan compartirse concurrentemente.
•
Los servidores NOS deben ejecutar sistemas operativos con características que se extienden más allá de las de las PCs cliente. Para poder soportar varios usuarios concurrentes y para proporcionar acceso compartido a los servicios, recursos y dispositivos de la red, los servicios NOS deben ser multiusuario, multitareas, y soportar varios procesadores.
•
Linux es un sistema operativo semejante a UNIX que incluye código fuente, para que el usuario pueda cambiar o personalizar el software para que se adapte a necesidades específicas. La Iniciativa Fuente Abierta proporciona una marca registrada par los desarrolladores de software que deseen compartir, modificar y redistribuir su código.
•
Existen diversas distribuciones diferentes de Linux disponibles. Cuál de ellas utilizar depende de muchas cosas. Algunas de las consideraciones básicas al decidir qué versión de Linux usar son factores tales como quién va a usar el sistema y qué tipo de trabajo va a hacer con él. Otros factores pueden incluir qué tipo de hardware puede instalarse si el sistema va a utilizarse como estación de trabajo o servidor.
•
Incluso después de una instalación exitosa de Linux, habrá otros tipos de problemas de compatibilidad de software que será necesario tratar. Varios criterios, como el hardware o para qué se utilizará el sistema determinarán qué tipo de software instalar.