linux administrator 1

Upload: roberto-maldonado-palacios

Post on 09-Jul-2015

281 views

Category:

Documents


3 download

TRANSCRIPT

ADMINISTRACION LINUX 1 1 Breve introduccin al linux, al cdigo GNU Comparaciones entre cdigo libre y cdigo comercial. Comandos bsicos para manejar la consola, el editor de textos vi Instalacin y particionamiento de linux.

Introduccin al sistema operativo Linux Recurso El kernel de linux Recurso Emulacin de otros sistemas Recurso Distribuciones Recurso Iniciando y cerrando la sesin de trabajo en Linux Recurso El sistema de archivos Linux Recurso El rbol de directorio de Linux Recurso Manejo del shell BASH Recurso Sistema de ayuda Recurso uso del editor de texto vi Recurso Instalacin del Sistema Operativo Recurso Sugerencias para un correcto particionamiento Recurso Diagrama de migracin Recurso Tarea de la Semana 1 Bibliografa Recurso

2 Recuperacin del sistema operativo ante desastres. Manejo de usuarios y permisos, delegacin de tareas del superusuario y manejo de cuotas de disco.

Recuperacin en Caso de desastres Recurso Bibliografa adicional Recurso 3- Gestin de usuarios y permisos Creacin y administracin de usuarios y grupos de usuarios Recurso Permisos de lectura, escritura y ejecucin Recurso Delegacin de tareas de superusuario Recurso Opciones del mount Recurso Tarea de la Semana 2

3 Gestin de procesos Herramientas de monitoreo Trabajo con servicios Arranque y parada de linux

4- Gestin de procesos

Conceptos de la Gestin de procesos Recurso Procesos, /proc y control de procesos Recurso Herramientas para monitoreo y trabajo con procesos Recurso Otras herramientas de monitoreo Recurso 5- Sistema de inicio y finalizacin del sistema (SysV) Conceptos Recurso Niveles de ejecucin Recurso Descripcin y localizacin de los servicios Recurso ntsysv, chkconfig y service Recurso Demonios del sistema Recurso Arranque y parada de linux Recurso Bibliografa adicional Recurso Tarea de la semana 3

4 Respaldos, herramientas para crear respaldos, trabajo con los discos. Utileras para programar tareas

6- Gestin de unidades de almacenamiento y sistemas de archivos Conceptos Generales Recurso Aadir/Eliminar particiones Recurso Chequeando el disco Recurso Accediendo a disketes formateados con DOS Recurso Compresin de archivos Recurso Trabajo con imgenes y CD Recurso Optimizando accesos a disco Recurso Herramientas para realizar respaldos Recurso Realizando respaldos en linux Recurso 7- Automatizacin de tareas cron Recurso anacron Recurso at Recurso Bibliografa adicional Recurso Tarea de la semana 4

"GNU / LINUX" o "LINUX" ?El proyecto GNU fue iniciado por Richard Stallman en 1984, con el objetivo de crear un sistema operativo completo libre: el sistema GNU, basado en el sistema operativo UNIX (UNIX fue creado en 1970). Richard Stallman public un artculo conocido como el "Manifiesto GNU", en el que estableci sus motivaciones para realizar el proyecto GNU, entre las que destaca "retornar al espiritu de cooperacin que prevaleci en los tiempos iniciales de la comunidad de usuarios de computadoras". GNU es un acrnimo recursivo que significa "GNU No es Unix". Stallman sugiere que se

pronuncie, en ingls, como "guh-noo" (se puede observar que el logo es un u) para evitar confusin con "new" (nuevo). En espaol, GNU se pronuncia fonticamente (Ge Ene U). Para asegurar que el software GNU permaneciera libre para que todos los usuarios pudieran "ejecutarlo, copiarlo, modificarlo y distribuirlo", el proyecto deba ser liberado bajo una licencia diseada para garantizar esos derechos al tiempo que evitase restricciones posteriores de los mismos. La idea se conoce en Ingls como copyleft (en clara oposicin a copyright), y est contenida en la Licencia General Pblica de GNU (GPL). El proyecto GNU desarroll varios programas incluyendo compiladores, utilitarios, intrpretes de comandos, pero no ha completado (hasta esta fecha, mediados de 2009) un ncleo (los programas para administrar memoria, procesos, archivos, perifricos, seguridades). En 1991, Linus Torvalds empez a escribir su ncleo Linux y decidi distribuirlo bajo la GPL. Rpidamente, mltiples programadores se unieron a Linus en el desarrollo, colaborando a travs de Internet y consiguiendo paulatinamente que Linux llegase a ser un ncleo compatible con UNIX. En 1992, el ncleo Linux fue combinado con el sistema GNU, resultando en un sistema operativo libre y completamente funcional. El sistema operativo formado por esta combinacin es usualmente conocido como "GNU/Linux" o como una "distribucin Linux" y existen diversas variantes. (Ver tambin: Controversia por la denominacin GNU/Linux) Una distribucin Linux (o mejor GNU/Linux) es entonces un conjunto de programas creados por el proyecto GNU, o por otros desarrolladores que se apoyan en la licencia GPL o LGPL, y el ncleo desarrollado por Linus Torvalds. Desde su primer lanzamiento, GNU/Linux ha incrementado su popularidad en el mercado de servidores. Su gran flexibilidad ha permitido que sea utilizado en un rango muy amplio de sistemas de cmputo y arquitecturas: computadoras personales, supercomputadoras, dispositivos porttiles, etc. Los sistemas Linux funcionan sobre ms de 20 diferentes plataformas de hardware, entre ellas las ms comunes son las de los sistemas compatibles con PC, computadoras Macintosh, procesadores PowerPC, Sparc y MIPS. Tambin es frecuente hallar componentes de GNU instalados en un sistema UNIX no libre, en lugar de los programas originales para UNIX. Esto se debe a que muchos de los programas escritos por el proyecto GNU han demostrado ser de mayor calidad que sus versiones equivalentes de UNIX. A menudo, estos componentes se conocen colectivamente como "herramientas GNU". Muchos de los programas GNU han sido tambin portados a otras plataformas como Microsoft Windows y Mac OS X. Qu es el software libre? Software libre es el software que, una vez obtenido, puede ser usado, copiado, estudiado, modificado y redistribuido libremente. El software libre suele estar

disponible gratuitamente en Internet, o a precio del coste de la distribucin a travs de otros medios; sin embargo no es obligatorio que sea as y, aunque conserve su carcter de libre, puede ser vendido comercialmente. Anlogamente, el software gratuito (denominado usualmente Freeware) incluye en algunas ocasiones el cdigo fuente; sin embargo, este tipo de software no es libre en el mismo sentido que el software libre, al menos que se garanticen los derechos de modificacin y redistribucin de dichas versiones modificadas del programa. En resumen, libertad no significa gratuidad y al contrario tampoco. Se puede obtener software gratuito sin tener la libertad de ver el cdigo y a su vez se puede usar software libre (free software) para ver su cdigo pero pagar por su soporte comercial, o por la distribucin de las copias de software libre. Qu es el cdigo (software) comercial?

El autor cobra un precio por el uso del software (licencias) No se puede ceder ni alquilar el software en cuestin El nico autorizado a realizar modificaciones al software es el desarrollador de ste. Esto, claro est, siempre y cuando les sea rentable. Por ejemplo: Cambio de plataforma, mejoras, customizaciones No se podr realizar ingeniera inversa para estudiar su comportamiento.

Ejemplos de cdigo comercial y libre (los pondremos con ejemplos tomados mayormente de la empresa MicroSoft) Comercial sendmail, postfixIISLibre Microsoft OfficeExchange Internet Explorer Microsoft OutlookFireFox Decenas de antivirus comerciales TrendMicro antispam msn chat, yahoo messenger, trillianspamassassin Apache, thttpd Open Office, StarOffice, koffice Evolution, Thunderbird, pine, mutt Clamav gaim

Existen otros tipos de licencia de aspecto libre, algunas son compatibles con la licencia GNU y otras tienen ciertas restricciones o libertades que la hacen incompatibles; por ejemplo la licecencia tipo Apache permite la distribucin de binarios sin su correspondiente cdigo fuente lo que imposibilita en muchos casos el que se pueda conocer las directivas de compilacin o parches aplicados a un producto liberado). Sin embargo esto no significa que una licencia para cdigo libre deba dejar de ser usada o ignorada, muchas tienen elementos vlidos a nuestros efectos y de hecho una distribucin de Linux comprende no slo software licenciado bajo gnu-gpl sino que incluye otros tipos de licenciamiento.

Se puede obtener muchsima ms informacin en la pgina de la FSF: Otros tipos de licenciamientos para cdigo libre Sitios de ayuda Existen una buena cantidad de sitios de ayuda (autoayuda tambin) en el planeta, en muchsimos idiomas, aqu listaremos algunos sitios con soporte en ingls y espaol, adems de sitios propios ecuatorianos para obtener ayuda ms rpidamente: Equinux es una lista dedicada a los amantes de linux en el Ecuador, sus aplicaciones prcticas en el pas, acciones que se deberan tomar y dems alternativas. Se habla tambin sobre otros proyectos open source http://nuevared.org/mailman/listinfo/equinux_nuevared.org Ecualug es el primer foro de usuarios ecuatorianos dedicado ntegramente al tema de linux. Surgi hace 3 aos y tiene una enorme cantidad de artculos. La mayora de los usuarios del foro siempre requieren de un buen planteamiento ante un problema o inquietud para dar una respuesta adecuada a este planteamiento, es muy til y se aprende mucho en este foro: http://www.ecualug.org Existen varios sitios web ecuatorianos que se especializan en GNU/Linux. Los citamos aqu, sin que eso signifique que de alguna manera estn asociados con el CEC-EPN. www.nuestroserver.com (antiguo www.ecualinux.com) www.palosanto.com www.infodesarrollo.ec www.bmind.ec www.redpartner.com www.refundation.com www.hightelecom.com www.powerfast.net www.omnisoft.com.ec www.plus-projects.com Hispasec es un sitio dedicado a la seguridad informtica, una de las cosas ms interesantes es su lista de anuncios diaria (su nombre es: una al da) que enva actualizaciones con los problemas ms importantes de seguridad ocurridos en los ltimos das u horas.

