Informática


Linux


CICLO FORMATIVO DE GRADO SUPERIOR

SISTEMAS DE TELECOMUNICACIÓN E INFORMÁTICOS

Modulo: Desarrollo de Sistemas de Telecomunicación e

Informáticos

LINUX

INTRODUCCIÓN

La corta historia de Linux parece un cuento de hadas moderno. En el año 1991 el estudiante de informática LINUX TORVLADS comienza con la programación de su propia versión de Uníx.

Linux publica en Internet no solamente los binarios, o sean los ejecutables en código máquina, sino también las fuentes correspondientes. El rápido crecimiento de Internet hace que centenares de programadores de todo el mundo se apunten a su invitación y colaboren en el desarrollo de Linux, la única condición es la de proporcionar nuevamente el trabajo hecho y su código fuente a la comunidad de programadores. Este principio se manifiesta en el GNU General Public License.

Hoy en día hay muchas razones para optar por Linux ya que el sistema ofrece estabilidad, seguridad y velocidad. También cuenta la capacidad de conectividad en redes que ha sido decisiva para la conquista de todo el mercado de servidores.

Nadie esta a merced de ningún productor de software sino que es posible hacer adaptaciones y extensiones a gusto propio. Tampoco se debe olvidar que el uso de Linux no exige la adquisición de ninguna licencia.

Además de la gran cantidad de aplicaciones libres, cada vez hay más aplicaciones de uso comercial para Linux y teniendo en cuenta que existen mas de 10 millones de usuarios entusiastas cuya cantidad crece continuamente, hay que reconocer que Linux cumple todos los requisitos para un futuro estándar industrial.

DESCRIPCIÓN general del sistema linux

¿Qué es Linux?

Para comprender Linux, debe entender antes la pregunta “¿Qué el Unix?”. La razón es que Linux es un proyecto iniciado para crear una versión de trabajo de Unix en máquinas basadas en Intel, más conocidas como ordenadores IBM PC o compatibles, con los que la mayoría de la gente están familiarizadas.

Lo que realmente se entiende por el término de Linux es el Kernel, el corazón de cualquier sistema operativo tipo Unix.

Pero el Kernel por si solo no forma todavía un sistema operativo. Justamente para Unix existe una multitud de software libre, lo que significa que estos están también disponibles para Linux. Son estas utilidades las que realmente forman el sistema operativo.

En cuanto a las utilidades se trata generalmente de la versión GNU de los programadores correspondientes, los que incluso muchas veces ofrecen mayor funcionalidad.

Todo se complementa con XFREE86tm que es el sistema X Window para sistemas Unix a base de PC.

Todos estos componentes forman, junto a otros programas o también juegos, el sistema que generalmente se denomina Linux.

Por su naturaleza Linux se distribuye libremente y puede ser obtenido y utilizado sin restricciones por cualquier persona, organización o empresa que así lo desee, sin necesidad de que tenga que firmar ningún documento ni inscribirse como usuario. Por todo ello, es muy difícil establecer quiénes son los principales usuarios de Linux. No obstante se sabe que actualmente Linux está siendo utilizado ampliamente en soportar servicios en Internet, lo utilizan Universidades alrededor del todo el mundo para sus redes y sus clases, lo utilizan empresas productoras de equipamiento industrial para vender como software de apoyo a su maquinaria, lo utilizan cadenas de supermercados, estaciones de servicio y muchas instituciones del gobierno y militares de varios países. Obviamente, también es utilizado por miles de usuarios en sus computadores personales. El apoyo más grande, sin duda, ha sido Internet ya que a través de ella se ha podido demostrar que se puede crear un sistema operativo para todos los usuarios sin la necesidad de fines lucrativos.

El sistema Linux es compatible con ciertos estándares de Unix a nivel de código fuente, incluyendo el IEEE POSIX.1, System V y BSD. Fue desarrollado buscando la portabilidad de las fuentes: todo el software gratuito desarrollado para Unix se compila en Linux

sin problemas. Y todo lo que se hace para Linux (código del núcleo, drivers, librerías y programas de usuario) es de libre distribución.

En Linux también se implementa el control de trabajos POSIX (que se usa en los shells csh

y bash), las pseudoterminales (dispositivos pty), y teclados nacionales mediante manejadores de teclado cargables dinámicamente. Además, soporta consolas virtuales, lo que permite tener más de una sesión abierta en la consola de texto y conmutar entre ellas fácilmente. A los usuarios del programa "screen" les resultará familiar esto.

Linux soporta diversos sistemas de ficheros para guardar los datos. Algunos de ellos, como el

ext2fs, han sido desarrollados específicamente para Linux.

Linux implementa todo lo necesario para trabajar en red con TCP/IP. Desde manejadores para

las tarjetas de red más populares hasta SLIP/PPP, que permiten acceder a una red TCP/IP por

el puerto serie. También se implementan PLIP (para comunicarse por el puerto de la impresora) y NFS (para acceso remoto a ficheros). Y también se han portado los clientes de TCP/IP, como FTP, telnet, NNTP y SMTP.

Esta es la mascota oficial de Linux, que fue elegida por el creador de Linux para representar el sistema operativo que el había creado. Hoy en día todo el mundo asocia a este simpático pingüino con el sistema operativo.

¿Por qué utilizar Linux?

Si posee un ordenador, debe tener un sistema operativo, el cual es un conjunto complejo de códigos informáticos que proporcionan los protocolos de proceso operativo, o leyes de comportamiento. Sin un sistema operativo, el ordenador está inactivo, es incapaz de interpretar y actuar sobre los comandos introducidos o de ejecutar un programa sencillo.

Los programas de aplicaciones son paquetes de software que adquiere para realizar determinadas actividades, como por ejemplo el procesador de textos. Cada paquete esta escrito para un sistema operativo y una máquina determinada.

Como en el caso de los sistemas operativos usted no tendrá control sobre como efectuar modificaciones o cuando se efectúan actualizaciones.

Deseara utilizar Linux porque es el único sistema operativo que en la actualidad está libremente disponible para proporcionar posibilidades multitarea y multiproceso para múltiples usuarios en plataformas de hardware IBM PC o compatible. Ningún otro sistema operativo le ofrece las mismas características con la potencia de Linux, a la vez que le mantiene al margen de los caprichos de marketing de los distintos proveedores comerciales. No esta obligado a actualizarse cada poco tiempo y a pagar sumas considerables para actualizar todas sus aplicaciones. Muchas aplicaciones para Linux están disponibles de forma gratuita en Internet, al igual que el propio código de Linux. Así pues tiene acceso al código fuente para modificar y ampliar el sistema operativo para adaptarlo a sus necesidades algo que es imposible hacer con otros sistemas operativos.

Un grave inconveniente de Linux que se debe tener en cuenta es que ningún proveedor comercial lo apoya por lo que la obtención de ayuda no se soluciona mediante una simple llamada telefónica. Linux puede ser que en algún determinado hardware no se ejecute correctamente o dañe archivos que residan actualmente en su sistema.

Sin embargo Linux se comporta de forma estable en muchos sistemas, lo que ofrece una oportunidad económica de aprender y utilizar uno de los sistemas operativos más populares del mundo.

Versiones de Unix

Para comprender mejor lo que alguien quiere decir cuando utiliza la palabra Unix, debe saber a qué versión se esta refiriendo.

Se pueden clasificar en dos categorías principales: Unix Sistem V y Berkeley software distribución. La primera es la versión desarrollada por los creadores de Unix, AT&T Bell laboratories, la segunda fue desarrollada por la universidad de california en Berkeley.

Descripción de las funciones de Linux

Las ventajas que se derivan de la utilización de Linux parten de su potencia y flexibilidad. Son el resultado de muchas funciones incorporadas en el sistema, listo para lo que pueda utilizar en cuanto encienda la máquina.

Multitarea

La palabra multitarea describe la capacidad de ejecutar muchos programas al mismo tiempo sin detener la ejecución de cada aplicación. Se le denomina multitarea prioritaria porque cada programa tiene garantizada la oportunidad de ejecutarse, y se ejecuta hasta que el sistema operativo da prioridad a otro programa para que se ejecute.

Linux consigue el proceso de prioridad supervisando los procesos que esperan para ejecutarse, así como los que están ejecutándose. El sistema programa entonces cada proceso para que disponga de las mismas oportunidades de acceso al microprocesador.

Otra de las características referentes a esta tema es que Linux es multiplataforma. Fue diseñada para plataforma Intel pero ha sido fácilmente exportado a diversos tipos de sistema.

Multiusuario

La capacidad de Linux para asignar el tiempo de microprocesador simultáneamente a varia aplicaciones ha derivado en la posibilidad de ofrecer servicio a diversos usuarios a la vez, ejecutando cada uno de ellos una o mas aplicaciones a la vez.

Mas de una persona puede trabajar con la misma versión de la misma aplicación al mismo tiempo. No se debe confundir esto con el hecho de que muchos usuarios puedan actualizar el mismo archivo simultáneamente.

Shells programables

El shell programable es otra característica que hace que el sistema operativo sea el más flexible de los existentes.

un shell es como el command.com de MS-DOS, es decir, un intérprete de comandos. Es básicamente la interfaz, el modo de comunicación, entre el usuario y el sistema.

El shell de Linux explora cada línea de comandos para determinar si su formación y deletreado son coherentes con sus protocolos.

El proceso de exploración del shell se denomina análisis.

Un shell funciona como interprete entre el usuario y el kernel (cerebro o corazón del sistema operativo), la diferencia entre los diferentes shell que puedan existir radica en la síntesis de la línea de comandos.

Cada usuario de un sistema Linux tiene su propia interfaz de usuario o Shell. Los usuarios pueden personalizar sus shells adecuándolos a sus propias necesidades específicas. En este sentido, el Shell de un usuario funciona más como un entorno operativo que el usuario puede controlar.

Linux permite la utilización de distintos tipos de shell programables. Cada shell tiene sus características propias. La principal diferencia que existe entre los distintos tipos de shell radica en la sintaxis de la línea de comandos. No es necesario aprender a programar con todos los tipos de shell ya que sabiendo uno los conocemos todos, así que es mucho más sencillo de lo que parece. Concluyendo podemos decir que un shell conecta las ordenes de un usuario con el Kernel de Linux (el núcleo del sistema), y al ser programables se puede modificar para adaptarlo a tus necesidades.

Independencia de dispositivos bajo Unix

A simple vista, quizás no parezca importante que los periféricos de su sistema informático puedan funcionar de forma autónoma o independiente. Sin embargo desde el punto de vista del entorno Unix multiusuario se convierte en un factor decisivo en un lugar de trabajo productivo

Hasta hace poco los sistemas informáticos generalmente podían admitir periféricos como impresoras, terminales, unidades de disco y módems. Poco a poco se han ido añadiendo un número de dispositivos demasiado elevados. ,El problema comienza cuando el usuario no puede utilizar un periférico porque un sistema operativo no puede acceder a él.

Unix evita los problemas que supone agregar nuevos dispositivos contemplando cada periférico como un archivo aparte. Cada vez que se necesitan nuevos dispositivos el administrador del sistema añade al kernel el enlace necesario denominado “Controlador de dispositivo”, el cual garantiza que el kernel y el nuevo dispositivo se fusionan del mismo modo cada vez que se solicita el servicio del dispositivo.

Independencia de dispositivos bajo Linux

Linux comparte mucha de las mismas ventajas de Unix en cuanto a independencia de los dispositivos. Por lo que Linux también posee un kernel adaptable y cuantos mas programadores participen en el proyecto de Linux, más dispositivos de hardware se añadirán a los distintos kernels y distribuciones de Linux, en última estancia como se dispone del código fuente del kernel el usuario o alguien contratado por el mismo puede modificar el kernel para que trabaje con los nuevos dispositivos.

Comunicaciones y redes

Ningún otro sistema operativo incluye unas posibilidades de conexión en red tan amplias y flexibles.

Con Linux ofrece total acceso a Internet ya que el mismo nació y es creado en Internet, permite comunicar instantáneamente con el mundo y realizar todo tipo de operaciones como hablar con otro usuario, transferir ficheros, mandar e-mails…

Cuando se trabaja con Linux se está ante un sistema operativo orientado al trabajo de redes de ordenadores. Se dice esto porque cuando se trabaja con un sistema como MS-DOS se sabe que todas las operaciones que conlleva las órdenes ejecutadas se llevan a cabo dentro de la carcasa del ordenador mientras que en Linux no se puede garantizar esta afirmación.
Linux dispone de varios protocolos como PPP, SLIP, TCP/IP, PLIP, etc.., para la transferencia de archivos entre plataforma. Existen multitud de aplicaciones de libre distribución que permiten navegar a través de Internet y enviar y recibir correo electrónico. Posee gran variedad de comandos para comunicación interna entre usuarios que se encuentren ubicados en plataformas distintas (gracias a utilidades como telnet).

Un universo de posibilidades de comunicación a recopilar las distintas aplicaciones escritas para Linux y ponerlas en uno u otro formato, con diferentes facilidades de instalación, mantenimiento y configuración. La licencia garantiza la libre distribución de las aplicaciones, pero las empresas pueden cobrar por el trabajo de agrupar un determinado conjunto de esas aplicaciones y hacer más sencilla su instalación. Lo único que no varía para nadie es el núcleo del sistema, que se desarrolla de forma coordinada y con actualizaciones sistemáticas. Es por ello que antes de instalar Linux hemos de elegir qué distribución nos interesa más.

Linux es el sistema más flexible para poder conectarse a cualquier ordenador del mundo. Internet se creó y desarrollo dentro del mundo de Unix, y por lo tanto Linux tiene las mayores capacidades para navegar, ya que Unix y Linux son sistemas prácticamente idénticos. Con Linux se puede montar un servidor en la propia casa sin tener que pagar las enormes cantidades de dinero que piden otros sistemas.

Linux no sacrifica en ningún momento la creatividad, tal y como lo hacen algunas compañías informáticas. Linux es una ventana abierta por la que es posible huir hacia un mundo donde la verdadera informática puede ser disfrutada sin limites ni monopolios.

Linux es distribuido mediante una serie de distribuciones como RedHat, Slackware, Debían ... las cuales se diferencian por su método de instalación y por los paquetes (software) que viene incluido. Todo el software de Linux esta regido por la licencia de GNU, con la cual cualquier persona puede modificar un programa y venderlo según el desee, con la condición que la persona que compra ese producto puede realizar la misma acción o simplemente hacer copias para todos aquellos que lo quieran sin tener que pagar más. Esta licencia es la garantía que afirma la absoluta libertad de este sistema operativo.

Portabilidad de sistemas abiertos

El impulso por la estandarización de Unix no ha pasado desapercibido, este impulso se deriva de sus muchas variaciones disponibles actualmente.

Se han dedicado grandes esfuerzos a combinar, compaginar, y unir todas les versiones de Unix en una única versión del sistema operativo que lo englobe todo. Aunque esta estos esfuerzos han caído en saco roto.

Sin embargo, la existencia continuada de variaciones de Unix no es motivo suficiente de alarma, ya que todas son esencialmente superiores a los restantes sistemas operativos disponibles en la actualidad.

Unix es un sistema portátil dado que ofrece el medio para que varias plataformas informativas que ejecutan Unix se comuniquen de forma precisa y eficaz con cualquiera de las demás sin añadir ninguna interfaz de comunicaciones especial.

Linux es seguro
El concepto de seguridad en redes de ordenadores es siempre relativo. Un sistema puede ser seguro para un determinado tipo de actividades e inseguro para otras. Por ejemplo, no sería recomendable guardar secretos de estado en un sistema Linux al que pudiera acceder mucha gente y careciese de un administrador dedicado absolutamente a la tarea, ya que según todos los hackers, no hay sistema cuya seguridad sea perfecta. El sistema de contraseñas que protege el acceso al sistema se basa en el algoritmo DES, el más probado de los algoritmos de seguridad. Pero claro, por muy bueno que sea el algoritmo, si después permitimos a sus usuarios poner como contraseña su nombre de usuario, de nada servirá la contraseña y todos sus esfuerzos.
Si se quiere que el sistema sea seguro, se debe administrar de tal forma que se tengan controlados a los usuarios en todo momento, para poder aconsejarles e incluso regañarles, en caso de que cometan alguna imprudencia, todo ello con el fin de mantener la propia seguridad de sus datos y de los nuestros. Para ayudarse a mantener la seguridad surgen nuevas herramientas constantemente, tanto para detectar intrusos como para encontrar fallos en el sistema y evitar así ataques desde el exterior.

¿Qué se puede hacer con Linux?

Las áreas de aplicabilidad de Linux son varias. En sus inicios fue muy utilizado por personas relacionadas con ciencias de la computación, desde hace algunos años ha sido también adoptado en instalaciones científicas de diversa índole (Física, Biología, Ciencias Espaciales y otras). Son de particular interés los proyectos en el área de Computación de Alto Rendimiento, donde Linux se está utilizando intensiva y extensivamente.

Recientemente, también muchas compañías grandes han introducido soporte para Linux en su línea de productos. Un caso ejemplar es Corel , desarrolladores del popular programa de oficina WordPerfect , quienes han venido trabajando de cerca con la comunidad de Linux y ofrecen una versión de WordPefect en forma gratuita para uso personal. Además de WordPerfect hay otros programas de oficina disponibles para Linux, pero haciendo honor a la verdad, las aplicaciones de escritorio son un área con poco desarrollo en este ambiente. Otras compañías internacionales que utilizan y desarrollan productos para Linux incluyen a IBM, Netscape , Oracle , HP y Dell.

breve historia de Linux

La historia de Linux esta ligada a la historia de Unix y en cierto punto a un programa denominado Minix. Este era un guía de aprendizaje de un sistema operativo escrita por el conocido informático Andrew Tannebaum. Este sistema operativo se popularizo en varias plataformas de PC.

Cuando Novell, Inc. adquirió Unix System Laboratories a American Telephone Corporation(AT&T) en 1993,obtuvo la propiedad de la marca registrada conocida como Unix y por lo tanto controla los derechos sobre quien puede utilizarlo con fines publicitarios u otros fines comerciales.

Aunque AT&T fue el creador del sistema operativo Unix, muchas empresas o particulares han intentado mejorar el concepto básico a lo largo de los años.

El 5 de Octubre de 1991, Linus anunció la primera versión "oficial" de Linux, la 0.02. Ya podía ejecutar bash (el shell de GNU) y gcc (el compilador de C de GNU), pero no hacía mucho más. La intención era ser un juguete para hackers. No había nada sobre soporte a usuarios, distribuciones, documentación ni nada parecido. Hoy, la comunidad de Linux aun trata estos asuntos de forma secundaria.

Lo primero sigue siendo el desarrollo del kernel.

Linus escribía:

"¿Suspiráis al recordar aquellos días de Minix-1.1, cuando los hombres eran hombres

y escribían sus propios drivers? ¿Os sentís sin ningún proyecto interesante y os gustaría

tener un verdadero S.O. que pudierais modificar a placer? ¿Os resulta frustrante el tener

solo a Minix? Entonces, este artículo es para vosotros.”

"Como dije hace un mes, estoy trabajando en una versión gratuita de algo parecido

a Minix para ordenadores At-386. He alcanzado la etapa en la que puede ser utilizable y

voy a poner las fuentes para su distribución. Es solo la versión 0.02. pero he conseguido

ejecutar en él bash, gcc, gnu-make, gnu-sed, compress, etc.”

Tras la versión 0.03, Linus saltó a la versión 0.10, al tiempo que más gente empezaba a participar en su desarrollo. Tras numerosas revisiones, se alcanzó la versión 0.95, reflejando la esperanza de tener lista muy pronto una versión "oficial" y la versión 1.0 no llego hasta el 14 de marzo de 1994..

(Generalmente, la versión 1.0 de los programas se corresponden con la primera teóricamente completa y sin errores).

Esto sucedía en Marzo de 1992. Año y medio después, en Diciembre del 93, el núcleo estaba en la revisión 0.99.pl14, en una aproximación asintótica al 1.0.

Hoy Linux es ya un clónico de UNIX completo, capaz de ejecutar X Windows, TCP/IP, Emacs, UUCP y software de correo y News.

Distribuciones

En sí, Linux es sólo el núcleo del sistema operativo, pero necesita aplicaciones y programas para hacer algo. Muchos han sido portados a Linux, otros han sido creados específicamente para Linux, todos ellos se encuentran en Internet dispuestos a que cualquiera los baje y los instale en su sistema.

Como esto es una ardua tarea no tardan en surgir compañías dedicadas a reunir todos esos programas facilitando la tarea de crear un sistema Linux funcional. En la actualidad existe un sin número de estas compañías pero solo se mencionarán las mas importantes dentro del contexto mundial:

Slackware Debian SuSe Caldera Mandrake Red Hat

Slackware