www.hispasec.com El kernel (nucleo o corazn) de linux es la creacin original de Linus Torvalds en 1991, ms las modificaciones del grupo www.linux.org . Este nucleo es la base del sistema GNU/Linux. Ha sido ampliamente revisado (y modificado) por una enorme comunidad de personas a lo largo del planeta. De hecho la contribucin en cdigo que ha aportado Linus Torvalds es menor al 5% del kernel. Linus a veces dice que l se siente como si se aprovechara de las dems personas porque l es el que menos ha escrito lneas de cdigo. Cierto o falso, es una realidad: Linus Torvalds fu capaz de crear un kernel muy maleable, muy modificable, adems es una persona que acepta retos, sugerencias y siempre se mantiene en constante investigacin y modernizacin del kernel. El kernel bsicamente es el conjunto de programas que permiten administrar (manejar) los recursos del sistema de forma organizada y eficiente: La memoria, el uso de CPU, uso de disco, manejo de espacios de memoria virtual, swap y dems. En los ltimos aos se han ido agregando al kernel temas como seguridades (iptables, selinux), nuevos formatos de archivos (ntfs, hpfs, reiserfs) y el reconocimiento de gran cantidad de dispositivos modernos. Qu significa 2.6.9.56 El sistema de numerar el kernel est en cambio actualmente, de todas formas el kernel se ha numerado hasta el momento de la siguiente forma: linux-X.Y.Z El primer numero (X) significa un cambio mayor respecto al anterior, posiblemente incompatible en sus binarios, cambios en las concepciones. El primer kernel til fu del tipo 1.Y.Z ste kernel por ejemplo era monoltico, no permita cargar mdulos (drivers) para nuevo hardware, lo que haca que para agregar nuevo hardware haba que recompilar completamente el kernel. Posteriormente, sobre el ao 1996-1997, surgi el kernel 2.Y.Z Este s era modular, e incluida ciertas caractersticas ms que haca que fuera incompatible con el 1. Bsicamente nos mantenemos en el kernel tipo 2 de momento. El segundo nmero (Y) indica un cambio en concepcin del kernel, pero no en su compatibilidad, posiblemente hay restructuraciones a diferentes reas del kernel, mejoras en su rendimiento, seguramente habrn miles de drivers nuevos, arquitecturas y dispositivos que antes no existan sern agregados. El kernel 2.0 soportaba un firewall muy rudimentario llamado ipfwadm. Ver ms novedades del kernel 2.0. El kernel 2.2 ya soport un firewall (ipchains) que permita hacer NAT, y hasta se poda con un mdulo externo hacer labores de reenvo de paquetes hacia mquinas dentro de la red. Ver ms novedades del kernel 2.2

El kernel 2.4 ya soportaba un firewall mucho ms poderoso llamado iptables que es el que al momento se usa, con muchsimas caractersticas de manejo de firewall que lo hacen bien fuerte y estable. Ver ms novedades del kernel 2.4 El kernel 2.6 incluy soporte para discos SATA, tiene un manejo de memoria y procesos totalmente renovado lo que hace que el rendimiento, nivel de respuesta ante ambientes multitareas bien complejos sea altamente eficiente y bueno. El kernel 2.6 realmente responde mucho ms rpido que su antecesor. Ver ms novedades del kernel 2.6 Los nmeros Y, si se fijan bien, son pares. Si este nmero es impar lo que significaba era que el kernel era de pruebas, altamente inestable y no apto para la produccin (2.3, 2.5, 2.1), esto est de momento cambiando, veremos qu decide Linus. El ltimo nmero (Z) solamente indica un cambio cosmtico con respecto al Z-1 (anterior), pueden ser correcciones de seguridad, adiciones de nuevos hardwares, mejoras en drivers, etc. Pero normalmente no implica que el kernel haga que deje de funcionar ningn hardware ni cambie ningn concepto o preconcepcin respecto a otros kernels del mismo X.Y Igual que el kernel de linux, muchos paquetes de aplicaciones usan la misma terminologa para numerar sus sistemas:

sendmail-8.13.2 httpd-2.0.54 php-4.3.11

Sin embargo, estas no tienen en cuenta la caractersticas de que si la Y es impar estos son inestables. De hecho, repetimos, Linus ha decidido que ya este dato no tenga ningn valor respecto a la estabilidad o no de un kernel. Es decir, posiblemente el kernel 2.7 sea tan estable o ms que un kenel 2.6. Todos los kernels oficiales que han salido, pueden ser encontrados en: www.kernel.org Cmo puedo saber la versin del ncleo de linux que tengo instalada ? Use desde una terminal de Linux, el comando uname -r o este otro comando: cat /proc/version Actualizado: 2009/07. GNU/Linux no slo es capaz de ejecutar programas binarios creados especficamente para GNU/Linux, sino que es capaz de ejecutar programas binarios creados para otros sistemas operativos. Para ello existen emuladores como DOSEMU o DOSBOX para correr programas para DOS. El emulador WINE para emular Windows. Emuladores o mquinas virtuales como XEN, VMWARE, BOSCH y otros. Generalmente la velocidad es adecuada, lo que hace al GNU/Linux adecuado para correr programas creados para otros sistemas operativos. Por ejemplo, linux es capaz de emular una mquina real que pueda ejecutar el DOS,

mediante el dosemu Para el caso de windows, es capaz de emular a travs del wine, la plataforma bsica de windows y ejecutar desde el wine diferentes aplicaciones compiladas para windows. Realmente es un trabajo viejo y que sigue en constante actualizacin, y siempre tiene mejoras ya que emular toda la cantidad de llamadas que microsoft ha creado toma su tiempo, sobre todo cuando microsoft actualiza estas llamadas y hace que se tenga que revisar constantemente el trabajo. Con muchsimas aplicaciones como firefox, thunderbird, open office y cientos ms que corren nativamente en linux, no es muy necesario el wine, sobre todo porque cualquier otra aplicacin que no exista para linux, puede ser ejecutada mediante el rdesktop que permite conectarte a un servidor windows de terminal services y ejecutar aplicaciones en ese servidor. Adems nativamente linux puede interpretar y ejecutar cdigo de otros sistemas operativos unix, mediante el mecanismo llamado Linux ABI. Mediante el linux ABI podemos ejecutar el foxpro que existe para SCO dentro de nuestro linux, as como casi cualquier binario creado para otra plataforma de unix dentro de nuestro linux. Aparte de estos emuladores que son bastante conocidos, linux es capaz de actuar como servidor netware (mars nwe) y como servidor de archivos de windows (samba). As como es capaz de interpretar aplicaciones hecha en java desde el mismo shell. Tambin linux es capaz, mediante el proyecto go-mono aplicaciones hechas para .NET permitiendo que muchas empresas puedan ahorrar en costos de implementacin de sistemas operativos windows para ejecutar aplicaciones en mono. Es muy comn encontrar sistemas GNU/Linux corriendo VMWare www.vmware.com (cada vez ms, tambin el ms joven VirtualBox de Sun www.virtualbox.org) con varios sistemas operativos como DOS, Windows, MAC OSX, Solaris, BSD, todo funcionando AL MISMO TIEMPO en linux. Esto es factible si el computador dispone de suficiente memoria y espacio en disco para que estos sistemas trabajen simultneamente. Se recomienda al menos 1GB de RAM y alrededor de 10GB por cada sistema operativo, adems del almacenamiento que se pueda necesitar para guardar los datos del usuario. Ayuda mucho tambin que el CPU del equipo contenga las extensiones para soporte de virtualizacin (Intel VT AMD-V por ejemplo). Linux es bsicamente el kernel del sistema operativo, la base, el que maneja todas las operaciones de entrada/salida y mantiene saludable el manejo de memoria y asignacin de recursos del procesador. Sin embargo, debemos diferenciar bien entre el kernel de linux, y una distribucin de Linux. Una distribucin de linux es bsicamente una coleccin o conjunto de paquetes, recompilados por una empresa, normalmente con fines comerciales (vender los CDs,

vender soporte, vender cursos) en uno o varios cds o dvd los cuales vienen con un proceso de instalacin el cual permite, entre otras cosas:

particionar el disco duro definir una clave para el usuario de administrador, escoger los paquetes a instalar instalar grupos de paquetes previamente seleccionados para escritorio, ofimtica, grficos, multimedia, servidores, monitoreo, etc. configurar elementos del sistema como es la zona horaria, el ambiente grfico, definir direcciones IP, etc.

Estos paquetes incluidos en una distribucin no son solamente del proyecto GNU, sino de otros proyectos, con otros tipos de licenciamientos no comerciales (licencias tipo bsd, apache, X, etc) as como paquetes comerciales (adobe acrobat reader, flash player, real player, etc) pero que se distribuyen libremente. El objetivo final de las empresas que realizan las distribuciones es lograr dar cierto nivel de soporte y actualizaciones frecuentes a su distribucin, estas actualizaciones pueden variar siendo algunas gratuitas, otras pagadas El tiempo de vida de una distribucin tambin puede variar; as como soporte tcnico (normalmente es pagado) y cursos y certificaciones para la distribucin en cuestin. Distribuciones basadas en RPM: Los archivos rpm terminan en la extensin .rpm contienen varios archivos y programas en su interior, algo similar a los archivos .zip RPM es el acrnimo creado por redhat para definir un esquema de distribucin de paquetes. Significa RedHat Package Manager o Manejador de paquetes de RedHat Los RPM fueron en su momento y todava siguen siendo un paso de avance muy grande para el mundo de linux, ya que los rpm no slo incluyen una coleccin de binarios relativos a un determinado paquete o utilera sino que tambin incluye archivos de ayuda, de configuracin y sobre todo! incluye lo que se llama dependencias, esto es, qu otros paquetes rpm requiere este rpm para instalarse. De esta forma nos evitamos problemas que anteriormente ocurran y ocurren cuando se instala un paquete que para funcionar correcta o completamente, requiere de otros. Por ejemplo: El paquete php (php es un lenguaje interpretado que genera cdigo html de amplio uso en internet en estos momentos) tiene entre sus requerimientos el que exista un servidor web (apache) instalado. De esta forma si intentamos instalar el rpm del paquete php, este nos fallar diciendo que requiere del paquete rpm httpd (apache) para instalar. Entonces debemos instalar el apache primeramente y seguramente este nos fallar dicindonos que requiere algn paquete relacionado con SSL (capa de encriptacin) por lo que deberemos instalar el mod_ssl seguramente y entonces instalar el httpd (apache) y ahora s: instalamos el php.

De esta forma no dejamos cabos sueltos. Pero esto no es todo, los paquetes rpm permiten adems desinstalar completamente una aplicacin, pues se mantiene una lista de todos y cada uno de los ficheros de configuracin, libreras, binarios, pginas de ayuda y dems que haya instalado un paquete rpm, as de esta forma al borrar un paquete rpm podemos tener la total seguridad de que hemos eliminado todas las referencias y archivos instalados por el rpm. Esto puede sonar natural para una persona que viene del mundo de windows, pero un sistema de desinstalacin en linux era algo sumamente importante y requerido que no exista antes. Adems los paquetes rpm pueden ser actualizados, los rpm sobreescriben con total tranquilidad sus anteriores versiones instaladas, sustituyendo binarios y pginas manuales as como creando nuevos enlaces que se requieran, pero siempre respetan los archivos de configuracin preexistentes, lo que permite actualizar una aplicacin con una versin superior sin incurrir en una tarea completa de reconfiguracin. Sobre los rpm trabajaremos ms adelante en el curso, cuando aprenderemos a manejar rpm, recompilar paquetes, instalarlos, actualizarlos, removerlos y dems caractersticas propias de los rpm. Algunas distribuciones: De forma totalmente arbitraria nosotros hemos decidido dividir las distribuciones en:

distribuciones basadas en rpm y distribuciones no basadas en rpm.