Una de las primeras distribuciones que surge fue Slackware (http://www.slackware.com), diseñada por Patrick Volkerding a partir de SLS Linux . Esta tuvo una gran aceptación al principio hasta llegar a ser la distribución mas popular del mercado. Actualmente ha perdido terreno a favor de distribuciones mas modernas, siendo relegada a aplicaciones especializadas.

Una de las debilidades de Slackware se encuentra en el sistema de instalación de paquetes, el cual no tiene control de versiones ni dependencias. Las nuevas distribuciones han implementado y adoptado dos sistemas de instalación de archivos RPM (RedHat Package Manager) y DEB (Debian Package Manager). Cada programa distribuido de esta forma es un archivo comprimido, que se identifica por la extensión rpm o deb y proporciona una descripción de lo que contiene, la versión del programa, su ubicación en el sistema, validez de la firma electrónica y las dependencias con otros programas o librerías; por ejemplo, un determinado paquete puede necesitar de otro para su correcto funcionamiento, por lo que se dice que es dependiente del otro. De esta forma se garantiza el éxito del proceso de instalación de una aplicación y la estabilidad a largo plazo del sistema.

Debian

Debian (http://www.debian.org) es una distribución bastante popular que no está desarrollada por ninguna compañía comercial sino que es fruto del trabajo de diversos voluntarios en toda la comunidad de Internet. Es, por lo tanto, una distribución completamente gratis, sin restricción de licencias en donde todo el software es GNU/GPL y no incluye software comercial. Además es bastante completa y estable gracias a su sistema de instalación de paquetes DEB. Sin embargo, tal vez sea algo difícil para alguien que empieza por primera vez con Linux. Esto no quiere decir que si es la primera vez que se va a instalar Linux y se tiene una Debian a mano vaya a ser casi imposible instalarla. Es importante mencionar que Debian también ofrece una versión de su distribución basado en otro kernel diferente a Linux: GNU Hurd.

SuSE

SuSE (http://www.suse.de) es una distribución de una compañía alemana la cual combina el sistema de paquetes de Red Hat (RPM) con una organización derivada de Slackware. Esta distribución es la mas popular en Europa y tiene un gran soporte para diferentes lenguas incluido el Español. Es una de las más fáciles de instalar y configurar, además viene con una gran cantidad de paquetes: 1300 en la versión 6.2 lo que implica una instalación completa de alrededor de 5.3 Gbytes en disco duro.

Caldera

Una compañía norteamericana llamada Caldera (http://www.calderasystems.com) ha creado su propia distribución llamada OpenLinux, basada también en el sistema de paquetes de Red Hat, con un sistema de instalación muy amigable llamada Lizard (Linux Wizard). Es una distribución pensada para entornos comerciales, la cual incluye paquetes comerciales como las aplicaciones de oficina Aplixware y Corel WordPerfect. Esta compañía ostenta asociaciones con empresas tan importantes como Novell e IBM.

Mandrake

Mandrake (http://www.linux-mandrake.com) surge originalmente como un clon de Red Hat el cual incorporaba las bondades del ambiente integrado KDE con la estabilidad e instalación de Red Hat. Hoy en día es considerada una de las distribuciones mas vendidas en el mundo, ganando varios premios como el Mejor producto Linux del año 1999 por la revista Linux World.

Red Hat

Red Hat (http://www.redhat.com) es la distribución mas popular del mercado hoy en día, siendo emulada por muchas otras. Muy sencilla de instalar, excelente auto-detección de dispositivos, instalador gráfico (6.1) y un excelente conjunto de aplicaciones comerciales en su distribución oficial.

Esta guía se basará principalmente en la instalación de Red Hat por ser la más difundida. Sin embargo, comprendiendo los conceptos del proceso de instalación de estas se pueden aplicar a cualquier otra distribución.

Aparte de estas distribuciones existen otras no tan conocidas como: Mcc Interin Linux, Tamu Linux, Lst, Sls, The Linux Quartely CD-ROM…

Variaciones de Unix

At&t

Ken Thompson y un grupo de personas que trabajaban bajo su supervisión desarrollaron un nuevo sistema operativo. Corre la historia de que este programador que había estado utilizando el sistema operativo MULTICS denomino Unix a este proyecto ironizando sobre el sistema operativo multiusuario MULTICS(se pronuncia multix) ,le llamo Unix derivado de uni (uno o único) seguido de la homófona x. Quizás la paradoja es que pocos usuarios recuerdan el sistema operativo MULTICS como sistema operativo multiusuario viable, mientras que Unix se ha convertido en el estándar multiusuario de facto para sistemas operativos multiusuario y multitarea.

Bsd

Berkeley Software Distribution (BSD), de la universidad de California en Berkeley, introdujo la primera versión de Unix, basándose en la versión 7 de AT&T en 1978.

Contenía una serie de mejoras desarrolladas por la comunidad académica, diseñadas para que Unix fuera más cómodo para el usuario más “amigable”.

Estas mejoras fueron un intento de hacer que Unix fuera atractivo para los usuarios ocasionales para los programadores avanzados que apreciaban su flexibilidad para adaptarse a sus exigencias en constante evolución.

Usl

Unix System Laboratories(usl) era una compañía surgida de la organización AT&T que había

Desarrollada el sistema operativo Unix desde principios de la década de los 80.Antes de que Novell la adquiriera en 1993,USL creo el código fuente para todas las variantes de Unix system v5 del mercado. Sin embargo la propia USL no vendió un producto empaquetado en ese momento.

Con la adquisición de Usl por parte de Novell, esta ha cambiado el enfoque de USL de productor de código fuente a productor de Unix Ware. Novell ha vendido ahora su versión de Unix a Santa Cruz Operation(SCO)

Xenix, sunOS y aix

Microsoft desarrolló su versión de Unix, denominada XENIX a finales de la década de los 70 y a principios de los 80, durante el momento álgido de la revolución del PC. El aumento de potencia disponible para los PC empezó a rivalizar con la de los mini ordenadores existentes, Con la aparición del microprocesador 80386 de Intel, pronto se hizo evidente que XENIX, que se había desarrollado específicamente para un PC, ya no era necesario. Microsoft y AT&T fusionaron XENIX y Unix en un único sistema operativo denominado System V/386 Versión 3.2 que puede funcionar prácticamente en cualquier configuración de hardware.

Sun Microsystem ha contribuido enormemente a la comerciabilidad de Unix promocionando el SunOS y sus correspondientes estaciones de trabajo.

La incursión de IBM en el mundo de Unix dio como resultado un producto denominado Aix no es tan conocido como otras versiones de Unix, su comportamiento es correcto y no causa problemas, conservando su participación en el mercado de sistemas operativos.

Linux

El sistema minix se escribió para demostrar varios conceptos informáticos que se encuentran en los sistemas operativos. Incorporo estos conceptos en un sistema autónomo que imita a Unix. El programa estaba disponible para cualquier estudiante de informática del mundo y pronto creó una legión de seguidores. Linus Torvalds decidió proporcionar una plataforma mejor para sus amigos usuarios de minix que pudiera ejecutarse en cualquier IBM PC y se centro en los recién aparecidos ordenadores 386.

¿Quién es el propietario de Linux?

Los Mm-Dos y Ms Windows pero, ¿quien posee los derechos de Linux?. En primer lugar, y lo más importante, Linux no es software de dominio público; Varios de los componentes de Linux tienen derechos de autor de muchas personas. Lins Torvalds conserva los derechos de autor del Kernel básico de Linux. Paul Volkerding tiene los derechos de Slackware Distribution. Muchas utilidades de Linux están bajo GNU General Public License. De he, linus y muchos de los que han contribuido a la creación de Linux han colocado su trabajo bajo la protección de GNU GPL.

Esta licencia se puede denominar GNU copyleft, un juego de palabras copryright. Cubre todo el software producido por GNU y la Free software Foundation. La licencia permite a los programadores crear software para todos. La permisa básica de GNU es que el software deberá estar disponible para todos y que si alguien desea modificar el programa para sus propios fines, esto debe ser posible. La única condición es que no puede limitarse el código modificado, los demás tiene derecho a utilizar el nuevo código.

El GNU copyleft permite a los creadores de un programa conservar sus derechos de autor legales, pero permite a los demás coger, modificar y vender el nuevo programa resultante. Sin embargo al hacerlo no pueden limitar ningún derecho similar a los que compren el software. Si vende el programa como está, o una nueva modificación del mismo, debe facilitar el código fuente. Este es el motivo por el que Linux viene con el código fuente completo.

DESCRIPCIÓN general de las funciones

Linux representa la oportunidad de explorar un nuevo mundo, el mundo de Unix. Linux también ofrece un comportamiento superior comparado con otros sistemas operativos.

Funciones básicas

La multitarea es completamente prioritaria, es decir, que puede ejecutar varios programas al mismo tiempo y que cada programa continua ejecutándose. Linux le permite iniciar una transferencia de archivos, imprimir un documento, copiar disquetes y reproducir un CD o un juego al mismo tiempo.

Linux es completamente multiusuario, lo que significa que más de una persona puede entrar en el sistema y utilizarlo. Esto es muy importante en una empresa o universidad permitiendo que muchas persona accedan a los mismos recursos al mismo tiempo, sin duplicar la inversión en maquinas costosas.

Linux es gratuito o casi.

Linux proporciona una oportunidad de aprendizaje, en el que se puede aprender y probar.

Linux también ofrece la oportunidad de experimentar el caos de la revolución del PC

Diferencias entre Linux y otros sistemas operativos

Es importante entender las diferencias entre Linux y otros sistemas operativos, tales como MS-DOS, OS/2, y otras implementaciones de Unix para ordenador personal. Antes de nada, conviene aclarar que Linux puede convivir felizmente con otros sistemas operativos en la misma máquina: es decir, puede correr MS-DOS y OS/2 en compañía de Linux sobre el mismo sistema sin problemas.

Hay incluso formas de interactuar entre los diversos sistemas operativos

Ventajas del uso de Linux

¿Por qué usar Linux en lugar de un sistema operativo comercial conocido, bien probado, y bien documentado? Se podrían dar miles de razones. Una de las más importantes es que Linux

es una excelente elección para trabajar con Unix a nivel personal.

Linux permite desarrollar y probar el software Unix en el PC, incluyendo aplicaciones de bases de datos con Linux se puede correr su propio sistema Unix y adaptarlo a unas necesidades. La instalación y uso de Linux es también una

excelente manera de aprender Unix.

Linux no es solo para los usuarios personales de Unix es suficientemente completo para manejar grandes tareas.

Muchos negocios especialmente los pequeños se están cambiando a Linux en lugar de otros

entornos de estación de trabajo basados en Unix. Las universidades encuentran a Linux perfecto para dar cursos de diseño de sistemas operativos. Grandes vendedores de software comercial se están dando cuenta de las oportunidades que puede brindar un sistema operativo gratuito.

Ventajas del uso de Linux frente a MS-DOS

No es raro tener ambos, Linux y MS-DOS, en el mismo sistema. Muchos usuarios de Linux confían en MS-DOS para aplicaciones tales como procesadores de texto. Aunque Linux proporciona sus propios análogos para estas aplicaciones como por ejemplo tex, existen varias razones por las que un usuario concreto desearía utilizar tanto MS-DOS como Linux.

Hay muchas aplicaciones comerciales para MS-DOS que no están disponibles para Linux, y no hay ninguna razón por la que no se pueda usar ambos.

Linux proporciona un interface Unix completa no disponible bajo MS-DOS, el desarrollo y adaptación de aplicaciones Unix bajo Linux es cosa fácil, mientras que, bajo MS-DOS está limitado a un pequeño subgrupo de la funcionalidad de programación Unix. Al ser Linux un verdadero sistema UNIX, no tiene estas limitaciones.

Linux y MS-DOS son entidades completamente diferentes. MS-DOS no es caro y tiene un fuerte asentamiento en el mundo del PC. Ningún otro sistema operativo para PC ha conseguido el nivel de popularidad de MS-DOS básicamente porque el coste de esos otros sistemas operativos es inaccesible para la mayoría de los usuarios.

Muy pocos usuarios pueden imaginar gastarse 60.000 Ptas. o más solamente en el sistema operativo. Linux, sin embargo, es gratis.

Otro opción que cabe destacar es que en estos momentos hay disponible un emulador de MS-DOS que permite ejecutar muchas aplicaciones populares sobre Linux.

Ventajas de Linux sobre otros sistemas operativos

Han surgido un gran número de sistemas operativos avanzados en el mundo del PC. Concretamente, OS/2 de IBM y Windows NT de Microsoft tienen popularidad a medida que los usuarios de MS-DOS deciden cambiar a ellos.

Ambos, OS/2 y Windows NT son sistemas operativos completamente multitarea, muy parecidos a Linux.

Soportan aproximadamente las mismas características en términos de interfaz de usuario, redes, seguridad...

Sin embargo, la diferencia entre Linux y los otros es el hecho de que Linux es una versión de Unix y por ello se beneficia de las contribuciones de la comunidad.

Unix no solo es el sistema operativo más popular para máquinas multiusuario, también es la base de la mayoría del mundo del software de libre distribución.

Casi todo el software de libre distribución disponible está específicamente escrito para sistemas Unix.

Hay muchas implementaciones de Unix, de muchos vendedores, y ni una sola organización es

responsable de su distribución.

OS/2 y Windows NT son sistemas propietarios. El interface y diseño están controlados por una sola corporación, y solo esa corporación puede implementar ese diseño.

el interface Unix está constantemente desarrollándose y cambiando, varias organizaciones están intentando estandarizar el modelo de programación, pero la tarea es muy difícil.

Linux, en particular, es en su mayoría compatible con el estándar Posix.1 para el interface de programación Unix. A medida que pase el tiempo, se espera que el sistema se adhiera a otros estándar, pero la estandarización no es la etapa primaria en la comunidad de desarrollo de Linux.

Enseñanza

Para el caso de los estudiantes Linux puede ser una herramienta muy útil ya que posee editores para escribir trabajos y correctores ortográficos para los mismos. Con Linux puede entrar en la red de la escuela. Y por supuesto con el acceso a Internet, dispone instantáneamente de toda la cantidad de información allí almacenada. También tiene acceso a miles de expertos sobre varios temas que pueden responder a sus preguntas

Hackers

A nivel básico Linux es un sistema construido por y para los hackers. Actualmente la definición popular de hacker (intruso)tiene connotaciones negativas en nuestra sociedad, pero los hackers informáticos no son delincuentes, como puede dar a entender su denominación, que se refiere al modo de afrontar cualquier actividad en la vida y no solamente al tratar con ordenadores. Los hackers sienten un cierto grado de compromiso. Su objetivo principal es aprender todo lo que hay que saber sobre un sistema operativo sumergiéndose en él hasta el punto de solucionar un problema si aquel falla. No están interesados en obtener un provecho económico ni buscan venganza, aunque algunos sobrepasan la línea y se convierten en crakers. Los hackers informáticos no soportan que se les compare con esos vándalos y criminales que los medios de comunicación denominan habitualmente hackers(en lugar de crakers). Afortunadamente Linux le permite tener una idea de lo que es ser un hacker pero no le anima a ser un craker.

Desventajas del uso de Linux

Quizás la mayor desventaja de Linux es el hecho de que ninguna entidad se encarga de su desarrollo. Si algo va mal o si se tiene algún problema, no hay números de teléfono con asistencia técnica gratuito a los que llamar y solicitar ayuda.

Si se tiene en cuenta que la mayoría de las veces cuando se acude a estos teléfonos se obtienen generalmente respuestas como “Deje su mensaje en nuestro servicio en línea para obtener ayuda” o “Llame a otro número donde le atenderemos mejor”.

Pues con Linux, aunque no haya teléfono de asistencia técnica, hay literalmente miles de usuarios en las comunidades en línea dispuestos a responder a sus preguntas.

Falta de asistencia técnica

Es indudable que el hecho de que Linux no disponga de asistencia técnica puede ser un problema. Lo mismo sucede con las aplicaciones para Linux, la mayoría están desarrolladas por pequeñas comunidades que posteriormente se ponen a disposición de todos. No obstante muchos desarrolladores prestan su ayuda cuando se les plantean cualquier duda.

Problemas del hardware

Linux puede resultar difícil de instalar y no funciona en todas las plataformas del hardware. No hay ningún programa formal de garantía de calidad, además los desarrolladores lanzan sus programas cuando les parece.

El hardware admitido por Linux depende del hardware que disponga cada desarrollador en el momento de escribir esa parte del código. Así pues Linux no funciona con todo el hardware disponible actualmente.

Si no se dispone del hardware admitido se supone que uno mismo lo debe solucionar.

Imposibilidad de utilizar el software actual

Otra desventaja es que las aplicaciones actuales para sistemas operativos como Dos y Os/2 no funcionan bajo Linux.

Aunque afortunadamente dichos sistemas pueden coexistir con Linux, de este modo aunque no se pueda utilizar ambos sistemas operativos a la vez es posible salir de Linux e iniciar otro sistema para utilizar allí otras aplicaciones.

Para instalar Linux hay que reparticionar la unidad de disco duro, esto significa que hay que eliminar parte de la unidad, eliminando programas y datos que se encuentren en ella. No hay ninguna forma segura de instalar Linux sin efectuar esta partición

Falta de experiencia

A menos que alguien sea un maestro de Unix, deberá aprender a administrar un sistema Linux.

El administrador se suele denominar administrador del sistema y es el responsable de su mantenimiento, realizar copias de seguridad el sistema de forma regular y solucionar problemas cuando algo va mal.

En un principio puede parecer que el uso de Linux le dejo solo ante el peligro teniendo que sobrevivir uno mismo, pero a medida que aumenta la popularidad de Linux aumentan las fuentes de ayuda.

Hay miles de paginas de documentación suministrada con muchas distribuciones de Linux, existen muchas revistas dedicadas a Linux y muchas fuentes de información en línea y usuarios que están conectados dispuestos a ofrecer sus conocimientos

elección del HARDWARE adecuado para linux

La elección del nivel adecuado de hardware para un sistema Linux depende de factores tales como el número de usuarios que tienen que ser soportados y los tipos de aplicaciones que hay que ejecutar.

Todo esto se traduce en necesidades de la memoria de trabajo, el almacenamiento en disco duro, los tipos de terminales necesarios y así sucesivamente.

Antes de instalar el software, hay que asegurarse de los requerimientos y limitaciones de hardware de Linux.

Según van apareciendo, se van soportando la mayor parte del hardware y los periféricos de hecho, Linux soporta más hardware que algunas implementaciones comerciales de Unix. Sin embargo, aún no son reconocidos algunos periféricos. Según pasa el tiempo aumenta el hardware soportado por Linux, de manera que si sus periféricos no están hay gran probabilidad de que sean soportados próximamente.

Otro inconveniente en el soporte de hardware bajo Linux es que muchas compañías han decidido conservar las especificaciones del interfaz de su hardware como propietario. Como consecuencia de esto, los desarrolladores voluntarios de Linux simplemente no pueden escribir controladores (drivers) para esos periféricos y si pudieran, tales controladores serían propiedad de la compañía dueña del interfaz, lo cual violaría el GPL. Las compañías que poseen sus propios interfaces, escriben sus propios controladores para sistemas operativos como MS-DOS y Microsoft Windows; el usuario final no necesita saber nada del interfaz. Desafortunadamente, esto impide a los desarrolladores de Linux escribir controladores para esos periféricos.

En algunos casos, los programadores han intentado escribir controladores basándose en asumiciones acerca del interfaz. En otras ocasiones, los desarrolladores trabajarán con la compañía en cuestión e intentarán obtener información del interfaz del periférico con un nivel de éxito que puede variar.

Linux virtualiza el acceso a los dispositivos por medio de archivos que suelen estar en el directorio /dev (por device: dispositivo).

Requisitos de Placa Base y de CPU

Actualmente Linux soporta sistemas con una CPU Intel14 80386, 80486, o Pentium/Pro. Esto incluye todas las variantes del tipo de CPU, como el 386SX, 486SX, 486DX, y 486DX2.

Los "clónicos" no Intel, como AMD y Cyrix también funcionan con Linux.

La placa base debe ser de arquitectura ISA o EISA en cuanto a bus se refiere. Estos términos

definen cómo interactúa el sistema con los periféricos y otros componentes por medio del bus principal. La mayoría de los sistemas vendidos hoy son de bus ISA o EISA. El bus MicroChannel (MCA), que se encuentra en máquinas como los IBM/PS2 no está soportado actualmente.

Requisitos del Bus del sistema

Es importante el tipo de bus que se utiliza para comunicarse con los periféricos.

Los sistemas que usan arquitectura de bus local (para accesos más rápidos en vídeo y disco)

también están soportados. Es recomendable que tenga una arquitectura de bus local estándar como pueda ser el Bus Local VESA y también admite el bus PCI que se encuentran en muchos Pentium.

Requisitos de memoria

Linux, comparado con otros sistemas operativos avanzados, necesita muy poca memoria para funcionar comparando con otros sistemas operativos como Os/2 y Windows Nt. Debería contar con un mínimo de 2 mega bites de RAM; Sin embargo, es altamente recomendable tener 4 mega bites. Cuanta más memoria tenga más rápido irá su sistema.

Linux soporta el rango completo de direcciones de 32-bits, es decir, utilizará toda la

memoria RAM de forma automática, y se apañará sin problemas con tan sólo 4 mega bites de RAM, incluyendo aplicaciones como X-Window, Emacs, y demás. Sin embargo, disponer de

más memoria es casi tan importante como tener un procesador más rápido. 8 mega bites es más que suficiente para uso personal; 16 mega bites o más pueden ser necesarios si espera una fuerte carga de usuarios en el sistema.

La mayoría de los usuarios de Linux, reservan una parte del disco duro para espacio de intercambio("swapping") que se usa como RAM virtual. Incluso si dispone de bastante memoria RAM física en su máquina, puede que quiera utilizar un área de "swap”. El área de "swap" no puede reemplazar a una memoria física RAM real, pero puede permitir a su sistema ejecutar aplicaciones más grandes guardando en disco duro aquellas partes de código que están inactivas. La cantidad de espacio de intercambio a reservar depende de diversos factores.

Requisitos de la controladora de disco duro

No se necesita un disco duro para ejecutar Linux; se puede ejecutar un sistema mínimo completamente desde disquete. Sin embargo, resulta lento y muy limitado, y de todas formas, muchos usuarios tienen acceso a almacenamiento en disco duro. Debe tener una controladora AT-estándar (16-Bit. El núcleo soporta controladoras XT-estándar (8 BIT); aunque la mayoría de las controladoras usadas hoy son AT-estándar. Linux debería soportar todas las controladoras MFM, RLL, e IDE. La mayoría, pero no todas, las controladoras ESDI están soportadas sólo aquellas que hacen emulación hardware de la ST506.

La regla general para controladoras que no sean SCSI, es que si puede acceder a las unidades

(disco y/o disquete) desde MS-DOS u otro sistema operativo, debería poder hacerlo desde Linux.

Linux también soporta un número de controladoras de disco SCSI, si bien el soporte para SCSI es más limitado a causa de la gran cantidad de estandars que existen para el interfaz de las controladoras. Las controladoras SCSI soportadas16 incluyen las Adaptec AHA1542B, AHA1542C, AHA1742A (versión de BIOS 1.34), AHA1522, AHA1740, AHA1740 (controladora SCSI-2, BIOS 1.34 en modo mejorado); Future Domain 1680, TMC-850, TMC-950; Seagate ST-02; UltraStor SCSI; Western Digital WD7000FASST. Las controladoras clónicas basadas en estas tarjetas también deberían funcionar.

Dentro de un PC pueden haber normalmente hasta cuatro discos IDE en total (dos por canal), cada disco duro tiene un nombre en Linux en función de como se haya instalado. Si el disco duro está funcionando en el primer canal como maestro se llamará /dev/hda (hard drive a), y si es esclavo /dev/hdb. En caso de que estemos en el segundo canal IDE los nombres correspondientes serán /dev/hdc y /dev/hdd.

Es posible que sea un poco confuso todo esto y que no se tenga idea de donde se encuentra el disco duro. En ese caso es bueno tener en cuenta que casi todos los computadores vienen de fábrica con un solo disco duro que siempre es el /dev/hda.

Un caso a notar son los lectores de cdrom y otros dispositivos ATAPI como las unidades ZIP o LS-120, normalmente funcionan conectados como un disco duro más. Por lo que el nombre será igual que si fuese un disco duro, en la mayor parte de los sistemas /dev/hdb. Si el disco es SCSI entonces el esquema de nombres es parecido, pasando a ser en este caso /dev/sda, /dev/sdb,..., (SCSI disk a, b, ...)

Requisitos de espacio en disco

Hay que tener en cuenta que Linux no puede resistir en la misma partición que otros sistemas operativos como, por ejemplo, MS-DOS y Os/2.

Efectivamente, para instalar Linux, necesitará tener algo de espacio libre en su disco duro. Linux soporta múltiples discos duros en la misma máquina; puede disponer de espacio para Linux en múltiples unidades si es necesario.

La cantidad de espacio en disco duro que necesitará depende en gran medida de sus necesidades y de la cantidad de software que va a instalar. Linux es relativamente pequeño en relación a las implementaciones de UNIX; usted podría correr un sistema completo con 10-20 mega bites de espacio en disco. Sin embargo, si quiere disponer de espacio para expansiones, y para paquetes más grandes como X Window, necesitará más espacio. Si planea permitir a múltiples usuarios utilizar la máquina, tendrá que dejar espacio para sus ficheros.

También, a menos que tenga un montón de memoria RAM física (16 mega bites o más), necesitará crear espacio de intercambio ("swap"), para ser usado como RAM virtual.

Cada distribución de Linux normalmente viene con algún que otro texto que debería ayudar a

estimar la cantidad precisa de espacio a reservar en función del software que planee instalar. Puede ejecutar un sistema mínimo con menos de 20 mega bites; un sistema completo con toda la parafernalia en 80 mega bites o menos; y un sistema grande con sitio para muchos usuarios y espacio para futuras expansiones en un rango de 100-150 mega bites. De nuevo, estas cifras son meramente orientativas; usted tendrá que decidir, según sus necesidades y objetivos, los requerimientos específicos de almacenamiento para su sistema.

Unidades de disquete

Las unidades de disquete en Linux se llaman /dev/fd0 y /dev/fd1 (floppy disk 0), correspondiendo cada nombre a las unidades A: y B: en DOS. Actualmente, los computadores nuevos con una única unidad por lo que sólo se podrá utilizar /dev/fd0.

Requisitos de monitor y adaptador de vídeo

Para terminales de texto, Linux admite todas las tarjetas de video y monitor estándar Hercules, CGA, EGA, VGA, IBM monocromoy Super VGA así como monitores para el interfaz por defecto basado en texto.

Se necesita un monitor en color para poder beneficiarse de las listas de directorios codificadas en color que tiene Linux. Por consiguiente cualquier combinación de video / controlador debe servir para operaciones con texto.

En general, si la combinación que tiene de monitor y tarjeta de vídeo funcionan bajo otro sistema operativo como MS-DOS, debería funcionar perfectamente con Linux. La genuinas tarjetas CGA de IBM sufren el efecto nieve ("snow") bajo Linux, por lo que no es muy recomendable su uso.

Los entornos gráficos como el Sistema X Window tienen requerimientos propios de hardware para la tarjeta de vídeo.

Hardware diverso

Esta es una relación del hardware admitido por Linux. No es necesario disponer de este hardware, pero con él Linux es más sólido y fácil de usar.

Ratones y otros dispositivos apuntadores

Para utilizar Linux con terminales de texto no se necesita ratón, Linux permite mediante el ratón cortar texto en cualquier parte de la pantalla y pegarlo en la línea de comandos.

Normalmente usted sólo usará un ratón bajo un entorno gráfico como el Sistema X Window. Sin embargo, algunas aplicaciones Linux no asociadas con un entorno gráfico, hacen uso del ratón.

Linux soporta todos los ratones serie estándar, incluyendo Logitech, MM series, Mouseman, Microsoft (2-button) y Mouse Systems (3-botones. Linux también soporta los ratones de bus Microsoft, Logitech, y ATIXL. El interfaz de ratón de PS/2 también es soportado.

Todos los demás dispositivos apuntadores, como los "trackball" que emulen a los dispositivos de arriba, también deberían funcionar.

Almacenamiento en CD-ROM

Casi todas las unidades de CD-ROM usan el interfaz SCSI. Siempre y cuando tenga un adaptador SCSI soportado por Linux, su unidad de CD-ROM debería funcionar. Hay un número de unidades de CD-ROM que se ha comprobado funcionan bajo Linux, incluyendo el NEC CDR-74, Sony CDU-541 y Texel DM-3024. Las unidades internas Sony CDU-31a y Mistsumi también están soportadas por Linux.

Linux soporta el sistema de ficheros estándar para CD-ROMs ISO-9660.

El parque de CD ROMs ha cambiado de forma asombrosa Sirva decir que Linux soporta, los nuevos estándares ATAPI para CD ROMs conectables a controladoras IDE.

Unidades de cinta

Hay varios tipos de unidades de cinta disponibles en el mercado. La mayoría usan el interfaz SCSI, por lo que estarían soportadas por Linux. Entre las unidades de cinta SCSI verificadas están la Sankyo CP150SE; Tandberg 3600; Wangtek 5525ES, 5150ES, y 5099EN con el adaptador PC36.

Otras unidades QIC-02 deberían estar soportadas también.

Existen controladores en fase de desarrollo para varios otros dispositivos de cinta como las unidades Colorado que se conectan a la controladora de disquetes.

Impresoras

Linux soporta todas las impresoras paralelo. Si puede acceder a su impresora por el puerto paralelo desde MS-DOS, u otro sistema operativo, debería poder acceder a él desde Linux también. El software de impresión de Linux consiste en el software estándar de UNIX lp y lpr. Este software también le permite imprimir remotamente a través de la red, si es que tiene una disponible.

Modems

En un domicilio particular lo mas común es conectarse con el exterior por medio de módem y un protocolo de comunicación como Slip o Ppp. Linux admite casi todos los módems del mercado, ya sean internos o externos.

Igual que para las impresoras, Linux soporta toda la gama de modems serie, tanto internos como externos. Hay una gran cantidad de software de telecomunicaciones disponible para Linux, incluyendo Kermit, pcomm, minicom, Seyon. Si el modem es accesible desde otro sistema operativo en la misma máquina, debería poder acceder a él sin dificultad desde Linux.

Tarjetas Ethernet

Ethernet es un producto inventado por Xeros, que ha obtenido una enorme aceptación en el mundo de las redes. Aunque es poco probable que se quiera conectar Linux a una red ethernet desde el domicilio, muchas empresas y centros educativos están conectadas por medio de ethernet.

Linux soporta un buen número de tarjetas Ethernet y adaptadores para LAN. Esto incluye los siguientes:

o 3com 3c503, 3c503/16

o Novell NE1000, NE2000

o Western Digital WD8003, WD8013

o Hewlett Packard HP27245, HP27247, HP27250

o D-Link DE-600

Los siguientes clónicos se ha informado que funcionan:

o LANNET LEC-45

o Alta Combo

o Artisoft LANtastic AE-2

o Asante Etherpak 2001/2003,

o D-Link Ethernet II

o LTC E-NET/16 P/N 8300-200-002

o Network Solutions HE-203,

o SVEC 4 Dimension Ethernet

o 4-Dimension FD0490 EtherBoard 16

Aquellas tarjetas clónicas compatibles con cualquiera de las tarjetas anteriores también deberían funcionar.

Puertos serie

Los dos dispositivos mas comunes que se conectan a los puertos de serie suelen ser ratones y módems. En Linux existen dos maneras de nombrar a los puertos serie, en la primera se llama al Com1 /dev/cua0 y al Com2 /dev/cua1. La segunda manera es /dev/ttyS0 y /dev/ttyS1. Si es posible, se prefiere utilizar la segunda manera porque la primera está llamada a desaparecer.

Existe un problema con los puertos serie en el hardware del PC y que puede provocar problemas desconcertantes. Aun cuando existen cuatro puertos seriales por diseño, solo existen dos interrupciones asignadas para este servicio. Este problema es independiente del sistema operativo e implica que en general no se puede utilizar a la vez /dev/ttyS0 y /dev/ttyS2, ni tampoco /dev/ttyS1 y /dev/ttyS3 (Com1 con Com3 y Com2 con Com4 en dos, respectivamente).

Por lo general aquellos que tengan un ratón conectado a un puerto de serie lo tendrán en /dev/ttyS0 y su módem deberá estar instalado en el /dev/ttyS1 o /dev/ttyS3. Si el ratón es tipo PS/2 entonces estará conectado en un dispositivo especial llamado /dev/psaux y no usará ningún puerto serial.

Puertos Paralelos

Los usos más habituales para un puerto paralelo en el PC son la conexión a la impresora y el uso de dispositivos paralelos como unidades de CD-ROM o Zip externas. El primer puerto paralelo, donde se suele conectar la impresora, se llama bajo Linux /dev/lp0 (line printer 0).

Obtención de Linux

Como ya se ha mencionado, no hay una única distribución "oficial" del software de Linux; hay muchas distribuciones, cada una de las cuales sirve a un propósito particular y una serie de objetivos.

Estas distribuciones están disponibles por F anónimo en Internet, en BBS de todo el mundo, y

por correo en disquete, cinta, y CD-ROM.

Esta una visión general del proceso de instalación. Cada distribución tiene sus propias instrucciones de instalación específicas, pero armado con los conceptos presentados aquí debería ser capaz de sentirse cómodo frente a cualquier instalación.

¿Qué distribución escoger?

¿Cómo se puede decidir entre todas estas distribuciones? Si se tiene acceso a las news de

USENET, u otro sistema de conferencias por ordenador, se puede preguntar allí las opiniones personales de la gente que haya instalado Linux.

Hay muchos factores a considerar cuando se elige una distribución, sin embargo, las necesidades y opiniones de cada uno son diferentes. En la actualidad, la mayoría de

las distribuciones populares de Linux contienen aproximadamente el mismo conjunto de software, de forma que la elección de una distribución es más o menos arbitraria.

Obtención de Linux

Conseguir Linux desde Internet

Si se posee un acceso a Internet, el modo más fácil de obtener Linux es a través de FTP anónimo.

Uno de éstos es sunsite.unc.edu.

Muchas distribuciones se crean en servidores de FTP anónimo como un conjunto de imágenes de disco. Es decir, la distribución consiste en un conjunto de ficheros, y cada fichero contiene la imagen binaria de un disquete. Para poder copiar el contenido de un fichero imagen en el disquete, se puede usar el programa RAWRITE.EXE bajo MS-DOS. Este programa copia, bloque a bloque, el contenido de un fichero a un disquete, sin preocuparse del formato del disco.

RAWRITE.EXE se encuentra en varios servidores de FTP de Linux como por ejemplo en uno de los sistemas que mayor soporte brindan a Linux: sunsite.unc.edu en el directorio

/pub/Linux/system/Install/rawwrite

Por lo tanto, en muchos casos, simplemente puede transferirse el conjunto de imágenes de disquete, y usar RAWRITE.EXE con cada imagen de modo que cree un conjunto de disquetes.

Arranque desde el llamado "boot disquete" y ya estará dispuesto a comenzar. El software se suele instalar directamente desde los disquetes, aunque algunas distribuciones le permiten instalarlo desde una partición MS-DOS de su disco duro. Algunas distribuciones le permiten instalar desde una red TCP/IP. La documentación de cada distribución debería describir estos métodos de instalación si los tienen disponibles.

Otras distribuciones de Linux se instalan desde un conjunto de disquetes con formato MS-DOS.

Por ejemplo, la distribución Slackware de Linux sólo necesita que se creen los disquetes boot y root usando RAWRITE.EXE. El resto de disquetes se copian a disquetes con formato MS-DOS usando el comando MS-DOS COPY. El sistema instala el software directamente desde los disquetes MS-DOS.

Esto ahorra el problema de tener que usar RAWRITE.EXE con muchos ficheros imagen, aunque, por otro lado, requiere que se tenga acceso a un sistema MS-DOS para instalar el sistema.

Cada distribución de Linux disponible en FTP anónimo debería incluir un fichero README describiendo cómo transferir y preparar los disquetes para instalación.

Es muy importante leer toda la documentación disponible para la versión que se esté usando.

Cuando se transfiera el software de Linux, hay que asegurarse de usar el modo binary para todas las transferencias de ficheros ( con la mayoría de clientes FTP, el comando "binary" activa este modo).

Conseguir Linux desde otras fuentes online

Si se tiene acceso a otra red de ordenadores como Compuserve o Prodigy, puede haber medios de transferir el software de Linux desde esas fuentes. Además, muchos sistemas BBS (Bulletin Board System) también proporcionan el software de Linux.

No todas las distribuciones de Linux están disponibles desde estas redes de ordenadores,

sin embargo muchas de ellas, en especial las diversas distribuciones en CD-ROM, sólo pueden obtenerse a través de pedido por correo.

Conseguir Linux por correo

Si no tiene acceso a Internet o a una BBS, muchas distribuciones pueden conseguirse por correo en disquete, cinta, o CD-ROM.

Muchos distribuidores aceptan tarjetas de crédito, así como pedidos internacionales.

Linux es un software de libre distribución, aunque a los distribuidores se les permite por la GPL cargar una cantidad por ello. Por ello, pedir Linux por correo podría costarle entre 30 y 150 dólares USA, dependiendo de la distribución.

Sin embargo, si se conoce a alguien que ya haya comprado ose haya transferido una versión de Linux, es libre de pedírsela o copiársela para su propio uso.

A los distribuidores de Linux no se les permite restringir la licencia o redistribución del software en ninguna medida. Si se está pensando en instalar un laboratorio completo de máquinas Linux, por ejemplo, solo se necesita comprar una única copia de una de las distribuciones, la cual se puede usar para instalar todas las máquinas.

Preparación para instalar Linux

Linux se puede instalar en cualquier disco que tengas en tu sistema y en cualquier partición del disco duro (Primaria o extendida).

Una vez que se ha obtenido una distribución de Linux, se esta preparado para instalar el sistema.

Esto supone cierto grado de planificación, sobre todo si en el ordenador se usan actualmente otros sistemas operativos.

A pesar de ser diferente cada distribución de Linux, el método utilizado para instalar el software es, en general, como sigue:

  • Reparticionar el disco(s) duro(s).Si se tiene instalados otros sistemas operativos, necesitará reparticionar los discos con el fin de reservar espacio para Linux.

  • Arranque la instalación de Linux. Cada distribución de Linux incluye algo para arrancar inicialmente e instalar el software, usualmente un disquete de arranque. Arrancando de esta forma, se entra en un programa de instalación para el resto del software, o bien permite seguir instalándolo a mano.

  • Crear las particiones para Linux. Después de reparticionar el disco para reservar espacio para Linux, se debe crear particiones de Linux en dicho espacio.

  • Crear los sistemas de ficheros y el espacio de intercambio. En este momento, debe crear uno o más sistemas de ficheros, utilizados para guardar sus ficheros, en las particiones recién creadas. Además, si se piensa usar espacio de intercambio ("swap"), se debe crear dicho espacio en una de las particiones para Linux.

Instalar los programas en los sistemas de ficheros. Finalmente, se debe instalar el software en los nuevos sistemas de ficheros. Después de esto, lo que queda es fácil si todo va bien.

La mayoría de las distribuciones de Linux proporcionan un programa de instalación que

guiará en cada paso de la instalación, y automatiza algunos de esos pasos. cualquiera de los siguientes pasos pueden estar automatizados o no, dependiendo de la distribución.

Es aconsejable que mientras se instala Linux, lo mejor que se puede aconsejar es tomar

notas durante todo el procedimiento de instalación.

Instalar Linux no es difícil, pero hay que recordar continuamente muchos detalles.

la experiencia instalando Linux será útil cuando quiera pedir ayuda a otras personas,

por ejemplo cuando envíe un mensaje a un grupo de news USENET sobre Linux.

Particiones

Los discos duros pueden ser divididos en compartimentos independientes entre sí. Estos compartimentos son llamados particiones y es el esquema que se seguirá para repartir el disco duro entre DOS o Windows y Linux.

Por ejemplo, en un disco duro se pueden tener varias particiones una dedicada a MS-DOS, otra a OS/2 y otra a Linux.

Si ya existe otro software instalado en su sistema, tal vez se necesite cambiar el tamaño de

las particiones con el fin de reservar espacio para Linux. En el espacio reservado se crearán una o más particiones para almacenar el software de Linux y el espacio de intercambio.

Este proceso se denomina reparticionar.

La mayoría de los sistemas MS-DOS utilizan una única partición que ocupa todo el disco. Para MS-DOS, esta partición es accedida como C: más de una partición, MS-DOS las

llamará D:, E:, y así sucesivamente, de modo que cada partición actúa como si fuera un disco duro independiente.

En el primer sector del disco está el registro de arranque maestro junto a la tabla de

particiones. El registro de arranque (como su nombre indica) se usa para arrancar el sistema. La tabla de particiones contiene información acerca del lugar y el tamaño de cada partición.

Hay tres clases de particiones: primarias, extendidas, y lógicas. De éstas, las más usadas

son las primarias. Sin embargo, debido al límite del tamaño de la tabla de particiones, sólo pueden tenerse hasta cuatro particiones primarias en un disco.

La forma de superar este límite de cuatro particiones es usar particiones extendidas. Una partición extendida no tiene datos ella misma; en su lugar, actúa como "soporte" de particiones lógicas.

La información de como está particionado un disco duro: su tamaño y tipo de partición es guardada al principio del mismo, y es un estándar que siguen todos los sistemas operativos. Suponiendo que se tienen cuatro particiones primarias en /dev/hda, estas serán denominadas por Linux /dev/hda1, /dev/hda2, /dev/hda3 y /dev/hda4. Las particiones lógicas que crea a partir de una primaria-extendida se denominarán a partir de /dev/hda5 en adelante.

Existe un primer sector en el disco duro que no pertenece a ninguna partición llamado MBR (Master Boot Record) y contiene un pequeño programa de inicio que es el primero en ejecutarse. Él es el encargado de iniciar el sistema operativo: Windows y DOS ponen ahí el suyo. Este se cambiará por el de Linux, que se llama LILO (Linux Loader), y que permitirá escoger el sistema operativo con el que deseamos arrancar.

Necesidades de reparticionado en Linux

En los sistemas Unix, los ficheros se almacenan en un sistema de ficheros, que es esencialmente una zona del disco duro (u otro dispositivo, como un CD-ROM o un disquete) formateado para almacenar ficheros. Cada sistema de ficheros se encuentra asociado con una parte específica del árbol de directorios; por ejemplo, en la mayoría de los sistemas, existe un sistema de ficheros para todos los ficheros del directorio /usr, otro para /tmp, etc. El sistema de ficheros raíz es el principal, que corresponde con el directorio raíz, /.

Bajo Linux, cada sistema de ficheros ocupa una partición del disco duro. Por ejemplo, si tenemos un sistema de ficheros para / y otro para /usr, necesitaremos dos particiones para almacenar ambos sistemas.

Antes de instalar Linux, se necesita preparar sistemas de ficheros para almacenar el software

de Linux. Por lo menos tiene que tener un sistema de ficheros (el sistema de ficheros raíz), y una partición reservada a Linux. La mayoría de los usuarios de Linux optan por almacenar todos sus ficheros en el sistema de ficheros raíz, pues en la mayor parte de los casos es más fácil de gestionar que tener diferentes sistemas de ficheros y particiones.

Sin embargo es posible crear varios sistemas de ficheros para Linux

¿Por qué usar más de un sistema de ficheros?

Lo más habitual es por seguridad; si, por alguna razón, uno de los sistemas de ficheros resulta dañado, los otros normalmente no resultarán afectados.

Por otro lado, si se almacena todos los ficheros en el sistema de ficheros raíz, y por alguna razón resulta dañado, se puede perder todos los ficheros de una vez. Sin embargo, esto no es lo habitual; si se hace copias de seguridad (backups) regularmente.

Otra razón para utilizar varios sistemas de ficheros es repartir el almacenamiento entre varios

discos duros. Si se tiene 40 mega bites libres en un disco duro y 50 en otro, se puede crear un sistema de ficheros raíz de 40 mega bites en el primer disco y un sistema /usr de 50

mega bites en el otro. Actualmente no es posible que un sistema de ficheros abarque varios discos; si el espacio libre de disco está repartido entre los discos, se necesita utilizar varios sistemas de ficheros para aprovecharlos.

En resumen, Linux requiere por lo menos una partición, para el sistema de ficheros raíz. Si se

desea crear varios sistemas de ficheros, se necesitará una partición por cada sistema de ficheros.

Algunas distribuciones de Linux crean particiones y sistemas de ficheros de forma automática.

Otra cuestión a considerar cuando se deciden las particiones es el espacio de intercambio (swap).

Si se desea usar espacio de intercambio en Linux, se tienen dos opciones. La primera es usar un fichero de intercambio que existe dentro de uno de los sistemas de ficheros de Linux. Se crea el fichero de intercambio para usarlo como RAM virtual una vez instalado el software. La segunda opción es crear una partición de intercambio, una partición reservada exclusivamente como espacio de swap.

La mayoría de la gente usa una partición para el intercambio en lugar de un fichero.

Cada fichero o partición de intercambio puede ser de hasta 16 mega bites. Si se desea tener más de 16 mega bites de swap, se pueden crear varios ficheros o particiones de intercambio hasta ocho a la vez. Por ejemplo, si se necesitan 32 mega bites de swap, se pueden crear dos particiones de 16 mega bites.

Por lo general, se crearán dos particiones para Linux: una para ser usada como sistema de ficheros raíz, y la otra como espacio de intercambio. Por supuesto, hay otras opciones pero esta es la opción mínima. El espacio de swap no es obligatorio en Linux, pero está muy recomendado si se posee menos de 16 mega bites de memoria física.

También se necesita conocer el espacio requerido para cada partición. El tamaño de los sistemas de ficheros del sistema Linux depende en gran parte de qué software se instale en él y de la distribución de Linux que se esté utilizando. Afortunadamente, la documentación de la distribución da una idea del espacio requerido. Un sistema pequeño puede utilizar sólo 20 mega bites o menos; un sistema grande siempre necesitará 80 a 100 mega bites, o más.

Hay que añadir a esto el espacio extra para los directorios de usuario, expansiones futuras, etc.

El tamaño de las particiones de swap (debe elegirse una para esto) depende de la RAM virtual

que se necesite. Lo típico es crear una partición de intercambio del doble de espacio de su RAM física; por ejemplo, si tiene 4 mega bites de RAM, una partición de 8 mega bites suele bastar. Por supuesto, esto es solo una idea la cantidad de espacio de swap que requiere dependerá del software que quiera ejecutar. Si se tiene una gran cantidad de memoria física (digamos, 16 mega bites o más) puede que al final no se necesite espacio de intercambio.

Reparticion de los discos

Particionar el disco duro es una manera de dividir el disco físico en varios discos lógicos. O lo que es lo mismo, al particionar un disco, dividimos el disco en varias particiones independientes unas de otras, creando la ilusión de que tenemos diferentes discos, cuando en realidad lo que tenemos es un solo disco físico dividido en partes. Una partición es una de estas partes (divisiones) del disco.

La manera habitual de cambiar el tamaño de una partición es borrarla (lo que implica borrar

toda la información que contenga) y rehacerla.

Es posible encontrar programas para MS-DOS que consiguen cambiar el tamaño de las

particiones de forma no destructiva. Uno de éstos se conoce como "FIPS", y puede encontrarse en muchos servidores de FTP de Linux.

Debido a que se empequeñecen las particiones originales, no se va a poder reinstalar todo el software que se tenía antes. En este caso, hay que borrar el software innecesario

para permitir que el resto quepa en las particiones más pequeñas.

El programa utilizado para hacer particiones es fdisk. Cada sistema operativo tiene su propia

versión de este programa; bajo MS-DOS, se activa con el comando FDISK.

Se debe tener en cuenta que se puede perder todo el software de su sistema si no se hace correctamente el reparticionado.

No se debe modificar o crear particiones para otros sistemas operativos (incluyendo Linux)

utilizando FDISK bajo MS-DOS. Solo pueden modificarse particiones de cada sistema operativo con la versión de fdisk correspondiente a ese sistema; por ejemplo, se crearán las particiones para Linux utilizando el programa fdisk que viene con Linux.

Si se posee un solo disco duro en el sistema, dedicado, por ahora, enteramente

a MS-DOS. Esto es, el disco duro contiene una partición MS-DOS, conocida habitualmente como "C:". Puesto que este método de reparticionado destruirá todos los datos de la partición, necesita crear un disco de sistema MS-DOS "arrancable" que contenga lo necesario para ejecutar FDISK y restaurar el software desde el backup cuando se complete el proceso de reparticionado.

En muchos casos, se pueden usar para esto los discos de instalación de MS-DOS. Sin embargo, si necesita el disco de sistema, se formatea mediante el comando

FORMAT /s A:

Copiando en ese disco todas las utilidades de MS-DOS necesarias (normalmente, casi todo lo que hay en el directorio \DOS del disco), así como los programas FORMAT.COM y FDISK.EXE. Ahora se debe poder arrancar desde este disquete, y ejecutar el comando

FDISK C:

Para arrancar FDISK.

Cuando comienza el programa FDISK, se utiliza el menú de opciones para mostrar la tabla de particiones. Es importante guardar copia de la configuración original en caso de que se quiera detener la instalación de Linux.

Para borrar una partición, se selecciona la opción del menú "Eliminar partición o unidad lógica DOS”. Se especifica el tipo de partición que desea borrar (primaria, extendida o lógica) y el número de la partición.

Para crear una nueva partición para MS-DOS (más pequeña), se selecciona la opción de FDISK "1. Crear partición DOS o unidad lógica DOS". Se especifica el tipo de partición (primaria, extendida o lógica) y el tamaño (en mega bites). FDISK deberá crear la partición.

Después de hacer esto mediante FDISK, se debe abandonar el programa y reformatear las nuevas particiones. Por ejemplo, si se cambió el tamaño de la partición C: se tecleará el comando

FORMAT /s C:

Ahora se puede reinstalar el software desde el backup.

Cualquier disco que tengamos en nuestro ordenador tiene al menos una partición primaria, que en la mayoría de los casos tiene un tamaño equivalente al total del disco.

Unos ejemplos aclararan las cosas:

Un disco de 1Gb con una sola partición, tendrá una partición primaria de 1Gb (total del disco).

Ese mismo disco podría tener 4 particiones primarias de 0.25Gb cada una, dando la ilusión de que tenemos 4 discos duros de 0.25Gb en vez de un solo disco de 1Gb.

Otra combinación posible podría ser 4 particiones primarias de 0.10Gb y 1 extendida con 6 unidades lógicas de 0.10Gb, en este caso parecería que tenemos 10 discos duros de 0.10Gb cada uno.

Al contrario que Ms-Dos, Windows, OS/2, las diferentes particiones en Linux no se denominan C:, D:, E:, ...., etc, existe una denominación propia:

Si los discos son IDE:

/dev/hda: Disco duro IDE como master en el canal IDE 1.

/dev/hda1: Partición primaria 1 en /dev/hda

/dev/hda2: Partición primaria 2 en /dev/hda

/dev/hda3: Partición primaria 3 en /dev/hda

/dev/hda4: Partición primaria 4 en /dev/hda

/dev/hda5: Partición extendida 1 en /dev/hda

/dev/hda6: Partición extendida 2 en /dev/hda

.....

/dev/hda16: Partición extendida 16 en /dev/hda

/dev/hdb: Disco duro IDE como esclavo en el canal IDE 1.

/dev/hdb1: Partición primaria 1 en /dev/hdb

........

/dev/hdc: Disco duro IDE como master en el canal IDE 2.

/dev/hdc1: Partición primaria 1 en /dev/hdc

........

/dev/hdd: Disco duro IDE como esclavo en el canal IDE 2.

/dev/hdd1: Partición primaria 1 en /dev/hdd

........

Si los discos son SCSI:

/dev/sda: Disco duro SCSI nr.1.

/dev/sda1: Partición primaria 1 en /dev/sda

........

/dev/sdb: Disco duro SCSI nr.2.

/dev/sdb1: Partición primaria 1 en /dev/sdb

........

¿Cuantas particiones necesito para Linux?

La respuesta rápida y fácil es: recomendable al menos dos, una para el sistema/datos y otra para Swap. Usualmente se suelen tener tres, una para el sistema/programas (/), otra para los datos (/home) y otra para swap.

La respuesta larga y no tan fácil es mas complicada de explicar: Todo dependerá muchísimo del uso que se le vaya a dar al sistema.

Para sistemas que se utilicen de forma particular y por uno o pocos usuarios bastara con las dos / tres particiones antes mencionadas, esto evitara los problemas de saber que cantidad de espacio necesitan las diferentes particiones y él quedarnos sin espacio en alguna partición vital, mientras que nos sobra en otras.

Para sistemas servidores, con gran cantidad de servicios y usuarios es muy recomendable tener varias particiones / discos. Existe un documento (HOWTO: Multi Disk System Tuning) muy bueno y quizás complicado para el principiante que explica cuantas particiones y discos y que tamaño deberían tener en función del uso que se le vaya a dar al sistema, o en cualquier servidor con documentación Howto.

¿Porque necesito diferentes particiones?

El particionar el disco, es simplemente una manera de organizar el disco duro. Se Puede organizarlo con una sola partición o en varias. Es el usuario el que deberá decidir cuantas particiones tendrá su disco, y el tamaño de las mismas, hay que recordar, que al menos hay que tener una partición primaria.

Desventajas de tener el disco dividido en diferentes particiones. Ninguna

Ventajas en tener el disco particionado en varias particiones:

Si tienes un error / problema en una de ellas, las demás no se verán afectadas.

Poder tener diferentes sistemas operativos en vuestra maquina, totalmente independientes unos de otros.

Poder tener vuestros archivos de datos en particiones totalmente independientes.

Poder borrar / cambiar el contenido de una partición, sin que esto afecte a las demás.

FIPS

Existen muchos programas para realizar particiones. Fips es uno de los mas usados.

Linux necesita sus propias particiones, y si ya se tiene instalado Dos / Windows es necesario quitar un trozo de su partición. Esto normalmente significa destruir la partición actual y volver a crear unas nuevas, perdiendo todos los datos que pudiese contener. Sin embargo existen varios programas que nos permite reparticionar sin perder los datos. Con las diferentes distribuciones de Linux viene una utilidad de libre distribución llamada FIPS.

Para utilizar FIPS se debe seguir una serie de pasos:

  • Copiar los datos importantes.

Reparticionar un disco es una operación delicada en la que un error puede representar la perdida de datos, por ello es recomendable copiar todos los datos importantes antes de hacer nada. De todas formas, aunque no se vaya a instalar Linux ni se vaya a reparticionar el disco duro, es conveniente tener siempre una copia de seguridad de los datos importantes, los problemas nunca avisan.

  • Leer la documentación de FIPS.

Es importante leer la documentación de FIPS, existen muchos aspectos y detalles correspondiente a particularidades del hardware que se deben tener en cuenta.

  • Defragmentar el disco duro.

Para poder dividir la partición eficientemente es necesario que todos los datos estén al principio de la misma. Sino, es posible que incluso no se pueda hacer. Para defragmentar se puede usar la utilidad defrag de Dos / Windows.

  • Crear un disco de arranque.

Se debe crear un disquete de arranque del sistema operativo y copiar a él los ficheros FIPS.EXE, RESTORRB.EXE y ERRORS.TXT. También se debe copiar FDISK.EXE, si se encuentra en DOS seguramente esta en C: DOS y si esta en Windows se halla en C: WINDOWS/COMMAND. Para crear un disquete de arranque se utiliza la orden

FORMAT A: /s

  • Arrancar con el disquete.

Inserte el disquete en la unidad A: y encienda el ordenador. El ordenador deberá ejecutar el sistema operativo contenido en ésta. A continuación se inicia FIPS. Este mostrará información diversa y por último te dará la opción de dividir la partición en DOS, ajustando el tamaño con las teclas de los cursores, a la izquierda y la derecha.

Un tamaño orientativo para Linux puede ser de unos 800 Mbytes, aunque todo dependerá del tamaño lo que se piense instalar y del espacio libre en el disco duro.

Una vez se haya terminado con FIPS, esté habrá dividido la partición de Dos / Windows en dos particiones. El espacio de la segunda partición es el que se dedicará a Linux.

  • Borrar la nueva partición.

Es necesario borrar la nueva partición creada para dejar su espacio disponible para Linux. Esto se hará ejecutando FDISK y seleccionando la opción 3 (Eliminar partición o unidad lógica DOS) y posteriormente seleccionando la opción 1 (Eliminar partición primaria DOS). Cuidado con la partición que se vaya a eliminar, recuerde que es la segunda partición.

Mas adelante, durante la instalación de Linux se utilizará este espacio disponible para crear las particiones que necesita Linux.

instalación de Linux

Objetivo de la instalación

El objetivo es instalar Linux en un computador con una configuración típica de fábrica. Esta es un solo disco duro IDE, con una sola partición primaria dedicada totalmente a Windows o DOS. Una vez terminada la instalación se deberá tener una primera partición dedicada a Windows o DOS, una segunda partición dedicada al espacio de intercambio para Linux y la última para contener todo el sistema de archivos de Linux. Además se instalará en el MBR del disco duro el LILO de forma que se podrá escoger entre los dos sistemas operativos instalados a la hora de arrancar.

Iniciando la instalación

Como se ha indicado anteriormente hay muchas versiones de Linux, a continuación se explica el proceso de instalación de la versión Red Hat

Para poder instalar Linux se ha de iniciar una versión especial del sistema operativo preparada para realizar todo el proceso. Para hacer esto existen como mínimo tres opciones disponibles:

Inicio desde el cdrom: Si el computador es relativamente nuevo seguramente puede iniciar el sistema operativo directamente desde el cdrom con tan solo dejar el disco en la unidad lectora y reiniciando el computador. Es posible que se tengan que cambiar algunos parámetros de la BIOS para poder iniciar desde el cdrom. Si no se quiere estar cambiando los parámetros no hay que preocuparse, simplemente se actúa como si el computador no tuviese esta característica.

Autoboot desde Dos / Windows: Si se utiliza Dos / Windows, se debe salir de Windows. Una vez que se esta en modo msdos, en la unidad de cdrom, en el directorio DOSUTILS se ejecuta el comando AUTOBOOT con esta orden se iniciará Linux directamente desde el cdrom y comenzará la instalación.

Disquetes de Arranque: Si aún así falla no se consigue iniciar la instalación que da la posibilidad de arrancar desde disquete. Para hacer el disco de arranque se introduce un disquete sin errores en la unidad y en el directorio dosutils del cdrom. Se encuentra un programa llamado rawrite.exe que se ejecuta de la siguiente forma:

C:\DOSUTILS>rawrite -f ..\images\boot.img -d a:

Si no desea salirse a DOS es recomendable usar rawritewin.exe el cual realiza la misma tarea desde una ventana de Windows.

Copiando disco de arranque por red (bootnet) desde Windows fig_rawritewin width=6cmimages/rawritewin.eps Si su instalación no se hará desde cdrom, sino remota a través de la red, ya sea usando NFS, FTP o HTTP, se necesitará la imagen bootnet.img para iniciar la instalación.

Pasos a seguir

Una vez ha comenzado la instalación es cuestión de seguir cada paso lo que indica el computador. Hay dos posibilidades de interfaz: una gráfica (por defecto) y otra en texto, pero ambas son equivalentes. Solo se presentarán las pantallas gráficas en X11. Si se tiene problemas para la instalación gráfica, en el inicio de la instalación, en la pantalla de presentación se escribe ``text'' y así se comenzará la instalación en consola.

boot: text

La primera pantalla es una presentación de Red Hat Linux. A continuación pregunta por el lenguaje que se desea usar durante la presentación. Por defecto se sugiere el Ingles, pero se permite realizarla en castellano.

Escogiendo un lenguaje para la instalación fig_escoger_leng width=10cmimages/escoja_lengua.eps

En la siguiente pantalla se deberá indicar cual es el tipo de teclado que se pretende usar. Busque modelo de teclado: número de teclas y su disposición (o lenguaje) que corresponde al que se encuentra usando. Para este caso se escogerá es, correspondiente al teclado Español. Ignore la variante. De todas maneras es prudente realizar una prueba para asegurarse que el modelo escogido si corresponde al que se tiene.

Seleccionando modelo y distribución del teclado fig_teclado_espaniol width=10cmimages/teclado.eps

Una vez se haya escogido el teclado se presenta la pantalla de elección del ratón. Existe una buena cantidad de ratones que pueden usarse con Linux, pero seguramente el que se posee es Microsoft Compatible serial o PS/2 (conector redondo). Si este es dos botones, es altamente recomendado utilizar la emulación de tres botones, ya que la mayoría de aplicaciones utilizan los tres botones. Con esta emulación al presionar los dos botones al tiempo, hacen la vez de un tercero. Se si ha escogido un mouse serial, es necesario señalar el puerto en el cual esta conectado, normalmente es el /dev/cua0.

Seleccionando ratón fig_escoge_raton width=10cmimages/raton.eps

Una vez se recibe la bienvenida a la instalación, se procede a escoger el tipo de instalación que se va a realizar. El sistema de paquetes de Red Hat tiene la habilidad de poder actualizar una instalación anticuada respetando en la medida de lo posible la configuración actual del sistema. Como se desea crear una instalación completamente nueva se seleccionará instalar .

Tipos de Instalación fig_escoge_tipo_instala width=10cmimages/tipo_de_instalacion.eps

Workstation configura una estación de trabajo, ya sea usando la interfaz de GNOME o de KDE y Server instalará un servidor. Custom es la opción recomendada en esta guía porque permite seleccionar mas detalladamente el estilo de la instalación, así como los paquetes que se van a instalar. Las opciones de estación de trabajo y servidor realizan la mayoría de tareas automáticamente y puede ocurrir que las otras particiones se pierdan en el proceso.

Creando las particiones para Linux

El siguiente paso en la instalación consiste en particionar el disco, para ello se utiliza la herramienta Disk Druid. En este se verá una pantalla en donde la parte superior está dedicada a información sobre las particiones y la inferior a presentar una serie de opciones, además de el espacio utilizado por en el disco duro por las diferentes particiones. Es posible moverse y seleccionar opciones con el tabulador y las flechas. Disk Druid permite modificar particiones y establecer como será el sistema de archivos, sin embargo todos los cambios que se hagan no serán guardados hasta que se seleccione NEXT. Si en cualquier momento se descubre que se ha cometido un error grave se podrá recuperar el estado inicial presionando la opción RESET. Una vez que se haya seleccionado NEXT y aceptado los cambios no existe posibilidad de recuperar el estado inicial .

Editando particiones con Disk Druid fig_Disk_Druid width=10cmimages/escoja_particiones.eps

Si se ha seguido las instrucciones de esta guía existirá una primera partición para Dos / Windows y un espacio vacío a continuación. Si este es el caso seleccionaremos la opción Add (Adicionar) para añadir una nueva partición, Disk Druid nos presentará un menú en donde la primera pregunta es cual será el punto de montaje (mount point), como es una partición dedicada por completo a todo el sistema de archivos de Linux habrá que introducir el símbolo ``/'' que significa el directorio raíz de Linux. En el campo size (tamaño) se introduce el tamaño que se había reservado para Linux menos unos 30 Mbytes que se reserva para la partición de swap. Por último hay que seleccionar el tipo de partición, que será Linux Native.

Agregar una partición fig_adicione_particion width=4cmimages/adicione_particion.eps

Para la partición de intercambio se vuelve a pulsar la opción Add, en este caso no se introduce ningún punto de montaje. El tamaño será lo que queda de disco duro y el tipo será Linux swap. El tamaño de 30 Mbytes para la partición de intercambio es solamente tentativo, dependiendo del uso del sistema y de la memoria RAM que tenga puede que se necesite más o menos. Como se mencionó previamente, algunas recomendaciones dicen que la partición de intercambio debe de ser el doble de la memoria RAM. En cualquier caso no se debe poner más de 128 Mbytes a una partición intercambio porque es lo máximo que admite Linux por partición. Si se necesita más habrá que crear varias particiones de intercambio.

Es posible que Disk Druid cree alguna de las particiones como extendidas y no primarias. En este caso hay que recordar que estas se llamarán. Por ejemplo /dev/hda5 o /dev/hda6.

Con las dos particiones creadas se puede salir de Disk Druid, seleccionando NEXT y este preguntará si queremos salvar los cambios. Contestar Sí para mantener los cambios realizados.

Instalando LILO

Una vez creadas las particiones el proceso instalación continua y la siguiente pantalla pregunta que particiones formateará, estas particiones serán las que contengan el sistema de archivos de Linux. Presentará la única partición que se ha creado con Disk Druid, se aceptará todo, incluido que compruebe defectos.

Formato de particiones fig_formateo width=10cmimages/format.eps

Come se mencionó en la sección anterior, LILO (Linux Loader) es un pequeño programa que se instala usualmente en el MBR y que permite seleccionar que sistema operativo a arrancar. Este es necesario aún cuando Linux sea el único sistema en el computador. A continuación la instalación preguntará donde se desea poner el LILO, para ponerlo en el MBR seleccionar /dev/hda. No seleccione /dev/hda1 porque seguramente destruirá el sistema de archivos de Windows/DOS.

Ignore el modo lineal y los parámetros adicionales; estas opciones se dejan en blanco, solo se usan para ciertos casos particulares para la detección de dispositivos exóticos. También existe la opción de escoger cual sistema arranca por defecto: Default boot image. Si tiene mas usuarios en su máquina es posible que desee que este arranque por Windows por defecto y solo cuando se escoja en el boot, este arranque por Linux.

Es recomendable crear un disco de arranque para situaciones de emergencia en las que no sea posible iniciar Linux por métodos ``normales''.

Instalación del LILO fig_instala_LILO width=10cmimages/lilo.eps

Configuración de la Red

Si el sistema detecta una tarjeta de red mostrará la pantalla de configuración de una LAN (Local Area Network, Red de Area Local). Mucha de la información aquí relevante debe ser proveída por el administrador de sistema o el departamento de soporte.

Es posible que la red local en la que se encuentra use DHCP (Dynamic Host Configuration Protocol) de tal forma que un servidor remoto proveerá toda la información necesaria al computador. De lo contrario será necesario introducir los datos manualmente y pedir que active la interfaz de red en el momento del boot.

Los valores son:

El número IP: Es un número único dentro de la red, asignado a su máquina. Este consta de cuatro números entre 1 y 254 separados por punto. (ejm: 192.168.1.12).

Número IP de Máscara, Red y Broadcast: Estos números son estándar de las redes y el instalador los trata de asignar automáticamente. Máscara son todos 255 y terminado en 0, Red es el número IP de la máquina pero terminado en cero y Broadcast es terminado en 255. A menos que tenga una buena razón para cambiar estos valores, no lo haga

Nombre de su computador: nombre y dominio (ejm: irulan.skina.com.co).

Número IP del Portal (Gateway): Usualmente existe un portal a través del cual se sale de la red local. Se acostumbra utilizar el mismo número del servidor terminado en 254 o en 1. (ejm: 192.168.1.1)

Número IP del DNS (Servidor de nombres): La red local debe tener un computador que traduce números IP y nombres reales y viceversa conocido como servidor de nombres. Este es necesario para que las diferentes maquines se pueden encontrar entre si. Por supuesto puede usarse mas de uno como servidores redundantes.

Es importante nuevamente resaltar que tanto los valores como el nombre no pueden ser asignados arbitrariamente, sino que son dados por el administrador de red, ya sea local o universal en Internet.

Configuración de la red local fig_configura_red width=10cmimages/configuracion_red.eps

La configuración de la conexión a Internet usando módem no se realiza en este momento, sino después de la instalación.

El proceso de instalación preguntará ahora por la zona horaria donde está situado el computador. Con la casilla de vista (del mapa) puede seleccionar la zona del mundo que desea sea mostrada, por ejemplo Sudamérica. Y se procede a buscar tanto el continente como la ciudad en donde se encuentra, en la parte baja de la caja de dialogo. Por ejemplo America/ Bogota.

Esta selección es importante para las correcciones horarios de los países con estaciones. La casilla que pregunta Hardware clock set to GMT se dejará sin seleccionar

Escogencia de la zona horaria fig_zona_horaria width=10cmimages/zona_horario.eps

Establecer la clave del root y otros usuarios

A continuación hay que introducir una clave o password para el usuario root. Se introduce una clave dos veces, la segunda es de confirmación. No hay que preocuparse si no se ve lo que se escribe, se hace de esta forma para que nadie pueda ver en la pantalla la clave.

El root es el usuario con todos los privilegios en una máquina Linux; es aquella persona, que puede configurar el sistema y adicionar otros usuarios menos ``privilegiados''.

A propósito, es también recomendado adicionar un usuario corriente, por decir demo o su login favorito, para ser usado cotidianamente en vez de root. El usuario root solo debe usarse para labores de administración y nunca debe usarse como una cuenta corriente, es muy peligroso, ya que los errores de root tienen consecuencias para todos los usuarios.

Es muy importante que no olvidar estas clave, si lo hace en teoría no se podrán recuperar.

Password de root fig_passwd_root width=10cmimages/cuentas.eps

Ahora se pregunta por la autenticación de usuarios. Ambas opciones, tanto encripción MD5 como shadow paswords son recomendadas. MD5 permite tener palabras claves largas hasta de 256 caracteres y shadow passwords esconde las palabras claves en un archivo diferente a /etc/passwd de tal forma que estas solo son visibles para root.

NIS (Network Information Service) permite manejar una única palabra clave para un grupo de máquinas de un dominio. Solo active si va a utilizar este servicio.

Modos de autenticación fig_autentica width=10cmimages/autenticacion.eps

Selección de paquetes

A continuación se muestra una lista de componentes a instalar, para alguien novato puede presentar un problema porque no sabrá lo que es la mayoría de las cosas. No hay de que preocuparse, los componentes básicos necesarios para el funcionamiento de Linux se instalan automáticamente, lo que se puede seleccionar ahora son grupos de programas relacionados, se recomienda que aquello que no se sepa lo que es, no se instale. Ya habrá tiempo más adelante de instalar y desinstalar los paquetes.

Printer support: Soporte para las impresoras

X Window System: Interfaz gráfica X-window

Gnome: Interfaz de escritorio de Gnome, basado en GTK

KDE: Interfaz de escritorio KDE basado en Qt

Mail/WWW/News Tools: Programas para el manejo de servicios de red como correo, páginas HTML y Noticias

Dos / Windows Connectivity: Compartir servicios con Dos / Windows. Principalmente instala SAMBA

Graphics Manipulations: Herramientas de procesamiento de gráficas

Games: Juegos tanto en consola como para X11

Multimedia Support: Soporte para sonido y video

Networked Worstation: Software de red para estación de trabajo

Dialup Worstation: Estación de trabajo conectada a Internet por módem

News Server: Servidor de Noticias (News)

NFS Server: Servidor de archivos a través de NFS (Network File System)

SMB (Samba) Server: Servidor para Windows 9x/NT

IPX/Netware(tm) Server: Servidor para Novell Netware (tm)

Anonymous FTP Server: Servidor de ftp (file transfer protocol) anónimo

Web Server: Servidor de paginas WWW (Apache)

DNS Name Server: Servidor de Nombres DNS (Domain Name Server)

Postgres (SQL) Server: Servidor de base de datos PosgreSQL

Network Management Server: Administrador de red

TeX Document Formatting: Procesador de textos usando TeX y LATEX

Emacs: El meta-editor de GNU

Development: Herramientas para el desarrollo de programas

Kernel Development: Fuentes del kernel para recompilar

Extra Documentation: Varias guías y documentos

Utilities: Utilitarios

Everything: Instalar todo

La opción de instalarlo todo solo se recomienda siempre y cuando se tenga suficiente disco duro: alrededor de 1.5 Gbytes.

Seleccionando componentes a instalar fig_componentes_instalar width=10cmimages/grupo_de_paquetes.eps

La otra opción posible, es seleccionar paquetes individualmente. Esta opción se recomienda solo para usuarios cierta experiencia ya que puede ser larga y tediosa: Red Hat 6.1 tiene mas de 600 paquetes en su distribución .

Esta opción hace factible que se violen algunas dependencias entre paquetes y el usuario será informado. Siempre existe la opción de dejar que el programa de instalación instale los paquetes necesarios para que las dependencias se cumplan.

Seleccionando paquetes individuales a instalar fig_paquetes_instalar width=10cmimages/paquetes_individuales.eps

Configuración de X-window

Siempre y cuando se haya escogido instalar la interfaz gráfica X-window el sistema tratará de detectar la tarjeta de video y el monitor presente en el equipo. En general se tiene éxito en la auto-detección, pero de no ser así siempre se puede escoger de la lista de dispositivos proveída por el sistema.

Existe una gran cantidad de tarjeta soportadas por XFree86, y por lo tanto la lista de estos dispositivos es extensa. Si la tarjeta del ordenador no se encuentra en ella, se puede escoger Unlisted Card, aunque esta última solo proveerá 16 colores en una resolución de 640x480 usando estándar VESA-1 de VGA16.

La lista de monitores no es tan extensa, y muy probablemente no existe el que se posee. Para esto existen dos opciones para escoger,

Generic Monitor: Monitores con algo obsoletos que soportan VGA a frecuencias predeterminadas

Generic Multisync: Monitores que soportan SVGA a diferentes frecuencias

Una vez escogido el monitor es posible hacer una prueba de la configuración. Test this configuration, el autor no lo recomienda, ya que es posible que su tarjeta de video se infarte y tenga que reiniciar todo nuevamente.

En la parte inferior se puede escoger:

Configuración la instalación: Le permite escoger a que resolución y que profundidad de colores su equipo va a funcionar.

Login gráfico: si se encuentra satisfecho con la configuración puede escoger entrar directamente a la interfaz gráfica una vez enciende su computador.

Ignorar la configuración y continuar: siempre puede volver a ella una vez finalizada la instalación usando Xconfigurator

Configuración de X-window fig_config_Xwin width=10cmimages/configuracion_X.eps

Una vez escogidos los paquetes el proceso de instalación nos informa que se guardará un informe con el proceso de instalación en /tmp/install.log. Se acepta la información sin preocuparse demasiado.

Si todo va bien se verá como se crean los sistemas de archivos y a continuación como se empiezan a instalar los paquetes. La pantalla de instalación indicará, entre otras informaciones, el tiempo que ha transcurrido, el tiempo total estimado y el tiempo restante estimado.

Progreso del proceso de instalación fig_progreso_instal width=10cmimages/indica_progreso.eps

Una vez termine, pedirá el disquete para generar el disco de arranque y se dará por terminada la instalación. La siguiente vez que reinicie el computador se podrá arrancar Linux.

X-Window es independiente del entorno de ventanas. El entorno de ventanas esta controlado por un ``manejador de ventanas'' que es el programa que permite usar y manipular las diferentes entidades gráficas. Por esta configuración es posible tener muchas diferentes tipos de ventanas, interacción y apariencia. En Linux existe una cantidad apreciable de estos manejadores entre libres y comerciales:AfterStep, CDE, Enlightenment, fvwm, fvwm2, gnome, icewm, KDE, olwm, olvwm, Window Maker, WM2, xfce ... Todos ellos tienen un estilo particular de presentación de ventanas.

Es importante resaltar los proyectos GNOME y KDE, los cuales no son manejadores de ventanas sino que son proyectos de escritorios interactivos que pretenden proveer toda una interfaz de usuario consistente, integrada y altamente modular.

Para poder utilizar estos entornos, primero es necesario configurar X-Window. Es posible que, cuando se ha instalado Linux y se ha seleccionado X-Window, el programa de instalación haya configurado adecuadamente X-Window. Así que, se puede probar. Para ejecutar X, basta con escribir: startx. Al ejecutar esto es posible que ya funcione.

Si no funciona, se debe configurarlo correctamente. Para ello, tenemos existen varios programas de configuración:

xf86config

Este programa es en modo consola y en modo texto. Ahora está un poco en desuso pero aun es útil para cuando es necesario bajarse de nivel cuando las otras herramientas no funcionan.

Xconfigurator

Este programa es en modo consola y con ventanas. Permite configurar la tarjeta gráfica, el monitor, ratón,...(en la instalación se utiliza este programa).

Xconfigurator fig_xconfigurator width=10cmimages/xconfigurator.eps

XF86Setup

Dependiendo de qué versión se tenga instalada de las X-Windows, se puede usar XF86Setup. Este programa es en modo gráfico (VGA16) y permite configurar todo de un modo interactivo y por lo tanto más sencillo.

XF86Setup fig_xf86setup width=10cmimages/xf86setup.eps

Arrancar y gestor de arranque

El proceso de arranque en un PC

Después de encender la computadora, la BIOS (Basic Input Output

System), inicializa pantalla y teclado y comprueba la memoria RAM. Hasta este momento para el PC todavía no existe ningún medio de almacenamiento (disquete, disco duro)

Después se lee la información sobre los dispositivos más importantes, la hora y la fecha. En este momento se reconoce el primer disco duro y su geometría así que la carga del sistema operativo desde el disco puede comenzar.

Para ello se lee desde el primer disco duro, el primer sector físico de datos del tamaño de 512 Bytes y se carga a la memoria. El control de ejecución pasa a este pequeño programa y la ejecución de los comandos en éste determina a partir de ahora el proceso de arranque. Estos primeros 512 Bytes en el primer disco duro se denominan en inglés Master Boot Record.

La explicación de estos hechos permite sacar conclusiones importantes para el entendimiento de lo expuesto a continuación: Hasta el justo momento de cargar el MBR, el arranque es exactamente el mismo en cualquier PC y completamente independiente del sistema

operativo instalado; el PC solamente tiene acceso a los dispositivos a través de las rutinas (drivers) grabadas en la BIOS.

Master Boot Record

La estructura del MBR está definida por una convención independiente de los sistemas operativos. Los primeros 446 Bytes están reservados para código de programas. Los próximos 64 Bytes ofrecen espacio para una tabla de particiones con hasta 4 entradas.

Sectores de arranque

Los sectores de arranque son los primeros de cada partición. Ofrecen 512 Bytes de espacio y sirven para albergar código, que puede ser ejecutado por el sistema operativo que resida en esta partición. En el caso de los sectores de arranque de DOS-,Windows- u OS/2 esto es realmente así y aparte del código ejecutable también contienen información importante del sistema de ficheros. Por el contrario, los sectores de arranque de una partición Linux están en principio vacíos, incluso después de haber generado el sistema de ficheros. Por lo tanto, una partición Linux no es autoarrancable aunque tenga un kernel y un sistema de ficheros raíz válidos.

Conceptos de arranque

El ''concepto de arranque'' más simple que uno se puede imaginar es el de una computadora con un solo sistema operativo. Una configuración muy extendida en este sentido es la de DOS o Windows 95/98 como sistema operativo único en la computadora. Para este caso, acabamos de comentar los procesos que transcurren durante el inicio.

Un proceso de arranque semejante también sería imaginable para una computadora de ''solo-Linux'' y en este caso no sería necesaria la instalación de LILO. Pero en tal escenario no se podría indicar al kernel una línea de comandos para el inicio (con información adicional sobre el hardware o con indicaciones especiales respecto al arranque, etc.).

En cuanto existen varios sistemas operativos instalados en una computadora existen también diferentes conceptos de arranque:

Arrancar sistemas operativos adicionales de disquete:

El primer sistema operativo se carga desde el disco duro y los demás desde la disquetera usando disquete de arranque.

o Condición: Existe una disquetera desde la cual se puede arrancar.

o Ejemplo: Se instala Linux como sistema adicional en un sistema DOS,

Windows 95/98 o OS/2 y se arranca Linux siempre desde un disquete de arranque.

o Ventajas: Se ahorra la instalación del gestor de arranque (Bootloader) que en definitiva es

un poco crítico.

o Desventajas: Se debe mantener siempre un buen stock de disquetes de arranque que funcionen y el arranque tarda más.

o El hecho de que Linux no pueda arrancar sin el disquete de arranque puede ser una ventaja tal como una desventaja según las condiciones de uso.

Arrancar sistemas adicionales en tiempo de ejecución:

Se carga un determinado sistema operativo en cada arranque y los demás se cargan de manera opcional a través del que ya está cargado.

o Condición: Deben existir programas útiles para esto.

o Ejemplos: La carga de Linux desde DOS mediante el uso de load-

lin.exe o la carga de un servidor NetWare desde DOS con server.exe

Creación del disco de arranque o instalación del LILO

Cada distribución proporciona mecanismos para arrancar Linux cuando ya esté instalado en su sistema. En la mayoría de los casos se creará un disquete "boot" que contiene el núcleo de Linux configurado para usar con su recién creado sistema de ficheros raíz. Para arrancar Linux, deberá hacerlo desde ese disquete y tras el arranque se pasará el control a su disco duro. En otras distribuciones, el disco de arranque es el propio disquete de instalación.

La mayoría de las distribuciones le van a dar la opción de instalar LILO en su disco duro. LILO es un programa que se instala en el registro maestro de arranque del disco, y está preparado para arrancar varios sistemas operativos, entre los que se incluyen MS-DOS y Linux, permitiéndo elegir qué sistema quiere arrancar en cada momento.

LILO

El gestor de arranque de Linux es apto para su instalación en el MBR .LILO tiene acceso a ambos discos duros que se pueden acceder en modo real y por su manera de instalación es capaz de encontrar todos los datos que necesita en los discos duros sin tener información acerca de la partición. Es por eso que existe también la posibilidad de iniciar sistemas operativos desde el segundo disco duro. En comparación al proceso de arranque de DOS, se ignoran los datos en la tabla de particiones.

Pero la mayor diferencia respecto al arranque tipo DOS es la posibilidad de elegir entre diferentes sistemas operativos, siendo uno de ellos Linux. Después de la carga del MBR en la memoria RAM se ejecuta LILO, que permite al usuario elegir de una lista de sistemas operativos instalados.

¿Qué es LILO y qué sabe hacer?

LILO es un gestor de arranque universal. Es capaz de cargar y arrancar durante el inicio los siguientes programas de sistema:

o Sectores de arranque de particiones (Inicio de un sistema operativo

desde esa partición)

o Kernel de Linux (Inicio de Linux)

La mayoría de los otros gestores no saben hacer lo segundo. Además existe la posibilidad de pasar con LILO una línea de comando al kernel de Linux. Por razones de seguridad es preferible proteger total o parcialmente los servicios de Linux.

¿Cuál es la apariencia del arranque con LILO?

Cuando LILO se inicia, aparecen el texto LILO y un saludo en pantalla, que se ha definido durante la configuración. Después aparece el prompt: boot:

Al introducir aquí un nombre se selecciona el sistema operativo, que arranca inmediatamente después. Los nombres de los sistemas operativos se configuran con anterioridad. En este momento es posible pasar una línea de comando al kernel de Linux. El listado de los nombres dados a los distintos sistemas operativos aparece pulsando Tab.

¿Qué partes conforman LILO?

La maquinaria de arranque de LILO se compone de las siguientes partes:

Un sector de arranque tipo LILO con un comienzo del código de LILO (''primera fase'') que activa el LILO real.

El código máquina de LILO (su ''corazón''). Se encuentra normalmente en: /boot/boot.b

Un fichero map, que genera LILO durante su instalación y que contiene información sobre la ubicación del kernel de Linux y de otras informaciones adicionales. Se encuentra normalmente en: /boot/map

Opcional: un fichero de mensaje, cuyo contenido se muestra antes de la selección de arranque como mensaje de saludo. Se encuentra normalmente en: /boot/message

Los distintos kernel de Linux y sectores de arranque, que LILO debe ofrecer para el arranque.

¿Dónde se puede instalar LILO?

Durante la fase de arranque del sistema solamente se puede acceder a estas zonas físicas debido a las restricciones de los drivers de la BIOS. Por lo demás, el acceso se restringe generalmente también a los dos primeros discos.

Además la existencia de disco (E)IDE excluye a los del tipo SCSI de la posibilidad de arrancar.

Solo las BIOS más recientes permiten el acceso a dispositivos adicionales. Por ejemplo en combinación con controladores EIDE hay acceso hasta 4 discos EIDE.

Para simplificarlo se resume todo bajo la clave Límite de 1024 cilindros; en todo caso, se debe considerar este hecho durante la fase de particionar antes de la primera instalación de Linux.

Existen los siguiente lugares para instalar el sector de arranque de LILO:

o En un disquete. Este es el método más seguro pero a su vez el más lento para arrancar con LILO.

o En el sector de arranque de una partición Linux primaria del primer disco duro

Esta variante no toca el MBR. Antes de arrancar hace falta marcar la partición con fdisk como activa. Si Linux se encuentra completamente en unidades o particiones lógicas del segundo disco duro, entonces para LILO solo queda el sector de arranque de la partición extendida en el primer disco (si este existe). Con Linux fdisk se puede activar también esta partición.

Este procedimiento resulta un poco complicado cuando se desea arrancar varios sistemas operativos desde el disco duro. Antes de cambiar de sistema operativo hace falta desactivar, bajo el sistema operativo actual, la partición de arranque del mismo y activar la del sistema a arrancar.

o En el Master Boot Record. Esta variante ofrece máxima flexibilidad. Se trata especialmente de la única posibilidad de arrancar Linux desde el disco duro, cuando todas las

particiones de Linux se encuentran en el segundo disco y no hay ninguna partición extendida en el primero. La modificación del MBR conlleva el riesgo de efectuarse indebidamente. o Si se ha usado hasta ahora otro gestor de arranque y se quiere seguir usando el mismo, existen, según sus capacidades, un par de posibilidades más. Un caso muy frecuente: Tiene una partición primaria en el segundo disco y desde allí quiere arrancar su SuSE Linux; suponiendo además que el ''otro'' gestor de arranque puede iniciar esa partición. En este caso puede hacerlo instalando LILO en el sector de arranque e indicando al otro gestor que la partición se puede arrancar.

Configuración de LILO

Muchas veces el ordenador es compartido por varias personas que no quieren saber nada de LILO ni de Linux y lo único que quieren es que se inicie su sistema operativo sin problemas.

Para ello se puede configurar LILO para que inicie un sistema operativo por defecto, esto se hace entrando en el sistema como root y escribiendo la orden: lilo -D dos -d 50

Con lo que se configura DOS como sistema operativo por defecto y que cargue este a los 5 segundos de no pulsar ninguna tecla. Suponiendo claro, que se haya definido así el nombre de la partición.

Este proceso puede hacerse también editando el archivo de configuración de LILO /etc/lilo.conf que para este momento debe lucir como:

boot=/dev/hda

map=/boot/map

install=/boot/boot.b

prompt

timeout=50

default=linux

image=/boot/vmlinuz-2.2.12-20

label=linux

initrd=/boot/initrd-2.2.12-20.img

read-only

root=/dev/hda1

other=/dev/hda3

label=dos

Donde se puede observar el timeout en 5 segundos (en décimas de segundo) y el default que es el sistema Linux y los dos párrafos para cada uno de los sistemas identificado por un label. Puede cambiar el default a dos y salvar el archivo. Una vez salvado es necesario que corra # /sbin/lilo para activar los cambios. Sea cuidadoso con estos cambios ya que pueden terminar dañando su instalación.

Para configurar LILO también se puede usar una de las herramientas de configuración mas poderosas que tiene Linux, conocida como linuxconf. Esta nos permite realizar virtualmente todas las labores de administración por consola, interfaz gráfica o por red. Para este caso usaremos la interfaz de red.

Bienvenida a Linuxconf fig_linuxconf_bienvenida width=10cmimages/linuxconf_bienvenida.eps

Es conveniente resaltar que para entrar a linuxconf por red, es necesario usar el password de root y esto es una posible hueco de seguridad. No lo haga a menos que este seguro de no ser ``escuchado'' por la red.

Una vez se ha entrado, se va a Modo de Arranque y se tiene la configuración de LILO. Se divide en tres grupos

  • Configurar

    • Valores por defecto de LILO

    • Configuraciones de LILO

    • Configuraciones de otros OS bajo LILO

  • Cambiar

    • Configuraciones de arranque por defecto

  • Agregar

    • Un kernel nuevo

    • Un kernel que Ud. compiló

    • Modo de arranque por defecto

Inicio con LILO

Una vez instalado Linux, este será el sistema operativo que se inicie por defecto. Para escoger otro sistema operativo habrá que escribir el nombre que se le puso a la partición en el LILO (Linux Loader). Este aparecerá una vez el sistema ha sido reiniciado, y el computador haya revisado el hardware:

LILO boot:

LILO tardará 10 segundos, dando la oportunidad de escoger el sistema por el cual el computador arranca. Usando la tecla [tab] se puede ver las opciones disponibles. Con la tecla [return] arranca en el sistema que se colocó por defecto. Según lo que se ha hecho hasta ahora, se escribe Linux para arrancar LINUX y dos para DOS/Windows.

Si LILO inicia tan rápido el sistema operativo que tenga por defecto que no se tiene tiempo de escribir nada, o cuando se escribe no aparece nada en pantalla, se pulsa la tecla shift (la tecla de las mayúsculas de la derecha).

Entrando al sistema

La primera vez que arranque Linux mostrará su bienvenida conocida como login. En ella se identifica la máquina y se pide al usuario que el corresponda con un nombre y una palabra clave.

Si no escogió una interfaz gráfica se presentará una línea como la que sigue:

Red Hat Linux release 6.1 (Cartman)

Kernel 2.2.12-20 on i386

localhost login:

Se va a usar el usuario root, ya que se van a realizar tareas de administración. Se introduce root y la palabra clave que se asignó en la instalación de Linux. Mientras se teclea la clave se puede observar nuevamente que las pulsaciones no son mostradas en pantalla, esto es para evitar que alguien que esté observando la pantalla pueda ver una clave ajena.

El login gráfico aparte del ingreso al sistema, permite realizar varias operaciones adicionales. En la ventana de login se presenta un menú con el que se puede escoger con que sistema de ventanas iniciar Session (KDE, Gnome o AnotherLevel); el Lenguaje: Español esta como opción y operaciones del sistema como reiniciar o apagar.

Login gráfico fig_login_grafico width=10cmimages/gdmss.eps

Una vez ha concluido este proceso se esta identificado para el sistema operativo. En este momento Linux aceptará ordenes escritas (poco a poco se ira viendo qué órdenes acepta Linux) y responderá en función de quién sea el usuario del terminal.

Reiniciación del sistema

Una de las características de Linux es que utiliza la memoria RAM del ordenador para guardar aquellas zonas del disco duro que son utilizadas más frecuentemente. Esta técnica permite acelerar los accesos a ficheros, ya que los datos leídos una vez del disco duro son tomados directamente de la memoria en las siguientes lecturas. A su vez las escrituras en ficheros no son realizadas directamente sino que son guardadas en memoria y se llevan a cabo cuando el sistema esta poco ocupado.

Por ello no es recomendable apagar un ordenador corriendo Linux sin antes advertir al sistema de alguna forma que se prepare para ser parado. Si se le advierte antes el sistema descargará la información que tenga en memoria salvándola en el disco duro, además mandará una señal de terminación a los procesos que se encuentren ejecutándose en ese momento para que finalicen.

Para informar a Linux que se desea parar el sistema y apagar el ordenador se utiliza la orden halt, el sistema entonces realizará diversas funciones preparándose para la parada de la máquina. Sólo cuando el sistema indique en la pantalla:

The system is halted

System halted

Se podrá apagar el ordenador.

Es posible que se desee reiniciar el ordenador en lugar de apagarlo, entonces la orden shutdown -r now parará el sistema y después reiniciará el ordenador. Un atajo a esta orden es pulsar las teclas CRTL-ALT-SUP a la vez, tendrá el mismo efecto.

Las interfaces gráficas, tanto KDE como Gnome permiten hacer halt y reboot en el momento que un usuario termina la sesión (logout) .

También es posible realizarlo desde el login gráfico. En el menú superior, presione System y este le permitirá seleccionar cualquiera de estas dos tareas.

Sesión con gdm fig_gdm width=7cmimages/gdm.eps

Este es el proceso que se debe seguir siempre para apagar el ordenador cuando esté funcionando con Linux. Es posible, sin embargo, que sea imposible apagar Linux adecuadamente, como por ejemplo por un corte de luz en medio de una sesión con Linux. Linux es capaz de resistirlo y comprobará automáticamente la integridad del sistema de archivos la próxima vez que se inicia, pero es posible que se pierdan alguno de los datos que nunca llegaron a escribirse en disco.

Puede ocurrir en ciertas ocasiones que el proceso no sea tan transparente y en el momento de chequear la integridad el sistema pida la contraseña de root y se niegue a continuar. Esto ocurre cuando las reparaciones son serias y el sistema no se atreve a realizarlas automáticamente. Ingrese la palabra clave de root y haga una revisión del disco manualmente usando el comando e2fsck y el nombre del disco en problemas de la siguiente forma

# e2fsck /dev/hda3 y siga las reparaciones cuidadosamente. Puede que sea afortunado y nada del sistema se haya dañado y simplemente cuando termine, salga de la cuenta con exit y la máquina se reiniciará.

Cerrando el Sistema

Cerrar un sistema Linux tiene algo de truco Nunca se debe cortar la corriente o pulsar

el botón de reset mientras el sistema esté ejecutándose. El núcleo sigue la pista de la entrada / salida a disco en buffers de memoria. Si se reinicia el sistema sin darle al núcleo la oportunidad de escribir sus buffers a disco, se puede corromper los sistemas de ficheros.

En tiempo de cierre se toman también otras precauciones. Todos los procesos reciben una señal que les permite escribir y cerrar todos los ficheros).

Los sistemas de ficheros se desmontan por seguridad. Si se desea, el sistema también puede alertar a los usuarios de que se está cerrando y darl la posibilidad de desconectarse.

La forma más simple de cerrar el sistema es con el comando shutdown. El formato del comando es

shutdown <tiempo> <mensaje-de-aviso>

El argumento <tiempo> es el momento de cierre del sistema (en el formato hh:mm:ss), y <mensaje-de aviso> es un mensaje mostrado en todos los terminales de usuario antes de cerrar. Se le puede suministrar la opción -r a shutdown para reiniciar el sistema tras el cierre.

El comando halt puede utilizarse para forzar un cierre inmediato, sin ningún mensaje de aviso

ni periodo de gracia. Halt se utiliza si se es el único usuario del sistema y se quiere cerrar el sistema y apagarlo.

Configuración de servicios

Configuración de la impresora bajo Linux

En versiones anteriores a la 6.1 el proceso de configuración de la impresora se realizaba durante la instalación. No importando el momento, la información y el proceso es bastante similar. Por supuesto, se supone que se ha escogido durante la instalación el soporte para impresión.

Para la configuración de la impresora se usará printtool, herramienta propia de la distribución Red Hat (Mandrake). Es posible llegar a ella usando el centro de control de Red Hat: control-panel.

Herramienta para configurar impresoras: Printtool fig_printtool width=7cmimages/printtool.eps

Linux puede utilizar impresoras conectadas al computador que se esta utilizando o impresoras remotas en otros computadores, utilizando diversos protocolos: LPR (Unix), SMB (MS-Windows) y NCP (Novell Netware. Se escogerá una impresora local.

Printtool tratará de detectar el dispositivo donde se encuentra conectada la impresora, que por defecto es el primer puerto paralelo conocido como /dev/lp0.

Aparecerá entonces la ventana de configuración con todos los valores excepto el filtro (o driver) a usar. Estos valores son: el Nombre: lp por defecto; el limite de tamaño de archivo a imprimir (0 no limite) y el directorio donde se guardaran los trabajos de impresión mientras esperan a ser impresos (Spool directory. Se aceptan estos valores propuestos como buenos.

Filtros (drivers) para las impresoras fig_filtros_impresora width=10cmimages/printtool_filter.eps

La instalación presentará una lista de impresoras, seleccione la correspondiente o la que mas se parezca al modelo. Una vez seleccionado el modelo de impresora, habrá que configurar el tipo de papel y la resolución de la misma. El tipo de papel que se usa comúnmente en América es Carta (Letter) y en Europa es DIN-A4; la resolución la que se crea más conveniente.

Se puede ver una casilla que pregunta si se desea que se repare el efecto escalera (Fix stair-stepping of text). El efecto escalera es un problema que se producen con ciertas impresoras preparadas para trabajar con DOS, el efecto consiste en que cada nueva línea que se imprime bajo Linux en una impresora empieza justo debajo de donde terminó la anterior. Saber a priori si la impresora que se va a utilizar producirá el efecto escalera es complicado, la lectura del manual de la impresora puede ayudar, pero la prueba de la verdad no se sabrá hasta que se imprima por primera vez bajo Linux. Seleccione la opción, si se descubre que se ha cometido un error, siempre se podrá volver a cambiar la configuración. Como ayuda se puede indicar que si se usa una HP seguramente sí sufra el efecto escalera.

Una vez configurada la impresora se presentará una pantalla de confirmación de la configuración. Si estás conforme con esta configuración pulsa en OK.

Es posible realizar pruebas en printtool. En el menú Tests podrá enviar a la impresora seleccionada documentos texto y Postscript (gráficos) para comprobar el desempeño.

Configuración de la interfaz de red

En la etapa de instalación se mencionaron los principios básicos de la configuración de red. En esta sección se mostraran las herramientas disponibles para realizar esta tarea, incluyendo la conexión remota a un ISP (Proveedor de Servicio Internet)

Para Linux (y los demás Unix) por su filosofía de diseño todos los dispositivos son considerados archivos sin demasiado misterio. Por esto la configuración de la interfaz de red es muy similar, no importa si se tiene una tarjeta de red o un módem.

Configuración del dispositivo

Si la tarjeta de red no ha sido configurada, remítase a la configuración del kernel, donde encontrará como configurar un nuevo dispositivo. Para los módems este proceso no es necesario.

En términos sencillos, un módem es un dispositivo conectado a un puerto serial: usualmente COM2 o COM4 (/dev/ttyS1 o /dev/ttyS3) el cual usa un protocolo especial para convertirse en una interfaz de red. Linux le asigna el archivo /dev/modem que, generalmente es un link (acceso directo) alguno de los puertos mencionados. Esto se puede realizar manualmente de la siguiente manera

# ln -s /dev/ttyS3 /dev/modem

Red Hat tiene un pequeño programa que realiza esta tarea conocido como modemtool, el cual viene incluido en el control-panel.

Modem Tool fig_modemtool width=6cmimages/modemtool.eps

El siguiente paso es la configuración de la conexión a la red, no importando que sea tarjeta de red o modem.

Conexión a Internet

La información necesaria para la configuración de red se mencionó en la etapa de instalación y aquí no es diferente, así que solo se mostraran las dos posibilidades para la configuración a Internet vía modem.

Linuxconf puede ser corrido en consola y no es necesario tener ventanas para realizar tareas de administración. Si esta en un shell y quiere correrlo en modo texto use el comando # linuxconf--text . Se puede mover entre opciones y botones con [tabulador] y [flechas] y escogerlas con [barra espaciadora] o [return].

No se deje engañar por las gráficas, estas son realmente en consola de texto, solo que han sido muy bien logradas por los programadores, tal que lucen como ventanas reales de X-window.

Para realizar la configuración de la red entre en las opciones:

Configuración
Configuración de red
Tareas como cliente

Linuxconf en consola para configurar red fig_linuxconf_red width=8cmimages/linuxconf_consola_red.eps

Como solo se tiene un modem, únicamente se necesita configurar la conexión PPP/SLIP/PLIP: presionar Agregar, se escoge el protocolo PPP; Adicione el teléfono, el puerto del modem (/dev/modem), seleccione usa autenticación PAP, su login y su contraseña proveídas por el ISP. Acepte y presione Salir para llegar a la ventana principal.

Interfaz PPP fig_linuxconf_ppp width=8cmimages/linuxconf_console_PPP0.eps

Una vez terminada la configuración de la interfaz, es necesario activarla, y para tal propósito se selecciona

Control
Panel de Control
Panel de Control

Seleccione la interfaz generada PPP0 y se responde afirmativamente a la pregunta de Desea activar el enlace de red? . El sistema debe proceder a llamar y a ejecutar la conexión.

Un proceso similar se lleva a cabo con la herramienta de Red Hat netcfg. En esta están todas los medios necesarios para hacer funcionar la máquina Linux dentro de una red. La única sección necesaria para echar a andar el modem se encuentra en interfaces, en la cual se creará una nueva presionando Add y escogiendo el protocolo PPP.

Netcfg para configurar PPP fig_netcfg_PPP width=9cmimages/netcfg_PPP0.eps

Los valores para el teléfono, login y contraseña deben ser introducidos, así como seleccionar PAP authentication. Después de presionar OK y salvar la configuración. Se tiene una nueva interfaz ppp0. Para activarla solamente presione el botón Activate y este procederá a realizar la llamada y conectarse con el proveedor ISP. En el momento de colgar, simplemente se desactiva la interfaz.

Establecer el nombre del ordenador

Si el sistema Linux recientemente instalado tiene como nombre localhost, y se desea personalizar el nombre del computador, en ambas herramientas de configuración de red permiten asignar el nombre al equipo.

Por completitud, esto se puede realizar en linea de comandos utilizando el comando hostname como root. Si por ejemplo se quiere llamar al computador ordenador irulan basta con escribir el comando hostname irulan.

Gestión de paquetes

Herramientas de administración

Como se mencionó en la instalación, los programas para Red Hat vienen en forma de paquetes comprimidos con extensión rpm. Para la gestión de dichos paquetes, se dispone de varios programas:

En ``línea de comandos'' se utiliza el programa rpm, al cual permite no solo instalar o desinstalar paquetes, sino además puede solicitarse información, verificar dependencias, etc.

En la tabla  aparecen las opciones generales.

Opción

 

Descripción

-i

 

Instala (install)

 

-force

fuerza la instalación

 

-h

Indica el progreso

 

-v

.

-U

 

Actualiza (update)

 

-force

fuerza la actualización

 

-h

hash

 

-v

.

-e

 

Desinstalar (erase)

-q

 

Información (query)

 

-a

Todos los paquetes instalados

 

-i

Información principal

 

-l

Lista de archivos

 

-p

Información de paquetes no instalados

Vemos unos cuantos ejemplos:

Instalar el paquete BitchX-75p3-1.i386.rpm (cliente de irc):

# rpm -ihv BitchX-75p3-1.i386.rpm

BitchX ##################################################

Type install-bitchx to install the configuration files to your

home directory.

#

Ver la información del paquete instalado BitchX:

# rpm -qi BitchX

Name : BitchX

Distribution: Freshmeat RPMs

Version : 75p3

Vendor : Colten Edwards

Release : 1

Build Date : lun 01 mar 1999 21:02:22

Install date: mié 17 mar 1999 17:10:46 CET

Build Host : desktop.infohwy.com

Group : Applications/Communications

Source RPM : BitchX-75p3-1.src.rpm

Size : 2728869

License : GPL

Packager : Ryan Weaver <ryanw@infohwy.com>

URL : http://www.bitchx.org

Summary : Improved color IRC client with built-in scripts

Description :

BitchX is a popular ANSI color ircII client by panasync. It

incorporates various features that would normally require a

script. It's interface is more colorful and cleaner than ircII.

#

Ver la información del paquete BitchX que no está instalado:

# rpm -qip bitchx-75p3-1.i386.rpm

y saldrá la misma información que antes.

Borrar el paquete instalado BitchX:

# rpm -e Bitchx-75p3-1
Existen varios programas para el entorno X-Windows, de fácil utilización. Para GNOME se encuentra gnorpm que presenta una interfaz avanzada y amable.

Manejo de paquetes con gnorpm fig_gnorpm width=10cmimages/gnorpm.eps

Si se esta usando la interfaz KDE se puede utilizar el paquete kpackage con las mismas o similares habilidades de gnorpm.

Manejo de paquetes con kpackage fig_kpackage width=10cmimages/kpackage.eps

Conversión de paquetes

Una de los retos de la administración de paquetes, es la falta de disponibilidad de los programas en los formatos requeridos. Ejm: Los usuarios de Slackware usualmente desean usar paquetes que vienen en formato rpm. Para resolver este problema esta disponible un programa llamado alien para ``línea de comandos'', el cual permite convertir los paquetes a distintos formatos: tgz (utilizado por Slackware), deb (utilizado por Debian) o rpm (utilizado por Red Hat, Mandrake, SuSE y OpenLinux).

Comandos

Comandos de Linux

Los comandos son esencialmente los mismos que cualquier sistema UNIX. En la tablas se tiene la lista de comandos mas frecuentes. En la ultima tabla  se tiene una lista de equivalencias entre comandos Unix/Linux y comandos DOS.

Comandos Linux/Unix de manipulación de archivos y directorios:

Comando/Sintaxis

Descripción

Ejemplos

cat fich1 [...fichN]

Concatena y muestra unos archivos

cat /etc/passwd

cd [dir]

Cambia de directorio

cd /tmp

chmod permisos fich

Cambia los permisos de un archivo

chmod +x miscript

chown usuario:grupo fich

Cambia el dueño un archivo

chown nobody miscript

cp fich1...fichN dir

Copia archivos

cp foo foo.backup

diff [-e]arch1 arch2

Encuentra diferencia entre archivos

diff foo.c newfoo.c

du [-sabr] fich

Reporta el tamaño del directorio

du -s /home/

file arch

Muestra el tipo de un archivo

File arc_desconocido

find dir test acción

Encuentra archivos.

find . -name ``bak'' -print

grep [-cilnv] expr archivos

Busca patrones en archivos

grep mike /etc/passwd

head -count fich

Muestra el inicio de un archivo

head prog1.c

mkdir dir

Crea un directorio.

mkdir temp

mv fich1 ...fichN dir

Mueve un archivo(s) a un directorio

mv a.out prog1

mv fich1 fich2

Renombra un archivo.

mv .c prog_dir

less / more fich(s)

Visualiza página a página un archivo.

more muy_largo.c

less acepta comandos vi.

less muy_largo.c

ln [-s] fich acceso

Crea un acceso directo a un archivo

ln -s /users/mike/.profile

ls

Lista el contenido del directorio

ls -l /usr/bin

pwd

Muestra la ruta del directorio actual

pwd

rm fich

Borra un fichero.

rm foo.c

rm -r dir

Borra un todo un directorio

rm -rf prog_dir

rmdir dir

Borra un directorio vacío

rmdir prog_dir

tail -count fich

Muestra el final de un archivo

tail prog1.c

vi fich

Edita un archivo.

vi.profile

Comandos Linux/Unix más frecuentes:

Comando/Sintaxis

Descripción

Ejemplos

at [-lr] hora [fecha]

Ejecuta un comando mas tarde

at 6pm Friday miscript

cal [[mes] año]

Muestra un calendario del mes/año

cal 1 2025

date [mmddhhmm] [+form]

Muestra la hora y la fecha

date

echo string

Escribe mensaje en la salida estándar

echo ``Hola mundo''

finger usuario

Muestra información general sobre un usuario en la red

finger nn@maquina.aca.com.co

Id

Número id de un usuario

id usuario

kill [-señal] PID

Matar un proceso

kill 1234

man comando

Ayuda del comando especificado

man gcc

passwd

Cambia la contraseña.

passwd

who / rwho

Muestra información de los usuarios conectados al sistema

who

Equivalencia de comandos Linux/Unix y DOS

Linux

DOS

Significado

cat

type

Ver contenido de un archivo.

cd, chdir

cd, chdir

Cambio el directorio en curso.

chmod

attrib

Cambia los atributos.

clear

cls

Borra la pantalla.

ls

dir

Ver contenido de directorio.

mkdir

md, mkdir

Creación de subdirectorio.

more

more

Muestra un archivo pantalla por pantalla.

mv

move

Mover un archivo o directorio.

rmdir

rd, rmdir

Eliminación de subdirectorio.

rm -r

deltree

Eliminación de subdirectorio y todo su contenido.

Otros comandos

date -u mmddhhhhaa cambia la fecha del sistema, ej. 1202120095 es igual a mes 12, día 02,

hora 12:00 y año 1995.

logout sale de la actual sesión.

login sale de la actual sesión.

^D sale de la actual sesión.

Alt+F1 inicia una consola virtual (varias a la vez: F1,F2,F3...)

^C aborta programa en ejecución.

^S paraliza la pantalla.

^Q anula la paralización de la pantalla.

mail nombre envía correo, se finaliza escribiendo un punto en una línea sola.

mail visualiza tu correo, teclea ? para ayuda.

ls -i lista directorios y ficheros con sus i-números.

ls -a lista directorios y ficheros en orden alfabético.

ls -s lista directorios y ficheros con su tamaño en bloque (1 bloque= 512 bytes)

ls -r lista directorios y ficheros en orden inverso.

ls -u lista directorios y ficheros según último acceso.

ls -l lista todos los directorios y ficheros en formato largo.

Head -nº lines selecciona la primera línea (ej. ls|head -1 lines)

cat file file ... visualiza seguidamente los ficheros indicados.

cat file file > file graba los dos archivos en uno.

ln file link crea un enlace a un archivo, los dos contienen el mismo fichero físico, si cambias uno, cambia el otro. Pero si borras uno todavía queda el otro.

comando & hace que el proceso sea desatendido en 2º plano (background).

ps [nº] muestra los procesos desatendidos.

comando ; comando se pueden escribir varios comandos a la vez.

comando > file redirecciona la salida a un archivo.

(comando ; comando) > file redirecciona toda la salida del conjunto a un archivo.

comando >> file redirecciona la salida a un archivo, pero lo añade al final de este.

comando < file > file redirecciona de forma contraria para acabar llevando el resultado a un archivo.

mesg y permite que te escriban los usuarios del sistema.

mesg n prohíbe que te escriban a los usuarios del sistema.

Tty muestra tu número (archivo) de terminal.

write nombre [tty] para comunicarse con un usuario conectado al sistema. Para salir ^D, para indicar al otro el fin del mensaje -oo-, y el fin de la comunicación -oo-. Si el usuario pertenece a otra terminal, se debe indicar. Si el usuario tiene el mesg en no o esta realizando una tarea específica no podremos comunicarnos.

comm [-nº] file file lista las palabras comunes de los dos archivos, en el número se indica la columna a comparar: 0,1,2,3.

diff file file lista las palabras diferentes de los dos archivos.

lpr file imprime el archivo.

tr caracteres caracteres cambia los caracteres por los indicados a continuación. (Ejemplo: tr abc ABC).

tee file muestra los datos en un punto intermedio.

stty información sobre nuestro terminal.

sort file muestra en pantalla el archivo ordenado por la 1ª columna (para indicar la segunda columna añadir +1 y así sucesivamente).

sort file -u muestra en pantalla el archivo ordenado por la 1ª columna sin las líneas duplicadas.

sort file -b muestra en pantalla el archivo ordenado por la 1ª columna ignorando espacios en blanco.

grep -v palabra file busca las líneas que no contienen dicha palabra.
grep -y palabra file busca la palabra en el fichero sin distinguir entre minúsculas y mayúsculas.

uniq file muestra el archivo sin las líneas que estén repetidas.

wc file muestra el número de líneas, palabras y caracteres (en este orden) del archivo.

wc -l file muestra el número de líneas del archivo.

wc -w muestra el número de palabras del archivo.

cal [nº mes] nº año imprime un calendario del mes y/o año indicado. Mes: 1-12, año 1-9999.

newgrp grupo cambia de grupo.

sum file suma las palabras de un archivo.

wall mensaje manda un mensaje a todos los usuarios. (Solo lo recibirán los usuarios que tengan su sistema configurado para poder recibir estos mensajes)

chown nombre file cambia el propietario de un archivo.

chgrp grupo file cambia el grupo del propietario de un archivo.

umask muestra los permisos por defecto de los archivos creados. Ej. 022 entonces 666-022=644, es decir usuario permiso de w, r, grupo permiso de r y lo otros permiso de r.

Comandos en background

Linux, como cualquier sistema Unix, puede ejecutar varias tareas al mismo tiempo. En sistemas monoprocesador, se asigna un determinado tiempo a cada tarea de manera que, al usuario, le parece que se ejecutan al mismo tiempo.

Para ejecutar un programa en background, basta con poner el signo ampersand (&) al término de la línea de comandos. Por ejemplo, si se quisiera copiar el directorio /usr/src/linux al directorio /tmp:

#cp -r /usr/src/linux /tmp &

#

Cuando ha terminado la ejecución del programa, el sistema lo reporta mediante un mensaje:

#

[Done] cp -r /usr/src/linux /tmp

#

Si se hubiese ejecutado el programa y no se hubiese puesto el ampersand, se podría pasarlo a background de la siguiente manera:

Se suspende la ejecución del programa, pulsando Ctrl+Z.

Se ejecutamos la siguiente orden: bg

Lenguajes de programación y utilidades

Linux proporciona un completo entorno de programación UNIX, incluyendo todas las librerías estandard, herramientas de programación, compiladores, depuradores y todo aquello que se espera encontrar en otro sistema UNIX. En el mundo del desarrollo de programas UNIX, las aplicaciones y sistemas suelen ser programados en C ó C++. El compilador estandard de C y C++ para Linux es el GNU gcc, el cual es un avanzado y moderno compilador que permite multitud de opciones. Es también capaz de compilar C++ (incluyendo las características de AT&T 3.0) así como en Objetive-C y otros dialectos de C orientados a objetos.

Además de C y C++ han sido llevados a Linux muchos otros lenguajes de programación tanto

interpretados como compilados, como Smalltalk, FORTRAN, Pascal, LISP, Scheme, Ada.

Además hay disponibles varios ensambladores para escribir código del 80386 en modo protegido. Los lenguajes favoritos de Unix como Perl (el lenguaje de guiones para terminar con todos los lenguajes de guiones) y Tcl/Tk (un procesador de órdenes al estilo del intérprete de comandos incluyendo soporte para desarrollar aplicaciones simples para X Window).

El depurador avanzado gdb también ha sido llevado a Linux. Permite examinar los programas para localizar errores, o examinar la causa de un "cuelgue" usando un volcado del sistema (coredump). gprof utilidad de perfilado que permite obtener estadísticas de prestaciones de sus programas, permitiendo saber en que parte de su programa se va la mayor parte del tiempo de ejecución.

El editor Emacs proporciona un entorno interactivo de edición y compilación para varios lenguajes de programación. Otras herramientas incluyen GNU make e imake, usados para dirigir el proceso de compilación de aplicaciones grandes ó RCS, sistema de control de revisiones.

Linux dispone de librerías compartidas enlazadas dinámicamente, lo que permite a los ejecutables ser mucho menores al enlazar el código de las librerías en tiempo de ejecución. Estas librerías DLL (Dinamically Linked Library) también permiten al programador de aplicaciones sustituir funciones ya definidas con su propio código. Por ejemplo, si un programador desea escribir su propia versión de la función de librería malloc(), el editor de enlaces usaría la nueva rutina del programador en lugar de la que se encuentra en las librerías.

Linux es ideal para desarrollar aplicaciones UNIX, proporciona un moderno entorno de programación con todos los detalles y funcionalidad necesarios. Se soportan varios estandards como POSIX.1, permitiendo a los programas escritos para Linux ser fácilmente llevados a otros sistemas.

Los programadores profesionales de UNIX y administradores de sistemas pueden usar Linux para desarrollar programas en casa y luego transferir los programas a los sistemas UNIX del trabajo. Esto no solo puede ahorrar una gran cantidad de tiempo y dinero, sino que también le permitirá trabajar con la comodidad de su propia casa. Los estudiantes de informática pueden usar Linux para aprender la programación en UNIX y explorar otros aspectos del sistema como la arquitectura del núcleo.

Conceptos básicos

Creación de una cuenta

Antes de poder usar el sistema, deberá configurarse una cuenta de usuario. Esto es necesario,

porque no es buena idea usar la cuenta de root para los usos normales. La cuenta de root debería reservarse para el uso de comandos privilegiados y para el mantenimiento del sistema.

Presentación en el sistema (loggin in)

En el momento de presentarse en el sistema, verá la siguiente línea de comandos en la pantalla:

mousehouse login:

Ahora, introduzca su nombre de usuario y pulse |_Return_|.

Por ejemplo marga

mousehouse login: marga

Password:

Ahora introduzca la palabra de paso. Esta no será mostrada en la pantalla conforme se va

tecleando, por lo que debe teclear cuidadosamente. Si introduce una palabra de paso incorrecta, se mostrará el siguiente mensaje

Login incorrect

y deberá intentarlo de nuevo.

Consolas virtuales

La consola del sistema es el monitor y teclado conectado directamente al sistema. (Como Unix es un sistema operativo multiusuario, puede tener otros terminales conectados a puertos serie del sistema, pero estos no serán la consola). Linux, como otras versiones de UNIX, proporciona acceso a consolas virtuales (o VC's), las cuales le permitirán tener más de una sesión de trabajo activa desde la consola a la vez.

Intérpretes de comandos

Un intérprete de comandos es simplemente un programa que toma la entrada del usuario y las traduce a instrucciones.

El intérprete de comandos es solo uno de los interfaces con UNIX. Hay muchos interfaces posibles como el sistema X Windows, el cual le permite ejecutar comandos usando el ratón y el teclado.

Tan pronto como se entra en el sistema, el sistema arranca un intérprete de comandos y ya se

puede teclear órdenes al sistema.

Cuando se teclea una orden, el intérprete de comandos hace varias cosas. Primero busca

el nombre de la orden y comprueba si es una orden interna.

El intérprete de comandos también comprueba si la orden es un "alias" o nombre sustitutorio de otra orden. Si no se cumple ninguno de estos casos, el intérprete de comandos busca

el programa y lo ejecuta pasándole los argumentos especificados en la línea de comandos.

Si no se puede encontrar el programa con el nombre dado en la orden se muestra un mensaje de error. A menudo se ve este mensaje de error si se equivoca al teclear una orden .

El intérprete de comandos no es solo un intérprete interactivo de los comandos que tecleamos,

es también un potente lenguaje de programación, el cual permite escribir guiones, que permiten juntar varias órdenes en un fichero. El uso de los guiones del intérprete de comandos es una herramienta muy potente que permite automatizar e incrementar el uso de UNIX.

Hay varios tipos de intérpretes de comandos en el mundo UNIX. Los dos más importantes son

el "Bourne shell" y el "C shell". El intérprete de comandos Bourne, usa una sintaxis de comandos como la usada en los primeros sistemas UNIX, como el System III. El nombre del intérprete Bourne en la mayoría de los UNIX es /bin/sh (donde sh viene de "shell", intérprete de comandos en inglés).

El intérprete C usa una sintaxis diferente, a veces parecida a la del lenguaje de programación C, y en la mayoría de los sistemas UNIX se encuentra como /bin/csh.

Bajo Linux hay algunas diferencias en los intérpretes de comandos disponibles. Dos de los

más usados son el "Bourne Again Shell" o "Bash" (/bin/bash) y Tcsh (/bin/tcsh). Bash es

un equivalente al Bourne con muchas características avanzadas de la C shell. Como Bash es un súper conjunto de la sintaxis del Bourne, cualquier guión escrito para el intérprete de comandos Bourne standard funcionará en Bash. Para los que prefieren el uso del intérprete de comandos C, Linux tiene el Tcsh, que es una versión extendida del C original.

El tipo de intérprete de comandos que decida usar es puramente una cuestión de gustos. Algunas personas prefieren la sintaxis del Bourne con las características avanzadas que proporciona Bash, y otros prefieren el más estructurado intérprete de comandos C. En lo que respecta a los comandos usuales como cp, ls..etc, es indiferente el tipo de intérprete de comandos usado, la sintaxis es la misma. Solo, cuando se escriben guiones para el intérprete de comandos, o se usan características avanzadas aparecen las diferencias entre los diferentes intérpretes de comandos.

Caracteres comodín

Una característica importante de la mayoría de los intérpretes de comandos en Unix es la capacidad para referirse a más de un fichero usando caracteres especiales. Estos llamados comodines le permiten referirse a, por ejemplo, todos los ficheros que contienen el carácter ñ".

El comodín "*" hace referencia cualquier carácter o cadena de caracteres en el fichero. Por

ejemplo, cuando usa el carácter "*" en el nombre de un fichero, el intérprete de comandos lo sustituye por todas las combinaciones posibles provenientes de los ficheros en el directorio al cual nos estamos refiriendo.

El proceso de la sustitución de "*" en nombres de ficheros es llamado expansión de comodines y es efectuado por el intérprete de comandos. Esto es importante: las órdenes individuales, como ls, nunca ven el "*" en su lista de parámetros. Es el intérprete quien expande los comodines para incluir todos los nombres de ficheros que se adaptan

Una nota importante acerca del carácter comodín "*". El uso de este comodín no cuadrará con

nombres de ficheros que comiencen con un punto ("."). Estos ficheros son tratados como "ocultos" aunque no están realmente ocultos, simplemente no son mostrados en un listado normal de ls y no son afectados por el uso del comodín "*".

Otro carácter comodín es "?". Este carácter comodín solo expande un único carácter. Luego

"ls ?" mostrará todos los nombres de ficheros con un carácter de longitud, y "ls termcap?"

mostrará "termcap" pero no "termcap.backup".

Organización de los directorios

La mayoría de los sistemas UNIX tienen una distribución de ficheros estándard, de forma que recursos y ficheros puedan ser fácilmente localizados. Esta distribución forma el árbol de directorios, el cual comienza en el directorio "/", también conocido como "directorio raíz". Directamente por debajo de / hay algunos subdirectorios importantes: /bin, /etc, /dev y /usr, entre otros. Estos a su vez contienen otros directorios con ficheros de configuración del sistema, programas, etc.

En particular, cada usuario tiene un directorio "home". Este es el directorio en el que el usuario guardará sus ficheros.

.Linux organiza la información en archivos, los cuales están contenidos en directorios. Un directorio puede contener subdirectorios, teniendo así una estructura jerárquica, como en cualquier otro sistema operativo.

Las nuevas versiones de Linux (incluido Red Hat) siguen el estándar FSSTND (Linux Filesystem Standard) el cual estipula los nombres, la ubicación y la función de la mayoría de los directorios y los archivos del sistema. A continuación se muestra la estructura básica del sistema de archivos de Linux como es definida por FSSTND.

Conociendo esta estructura básica, el usuario/administrador podrá moverse más fácilmente por los directorios, ya que la mayoría de éstos, tienen un determinado uso.

Directorios de Linux más frecuentes:

Directorio

Descripción

/

Raíz (root), forma la base del sistema de archivos.

/boot

Archivos del kernel (compilados).

/bin

Archivos ejecutables esenciales para todos los usuarios.

/dev

Archivos de dispositivos.

/etc

Archivos de configuración.

/etc/rc.d

Archivos de inicialización (Red Hat).

/home

Generalmente, directorios de los usuarios.

/home/ftp

Contenido del servidor FTP.

/home/httpd

Contenido del servidor WWW.

/lib

Librerías esenciales y módulos del kernel.

/mnt

Directorios donde ``montar'' diversos dispositivos temporalmente.

/mnt/cdrom

Directorio donde se ``monta'' el CD-ROM.

/mnt/floppy

Directorio donde se ``monta'' el disquete.

/proc

Información sobre partes del sistema.

/root

Directorio del usuario principal del sistema.

/sbin

Archivos ejecutables para tareas de administración.

/tmp

Temporal.

/usr

Programas, documentación, fuentes,...compartidos por todo el sistema

/var

Archivos variables del sistema, bitácoras, temporales,...

Subdirectorios de usr

Directorio

Descripción

/usr/X11R6

Paquete XFree86 (X-Windows) Release 6.

/usr/bin

Archivos ejecutables para usuarios.

/usr/dict

Listados de palabras (diccionarios).

/usr/doc

Documentación.

/usr/doc/FAQ

F.A.Q. (o P.U.F.).

/usr/doc/HOWTO

HOWTO's.

/usr/etc

Archivos de configuración del sistema.

/usr/games

Juegos.

/usr/include

Archivos de encabezado.

/usr/info

Sistema de información GNU info.

/usr/lib

Librerías

/usr/local

Jerarquía de archivos locales.

/usr/man

Manuales.

/usr/sbin

Archivos ejecutables de administración no vitales.

/usr/share

Datos independientes de la arquitectura.

/usr/src

Código fuente.

/usr/src/Linux

Código fuente del kernel de Linux.

Subdirectorios de var

Directorio

Descripción

/var/catman

Manuales formateados localmente.

/var/lib

Información del estado de aplicaciones.

/var/local

Variables del aplicaciones en /usr/local.

/var/lock

Archivos de cerrojo.

/var/log

Bitácoras del sistema.

/var/named

Archivos del DNS.

/var/nis

Base de datos para NIS (Network Inf. Service).

/var/preserve

Archivos de respaldo después de una caída para vi o ex.

/var/run

Archivos relevantes a programas corriendo.

/var/spool

Colas de trabajos para realizar mas tarde.

/var/spool/at

Archivos creados por comando at.

/var/spool/cron

Archivos creados por comando crontab.

/var/spool/lpd

Archivos de impresora.

/var/spool/mail

Archivos de correo de cada usuario.

/var/spool/mqueue

Archivos de correo de salida.

/var/spool/news

Archivos de noticias de salida.

/var/spool/smail

Archivos de correo de smail.

/var/tmp

Temporal.

Permisos

Linux, como cualquier sistema Unix, es multiusuario, por lo que, los permisos de los archivos están orientados a dicho sistema. Los permisos de cualquier archivo tienen tres partes: permisos del propietario, permisos del grupo y permisos del resto. Así, se ve que un archivo pertenece a un determinado propietario y a un determinado grupo y, dependiendo de los permisos que tenga asociado dicho archivo, se podrá tener acceso a él o no.

Los permisos son de lectura (r), escritura (w) y ejecución (x

Estos permisos llevan “asociado” un número: el cuatro para lectura, el dos para la escritura y el uno para la ejecución. De esta manera, un archivo tiene tres números asignados: propietario, grupo y resto. Por ejemplo, si tenemos un fichero con los permisos 644 correspondería a: el propietario puede leer/escribir, el grupo sólo puede leer y el resto sólo puede leer. Vemos que, para asignar lectura y escritura, basta con sumar lectura(4)+escritura(2).

El comando para modificar los permisos es chmod y tiene la siguiente sintaxis: chmod

permisos archivo(s). Por ejemplo se desea que todos las personas puedan ver escribir sobre el archivo creditos.tex, entonces

# chmod a+w creditos.tex

o su equivalente en números

# chmod 666 creditos.tex


FUniciones del administrador

El rol del administrador de red

Un administrador de red sirve a los usuarios: crea espacios de comunicación, atiende sugerencias; mantiene las herramientas y el espacio requerido por cada usuario, a tiempo y de buena forma (el usuario no debe rogar al administrador); mantiene en buen estado el hardware y el software de los computadores y la(s) red(es) a su cargo; mantiene documentación que describe la red, el hardware y el software que administra; respeta la privacidad de los usuarios y promueve el buen uso de los recursos.

El administrador de red debe conocer las claves de la cuenta root de las máquinas que administra. Desde esa cuenta pueden configurarse servicios y establecerse políticas que afectarán a todos los usuarios. En la mayoría de ejercicios de este grupo de guías requerirá acceso a la cuenta root para prácticar.

Administración de Usuarios

Crea y elimina grupos y usuarios.

Configura el directorio que un usuario nuevo tendrá por omisión.

Jerarquía de Directorios

Conoce la organización de la jerarquía de directorios de GNU/Linux.

Usa los comandos mount y umount y configura opciones de disquette y CDROM en el archivo ` /etc/fstab' .

Maneja permisos y algunos comandos para administrar la jerarquía de directorios (chgrp, chmod, chown, du).

Maneja enlaces simbólicos.

En Unix se emplean archivos o directorios para mantener información pero también para abstraer casi todo el hardware (con archivos o directorios se representan dispositivos, memoria, procesador, etc.). Incluso en la jerarquía de directorios se abstraen recursos compartidos en red (por ejemplo con el protocolo NFS que más adelante se trabajará).

Consecución e Instalación de Software

Sabe donde buscar software para GNU/Linux que pueda solucionar necesidades de la institución.

Puede instalar paquetes rpm y programas distribuidos como fuentes.

Puede configurar rutas de directorios donde el sistema busca bibliotecas.

Puede manejar programas para comprimir y descomprimir archivos.

Usa telnet y ftp para facilitar la administración de varias máquinas en red.

Cada institución educativa es única y emplea software particular para atender sus necesidades. Cuando una institución migra a GNU/Linux se deben buscar reemplazos para el software que antes hubiera. Un administrador de una red GNU/Linux puede colaborar en esta búsqueda y después en la instalación, configuración y migración de datos a la nueva herramienta. Debe buscar software que funcione en su plataforma (consulte los requerimientos del software antes de bajarlo), es recomendable además que se use sólo software libre, pues sólo este tipo de software asegura que habrá más software libre y que se mantendrá la cooperación y la libertad en el futuro.

Una vez se consiga software que solucione una necesidad de una institución, se debe instalarlo y configurarlo. Es posible que se disponga de las fuentes comprimidas o de un archivo rpm o deb. En Redhat la instalación de un rpm se hace con facilidad empleando gnomerpm, en Debian los deb se instalan con dselect y dpkg. Para compilar e instalar desde fuentes se debe consultar las instrucciones antes. La configuración de cada herramienta una vez instalada es muy específica, es indispensable consultar la documentación para configurarla y poder usarla bien.

Cooperación y Soporte

Una de las características de GNU/Linux y en general del Software Libre es que proviene y se mantienen de la cooperación. Como usuario o administrador del sistema se podrá disfrutar de esta cooperación, pero además se podrá cooperar para asegurar que el movimiento continúe y mejore. Además está en sus manos difundir entre los usuarios de la red a su cargo la filosofía del Software Libre que usarán a diario e inculcar el valor de la cooperación.

Documentación en Texinfo

Puede crear documentos sencillos en formato Texinfo.

A partir de documentos Texinfo puede generar y ver documentación info, DVI y HTML.

Hay gran variedad de formatos y estándares para escribir documentación: LaTeX, DocBook, HTML. Una de las posibilidades es Texinfo que aunque no es estándar internacional es el formato estándar en GNU. Entre sus ventajas se cuentan: es fácil de aprender y usar; pueden generarse tres tipos de documentos a partir de una fuente en Texinfo. Pueden generarse formatos HTML (para consulta en Internet o en Intranet), DVI (para impresión de alta calidad), info (para consulta local con el comando info). De hecho hay libros enteros generados a partir de fuentes en Texinfo.

Como administrador debe mantener documentación para usted y para los usuarios de la red. Texinfo le será de gran ayuda para lograrlo.

ADMINISTRACIÓN

Creación de un nuevo dominio virtual

A menudo el sistema deberá ser actualizado para alojar a un nuevo dominio virtual. Debido a la gran cantidad de modificaciones de las configuraciones actuales del sistema, la probabilidad de error es elevada. Para intentar evitar esto en la medida de lo posible, a continuación se muestra una especie de recordatorio donde hay todos los pasos a seguir para realizar esta nueva alta.

Para este ejemplo el dominio virtual tendrá el nombre nuevodominio.com.

Creación de una nueva IP Alias

El primer paso será crear una nueva IP Alias para poder asignarle una IP al nuevo dominio virtual. Para realizar esto hay que arrancar el servidor de las X y ejectuar la aplicación Control Panel.

A continuación en el menú "Interfaces" hay que seleccionar el dispositivo correspondiente a la tarjeta de red destinada a encaminar los paquetes TCP/IP hacia Internet. Una vez seleccionado hay que pulsar el botón que dice "Alias". Seguidamente aparecerá una ventanita con el título de la nuevaIP Alias. Ahora sólo queda introducirle el número de IP asignada a este dispositivo virtual. El resto de campos se rellenan automáticamente pulsando la tecla TAB. Es necesario recordar de dejar activada sólo la opción que dice "Activate interface at boot time". Finalmente aceptar todas las ventanas y guardar los cambios efectuados.

Para comprobar que la modificación ha sido correcta, es necesario ejecutar la orden:

ifconfig

Seguidamente aparecerá una información parecida a la siguiente:

lo Link encap:Local Loopback

inet addr:127.0.0.1 Bcast:127.255.255.255 Mask:255.0.0.0

UP BROADCAST LOOPBACK RUNNING MTU:3584 Metric:1

RX packets:63576 errors:0 dropped:0 overruns:0

TX packets:63576 errors:0 dropped:0 overruns:0

eth0 Link encap:10Mbps Ethernet HWaddr 00:E0:29:17:0B:BA

inet addr:195.76.192.2 Bcast:195.76.192.255 Mask:255.255.255.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:344550 errors:0 dropped:0 overruns:0

TX packets:326579 errors:0 dropped:0 overruns:0

Interrupt:5 Base address:0x300

eth0:0 Link encap:10Mbps Ethernet HWaddr 00:E0:29:17:0B:BA

inet addr:195.76.192.10 Bcast:195.76.192.255 Mask:255.255.255.0

UP BROADCAST RUNNING MTU:1500 Metric:1

RX packets:0 errors:0 dropped:0 overruns:0

TX packets:0 errors:0 dropped:0 overruns:0

eth0:1 Link encap:10Mbps Ethernet HWaddr 00:E0:29:17:0B:BA

inet addr:195.76.192.11 Bcast:195.76.192.255 Mask:255.255.255.0

UP BROADCAST RUNNING MTU:1500 Metric:1

RX packets:1 errors:0 dropped:0 overruns:0

TX packets:0 errors:0 dropped:0 overruns:0

eth1 Link encap:10Mbps Ethernet HWaddr 00:00:B4:80:FB:F7

inet addr:10.131.71.2 Bcast:10.255.255.255 Mask:255.255.0.0

UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1

RX packets:42138 errors:0 dropped:0 overruns:0

TX packets:39600 errors:0 dropped:0 overruns:0

Interrupt:12 Base address:0x320

Los dispositivos llamados "eth0:0" y "eth0:1" corresponden a los dominios macrobit.es y nuevodominio.com respectivamente. El resto se sobreentiende.

Configuración del servidor DNS

A continuación y como segundo paso es necesario configurar el servidor DNS para indicarle que se le añade un nuevo dominio virtual.

Antes de nada hay que editar el fichero /etc/named.boot y añadirle las siguientes líneas:

primary nuevodominio.com named.nuevodominio

secondary nuevodominio.com 195.76.192.11 nuevodominiohosts

A continuación hará falta crear el fichero/var/named/named.nuevodominio. Pero para no tener que crearlo de nuevo, se recomienda partir del mismo fichero de cualquier otro dominio virtual del sistema. Hay que tener en cuenta las diferencias de los parámetros del registro SOA entre el dominio español y los dominios americanos.

Seguidamente será necesario añadir la dirección inversa en el fichero/var/named/named.rev:

11 IN PTR ns.nuevodominio.com.

Como último paso, hay que aumentar en una unidad el número de serie del registro SOA del fichero /var/named/named.soa correspondiente al dominio principal del servidor. De esta manera se asegura que las tablas de zonas sean refrescadas la próxima vez.

Finalmente hay que enviar una señal SIGHUP al deamon llamado named de la siguiente manera:

kill -HUP `cat /var/run/named.pid`

Configuración del programa sendmail

El tercer paso está destinado a preparar el programa sendmail para informarle de un nuevo dominio virtual.

El primer fichero a modificar es el/etc/domainaliases, y se le añade la siguiente línea:

info@nuevodominio.com nuevodominio@nuevodominio.com

El siguiente fichero a modificar es el/etc/sendmail. cf, y se le añade la siguiente línea:

Cw nuevodominio.com

Finalmente, se genera la nueva base de datos legible por Senmail de la siguiente manera:

makemap hash domainaliases < domainaliases

makemap btree domainaliases < domainaliases

Para que estas modificaciones tengan efecto inmediato, es necesario enviar una señal SIGHUP al daemon de la siguiente forma:

kill -HUP `cat /var/run/sendmail.pid | head -1`

Configuración del programa Apache

El cuarto paso está destinado a informar al servidor de Web Apache sobre el nuevo dominio virtual.

El único fichero de configuración que hay que modificar es el /etc/httpd/conf/httpd.conf, y se le añade las siguientes líneas:

<VirtualHost www.nuevodominio.com>

ServerAdmin info@nuevodominio.com

DocumentRoot /mnt/empresas/nuevodominio

ServerName www.nuevodominio.com

ErrorLog /var/log/httpd/nuevodominio.com-error_log

TransferLog /var/log/httpd/nuevodominio.com-access_log

CustomLog /var/log/httpd/nuevodominio.com-agent_log "%{user-agent}i"

</VirtualHost>

Finalmente y para que estas modificaciones tengan efecto inmediato, hay que enviar una señal SIGHUP al daemon de la siguiente forma:

kill -HUP `cat /var/run/httpd.pid`

Creación de los ficheros para el programa Analog

El quinto paso es crear los correspondientes ficheros del dominio virtual para el programa Analog:

/var/analog/nuevodominio-m.cfg

/var/analog/nuevodominio-a.cfg

A continuación es imprescindible añadir las rotaciones de los ficheros de logs generados por el servidor de Web. Esta modificación se realiza dentro del fichero

/etc/logrotate.d/analog:

# NUEVODOMINIO.COM

/var/log/httpd/nuevodominio.com-access_log {

monthly

rotate 12

postrotate

/usr/bin/killall -HUP httpd

endscript

}

/var/log/httpd/nuevodominio.com-agent_log {

monthly

rotate 12

postrotate

/usr/bin/killall -HUP httpd

endscript

}

/var/log/httpd/nuevodominio.com-error_log {

monthly

rotate 12

postrotate

/usr/bin/killall -HUP httpd

endscript

}

Creación del usuario al sistema

Finalmente. sólo hará falta crear el usuario dentro del sistema mediante el script /urs/local/bin/altas.

Administración de una red LAN con GNU/Linux

Es importante conocer:

-Algunas de las posibilidades que puede aprovechar al tener GNU/Linux en una red LAN.

-Conceptos básicos de redes TCP/IP así como del esquema cliente-servidor.

-Planear e instalar una red LAN de PCs con GNU/Linux, de acuerdo a la Plataforma de Referencia.

-Conocer y poder instalar y configurar clientes y servidores para: ftp, telnet, finger, talk, smtp, http, NIS y NFS de acuerdo a la Plataforma de Referencia.

Redes y Protocolos

LAN es acrónimo de Local Area Network, con este término se hace referencia a redes pequeñas (comúnmente menos de 100 computadores) cuyos computadores están generalmente en un mismo espacio físico. Un protocolo es una serie de reglas que indican como debe ocurrir una comunicación entre dos computadores de una red; las reglas de un protocolo son seguidas por programas que se ejecutan en los computadores interconectados. Muchos protocolos son tipo cliente-servidor, es decir, un programa "servidor" corre en una máquina y diversos programas "clientes" se ejecutan en otras máquinas. Como su nombre lo indica el servidor presta servicios a los clientes que se conectan (a los programas que actúan como servidores en el mundo Unix se les llama daemons). El protocolo más usado en Internet y sobre el que trabajaremos es TCP/IP, a su vez sobre este protocolo hay otros protocolos específicos: HTTP (para transmitir hipertextos HTML), FTP (para transmitir archivos), TELNET (para establecer sesiones en computadores remotos), SMTP (para enviar mensajes de correo entre servidores)

Direcciones y Enrutamiento

En redes TCP/IP (e.g. Internet) los usuarios suelen referirse a máquinas o servicios con nombres descriptivos. Tal facilidad para el usuario final se traduce en muchos detalles que los administradores deben configurar. Cuando un cliente va a enviar información a un servidor especificado por el usuario como un nombre: debe convertirse el nombre del servidor a una dirección IP (DNS), si la IP destino está en otra LAN debe determinarse una ruta entre las dos redes (enrutamiento), una vez llega información a la LAN destino debe convertirse la dirección IP a una dirección Ethernet válida en la LAN (ARP/RARP).

Planeación de la red

Dependiendo del estado de la red que tenga en su institución, deberá hacer diversas actividades que le permitirán configurar la Plataforma de Referencia. Deberá comenzar por planear o replantear su red con las indicaciones dadas en esta guía.

De acuerdo a la Plataforma de Referencia necesitará un concentrador (con suficientes puertos para todos los computadores que tenga), cable 10BaseT (cable de pares trenzados) con conectores RJ-45 y en cada computador deberá tener una tarjeta Ethernet (de 10MB) como NE2000 o compatible con un puerto para un conector RJ-45. El espacio físico en el que esté la red será la primera restricción que debe tener en cuenta. Haga un plano de ese espacio con las distancias a escala, ubique los computadores y diseñe el recorrido de los cables al concentrador. Hay varias recomendaciones que puede tener en cuenta al diseñar el mapa:

Es aconsejable por estética y seguridad que los cables vayan por canaletas (aunque no es indispensable).

La longitud máxima de cada cable (para unir concentrador y computador) es de 100 m.

Busque que los cables/canaletas vayan por las paredes del recinto y estén resguardadas (para evitar que alguien se tropiece).

Adquisición de Hardware

En el mercado encontrará diversos precios y sugerencias distintas a las que se da. Por ejemplo es posible que pueda armar una red con cable coaxial, sin necesidad de concentrador a menor precio. Ese esquema está cada vez en más desuso, su instalación es un poco más difícil (debe poner resistencias de 50ohmios a los extremos del cable) y no escalará tan bien como concentradores en cascada.

Tarjeta de red e Interfaces

Para configurar las interfaces (lo y eth0), se sugiere que se emplee el programa linuxconf o en distribuciones Redhat el programa control-panel. Esos programas aislan en interfaces gráficas la información importante y propagan sus cambios en los archivos de configuración adecuados.
Para hacer la instalación de la tarjeta y lograr que el kernel la reconozca, consultar las indicaciones de la guía Hardware y GNU/Linux.

Instalación de cables y concentrador

Una vez tenga instaladas las tarjetas de red debe conectar los cables a tales tarjetas y al concentrador. Como seguramente tendrá que hacer los cables usted mismo, en esta sección damos instrucciones para que le resulte fácil el proceso. Requerirá unas pinzas especiales para conectores RJ-45 y un probador (tester) para comprobar que fluirá corriente en los cables que haga.

Configuración de servicios básicos

Puede configurar talk, finger, ftp y telnet en cada computador de la red.

Servicio NIS

NIS es un servicio para centralizar nombres de usuarios, claves, directorios personales e información de grupos en el servidor permitiendo que todos los usuarios puedan entrar desde todas las máquinas de la red. Para usar NIS debe escoger un nombre de dominio NIS (puede ser diferente al dominio DNS) y usarlo en los computadores clientes y en el servidor.

En cada cliente debe configurarse el cliente ypbind (por ejemplo con el programa linuxconf), use como dominio NIS el que haya escogido y como servidor ponga la IP del servidor. El proceso se facilitará si instala un rpm que cree los directorios y archivos apropiados y que agregue ypbind en la secuencia de iniciación. En el servidor deberá instalar tanto un rpm de ypbind como uno de ypserv.

Si usa la distribución Redhat, configurar NIS en el momento de la instalación es fácil. Aunque debe hacerlo después de que la red esté conectada, después de haber instalado NIS en el servidor y mientras ese computador esté corriendo.

Después de instalar NIS en su red, puede agregar y eliminar usuarios desde el servidor central con los comandos adduser y userdel. Además después de borrar un usuario debe borrar el directorio que tenía asignado (en/ home).

Servicio NFS

El protocolo NFS permite acceder de forma transparente discos que están en máquinas remotas. Hay muchas posibilidades para usar este servicio, nuestra Plataforma de Referencia lo aprovecha para distribuir información de usuarios (directorio`/ home ´ del servidor) y los programas y documentos disponibles en el servidor (directorios`/usr´ y `/ usr / share ´ ). Así mismo permite aprovechar el espacio de sobra de cada cliente (directorio` / aux ´ .)

Servicio de correo

Hay muchas posibilidades para configurar el servicio de correo de acuerdo al cliente de correo (MUA - Mail User Agent) y al servidor que emplee (MTA - Mail Transport Agent). En nuestra Plataforma de Referencia favorecemos el uso de las solución tradicional de Unix, es decir que el programa mail funcione como MUA. Cualquier otro cliente de correo que pueda leer la cola de correos de` /var / mail ´ o ` / var / spool / mail .

Servicio de Web

La instalación de Apache es en general sencilla y su configuración también con ayuda del programa linuxconf. Si tiene inconvenientes instalando o configurando apache revise: Getting Started with Apache 1.3
http://apachetoday.com/news_story.php3?ltsn=2000-06-1-001-01-NW-DP-LF

sistemas de archivos

Ya se ha visto que Linux accede a los dispositivos mediante archivos (directorios de /dev), y, por este motivo, en Linux no hay el concepto de unidades, ya que todo está bajo el directorio principal. En Linux no se accede a la primera disquetera mediante la orden A: como en DOS sino que hay que ``montarla".

De este modo, tenemos dos conceptos nuevos:

``montar''

Decirle a Linux que se va a utilizar un determinado dispositivo con un determinado sistema de archivos y estará en un directorio especificado. En la tabla  se muestran los sistemas de archivos más comunes en Linux.

Tipo

Descripción

ext2

Sistema de archivos de Linux.

msdos

Sistema de archivos de DOS.

Vfat

Sistema de archivos de Windows 9X (nombres largos).

iso9660

Sistema de archivos de CD-ROM.

Nfs

Sistema de archivos compartido por red (``exportado'').

``desmontar''

Decirle a Linux que se ha dejado de utilizar un determinado dispositivo.

Para ``montar'' un determinado sistema de archivos de un dispositivo, se utiliza el comando mount. La sintaxis es la siguiente:

# mount -t sistema_archivos dispositivo directorio [-o opciones]

donde: sistema_archivos puede ser cualquiera de los que aparece en la tabla ; dispositivo puede ser cualquier dispositivo del directorio /dev o, en el caso de nfs, un directorio de otro ordenador; directorio es el directorio donde estará el contenido del dispositivo y opciones pueden ser cualquiera de la tabla , en el caso de no poner ninguna opción, mount utilizará las opciones por defecto. Una vez ``montado'' el dispositivo, si no se va a volver utilizar se puede ``desmontarlo'' con el comando umount con la siguiente sintaxis:

# umount directorio

Siempre, después de utilizar un dispositivo hay que ``desmontarlo'', para que se almacenen correctamente los datos en dicho dispositivo. Un ejemplo de ello, es el hecho de que, un lector de CD-ROM, que haya sido ``montado'', no se abrirá hasta que no se ``desmonte''.

Opción

Descripción

Rw

Lectura/escritura.

ro

Sólo lectura.

exec

Se permite ejecución.

user

Los usuarios pueden ``montar''/``desmontar''.

suid

Tiene efecto los identificadores de propietario y del grupo.

auto

Se puede montar automáticamente.

async

Modo asíncrono.

sync

Modo síncrono.

dev

Supone que es un dispositivo de caracteres o bloques.

Archivo /etc/fstab

En ocasiones, cuando se tienen varios dispositivos que se suelen ``montar'', se puede ahorrar tener que escribir continuamente la oportuna orden mount, simplemente incluyendo una línea en el archivo /etc/fstab.

El archivo /etc/fstab contiene líneas donde se indica qué dispositivo debe ``montar'', el lugar donde ``montarlo'', así como el sistema de archivos y las opciones (en este archivo, se pueden poner dos opciones más: auto y noauto, que indican si se debe ``montar'' automáticamente al arrancar el sistema o no, respectivamente).

Nombres de archivos

Los archivos son identificados por sus nombres. Por ejemplo, el archivo que contiene una conferencia hablada, puede ser guardada bajo el nombre de archivo `talk.txt´. No existe un formato estándar para los nombres de los archivos, como existe en MS-DOS y otros sistemas operativos; en general, el nombre de un archivo puede contener cualquier carácter (excepto el carácter / ) y es limitado, en su extensión, a 256 caracteres.

A diferencia de MS-DOS, los nombres de archivo en UNIX son sensibles a mayúsculas o minúsculas: `midocumento.txt´ , `MiDocumento.txt´ y `Midocumento.txt´ son considerados como archivos diferentes.

Algunas convenciones en Unix, que si bien no son obligatorias, normalmente es una buena idea seguirlas.

Es costumbre utilizar el formato `nombrearchivo.extension´, para nombres de archivo, en el que la extensión indica el tipo de archivo; por ejemplo, la extensión `txt´ es normalmente utilizada para archivos de texto simple; en tanto que la extensión jpeg es utilizada para gráficos en formato Jpeg, y así. En particular, la aplicación gestor de archivos de Gnome (gmc) utiliza extensiones para determinar el tipo de archivo. Se puede ver todas las extensiones de archivo reconocidas por gmc, escogiendo la opción Editar tipos MIME en el menú Comandos de gmc. la convención estándar en UNIX es que los ejecutables no tienen extensiones.

Los archivos y directorios cuyos nombres comienzan con un punto (.), son normalmente, archivos de configuración, esto significa que estos archivos contienen propiedades y preferencias para varias aplicaciones. Por ejemplo, Gnome guarda todas sus configuraciones en varios archivos en los directorios `.gnome.´ y `gnome-desktop´ en el directorio personal del usuario. Como la mayor parte del tiempo no se necesita editar estos documentos manualmente, ni siquiera conocer su preciso nombre o localización, gmc no suele mostrar estos archivos. Para cambiar la configuración utilizar el diálogo Preferecias.

Los archivos cuyos nombres terminan con (~), por lo general son archivos de soporte (copias de seguridad) creados por varias aplicaciones. Por ejemplo, cuando se edita un archivo `miarchivo.txt´ con emacs, se guarda la versión previa en el archivo `miarchivo.txt~´. se puede controlar si quiere que el Gestor de Archivos GNOME le muestre estos archivos o no en el diálogo Preferencias.

Estructura de directorios

Un directorio es una colección de archivos. Se puede pensar como una "carpeta" que contiene muchos documentos diferentes. A los directorios se les da nombres, por los que pueden ser identificados. Más aún, los directorios se mantienen en una estructura como de árbol, es decir, el directorio puede contener otros directorios. El directorio de más nivel es llamado el "directorio raíz" y denotado por /; que contiene los archivos de su sistema.

Rutas

Una ruta ("path") es realmente como un camino a un archivo. Se puede referir a un archivo por su ruta, la cual se compone del nombre del archivo, precedido por el nombre del directorio que contiene ese archivo. Este, a su vez, es precedido por el nombre del directorio que contiene este directorio y así. Una ruta típica puede ser:”/ home /sasha / talk.txt” que se refiere al archivo `talk.txt´ en el directorio sasha, el cual a su vez es un subdirectorio de `/home´.

El directorio y el nombre del archivo están separados por una sola barra (/). Por esta razón los nombres de los archivos no pueden contener en sí mismos el carácter /. Los usuarios de MS-DOS encontrarán familiar esta convención, a pesar de que en el mundo del MS-DOS se utiliza la barra invertida (\). El directorio que contiene un subdirectorio dado, es conocido como el directorio padre. Aquí el directorio home es el padre del directorio sasha.

Cada usuario tiene un directorio personal, el cual es el directorio aparte que utiliza ese usuario para guardar sus archivos. Normalmente, los directorios personales de los usuarios están contenidos bajo ´/home´, y son nombrados por el usuario que posee ese directorio, por lo que el directorio personal del usuario sasha sería `/home/sasha'.

Nombres de directorios relativos

En cualquier momento, las órdenes son asumidas como relativas al directorio actual de trabajo. Cuando se conecta por primera vez, el directorio de trabajo es el directorio personal para el usuario sasha, esto sería “/home/sasha”. Cuando quiera referirse a un archivo lo puede hacer en relación con su actual directorio de trabajo, en lugar de especificar el nombre completo de la ruta del archivo.

Por ejemplo, si su directorio actual es `/home/sasha´ y tiene ahí un archivo llamado `talk.txt´, puede referirse a éste por el nombre del archivo: una orden como emcas talk.txt a desde el directorio `/home/sasha´ es equivalente a emacs /home/sasha/talk.txt (emacs es un editor extremadamente poderoso para documentos de texto; los nuevos usuarios pueden preferir algo más simple pero para un usuario avanzado, emacs es indispensable).

Si se comienza un nombre de un archivo (como `texto/teoria_campo.txt´) con otro carácter que no sea /, se está refiriendo al archivo en términos relativos a su actual directorio de trabajo. Esto es conocido como una ruta relativa. Por otro lado, si comienza el nombre del archivo con un /, el sistema interpreta esto como una ruta completa esto es, una ruta que incluye la ruta completa al archivo, comenzando por el directorio raíz, /. El uso de una ruta completa es conocido como una ruta absoluta.

Convenciones de ruta

Aquí hay algunas convenciones estándar que puede utilizar en las rutas:

`~/' directorio personal del usuario

`./' directorio actual de trabajo

`../'directorio padre del directorio actual

Uso de mtools

El hecho de tener que ``montar'' y ``desmontar'' puede ser un poco engorroso a la hora de utilizar determinados dispositivos (comúnmente, la disquetera). Por ello, se dispone de las herramientas mtools. Dichas herramientas, utilizan los dispositivos sin tener que ``montar'' y ``desmontar''; y su sintaxis es parecida a la de los programas de DOS.

Comando

Descripción

Mdir

Muestra el contenido del dispositivo dir.

Mcopy

Copia archivos copy.

Mdel

Borra archivos del.

Mformat

Formatea la unidad format.

Mcd

Cambia de directorio cd.

Mmd

Crea un directorio md.

Mrd

Borra un directorio rd.

Permisos

Cada archivo en su sistema tiene un dueño - uno de los usuarios (normalmente el que ha creado este archivo), y un sistema de permisos que regula el acceso a éste archivo.

Para archivos ordinarios, existen 3 tipos de permisos de acceso: lectura, escritura y ejecución ("Read", "Write", "eXecute") ( el último sólo tiene sentido para archivos ejecutables). Estos permisos pueden ser establecidos independientemente para 3 categorías de usuarios: el dueño del archivo, los usuarios en el grupo que posee el archivo y todos los demás. Por tanto si los permisos en un archivo están establecidos para leer y escribir por el usuario sasha, quien es el dueño del documento, y ser leído solo por todos los demás, sólo sasha podrá modificar este archivo.

Todos los nuevos archivos creados llevan algunos permisos estándar, por lo general leer / escribir para el usuario creador y leer sólo para todos los demás. se puede ver los permisos utilizando el Gestor de Archivos de GNOME, presionando el botón derecho del ratón en el archivo, y escogiendo propiedades desplegables, y entonces la pestaña Permisos Utilizando este diálogo, se puede también cambiar los permisos sólo presionar en el cuadrado que representa el permiso para modificar su estado. Por supuesto, sólo el dueño del archivo o el administrador del sistema puede cambiar los permisos de un archivo. Los usuarios avanzados también pueden cambiar los permisos de los archivos cuando se establecen en la creación de los mismos.

Un archivo también puede tener propiedades especiales de permiso como UID, GID y bit "sticky". Estos permisos son sólo para usuarios expertos no los cambie a menos que sepa lo que está haciendo.

Al igual que los archivos, los directorios también tienen permisos especiales. Otra vez, existen 3 posibles permisos: leer, escribir y ejecutar ("Read","Write" y "eXecute"). No obstante, tienen diferente significado: el llamado permiso de "leer" para un directorio, significa permiso para listar el contenido del directorio o buscar un archivo; "escribir" significa permiso para crear y eliminar archivos en el directorio, y "ejecutar" significa permiso para acceder a los archivos en el directorio.

Los permisos otorgados a un archivo dependen de los permisos del directorio en el cual el documento está localizado: para ser capaz de leer un archivo, el usuario necesita tener el permiso de leer para el propio archivo y el permiso "ejecutar" para el directorio que lo contiene. Por tanto, si el usuario sasha no quiere que nadie más vea sus archivos, puede lograr esto eliminando los permisos de ejecución de su directorio personal para todos los demás usuarios. De esta manera, sólo él (y, por supuesto, el administrador "root") podrán leer cualquiera de sus archivos, sin importar cuales sean los permisos individuales de los archivos.

Configuración de la impresora

Red Hat Linux ya no incluye printool. La utilidad printool ha sido reemplazada por printconf. La utilidad printconf mantiene el archivo de configuración, directorios de impresión spool y filtros de impresión.

Para usar printconf se debe ejecutar el sistema X Window y tener privilegios de root. Para iniciar printconf, se utiliza uno de los siguientes métodos:

En el escritorio GNOME, ir a Main Menu Button (en el panel) => Programs => System => Printer Configuration.

En el escritorio KDE, ir a Main Menu Button (en el panel) => Red Hat => System => Printer Configuration.

Escribir el comando printconf-gui en el indicador de comandos de la shell.

Si desea añadir una impresora sin usar printconf, se debe modificar el fichero /etc/printcap.local file. Las entradas de /etc/printpal.local no se visualizarán en printconf pero son leídas, si actualiza su sistema desde una versión previa de Red Hat Linux, el fichero de configuración ya existente se convertirá al nuevo formato usado por printconf. Cada vez printconf genera un fichero de configuración nuevo, el antiguo fichero es guardado como /etc/printcap.old.

Se pueden configurar cinco tipos de colas de impresión con printconf.

Al pulsar el botón Apply guardará cualquier cambio que haya hecho y reiniciará el demonio de impresión. Alternativamente, se puede escoger File => Save Changes y a continuación File => Restart lpd para guardar los cambios y reiniciar el demonio de impresión.

Si una impresora aparece en la lista principal de impresora con el Queue Type configurada como INVALID, la configuración de la impresora pierde requisitos que se pedirán a la impresora para un buen funcionamiento. Para suprimir esta impresora de la lista, se selecciona y se pulse el botón Delete.

Añadir una impresora local

Para añadir una impresora local, se debe hacer click en el botón Add en la ventana principal printconf . A continuación introduzca un único nombre para la impresora en el campo Queue Name. Se puede poner cualquier nombre descriptivo a la impresora, incluso se puede crear un alias pulsando el botón Add junto a la lista de Aliases. El nombre de la impresora y los aliases no pueden contener espacios y deben empezar con una letra a-z p A-Z. Los caracteres válidos son a-z, A-Z, 0-9, -, y _.

Pulsar Queue Type en el menú de la izquierda y elejir Local Printer desde el menú Queue Type. Introducir el dispositivo de la impresora en el campo Printer Device o escogerlo en el menú desplegable.

A continuación, seleccionar el tipo de impresora conectada a su sistema pulsando Printer Driver en el menú izquierdo. Tras haber escogido el modelo de fabricante y el número de la impresora, aparecerá una lista de drivers. Si existe más de un driver para la impresora, escoja el que se prefiera en la lista Printer Driver. Si no se está seguro de cuál utilizar, no cambiar este valor. Pulsar el botón Printer Notes para visualizar notas sobre el driver de la impresora en la base de datos de impresoras Linux.

Pulsar Driver Options en el menú izquierdo tras la selección de un driver para la impresora. Estas opciones variarán dependiendo del driver de la impresora que se haya seleccionado. Las opciones típicas incluyen el tamaño del papel, la calidad de la impresión y la resolución de la impresora.

Pulsar el botón OK button. Aparecerá la nueva impresora en la lista de impresoras en la ventana principal. Pulsar el botón Apply en la ventana principal para guardar los cambios en el fichero de configuración /etc/printcap y reiniciar el demonio de impresión (lpd). Tras haberse efectuado los cambios, es aconsejable imprimir una página de prueba para asegurarse de que la configuración es correcta.

Copias de Seguridad

Los disquetes son utilizados normalmente como medio para copias de seguridad. Si no se tiene una unidad de cinta conectada al sistema, se pueden utilizar disquetes.

También se puede utilizar disquetes para contener sistemas de ficheros individuales _de ésta forma, se puede montar mount el disquete para acceder a los datos contenidos en él.

La forma más simple de hacer una copia de seguridad es con “tar”. Con el comando:

# tar cvfzM /dev/fd0 /

Se hace una copia de seguridad completa de su sistema utilizando el disquete /dev/fd0. La opción "M" de “tar” permite que la copia de seguridad sea una copia multi-volumen; esto es, cuando un disquete está lleno, “tar” pedirá el siguiente. El comando:

# tar xvfzM /dev/fd0

Puede ser utilizado para recuperar la copia de seguridad completa. Este método puede ser utilizado también si se tiene una unidad de cinta (/dev/rmt0) conectada al sistema.

Existen otros programas para hacer copias de seguridad multi-volumen; el programa backflops puede ser útil.

Hacer una copia de seguridad completa del sistema puede ser costoso en tiempo y recursos.

Muchos administradores de sistemas utilizan una política de copias de seguridad, en la que cada mes se hace una copia de seguridad completa, y cada semana sólo se copian aquellos

ficheros que hayan sido modificados en esa semana. En este caso, si el sistema se viene abajo a mitad de mes, sólo tiene que restaurar la última copia de seguridad mensual completa y, después, las últimas copias semanales según el caso.

El comando find puede ser útil para localizar ficheros que hayan cambiado desde una cierta fecha.

Actualización del kernel

Hay ocasiones en las que se quiere o se debe actualizar el kernel, bien para añadirle alguna funcionalidad que no estaba incluida, o bien, para corregir algún error (bug) que tuviese.

En este apartado, se va a ver cómo se realiza este proceso.

Inclusión de las correcciones del kernel

Una corrección patch es un archivo que añade alguna funcionalidad al kernel o corrige algún error, sin necesidad de tener que instalar de nuevo todos los fuentes del kernel.

Aplicación de las correcciones

Pasos a seguir:

Copiar la corrección al directorio /usr/src: cp parche / usr/src. Si el parche está comprimido, descomprimirlo con el programa correspondiente.

Aplicar la corrección: patch - p0 < parche 2 > error long

Recompilar el kernel

En la distribución Red Hat es recomendado usar los parches o actualizaciones oficiales de la casa matriz en formato rpm y no otros porque pueden generar ciertas dificultades en la configuración y en la compilación.

Recompilar el kernel

Pasos a seguir:

Ir al directorio donde están los fuentes de linux (/usr/src/linux): cd /usr/src/linux

Configurar el kernel: make opción, donde opción puede ser:

config

Modo texto.

menuconfig

Modo texto, con ventanas. Kernel menuconfig fig_menuconfig width=10cmimages/kernel_menuconfig.eps

xconfig

Modo gráfico en X-Windows. Kernel xconfig fig_xconfig width=10cmimages/kernel_xconfig.eps

Determinar los archivos que han cambiado y los que necesitan ser compilados de nuevo: make dep

Borrar los archivos antiguos no necesarios: make clean

Crear los módulos: make modules

Instalar los módulos:make modules_install.

Crear el nuevo kernel: make

Instalar kernel: make[opción] donde opción puede ser:

install

Crea kernel por defecto y la coloca en /boot. Luego corre lilo para poder iniciar por el nuevo kernel.

zImage

Crea una imagen comprimida del kernel. Si desea generar un disquete con el kernel para probarlo utilice make zdisk. make zlilo llama lilo para arrancar por este kernel comprimido.

bzImage

Crea una imagen comprimida aún mas pequeña que la opción anterior.

Generalmente, los pasos 3 y 4 se suelen hacer juntos:

Así como los pasos 5 y 6: make modules; make modules_install

Interprete de comandos: Shell

El interprete de comandos es el programa que recibe lo que se escribe en la terminal y lo convierte en instrucciones para el sistema operativo.

En otras palabras el objetivo de cualquier intérprete de comandos es ejecutar los programas que el usuario teclea en el prompt del mismo. El prompt es una indicación que muestra el intérprete para anunciar que espera una orden del usuario. Cuando el usuario escribe una orden, el intérprete ejecuta dicha orden. En dicha orden, puede haber programas internos o externos: Los programas internos son aquellos que vienen incorporados en el propio intérprete, mientras que los externos son programas separados (ej: aplicaciones de /bin,/usr/bin,...).

En el mundo Linux/Unix existen tres grandes familias de Shells como se muestra en la tabla . Estas se diferencian entre sí básicamente en la sintaxis de sus comandos y en la interacción con el usuario.

Tipo de Shell

Shell estándar

Clones libres

AT&T Bourne shell

sh

ash, bash, bash2

Berkeley "C" shell

csh

tcsh

AT&T Korn shell

ksh

pdksh, zsh

Otros interpretes

--

esh, gush, nwsh

Sintaxis de los comandos

Los comandos tienen la siguiente sintaxis:

# programa arg1 arg2…argn

Se observa que, en la ``línea de comandos'', se introduce el programa seguido de uno o varios argumentos. Así, el intérprete ejecutará el programa con las opciones que se hayan escrito.

Cuando se quiere que el comando sea de varias líneas, se separa cada línea con el carácter barra invertida. Además, cuando se quiere ejecutar varios comandos en la misma línea, los separa con punto y coma (;).

Por ejemplo:

# make modules ; make modules_install

En los comandos, también se puede utilizar los comodines:

El asterisco es equivalente a uno o más caracteres en el nombre de un archivo.

Ejm:ls *.c lista todos los archivos con extensión c.

El signo de interrogación (?) es equivalente a un único carácter.

Ejm: ls curso.te?lista el archivo curso.tex completando el último carácter.

Un conjunto de caracteres entre corchetes es equivalente a cualquier carácter del conjunto. Ejm:ls curso_linux.t[aeiou]x lita curso_linux.tex seleccionando la e del conjunto. .

Variables de entorno

Una variable de entorno es un nombre asociado a una cadena de caracteres.

Dependiendo de la variable, su utilidad puede ser distinta. Algunas son útiles para no tener que escribir muchas opciones al ejecutar un programa, otras las utiliza el propio shell (PATH, PS1,...). La tabla muestra la lista de variables más usuales.

Variable

Descripción

DISPLAY

Donde aparecen la salidas de X-Windows.

HOME

Directorio personal.

HOSTNAME

Nombre de la máquina.

MAIL

Archivo de correo.

PATH

Lista de directorios donde buscar los programas.

PS1

Prompt.

SHELL

Intérprete de comandos por defecto.

TERM

Tipo de terminal.

USER

Nombre del usuario.

La forma de definir una variable de entorno cambia con el interprete de comandos, se muestra tcsh y bash siendo los dos mas populares en el ámbito Linux:

bash:

export VARIABLE= valor

tcsh:

setenv VARIABLE valor Por ejemplo, para definir el valor de la variable DISPLAY:

bash:

export DISPLAY=localhost:0.0

tcsh:

setenv DISPLAY localhost:0.0

Alias

Un ``alias'' es un nombre alternativo para un comando. Así, en lugar de escribir el comando propiamente dicho, escribiríamos el alias de dicho comando.

Un alias se puede definir por varios motivos, por ejemplo:

  • Dar nombres familiares a comandos comunes:
    alias md=`mkdir´
    Crearía un alias para el comando mkdir, similar al de DOS.

  • Dar nombres a comandos largos:
    alias tbz2 = `tar- cv - use - compress - progam = bzip2 - f
    Crearía un alias para el comando tar para que use el compresor bzip2 en lugar de gzip.

Redireccionamiento de E/S

La filosofía de Linux/Unix es en extremo modular. Se prefieren las herramientas pequeñas con tareas puntuales a las meta-herramientas que realizan todo. Para hacer el modelo completo es necesario proveer el medio para ensamblar estas herramientas en estructuras mas complejas. Esto se realiza por medio del redireccionamiento de las entradas y las salidas.

Todos los programas tiene por defecto una entrada estándar (teclado) y dos salidas: En ellos se puede sustituir la entrada y salidas estándar por otro dispositivo, es decir, hacer que se lea un archivo que contenga las opciones a ejecutar y un archivo de salida, respectivamente. Por ejemplo:

Entrada:

Se desea realizar una transferencia de archivos por ftp automática. Para ello se va a utilizar el programa ncftp con unas determinadas instrucciones preestablecidas.

Se crea un archivo entrada con dichas instrucciones:

open linuxcol.uniandes.edu.co

cd /pub/linux/utils

get *

quit

y se ejecuta el programa: ncftp < entrada.

Salida:

Se quiere saber los archivos que empiezan por i o I y almacenarlo en un archivo:

ls [iI]* > listado.txt

Tuberías o pipes

En la línea de comandos la integración entre diferentes programas se realiza por medio de la re-dirección de las entradas y salidas a través de pipes o tuberías.

Una tubería o pipe es una combinación de varios comandos que se ejecutan simultáneamente, donde el resultado del primero se envía a la entrada del siguiente. Esta tarea se realiza por medio del carácter barra vertical. Por ejemplo si se quiere ver todos los archivos que hay en el directorio /usr/bin, se ejecuta lo siguiente: ls /usr/bin | more. De este modo, la salida del programa ls (listado de todos los archivos del directorio /usr/bin) irá al programa more(modo paginado, es decir, muestra una pantalla y espera a que pulsemos una tecla para mostrar la siguiente).

Dentro de esta estructura se han construido una serie de programas conocidos como ``filtros'' los cuales realizan procesos básicos sobre textos.

Filtros

Función

sort

Ordena las líneas de un texto

cut

Corta secciones de una línea

od

Convierte archivos a forma octal u otras

paste

Une líneas de diferentes archivos

tac

Concatena e imprime archivos invertidos

tr

Traduce o borra caracteres

uniq

Remueve líneas repetidas

wc

Cuenta bytes, palabras y líneas

Algunos filtros han llegado a ser tan complejos que son en si, un lenguaje de procesamiento de texto, de búsqueda de patrones, de construcción de scripts, y muchas otras posibilidades. Estas herramientas pasan a ser parte de la siguiente sección. Entre ellos podemos mencionar herramientas tradicionales en Linux/Unix como awk y sed y otras mas modernas como Perl.

Programación shell

La programación del shell es una de las herramientas mas apreciadas por todos los administradores y muchos usuarios de Linux/Unix ya que permite automatizar tareas complejas, comandos repetitivos y ejecutarlas con un solo llamado al script o hacerlo automáticamente a horas escogidas sin intervención de personas.

La programación shell en Unix/ Linux es, en cierto sentido, equivalente a crear archivos .bat en DOS. La diferencia es que en Unix/ Linux es mucho mas potente. Estos scripts pueden usar un sinnúmero de herramientas como:

  • Comandos del sistema Linux/ Unix (ejm: ls, cut)

  • Funciones intrínsecas del shell (ejm: kill, nice)

  • Lenguaje de programación del shell (ejm: if/then/else/fi)

  • Programas y/o lenguajes de procesamiento en línea. (ejm: awk, sed, Perl)

  • Programas propios del usuario escritos en cualquier lenguaje.

El lenguaje de programación de cada shell provee de una amplia gama de estructuras de control.

  • For name [ in word ; ] do list; done

  • select name [ in word ; ] do list; done

  • case word in [ pattern [ øpattern ]/1dost) list ;; ]\1dost esac

  • if list then list [ elif list then list ]\1dots [ else list ] Fi

  • $ while list do list done

  • $ until list do list done

  • [ function ] name () { list; }

Archivos de bash

Cada shell posee ciertos archivos donde mantiene su configuración. Estos tiene una jerarquía que va desde el archivo general de configuración del sistema para todos los shells, pasando por el archivo propio del shell, hasta los archivos personales del usuario.

A continuación se muestran los archivos utilizados para especificar opciones dentro de bash. Es importante aclarar que no es necesario que todos estos archivos existan dentro del directorio personal, el sistema posee su configuración por defecto.

Archivo

Descripción

/bin/bash

Ejecutable bash.

/etc/profile

Archivo de iniciación utilizado por los shells.

/.bash_profile

Archivo(s) de inicialización personal

/.profile

utilizado por los shells

/.bash_login

Ejecuta cuando entra al shell

/.bash_logout

Ejecuta cuando sale del shell

/.bashrc

Archivo personal de inicialización del shell.

/.inputrc

Archivo de iniciación individual.

el editor vi

Un editor de texto es simplemente un programa usado para la edición de ficheros que contienen texto, como una carta, un programa en C, o un fichero de configuración del sistema. Mientras que hay muchos editores de texto disponibles en Linux, el único editor que está garantizado encontrar en cualquier sistema UNIX es vi el "visual editor". Vi no es el editor más fácil de usar, ni es muy auto explicativo. De cualquier forma, como es tan común en el mundo UNIX y es posible que alguna vez se necesite usarlo.

En vi no hay menús ni ayudas. Los sistemas de proceso de textos generalmente disponen de formateo de pantallas e impresoras como, por ejemplo, la representación de textos en negrita o subrayada; no es el caso de vi. Hay otros comandos linux que pueden realizar alguna de estas funciones; por ejemplo lp puede imprimir y nroff puede formatear texto.

El editor vi funciona de dos modos: en modo comando o en modo entrada de textos.

En modo comandos las teclas se interpretan como comandos para vi; algunos de los comandos que se usan permite guardar un archivo, salir de vi...

En modo de entrada o entrada de textos las pulsaciones de teclas se aceptan como texto del archivo que esta editando. Cuando vi esta en modo de entrada actúa como un máquina de escribir.

En una sesión de edición se puede intercambiar entre ambos modos.

Explicación del proceso de edición

Se puede editar texto creando uno nuevo o modificando uno existente. Cuando se crea un texto nuevo se almacena en un archivo con un nombre Linux normal.

Cuando se usa el editor el texto se mantiene en la memoria en un ares de almacenamiento llamada memoria intermedia.

Cuando se realizan cambios estos afectan al texto de la memoria intermedia. Para guardar cambios en el disco se utiliza un comando y se pueden guardar cambios en el disco tantas veces como se necesita.

El editor se comunica con el usuario mostrando mensajes de estado o de error. La ultima línea en la pantalla, la línea de estado, acoge los mensajes de Linux.

En modo comando el comando es una sola letra que se corresponde con la primera letra del nombre de una acción. La mayoría de los comandos operan sobre una sola línea o rango de líneas de texto. Las líneas se numeran desde 1 hasta la última línea de la memoria intermedia. Este número es su dirección en la memoria intermedia.

La posición del cursor siempre indica la situación en la memoria intermedia que se edita. Vi tiene varios comandos para mover el cursor.

Inicio de vi, Modificar y borrar

Para iniciar vi se debe escribir el nombre del archivo en el indicador del shell.

Borrado de texto

Desde el modo de órdenes, la orden x borra el carácter debajo del cursor.

Se puede borrar líneas enteras usando la orden dd (es decir, pulsando |_d_|dos veces en una fila).

Para borrar la palabra sobre la que se encuentra el cursor, se usa la orden dw.

Modificar texto

Se puede sustituir secciones de texto usando la orden R.

El uso de R para editar texto es bastante parecido al uso de las órdenes i y a, pero R sobrescribe texto en lugar de insertarlo.

La orden r sustituye un único carácter situado debajo del cursor.

La orden "~" cambia de mayúsculas a minúsculas o viceversa la letra sobre la que se encuentra el cursor.

Ordenes de movimiento

Se puede usar las órdenes h, j, k y l para mover el cursor a la izquierda, abajo, arriba y derecha respectivamente.

Esto es muy cómodo cuando las teclas de cursor no funcionen correctamente.

La orden w mueve el cursor al comienzo de la siguiente palabra; b lo lleva al comienzo de la palabra anterior.

La orden 0 (cero) mueve el cursor al comienzo de la línea actual, y la orden $ lo lleva al final de la línea.

Al editar ficheros grandes, para ir hacia adelante y atrás a lo largo del fichero mostrando una pantalla cada vez. Pulsando |_ ctrl-F _| avanza el cursor una pantalla hacia adelante y |_ctrl-B_| lo lleva una pantalla atrás.

Para llevar el cursor al final del fichero, se pulsa G. Puede también desplazarse a una línea arbitraria; por ejemplo, pulsando la orden 10G llevará el cursor a la línea 10 del fichero. Para desplazarse al comienzo, use 1G.

Se puede asociar órdenes de desplazamiento con otras órdenes como es el borrado.

Por ejemplo, la orden d$ borrará todo desde la posición del cursor al final de la línea; dG borrará todo desde la posición del cursor al final del fichero.

Guardar ficheros y salir de vi

Para salir de vi sin modificar el fichero se usa la orden :q!. Al pulsar ":", el cursor se desplazará a la última línea de la pantalla; está en modo última línea.

En el modo de última línea hay disponibles una serie de órdenes extendidas. Una de ellas es q!, la cual permite salir de vi sin guardar los cambios. La orden: wq salva el fichero y sale de vi.

La orden ZZ (desde el modo de órdenes, sin ":") es equivalente a :wq. Recuerde que debe pulsar <enter> después de introducir la orden para que esta se ejecute en el modo última línea.

Para salvar el fichero sin salir de vi, simplemente use: w.

Editar otro fichero

Para editar otro fichero se usa la orden: e.

Incluir otros ficheros

Si se usa la orden:r Se puede incluir el contenido de otro fichero en el fichero que se está editando.

Ejecutando comandos del intérprete

Para ejecutar comandos del intérprete desde el interior de vi. La orden:r! funciona como

:r, pero en lugar de leer un fichero, inserta la salida de un comando dado en el fichero en la posición actual del cursor.

También se puede salir a un intérprete de comandos desde vi, es decir, ejecutar una orden desde dentro de vi y volver al editor una vez esta finalice. Simplemente para salir del intérprete de comandos se usa la orden exit.

Teclas para grandes movimientos

Para desplazar el curso a la parte superior, medio o inferior de la pantalla se utilizan los siguientes comandos

<Shitf-h> Para ir a la primera linea de la pantalla

<Shitf-m> Para ir a la linea del medio

<Shitf-l> Para ir a la última linea de la pantalla

Deshacer un comando

Pulsar <Esc> para cambiar a modo comando y luego pulsar <u>.El comando deshacer solo puede actuar sobre la orden mas reciente.

Copiar y pegar

Para copiar se utiliza el comando <Shift-y>

Para pegar se utiliza los comandos <p> o <Shift-p>

Showmode

Usando esta opción se puede conocer en que estado(modos) esta vi

Obtener ayuda

vi no proporciona demasiada ayuda de forma interactiva (la mayoría de los programas UNIX no lo hacen), pero siempre se puede leer la página de manual para vi. vi es un "front-end" visual para el editor ex: Es decir, es ex quien maneja la mayoría de las órdenes en el modo última línea. Luego además de leer la página de vi, se debe consultar la de ex también.

El editor emac

Inicio de emacs

Este editor no dispone no dispone de los dos modos básicos que tiene vi. Esto significa que todo lo que se escriba se coloca en la memoria intermedia.

Se utiliza la tecla de control y varios caracteres(usualmente <ctrl.-x> y <ctrl.-c>)y la tecla <Esc > para ejecutar los distintos comandos.

Proporciona la capacidad de editar múltiples memorias intermedias, o archivos, en la misma sesión.

Para iniciar emacs se debe escribir emacs y pulsar <intro>. Se puede obtener ayuda con <Ctrl-h>. A diferencia de vi, emacs posee ayuda en línea e incluso tutórales

Uso de emacs

Se puede editar texto creando uno nuevo o modificando uno existente.

Emacs también utiliza la memoria intermedia por lo que en este sentido tiene varias semejanzas con vi.

Emacs permite edita varias memorias intermedias a la vez lo que permite cortar y pegar texto de una memoria a otra, comparar textos de archivos diferentes o mezclar un archivo dentro de otro. Emacs incluso usa una memoria intermedia especial para aceptar comandos enviar información al usuario, que se conoce como mini memoria intermedia y aparece en la parte inferior de la pantalla. También permite mostrar el contenido de diversas memorias intermedias en sus propias ventanas.

Salida de emacs

Para salir de emacs se pulsa <ctrl.-x><ctrl.-c>, emacs preguntara si se quiere guardar la memoria intermedia, respondiendo con un “y” o “n”.

Si no se ha finalizado la sesión de emacs para se necesita realizar otras operaciones con Linux se puede hacer lo siguiente:

Suspensión de emacs. Se puede suspender emacs con <ctrl.-z> colocándose la aplicación en un segundo plano y proporcionando otro indicador de shell. La reactivación de emacs depende de en que shell se este ejecutando.

Conmutación entre emacs y otras terminales virtuales. Linux proporciona al usuario seis terminales virtuales: por eso tiene seis sesiones diferentes. Se puede pulsar <Alt-Fx> donde Fx es una de las teclas de función del teclado. F1 a F6, para activar otra terminal. Para volver a emacs se repite el proceso.

Deshacer un comando

Se puede deshacer la acción mas reciente pulsando <ctrl.-x><u>. Al usar repetidamente este comando se puede deshacer los cambios realizados en la memoria intermedia.

Escritura de archivos y acción de guardar la memoria intermedia.

Si se quiere guardar el contenido de la memoria intermedia sin salir de emacs se debe pulsar <Ctrl.-x><Ctrl.-s>. Si se inicio emacs sin indicar un nombre al archivo se ha de dar uno si se quiere guardar en el disco para ello se pulse <Ctrl.-x><ctrl.-s>

Acción de guardar como un archivo nuevo

Para guardar un archivo con un nombre de archivo nuevo se debe pulsar <Ctrl-x><Ctrl-w> emacs preguntara el nombre del archivo. Si el comando tiene éxito se vera el nombre, número de líneas y de caracteres del archivo.

Uso de archivos

Si se quiere cargar otro archivo para editarlo, emacs le deja cargar un nuevo archivo dentro de la memoria intermedia actual o le deja cargar un nuevo archivo en una nueva memoria intermedia, dejando solo la memoria intermedia actual. También se permite insertar el contenido de un archivo dentro de la memoria intermedia actual.

Para sustituir la memoria intermedia actual con el contenido de otro archivo se debe pulsar<Ctrl-x><Ctrl-v>. emacs preguntara el nombre del archivo en la mini memoria intermedia pudiendo introducir sólo las primeras letras y pulsar la tecla <Tab>, emacs expande el nombre del archivo para hacerlo concordar con archivos.

Para recuperar un archivo en una nueva memoria intermedia se debe pulsar <Ctrl-x<Ctrl-f>. Se puede cambiar el nombre de la memoria intermedia pulsando <Esc><x>, introduciendo el nuevo nombre de la memoria intermedia y pulsando <Intro>.

Pulsando <Ctrl-x><i> se inserta un archivo dentro de la memoria intermedia actual.

Posicionamiento del cursor

Cuando se edite textos se necesita situar el cursor donde se quiera insertar texto adicional, suprimir texto adicional, suprimir texto, corregir errores…

Los comandos se nominan comandos de posicionamiento del cursor.

Las teclas de la flecha

Se pueden usar estas teclas para situar el cursor pero no en todos los sistemas

Otras teclas de movimiento del cursor

<Ctrl-f> Mueve el cursor una posición a la derecha

<Ctrl-b> una posición a la izquierda

<Ctrl-n> Va al comienzo de la próxima línea, guardando su posición en la línea

<Ctrl-p> Va al comienzo de la línea anterior, guardando su posición en la línea

<Ctrl-a> Va al comienzo de una línea

<Ctrl-e> Va al final de una línea

Algunos comandos sitúan el cursor en relación a las palabras de una línea. Una palabra se define como una secuencia de caracteres separados de otros por espacios o símbolos usuales de puntuación como puntos, interrogantes, comas o guiones. <Esc><f> avanza una palabra y <Esc><b> retrocede una palabras.

Teclas para grandes movimientos

Para desplazarse de pantalla en pantalla lo normal es utilizar <AvPág>. El comando <Ctrl-x><]> avanza una página, <Ctrl-v> avanza una pantalla, <Esc><v> retrocede una pantalla. Para ir rápidamente a la última línea del archivo o memoria intermedia se pulsa<Esc><Shift-.>

Adición de texto

Se debe situar el cursor donde se quiera introducir el texto. Cualquier carácter de texto se agrega a la memoria intermedia. Si se pulse <Intro> se añade una línea a esta memoria. Para agregar una línea de texto por debajo o por encima de la línea actual se usa <Ctrl-o>.

Supresión de texto

Se puede suprimir un carácter, una palabra, un número consecutivo de palabras, todo el texto hasta el final de la línea o la línea entera.

<Ctrl-d> Suprime el carácter en la posición del cursor

<Esc><d> Suprime la palabra sobre la que está el cursor

<Ctrl-k> Suprime desde la posición del cursor hasta el fin de la línea

<Esc><k> Suprime la frase sobre la que está el cursor

<Ctrl-w> Suprime una región marcada

Búsqueda y sustitución de texto

Existe un comando que permite buscar una cadena de caracteres y si se quiere sustituirlos por otros, buscando hacia delante o hacia atrás desde su posición actual en la memoria intermedia.

Existen muchos comandos de búsqueda algunos de ellos son:

<Ctrl-s> Busca hacia delante desde la posición actual

<Ctrl-r> Búsqueda inversa desde la posición actual

<Ctrl-x><s> Repite búsqueda hacia delante

<Ctrl-x><r> Repite búsqueda hacia atrás

Al buscar un texto se puede querer sustituir una palabra o sección de texto para ello se pueden utilizar alguno de estos comandos:

<Ctrl-g> Cancela la operación

<!> Sustituye el resto

<?> Obtener una lista de opciones

<.> Sustituir y salir donde se inició el comando

<y> Sustituir y continuar con operación de sustituir

El sistema X Window

El X Window System es prácticamente un estándar para entornos gráficos de usuario en Unix. XFree86 TM es una implementación libre de servidores X para sistemas Unix

a base de PC (ver http://www.XFree86.org). XFree86 se sigue desarrollando por programadores en todo el mundo, que se unieron en 1992, formando el XFree86-Team. De esta unión surgió en 1994 la empresa The XFree86 Project, Inc. cuyo objetivo es poner XFree86 TM a la disposición de un amplio público y contribuir con el desarrollo e investigación del sistema X Window.

Requisitos de hardware

La documentación que se incluye con su adaptador de video debería especificar cuál es el "chipset" que utiliza. No todos los chipset pueden ser utilizados.

Un problema que se encuentran con frecuencia los desarrolladores de XFree86 es que algunos

fabricantes de tarjetas gráficas utilizan mecanismos no estándares para determinar las frecuencias de reloj a usar en la tarjeta. Algunos de esos fabricante tampoco editan especificaciones que describan cómo programar la tarjeta, o exigen a los desarrolladores que firmen un documento de no-divulgación para poder obtener la información. Esto, obviamente, dificulta la libre distribución del software de XFree86.

La configuración que se sugiere para ejecutar XFree86 con Linux es una máquina 486 con 8

megabytes de RAM por lo menos, y una tarjeta gráfica con un "chipset" adecuado. Para obtener un rendimiento óptimo, se sugiere utilizar una tarjeta acelerada, como las basadas en el "chipset" S3.La máquina necesitará al menos 4 megabytes de memoria física en RAM y 16 de memoria virtual.

Configuración de XFree86

La distribución en binario de XFree86 para Linux puede encontrarse en muchos servidores de FTP. El directorio de XFree86 debería contener los ficheros readme y otras notas acerca de la instalación de la versión actual.

Poner a punto XFree86 no suele ser difícil. Sin embargo, si se va a usar manejadores de "chipsets" aun en desarrollo o se desea obtener el mejor rendimiento o resolución de una tarjeta aceleradora, en configurar a la perfección XFree86 se puede tardar bastante.

Configuración con xf86config

Se necesita una serie de datos para la configuración:

o Tipo de mouse, puerto de conexión y velocidad de transferencia en baudios

o Especificación de la tarjeta de vídeo.

o Especificación del monitor (frecuencias, etc.).

Conociendo estos datos se puede comenzar con la configuración, que solamente puede ser ejecutada por el usuario `root'.

La configuración se inicia con:

tierra:/root # /usr/X11R6/bin/xf86config

Mouse

El tipo de mouse adecuado se selecciona indicando el número al comienzo de la fila. Se trata de una opción necesaria para la activación del botón del medio de algunos mouse de Logitech o para algunos Trackballs.

Después se pregunta por el puerto en el cual está el mouse.

Durante la instalación ya se ha definido un puerto de mouse, así que se puede usar aquí esta definición (/dev/mouse).

Teclado

Ahora viene la pregunta, si se debiese asignar a la tecla izquierda de <Alt> el valor Meta (ESC) y a la derecha de <Alt>el valor ModeShift (AltGr)

Monitor

Ahora hay que especificar el monitor. Los datos críticos son la frecuencia vertical y horizontal que están generalmente documentados en el manual del monitor.

Tarjeta de vídeo/servidor X

Se continúa con la especificación de la tarjeta gráfica usada introduciendo `y' aparece una lista con tarjetas de vídeo preconfiguradas.

Se puede seleccionar de esta lista la definición de una tarjeta indicando el número correspondiente. Las definiciones del banco de datos de tarjetas, contienen información sobre Clock-Chip, Ramdac y el servidor X a usar. Según el caso, se añaden también datos interesantes sobre la tarjeta en la sección Device del fichero XF86Config.

Después de haber especificado la tarjeta viene la selección del servidor X.

Cuando se haya elegido un servidor, aparece una pregunta acerca de la generación de un enlace simbólico del servidor elegido en /usr/X11R6/bin/X.

Al afirmar la pregunta con `y', el programa pide la confirmación para colocar el enlace en /var/X11R6/bin

Aparecerá un menú con los servidores X disponibles para tarjetas aceleradoras, si en la selección anterior se ha escogido `4'. Estos servidores son especiales y soportan las estaciones adicionales de las correspondientes tarjetas. La colocación del enlace supone que el servidor X correcto ya fue instalado durante la instalación del sistema X Window. Después de la selección del servidor X, hace falta especificar la tarjeta gráfica en más detalle.

Después preguntara por un nombre, el fabricante y el tipo de tarjeta gráfica.

Después de haber contestado a esto se puede elegir el Clock-Chip de las tarjetas aceleradas si es que lo llevan. Seleccionando un Clock-Chip ya no se necesitan líneas de Clock, ya que los valores-Clock necesarios pueden ser programados.

Guardar la configuración

Lo mejor es guardar el fichero de configuración de X Window XF86Config en el directorio /etc. Así se asegura también en una red que cada computadora lleve su ''propia'' configuración, incluso cuando varias computadoras comparten el árbol /usr.

Funcionamiento de XFree86

Con el fichero XF86Config terminado, se puede probar ya el servidor X. En primer lugar, hay asegurar que /usr/X11R6/bin está en el path.

El comando para iniciar XFree86 es: startx

Que es un programa que llama a xinit .Este comando arrancará el servidor X y ejecutará los comandos encontrados en el fichero.xinitrc de su directorio home. .xinitrc es un shell-script que contiene los clientes a ejecutar. Si no existe buscará un equivalente en /usr/X11R6/lib/X11/xinit/xinitrc.

Hay muchos programas X disponibles que pueden especificarse en el fichero.xinitrc. Por ejemplo, usando fvwm en lugar de twm, para obtener un desktop virtual, posibilidad de personalizar colores, fuentes, ventanas... En principio puede parecer muy simple el sistema XWindows, aunque con las personalizaciones se descubre lo potente que es.

Ejecución con problemas

No siempre sale perfecta la primera prueba con el servidor X. Suele venir causado por un error en el fichero XF86Config. Normalmente, los valores de reloj del monitor o de la tarjeta han sido mal puestos. Si la pantalla "gira" o los lados están difusos, se trata de un error en los valores para los relojes del monitor. Otra fuente de problemas es especificar mal el "chipset" de la tarjeta de video así como otras opciones de la sección Device de XF86Config. Se debe comprobar también que el nombre /usr/X11R6/bin/X es un enlace simbólico al servidor X que se quiera usar.

Si todo lo anterior no sirve, iniciar X en modo "bare", o sea, con el comando:

X > /tmp/x.out 2>&1

A continuación se puede matar el servidor X (con la combinación de teclas |ctrl|-|alt|-|backspace| y ver el contenido del fichero /tmp/x.out, en el que el servidor X habrá puesto todo tipo de avisos y errores, como los correspondientes a valores de reloj no encontrados en la tarjeta, etc.

Comprobar también los mandos de tamaño de imagen del monitor. Muchas veces hay que re-

tocarlos cuando se entra en X.

GNOME (GNU Network Object Model Environment)

Gnome es un acrónimo de GNU Network Object Model Enviroment, es decir, Ambiente de Modelado de Objetos de Red con Licencia General Pública GNU. El proyecto GNOME es uno de los más grandes avances que pudieron impulsar a Linux no solo como el sistema operativo consentido de los usuarios expertos de PC sino también como un serio competidor en el campo de las PC de escritorio.

Hoy en día, gracias a la aparición de software para GNU/Linux como StarOffice, y al desarrollo de ambientes gráficos como GNOME, se descubre el potencial de Linux como sistema operativo de PC de escritorio.

La configuración del hardware en Linux continua requiriendo de ciertos conocimientos avanzados por parte del usuario, sin embargo este inconveniente es compensado por la aparición de una nueva generación de hardware diseñado para trabajar en cualquier sistema operativo y a las virtudes propias de Linux, es decir, un sistema operativo mucho más estable, confiable y robusto que los sistemas operativos propietarios más populares.

La historia de GNOME se remonta hacia mediados de 1997 cuando el mexicano Miguel de Icaza y un grupo de amigos concluyeron que en Linux hacía falta una interfaz gráfica de usuario fácil de utilizar, además de una interfaz que permitiese al desarrollador de software trabajar con la misma comodidad con la que se hacía en otros sistemas operativos. Fue así, que junto con Federico Mena y otros colaboradores dio inicio GNOME.

GNOME es quizá uno de los mejores ambientes gráficos de ventanas para Linux. Tal ha sido el impacto de GNOME que Redhat opto por Gnome como entorno X Windows predeterminado. Su interfaz gráfica permite al usuario trabajar cómodamente administrando el sistema o manejar archivos y carpetas de un modo similar al utilizado en Windows. Su aspecto estético, por otro lado, es sumamente agradable.

Pueden agregarse applets en la barra de tareas que pueden realizar diferentes funciones que facilitan ciertas operaciones al usuario, incluye una suite de aplicaciones sencillas como libreta de direcciones, cliente de correo electrónico, aplicaciones para la administración y configuración del sistema y algunas aplicaciones más tales como:

Gedit: Una aplicación que permite editar documentos de texto. Trabaja de forma similar a como lo hace Wordpad en Windows.

Gnumeric: Una excelente hoja de calculo que permite realizar varias funciones e incluso permite trabajar con archivos de Microsoft Excel.

Gnotepad: otro editor de texto con mayores funciones, como la capacidad de dar formato al texto.

Gcalculator: una calculadora con funciones avanzadas.

Gimp: Un excelente editor de imágenes con calidad profesional semejante al Adobe Photoshop.

Las principales características de GNOME son:

Recuerda la configuración del escritorio.

Soporta varios lenguajes humanos, de modo que si se desea, pueden agregarse más sin necesidad de cambiar el software.

Soporta varios protocolos de "Drag & Drop" (arrastra y suelta) para una máxima interacción con aplicaciones no desarrolladas para Gnome

Posibilidad de utilizar varios escritorios virtuales, e incluso con configuraciones distintas, que permiten una mejor organización de las aplicaciones en uso.

Tiene un panel, desde donde se inician las aplicaciones.

Posee un escritorio, en donde se pueden colocar las aplicaciones y los datos.

Posee un conjunto de características que hace fácil para las aplicaciones el poder cooperar y coexistir entre si.

Incluye una muy útil herramienta, Linuxconf, que permite controlar fácilmente la configuración del sistema.

Gracias a que ninguno de sus componentes es controlado o susceptible de ser restringido para su modificación o distribución, los programadores no estarán obligados a adquirir un costoso paquete para el desarrollo de aplicaciones comerciales para GNOME. Las aplicaciones para GNOME se pueden desarrollar en una gran variedad de lenguajes de programación. GNOME posee características que permiten al software y aplicaciones interactuar similarmente, sin importar en que lenguaje de programación se implementaron. Del mismo modo, GNOME puede ejecutarse en otros sistemas operativos basados en POSIX, e incluso existe un porte para Microsoft Windows.

Es Software libre con licencia GNU. Esto significa que, además de que se puede distribuir libremente, la instalación incluye el código fuente. Esto significa que si cualquier programador se interesa en desarrollar software para ejecutarse dentro del ambiente GNOME, siempre se podrán consultar los detalles respecto a como se han hecho las cosas e inclusive poder mejorarlas y compartirlas libremente. La licencia GNU garantiza que GNOME, del mismo modo que Linux, siempre podrá distribuirse libremente e instalarse en cualquier número de PC que se desee, sin que persona o empresa alguna puedan restringir su distribución.

KDE (Kool Desktop Environment)

Un agradable ambiente gráfico para X Windows que emula en apariencia y funciones a Windows 95/98. Aunque es un tanto complicado para algunas tareas, resulta una excelente opción para cualquier usuario de Linux. La suite de aplicaciones de KDE incluye herramientas para la configuración y administración del sistema, navegador Web, clientes de correo electrónico (mismo que permite utilizar varias cuentas de correo electrónico), cliente para Chat, terminales Unix, editores de gráficos, editores de texto, juegos, etc.

Gestion de usuarios y grupos

La cuenta root

Los usuarios normales están restringidos normalmente para que no puedan dañar a nadie más en el sistema, sólo a ellos mismos. Los permisos de los ficheros en el sistema están preparados para que los usuarios normales no tengan permitido borrar o modificar ficheros en directorios compartidos por todos los usuarios (como son /bin y /usr/bin).

Estas restricciones desaparecen para root. El usuario root puede leer, modificar o borrar cualquier fichero en el sistema, cambiar permisos y pertenencias en cualquier fichero, y ejecutar programas especiales, como pueden ser los que particionan un disco.

Usuarios

Como se mencionó anteriormente, root es usuario especial que se distingue de los demás usuarios en los poderes que tiene sobre el sistema. Este no tiene ninguna restricción sobre lo que puede hacer en el sistema. Cuando se instala Linux por primera vez la única cuenta que debe existir en el sistema es la del root. Debido al poder de este usuario es peligroso utilizarlo habitualmente para tareas cotidianas que no necesiten los privilegios especiales esta cuenta se debe dejar para las tareas de administración y mantenimiento del sistema.

Para el trabajo cotidiano hay que crear una cuenta personal sin privilegios que proteja al sistema de los posibles errores cometidos. Cada persona que utilice el sistema debe tener su propia cuenta.

Crear usuarios

Con el comando adduser poniendo como ejemplo se crea una cuenta para miguel, miguel en una terminal, crea una cuenta de usuario miguel con los valores por defecto del sistema. El siguiente paso es establecer la clave que usará Miguel, esto se hace con pasad miguel: el sistema preguntará cuál es la que se quiere poner, habrá que introducir dos veces a ciegas la clave.

La sintaxis completa del comando adduser es:

# adduser -u uid -g gid -c nombre -d home -s shell cuenta

donde: uid es el número de usuario, gid el número de grupo, nombre el nombre del usuario (normalmente, nombre y apellidos), home el directorio principal del usuario, shell el intérprete de comandos y cuenta es el nombre que pondremos como login.

Para terminar una sesión se deberá escribir la orden exit, con lo que volveremos al login, hay que hacer notar que terminar una sesión no quiere decir apagar el ordenador ni que Linux deja de funcionar. Simplemente consiste en que un usuario ha abandonado el terminal y lo deja libre para otro usuario, que puede ser el mismo pero con otro nombre.

Ahora que ya está creado el usuario miguel, es posible realizar el proceso de identificación con otro usuario distinto de root. Con lo que ya no es obligatorio trabajar con root.

La herramienta de administración de usuarios kuser del ambiente KDE ofrece una interfaz amable para la administración de usuarios.

Administración de usuarios con kuser fig_kuser width=6cmimages/kuser.eps

Kuser consiste de dos ventanas, la superior muestra todos los usuarios existentes y la inferior los grupos de usuarios. Para adicionar el usuario miguel, se hace doble click en el icono de add en la parte izquierda de la barra superior. Inmediatamente se pregunta el nombre del usuario y se abre una caja de dialogo donde se pregunta toda la información del usuario. No olvide asignar una contraseña y un shell de inicio. En la siguiente página de esta caja de dialogo se encuentran opciones extendidas de administración como activación o fechas limites de uso. En la última puede asignar un grupo de trabajo del usuario. Se recomienda asignar el grupo users y evitar a toda costa el grupo de root u otro grupo de administración.

Borrando usuarios

De forma parecida, borrar usuarios puede hacerse con los comandos userdel o deluser dependiendo de qué software fuera instalado en el sistema.

Grupos

La utilidad de un grupo de usuarios es la de permitir una administración ordenada de permisos sobre un conjunto de archivos. Cada usuario debe tener al menos un grupo que es el principal, pero podemos agrupar en varios grupos a un mismo usuario. Estos serían grupos secundarios.

Cada usuario pertenece a uno o más grupos. La única importancia real de las relaciones de grupo es la perteneciente a los permisos de ficheros, cada fichero tiene un "grupo propietario" y un conjunto de permisos de grupo que define de qué forma pueden acceder al fichero los usuarios del grupo.

Hay varios grupos definidos en el sistema, como pueden ser bin, mail, y sys. Los usuarios no

deben pertenecer a ninguno de estos grupos; se utilizan para permisos de ficheros del sistema. En su lugar, los usuarios deben pertenecer a un grupo individual, como users. Se pueden mantener varios grupos de usuarios como por ejemplo alumnos, clase y instituto.

El fichero /etc/group contiene información acerca de los grupos. El formato de cada línea es

nombre de grupo:clave:GID:otros miembros

En /etc/passwd cada usuario tiene un GID por defecto. Sin embargo, los usuarios pueden pertenecer a mas de un grupo, añadiendo sus nombres de usuario a otras líneas de grupo en /etc/group. El comando groups lista a qué grupos se tiene acceso.

Para evitar el que los usuarios cambien a grupos privilegiados (con el comando newgroup), se pone el campo de la clave a "*".

Se pueden usar los comandos addgroup o groupadd para añadir grupos al sistema. Normalmente es más sencillo añadir líneas a /etc/group uno mismo, puesto que no se necesitan más configuraciones para añadir un grupo. Para borrar un grupo, sólo hay que borrar su entrada de /etc/group.

OTROS COMANDOS

El comando chgrp :

Con este comando podemos cambiar de grupo a un fichero o conjunto de archivos.

Sintaxis:

chgrp  nuevo _ grupo  archivo / os

El comando chown:

Sirve para cambiar de propietario a un archivo o conjunto de archivos.

Sintaxis:

chown  nuevo _ usuario  archivo / os

Conectividad de Linux

Como digno miembro de la familia Unix, el entorno nativo de red en el que ha nacido Linux es el TCP/IP, así que moverse en Internet y en las redes locales basadas en esta familia de protocolos resulta muy fácil. Se puede actuar tanto de simple cliente hasta como una potente estación de trabajo de bajo coste, pasando por un XTerminal con todo su entorno grafico con absolutamente todo el software necesario, ya incluido o de más o menos fácil instalación.

En el nivel físico, Linux puede conectarse con otros Linux o con cualquier otro sistema usando casi cualquier cosa: cableado serie, paralelo, modems convencionales, tarjetas RDSI, Frame Relay, redes locales ethernet ó token ring, radiopaquete (AX.25 para radioaficionados), etc.

En cuanto a protocolos de red, generalmente utiliza TCP/IP, pero puede acceder (como cliente o como servidor, según los casos) a redes basadas en IPX (Novell), AppleTalk (Macintosh) y SMB (red LanManager para conectar con Windows para trabajo en grupo, Windows 95 y Windows NT).

Conectividad

Algunas de las situaciones típicas en las que se puede aprovechar la capacidad de trabajo en red de Linux podrían ser:

Servidor de terminales

Cualquier ordenador con un puerto serie y algún software de emulación de terminal puede conectarse a un Linux, permitiendo varios usuarios trabajando simultáneamente. Es la forma más simple de comprobar por sí mismo que Linux es un sistema 100% multiusuario y multitarea. Todos los recursos de memoria, disco, etc; estarán a la vez disponibles para compartirlos entre tantos usuarios como puertos serie se posean.

Red PPP

Enlazando ordenadores por puertas serie, paralelo, módems, etc, es posible no solamente que un Linux sea el ordenador principal y otros usuarios accedan a través de simples terminales, sino que es posible aprovechar la capacidad de todos los equipos sumando recursos. Desde un equipo se puede acceder a impresoras, discos, etc. de cualquier otro equipo. El protocolo PPP permite crear una red TCP/IP entre todos ellos, usando como enlace tanto módems como simples cables. A medida que se cambie la red física por algo como una LAN ethernet o análogo, mejorarán las prestaciones como es lógico, pero la idea es la misma y el software de usuario son idénticos (lo que varía, claro esta, es la configuración del propio sistema operativo).

Servidor de módems

Combinando los dos apartados anteriores, se puede unir la capacidad de servidor de puertos serie (a los que conectar módems) y el protocolo PPP (para dar a esas líneas serie la funcionalidad del TCP/IP). Así se puede dar servicio de acceso a Internet a los usuarios que se nos conecten por teléfono.

Conexion directa a Internet

Si se tiene una red local enganchada a su vez a un proveedor, entonces una simple tarjeta de red y una simple configuración del sistema serán suficientes para conectar Linux, que actuará como un ordenador Unix cualquiera, con todas sus ventajas. De hecho en la red se encuentra más de un servidor que esconde un Linux, o que precisamente quien nos esté haciendo de proveedor de acceso sea un Linux. Pero hay que tener en cuenta también sus inconvenientes de seguridad: igual que podemos conectarnos desde Linux, es perfectamente posible que se conecten a nosotros inadvertidamente, por lo que, salvo que necesitemos mantener abierto algún servicio en particular, es recomendable cerrar "todas las ventanas" para evitar problemas. Algunos buenos consejos para un Linux de uso personal serían:

  • Crear cuentas para los usuarios que realmente vayan a usarlo, y asignar claves difícilmente adivinables.

  • Hacerse cargo de la clave del administrador root y procurar mantenerla a salvo.

  • Ponerse como root, editar /etc/inetd.conf y ponerle un signo de comentario (#) a todas las líneas excepto aquellas que abran servicios que necesites mantener accesibles; luego hacer "killall -1 inetd".

  • No tener la mala costumbre de usar root como usuario habitual con el que se conecta al sistema, o en caso de despiste se podría provocar algún destrozo. Es más seguro que entrar como un usuario normal.

  • El sistema va dejando muchos mensajes registrando la actividad de los usuarios y del propio sistema en múltiples ficheros de contabilidad. Muchos de ellos se centralizan a través del servicio syslogd. En cuanto se empiece a desenvolver un poco con el manual y los comandos básicos para moverte por el sistema, aprenda a recoger la información que genere ese servicio, eliminar la inútil, revisar la útil y limpiar la contabilidad de vez en cuando .

Infovía: acceso a Internet desde casa

¿Qué es infovía?

Infovía es una red creada por Telefónica a la que los usuarios acceden desde cualquier punto de la red telefónica española a precio de llamada local. Funciona como una intranet (una red basada en los mismos protocolos que Internet, pero independiente y sin integrarse en ella). No tiene por tanto acceso directo a Internet, pero es un buen intermediario ya que abarata costes tanto para el usuario como para el proveedor de acceso a internet, que aprovecha su infraestructura sin tener que invertir en una red propia. En este sentido es una vía interesante de acceso, pero para evitar confusiones hay que tener presente que Infovía no es Internet, sino un producto comercial de Telefónica. Aún después de haberse conectado a Infovía se sigue necesitando un proveedor de acceso a Internet para estar verdaderamente conectados a la red de redes.

Al funcionar igual que Internet (el software de Infovía no es más que un PPP y un navegador de web, que utiliza como interfaz de usuario) es perfectamente posible usar Linux para conectarse, pero surge el problema típico de configuración: Telefónica facilita su software gratuito para entornos comerciales típicos (Windows 3.11, Windows95 y Macintosh) que Linux no necesita (ya lo tiene). Pero Linux lo que necesita es conocer la configuración de su red, para poder integrarse en ella.

¿Cómo conectar entonces?

El software básico es el pppd, que a través del modem creará un enlace TCP/IP entre nuestro ordenador e Infovia. Una vez creado, se puede contactar con el "verdadero" proveedor, quien abrirá las puertas a Internet, y a partir de ese momento ya se puede usar cualquiera de las propias aplicaciones habituales desde Linux. Como complemento de pppd usar una utilidad chat que se encargara de dialogar vía modem con el ordenador remoto al comienzo de la llamada, mientras se establece la conexión. También intervendrán varios ficheros de configuración (unos genéricos de Linux para cualquier conexión TCP/IP, otros característicos de las conexiones a través de PPP y modem, y por último alguno que se usan en el caso concreto de Infovía).

Un inconveniente en la evolución de Linux ha sido un cambio en la implementación del PPP que hace incompatible algunos pppd con algunas versiones del kernel. Si el núcleo está entre 1.2.13 y 1.3.95 se debe usar un pppd 2.1.2d o superior, mientras que se necesitara un pppd 2.2.0e o superior para los núcleos más recientes.

El listado siguiente es un ejemplo del fichero principal de configuración de pppd, en el que a su vez se hace referencia a varios ficheros que se deben crear: identificación y clave facilitada por el proveedor de acceso, el guión de inicio de conexión, y el de cierre y cuelgue del modem. /dev/modem es un enlace que se usa como nombre genérico para el modem, y que debe apuntar al nombre del dispositivo real en el que lo tengamos conectado.

/etc/ppp/options:

modem passive crtscts noipdefault defaultroute

lock lcp-echo-interval 15 lcp-echo-failure 5 mtu 1500

+ua /etc/ppp/infovia.pass

connect "/usr/sbin/chat -v -f /etc/ppp/infovia.chat"

disconnect "/usr/sbin/chat -v -f /etc/ppp/infovia-off.chat"

/dev/modem 38400

/etc/ppp/infovia.pass es un fichero con simplemente dos líneas, una con el login (identificación de usuario) y otra con la clave. Para acceder a Internet introducir en ambos casos lo que indique el proveedor, mientras que si sólo se va a navegar por Infovía (sin salir a Internet) es suficiente con poner infovia como usuario genérico e infovia como clave.

/etc/ppp/infovia.chat contiene el guión que utilizará chat en su diálogo con el modem. Un ejemplo de su contenido podría ser:

TIMEOUT 6

ABORT '\nBUSY\r'

ABORT '\nNO ANSWER\r'

ABORT '\nNO CARRIER\r'

ABORT '\nRING\r\n\r\RING\r'

ABORT '\nNO DIALTONE\r'

'' ATDP055

'CONNECT'

En el ejemplo anterior se usa marcación por pulsos. Si fuera por tonos sustituir ATDP por ATDT. Además, si al número 055 de llamada a Infovía hubiera que añadir algún prefijo de centralita o cualquier otra marcación especial, no hay más que incluirlo en el listado. Por su parte el de cierre de conexión y reseteo del modem sería algo así:

/etc/ppp/infovia-off.chat:

TIMEOUT 3

'' '\r'

'\r' '+++\c'

'\r' ATH0

OK ATH0

OK

Conectar Linux a internet

Para conectar Linux a internet con un modem, RDSI ó modem ADSL, a través de la línea telefónica, necesitamos conectar a un ordenador proveedor de acceso a internet (ISP).

Utilizaremos PPP que ha ido reemplazando a SLIP como protocolo de comunicación en líneas punto a punto. PPP trabaja en diferentes tipos de línea punto a punto entre los que se incluye SONET, X25 y RDSI.

Configuración en modo x

Para hacer la configuración en modo gráfico se utilizan los programas modemtool y kppp que son programas del entorno KDE.

Lo primero que debemos se debe hacer configurar el dispositivo con el cual vamos a hacer la conexión remota al ISP, En este caso vamos a configurar un modem y para ello se ejecuta el programa modemtool en el cual se selecciona en que puerto se tiene conectado el modem. Normalmente los modem externos utilizan el puerto COM2 ó ttys1 y COM1 ó ttys0 y si se trata de un modem interno COM3 ó ttys2 y COM4 ttys3. Se selecciona el puerto y se pulsa Ok.

Ejecutar el programa kppp en el que aparecen 6 solapas:

CONEXIONES/ DISPOSITIVOS SERIE/ MODEM/ PPP/ GRAFICO/ ACERCA

Seleccionar modem donde se hace una consulta al modem y se comprobar así el funcionamiento. Aquí se configuran parámetros del modem.

Ahora pulsar la solapa dispositivos serie y dispositivos del modem donde se selecciona el puerto que utiliza el modem:

/dev/ttys0 COM1

/dev/ttys1 COM2

/dev/ttys2 COM3

/dev/ttys3 COM4

en control de flujo normalmente es XON/XOFF, en terminación de línea CR/LF y en la velocidad de conexión aquella que sea acorde con el modem.

Ahora ir a la solapa conexiones y pulsar en nueva. En la solapa marcar; aquí se introduce el nombre de la conexión ( por ejempo infovia ) el número de teléfono donde se va a conectar por ejemplo 987899000. En la solapa Dirección IP normalmente se selecciona IP asignada por el servidor, salvo que se tenga una IP fija con nuestro ISP. En la solapa servidor de nombres completar las IP correspondientes al servidor de nombre ó DNS. Y salvo algún parámetro que en particular sea necesario entrar por último en la solapa puerta de enlace donde se debe dejar puerta de enlace por defecto.

En la pantalla principal del programa kppp debemos introducir el nombre de usuario y la clave para acceder remotamente a nuestro servidor.

Ya esta básicamente configurada nuestra conexión sólo se debe pulsar la opción conectar.

Configuración con shell

Para conectar se usan unos shell scripts muy sencillos que contienen toda la información necesaria. La forma de iniciar la conexión será llamando al shell script /etc/ppp/ppp-on , y terminar la conexión llamando al shell script /etc/ppp/ppp-off .

Script /etc/ppp/ppp-on

#!/bin/sh

#

# /etc/ppp/ppp-on

#

# Establece una conexión PPP

#

# Dispositivo donde se encuentra el modem.

DISPOSITIVO=/dev/modem

# Velocidad del puerto serie del modem (38400, 57600, 115200)

VELOCIDAD="115200"

# Usuario con el que deseamos autentificarnos en la máquina remota.

USUARIO="BI12345@bankinter"

# Opciones de pppd NO necesarias para el correcto funcionamiento

# Del script de conexión. En cualquier caso son recomendables.

PPP_OPCIONAL="hide-password"

#--------------------------------------------------------------------

# Elegir las opciones de pppd dependiendo del ISP

#

# ISP de Bankinter

# Debería funcionar con la mayoría de ISP's a través de Infobia.

PPP_OPCIONES="modem noipdefault defaultroute lock crtscts"

# Otro ISP

#PPP_OPCIONES=""

#--------------------------------------------------------------------

/usr/sbin/pppd connect \

'/usr/sbin/chat -v -f /etc/ppp/ppp.chat' \

$DISPOSITIVO $PPP_OPCIONES $PPP_OPCIONAL $VELOCIDAD user $USUARIO

Lo primero que se le indica es donde está el modem y la velocidad del puerto serie para que lo pueda usar.
Es muy importante indicar correctamente el identificador de usuario, de otra forma el shell script no nos podrá autentificar en la máquina remota, y por lo tanto no se podrá acceder al servicio.
La ultima parte lanza el demonio pppd y le indica que debe pasarle los comandos al modem a trabes del comando chat.

/etc/ppp/ppp.chat

SAY "\nIntentando conectar con su ISP...\n"

ECHO ON

TIMEOUT 60

SAY "\nEsperaremos hasta 1 minuto para realizar la conexión ... \n"

ABORT "NO CARRIER"

ABORT BUSY

ABORT "NO DIALTONE"

ABORT ERROR

"" +++ATZ

OK ATDT976719050

CONNECT ""

SAY "\n\n\t **** Conexión establecida, intentando identificarnos en la máquina remota\n\n\n"

Este fichero no es ejecutable, son los parámetros del comando "chat" para interactuar con el modem. Aquí se encuentra el número de teléfono del proveedor que debe ser modificado.

/etc/ppp/pap.secrets

#

# /etc/ppp/pap-secrets

#

# Claves para autentificación usando PAP

#

# chmod 400 pap-secrets

#

# hostname * password

infovia * infovia

# client server secret IP addresses

# id@dominio dominio clave

BI12345@bankinter bankinter ABCD1234

#

# Usuarios que no pueden establecer una conexión PPP en ningún caso.

# Substituir "hostname" por el nombre de la máquina.

#

#guest hostname "*" -

#root hostname "*" -

Este fichero no debe poder ser leído por otro que no sea el propietario del fichero, normalmente el superusuario (root). Para asegurar se de esto hacer que el fichero tenga los permisos 400, que quiere decir que este fichero sólo puede ser accedido por el propietario del fichero, y únicamente leído, mediante el comando siguiente:

chmod 400 /etc/ppp/pap-secrets

Esto es tan importante porque aquí es donde se encuentra la clave. Para que no se vea la clave en el momento de la conexión, se usa el parámetro "hide-password" en el "shell script" /etc/ppp/ppp-on.

/etc/ppp/ppp-off

Este "shell script" es normalmente proporcionado en la documentación del paquete "pppd". La documentación de los paquetes puede verse en "/usr/doc".Si por alguna razón no se fuese a usar este "shell script" puede abortarse la conexión de la siguiente forma:

killall -9 pppd

/etc/resolv.conf

#

# /etc/resolv.conf

#

domain bankinter

nameserver 195.aaa.bbb.ccc

nameserver 195.xxx.yyy.zzz

Aquí se indica una vez más el dominio, y las direcciones IP del o los servidores de nombres (DNS).

ACCESO A INTERNET DESDE UN EQUIPO QUE ESTA EN RED UNA LOCAL

Normalmente cuando instalamos linux, por defecto éste introduce los protocolos TCP/IP entre otros. Cuando arrancamos Linux se cargan automáticamente. Si no tenemos TCP/IP ó soporte para tarjetas de red, puertos serie para modem, etc. Deberemos reconfigurar y generar un nuevo kernel que lo soporte.

Para configurar el acceso a internet con un ordenador linux, tenemos dos posibilidades:

1º Configurar en modo X Windows.

2º Configurar en modo consola con los comandos de red.

A continuación se detella la configuración en modo x windows

Configuración en modo X-Windows.

ð Toda la configuración en modo gráfico se ara con los programas (Netconfig) NETCONF ó NETCFG.

Primero se ara la configuración de la(s) tarjeta(s) de red. Normalmente y si ya se contaba con alguna tarjeta de red en el ordenador, cuando se instala linux, la(s) detectará en la misma instalación, y preguntará algunos datos en el caso de que no sean PNP. En ese caso se tendrá que decir el modelo, la irq y el direccionamiento, la IP, y la máscara de RED.

Cuando esto no ocurre, ó cuando se ha pinchado la(s) tarjeta(s) de red con posterioridad a la instalación del paquete ó distribución, lo primero que se debe hacer es configurarla. Para ello ejecutar el programa NETCFG (Network Configurator) y en la solapa INTERFACES añadir la(s) tarjeta(s) de red.

Primeramente nos preguntará el tipo:

PPP, SLIP, PLIP, Ethernet, Arcnet, Token ring, Pocket. También configurar la dirección IP que se quires que utilice y la máscara de red. Se activa y se graba la configuración.

Sí es el primer adaptador de red que se instala, por ejemplo, del tipo Ethernet, la llamará eth0, si es el segundo eth1, si es el tercero eth2, etc.

Ejecutar NETCONF (Configurador de red), donde se encuentra la primera opción INFORMACION BÁSICA DEL EQUIPO, aquí se puede configurar el nombre de la máquina y la configuración completa de cada uno de los adaptadores de red, etc.

Reiniciar el equipo y al arrancar se vera la(s) tarjeta(s) de red y se sabrá si está bien ó mal configurada;

 

Por ejemplo:

eth0 [ OK ]

eht1 [ FAILED ]

eht2 [ PASSED ]

eht3 [ FAILED ]

 

 

ð En el equipo se tendrá cuatro tarjetas de red que sólo dos están físicamente ó están correctamente configuradas.

Después de la configuración de los dispositivos de red, llega el momento de la configuración de la(s) IP, dominios, etc

Configurar el HOSTNAME ó nombre del equipo, el DOMINIO al que pertenece, la dirección IP y la máscara de red que tiene asignada cada una de las tarjetas de red que se pueda tener configuradas.

También se puede configurar la dirección del GATEWAY ó puerta de enlace en el caso de que para tener acceso a internet exista un GATEWAY ó un ordenador que haga de puerta de enlace.

Con el programa NETCONF, se puede configurar todo más detalladamente.

Por ejemplo en la opción NFS: FILESYSTEM EXPORTADOR especificar los directorios que se quiera compartir en la red.

Existen tres solapas: TAREAS COMO CLIENTE, TAREAS COMO SERVIDOR Y MISC.

En la solapa TAREAS COMO CLIENTE hay las siguientes opciones:

ð INFORMACIÓN BÁSICA DEL EQUIPO

ð DNS: SERVIDOR DE NOMBRES

ð RUTAS Y GATEWAYS

ð ORDEN DE BUSQUEDA DE NOMBRES

ð NIS: SISTEMAS DE INFORMACION DE RED

ð IPX: CONFIGURACION DEL INTERFACE

ð PPP/SLIP/PLIP

En la solapa TAREAS COMO SERVIDOR:

ð NFS: FILESYSTEM EXPORTADOR

ð ALIAS: IP PARA MÁQUINAS VIRTUALES

ð MTA: TRANSPORTE DE CORREO ( SENDMAIL )

En la solapa MIS hay otras utilidades de red.

 

OBTENCIÓN de información

Documentación On-Line

Si se tiene acceso a Internet, existe variada documentación en muchos servidores de FTP del

mundo. Si no se tiene acceso directo a Internet, aun se puede obtener los documentos: muchos distribuidores de Linux en CDROM incluyen toda o casi toda la documentación existente en la red. Además, se suelen distribuir por redes diferentes como Fidonet o Compuserve. Y si se tiene acceso únicamente al correo en Internet, se puede obtener ficheros de servidores FTP sin más que usar un servidor de ftpmail.

Algunos documentos que se puede encontrar son las Linux FAQ, una colección de FAQ sobre Linux; los documentos HOWTO, dedicados a aspectos específicos, como la instalación inicial (Installation HOWTO) o la configuración de impresoras y spoolers (Printing HOWTO).

Algunos documentos se envían regularmente a uno o más grupos USENET sobre Linux.

Linux en el WWW

La página inicial de la documentación de Linux en el Web se encuentra en la dirección URL

http://sunsite.unc.edu/mdw/linux.html

Desde esta página se puede acceder a los HOWTOs y otros documentos en formato HTML. También se encuentran enlaces a otros servidores de interés.

Libros y otras publicaciones

En este momento, hay algunos trabajos publicados sobre Linux. Principalmente, los libros del Proyecto de Documentación de Linux (LDP), que se lleva a cabo mediante Internet para escribir y distribuir una colección de manuales para Linux. Estos manuales son análogos a los que se publican junto con versiones comerciales de UNIX: tratan la instalación y puesta en marcha, programación, trabajo en red, asuntos del núcleo y muchas cosas más.

Los manuales del LDP se encuentran disponibles mediante FTP anónimo en el Internet, así como por correo a través de algunos comercios.

Con los libros escritos para Linux y los que hay sobre UNIX se debe estar ya suficientemente

documentado como para hacer cualquier cosa sobre el sistema Linux.

También existe numerosos magazine mensuales sobre Linux, por ejemplo Linux Journal. Se distribuye por todo el mundo y es una excelente manera de mantenerse al día en este tema, sobre todo si no se tiene acceso a USENET.

Grupos de NEWS USENET

"USENET" es un foro mundial de artículos electrónicos organizado en "grupos", o sea, áreas de discusiones relacionadas con cada tema concreto. Buena parte del desarrollo de Linux ha sido a través de Internet y USENET, con lo que no es extraño que existan bastantes grupos que traten el tema.

Inicialmente, el grupo sobre Linux era alt.os.linux, y se creó para tratar aquí las cuestiones

que sobre Linux abundaban ya en comp.os.minix y varias listas de correo. El tráfico en el grupo de Linux fue creciendo lo suficiente como para permitirse el paso a la jerarquía comp, en Febrero de 1992.

El grupo comp.os.linux sigue existiendo, pero se recomienda usar los nuevos grupos. Si no tiene acceso a ellos, hable con su administrador de las News.

Listas de correo en Internet

Si tiene acceso al correo electrónico de Internet, puede aun participar en las listas de correo aunque no se tenga acceso a USENET. A estas listas de correo se puede apuntarse incluso sin tener acceso alguno a Internet, gracias a las pasarelas que ofrecen otros servicios, como UUCP, FidoNET o CompuServe.

La lista de correo de "Activistas del Linux" está pensada principalmente para desarrolladores y gente interesada en participar en el desarrollo. Es una lista "multicanal", en la que puede apuntarse a uno o más "canales" según los temas que le interesen. Entre estos canales se encuentran el NORMAL,el KERNEL, el GCC (sobre el compilador de GNU), el NET o el DOC (sobre el tema de la documentación de Linux).

Existen otras listas de correo de propósito especial. El mejor camino para encontrarlas es leer los anuncios aparecidos en USENET, y la lista de "mailing-list" disponible periódicamente en el grupo news.answers.

Cómo obtener ayuda

La forma más inmediata de buscar ayuda es mediante las listas de correo y grupos de USENET que se mantienen en Internet. Si no se tiene acceso a Internet, se puede encontrar ayuda en otros servicios on-line como los BBS's o Compuserve.

También hay ciertas empresas que han empezado a dar soporte comercial de Linux. Esto permite pedir ayuda a los técnicos a cambio del pago de una cuota.

Trucos, consejos y preguntas

Mover directorios entre sistemas de ficheros

Forma rápida de mover un árbol entero de ficheros de un disco a otro:

(cd /origen/directorio; tar cf - . ) | (cd /dest/directorio; tar xvfp -)

Parche para el GNU, Ted Stern

Para cambiar el comportamiento del VPATH. (Make 3.70)

Hay una característica del GNU make versión 3.70 que no suele gustar. VPATH actúa raramente si se da un path absoluto. Existe un patch extremadamente sólido que arregla esto, el cual se puede obtener de psmith@wellfleet.com Él también pone la documentación y el patch después de cada revisión del GNU make en el servidor de newsgroups.

Cómo se puede hacer que el sistema no ejecute el fsck en cada arranque

Cuando se recompila el kernel, el sistema de ficheros se marca como "sucio" y por eso el disco es chequeado en cada arranque. La solución es ejecutar :

rdev -R /zImage 1

Esto arregla el kernel para que no se siga creyendo que el sistema de ficheros está "sucio".

Nota : Si se usa lilo, entonces se añade sólo-lectura al setup del linux en tu fichero de configuracion del lilo.

Cómo evitar fsck's causados por "device busy" al arrancar.

Si usualmente se sufre errores de "device busy" al apagar , que dejan al sistema de ficheros con la necesidad de un fsck al arrancar, este es un arreglo simple :

Añadir la siguiente linea al fichero /etc/brc o /sbin/brc

mount -o remount,ro /mount.dir

para todos los sistemas de ficheros montados excepto /, antes de la llamada para desmontarla. Esto significa que si, por alguna razón, shutdown falla al matar todos los procesos y desmontar los discos, éstos estarán igualmente limpios al arrancar. Ahorra un montón de tiempo al arrancar.

Cómo imprimir una página con margen para hacer agujeros.

#!/bin/sh

# /usr/local/bin/print

# una muestra de impresión simple, para permitirnos

# perforar lo obtenido y poder archivarlo:

cat $1 | pr -t -o 5 -w 85 | lpr

Un método para buscar a través de árboles de ficheros una expresión regular dada.

Con el siguiente script:

forall /usr/include grep -i ioctl

forall /usr/man grep ioctl

#!/bin/sh

if [ 1 = `expr 2 \> $#` ]

then

echo Usage: $0 dir cmd [optargs]

exit 1

fi

dir=$1

shift

find $dir -type f -print | xargs "$@"

Un script para limpiar después de usar programas que crean ficheros temporales y de backup

Un sencillo script que desciente recursivamente un directorio borrando ficheros de auto-grabado y backup de emacs, ficheros .o, y ficheros .log de TeX. También comprime ficheros .tex y ficheros README.

#!/bin/sh

#SQUEEZE borra ficheros inutiles, y comprime ficheros .tex y README

#By Barry tolnas, tolnas@sun1.engr.utk.edu

#

echo squeezing $PWD

find $PWD \( -name \*~ -or -name \*.o -or -name \*.log -or -name \*\#\) exec rm -f {} \;

find $PWD \( -name \*.tex -or -name \*README\* -or -name \*readme\* \) - exec gzip -9 {} \;

Compartiendo particiones de swap entre Linux y Windows.

Formatear la partición como una partición dos, y crea el fichero de swap del Windows en ella, pero no ejecutar windows todavía. (Hay que mantener el fichero de swap completamente vacío de momento, para poder comprimirlo bien).

Arrancar linux y grabar la partición en un fichero. Por ejemplo, si la partición es /dev/hda8:

dd if=/dev/hda8 of=/etc/dosswap

Comprimir el fichero de swap del dos; como es virtualmente todo ceros, se comprimirá muy bien

gzip -9 /etc/dosswap

Añadir lo siguiente al fichero /etc/rc para preparar e instalar el espacio de swap sobre Linux : XXXXX es el numero de bloques en la partición de swap

mkswap /dev/hda8 XXXXX

swapon -av

Asegurarse de añadir una entrada para la partición de swap en el fichero /etc/fstab

Si el paquete init/reboot soporta /etc/brc o /sbin/brc añadir lo siguiente a /etc/brc, si no, hacer lo mismo a mano cuando se quiera arrancar dos u os/2 y se quiera convertir la partición de swap a la versión dos/windows:

swapoff -av

zcat /etc/dosswap.gz | dd of=/dev/hda8 bs=1k count=100

Tener en cuenta que esto sólo escribe los 100 primeros bloques en la partición.

¿Cuáles son las ventajas y las desventajas de hacer esto?

Ventajas: Ahorrar una substancial cantidad de espacio en el disco.

Desventajas: Si el paso 5 no es automático, hay que hacerlo a mano, y enlentece el proceso de rearrancar unos nanosegundos.

Cómo configurar xdm's chooser para seleccionar host

Editar el fichero que arranca xdm, para que contenga las siguientes líneas en la sección de startup:

/usr/bin/X11/xdm

exec /usr/bin/X11/X -indirect hostname

Editar /usr/lib/X11/xdm/Xservers y comentar la línea que arranca el servidor en el terminal. p.ej, que comienza por 0:

Rearrancar la máquina y ya está todo.

Linux y su Control de Dispositivos
Una vez instalado Linux se podrá acceder a un directorio llamado /dev Dentro de él se observa un montón de archivos con nombres tan dispares como hda1(Disco Duro IDE) o mouse. Estos son los controladores de dispositivos del sistema. La mayoría de los sistemas operativos para ordenadores personales, como Ms-Dos, llevaban parcialmente implementadas en el núcleo las facilidades de acceso a los distintos dispositivos, como el disco duro o el ratón, de tal modo que a no ser que se rescriba el núcleo, difícilmente se podrá tener el control sobre nuevos tipos de dispositivos.
Los controladores son tratados de forma independiente al núcleo del sistema, y por lo tanto se podrá añadir tantos controladores como dispositivos nuevos se vayan añadiendo al ordenador. Por otra parte todos los dispositivos son tratados de igual forma, y gracias a ello se podrá redirigir datos de la misma manera al disco duro o a la impresora.

Independencia de dispositivos

Linux admite cualquier tipo de dispositivo (módems, impresoras) gracias a que cada una vez instalado uno nuevo, se añade al Kernel el enlace o controlador necesario con el dispositivo, haciendo que el Kernel y el enlace se fusionen. Linux posee una gran adaptabilidad y no se encuentra limitado como otros sistemas operativos.

Software propietario
El software propietario es aquel que es propiedad intelectual de alguna empresa. Lo que las empresas hacen con sus programas es venderlos, así que sus productos vienen acompañados de licencias de uso que evitan que quien tenga posesión de ellos los copien o alteren. La desventaja es que los usuarios de software propietario no pueden adaptar los programas a sus necesidades específicas, mejorarlos o corregir errores que encuentren. Tampoco pueden hacer copias y distribuirlas para algún proyecto, aplicación o fin personal, a menos que paguen más licencias de uso.

¿Qué se puede hacer con el Software Libre? ¿Cuál es su alcance?

El Software Libre es un género nuevo de software, paralelo al que conocemos y pretende cubrir las necesidades de los usuarios, ya que está hecho por los usuarios mismos. Hoy en día hay ciertas áreas del cómputo en las que el software libre no ha penetrado de manera considerable.

¿Existen también los virus en GNU/Linux?
Se ha sabido de un virus llamado bliss.

¿Cómo se aprende aprender a usar Linux?
El Software Libre es tan extenso, que nunca se deja de aprender. Lo importante es aprender a usar el software. Al principio puede ser duro, porque todo es distinto y algunas cosas no son del todo amigables para el neófito. Antes de dar ningún paso, es necesario leer y documentarse con respecto a lo que habrá de hacerse. Si no se documenta, puede arrepentirse, y termina volviendo de todos modos al manual. El mejor apoyo es el de la sección de documentación que aparece en las páginas que hablan sobre el Linux en el internet.

La sección de documentación es la información de Linux y la ayuda técnica que están disponibles en una variedad amplia de localizaciones. Hay las rutas " oficiales " tales como la correspondencia del software lógica de Linux, el proyecto de la documentación de Linux, el HOWTOs, y el FAQs (hecho con frecuencia de preguntas). Hay docenas de materiales de referencia publicados, de los libros y de los diarios de la impresión a los " ezines electrónicos " disponibles por el e-mail y/o los varios sitios del Web.)

¿Se puede correr GNU/Linux en una laptop?

Claro que se puede, y se tienen muchos recursos para consultar como el PCMCIA-Como, el GNU/Linux PCMCIAInfomacion Page, y GNU/Linuxon Laptops, con lo que se tiene suficiente para empezar.

¿Si se posee una Mac, se puede tener el sistema GNU/Linux?

GNU/Linux, al ser un sistema libre, ha sido portado hacia muchas arquitecturas, y Mac no está excluida. Se puede correrlo sin problemas instalandoGNU/LinuxPPC, MKGNU/Linux o m68k, dependiendo del tipo de Mac que se tenga.

¿Cómo se puede hacer para que una máquina tenga dos sistemas a la vez?
Cuando se trata de otros sistemas operativos, se debe de instalar el sistema operativo que no es GNU/Linux primero. Si es Windows, se debe usar el fdisk de DOS para particionar el disco en dos áreas: la de Windows y la de GNU/Linux. Luego, se instala Windows en modo personalizado, ya que el modo rápido puede regresar al disco a una sola partición. Luego se instala GNU/Linux, borrando la partición que se dejó para GNU/Linux y creando con el espacio libre que queda las particiones nativas y de swap que se necesite.

¿Se puede correr MS Office u otras aplicaciones con GNU/Linux?

Aparentemente sí, con WINE se pueden correr aplicaciones hasta de Win32, pero usar aplicaciones propietarias arriba de un kernel libre no hace la gran diferencia a usar puro software propietario.

¿Qué es el WINE?

Wine es una puesta en práctica de los Windows 3.x y Win32 APIs encima de X y de Unix. Piense en WINE como una capa de la compatibilidad de los Windows. WINE proporciona a una caja de herramientas del desarrollo (Winelib) para las fuentes de los Windows que viran hacia el lado de babor a Unix y a un cargador del programa, permitiendo que los binarios sin modificar de los Windows 3.1/95/NT se ejecuten bajo Intel Unixes. WINE trabaja en la mayoría de la Intel popular Unixes, incluyendo Linux, Free BSD, y Solaris.

WINE no requiere los Windows de Microsoft, pues es una puesta en práctica totalmente alternativa que consiste en el código Microsoft-libre del 100%, pero puede utilizar opcionalmente el sistema nativo DLLs si están disponibles. El vino viene con fuentes, la documentación y ejemplos completos y es libremente redistributable.

¿Existe software para GNU/Linux que pueda reemplazar a MS Office?
Existen varias suites que pueden ser de utilidad por ejemplo Freshmeat

¿Qué es lo que hace específicamente el Freshmeat?

El freshmeat mantiene el índice más grande del software lógica de Linux en el Web. La primera parada para la caza para el software lógica que necesitan para el trabajo o que juegan, freshmeat de los utilizadores de Linux se pone al día continuamente con las últimas noticias " desbloquear temprano, de la comunidad del desbloquear a menudo ". Además de proporcionar a noticias en nuevos desbloquear, el freshmeat ofrece una variedad de contenido original en por los aspectos técnicos, políticos, y sociales el software lógica y programación, escritos los programas de lectura del freshmeat y los luminares libres del software lógica. La tarjeta del comentario asociada a cada artículo sirve como un hogar para spirited la discusión, fallo de funcionamiento señala, y ayuda técnica.

¿Qué es el Kernel?

Kernel (Núcleo) es el programa que tiene control total de la máquina y administra sus recursos. GNU/Linux, desde un punto estricto es un kernel, no un sistema operativo. El sistema operativo es el kernel junto con todas las herramientas necesarias para que la computadora pueda operar. De poco sirve un kernel sin un shell, ni ambiente gráfico, ni herramientas de administración.

El kernel es el encargado de que el software y el hardware de tu ordenador puedan trabajar juntos.

Las funciones más importantes del mismo, aunque no las únicas, son:

Administración de la memoria, para todos los programas en ejecución.

Administración del tiempo de procesador, que estos programas en ejecución utilizan.

Es el encargado de que podamos acceder a los periféricos / elementos de nuestro ordenador de una manera cómoda.

Existen dos versiones del Linux kernel:

Versión de producción: La versión de producción, es la versión estable hasta el momento. Esta versión es el resultado final de las versiones de desarrollo o experimentales.

Cuando el equipo de desarrollo del kernel experimental, decide que ha conseguido un kernel estable y con la suficiente calidad, se lanza una nueva versión de producción o estable. Esta versión es la que se debería utilizar para un uso normal del sistema, ya que son las versiones consideradas más estables y libres de fallos en el momento de su lanzamiento.

Versión de desarrollo: Esta versión es experimental y es la que utilizan los desarrolladores para programar, comprobar y verificar nuevas características, correcciones, etc. Estos núcleos suelen ser inestables y no se deberían usar, a no ser que sepas lo que haces.

Como interpretar los números de las versiones:

Las versiones del kernel se numeran con 3 números, de la siguiente forma: XX.YY.ZZ

XX: Indica la serie principal del kernel. Hasta el momento solo existen la 1 y 2. Este numero cambia cuando la manera de funcionamiento del kernel ha sufrido un cambio muy importante.

YY: Indica si la versión es de desarrollo o de producción. Un numero impar, significa que es de desarrollo, uno par, que es de producción.
ZZ: Indica nuevas versiones dentro de una versión, en las que lo único que se ha modificado, son fallos de programación /bugs.

Unos ejemplos nos ayudaran a entenderlo mejor:

ej1: versión del kernel 2.0.0: Kernel de la serie 2 (XX=2), versión de producción 0 (YY=0 par), primera versión de 2.0 (ZZ=0)

ej2: versión del kernel 2.0.1: Kernel de la serie 2, versión 0, en el que se han corregido errores de programación presentes en la versión 2.0.0 (ZZ=1)

ej3: versión del kernel 2.1.100: versión 100 del kernel de desarrollo 2.1.

¿Dónde se puede obtener información acerca de los nuevos kernels?

Todo lo que se necesita saber sobre el kernel de GNU/Linux se encuentras en http://www.kernel.org/ (el sitio oficial del kernel de GNU/Linux).

Archivos especiales

/etc/passwd Contiene todos los logins y passwords

/etc/motd Mensaje del día

/etc/profile Se ejecuta al introducir al entrar en el sistema

Problemas con el arranque

Cuando se intenta arrancar con el floppy de arranque la primera vez, se pueden encontrar algunos problemas. Dichos problemas se listan a continuación.

Se produce un error en el floppy u otro dispositivo durante el arranque.

El motivo más frecuente de esta clase de problemas es que el disquete esté corrompido. Puede

ser que el disquete esté físicamente dañado, en cuyo caso tendrá que volverlo a preparar sobre

un nuevo disquete, o bien que los datos fueran mal copiados al mismo, en cuyo caso debe

verificarse si se consiguió la imagen del disquete de arranque correctamente. En muchos casos, basta con volver a grabar la imagen sobre el floppy: repita todos los pasos e intente de nuevo.

El sistema informa de errores por falta de memoria durante el arranque.

Esto tiene que ver con la RAM que tiene. En sistemas con 4 megaoctetos o menos, puede tener problemas al intentar arrancar el disquete, o con los programas de instalación. Esto se debe a que muchas distribuciones utilizan un disco RAM para operaciones durante la instalación.

La solución a este problema es desactivar la opción de disco RAM durante el arranque. Cada

versión sigue un procedimiento diferente para hacer esto.

Puede suceder que en lugar de un mensaje de error por falta de memoria, su sistema se bloquee durante el arranque. Si esto sucede, y no le sirve ninguna recomendación de las vistas, pruebe a desactivar el disco RAM.

El sistema muestra un error como "permission denied" o "file not found" durante el arranque.

Esto es señal de que su disquete de instalación está mal. Si intenta arrancar con el disquete, y

éste es correcto, no deberían salir errores de este tipo. Contacte con su distribuidor de Linux

y trate de solucionar el problema, si es necesario obteniendo una nueva copia del disquete de instalación. Si usted creó por su cuenta el disco de arranque, pruebe a rehacerlo para ver si esto soluciona el problema.

El sistema informa del error "VFS: Unable to mount root" cuando se está arrancando.

Este error indica que el sistema de ficheros raíz (que se encuentra en el disquete de arranque), no está. Puede ser que su disquete esté mal o que no esté arrancando el sistema de forma correcta

Si está seguro que ha seguido correctamente el procedimiento de arranque, puede ser que su

disquete esté corrupto. Es poco corriente, por lo que deben buscarse otras soluciones antes que intentar usar otro disquete.

Problemas con el hardware

El problema más habitual que surge cuando se arranca Linux es la incompatibilidad con el hardware. Aunque todo su hardware esté soportado en Linux, algún conflicto de las configuraciones puede causar extraños resultados, sus dispositivos pueden no detectarse durante el arranque, o el sistema puede bloquearse.

Si se encuentra con un problema que cree que está relacionado con el hardware, la primera cosa que se debe hacer es intentar aislar el problema. Esto significa eliminar todas las variables posibles y ir desmontando, pieza-por-pieza, hasta que la pieza del hardware causante del problema haya sido aislada.

¿Conflicto de dirección o de IRQ?

Todos los dispositivos de la máquina usan una IRQ, o Interrupt Request Line (Línea de petición de interrupción), para decir al sistema que necesitan que el sistema haga algo por ellos.

Asegurese que todos los dispositivos que tenga instalados estén usando líneas IRQ

únicas. Por lo general la IRQ de un dispositivo puede establecerse por puentes en la tarjeta.

En algunos casos, el núcleo que proporciona la instalación está preconfigurado para usar una

determinada IRQ para un dispositivo concreto.

Canales DMA (Direct MemoryAccess - Acceso Directo a Memoria), direcciones E/S, y direcciones de memoria compartida.

Todos estos términos describen mecanismos a través de los cuales el sistema interactúa con los dispositivos hardware. Algunas tarjetas Ethernet, por ejemplo, utilizan una dirección de memoria compartida a la vez que una IRQ para interactuar con el sistema. Si alguna de éstas está en conflicto con otros dispositivos, entonces el sistema se puede comportar de modo inesperado.

La documentación de los diversos dispositivos hardware debería especificar la IRQ, canal DMA,dirección E/S, o dirección de memoria compartida que usan los dispositivos, y cómo configurarlos. De nuevo, la manera sencilla de acercarse a estos problemas es deshabilitar temporalmente los dispositivos en conflicto.

Problemas reconociendo discos duros o controladoras

Si, por cualquier razón, sus unidades o particiones no son reconocidas, entonces no podrá acceder a ellas de ningún modo.

Hay varias cosas que pueden provocar que esto ocurra:

Disco duro o controladora no soportados

Si está usando una controladora de disco (IDE, SCSI, o cualquier otra) que no esté soportada por Linux, el kernel no reconocerá sus particiones a la hora de arrancar.

Unidad o controladora mal configurada

A pesar de que su controladora esté soportada por Linux, puede no estar configurada correctamente.

Controladora bien configurada, pero no detectada

Algunas controladoras SCSI sin BIOS necesitan que el usuario especifique la información sobre la controladora a la hora de arrancar.

Geometría del disco duro no reconocida

Algunos sistemas, como el IBM PS/ValuePoint, no almacenan la información de geometría del disco duro en la memoria CMOS, donde Linux espera encontrarla. También, ciertas controladoras SCSI necesitan que se les diga dónde encontrar la geometría de la unidad de modo que Linux reconozca el diseño de su disco.

La mayoría de distribuciones proporcionan una opción de arranque para especificar la geometría del disco. En general, cuando se arranca el software de instalación, se puede especificar la geometría del disco en el prompt de arranque de LILO.

Problemas con controladoras y unidades SCSI

Una unidad SCSI se detecta en todos los ID's posibles

La causa de esto es que la unidad esta ligada a la misma dirección que la controladora. Es necesario cambiar la configuración de los jumpers de modo que la unidad use una dirección distinta de la de la propia controladora

Linux reporta errores de detección, incluso sabiendo que las unidades están libres de errores

Esto puede estar provocado por cables en mal estado, o malos terminadores. Si el bus SCSI no esta terminado en ambos extremos, puede tener errores accediendo a las unidades SCSI. Cuando tenga dudas, compruebe sus cables.

Las unidades SCSI dan errores de timeout

Eso se produce generalmente por un conflicto con las IRQ, DMA o direcciones de unidad. Compruebe también que las interrupciones estén correctamente activadas en su controladora.

Las controladoras SCSI que utilizan BIOS no son detectadas

La detección de controladoras que usan BIOS fallará si la BIOS está desactivada, o si la "firma” de su controladora no es reconocida por el kernel.

Las controladoras que utilizan E/S mapeada en memoria no funcionan

Esto sucede cuando los puertos de E/S mapeados en memoria están incorrectamente cacheados. Puede marcar el espacio de direccionamiento de la tarjeta como no cacheable en las opciones de XCMOS, o bien deshabilite la cache totalmente.

La unidad CD-ROM u otras unidades de información removible no se reconocen a la hora de arrancar

Pruebe a arrancar con un CD-ROM (o disco) en la unidad. Esto es necesario en algunos dispositivos.

Si no se reconoce su controladora SCSI, puede que tenga que forzar la detección del hardware

en el momento del arranque. Esto es especialmente importante para controladoras SCSI sin BIOS.

La mayoría de las distribuciones le permiten especificar la IRQ de la controladora y la dirección de memoria compartida cuando arranca con los discos de instalación.

Problemas con la instalación del software

Con un poco de suerte, se puede instalar el software de Linux sin problemas. Los únicos que suelen aparecer se relacionan con los errores en los disquetes de instalación o con el espacio disponible en los sistemas de ficheros.

El sistema muestra errores como "Read error", "file not found" durante la instalación del software

Esto es indicativo de problemas en los disquetes o cintas de instalación. Si se instala desde disquetes, tenga en cuenta que los errores en éstos son posibles.

Asegúrese de que está utilizando disquetes nuevos o recién formateados. Muchas distribu-

ciones permiten instalar el software desde una partición DOS del disco duro. Esto puede ser

más seguro y más rápido que usar directamente los disquetes.

Si utiliza un CD-ROM, asegúrese de que el disco no tiene ralladuras o suciedad que pudieran

ser causa de errores de lectura.

La causa del problema puede estar también en un formato incorrecto de los disquetes. Nor-

malmente se exige que los disquetes estén en formato MS-DOS de alta densidad (a excepción

del disquete de arranque, que suele tener su propio formato casi siempre). Si todo esto falla,

intente obtener nuevos disquetes, bien sea pidiéndolos a su distribuidor o construyéndolos usted mismo.

El sistema da errores tipo "tar: read error" o "gzip: not in gzip format".

Este problema suele deberse a errores en los ficheros o en los propios discos o cintas. En otras

palabras, sus disquetes pueden no tener errores, pero sí los datos contenidos en ellos.

El sistema da errores como "device full" durante la instalación.

Esto es un signo claro de que se está intentando instalar Linux sin espacio de disco suficiente.

En la mayoría de las distribuciones, no puede esperarse que el sistema funcione abortando el

proceso de instalación.

La solución habitual es rehacer los sistemas de ficheros lo que orrará el software parcialmente instalado. Ahora puede reintentar la instalación, seleccionando menos componentes para instalar. En otros casos, puede necesitarse comenzar desde cero, rehaciendo particiones y sistemas de ficheros.

El sistema informa de errores como "read_intr: 0x10" durante los accesos al disco duro

Esto suele deberse a la presencia de bloques con errores en el disco. Sin embargo, si se reciben estos errores al utilizar mkswap o mke2fs, el sistema puede estar teniendo problemas para acceder a su controlador. Puede ser tanto un problema del hardware o una incorrecta especificación de la geometría del disco.

El sistema da errores como "file not found" o "permission denied"

Este problema puede suceder si no están disponibles todos los ficheros necesarios en los dis quetes de instalación o si hay problemas con los permisos sobre dichos ficheros.

Si tiene otros extraños problemas durante la instalación de Linux (especialmente sí el

software lo ha obtenido vía red o módem), asegúrese de haber obtenido todos los ficheros necesarios.

También, si Linux bloquea su ordenador durante la instalación de forma inesperada, puede haber algún problema con el hardware.

Problemas después de instalar Linux

Problemas al arrancar Linux desde el floppy

Si utiliza un disquete para arrancar Linux, puede ser que necesite indicar cuál es su partición raíz de Linux en el momento de arrancar. Esto es especialmente cierto si utiliza el disquete de instalación original, y no un disquete personalizado durante la instalación.

Mientras arranca con el disquete, mantenga pulsadas_ las teclas |_shift_|o |_ctrl_|. Esto deberá presentarle un menú de arranque; pulse la tecla |_tab_|para ver una lista de opciones disponibles.

Problemas al arrancar Linux desde el disco duro

Problemas al entrar en Linux

Después de arrancar Linux, debe verse un prompt de login, como:

linux login:

En este punto, la documentación de su distribución le dirá lo que hay que hacer. En muchos casos,hay que entrar como root sin password. Otros posibles nombres de usuario iniciales son guest o test.

Casi siempre no se requieren passwords en los logins iniciales. Sin embargo, si se le pide password, puede ser un problema. Primero, pruebe a introducir como password el mismo nombre del usuario (root, guest...).

Si simplemente no puede entrar, consulte la documentación de su distribución. El nombre de

usuario y password a utilizar puede estar escondido ahí. También puede habérsele dado durante la instalación o puede estar delante justo del prompt de login.

Una causa de esto es una incorrecta instalación de los ficheros de iniciación del sistema. Si este es el caso, habrá que reinstalar (al menos parte de) el software de Linux, o arrancar desde un disquete de instalación y resolver el problema a mano.

Problemas utilizando el sistema

Si consigue entrar en el sistema, deberá ver un prompt de shell (como "#" o "$") y podrá navegar felizmente por su sistema. Sin embargo, existen todavía algunos posibles problemas.

El más habitual sucede con los permisos sobre ficheros o directorios, que puede originar un

mensaje de error como

Shell-init: permission denied

tras entrar en el sistema (también, durante su sesión en el mismo puede ver el mensaje "permission denied". En cualquier caso indica que hay problemas con los permisos en ficheros o directorios).

En muchos casos, basta con utilizar el comando chmod para corregir los permisos de los ficheros y directorios.

Conforme utilice el sistema, se encontrará lugares donde los permisos puestos a ficheros y dir

ectorios son incorrectos, o el software no trabaja como se esperaba. Mientras que la mayor parte de las distribuciones casi no dan problemas, lo cierto es que muy pocas son perfectas.

Novedades

1.- En la actualidad ya existen versiones de 64-bits para algunas otras plataformas hardware distintas del PC.

2.- Linux dispone en la actualidad de la versión X11R6 de X Window

3.- Ya existe un WordPerfect 6.1 nativo para Linux

4.- Linux ya soporta, en la actualidad arquitecturas tales como ALPHA, Amiga, PowerPc, etc.

5.- El parque de CD ROMs ha cambiado de forma asombrosa en los últimos meses. Sirva decir que Linux soporta, los nuevos estándares ATAPI para CD ROMs conectables a controladoras IDE.

Mantenimiento

Hay una tarea de mantenimiento que tiene que realizarse con named, además de mantenerlo en funcionamiento. Esta tarea es mantener el archivo root.cache actualizado. La forma más fácil es usar dig, primero ejecutar dig sin argumentos, se conseguirá root.cache de acuerdo con su propio servidor. Entonces preguntar a alguno de los servidores raíz listados con

dig @rootserver

Se podrá observar que la salida se parece terriblemente al archivo root.cache excepto por un par de números extras. Esos números no ocasionan problemas. Guárdarlo en un archivo

dig @rootserver . ns > root.cache.new y sustituir el antiguo root.cache con él.

Recuerde reiniciar named después de sustituir el archivo caché.

Este script puede ser ejecutado automáticamente para actualizar root.cache, se debe instalar una entrada en el crontab para ejecutarlo una vez al mes . El script supone que trabaja con correo y que el alias de mail hostmaster está definido. Se debe editarlo para ajustarlo a la configuración.

#!/bin/sh

#

# Actualizacion del cache del servidor de nombres una vez al mes.

# Esto es ejecutado automáticamente mediante una entrada de cron

#

(

echo "To: hostmaster <hostmaster>"

echo "From: system <root>"

echo "Subject: Actualización automática del fichero named.boot"

echo

export PATH=/sbin:/usr/sbin:/bin:/usr/bin:

cd /var/named

dig @rs.internic.net . ns >root.cache.new

echo "El fichero named.boot ha sido actualizado para contener la

siguiente información:"

echo

cat root.cache.new

chown root.root root.cache.new

chmod 444 root.cache.new

rm -f root.cache.old

mv root.cache root.cache.old

mv root.cache.new root.cache

ndc restart

echo

echo "El servidor de nombres ha sido rearrancado a fin de asegurar que la

actualización es completa."

echo "El anterior fichero root.cache se ha renombrado a /var/named/root.cache.old."

) 2>&1 | /usr/lib/sendmail -t

exit 0

BIBLIOGRAFÍA

  • Utilizando Linux Prentice hall

  • Red Hat Linux 5.0 Anaya

  • La guía de instalación oficial de Red hat Linux Research Triangle Park

  • Guía de instalación de Linux Suse 6.3 Suse

  • Unix curso practico Publicaciones de la universi

dad de Cordoba y obra social y cultural de Cajasur

urls

1

Linux




Descargar
Enviado por:Gamar
Idioma: castellano
País: España

Te va a interesar