De todas formas para una lista completa de distribuciones existentes o ya difuntas, pueden referirse a http://distrowatch.com/ Red Hat es una empresa lider en desarrollo, implementacin y administracin de soluciones linux y open source para la internet- Las aplicaciones de redhat varan desde dispositivos embebidos hasta servidores web seguros. Red Hat fu fundado en 1994 por dos visionarios Bob Young y Marc Ewing. El cdigo libre es la base de su sistema de negocios. Redhat no slo es el creador de la idea del rpm, para nosotros algo fundamental que sent bases para un rpido desarrollo del linux, sino que son los mantenedores y hospederos de una serie de proyectos y programadores muy conocidos para el mundo del linux. Proyectos tales como GCC (el compilador de C) y le dan trabajo a muchos programadores como Alan Cox, uno de los desarrolladores del kernel ms importantes al momento. Al momento el producto fundamental de redhat es el RedHat enterpise linux, al momento redhat mantiene 3 versiones: RHEL3, RHEL4 y RHEL5 las cuales son mantenidas por un periodo de 7 aos a partir de su fecha de salida al mercado. Estos periodos extendidos de soporte (se est hablando de hasta 10 aos de soporte) son una de las ventajas de usar esta distribucin.

La lista de servicios de redhat es grande, pero uno de los fuertes de ellos es:

Soporte tcnico Actualizaciones frecuentes Certificaciones para trabajar en sus productos

Los productos y servicios de redhat tienen un costo. Pero el sistema operativo y paquetes incluidos en la distribucin son distribuidos con el cdigo fuente de estos. A excepcin de los logos de redhat y cualquier paquete comercial que hayan incluido (al momento en rhel5 son slo 2 paquetes comerciales que no revisten mayor importancia). RedHat crea un sistema operativo y paquetes de ayuda altamente parcheados, que son en muchos casos bien diferentes a los paquetes originales creados por sus autores. Tiene una tecnologa que llaman backporting, en el que redhat no cambia la numeracin de los paquetes durante el tiempo de vida de su distribucin, sin embargo esto no significa que las aplicaciones sean viejas. Redhat se ocupa de portar hacia esas versiones, los parches y actualizaciones necesarias para corregir errores y potenciales o reales problemas. Es por esto que no debemos asustarnos de ver que el kernel del redhat es el 2.6.9 cuando hay kernels 2.6.12, es decir, tcnicamente hay una diferencia de 3 nmeros entre el kernel de redhat y la ltima versin oficial, pero esto no es cierto, pues redhat hace backporting, trae los arreglos y mejoras del kernel 2.6.12 o sus predecesores hacia el 2.6.9. El objetivo? Muy simple lograr que el kernel o cualquier aplicacin se comporten de forma estndar y no varen sus configuraciones o formas de trabajar durante el tiempo. Muchos paquetes nuevos traen nuevas configuraciones o nuevas funcionalidades que aunque buenas, puede que traigan problemas al ser instaladas y requieran de reconfiguracin por parte del administrador. Algunos administradores no manejan 1 o 2 mquinas, sino cientos, talvez miles de mquinas y realizar cambios en una configuracin es algo sumamente penoso y que puede traer enormes prdidas econmicas. Los servidores de redhat enterprise linux estn creados con el objetivo de ofrecer estabilidad, y esta es una de las maneras de lograrlas.. sin demeritar en lo absoluto que es un sistema eficiente y actualizado. Fedora se convirti desde inicios del siglo 21 en una distribucin auspiciada por redhat, un sandbox, o caja de arena, donde redhat prueba y prepara los paquetes que sern implementados para sus distribuciones comercialmente soportadas (RHEL). Fedora bsicamente contiene una serie de paquetes de ultima generacin que son planteados, propuestos en sus distribuciones para que los interesados puedan probarlos y reportar problemas. Fedora se compromete a liberar un nuevo core (as llaman a sus distribuciones, core1, core2, core3, core4, etc) cada 10 a 12 meses, y se compromete a actualizar solamente la versin recin liberada y la anterior a la recin. Por ejemplo, ahora estamos en fedora core11, por lo tanto actualizan el core11 y el core10. Core9 y core8 no son soportados ni actualizados ya por fedora.

Pros:

Paquetes muy actualizados, Ciclo de vida de las distribuciones: muy corto por lo tanto hay nuevos paquetes constantemente

Contras:

Al ser paquetes totalmente novedosos, muchos de ellos experimentales y sin mucho periodo de prueba, estos son propensos a fallar inexplicablemente o a fallar con una causa conocida. Por parte de fedora no existe un compromiso de arreglar un paquete, aunque claro est se intenta arreglar de ser posible. Al tener un periodo de vida muy corto (slo mantienen los dos ultimos cores) si una empresa necesita mantenerse actualizada para prevenir ataques, deber cambiar constantemente de core de fedora, incurriendo en downtimes, nuevos y desconocidos problemas, etc.

Es nuestra opinin de que fedora es una muy buena distribucin para las personas que requieren experimentar con lo ultimo del mercado, pero que no requieren de un compromiso de estabilidad por parte de la distribucin. Fedora NO se debe usar en servidores de aplicaciones crticos y que necesiten de soporte extendido y estabilidad. Si miramos estas dos opciones de redhat (RHEL y fedora) no tenemos muchas opciones, y verdaderamente casi nadie vea al principio una salida a esta problemtica: redhat distribuye su versin empresarial pero cobra por las actualizaciones y por usar su logo; mientras fedora es slo un juguete para desarrolladores y estudiantes.. Existen empresas que necesitan un servicio estable, con actualizaciones por largos periodos de tiempo y que no pueden o no quieren pagar por el servicio de actualizaciones de redhat. Qu hacer? Clones de Redhat Para eso han surgido, gracias al cdigo GNU y otros cdigos no comerciales, alternativas gratuitas o menos costosas de mantenimiento de servidores. Vayamos por el principio: Redhat, al usar cdigo GNU est obligado a liberar este cdigo, sin embargo redhat no slo libera el cdigo gnu que incluye en su distribucin, sino que tambin distribuye en formato src.rpm (SRPM, o los fuentes del rpm) la forma exacta en que ha compilado TODOS los paquetes que tienen cdigo libre, ya sean estos GNU o no. Qu significa esto? Que cualquiera puede tomar los SRPMS que libera redhat, y recompilarlos de la forma exacta (clon) en que redhat lo hizo, as de esta forma obtendr los paquetes rpm, con los binarios y archivos de configuracin exactos que redhat entrega en su distribucin.

Eso s. Redhat, de acuerdo a su licencia, en el artculo 2 del apndice 1 indica claramente que los logos de redhat y todas sus marcas son propiedad de redhat, por lo que no se deben distribuir sin autorizacin de ellos. Es por esto que se puede usar bsicamente todo de redhat, menos sus logos y dems marcas comerciales as como que no se puede acceder al soporte tcnico y actualizaciones si no se pagan por ellas. Basados en estas premisas, algunas personas y empresas crearon lo que se llaman clones de redhat, para ms informacin sobre los diferentes clones visitar este sitio. Entre los clones de redhat, est CentOS el que definitivamente vemos ms activo y con nimos no slo de copiar la informacin sino de crear distribuciones para nuevas arquitecturas no soportadas por redhat, etc, Es precisamente centos, en su versin 5 el que estaremos estudiando en este curso. De forma tal de que tengamos un conocimiento completo sobre cmo funciona un servidor RedHat Enterprise Linux y podamos posteriormente definir si se adquirir una licencia de uso del RHEL o se seguir usando en su empresa el centos. Ambas variantes son vlidas para comenzar. Trustix (trustix secure linux, tsl) Es una distribucin creada por www.trustix.org que es una empresa que crea esta distribucin con el objetivo expreso de funcionar y servir para ambientes de servidores. Es una distribucin muy optimizada y altamente especializada en el rea de servidores. No contiene ambiente grfico y se distribuye en un slo CD al momento. Las actualizaciones de trustix se ofrecen por al menos 2 aos despus de salida al mercado una distribucin, pero no slo eso, sino que la migracin de una versin anterior de trustix a una ms moderna es un proceso poco complicado lo que permite mantenerse con un sistema actualizado y un alto uptime, o tiempo en el aire. Nosotros las usamos para sistemas de servidores que requieren de alto performance y la usamos de base para construir nuestra propia distribucin para servidores segura. OpenNA: Es una distribucin creada en el Canad, orientada a un alto aseguramiento del sistema mediante medidas preventivas y predictivas de problemas. Esta distribucin es basada en la idea de redhat, se maneja por rpm y una de las caractersticas ms interesantes de los seores de openna es que en su sitio web distribuyen un libro en el que indican paso a paso cmo se van compilando todos los paquetes de un sistema y cmo se deben ir asegurando. Es aproximadamente el mismo mtodo que usan para crear la distribucin y definitivamente el libro es una gran ayuda para personas que desean mejorar su conocimiento sobre cmo asegurar paquetes de un sistema linux. Mandriva Linux (antiguamente Mandrakelinux) Creada en 1998 con el objetivo de hacer linux ms fcil de usar por cualquier persona. En aquellos momentos linux era bien conocido como un sistema operativo poderoso y estable que demandaba muy slidos conocimientos tcnicos y un uso extensivo de lnea

de comando. Mandrake vi la oportunidad de integrar el ambiente grfico con poderosas utileras de configuracin y manejo del sistema. Con esta idea innovativa mandriva ofrece todo el poder y estabilidad de un sistema linux tanto a personas profesionales y conocedoras de Linux como a principiantes o personas sin mayores conocimientos tcnicos pero con inters en usar linux para realizar sus labores. En nuestra opinin realmente mandrake o mandriva como se llama actualmente es una muy buena distribucin orientada al ambiente grfico. SUSE SUSE LINUX se cataloga como lder internacional y proveedor de soluciones en sistemas operativos de cdigo abierto. La larga experiencia de suse en linux y adems su enorme cantidad de personas dedicadas a desarrollar en cdigo abierto han contribuido indudablemente en reconocer a suse como una de las soluciones de linux ms completas disponibles al momento. SUSE LINUX fue adquirido por Novell, Inc en Noviembre del 2003. DISTRIBUCIONES NO BASADAS EN RPM Aunque hay un gran numero de distribuciones, slo hablaremos de las ms importantes al momento: Debian El proyecto Debian es una sociedad de personas que han hecho causa comn para crear un sistema operativo gratuito. Este SO se llama Debian GNU/Linux o simplemente Debian. Los sistemas Debian actualmente usan el Kernel de Linux. Debian se caracteriza por ser totalmente gratuito, sin organizaciones que los mantengan y con una amplia cobertura de plataformas, tanto populares como ya obsoletas o muy nuevas. Entre las dificultades que debian est enfrentando ahora es una falta de soporte comercial (requerido por muchos clientes) as como una gran lentitud en liberar nuevas versiones y nuevas actualizaciones, as como peleas internas dentro del grupo de desarrolladores. Como objetivo social, gratuito y libre, es una gran distribucin. A mis efectos, como persona que tiene que dar soporte comercial serio a empresas, debian no es una distribucin preparada para mantener puntos o sistemas crticos dentro de las empresas. Muchas personas adoran a debian y mueren por l, lo califican como altamente adictivo, sobre todo programadores, o investigadores o simplemente partidarios del software totalmente libre. Gentoo Es una distribucin que tiene una caractersticas interesante, aparte de ser gratuita y libre por supuesto, es una distribucin que puede adecuarse completamente a la mquina en que se instala. Esto es, a los efectos de una instalacin se pueden mandar a instalar solamente los paquetes que requeriremos, ni ms ni menos, y estos paquetes podemos bajarlos de la internet, de su sitio web y recompilarlos de acuerdo al hardware

o plataforma que tengamos. Gentoo adems no tiene distribuciones as propiamente dichas, se puede instalar desde cualquier cd de arranque de gentoo, que l mismo se encargar de bajar el cdigo fuente de todos los paquetes requeridos desde la internet, y este cdigo por supuesto ser de la ltima versin disponible en internet. Es un ambiente muy interesante para experimentadores y es una distribucin muy popular entre personas que realmente quieren comprender cmo funciona linux y que se preocupan por su desempeo. Ubuntu Otra distribucin popular al momento es ubuntu, indica que es y permanecer libre. Estimamos esta distribucin ha salido adelante sobre todo por los problemas de lentitud de debian, que hacan que muchas gentes se desmotivaran por usar debian por lo viejo y demorado de sus actualizaciones. MINI DISTRIBUCIONES, Las minidistros, son distribuciones pequeas, usualmente basadas en un slo CD, o CD de tamao de una tarjeta de crdito. Adems no es infrecuente encontrarnos con distribuciones que caben solamente en un floppy (s, en un floppy se puede montar un router que haga nat y firewall), o en dos o tres floppies. Tambin hay distros que caben en pendrive o cualquier dispositivo USB. No solamente son distribuciones educativas o proyectos para pasar el tiempo, sino que muchas de ellas (coyote linux) permiten tener un efectivo firewall y servidor que haga NAT, as como son pequeas alternativas para levantar un sistema ms grande en caso de que haya fallado y trata de recuperar su informacin y echarlo a andar nuevamente. Hay decenas de distribuciones interesantes, por favor buscar y ver: knoppix puppy linux coyote linux en www.distrowatch.com o en www.LinuxCd.org Las diez mejores distribuciones GNU/Linux http://distrowatch.com/dwres.php?resource=major Distribuciones educativas: Una de las distribuciones ms interesantes es Linux From Scratch, ms que educativa en el sentido general podemos indicar de ella que es una distribucin que ensea cmo realizar una distribucin desde cero. Cmo recompilar e instalar un sistema operativo compilando paquete por paquete e instalndolos. As que nos ensea bsicamente cmo instalar linux sin tener que usar ninguna distro previamente comentada.

Los CD Vivos o Live CD Son CDs o DVDs que no requieren instalacin. Traen conjuntos de programas seleccionados para que funcionen al arrancar directamente desde un CD o DVD. No tienen ni la velocidad ni toda la funcionalidad de los programas instalados en el disco duro, pero son una excelente alternativa para probar una distribucin, para familiarizarse con Linux y para aprendizaje del sistema Linux o de sus programas. Aqu hay varias docenas de CDs / DVDs que pueden ser descargados. Necesitar un ancho de banda no disponible en en CEC-EPN. http://www.frozentech.com/content/livecd.php Y qu hay de otros programas y aplicaciones ? Existen miles de programas y aplicaciones para Linux (y para Windows) que estn desarrollados o que estn en desarrollo. Puede apreciar una buena cantidad en: www.sourceforge.net www.freshmeat.com En conclusin: Como se puede ver, Linux es una enorme fuerza en el planeta Tierra. Una fuerza que no tiene retorno. Como se puede apreciar en los links arriba indicados, existen cientos de miles, tal vez millones de personas trabajando de una u otra manera para mejorar Linux y agregar programas (y facilidades) a su ya extensa lista. Lo interesante de Linux es que se basa en la cooperacin de la comunidad y no en la competencia o el secretismo. Linux, como cualquier sistema operativo moderno, solicitar que el usuario ingrese su nombre de usuario y contrasea para que pueda iniciar su trabajo. Deber consultar con el instructor o con el personal de soporte del CEC para conocer el nombre de usuario y contrasea vlidos. Una vez que escribe el nombre de usuario y contrasea, aparecer una pantalla similar a esta: En este momento no profundizaremos con el ambiente grfico ya que la mayora de actividades de administracin se realizan en modo texto, pero s explicaremos dos temas importantes: cmo cerrar la sesin y cmo iniciar en modo texto o terminal: Para cerrar la sesin (una de las varias maneras de hacerlo) haga clic en Sistema y luego en Salir o Apagar. Esta segunda opcin apaga el computador, mientras que la primera le permite ingresar como otro usuario. Para abrir una sesin en modo texto (modo terminal) haga clic con el botn derecho del ratn sobre cualquier parte de la pantalla no ocupada por otro elemento grfico

(cualquier parte de color azul estar bien, suponiendo que no haya cambiado por otro el fondo azul de la pantalla). La sesin de TERMINAL o modo texto aparecer algo as: En la ventana de terminal se pueden escribir cientos de rdenes utilizando el teclado. Vamos a ver una instruccin que le permitir cambiar de idioma ingls a espaol o a cualquier idioma que Ud. elija. Por favor elija un idioma que Ud. conozca, porque de lo contrario, le resultar difcil volver a configurar el idioma (no encontrar la opcin adecuada). En este caso hemos seleccionado Spanish (spain) Ahora, deber cerrar la sesin (de la manera indicada arriba) y volver a ingresar para que los cambios se realicen. Administrador de archivosUd. puede revisar los archivos y carpetas (directorios) de Linux tanto en modo grfico como en modo texto. Seleccione Y luego puede hacer clic en donde dice EQUIPO

Hay muchas otras formas que deber conocer, tanto en modo grfico, como en modo texto. Se supone que un administrador de Linux debe conocer ms que los usuarios, as que deber investigar y experimentar. Sistema de archivos de Linux (Linux Filesystem) El sistema de archivos de Linux es transparente para la mayora de usuarios, a quienes no les interesa la manera en que se graba su informacin en el disco duro, cd, dvd o flash memory. A un usuario normal solamente le interesa que pueda grabar y recuperar su informacin. Sin embargo, a un administrador de linux le interesa (debe interesarle) el formato interno de grabacin para poder controlarlo, optimizarlo y en muchas ocasiones, escoger diferentes formatos en beneficio de los usuarios que dependen de l (del administrador). Por lo tanto, aqu veremos a qu se refiere con eso de Filesystem Linux reconoce (puede leer y grabar) muchos tipos de filesystem, entre ellos: ext, ext2, ext3, raid, reiserfs, ntfs, fat12, fat16, fat32, hpfs, pcfs, nfs, samba, cdfs y otros. Sin embargo, as como el formato nativo de windows es NTFS (antes era FAT32, y antes de ello el FAT16 y el FAT12), linux tiene su formato nativo en el ext3 (antes era el ext2, y antes era el ext). Las mejoras en los formatos de grabacin (filesystems) permiten aprovechar las nuevas capacidades de almacenamiento, mejoran el tiempo de lectura y escritura, brindan

mayores seguridades y permiten recuperacin en caso de cadas del sistema. Por ello es mejor usar un filesystem reciente en vez de un filesystem antiguo. El sistema de archivos de Linux filesystem, fue en principio el mismo sistema de archivos de Minix creado por Andrew S Tannenbaum a fines de los 80. Este sistema de archivos de Linux se conoci inicialmente como EXT. Era digamos as una extensin al sistema de archivo Minix. Minix adoleca de ciertas falencias que su autor en el nimo de mantener simpleza a la hora de educar (minix es un SO orientado a universidades, a la educacin, a comprender su funcionamiento) haba introducido. Por ejemplo Minix no soportaba (ni soporta) archivos de ms de 64mb de tamao as como que el nombre de los directorios no deba pasar de los 16 caracteres. Los filesystem ext, ext2, ext3 El formato de archivos EXT corrigi estas limitaciones y s soportaba tamaos de archivo de hasta 2GB de tamao y filesystems de hasta 2GB de tamao (mucho para esa poca) y adems que los nombres directorios y archivos podan ser de hasta 255 caracteres. Sin embargo, el slo soportar 2GB como tamao mximo de un Filesystem era una dificultad, aunque no la nica. Tambin la forma en que se organizaban los inodos libres (listas de bloques que pertenecen a un archivo) era del tipo de lista enlazada simple, lo que haca sumamente ineficiente la bsqueda de un inodo para ser usado (asignado). Por lo tanto, los autores del EXT y la comunidad de linux se vieron en la necesidad de disear y programar un mejor formato que permitiera superar estas dificultades. Para esto, se cre el formato EXT2, a fines de los 90, que no slo superaba con creces el tamao mximo que poda tener un archivo (ahora soportan unos 4TB de tamao) sino que adems la forma de organizar los inodos era en forma de rbol lo que haca sumamente efectiva la bsqueda de inodos libres y asignacin de espacios en disco. Sin embargo el FS ext2 tena (tiene) una pequea situacin problema. Y es que no mantiene una bitcora o sistema transaccional que es muy til para recuperar un filesystem daado por cadas inesperadas de la mquina o fallas de corriente. El EXT2 poda dejar inconsistente un sistema lo que lo hace altamente peligroso por la potencial prdida de datos que se puede incurrir. Si embargo el FS ext2 fu creado con provisiones para posteriores adiciones y mejoras al sistema, lo que permiti que se pudieran agregar nuevas caractersticas de bitcora a este FS. Este nuevo tipo de FS es llamado EXT3 y no es incompatible con el EXT2, es decir, un FS ext2 puede ser convertido a ext3 y lo contrario tambin es posible, lo que ha hecho muy fcil la migracin de ext2 a ext3 con slo actualizar las utileras de acceso a los FS y el kernel.

Aparte del FS ext3, existe al menos un sistema transaccional ms, es el llamado ReiserFS los autores lo califican como un FS que permite un mejor performance por la forma en que organiza los inodos as como que tambin permite una mejor recuperacin del FS en caso de un evento inesperado que ponga en peligro la informacin contenida en los discos. Este formato es usado en forma nativa en el sistema operativo MAC OSX (La X al final indica que es un derivado de Unix / Linux). Sin embargo en diferentes pruebas de performance se ha determinado que el FS reiserfs es muy rpido en efecto para el manejo de gran cantidad de archivos pequeos (de 2 a 3k de tamao) pero el performance en el manejo de grandes archivos (superiores a 3k) no se diferencia en nada del ext3. Adems, el reiserfs tiene todava una buena etapa de experimentacin y pruebas para determinar potenciales fallas que todava surgen en l, as como adiciones de caractersticas bsicas como el manejo de quotas. Por todas estas razones, nosotros no recomendamos de momento el usar el reiserfs para manejas nuestro sistema de archivos en un servidor, siendo adecuado para estaciones. Linux adems puede manejar diferentes FS de otros sistemas operativos, es capaz de leer y escribir sin inconvenientes en FS del tipo VFAT (FAT32), msdos (FAT16), puede leer NTFS (y escribe pero de forma experimental) Tambin se mantienen sistemas de archivos virtuales como el tmpfs (permite mantener un disco en ram), cramfs, squishfs (estos dos permiten mantener archivos pero en formato comprimido, no permiten escribir, pero s leer) y diferentes FS informativos como el procfs para obtener informacin del kernel y usbfs para manejar dispositivos USB. Otros FS menos conocidos son: NFS: Para compartir archivos entre linux Samba: Para compartir archivos con servidores windows. PCFS es el formato que utiliza el sistema operativo Solaris para equipos X86. Y para qu me sirve todo esto ? La importancia de conocer el filesystem se ver al usar el comando mount y los comandos mkfs. Por lo pronto, asegrese de que las particiones del disco estn como tipo ext3 que es el mejor sistema de archivos para servidores. Si la particin est como NTFS o FAT, deber realizar ciertas operaciones extras y cargar drivers que retardarn el rendimiento del equipo. Para ver el sistema de archivos que utiliza cada particin de linux, use el comando df -T o vea el contenido del archivo /proc/mounts por ejemplo cat /proc/mounts

/ |-bin/ |-boot/ |-dev/ |-etc/ |-home/ |-lib/ |-media/ |-mnt/

|-root/ |-sbin/ |-tmp/ |-usr/ | | |-var/ sbin/ bin/ etc/ lib/

Aqu tenemos la estructura bsica del sistema linux. Comienza de arriba a abajo por el directorio raz (root) que se describe con el signo /. En el directorio /bin tenemos los binarios bsicos de linux, los requeridos para su funcionamiento mnimo, no incluye adicionales como servidores (web, mail, ftp, etc) ni ambiente grfico ni nada similar, slo los comandos requeridos para que linux funcione y pueda ser reparado. El directorio /sbin contiene igualmente los binarios bsicos para que linux funcione pero en este caso los del super usuario (sbin=superuser binaries), como son los comandos para apagar la mquina, reiniciarla, formatear los discos, particionarlos. No estn las utileras como agregar usuarios ni ningn servidor. El directorio /boot es uno de los ms importantes y simples del sistema, sencillamente contiene el kernel (o los kernels, pues podemos tener ms de un kernel instalado) del sistema linux. Este directorio siempre recordamos que al particionar debe montarse en una particin primaria y ser el primero en ser creado. En /etc tenemos un etctera de cosas, bsicamente todos son archivos de

configuracin que podemos modificar para cambiar el comportamiento del sistema, sus servicios y servidores. En /etc tenemos por ejemplo los archivos que almacenan las claves de usuarios, archivos que indican cmo y cundo debe levantarse un servicio, qu zona horaria tenemos, y muchsimos archivos de configuracin ms de los cuales estudiaremos algunos posteriormente. El directorio /etc contiene mayormente archivos de textos que pueden ser ledos y contienen mucha explicacin sobre cmo realizar cambios y la utilidad de estos archivos. La carpeta /etc es importante porque guarda archivos de configuracin propios de cada mquina, por ejemplo: /etc/passwd, /etc/smb, /etc/sysconfig, /etc/rc.local y otros archivos que deben ser respaldados porque contienen la configuracin y valores exclusivos de cada equipo. Es en /home donde se crean las carpetas de los usuarios, al crear un usuario, el sistema linux le asigna un directorio raz o base para este usuario, donde l podr escribir y guardar su informacin. Estos directorios normalmente se crean dentro de /home y tienen como nombre el nombre del usurario (/home/pedro, /home/magda, /home/joel, etc, etc) Para el usuario administrador del sistema (root) el directorio base no est en home sino en un directorio propio llamado /root El directorio /lib contiene las bibliotecas del sistema, aqui se almacenan todas las funciones que pueden ser usadas por las aplicaciones del sistema. Podemos pensar en un equivalente de windows: DLL. Este directorio normalmente no debe ser tocado, no hay mucha informacin extrable de ella y no debemos tocar nada a no ser que realmente conozcamos lo que estamos haciendo. /media y /mnt, son los directorios donde se montan los dispositivos extrables, tales como cmaras digitales, CDROM, floppies, dispositivos USB, etc. Anteriormente se usaba /mnt para realizar los montajes de estos dispositivos. Desde Centos4 se usa el directorio /media. El directorio /proc contiene informacin til que nos brinda el kernel y adems mediante este pseudo filesystem, podemos realizar ajustes y cambios al kernel ;cambiar parmetros del protocolo tcpip, leer la memoria y procesador usados, ver cantidad de procesos ejecutando y quin los ejecut y decenas de parmetros interesantes del kernel. En /usr van las aplicaciones del usuario, digamos, los binarios que no son requeridos para que la base del sistema funcione: servidores como el apache, sendmail, vsftp, sistemas de anlisis de logs, herramientas de firewall, sistema de ambiente grfico; en fin: cualquier aplicacin que aunque muy til no es imprescindible para cuando tenemos una emergencia, para arrancar bsicamente al sistema. /usr tiene una estructura similar a /, es decir, contiene un directorio bin/, sbin/, etc/, todos estos repetimos seran binarios y archivos de configuracin no imprescindibles para un arranque de emergencia y que son elementos agregados por el usuario (nosotros) a la hora de instalar o durante el tiempo de vida del sistema.

/tmp contiene archivos temporales escritos por cualquier usuario, normalmente va en una particin aparte y por defecto es posible escribir desde cualquier usuario hacia l. Como su nombre lo indica, los datos en l deben ser temporales y de hecho el sistema linux se ocupa cada cierto tiempo en hacer limpieza de estos datos para evitar que se llene por falta de control /dev contiene dispositivos del sistema, esto es, /dev es un punto de enganche para referirnos a elementos tales como los discos, puertos seriales, teclado, video (tty), unidades de almacenamiento, sonido, etc.. en fin, es el que nos da entrada al mundo del manejo de los dispositivos. Por ejemplo algunos dispositivos y su descripcin:

ttyS0 - puerto serial 1 (com1 en DOS) ttyS1 - Puerto serial 2 (com2 en DOS) sda - primer disco scsi sde - quinto disco scsi sdb1 - primera particin del 2do disco scsi hda - disco ide (hd) mster primario (el primer disco del primer bus) hdb - disco ide esclavo primario (segundo disco de la 1ra controladora) hdc - disco ide mster secundario (primer disco de la segunda controladora) hdd - disco ide esclavo secundario hda3 - 3ra particin del disco mster primario dsp - digital signal processing - dispositivo de procesamiento de sonido

/var es el ocupado de almacenar datos variables. Estos son datos que eventualmente ingresarn al sistema pero pueden ser eliminados por la aplicacin que los usa, o sencillamente el usuario mismo se encargar de procesarlos. Por ejemplo, var sirve para:

almacenar los logs del sistema (/var/log) almacenar la cach del proxy del sistema (/var/cache/squid) almacenar los mensajes entrantes a los usuarios (/var/spool/mail) almacenar los mensajes salientes (/var/spool/mqueue) almacenar los archivos de actualizacin (/var/cache/yum)

bsicamente como podemos ver, estos datos que indicamos son variables, unas veces pueden existir y pueden ser procesados y eliminados posteriormente (mensajes salientes? mensajes entrantes?) a medida que los usuarios vayan procesando su mensajera o que el tiempo vaya pasando y los logs vayan siendo rotados. Importancia y atencin a la carpeta /var La carpeta /var es muy importante porque contiene especialmente estos cuatro directorios que deben ser respaldados: /var/log contiene los logs del sistema

/var/lib/mysql contiene las bases de datos de mysql /var/www/html contiene las pginas web del servidor web /var/spool/mail contiene los mails de los usuarios Para los usuarios de Windows 1. En linux es ms comn llamar DIRECTORIO a lo que en Windows se conoce como CARPETA o Folder. 2. Linux NO tiene unidades o letras como A: C: D: etc. Vea los directorios /mnt y /media para encontrar los disquetes, los cds, los dvds y las memorias flash. 3. El directorio raiz de Linux es el / (barra diagonal inclinada a la derecha o slash), mientras que en Windows es el \ (barra inclinada a la izquierda o backslash). 4. El separador de directorios (carpetas) de linux es el / mientras que el de windows es el \ 5. Los nombres de directorios y archivos de Linux reconocen y diferencian letras maysculas de letras minsculas, mientras que en Windows eso no importa. En linux no es lo mismo el archivo ABC que el archivo aBC o que Abc, son tres distintos archivos, y si equivoca el tipo de letra, no obtendr los resultados deseados. 6. Al copiar archivos de Linux a memorias flash o cds, se pierden ciertos atributos de los archivos, como los permisos. Si luego desea regresar el archivo a su mquina linux, o desea pasar a otra mquina linux, es recomendable usar el comando tar que guarda en un archivo todos los atributos y permisos. Revise el comando tar. 7. Las memorias flash generalmente se activan automticamente (servicio autofs) y quedan dentro de la carpeta /media o aparecen en el escritorio del usuario. 8. Antes de retirar una memoria flash o disquete, debe DESMONTARLO o EXPULSARLO. En linux se conoce como DESMONTAR, con el comando umount (no, no falta la letra n, no es unmount sino umount por ejemplo umount /media/flash_ro 9. Algunos directorios equivalentes entre Linux y Windows / equivale a \ /bin equivale a \Archivos de programas y \windows\system32/home equivale a \Documents and Settings /home/ricardo equivale a \Documents and Settings\Ricardo /root equivale a \Documents and Settings\Administrador\Mis documentos /root/Desktop equivale a \Documents and Settings\Administrador\Escritorio

El resto de directorios no tienen una equivalencia precisa.

BASH Es un shell, o consola, muy popular en el ambiente linux, de hecho ser el que estudiaremos y mantendremos usando durante todo el curso. Aunque existen otros shells, no es el objetivo aprender caractersticas y diferencias entre estos, sino mejor dirigirnos a aprender el uso del bash que por su popularidad es bsicamente el estndar a usar entre todos los shells que existen para linux. Estos comandos son muy comunes a sistemas unix y linux, por lo que si se conocen comandos de unix o se conoce el manejo de otros shells, el usar el bash ser una labor muy fcil. Una gua mucho ms completa de manejo del shell la podemos encontrar en: www.ernestoperez.com Atajos: antes de comenzar, queremos indicarles de ciertos atajos muy tiles para el bash, que pueden ayudar a mejorar el rendimiento y la rapidez conque hagamos tareas en el shell. Bash es conocido por algo que llaman autocompletion, o auto completamiento, no tenemos que escribir completamente un comando o un directorio, sino que sencillamente lo podemos completar con la tecla . Por ejemplo si quisieramos ejecutar el comando dos2unix (comando utilizado para convertir ficheros textos de DOS a ficheros textos de unix) podramos hacerlo tecleando completamente todos sus caracteres (desde la d de dos hasta la x de unix) pero tambin podemos usar un atajo, esto es escribir slo los primeros caracteres y despus apretar , por ejemplo:dos2

De esta forma se nos completara la cadena completa (dos2unix). Lo mismo ocurrir cuando nos queremos cambiar de directorio, por ejemplo supongamos que queremos cambiarnos a /var/spool/mqueue es un directorio un poco largo de teclear y puede inducirnos a errores por desconocimiento o sencillamente por haber tecleado mal. A muchas personas le ocurre que en vez de poner spool ponen por error spoll o cualquier otra variante lo que conducir a que no podamos entrar a ese directorio, nos falle, nos inquietemos, nos desesperemos porque no existe ese directorio, hasta hallar que en realidad es cierto el directorio ni existe ni es el que queramos acceder pues lo hemos escrito mal. Cmo evitar esos malos entendidos? Sencillamente:

cd /vaspmq

Es decir, con slo describir las dos primeras letras (va, sp, mq) y apretar TAB inmediatamente despus, he logrado cambiarme de directorio adems que el shell se ha ocupado por mi de escribir correctamente el nombre del directorio. Esto nos acelera el proceso de entrar a un directorio o ejecutar un archivo, y adems nos evita confusiones sobre nombres. En caso de existir ms de un directorio o archivo con los mismos caracteres iniciales, podemos presionar TAB dos veces y nos dir las alternativas que tenemos, por ejemplo pongamos:[root@eperez ~]# dos dos2unix dosfsck [root@eperez ~]# dos

Nos dar posiblemente dos opciones: dos2unix y dosfsck, es decir dos comandos que comienzan con dos, podemos entonces diferenciarlos escribiendo la siguiente letra (por ejemplo 2) y apretando de nuevo, esto nos llevar al comando que queremos. Otros atajos son el ctrl E y ctrl A, ^a nos lleva al inicio de una lnea que estamos escribiendo de forma tal que no tenemos que ir con el cursos poquito a poco hasta el inicio sino que podemos apretar ^a y listo. ^e por el contrario nos lleva al final de una lnea si necesitamos seguir agregando. TAREA: Probar creando una linea cualquiera (con su nombre por ejemplo) y apretando ^a y ^e Otros shortcuts muy importantes: ^c : Detiene, para, elimina de memoria un programa que estemos ejecutando en el shell ^l : limpia la pantalla ^d : permite la salida del shell actual (cierra la sesin) Copiar, mover, renombrar, borrar: Los comandos son muy simples y parecidos en su sintaxis. Para copiar un archivo de un lugar a otro podemos hacerlo con cpcp /etc/resolv.conf /root/

Esto mover el archivo resolv.conf que est dentro de /etc hacia el directorio /root (el directorio home del administrador) Tambin existe la variante de copiar hacia el directorio donde estoy (directorio actual) descrito por el signo de .cp /etc/resolv.conf .

Copia resolv.conf que est en /etc hacia aqui (.) Para mover, se usa el comando mv, con la misma sintaxis del anterior:mv /root/resolv.conf /varEsto

es, mueve el archivo resolv.conf que est en /root

hacia /var

cuidado con el comando mover, pues si movemos de lugar algo dentro de /etc podemos daar el arranque del sistema!!!!!!! Para renombrar podemos usar el mismo comando mv pero dndole otro nombre:mv install.log milogdeinstalacin

por ejemplo esto movera un archivo llamado install.log hacia otro llamado milogdeinstalacion lo que es lo mismo que renombrarlo (fjense que el movimiento fue dentro del mismo directorio). Para borrar muy sencillo igualmente, podemos ejecutar rmrm milogdeinstalacion

borrara el archivo que acabamos de renombrar. De ser posible traten de no borrar nada mientras prueban, para evitar que se dae el sistema. Si queremos borrar un directorio recursivamente podemos usar:rm -Rf directorio/

Esto borrar todo el directorio y los archivos y directorios que estn dentro de l. ls: permite listar contenidos de un directorio ls -l permite listar contenidos de un directorio y mostrar informacin del propietario, tamao del archivo fecha de creacin y otra informacin de ejecucin:ls -l /etc

listara contenidos extendidos del directorio /etc cd : me permite cambiarme de directoriocd /etc

me cambiara a /etccd

as slo, sin ningn parmetro adicional nos llevar al directorio home del usuario que estemos usando, en este momento estamos usando root, por lo tanto nos llevara a /rootcd -

nos permitir ir al directorio inmediato anterior donde hemos estado Para conocer el directorio actual, podemos usar el comando pwd (no lleva parmetros)[root@eperez ~]# pwd /root

Para crear un directorio podemos usar mkdir, y para borrarlo rmdirmkdir test rmdir test

El primer comando crear el directorio test y el segundo comando lo borrar.

rmdir no borra un directorio si no est vaco, por lo que preferimos la opcin anterior (rm -Rf) Para conocer el espacio disponible en disco, podemos usar df, este nombre viene de "disk free" o disco libre. El switch -h representa los valores en formatos legibles para el humano (en megabytes, gigabytes).[root@eperez ~]# df -h Filesystem Size /dev/hda3 8.6G /dev/hda1 99M /dev/hdd2 7.5G none 221M Used Avail Use% Mounted on 5.1G 3.1G 63% / 8.3M 86M 9% /boot 6.8G 364M 95% /home 0 221M 0% /dev/shm

En este ejemplo la particin / (/dev/hda3) tiene 8.6 gb de tamao de los cuales estoy usando 5.1G y libres 3.1GB para un 63% de uso. /home (/dev/hdd2) est hsando 6.8GB de los 7.5gb mximos que tiene. nos da una idea completa de todos nuestros filesystems y su nivel de uso. Intentar sin la -h (slo poniendo df) ver que los numeros se representan en k y son ms difciles de comprender. du -h nos permite ver el uso detallado dentro de un directorio, por ejemplo: du -h /usr nos listar detalladamente el uso de espacio en disco de cada directorio dentro de /usr, hemos puesto el ejemplo de /usr porque es un ejemplo bien largo como vern. Para reducir el detalle del comando du, podemos especificarles la profundidad mxima que queremos que nos detalle, por ejemplo:[root@eperez ~]# du -h --max-depth=1 /usr 95M /usr/include 368K /usr/local 19M /usr/libexec 1.3M /usr/kerberos 86M /usr/java 21M /usr/sbin 104M /usr/bin 1014M /usr/lib 1.1G /usr/share 8.0K /usr/etc 8.0K /usr/games 34M /usr/src 88M /usr/X11R6 2.5G /usr

Vern que tenemos un detalle de cada directorio dentro de /usr, pero resumido slo a un directorio de profundidad, y al final tenemos el uso real de /usr que es en mi caso de 2.5GB. Paginadores un paginador es un comando que nos permite ver un archivo una pgina a la vez.

Por ejemplo, el comando cat no es un paginador, pues nos mostrar un archivo en toda su extensin (recuerden usar el ):cat /etc/protocols

Nos dar un listado grandsimo de los protocolos que conoce nuestro servidor (numeros de puerto - protocolo) pero no nos dejar prcticamente ni leer. A veces cuando el archivo es pequeo (menos de una pgina) conviene usar el cat. Pero si queremos leer con detenimiento podemos usar:more /etc/protocols

more es un paginador antiqusimo y conocido, nos permitir movernos con espacio de pgina en pgina. Con q podemos salir del archivo que estamos visualizando. Otra opcin, mucho mas preferida por m es less, less (el antnimo de more) nos permitir paginar igualmente y podremos movernos con espacio hacia abajo. Y podemos salir con q, pero adems nos permite: G: ir al final del archivo g: ir al inicio del archivo 15G: ir a la lnea 15 del archivo (en vez de 15 puede ser cualquier numero) /texto : permite buscar texto dentro del archivo, yendo desde donde estamos posicionados hacia abajo / : permite buscar el mismo texto anterior (es decir no especificamos cadena de bsqueda por lo que busca nuevamente la bsqueda anterior). ?texto : busca desde donde estamos hacia arriba el texto ? : sigue buscando la siguiente ocurrencia del texto anteriormente buscado. !cmd : ejecuta cmd, por ejemplo !ls ejecutara un ls en el shell pero se mantendra en el comando less sin salir F : hace un poll, es decir una bsqueda de nuevas adiciones al final de un archivo, es muy til cuando estamos viendo archivos de logs que estn creciendo continuamente, podemos ver qu va sucediendo interactivamente. w : sube una pgina ESPACIO: baja una pgina v : llama al editor vi dentro del mismo less y permite editar cualquier archivo. Nos permite tambin ver directamente archivos comprimidos sin tener que abrirlos previamente. Bsquedas dentro del rbol de directorios. Para este objetivo podemos usar dos comandos, el primero find, es muy lento porque hace bsquedas en vivo dentro del rbol de directorio, pero es muy efectivo ya que nos da informacin real al momento de la ejecucin:find /etc -name "host*" -printEsto

lo que hara sera encontrar dentro del directorio /etc todos los archivos que contengan la palabra host* e imprimir esta info.find /usr -name "*bin*" -print

encontrara cualquiera que tenga bin (cualquier cosa delante y detrs) dentro de /usr El otro comando muy fcil es locate, permite hacer bsquedas dentro de una BD

generada en cada madrugada. Esta bsqueda es extremadamente rpida, pero como la BD se genera en la madrugada, puede ocurrir que algunos archivos no aparezcan o aparezcan pero ya no existan.locate dos2unix

buscara cualquier referencia a dos2unix Si quisiramos actualizar la BD con la informacin al momento actual, podemos ejecutar: updatedb y esperar un tiempo a que actualice, si el filesystem contiene muchos archivos demorar algunos minutos u horas Directorio /proc Este directorio contiene muchsima informacin que podemos leer y hasta escribir para mandarle mensajes al kernel, o para obtener informacin del kernel. En /proc se listan diferentes aspectos del sistema como la memoria o procesadores, los dispositivos usb activos y tambin informacin sobre todos y cada uno de los procesos del sistema (son esos numeros que se ven si listamos /proc) Algunos datos interesantes que podemos obtener:cat /proc/meminfo

nos indicar variada informacin sobre la memoria del sistema (RAM y virtual) informacin que tambin podemos obtener con el comando free de una forma muy resumida.[root@eperez ~]# free -m total used cached Mem: 440 433 127 -/+ buffers/cache: 233 Swap: 509 0 free 6 207 509 shared 0 buffers 72

en este caso free me indicara que tengo 440mb de memoria de los cuales se estn usando 433 y efectivamente quedan libres 6 megas. Pero que de esos 433 megas en uso, 72 se estn usando para reas de intercambio y 127 es memoria de cach con actividad reciente para no tener que acceder al disco, lo que significa que esos 72+127megas son descartables por el sistema para cualquier uso que amerite (233megas) y en realidad el sistema tiene una necesidad de memoria que al momento asciende a 207mb los cuales s no son descartables (es decir, esa es la memoria realmente requerida por el sistema). /proc/cpuinfo nos indicar la cantidad de procesadores que tenemos (comenzando por el procesador 0) y adems nos dir la marca del procesador y la velocidad a que est corriendo as como cierta informacin adicional sobre este procesador. En mi caso:[root@eperez ~]# cat /proc/cpuinfo processor : 0 vendor_id : AuthenticAMD cpu family : 6 model : 8

model name : AMD Sempron(tm) 2400+ stepping : 1 cpu MHz : 1666.982 cache size : 256 KB fdiv_bug : no hlt_bug : no f00f_bug : no coma_bug : no fpu : yes fpu_exception : yes cpuid level : 1 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic mtrr pge mca cmov pat pse36 mmx fxsr sse syscall mp mmxext 3dnowext 3dnow bogomips : 3268.60

Es un procesador sempron 2400+, que la cpu corre a 1666mhz y tiene una cantidad de bogomips equivalente a 3268.6 bogomips es una forma que tiene el kernel de determinar mediante una medida no cientfica la velocidad de un procesador al momento de bootear, mediante lo que llaman un loop ocupado. Bsicamente es la cantidad de millones de veces por segundo que un procesador puede estar sin hacer nada. En mi caso uso mucho los bogomips para comparar qu tan lento o rpido es un procesador con respecto a otro, sin importar los valores que digan los fabricantes.. es el bogomip para mi una de las herramientas de medicin ms fuertes. Apagado y reinicio de la mquina Todos estos comandos ayudan a un reinicio o apagado correcto de la mquina, es decir, no slo la reinician sino que se ocupan de cerrar todos los archivos y bajar todos los procesos de la mquina as como de intentar desmontar las particiones que tengamos montadas antes de proceder a apagar el servidor o de reiniciarlo. Para reiniciar la mquina tenemos varias alternativas: El comandoreboot

cerrar todas las aplicaciones y proceder a reiniciarla.shutdown -r now

har igual trabajo O sencillamente desde el ambiente de texto podemos apretar: CTRL-ALT-DEL y se proceder a reiniciar la mquina. Para detener la mquina sin reiniciar podemos usar:shutdown -h now

que detendr la mquina sin apagarla. o mucho ms fcil:

halt

que detendr la mquina despus de haber bajado todos los procesos. Ninguno de los procesos anteriores apaga la mquina, sencillamente descargan el sistema operativo pero el hardware sigue encendido. Si nuestra mquina lo permite, podemos apagar una mquina despus de haber detenido al sistema operativo, esto se hace sencillamente con el comando:poweroff

apagar la mquina al final del proceso. El editor vi fue el primer editor de pantalla completa para los sistemas Unix. Es simple, pequeo y elegante. En las tareas de administracin del sistema es muy empleado. Basado en los mismos principios que otras aplicaciones Unix, vi no incluye su propio revisor ortogrficos, o formateador de textos, pero existen otros programas que lo realizan, los cuales pueden ser usados dentro del vi, con lo que se logra interactuar con otras aplicaciones para tener la funcionalidad que se requiera.

Inicio de viPara usar el editor con algn archivo que se desee crear o modificar se deber teclear vi archivo $ vi prueba 1.Observa que en la pantalla aparece el cursor en la esquina superior izquierda y en la parte inferior una columna de caracteres , los cuales nos indican que estamos en el fin del archivo. Anota y explica lo que aparece en el rengln inferior "prueba" [noeol] 4L, 12C indica el numero de lines y caracteres que contiene el archivo. NOTA: Antes de continuar, revisa el tema de Guardando archivos y saliendo del vi

Insertando texto y movindoseMientras se esta usando vi, en algn momento se esta en uno de los siguientes tres modos de operacin: modo comando, modo edicin (se muestra en la lnea inferior del lado izquierdo -- INSERT --) y modo extendido que se inicia al teclear :. Despus de que se inicia, se esta en el modo comando, en este modo se permite que se use un determinado nmero de comandos (usualmente de una sola letra) para modificar el texto. Para insertar texto y modificarlo se requiere estar en el modo edicin. 2.Para iniciar la insercin de texto teclear i y teclear lo siguiente: Ahora es el momento para que todos hombres buenos vengan ayudar a la fiesta.

Mientras se esta insertando texto, se pueden teclear tantas lneas como se desee (presionando la tecla Retorno) y corrigiendo errores usando la tecla retroceso. Para finalizar el modo edicin y regresar al modo comando, presiona la tecla ESC. Estando en el modo comando, se pueden usar las teclas con flechas para moverse en el archivo, o tambin se pueden usar las teclas h, j, k, l, que mueven el cursor a la izquierda, abajo, arriba y derecha respectivamente. 3.Existen otras formas de insertar texto. El comando a inserta texto despus de la posicin actual del cursor. Mueve el cursor hasta que quede entre las palabras todo y hombres, presiona a y teclea los , y despus presiona ESC para regresar al modo comando. 4.Para insertar una lnea abajo de la actual, usar el comando o. Presiona o y teclea lo siguiente: Despus iremos por piza y helado. Si no se sabe en que modo se esta se puede presionar ESC para salir del modo edicin y regresar al modo comando, si ya se estaba, entonces no hace nada y pita.

Borrando texto y deshaciendo cambios.5.Desde el modo modo comando, la x borra el caracter donde esta situado el cursor. Anota lo que tienes que hacer para borrar la palabra helado incluyendo el espacio y el punto. RESPUESTA: tecleando 7 veces x 6.Anota lo que debes hacer para agregar al final de la segunda lnea el texto refresco diettico. colocando el cursor en lugar deseado y presionando "a" 7.Se pueden borrar lneas enteras usando el comando dd (se debe presionar dos veces d en un rengln). Anota la forma de borrar la segunda lnea. RESPUESTA: Teclendo dd 8.El texto que ha sido borrado puede ser reinsertado usando el comando p. Presiona p para poner la lnea borrada despus de la lnea actual. Usando P se insertar el texto antes de la lnea actual. Anota de que forma mueves la primer lnea al final. RESPUESTA: tecleando dd en la primera linea y despue el comando p 9.El comando u deshace los ltimos cambios y con CTRL-R se puede rehacer. Presiona varias veces hasta que se regrese al estado que se tena inicialmente en el punto anterior. 10.Para borrar una palabra debajo del cursor, se debe usar el comando dw. Coloca el cursor en el principio de la palabra diettico, y anota cuantas veces diste el

comando dw para borrar toda la palabra. RESPUESTA: 2 veces

Cambiando el texto11.Se reemplaza texto usando el comando R, el cual sobreescribe el texto comenzando a partir de donde esta el cursor. Coloca el cursor en la primera letra de piza, presiona R y teclea hamburguesas y papas. Observar que se queda en modo edicin, por lo que para regresar debers teclear ESC El comando r reemplaza por un slo caracter debajo del cursor. Este comando no se queda en modo insercin, por lo que no se requiere usar ESC para regresar al modo comando. 12.El comando ~ (en un teclado en espaol presionar AltGr-4) cambia de minscula a mayscula o viceversa la letra que en donde esta el cursor. Cambia la palabra hamburguesas a maysculas. Otro comando til para cambiar palabras es el comando cw, que permite ingresar una nueva palabra y -despus de presionar ESC- borrar el resto que pudiera quedar de la palabra original.

Comandos para moverseEl comando w se usa para mover el cursor a la siguiente palabra; b mueve al principio de la palabra actual o de la palabra anterior si ya estaba al principio. El comando 0 (cero) mueve el cusor al principio de la lnea actual, y el comando $ lo mueve al final. Para moverse una pantalla hacia adelante o hacia atrs en el archivo presionar CTRL-F y CTRL-B respectivamente. Con el comando CTRL-G se puede mover al final del archivo. Tambin se puede mover a una lnea arbitraria si primero se da el nmero de lnea y luego el comando, por ejemplo, 10G, mover el cursor a la lnea 10 en el archivo. Para moverse al principio del archivo, qu se deber teclear? Tecleando / seguido de un patrn y retorno se logra pasar a la primera ocurrencia en el texto despus del cursor. Usando ? se hace hacia atrs. Se pueden acoplar comandos de movimiento con otros comandos, tales como borrado. Por ejemplo, el comando d$ borrar todo desde el cursor hasta el final de la lnea; dG borra todo desde el cursor hasta el final del archivo.

Guardando archivos y saliendo del vi.Muchos de los comandos relacionados con archivos son invocados en el modo extendido. Se entra al modo extendido cuando se presiona :, con lo que se coloca el

cursor en la ltima lnea de la pantalla, permitiendo que se ingresen varios comandos extendidos. Por ejemplo, para guardar un archivo que esta siendo editado, se usa el comando :q. El comando :wq escribe y sale del vi (el comando ZZ es el equivalente). Para salir del vi sin guardar los cambios en el archivo, usar el comando :q!.

Edicin de otro archivoPara editar otro archivo, usar el comando e:. Por ejemplo para terminar de editar prueba, y editar el archivo otro, se tecleara e otro Se pueden incluir otros archivos en el archivo actual usando el comando r:, por ejemplo si se tiene creado un archivo otro y estamos en prueba, se puede teclear :r otro para insertar el contenido a partir de la lnea actual.

Ejecucin de comandosEl comando :! permite poner el nombre de un comando, el cual es ejecutado dentro del vi. 13.Teclea lo siguiente :! ls -F y anota lo que se sucede. RESPUESTA: aparece todo lo que se ha realizado en el grafico El comando :r ! es similar al anterior, pero incluye la salida estndar del comando en el buffer. 14.Anota lo que sucede al teclear : r! ls -F RESPUESTA: se copiaran los contenidos del comando dentro del archivo que estamos editando.

Bsqueda y reemplazoEl comando: :[x,y] s/patrn/reemplazo/banderas busca el patrn entre las lneas x y y en el buffer, y reemplaza con el texto reemplazo. El patrn es una expresin regular, reemplazo es un texto literal, pero puede contener caracteres especiales para referirse a elementos del patrn original. El siguiente comando reemplaza las primeras ocurrencias de pez por peces desde la lnea 1 hasta la 10: :1,10 s/pez/peces

En vez de dar un nmero, se puede usar el smbolo % para referirse a la lnea entera, y $ se refiere a la ltima lnea. Otros editores Aunque no recomendamos el uso de otros editores, porque el vi es un estndar casi universal en el mundo de linux, les indicamos algunas variantes para usar:

nano pico joe

Estos tres son otros editores muy usados, pero repetimos nuestra advertencia, podrn parecer fciles pero puede que no existan en todos los sistemas unix que tengamos que trabajar, lo que nos podra hacer pasar un apuro de no existir. Sin embargo el vi SIEMPRE estar presente en cualquier sistema unix por lo que es casi de uso obligatorio el aprender comandos para manejarlo. Para instalar el centos, normalmente requerimos tener los 4 discos de instalacin. El 1 es el ms usado, pero en dependencia de las opciones que escojamos puede que necesitemos algunos paquetes de los dems discos. Lo primero que hay que hacer para instalar el centos es configurar el BIOS de nuestra mquina de forma tal que este permita bootear y arranque desde el CDROM de nuestra mquina. Al terminar de indicarle al BIOS que el primer dispositivo de arranque es el CDROM, insertamos el disco 1 de centos y veremos la siguiente pantalla: Bsicamente lo que nos indica es que para comenzar a instalar en modo grfico, presionemos enter. Adems nos indica que para arrancar en modo texto escribamos: linux text y presionemos enter. Arrancar en modo texto es muy til porque a veces la tarjeta de video de nuestra mquina no es muy compatible con el sistema grfico de instalacin y falla este sistema, pero podemos usar perfectamente el instalador en modo texto y culminar el proceso. La gran mayora de las veces, aunque instalemos en modo texto, el ambiente grfico funcionar de maravillas y sin mayor inconveniente. Es slo que el sistema grfico del instalador es muy simple y a veces no detecta bien las tarjetas de video. Si deseamos ver ms opciones de instalacin o trabajo con el CD podemos apretar F2 y analizarlas, no es mi inters verlas ahora. Procedamos a presionar ENTER y el sistema comenzar a cargar un kernel bsico que viene en el cd de instalacin que se ocupar de probar los dispositivos que tengamos en nuestro hardware.

Posteriormente nos sacar una pantalla la cual nos da la opcin de probar los CDs que tenemos para verificar que no existan errores al haberlos quemados. Yo sugiero al menos una vez, la primera vez que usemos los cds para instalar, que verifiquemos estos. Pues as podemos estar seguros de que estn bien quemados. Si la verificacin fallase, debemos inmediatamente quemar otro cd en reemplazo de ste que fall pues es casi totalmente seguro que nuestra instalacin en algn momento dir que el cd est malo y se negar a proceder, hacindonos perder tiempo y dejndonos un sistema a medio instalar. Si ya sabemos que nuestros cds estn bien quemados (sugiero quemarlos siempre a 4x pues a ms velocidad fallan ms) entonces podemos apretar en el botn de skip, lo cual saltar el proceso de verificacin. Hagamos Ok y verifiquemos el cd 1, una vez hagamos ok, nos dar dos opciones: Test, para probar el cd que tenemos insertado (el 1) y Eject para sacar este cd y poner otro para ser probado. el orden de los CDs no importa, el instalador se d cuenta de qu CD es el que est insertado y los verifica en cualquier orden. Ok, presionemos en text (con espacio o con enter) Comenzar a correr un termmetro (en ambiente de texto todo todava) que nos indicar cmo va el proceso, debe avanzar poco a poco, rpido o lento segn el lector del cd y segn si el cd est daado o no: Al final, cuando acabe de probar el disco, nos emitir un resumen en el que nos indicar si l considera que el disco est bueno (PASSED) o fall (FAIL), en mi caso pas como podemos ver: Al apretar en ok, nos sacar el CD del lector para darnos la oportunidad de probar el segundo, tercero y cuarto. Al finalizar el proceso de verificacin de los 4 CDs, podremos tener la certeza de que este lector s lee bien los 4 cds y que seguramente la instalacin nuestra no fallar por problemas fsicos en un disco. Si un CD fallara dira un mensaje como este (en este caso es de un CD numero 2 que fall): Si ocurriera algo as, tendramos que volver a quemar y verificar nuevamente el disco 2 (el nuevo disco quemado) para estar seguros de que podemos continuar con todos los discos buenos.

Una vez todos estn bien, podemos entonces poner el CD 1 nuevamente en el lector y apretar continuar. Para entonces s comenzar con la instalacin Despus de unos breves segundos en el que el instalador comenzar a cargar el servidor grfico y dems drivers y nos mostrar la pantalla de bienvenida: Si no cargara esta pantalla o se demorara mucho tiempo sin mostrarla o fallara y reiniciara la mquina, entonces debemos valorar comenzar a instalar en modo texto. Los textos sern muy similares a los que veremos aqui slo que sera en modo texto y no grfico. Bsicamente a la izquierda tenemos una pequea ayuda o informacin sobre cmo operar el sistema. Tenemos un botn debajo que dice Hide Help para ocultar este recuadro de ayuda y otro que dice Release Notes para ver las notas adicionales que redhat/centos han liberado sobre esta instalacin. Lo que ms nos interesan son los botones de Back (deshabilitado pues es la primera pantalla) y next, para proceder. Siempre recomiendo leer bien todos los mensajes de cada pantalla pues ellos nos indican cmo debemos proceder. En caso de tener algn error anotarlo completamente para poder preguntar a quien nos pueda ayudar. En el caso de que estemos instalando rhel, veremos los logos y textos de redhat, pero el proceso de instalacin ser exactamente igual al que estamos viendo aqui. Apretemos Next, para ir navegando entre las diferentes pantallas y las iremos explicando. La primera pantalla que aparece nos pedir en qu idioma deseamos que el instalador nos muestre los mensajes y opciones. Yo sugiero que ingls ya que el ingls est completo y puede que en otros idiomas no aparezcan los textos correctamente traducidos o aparezcan en ingls (no estarn traducidos del todo) A propsito, sta pantalla que vemos no es la nica que levanta linux a la hora de instalar. Linux tiene mltiples consolas las cuales usa durante la instalacin para mostrar diferentes mensajes relacionados con diversas etapas o pasos que est siguiendo. La consola grfica es en la que estamos en este momento y si nos furamos de ella podremos regresar presionando ALT F7 Para ir a otras consolas podremos presionar CTRL ALT F1 y ahi nos movemos a la primera consola de texto, no se pierde la posicin de la consola grfica, slo que se cambia de consola. Y as podemos usar hasta la F4La pantalla de texto inicialConsola

ALT F2CTRL ALT F1

Nos muestra Nos ofrece un shell por si acaso necesitamos trabajar en un shell

ALT F3 ALT F4 ALT F7Ambiente grfico

Nos indica los mdulos insertados as como los pasos del instalador por donde vamos. Mensajes relacionados con el kernel

Linux es un sistema operativo cuya lengua franca es el ingls y la enorme cantidad de informacin que tendremos ser en ingls. En caso de usted haber pasado ingls por la universidad pero el ingls no haya pasado por usted sugiero tomar un curso de ingls con cualquier centro que lo ofrezca para mejorarlo pues les indico desde ya que es sumamente importante el conocer este idioma. Pero bueno, en caso de que conozcamos rabe, francs, espaol, italiano, portugus, podremos pedirle al instalador que nos hable en esos idiomas. Por mi parte lo dejar en ingls: La siguiente pantalla es relativa al tipo de teclado que nosotros tenemos. En mi caso es un teclado en ingls (lo prefiero porque en linux se usa mucho el / y en el caso de teclados en ingls el / queda abajo a la derecha y no requiere del uso de shift como el teclado en espaol).

Como deseo que el teclado me permita imprimir acentos, le indico que es United States International. As podr escribir acentos y dems caracteres internacionales. Por supuesto, siempre debemos escoger el teclado adecuado en nuestro ambiente, Latin American, Spanish, pueden ser opciones vlidas para nosotros en caso de que tengamos la suerte de tener teclados en espaol con distribucin latinoamericana. A propsito, las diferencias entre un teclado latinoamericano y espaol son muy sutiles, y para el caso de linux es indispensable no equivocarse o sufriremos de un teclado mal configurado puesto que estos teclados difieren en la posicin del @, | entre otros caracteres muy usados en el mundo de linux. Al acabar de escoger el teclado, linux proceder a buscar instalaciones de centos previas (centos 3, rhel2.1, o rhel3, rhel2.1) y de estar presentes el instalador de centos nos ofrecer actualizar estas versiones. En el caso de que no existan instalaciones previas de rhel o centos se nos ofrecern 4 modos bsicos de instalacin: En general estos modos le harn saber al instalador cules son los paquetes que posiblemente necesitemos para nuestro trabajo en esta mquina. Por supuesto que posteriormente podremos escoger ms o menos paquetes, pero ser una gua general y bastante precisa de los paquetes que requeriremos. Estos modos son:

P Modo a r a u s a r l o c o m o s i s t e m a d e o f i c i n a , o f f i c e , a m b i e n t e g

Utilidad fundamental

De todas las formas de instalacin, sugiero siempre se use el modo servidor, si es que vamos a instalar un servidor para trabajar. Pero en el caso de este curso, sugiero usemos el modo desktop, para contar con herramientas de compilacin adems del ambiente grfico y a medida que lo necesitemos iremos instalando los demonios requeridos por el sistema. Particionamiento del sistema El particionamiento es una de las cuestiones ms importantes a la hora de instalar un sistema, sin un correcto particionamiento seguramente presentaremos muchas dificultades en el futuro. El instalador de CentOS ofrece dos modos de particionamiento, automtico y basado en l disk druid. No sugiero hacerlo automticamente sino de forma manual (disk druid). El particionamiento es un tema esencial a la hora de instalar y aqui indicaremos algunos factores a tomar en cuenta a la hora de particionar. Sin embargo siempre debe tenerse en cuenta las caractersticas propias de la instalacin que se est haciendo y lo que requerir la empresa o lugar donde estemos instalando. El particionamiento es til por diversas razones como por ejemplo: 1. Permite permite controlar que un disco no se llene completo, si por casualidad un proceso comienza a escribir descontroladamente a disco, solamente podr llenar la particin hacia donde escribe, mas no podr llenar el disco completo. La particin / requiere siempre de tener espacio disponible, si no particionramos correctamente podramos llenar / y por lo tanto dejar el sistema sin funcionar. 2. Si un pedazo del disco se daara, muy posiblemente el resto podr ser todava utilizado y recuperado. Por supuesto un disco daado requiere de una migracin inmediata hacia otro disco. Pero no es lo mismo perder la nica particin que tenemos a perder slo una de las varias. 3. Posteriormente estudiaremos seguridades al sistema concebidas para trabajar con particiones. Sin un correcto particionamiento no podramos implementar estas seguridades. Bsicamente nosotros preferimos particionar el disco en al menos 6 reas que sern usadas para montar los directorios:

/boot /usr /home /var / SWAP

Aqu detallar los por qus de cada tamao segn su punto de montaje:

/boot:

Es en la particin /boot donde el sistema operativo linux guarda todos los kernels instalados en el sistema. En efecto, cada mquina puede tener varios kernels para bootear, la razn ms comn es porque son kernels viejos que linux va dejando como copias de seguridad. La arquitectura para PC slo permite bootear un sistema operativo cuyo kernel est localizado dentro de los primeros 1024 cilindros, y es por esto que el lugar donde est el kernel debe estar localizado lo ms prximo al inicio del disco, para que siempre caiga en los primeros 1024 cilindros. Seguramente uds se han preguntado alguna vez: Por qu windows funcionaba normalmente y hoy no arranca? Bueno, en realidad windows es un sistema operativo muy inestable, pero una de las razones ms frecuentes (pero poco conocidas) es que posiblemente el kernel de windows fue actualizado "ayer" (actualizaciones de windows) pero este nuevo kernel por alguna razn qued por encima de los 1024 cilindros, lo que hace que al siguiente da cuando encendamos la mquina, sta se niegue a arrancar el sistema operativo. Es una razn muy comn y definitivamente por esta razn debemos asignarle a /boot la primera particin posible, y el tamao recomendado para RHEL4 es de 100MB con esto bastar para guardar al menos unos 30 kernels diferentes. La realidad es que el kernel de linux se actualiza pocas veces en el ao.. y a medida que se estabiliza el sistema se actualiza menos, por lo que sobrar espacio. Resumen: /boot debe ser forzada a ser primaria y debe tener 100MB

/usrEs un rea del sistema donde se almacenan gran cantidad de binarios que vamos instalando con el tiempo, aplicaciones de todo tipo, ayudas, etc. Por lo tanto debe tener un tamao considerable de acuer