Manual de Linux
Manual de Linux
Manual de Linux
Pgina 1 de 203
Pgina 2 de 203
Sugerencia de distribucin de tiempo de lectura y estudio. Tiempo sugerido CAPTULO I CAPTULO II CAPTULO III CAPTULO IV CAPTULO V : : : : : 18 hrs. 18 hrs. 8 hrs. 8 hrs. 10 hrs.
10 hrs.
72 hrs.
72 hrs.
NOTA: Lea todo el manual, al menos una vez, antes de comenzar su estudio detallado.
Pgina 3 de 203
INDICE
Captulo I : Conceptos bsicos de operacin en LINUX
1. 2. 3. 4. 5. 6. Conceptos bsicos Estructura de directorios y sistemas de archivo Comandos bsicos Procesos Esquemas bsicos de seguridad Tipos de archivos y dispositivos
Captulo V :
1. Configuracin de NEWS 2. Configuracin de BIND
Pgina 4 de 203
Objetivos del Captulo Al final de este captulo los alumnos estarn en condiciones de: Comprender el funcionamiento y manejo de sistemas LINUX desde el punto de vista del usuario.
Con esto se pretende que el alumno tenga una idea general de lo que es LINUX, cuales son sus principales caractersticas, as como de los requerimientos necesarios para trabajar con LINUX y donde encontrar ms informacin acerca del mismo.
CONCEPTOS BSICOS
LINUX es un sistema operativo, compatible UNIX. Dos caractersticas muy peculiares lo diferencian del resto de los sistemas que podemos encontrar en el mercado, la primera, es que es libre, esto significa que no tenemos que pagar ningn tipo de licencia a ninguna casa desarrolladora de software por el uso del mismo, la segunda, es que el Pgina 5 de 203
sistema viene acompaado del cdigo fuente. El sistema lo forman el ncleo del sistema (kernel) mas un gran nmero de programas / libreras que hacen posible su utilizacin. LINUX se distribuye bajo la GNU Public License, por lo tanto, el cdigo fuente tiene que estar siempre accesible. El sistema ha sido diseado y programado por multitud de programadores alrededor del mundo. El ncleo del sistema sigue en continuo desarrollo bajo la coordinacin de Linus Torvalds, la persona de la que parti la idea de este proyecto, a principios de la dcada de los noventa. Da a da, mas y mas programas / aplicaciones estn disponibles para este sistema, y la calidad de los mismos aumenta de versin a versin. La gran mayora de los mismos vienen acompaados del cdigo fuente y se distribuyen gratuitamente bajo los trminos de licencia de la GNU Public License. En los ltimos tiempos, ciertas casas de software comercial han empezado a distribuir sus productos para LINUX y la presencia del mismo en empresas aumenta rpidamente por la excelente relacin calidad-precio que se consigue con LINUX. Las plataformas en las que en un principio se puede utilizar LINUX son 386-, 486-, Pentium, Pentium Pro, Pentium II/III/IV, Amiga y Atari, tambin existen versiones para su utilizacin en otras plataformas, como Alpha, ARM, MIPS, PowerPC y SPARC. Algunas caractersticas importantes de LINUX que lo hacen nico : Completamente multitarea y soporta 32 bits - LINUX, como todas las otras versiones de UNIX, es un verdadero sistema multitarea, habilitando a mltiples usuarios para correr algunos programas sobre el mismo sistema a la vez. El desempeo de un sistema 486 a 55 MHz corriendo LINUX es comparable con algunas pequeas a medianas estaciones de trabajo corriendo propiamente versiones de UNIX. LINUX es adems un completo sistema operativo de 32 bits, utilizando las caractersticas del modo de proteccin especial para los procesadores Intel 80386 y posteriores. El sistema X Window - El sistema X window es el sistema grfico estndar para mquinas UNIX. Una versin completa del sistema X window, conocido como Xfree86, esta disponible para LINUX. El sistema X window es una interfase grfica muy poderosa, soportando algunas aplicaciones. Por ejemplo, se puede tener mltiples sesiones con tu registro de entrada en diferentes ventanas sobre la pantalla al mismo tiempo. Soporta TCP/IP - Este es el conjunto de protocolos que liga a millones de computadoras de universidades y negocios hacia la red mundial conocida como Internet. Con una conexin Ethernet, se puede tener acceso a la Internet o la red de rea local desde el sistema LINUX. Usando SLIP (Serial Line Internet Protocol) PPP (Point to Point Protocol), se puede tener acceso a la Internet a travs de las lneas telefnicas con un modem.
Pgina 6 de 203
Memoria virtual y libreras compartidas - LINUX puede usar una porcin del disco duro como memoria virtual, expandiendo la cantidad total disponible de RAM. LINUX adems implementa libreras compartidas, permitiendo a los programas que usen subrutinas estndar, encuentran el cdigo para estas subrutinas en las libreras al momento de correr. Esto salva una gran cantidad de memoria RAM del sistema, porque cada aplicacin no almacena su propia copia de estas rutinas comunes. LINUX adems utiliza toda la memoria RAM del sistema, sin lmites de memoria o segmentacin, a travs del uso de un manejador de memoria virtual. El kernel de LINUX no usa cdigo desde cualquier otra fuente propia - Mucho del software disponible para LINUX es libre. De hecho, un gran nmero de utilidades en LINUX son desarrolladas por los proyectos GNU para la Fundacin de Software libre en Cambridge, Massachusetts. Sin embargo, entusiastas de LINUX, Hackers, programadores, y recientemente compaas comerciales desde todo el mundo, han contribuido para el crecimiento del software de LINUX. LINUX soporta (casi) todas las caractersticas de las versiones comerciales de UNIX De hecho, algunas de las caractersticas que se encuentran en LINUX podran no estar disponibles sobre otros sistemas propietarios de UNIX. Soporta software GNU - LINUX soporta un amplio rango de software libre del proyecto GNU, incluyendo utilidades como son el compilador GNU C y C++, GNOME, gawk, groff y ms. Muchas de las utilidades esenciales de LINUX son software de GNU. LINUX es cerradamente compatible con el IEEE POSIX.1 estndar - LINUX ha sido desarrollado teniendo en mente la portabilidad de software, as soporta muchas de las caractersticas importantes de otros estndares de UNIX. El sistema LINUX corre exclusivamente en modo de 32 bits - As, est por encima de un limitador entero de 16 bits en MSDOS. LINUX tiene construido soporte para redes, multitarea, y otras caractersticas - Usted ve este elogio como "nueva tecnologa" en sistemas tales como Windows NT. De hecho, UNIX (y ahora LINUX) implementaron esta "nueva tecnologa" desde hace 15 aos. LINUX es pequeo - LINUX usa menos memoria y recursos o espacio de disco que algunos sistemas MSDOS o Microsoft Windows. Esto incluye largas aplicaciones (tales como Microsoft word o lotus 1-2-3). LINUX est en un constante estado de desarrollo - Es difcil continuar con las revisiones que llegan sobre un elemento principal diario en los sitios ftp de la Internet. LINUX es ms barato de obtener que la mayora de sistemas UNIX y sus clones disponibles comercialmente - Si Ud. tiene acceso a la Internet, el nico precio que Ud. paga por instalar LINUX es su tiempo. LINUX est disponible libremente en la Internet. Pgina 7 de 203
La ventaja mas importante de usar LINUX es que Ud. trabaja con el kernel real. Es decir, todo el cdigo fuente del kernel es disponible para LINUX, y Ud. tiene la habilidad para modificarlo y cubrir sus necesidades. Trabajar el cdigo fuente del kernel es una experiencia educacional.
1.1
Historia de LINUX
LINUX hace su aparicin a principios de la dcada de los noventa, era el ao 1991 y por aquel entonces un estudiante de informtica de la Universidad de Helsinki, llamado Linus Torvalds empez, -como una aficin y sin poderse imaginar a lo que llegara este proyecto, a programar las primeras lneas de cdigo de este sistema operativo llamado LINUX. Aqu se tiene el primer mensaje que Linus Torvalds mando al grupo de noticias comp.os.minix:
From:torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) Newsgroup: comp.os.minix Subject: GCC-1.40 and a posix question Message-ID: 1991Jul13, 100050.9886@klaava.Helsinki.FI Date: 3 Jul 91 10:00:50 GMT Hello netlanders, Due a project I'm working on (in minix), I'm interested in the posix standard definition. Could somebody please point me to a (preferably) machine-readable format of the latest posix rules? Ftp-sites would be nice. LINUX Torvalds torvalds@kruuna.helsinki.fi
Y aqu el que le sigui, este mensaje es considerado por muchos como el comienzo de LINUX:
From:torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds) Newsgroup: comp.os.minix Subject: What would you like to see most in minix? Summary: small poll for my new operating system Message-ID: 1991Aug25, 20578.9541@klaava.Helsinki.FI Date: 25 Aug 91 20:57:08 GMT Organization: University of Helsinki. Hello everybody out there using minixI'm doing a (free) operating system (just a hobby, won't be big and professional like gnu) for 386(486) AT clones. This has been brewing since april, and is starting to get ready. I'd like any feedback on things people like/dislike in minix; as my OS resembles it somewhat (same physical layout of the file-sytem due to practical reasons) among other things.
Pgina 8 de 203
I've currently ported bash (1.08) an gcc (1.40), and things seem to work. This implies that i'll get something practical within a few months, and I'd like to know what features most people want. Any suggestions are welcome, but I won't promise I'll implement them :-) Linus Torvalds torvalds@kruuna.helsinki.fi
Este comienzo estuvo inspirado en MINIX, un pequeo sistema UNIX desarrollado por Andy Tanenbaum. Las primeras discusiones sobre LINUX fueron en el grupo de noticias comp.os.minix, en estas discusiones se hablaba sobre todo del desarrollo de un pequeo sistema UNIX para usuarios de Minix que queran mas. Linus nunca anuncio la versin 0.01 de LINUX (agosto 1991), esta versin no era ni siquiera ejecutable, solamente inclua los principios del ncleo del sistema, estaba escrita en lenguaje ensamblador y asuma que uno tenia acceso a un sistema MINIX para su compilacin. El 5 de octubre de 1991, Linus anuncio la primera versin "Oficial" de LINUX, -versin 0.02. Con esta versin Linus pudo ejecutar Bash (GNU Bourne Again Shell) y gcc (El compilador GNU de C) pero no mucho mas funcionaba. En este estado de desarrollo ni se pensaba en los trminos soporte, documentacin, distribucin,... Despus de la versin 0.03, Linus salto en la numeracin hasta la 0.10, mas y mas programadores a lo largo y ancho de INTERNET empezaron a trabajar en el proyecto y despus de sucesivas revisiones, Linus incremento el numero de versin hasta la 0.95 (Marzo 1992). Mas de un ao despus (diciembre 1993) el ncleo del sistema estaba en la versin 0.99 y la versin 1.0 no llego hasta el 14 de marzo de 1994. La serie actual del ncleo es la 2.4.x y sigue avanzando da a da con la meta de perfeccionar y mejorar el sistema.
1.2
Requerimientos de Hardware
A diferencia de otras versiones de UNIX para PC, LINUX es muy pequeo. Ud. puede correr un sistema desde un solo disco de alta densidad 5.25. Sin embargo, para correr un sistema de LINUX completo, se tienen otras necesidades de Hardware. LINUX por su misma naturaleza es continuamente expandido, y ms caractersticas son anexadas cada da. Sin embargo, la compatibilidad del hardware es limitado a el hardware que tienen los desarrolladores. Afortunadamente, hay algunos drivers genricos para los drivers de disco duro IDE para LINUX. Estos drivers genricos deberan trabajar con todos los discos duros IDE y sus adaptadores. La mayora de los drivers tipo interno son soportados, pero drivers tipo externo que corren conectndose al puerto paralelo de la impresora generalmente no son soportados. La siguiente es una gua de algunos requerimientos para LINUX. No se tiene que seguir exactamente, pero esta lista le dar una idea general de que se requiere: Pgina 9 de 203
Un sistema basado en procesador Intel 80386, 80486 o Pentium - No se necesita un coprocesador matemtico, pero es muy recomendable que se tenga uno. Si Ud. tiene un chip 80386, 80486 los coprocesadores matemticos estn disponibles en forma separada, y estas se instalan en un socket en la tarjeta madre (motherboard) de la mquina. Si Ud. tiene un procesador 80486, el coprocesador ya lo trae incluido (excepto el 80486SX, el cual es un chip 486 con el coprocesador deshabilitado). Si no se tiene coprocesador matemtico, el kernel de LINUX emula operaciones de punto flotante. Si se tiene uno, las operaciones con punto flotante son manejadas por el hardware, lo cual aumenta considerablemente la velocidad de algunas aplicaciones. Los procesadores con los que LINUX trabaja sin ningn problema van desde el 80386SX hasta el procesador Pentium. La arquitectura puede ser ISA, EISA o Local bus - El tipo de bus especifica como el CPU se comunica con el hardware y es una caracterstica de la tarjeta madre. La arquitectura ms comn es la ISA. Si la mquina usa Local bus, esta es ampliamente recomendada por que sta cumple con el VESA local bus estndar (la mayora de los sistemas de bus local lo hace). Pentiums con PCI bus vdeo no tienen ningn problema tampoco. El bus EISA es ms reciente que el bus ISA, es ms rpido en algunas mquinas. La arquitectura de bus local es la ms rpida de las tres, porque esta permite al CPU comunicarse directamente a vdeo y a los adaptadores de drivers. La Arquitectura Microcanal (MCA), tal como la lnea IBM PS/2 no es comnmente soportada. Un mnimo de 4MB de RAM - Tcnicamente, LINUX es capaz de correr en sistemas con solo 2MB de RAM; sin embargo, algunas distribuciones de LINUX requieren 4MB de RAM para su instalacin. Memoria significa rapidez, si se tiene ms memoria fsica el sistema har menos intercambios a disco (swap, intercambio), 8MB serian ms que suficientes para la mayora de las aplicaciones, mas de 8MB de RAM definitivamente aumenta la velocidad de algunas aplicaciones. De hecho, si se quiere utilizar el sistema X window, 8MB son requeridos como mnimo. LINUX usa los primeros 640KB para texto de kernel, datos de kernel y para el bfer cache. La tarjeta madre utiliza los 384KB restantes para el conjunto de chips. Tambin esta el proceso que inicia el sistema y posiblemente otros demonios (daemons). Entonces, mientras compila, se necesitan como 2.57 a 770KB. As, si no se tiene suficiente memoria real se tiene que recurrir a la paginacin desde disco (swap). Un controlador de disco duro estndar compatible - Este incluye MFM, RLL, ESDI y controladores IDE. Algunos controladores SCSI tambin son soportados. Estos trminos especifican la manera de comunicarse con el disco duro a travs de tarjetas controladoras. La mayora de tarjetas controladoras son IDE o SCSI.
Pgina 10 de 203
Requerimientos de espacio de disco - Se necesita un disco duro con suficiente espacio disponible para instalar LINUX. La cantidad de espacio requerida depende de la cantidad de software que se instale, y el espacio que se necesite para guardar lo que se requiera. Si se instala lo mnimo, menos de 50MB son requeridos. Se puede instalar un nmero opcional de paquetes de software, incluyendo el sistema X window, con lo que quizs 200MB o ms sern requeridos. Adems, probablemente se requiera una cantidad aparte de espacio en disco duro para la particin de swap, la cual es usada para el manejo de la memoria virtual. En general, se deber considerar 200MB de espacio de disco para uso del sistema, 16MB ms para un espacio de swap y una cantidad extra para los programas y software personal. El espacio de swap, es un rea sobre el disco que LINUX utiliza para almacenar imgenes de programas en proceso cuando la memoria principal se encuentra muy saturada. LINUX soporta la mayora de controladores de disco duro que son compatibles con un controlador de disco Western Digital WD1003 MFM. Este controlador fue el ms comn para PC-AT, la mayora de AT MFM, RLL, ESDI y IDE son tambin aceptados. Los MFM, IDE y la mayora de dispositivos SCSI trabajan sin ningn problema. Requerimientos especiales para el sistema X window - Con 4MB de RAM el X window corre demasiado lento, se debern tener mnimo 8MB de RAM para compilar y correr programas en X window. Se necesitan otros 6MB o 10MB de espacio de disco para el compilador GCC, aparte de lo ya mencionado para el sistema X window.
1.3
Conexin al sistema
Todos los sistemas UNIX requieren de administracin y mantenimiento. La persona que hace estas tareas se llama administrador del sistema o super-usuario. Cuando usted se registra para usar un sistema UNIX, el administrador del sistema le asigna un nombre con el que debe identificarse en el sistema. Este nombre es el Nombre de Presentacin o login name del usuario. Junto con el login name usted recibe una contrasea o password, un cdigo secreto que debe teclear cada vez que utilice el sistema. Cada vez que inicie una sesin con UNIX debe teclear su login name asignado. LINUX lo usa para identificarle. Una vez que tenga permiso para usar el sistema, se dice que tiene una cuenta de usuario en la computadora.
Pgina 11 de 203
Entrar al sistema
Cuando usted se sienta frente a la terminal, el proceso que sigue para comenzar a trabajar se llama entrar al sistema o logging in. Para entrar al sistema debe teclear su login name y password asignadas, as, cuando su terminal UNIX est lista para usarse, despliega : Login: Esta es una invitacin para entrar al sistema. Teclee su login name y oprima la tecla <RETORNO>. Una vez que teclee su login name, LINUX despliega : Password: Teclee su contrasea y oprima <RETORNO>. Conforme usted teclea, LINUX no hace eco de la contrasea; esto es, las letras no aparecen en pantalla para que su contrasea permanezca secreta. Una vez que el sistema acepta su login name y la contrasea, UNIX inicia una sesin de trabajo para usted. Si el login name o la contrasea no fueron correctos, LINUX despliega :
Login incorrect
Y le permite intentarlo otra vez. Nada ms terminar el proceso de login, una shell arranca automticamente y advierte de su disposicin a recibir comandos mostrando un prompt, que por defecto ser uno de los smbolos #, %, > $, en funcin de que shell se use y de si uno es el root o no. Este prompt equivale al famoso C:> del DOS y, como este ltimo, es redefinible.
Cuando termine de trabajar con LINUX, debe finalizar la sesin saliendo del sistema (logging out). Usted sale del sistema para indicar a LINUX que la sesin de trabajo del login name en uso ha terminado. LINUX detiene entonces la sesin. Existen varias formas de salir del sistema . La primera consiste en esperar que aparezca el prompt del shell y entonces oprimir <CRTL>+<D>. Tambin puede suceder que el administrador haya configurado el sistema para que, de manera preestablecida, usted no pueda salir oprimiendo <CRTL>+<D>. Si este es el caso, debe usar uno de los comandos de salida : logout y exit.
Pgina 12 de 203
Una ltima manera para salir del sistema consiste en emplear el comando login. Con este comando LINUX entiende que debe sacarlo a usted del sistema y alistarse para que otra persona pueda entrar.
1.4
Distribuciones de LINUX
LINUX es un sistema de libre distribucin por lo que se pueden encontrar todos los archivos/programas necesarios para su funcionamiento en multitud de servidores conectados a Internet. La tarea de reunir todos los archivos/programas necesarios, as como instalarlos en tu sistema, puede ser una tarea bastante complicada y no apta para muchos. Por esto mismo, nacieron las llamadas distribuciones de LINUX, empresas que se dedican a hacer el trabajo "sucio" para nuestro beneficio y comodidad Una distribucin no es otra cosa, que una recopilacin de programas y archivos, organizados y preparados para su instalacin. Estas distribuciones se pueden obtener a travs de Internet, o comprando los CDs de las mismas, los cuales contendrn todo lo necesario para instalar un sistema LINUX bastante completo y en la mayora de los casos un programa de instalacin que nos ayudar en la tarea de una primera instalacin. Casi todos los principales distribuidores de LINUX, ofrecen la posibilidad de bajarse sus distribuciones, va FTP (sin cargo alguno). Existen varias distribuciones creadas por diferentes empresas a unos precios bastantes asequibles (si se compran los CDs, en vez de bajrsela va FTP), las cuales deberas de poder encontrar en tiendas de informtica o libreras, e incluso en algunas publicaciones. A veces, las revistas de informtica sacan una edicin bastante aceptable de alguna distribucin. En lo que sigue del captulo, se puede encontrar informacion sobre las distribuciones mas importantes de LINUX.
DISTRIBUCION REDHAT La distribucin REDHAT est construida para productos Intel, Alpha y SPARC, y todos ellos han sido construidos sobre los mismos cdigos fuente. Esto hace que el software existente para esta distribucin sea fcilmente portable a otras mquinas que trabajen con LINUX REDHAT, an cuando posean diferentes arquitectura. REDHAT posee un instalador grfico muy bueno, este permite configurar hasta el ms mnimo detalle del sistema, incluso los paquetes a instalar. La herramienta de configuracin es muy potente y est bien integrada. Buena documentacin y gran cantidad de paquetes. Pgina 13 de 203
http://www.redhat.com/.
DISTRIBUCION DEBIAN DEBIAN es otra distribucin con muy buena calidad. El proceso de instalacin es quizs un poco mas complicado que la anterior, pero sin mayores problemas. Gran estabilidad y gran variedad de paquetes a instalar. La distribucin DEBIAN utiliza el kernel de LINUX e incluye cientos de paquetes, incluyendo la mayora del software GNU, Tex, y las X Windows (Xfree 86). Cada paquete es independiente y no est asociado a nada en particular, cada usuario construye su sistema. Cualquiera puede crear sus propios paquetes y subirlos a DEBIAN para que estn presentes con esta distribucin o con alguna parte de esta. La distribucin DEBIAN http://www.debian.org. es producida por una organizacin no lucrativa:
Una desventaja comparativa de DEBIAN es que carece de software comercial y el proceso de instalacin y configuracin es muy complejo.
DISTRIBUCION S.u.S.E De S.uS.E. LINUX se dice que es la mejor distribucin para los principiantes. Contiene el sistema operativo LINUX completo y ms de 800 paquetes preconfigurados en 4 CD ROMs, as como un libro de referencia de 400 pginas. El libro tarta tanto temas introductorios como avanzados de este sistema. S.uS.E. LINUX ofrece gran variedad de paquetes, incluyendo software comercial, posee una potente herramienta de configuracin (YaST), gran cantidad de servicios de red, incluyendo LDAP, y un muy buen soporte. Pgina 14 de 203
DISTRIBUCION CALDERA CALDERA es un especialista en el mundo empresarial, ideal para pequeas, medianas y grandes compaas que quieran optimizar sus inversiones en sistemas operativos. Buena calidad. CALDERA posee un fanttico instalador y configurador grfico, configuracin automtica del hardware, la versin completa incluye software comercial y buena documentacin. CALDERA tiene varias desventajas comparativas, el soporte en general es insuficiente y caro, y la herramienta de configuracin no es muy completa.
1.5
Preguntas de Repaso
1.- Qu es LINUX ? 2.- Mencione 3 diferencias entre LINUX y UNIX ? 3.- Cuntos y cules son los pasos de seguridad para iniciar una sesin de LINUX ? 4.- Mencione algunas caractersticas importantes del sistema LINUX. 5.- Cul es la ventaja ms importante de trabajar con LINUX ? 6.- Cul es la limitante (Hardware) que tienen los programas desarrollados en LINUX ? 7.- Mencione 4 requerimientos de Hardware para poder trabajar con LINUX.
Pgina 15 de 203
8.- Cules son los requerimientos de espacio de disco duro ? 9.- Qu tipos de controladores de disco duro soporta LINUX ? 10.- Mencione los requerimientos para trabajar con X window. 11.- Qu tipos de tarjetas de video soporta LINUX ? 12.- Cuntas distribuciones de LINUX hay aparte de las ya mencionadas? 13.- Investigue donde hay ms pginas web donde hablen de distribuciones LINUX. Nota Algunas de estas preguntas pueden responderse con la documentacin ofrecida en este captulo, otras, sin embargo, requieren que Ud. Investigue.
Antes de comenzar con al descripcin de cada uno de los directorios del sistema, tenemos que tener claro ciertos conceptos que estn asociados a los sistemas de archivos (filesystem) de LINUX.
2.1
La mayora de los usuarios consideran la informacin almacenada en un sistema UNIX como una coleccin de archivos y directorios, en gran medida independientes de los dispositivos o medios particulares. Un administrador debe contemplar estos archivos y directorios como un conjunto de sistemas de archivos que estn conectados a los medios de almacenamiento. Los dispositivos de almacenamiento ms tpicos utilizados por las computadoras que ejecutan el Sistema UNIX son discos rgidos, disquetes flexibles y cintas. Los disquetes y las cintas son medios portables, utilizados generalmente para instalacin de software y realizacin de copias de seguridad y restauracin de informacin. Aunque los disquetes y las cintas pueden ser utilizados para contener sistemas de archivos, los sistemas de archivos permanentes de un sistema se almacenan generalmente en disco rgido. Pgina 16 de 203
Cuando usted recibe su computadora, los discos rgidos estn ya probablemente formateados en sectores direccionables denominados bloques, que son generalmente de 512 bytes de tamao. Una vez instalado el Sistema UNIX, los discos se dividen en secciones o particiones, cada una de las cuales contiene un cierto nmero de estos bloques. Cada sistema de archivos est asignado a una de estas particiones como el rea en donde est almacenada la informacin para ese sistema de archivos.
Dispositivos
La interfaz para cada particin de disco se hace a travs de archivos especiales de dispositivo en el directorio /dev. Los usuarios generales nunca tienen que preocuparse de la interfaz /dev del sistema de archivos. Sin embargo, si est administrando un sistema, deber tener en cuenta estos archivos especiales de dispositivo. Pueden ser necesarios los nombres de dispositivo para efectuar tareas administrativas, tales como la alteracin del particionamiento del disco y la realizacin de copias de seguridad. Los discos rgidos son considerados dispositivos de bloques: leen y escriben datos de tamaos de bloque fijos, tpicamente 1024 bytes. Un dispositivo fsico puede contener uno o ms de un sistema de archivos.
Nodos-i
Un archivo en el Sistema UNIX se describe mediante un objeto denominado "nodo-i". Por cada archivo existe un nodo-i nico que lo describe y que contiene punteros a los bloques que comprende dicho archivo. El nodo-i contiene informacin sobre los derechos de acceso (permisos) al archivo, el nmero de enlaces, fecha de creacin, fecha de modificacin, identificacin del dueo, y alguna otra informacin. Las diez primeras entradas son nmeros de bloque referidos a los bloques que contienen los datos efectivos del archivo.
Un sistema de archivos en el Sistema UNIX es una estructura completa de directorios que incluye un directorio raz, y todos los archivos y directorios que residen bajo esa raz.
Antes de poder acceder a un sistema de archivos, es necesario montarlo de modo que el kernel de UNIX tenga noticia de su existencia. La nocin de montaje de un sistema de archivos se corresponde muy bien con la idea de montar un paquete de discos fsicos. Esta nocin se aplica incluso a la situacin en que hay varios sistemas de archivos sobre Pgina 17 de 203
el mismo disco. Cada uno de los sistemas de archivos tiene que ser montado separadamente.
La seguridad e integridad de la informacin es mayor, ya que cada sistema de archivos es una entidad separada, independiente y autosuficiente. En el caso de producirse una corrupcin en una regin, slo es afectada esa regin y no la totalidad de la informacin. En caso de tener problemas en una regin, esta puede "desmontarse" (umount), repararse (fsck), y volverse a "montar" (mount). Esto se hace sin que la totalidad del sistema se vea involucrada, slo la particin propiamente tal, y las particiones que cuelguen de sta. Se pueden tener sistemas porttiles (por ejemplo, en floppy disks), los cuales se pueden montar y desmontar en distintos equipos. Si se llena el disco, tan slo se agrega otro con un nuevo sistema, el cual se cuelga del ya existente. Pgina 18 de 203
Todo sistema de archivos tiene la misma estructura bsica que se describe a continuacin en la siguiente tabla, y que consta de cuatro partes fundamentales :
Descripcin El primer bloque (bloque 0) de un sistema de archivos est reservado al programa de carga inicial (utilizado para contener acerca del procedimiento de arranque si el sistema de archivos se utiliza para la carga inicial). Naturalmente puede contener cualquier cosa que se quiera colocar all. El bloque 0 no tiene significado dentro del sistema de archivos. La informacin efectiva del sistema de archivos comienza realmente en el bloque 1 del dispositivo. El bloque 1 de un sistema de archivos es el denominado "super-bloque". Contiene la informacin ms importante acerca del sistema de archivos, tal como el tamao en bloques, el nombre del sistema de archivos, el nmero de bloques reservados a nodos-i, la lista de nodos-i libres, y el comienzo de la cadena de bloques libres. A continuacin del super-bloque viene una serie de bloques que contiene nodos-i. El nmero de bloques de nodos-i vara dependiendo del nmero total de bloques que haya en el sistema de archivos. El nmero de nodos-i est especificado en el super-bloque. Hay un nodo-i por cada directorio y por cada archivo del sistema de archivos. Si un nodo-i est asignado, contiene una descripcin de un directorio o de un archivo de los pertenecientes al sistema de archivos. El resto del dispositivo lgico son todos bloques de datos. Los bloques de datos contienen los datos realmente almacenados en los directorios y archivos. Tambin hay bloques de datos que sirven como bloques indirectos y contiene nmeros de bloque de archivos extensos.
El Super-bloque
Nodos-i
Bloques de datos
Pgina 19 de 203
2.2
Los sistemas de archivos estn maravillosamente organizados, desgraciadamente, hay muchas cosas que pueden ir mal en ellos si sucede algo inoportuno en el momento inoportuno. Esta elegante estructura se halla, por desgracia, sujeta a desajustes debido a muchas causas. Algunos de los problemas ms comunes que se presentan son estos : Un determinado bloque podra faltar del sistema. Es decir, no formar parte de un archivo, ni estar en la lista de bloques libres. Podra haber nodos-i duplicados Es decir, haber nodos -i que parezcan describir la misma cosa dos veces. Un bloque podra aparecer a la vez en un archivo y en la lista de bloques libres. Este es uno de los problemas ms serios que pueden presentarse. Si, por ejemplo, el bloque en cuestin es un bloque de indireccin, su presencia errnea en la lista de libres podra ocasionar su reasignacin a otro archivo, con lo que dos archivos totalmente diferentes acabaran formando una desastrosa mezcla. Puede existir un archivo que no est vinculado a ningn directorio en ningn sitio.
En medio de este panorama es una suerte que la organizacin del sistema de archivos contenga un cierto grado de redundancia. Parte de la informacin redundante proviene de estas situaciones: Un bloque de datos que sea un directorio contiene nombres de archivos (y nombres de directorios) y nmeros-i. Pero, en algn lugar, hay un nodo-i que corresponde a ese directorio, y ese nodo-i debera estar marcado como directorio y no como archivo ordinario. Un bloque que forme parte de la lista de bloques libres no debera, en teora, ser parte de un archivo. Es fcil rastrear todos los nodos-i a la busca de bloques que estn asignados a archivos y tambin a la lista de libres. Anlogamente, un bloque que pertenece a un archivo debera pertenecer slo a un archivo.
Hay muchas otras redundancias que permiten a un programa inteligentemente construido verificar la correccin de un sistema de archivos, y efectuar un intento fidedigno de reparacin de los problemas que encuentre.
Pgina 20 de 203
Revisaremos los distintos componentes de un sistema de archivos de UNIX y el tipo de revisin de consistencia que se le aplica : El super-bloque - Es el lugar en donde est resumida toda la informacin del sistema de archivos. El super-bloque es vulnerable, ya que cada cambio en algn bloque y/o nodo-i lo modifica. Aqu, fsck revisa: El tamao del sistema de archivos El tamao de la lista de nodos-i La lista de bloques libres La cantidad de bloques libres La cantidad de nodos-i libres Nodos-i - La lista de nodos-i es revisada secuencialmente, partiendo con el nodo-i 1. Cada uno es revisado por las siguientes cosas : Formato y tipo Cantidad de enlaces (links) Bloques duplicados Nmero de bloques malos Tamao del nodo-i
La orden fsck (file system check) se usa para efectuar un chequeo al sistema de archivos. Este comando no es slo para "apagar incendios", sino que es conveniente ejecutarlo peridicamente a modo de prevenir desastres futuros. Es aconsejable ejecutar fsck cada vez que se "suba" el sistema, y en especial, siempre despus de una cada del sistema. Veamos una ejecucin tpica de fsck : #fsck ... ** Phase 1 - Check Blocks and Sizes ** Phase 2 Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Count ** Phase 5 - Check Free List
Como se puede ver en este ejemplo, fsck divide su tarea en varias fases. Las distintas fases realizan el siguiente trabajo : Fase Fase 1 - Check blocks and sizes Descripcin Verifica la consistencia de los nodos-i, el nmero de enlaces, los tipos y los formatos de los nodos-i, etc. Pgina 21 de 203
Verifica los directorios que apuntan a los nodos-i previamente hallados en error. Determina los errores producidos como consecuencia de directorios sin referenciar. Verifica la consistencia del nmero de enlaces en directorios y archivos. Verifica la existencia de bloques defectuosos y bloques duplicados en la lista de libres, de bloques no utilizados que deberan estar en la lista de libres, pero que no estn y el nmero total de bloques libres.
Por cada fase, fsck reporta los errores detectados, si un error detectado puede ser corregido por fsck, se le pregunta al usuario si se arregla la inconsistencia o no. A continuacin se listan las abreviaciones utilizadas por fsck en los mensajes de error : BLK : Nmero de bloque DUP : Nmero de bloque duplicado DIR : Nombre del directorio MTIME : Archivo de tiempo fue modificado UNREF : No referenciado
Fase de inicializacin Se revisa la sintaxis del comando. Adems se abren ciertos archivos y revisa algunas tablas. En esta etapa pueden surgir tres tipos de errores : CANNOT SEEK BLK nnn (CONTINUE?) - No se puede ubicar el bloque nnn. Por lo general es serio, ya que puede indicar problemas de hardware. CANNOT READ BLK nnn (CONTINUE?) - Similar al anterior. CANNOT WRITE BLK nnn (CONTINUE?) - Revisar si el disco est protegido contra escritura. Se recomienda no seguir con la ejecucin de fsck, ya que puede ser que aparezca nuevamente ms adelante.
Fase de control de bloques y tamaos (Fase 1) UNKNOWN FILE TYPE I=i (CLEAR?) - No conoce el tipo del archivo. Pgina 22 de 203
LINK COUNT TABLE OVERFLOW (CONTINUE?) - La lista ligada est sobrepasada. nnn BAD I=i - El bloque nmero nnn tiene un nodo-i errneo. EXCESIVE BAD BLOCKS I=i (CONTINUE?) - Hay exceso de bloques errneos en el disco. nnn DUP I=i - El bloque nnn est duplicado. EXCESIVE DUP BLKS I=i (CONTINUE?) - Hay exceso de bloques duplicados. DUP TABLE OVERFLOW (CONTINUE?) - La tabla de bloques duplicados fue sobrepasada. POSIBLE FILE SIZE ERROR I=i - Es posible que el tamao del archivo sea errneo, este es un mensaje preventivo, no debe preocupar. DIRECTORY MISALIGNED I=i - Existe un directorio con su nodo-i desalineado. PARTIALLY ALLOCATED I-NODE I=i (CLEAR?) - La tabla de nodos-i est parcialmente definida. Si aparece el comentario (CONTINUE?) significa que fsck no est en condiciones de proseguir con xito. Es conveniente volver a ejecutar fsck. Si aparece el comentario (CLEAR?) fsck est preguntando si se desea eliminar el nodo-i involucrado. Si se contesta afirmativamente a un comentario (CLEAR?) se perder la informacin en ese nodo-i.
Fase de chequeo de pathnames (Fase 2) ROOT I-NODE UNALLOCATED (TERMINATED) - Es un error serio, el nodo-i no tiene bits de modo de ocupacin. El fsck termina. ROOT I-NODE NOT DIRECTORY (FIX?) - El nodo-i principal de root debe ser un directorio. OUT OF RANGE I=i NAME = <nombre> (REMOVE?) - El archivo <nombre> tiene un nodo-i que es mayor que el ltimo de la lista. DUPS/BAD IN ROOT I-NODE (CONTINUE?) - Existen nodos-i duplicados o malos en root. UNALLOCATED I=i OWNER=o MODE=m SIZE=s MTIME=m NAME=p (REMOVE?) El archivo p del directorio no tiene bits de ocupacin. Pgina 23 de 203
DUP/BAD I=i OWNER=o MODE=m SIZE=s MTIME=t DIR=F (REMOVE?) - Se encontr un bloque malo o duplicado asociado al directorio F.
Fase de control de conectividad (Fase 3) UNREF DIR I=i OWNER=o MODE=m SIZE=s MTIME=t (RECONNECT?) - Se ha encontrado un directorio que no es reclamado por ningn nodo-i. Si se acepta reconectar, este directorio ser entregado al directorio lost+found que cuelga de la raz del sistema de archivos. Esta reconeccin puede fallar por dos motivos : SORRY, NO LOST+FOUND DIRECTORY - El directorio lost+found no fue encontrado en la raz del sistema de archivos (no en root). Ejecute mk lost+found en ella. SORRY, NO SPACE IN LOST+FOUND DIRECTORY - No hay espacio en el directorio lost+found, limpie este directorio para continuar. DIR I=i1 CONNECTED, PARENT WAS I=i2 - Indica que el directorio i1 fue conectado exitosamente al directorio lost+found. El directorio padre i2 es reemplazado por el nmero de nodo-i del directorio lost+found.
Fase de control de cantidad de referencias (Fase 4) UNREF FILE I=i OWNER=o MODE=m SIZE=s MTIME=t (RECONNECT?) - Existe un archivo sin referenciacin hacia un directorio. LINK COUNT DIR I=i OWNER=o MODE=m SIZE=s MTIME=t CONT=x SHOULD BE y (ADJUST?) - La cantidad de punteros contabilizados hacia el directorio no coincide con el registro del nodo-i. LINK COUNT FILE I=i OWNER=o MODE=m SIZE=s MTIME=t CONT=x SHOULD BE y (ADJUST?) - La cantidad de punteros contabilizados hacia el archivo no coincide con el registro del nodo-i. UNREF FILE I=i OWNER=o MODE=m SIZE=s MTIME=t (CLEAR?) - Se ha encontrado un archivo que no pudo ser conectado al lost+found en la fase anterior. UNREF DIR I=i OWNER=o MODE=m SIZE=s MTIME=t (CLEAR?) - Se ha encontrado un directorio que no pudo ser conectado al lost+found en la fase anterior. BAD/DUP FILE I=i OWNER=o MODE=m SIZE=s MTIME=t (CLEAR?) - Error proveniente de la fase 1. Pgina 24 de 203
BAD/DUP DIR I=i OWNER=o MODE=m SIZE=s MTIME=t (CLEAR?) - Error proveniente de la fase 1. FREE I-NODE COUNT WRONG IN SUPER-BLOCK (FIX?) - La cantidad de nodos-i libres encontrados no coincide con la registrada por el super-bloque.
Fase de control de la lista libre (Fase 5) EXCESIVE BAD BLKS IN FREE LIST (CONTINUE?) - Existe excesiva cantidad de bloques errneos en la lista de libres. EXCESIVE DUP BLKS IN FREE LIST (CONTINUE?) - Existe excesiva cantidad de bloques duplicados en la lista de libres. BAD FREE BLK COUNT - La cuenta de bloques libres es errnea. x BAD BLKS IN FREE LIST - Existen x bloques malos en la lista de libres. x DUP BLKS IN FREE LIST - Existen x bloques duplicados en la lista de libres. x BLK IS MISSING - Existen x bloques perdidos. FREE BLK COUNT WRONG IN SUPER-BLK (FIX?) - La lista de bloques libres es errnea en el super-bloque. BAD FREE LIST (SAVAGE?) - Si se responde afirmativamente se crea una lista de bloques libres nueva.
DEFAULT FREE BLOCK LIST SPACING ASSUMED - El espacio de la lista de bloques libres es asumido por omicin.
Al final de una ejecucin fsck, pueden aparecer algunos mensajes que indiquen el estado en que quedan las cosas. Despus de una ejecucin con xito (en la que no se hallan errores), fsck imprime un mensaje : x files y blocks n free Pgina 25 de 203
Significando que haba x archivos en un sistema de archivos de y bloques, quedando n bloques libres. Despus de una ejecucin de fsck donde el sistema de archivos haya sufrido una importante operacin quirrgica, puede aparecer el mensaje : *** BOOT UNIX (NO SYNC!) *** *** FILE SYSTEM IN USE WAS MODIFIED *** Este mensaje significa que el sistema de archivos raz o un sistema de archivos montado han sido modificados de alguna manera. Si no se efecta una carga inicial del sistema inmediatamente, la labor de salvacin realizada se perder debido a las copias de tablas que el sistema mantiene en memoria. En este caso, usted debe cargar el sistema sin dar primero la orden sync (en caso contrario, sync hace que toda la informacin salvada sea sobreescrita).
2.3
El modo de lograr que un sistema de archivos sobre un dispositivo se rena con el resto de los sistemas de archivos es crear una entrada de directorio en la raz del sistema de archivos, y montar luego el dispositivo bajo ese directorio. La orden mount es la que realmente monta un sistema de archivos para que el kernel advierta su presencia. Incluso si el dispositivo que contiene el sistema de archivos especificado contiene tambin otros sistemas de archivos, cada uno de ellos debe ser montado separadamente. Se asocia as un sistema de archivos con un dispositivo lgico, con independencia de otros sistemas de archivos que se encuentren en el mismo dispositivo fsico. La orden mount se utiliza as : #mount </dev/dsk/c...> <directorio> donde </dev/dsk/c...> identifica la unidad fsica (dispositivo) en donde se ubica el sistema de archivos, y <directorio> es el nombre del directorio sobre el cual se va a montar el sistema de archivos. La orden umount sirve para desmontar un sistema de archivos o dispositivo. La orden umount se utiliza as : #umount <directorio>
Pgina 26 de 203
Al utilizar el comando mount sin parmetros, el sistema operativo entrega un listado de todos los sistemas de archivos actualmente montados (activos). Esto lo puede hacer cualquier usuario.
2.4
La composicin de los archivos en Linux, cambia dependiendo de la distribucin, ac nos dedicaremos especficamente a lo que respecta Redhat, ya que uno tambin puede crear las propia distribucin y crear su propia raz de archivos. Ac va una lista de la composicin estndar de la estructura de los directorios en Linux (est se crea automticamente durante el proceso de instalacin del sistema):
Directorio /
Descripcin El raz, del que "cuelgan" todos los archivos y todos los dems directorios. El directorio raz es la base de todo el sistema de archivos. Casi siempre contiene slo otros directorios. Contienen la mayora de los comandos UNIX. El nombre bin deriva del hecho de que muchos de estos programas son archivos binarios. Es quiz el directorio ms importante. Contiene archivos de datos y configuracin del sistema, el archivo de password, configuracin de terminales, red, etc. (de ah su nombre). Contiene los archivos especiales que representan a los dispositivos fsicos. La mayora de los comandos administrativos se encuentran aqu. Directorio para almacenamiento temporal. TODOS los usuarios pueden leer y escribir en l. De vez en cuando, todos los archivos se borran de modo automtico. Contiene bibliotecas de programas que utilizan los programadores Uno de los ms importantes del directorio raz. Contiene un buen nmero de subdirectorios propios. Corresponde a uno de los lugares tradicionales en donde el administrador de sistema crea los directorios para las cuentas de usuarios, el otro es el directorio /home Punto de montaje de particiones temporales.
/lib /usr
/mnt
Pgina 27 de 203
Cada directorio listado ser discutido en detalle en una subseccin separada ms adelante. /usr y /var, cada uno tiene su propia seccin en este documento. El kernel de Linux estara localizado en, ya sea / en /boot. Si est localizado en / recomendamos usar el nombre VMLINUX o VMLINUZ, nombres que han sido usados en paquetes fuentes del kernel de Linux recientes. Ms informacin de la localizacin del kernel se puede encontrar en la seccin acerca de / ms delante.
Directorio /bin: Binarios de comandos esenciales de usuarios (disponibles para todos los usuarios).
/bin contiene comandos que pueden ser utilizados por ambos los usuarios y /el administrador del sistema, pero que son requeridos en el modo /mono-usuario (singleuser mode) puede tambin contener comandos que son /utilizados indirectamente por algunos scripts.
Este documento incorpora como referencia la lista de dispositivos de Linux, mantenida por: Peter.Anvin@linux.org: El encargado de los dispositivos Linux. Todos los archivos especiales de dispositivo seguirn el estndar en ese documento, que est disponible en ftp.yggdrasil.com en /pub/device-list.
El sistema de archivos proc se est convirtiendo en el estndar de facto para el manejo de informacin de procesos y de sistema en vez de /dev/kmem y otros mtodos similares. Recomendamos fuertemente esto para el almacenamiento y obtencin de informacin de procesos asi como otra informacin del kernel y de memoria.
vieran el sistema operativo, sino para proveer una buena particin entre binarios que todos usan y los que se usan, principalmente las tareas de administracin. No hay ganancia inherente en seguridad en hacer que /sbin este fuera del alcance de los usuarios. Archivos requeridos en /sbin:
Comandos Generales.
Comandos de Apagado.
donde * = uno ext, ext2 minix, msdos, xia, y tal vez otros.
de
los
siguientes.
Pgina 31 de 203
Comandos de Red.
Miscelneos
Para lidiar con el hecho de que muchos teclados vienen con una tasa de repeticion tan alta como para hacerlos inutilizables, se puede instalar kbdrate en /sbin en algunos sistemas. Dado que la accin por omicin del kernel ante la combinacin de teclas CtrlAlt-Del es un rearranque instantneo duro, es recomendable generalmente deshabilitar esta conducta antes de montar el sistema de archivos raz con modo lectura-escritura. Algunas suites init son capaces de deshabilitar Ctrl-Alt-Del, pero otras pueden requerir el programa ctrlaltdel, el cual puede ser instalado en /sbin en estos sistemas. Pgina 32 de 203
ctrlaltdel, kbdrate
2.5
La jerarqua /usr
/usr es la segunda mayor seccin del sistema de archivos. /usr es informacion compartible, de slo-lectura, esto significa que /usr, debe ser compartible entre varias mquinas que corren LINUX y no se debe escribir. Cualquier informacion que es local a una mquina o vara con el tiempo, se almacena en otro lugar. Ningn paquete grande (como TeX o GNU Emacs) debe utilizar un subdirectorio directo bajo /usr, en vez, debe haber un subdirectorio dentro de /usr/lib (o /usr/local/lib si fu instalado completamente local) para ese propsito, con el sistema X Window se hace una excepcin debido a un considerable precedente y a la prctica ampliamente aceptada.
/usr --- Segundo mayor punto de montaje (permanente) X11R6 X386 bin dict doc etc Sistema X Window Version 11 release 6 Sistema X Windows Version 11 release 5 en plataformas X 86 La mayora de los comandos de usuario Listas de palabras Documentacin miscelnea Configuracin del Sistema (todo el site)
Pgina 33 de 203
Juegos y binarios educacionales Archivos header incluidos por programas C Directorio primario del sistema GNU Info Libreras Jerarqua local (vaca justo despus de la instalacin principal) Manuales en lnea Binarios de Administracin del Sistema No-Vitales Informacin independiente de la arquitectura Cdigo fuente
Los siguientes enlaces simblicos a directorios pueden estar presentes. Esta posibilidad se basa en la necesidad de preservar la compatibilidad con sistemas anteriores hasta que en todas las implementaciones se pueda asumir el uso de la jerarqua /var.
/usr/adm ------------------> /var/adm /usr/preserve -------------> /var/preserve /usr/spool ----------------> /var/spool /usr/tmp ------------------> /var/tmp /var/spool/locks ----------> /var/lock
Una vez que el sistema ya no requiera ms alguno de los anteriores enlaces simblicos, el enlace se puede remover, si se desea. Notablemente, slo se necesita poco esfuerzo para remover completamente /usr/preserve, dado que slo ex y vi lo utilizan.
Para simplificar los problemas y hacer XFree86 ms compatible con el sistema X Window en otros sistemas, los siguientes enlaces simblicos deben estar presentes.
/usr/bin/X11 ------------> /usr/X11R6/bin /usr/lib/X11 ------------> /usr/X11R6/lib/X11 /usr/include/X11 --------> /usr/X11R6/include/X11
En general, el software no se debe instalar o manejar va los anteriores enlaces simblicos. Slo estn para la utilizacin por usuarios. La dificultad est relacionada con la versin y el release del sistema X Window; en perodos transicionales es imposible saber que release de X11 est utilizandose . Por la misma razn no debe existir un enlace desde /usr/X11 apuntando a la jerarqua del sistema X Window actual.
Pgina 34 de 203
Debido a que los interpretadores de scripts de los shell (invocados con #! <ruta> en la primera lnea del script de shell) no pueden depender de una ruta, es ventajoso el estandarizar la localizacin de ellos. La shell Bourne y C estan fijos en /bin, pero Perl, Python, Tlc se encuentran en muchos lugares diferentes /usr/bin/perl, /usr/bin/python y /usr/bin/tcl deben referenciar a los intrpretes de shell perl, python y tcl respectivamente. stos pueden ser enlaces simblicos a la localizacin fsica de los intrpretes de shell.
Tradicionalmente, este directorio contiene slo el archivo words de palabras inglesas, el cual es utilizado por look(1) y varios programas de ortografa, words puede utilizar ortografa americana o britnica. Los sites que requieran ambos, pueden enlazar words a /usr/dict/american-english /usr/dict/british-english. Las listas de palabras para otros lenguajes se pueden aadir usando el nombre en ingls para ese lenguaje, por ejemplo, /usr/dict/french, /usr/dict/danish, etc. stos deben, si es posible, utilizar un juegos de caracteres ISO 8859 que sea apropiado para el lenguaje en cuestin, si es posible el juego de caracteres ISO 8859-1 (Latin1) debe ser utilizado (esto es a veces imposible) Cualquier otra lista de palabras, tal como el directorio web2, debe ser incluido aqu, si est presente. Las razones tras tener slo las listas de palabras aqu es que ellas son los nicos archivos comunes a todos los verificadores de ortografa.
Una posible solucin que se consider fue eliminar completamente /usr/etc y especificar que todas las configuraciones se almacenen en /etc. Un problema con esta aproximacin es que no anticipa propiamente la posibilidad de que muchos sites pueden querer tener algunos archivos de configuracion que no sean locales de mquina. Eventualmente, se decidi que /etc deber ser el nico directorio que sea referenciado por los programas (esto es, todos deben buscar configuraciones en /etc y no en /usr/etc). Cualquier archivo de configuracin que necesite ser para todo el site y que no es necesario antes de montar /usr (o en una situacin de emergencia debe, entonces, estar localizado en /usr/etc. Los archivos especficos (en /etc), en mquinas especficas pueden ser o no ser enlaces simblicos a los archivos de configuracin localizados en /usr/etc. sto tambin significa que /usr/etc es tcnicamente un directorio opcional en el sentido estricto, pero an as recomendamos que todos los sistemas Linux lo incorporen. No se recomienda que /usr/etc contenga enlaces simblicos que apunten a archivos en /etc. sto es innecesario e interfiere con el control local en mquinas que comparten un directorio /usr.
El subdirectorio arpa contiene definiciones de cabecera de protocolos para los protocolos ARPANET, TCP/IP, definiciones para ftp, prototipos telnet y material similar. El subdirectorio net contiene definiciones genricas relacionadas con redes, define la interface sistema-kernel, detalles de la familia de protocolo, etc. El subdirectorio netinet contiene definiciones especificas de INET (DARPA Internet, que tambin es conocida como TCP/IP ) ARRL AX.25 es mejor conocido como packet radio. Los protocolos novell IPX/SPX son parte de los servicios de archivos Novell Netware. Pgina 36 de 203
Histricamente, /usr/lib ha incluido adems algunos comandos ejecutables tales como sendmail y makewhatis. Dado que makewhatis no es referenciado por otros programas, no hay problemas al moverlo a un directorio binario. Dado que los usuarios tienen buena razn para usar makewhatis, /usr/lib es donde pertenece. El binario catman que reemplaza al script makewhatis en muchos sistemas Linux, debe tambin estar en usr/bin El binario sendmail es referenciado por muchos programas con su nombre histrico /usr/lib/sendmail. ste debe ser un enlace simblico a la localizacin estndar para los agentes de transferencia de correo con una interfaz de lnea de comando compatible con sendmail, /usr/bin/sendmail. En sistemas que utilizan smail; deben localizar smail en /usr/sbin/smail y /usr/bin/sendmail debe ser un enlace simblico a smail. Este arreglo tambin se conforma a la nueva locacin estndar sendmail definida en Sendmail 8.6.x y BSD 4.4 Note que esta localizacin demanda que /usr/sbin y /usr/sbin/sendmail deben ser ejecutables para usuarios normales. Cualquier paquete o programa que contenga o requiera informacin que no necesite ser modificada debe almacenar tal informacin en /usr/lib ( /usr/local/lib, si est instalado localmente ). Se recomienda la utilizacin de un subdirectorio en /usr/lib para este propsito. La informacin de juegos almacenada en /usr/lib/games debe ser solamente informacin esttica. Cualquier archivo modificable, tal como archivos de marcadores, registros de juego y similares, deben ser localizados en var/lib. Si es necesario para compatibilidad de juegos con el viejo estilo BSD, se puede usar un enlace simblico desde /usr/games/lib hacia /usr/lib/games. Pgina 37 de 203
Nota: ninguna informacin especfica de host para el sistema X window debe almacenarse en /usr/lib/X11 ( que es realmente /usr/X11R6/lib/X11) . Los archivos de configuracin especficos de host tales como Xconfig XF86Config deben almacenarse en /etc/X11. ste debe incluir informacin de configuracin como system.twmrc an si es slo un enlace simblico a un archivo de configuracin ms global ( tal vez en /usr/etc/X11 /usr/X11R6/lib/X11).
Este directorio debe estar vaco al terminar de instalar Linux por primera vez. No debe haber excepciones a la regla, excepto quiz los subdirectorios vacos listados. El software instalado localmente, debe estar situado dentro de /usr/local, en vez de /usr a menos que este siendo instalado para reemplazar o actualizar el software en /usr. Note que el software localizado en / o en /usr puede ser sobreescrito por actualizaciones del sistema (aunque recomendamos que las distribuciones no sobreescriban informacion en /etc bajo estas circunstancias). Por esta razn, el software local no se debe localizar fuera de /usr/local sin una buena causa.
Pgina 38 de 203
El <mandir> primario del sistema es /usr/man contiene informacin del manual para comandos e informacin bajo los sistemas de archivos / y /usr. Obviamente, no hay pginas de manual en / por que no se necesitan para arrancar ni en emergencias. Varios ejemplos:
Idioma Ingls Ingls Ingls Francs Francs Alemn Alemn Alemn Alemn Japons Japons Japons Territorio Conjunto de caracteres Directorio /usr/man/en /usr/man/en_GB /usr/man/en_US /usr/man/fr_CA /usr/man/fr_FR /usr/man/de_DE646de /usr/man/de_DE6937 /usr/man/de_DE.88591 /usr/man/de_CH.646ch /usr/man/ja_JP.jis /usr/man/ja_JP.sjis /usr/man/ja_JP.ujis
-------ASCII Reino Unido ASCII Estados Unidos ASCII Canad ISO8859-1 Francia ISO8859-1 Alemania ISO646-DE Alemania ISO6937 Alemania ISO8859-1 Suiza ISO646-CH Japn JIS Japn SJCS Japn UJ (o EUC-J
Las pginas del manual para los comandos e informacin que se encuentra bajo /usr/local estn almacenadas en /usr/local/man. las pginas del manual para el sistema X Window estn guardadas en /usr/X11R6/man. Luego todas las jerarquas de pginas del manual en el sistema deben tener la misma estructura que /usr/man. Los directorios vacos pueden ser omitidos de la jerarqua de pginas del manual. Por ejemplo si, /usr/local/man no tiene pginas del manual en la seccin 4 (dispositivos), entonces se puede omitir /usr/local/man/man4. Las secciones de pginas cat (cat[1-9]) que contiene pginas del manual formateadas, tambin se encuentran dentro de los subdirectorios /<mandir>/<locale>, pero no son requeridas ni deben ser distribuidas en el lugar de las fuentes nroff de las pginas del manual. Las pginas del Manual del sistema de manejo de correo mh deben tener el prefijo mh en todos los nombres de archivos de las pginas. Las pginas del sistema X Window deben tener el prefijo x en todos los nombres de los archivos de las pginas. La prctica de colocar las pginas del manual de diferentes idiomas, en los subdirectorios apropiados de /usr/man tambin se aplica a las otras jerarquas de pginas del manual, tales como /usr/local/man, y /usr/X11R6/man. (Esta porcin de este estndar tambien se aplica ms delante en la estructura opcional de /var/catman). A continuacin una descripcin de cada seccin.
Pgina 39 de 203
Las pginas del manual que describen los comandos accesibles pblicamente se encuentran en esta seccin. La mayora de la documentacin de los programas que un usuario necesitar se encuentra aqu.
man7: Miscelneos
Las pginas del manual que son difciles de clasificar se designan como pertenecientes a la seccin 7. Las de troff y otros macro paquetes de procesamiento de texto se encuentran aqu.
ste es utilizado para documentar el cdigo fuente del kernel en los Sistemas LINUX.
Cualquier cdigo fuente no-local debe ubicarse en este directorio. El nico cdigo fuente que siempre debe localizarse en un lugar especfico es el cdigo del kernel (cuando exista o est enlazado como parte de una estructura en /usr/include). Se pueden usar subdirectorios si se desea. El cdigo fuente para el kernel debe siempre estar en su lugar o al menos los archivos include del cdigo del kernel. Esos archivos estn situados en estos directorios.
/usr/src/linux/include/asm-<arch> /usr/src/linux/include/linux
Pgina 41 de 203
usr/include debe contener enlaces a estos directorios, llamados asm y /Linux, dados que son necesitados por el compilador de C, al menos /estos archivos include deben siempre ser distribuidos en las instalaciones /que incluye un compilador C. Deben ser distribuidos en el directorio //usr/src/linux de forma que no existan problemas cuando los administradores /del sistema actualicen su versin del kernel por primera vez. /usr/src/linux puede tambin ser un enlace simblico a un rbol de cdigo /fuente del kernel.
2.6
La Jerarqua /var
/var Informacin variable
adm Info administrativa del sistema (obsoleto). Enlace simblico hacia /var/log catman Pginas del manual formateadas localmente lib Informacin del estado de aplicaciones local Informacin variable del software de /usr/local lock Archivos de bloqueo log Archivos de bitcora named Archivos DNS, slo red nis Archivos base de datos NIS preserve Archivos almacenados despus de una falla de ex vi run Archivos relevantes a procesos ejecutndose spool Directorios de trabajos en fila para realizarse despus tmp Archivos temporales, utilizado para mantener /tmp pequeo
var contiene archivos con informacin variable. sto incluye archivos y /directorios en fila de ejecucin, informacin de bitcora administrativa y /archivos temporales y transitorios. Algunas porciones de /var son no-compartibles entre diferentes sistemas. Por ejemplo, /var/log, /var/lock y /var/run. Otras porciones son compartibles, notablemente /var/spool/mail y /var/spool/news.
2.7 1.-
Preguntas de Repaso Suponga que al querer desmontar /usr/local se equivoc al escribir la particin: #umount /usr/local Warning: /usr/local not in inittab Warning: /usr/local no such file or directory Explique ambas advertencias y por qu son relevantes para umount.
2.-
Qu comando usara para determinar el espacio usado, en Kb, por un archivo llamado arch1.ps?. Suponga que el archivo se localiza en el subdirectorio /european/simulation/ de su directorio principal. (cree el directorio european en su directorio principal y despus cree en l un directorio llamado simulation. Use un editor para crear un archivo arch1.ps y asegrese de poner algunas lneas en l.) Cul es la capacidad (en porcentaje) utilizada por los filesystems de su sistema?. Qu informacin tienen los archivos /etc/fstab y /etc/mtab?. Pgina 42 de 203
3.4.-
5.-
Cules son las ventajas de mantener sistemas de archivos tales como los que mantiene UNIX y LINUX?. Los filesystems se encuentran sujetos a desajustes debido a muchas causas. Nombre algunos de los problemas que podran ocasionar desajustes en los filesystems de LINUX. El comando fsck (que permite chequear y reparar filesystems) divide su tarea en varias fases. Qu trabajo realizan cada una de las fases de fsck?. Explique brevemente. Digamos que un directorio /usr contiene un archivo llamado tarea. Explique la relacin entre el directorio /usr y el archivo tarea, en trminos de su nmero de nodo i correspondiente. Tienen los archivos ocultos o que comienzan con un punto (por ejemplo, .bash_profile) diferentes sistemas de numeracin de nodos i que los archivos normales?. Explique, brevemente, la relacin entre un archivo, su nodo i, el directorio, la i-list y el i-number.
6.-
7.-
8.-
9.-
10.
COMANDOS BSICOS
3.1
Comando cat
Descripcin Todo lo que hace cat es copiar los datos desde la entrada estndar (teclado) hacia la salida estndar(pantalla). Con el comando cat>archivo la entrada estndar sigue siendo el teclado, pero la salida estndar se ha redireccionado hacia un archivo. Cada lnea que teclee se copiar en el archivo. Si el archivo no existe, LINUX lo crea por usted. Si existe, su contenido se reemplaza. Puede teclear cuantas lneas desee y, al final, oprimir <CTRL>+<D>. Pgina 43 de 203
head
tail more
cp
mv
rm
Si desea anexar datos al final de un archivo existente, use >> para redireccionar la salida estndar : cat>>archivo El comando head permite desplegar el comienzo de un archivo. Por defecto, head despliega las primeros diez lneas de un archivo. Si desea desplegar un nmero diferente de lneas, especifquelo como opcin al comando head. Por ejemplo, para desplegar las primeras veinte lneas de un archivo use : head 20 archivo El comando tail permite desplegar el fin de un archivo. Por defecto, tail despliega las ltimos diez lneas de un archivo. Adems de cat, podemos servirnos de otra orden para visualizar archivos, llamada more. Esta comando visualiza, el o los archivos indicados, por pantallas completas, detenindose al final de cada pantalla o cada vez que se encuentre un caracter de borrado de pantalla. Una diferencia con cat es que slo se pueden visualizar archivos de texto, no ejecutables. Con more al final de cada pgina desplegada en pantalla se nos indica que hay ms, por medio del indicador --More--, y tambin se nos informa del porcentaje de caracteres que hemos visualizado. Si en este punto pulsamos la <BARRA ESPACIADORA>, conseguiremos una nueva pantalla del mismo archivo, que se imprimir y volver a informarnos de la misma manera como lo hizo anteriormente. Este proceso lo podramos repetir hasta llegar al final del archivo. Pulsando la tecla <RETORNO> conseguiremos que se visualice una sola lnea ms. Para realizar una copia de un archivo se utiliza el comando cp. Copiar un archivo consiste en sacar una copia del mismo pero con otro nombre, o en otro lugar, es decir, tener dos archivos exactamente iguales, pero independientes, cada uno con su nombre y en su propio directorio. Usar este comando es fcil, por ejemplo, si tiene un archivo llamado datos y desea elaborar una copia que lleve el nombre extra, use : cp datos extra El comando mv nos va a permitir cambiar el nombre a un archivo, o moverlo de un directorio a otro. Por ejemplo, si desea mover un archivo llamado datos hacia un directorio llamado trabajo, use : mv datos trabajo (si un directorio llamado trabajo no existe, entonces mv supone que usted quiere cambiar el nombre del archivo). Con el comando mv se pueden renombrar y mover no slo archivos, sino tambin directorios. Para borrar o eliminar un archivo tenemos el comando rm. Pgina 44 de 203
Tras la propia orden pondremos el o los nombres de los archivos que deseemos borrar. Si un archivo tiene enlaces y lo borramos, en realidad habremos borrado uno de sus enlaces, y no el archivo propiamente tal, pero suponiendo que el enlace que estemos borrando sea el ltimo entonces se borrar tambin el archivo. Por ejemplo, si deseamos borrar el archivo llamado datos, usaremos : rm datos Para borrar un subdirectorio completo use el comando rm con la opcin r (recurrente) y especifique el nombre de un directorio; rm no slo borra el directorio sino todos sus archivos y subdirectorios. Por ejemplo, para borrar un directorio llamado extra, teclee : rm r extra Es posible restaurar un archivo previamente borrado?
No
ln El comando ln permite crear un enlace (o liga) para un archivo. La tcnica de enlace de archivos es una caracterstica de LINUX, consiste en tener en el disco un slo archivo que aparecer en varios sitios e incluso con diferentes nombres, siendo sin embargo todas las entradas pertenecientes al mismo archivo, hasta tal punto que si modificamos uno de los enlaces, los dems sufrirn la misma alteracin sin tocarlos. Por ejemplo, si tenemos un archivo llamado datos y deseamos crear un enlace para este archivo llamado otro, usaremos : ln datos otro Los comandos de que dispone el LINUX para buscar cadenas (o patrones) en archivos son grep, egrep y fgrep. La finalidad de estos comandos es imprimir por la salida estndar las lneas que contengan una cierta cadena. grep se dise para ser el programa de propsito general. Puede buscar patrones con similitudes exactas entre los caracteres, o patrones que concuerden con una especificacin ms general. fgrep se dise para ser un programa de bsqueda ms veloz. Sin embargo, slo puede buscar caracteres exactos (una cadena fija), no especificaciones generales. egrep se dise para ser el programa grep ms poderoso. Puede buscar modelos ms complejos que grep y, por lo general, es el ms veloz de los tres. No obstante, el mtodo que usa en ocasiones requiere ms memoria que grep o fgrep. Una cadena fija es la que contiene slo el texto que se desea buscar, mientras que una expresin puede contener caracteres especiales. Los caracteres especiales que se pueden usar son los siguientes : El punto (.) para representar cualquier caracter. Pgina 45 de 203
cut
sort
Los corchetes [ ] para especificar un caracter en un determinado rango. Si el primer caracter contenido en los corchetes es , se representa a cualquier caracter que no est en el rango especificado. El signo indica que el caracter que sigue a continuacin lo buscamos al principio de una lnea. El signo $ representa el caracter de retorno de carro. Por ejemplo, para buscar todas las lneas que contengan : seguido de un espacio en el archivo llamado datos, use : grep : datos grep es muy til durante la bsqueda en archivos, pero realmente se le aprecia en toda su magnitud dentro de una interconexin entre procesos. Lo que hace a grep tan til es que puede reducir una gran cantidad de datos sin procesar, en una pequea cantidad de informacin til. Por ejemplo, suponga que desea desplegar todos los usuarios que entraron al sistema durante la tarde o la noche. Use la interconexin de procesos : w h | grep pm Suponga que slo desea desplegar los identificadores de usuario y no a la dems informacin, use : w h | grep pm | cut c1-8 El comando cut extrae columnas de datos de un archivo. Este comando ofrece una gran flexibilidad. Puede extraer columnas especficas o fragmentos delimitados de cada lnea del archivo. cut requiere la lista de columnas que usted desea extraer y el nombre de un archivo de entrada. Por ejemplo, para extraer las columnas 1, 8 y 10 del archivo llamado datos, use : cut c1,8,10 datos Tambin puede especificar un rango de nmeros de columna colocando el comienzo y el final del rango. Por ejemplo, para extraer las columnas 1, 8 , y de la 10 a la 15, del archivo llamado datos, use : cut c1,8,10-15 datos El comando sort efecta dos tareas principales. Primera, y como es de esperar, ordena datos. sort es muy til para ordenar archivos de datos y para ordenar los datos dentro de una interconexin de procesos. Segunda : sort lee archivos con datos previamente ordenados y los fusiona para formar un archivo grande y ordenado. La manera ms sencilla de usar sort consiste en ordenar un solo archivo y desplegar el resultado en pantalla, por ejemplo : sort datos Para guardar los datos ya ordenados en otro archivo, puede redireccionar la salida estndar : sort datos>maestro Para ordenar un archivo y guardar la salida en el mismo archivo, use un comando como : sort o datos datos Pgina 46 de 203
en este caso, los datos originales del archivo datos se reemplazan por los datos ordenados. De manera preestablecida, los datos se acomodan en orden ascendente, de acuerdo con el cdigo ASCII. Lo relevante es que el cdigo ASCII es como el alfabeto que usted usa, pues los caracteres guardan cierto orden, orden que usa sort para hacer comparaciones. El comando sort tiene varias opciones que puede usar para modificar el orden que desea emplear, por ejemplo : La opcin d slo toma en cuenta letras, nmeros y espacios, ignorando los dems caracteres. La opcin r ordena los datos de manera inversa. Adems de ordenar los datos, sort tambin fusiona archivos mltiples que contengan datos ordenados. Para usar sort de este modo, especifique la opcin m. Por ejemplo, suponga que tiene tres archivos nombres, viejos y adicionales, que contienen datos ordenados, el comando siguiente fusiona todos los datos en un solo archivo, denominado maestro : sort m nombres viejos adicionales maestro El comando wc cuenta las lneas, palabras y caracteres. Los datos pueden provenir de la entrada estndar o de uno o ms archivos. Este comando es de accin inmediata. Genera como salida tres nmeros : de lneas, palabras y caracteres en los datos. Si usted especifica el nombre de un archivo, wc escribe el nombre del archivo despus de los tres nmeros. Si especifica ms de un archivo, wc tambin proporciona las estadsticas totales. Si no quiere los tres nmeros, puede usar las opciones : -l cuenta las lneas; -w cuenta las palabras; y c cuenta los caracteres. Por ejemplo, puede usar el comando who | wc l para contar el nmero de identificadores de usuario dentro de su sistema actualmente.
wc
3.2
Pgina 47 de 203
ls
cd, pwd
Para desplegar informacin acerca del contenido de un directorio emplee el comando ls (que viene de LiSt). Descubrir que es uno de los comandos de LINUX que se usan con mayor frecuencia, por lo tanto, existen muchas opciones para controlar su salida. La funcin bsica de ls es desplegar una lista alfabtica de los nombres de archivos en un directorio. Por ejemplo, para enlistar los archivos del directorio /bin, use: ls /bin Si desea saber cunto espacio ocupa un directorio o un archivo, use el comando ls con la opcin s (size o tamao). ls coloca antes de cada nombre de archivo su tamao en kilobytes. Si especifica un nombre de directorio, ls tambin muestra el total de todo el directorio. Cualquier archivo cuyo nombre comience con un . (punto) se denomina como ARCHIVO PUNTO o ARCHIVO OCULTO. Los nombres de los archivos ocultos, por ejemplo, .proofile, no se enlistan cuando usted usa el comando ls, a menos que se emplee la opcin a (all o todos). Para desplegar la mayor informacin posible acerca de un directorio o archivo, use el comando ls con la opcin l (larga). La salida consiste en un resumen del almacenamiento en disco seguido de una lnea por archivo. En el extremo izquierdo de cada lnea, el primer caracter indica el tipo de archivo (existen varias posibilidades, pero las que a usted interesan son d, que significa directorio, y -, que quiere decir archivo ordinario). A continuacin , se muestra un nmero que indica cuntos enlaces existen para ese archivo, seguido del identificador de usuario del dueo del archivo, el tamao del archivo en bytes, la fecha y hora en que se modific el archivo por ltima vez, y por ltimo, el nombre del archivo. Por ejemplo : -rw-rw-r- - 1 unix2 2255 Aug 3 20:30 datos La informacin desplegada por la opcin l puede usarse de muchas maneras, por ejemplo, para enlistar los nombres de todos los archivos del directorio actual que se hayan modificado por ltima vez en agosto puede usar : ls l | grep Aug Para contar cuntos archivos se modificaron por ltima vez en agosto, use : ls l | grep Aug | wc l Para cambiar su directorio de trabajo, utilice el comando cd (change directory o cambiar directorio). Para desplegar el nombre de su directorio de trabajo, utilice el comando pwd (print working directory o imprimir el directorio de trabajo). Veamos algunos ejemplos de cmo usar el comando cd : Para pasar al directorio /bin utilice : cd /bin Si emplea el comando cd sin un nombre de directorio, por defecto, lo lleva a su directorio propio. Lo anterior tambin podra lograrse usando : Pgina 48 de 203 cd $HOME
mkdir
rmdir
Para crear un directorio utilice el comando mkdir (make directory o hacer directorio). Por ejemplo, para crear un directorio llamado extra dentro de su directorio de trabajo use : mkdir extra Para borrar o remover un directorio emplee el comando rmdir (remove directory o remover directorio). Por ejemplo, para borrar el directorio extra de su directorio de trabajo use : rmdir extra Cuando borre un directorio, UNIX lo obliga a seguir dos reglas importantes. Primera : no puede borrarlo a menos que se encuentre vaco. Esta es una medida de seguridad. La segunda regla para borrar directorios especifica que no puede borrar ningn directorio que se encuentre dentro de su directorio de trabajo y de su directorio raz. Quizs haya ocasiones en que en realidad quiera borrar un directorio que no est vaco. Durante esa operacin, puede emplear el comando rm con la opcin r.
3.3
Preguntas de Repaso
Explicar brevemente lo que realiza cada uno de los siguientes comandos LINUX: 1. 2. 3. 4. 5. ls | wc l who | grep jlepe | wc -l find . name temp exec rm i {} \; head 10 arch1 | tail 1 mkdir m 750 tareas
Especificar el o la secuencia de comandos que permiten realizar las siguientes acciones: 1. 2. Entregar la lista ordenada de usuarios conectados al sistema. Determinar el nmero de identificadores de usuarios actualmente activos. Mostra slo la sptima lnea de un archivo Pgina 49 de 203
3.
4. 5. 6.
Obtener una lista de los archivos ejecutables de un directorio Mostrar slo los archivos ocultos del directorio actual de trabajo Grabe las cinco primeras lneas de un archivo en otro. Agregue tambin al final de ste, las cinco ltimas lneas del archivo original.
PROCESOS
Un PROCESO es un programa que est ejecutndose. Cada vez que usted ejecuta un comando que arranca un programa, LINUX crea un proceso nuevo. Aunque no haga nada en particular, siempre contar con por lo menos un proceso: el del intrprete de comandos que UNIX haya arrancado para usted al momento de entrar al sistema. En la mayora de los procesos, toda la entrada y salida est asociada con la terminal. Esto es, la entrada proviene del teclado y la salida va hacia la pantalla No obstante, algunos programas pueden ejecutarse sin necesidad de que la terminal se ocupe de ellos. Cuando emplea un comando para ejecutar un programa, el intrprete de comandos espera casi siempre a que el programa termine antes de pedirle que use otro comando. Sin embargo, podra ejecutar el comando para arrancar el programa, esperar a que ste comenzase y despus pasar al comando siguiente de inmediato. Para lograr esto, todo lo que debe hacer es teclear un caracter & al final del comando. Cuando el intrprete de comandos espera a que un programa termine antes de solicitar que se ejecute un comando nuevo, se dice que el proceso est ejecutndose en el PLANO PRINCIPAL. Cuando el intrprete arranca un programa y despus deja que se ejecute por s solo, se dice que el proceso est ejecutndose en el PLANO SECUNDARIO (o ejecutndose en BACKGROUND). Cada vez que usted ejecuta un programa en el plano secundario, el intrprete de comandos despliega un nmero nico, llamado IDENTIFICADOR DE PROCESO o PID. El identificador de procesos sirve para identificar un proceso especfico. Este nmero se puede usar con ciertos comandos (que se describen ms adelante) para controlar la actividad del proceso. Por ejemplo, si el programa no parece trabajar correctamente, usted puede matarlo. Veamos algunos programas ejecutndose en background : Pgina 50 de 203
Por ejemplo, suponga que usted quiere ejecutar un programa que lee una gran cantidad de datos de un archivo, los ordena y despus escribe la salida en otro archivo. No hay razn para que este programa no pueda trabajar por s solo sin la intervencin de usted, as es que debera usar : sort<datos>resultado& Ejecute el comando : ls>temp& Esto har que el comando ls se ejecute en el plano secundario y que la salida estndar se redireccione hacia un archivo llamado temp.
Un programa se vuelve candidato para ejecutarse en el plano secundario en caso de que no necesite correr interactivamente, esto es, si no es necesario que lea desde el teclado o que escriba en la pantalla.
4.1
Pgina 51 de 203
Comando ps
kill
Descripcin Para desplegar informacin acerca de todos los procesos que actualmente se estn efectuando al amparo de su identificador de usuario emplee el comando ps. El comando ps posee un gran nmero de opciones que varan de un sistema a otro. En particular, las opciones de UNIX BSD son diferentes a las de Sistema UNIX. Usando estas opciones puede desplegar una gran cantidad de informacin tcnica sobre cada proceso. Para desplegar informacin bsica acerca de sus procesos, use : Ps A continuacin se muestra un ejemplo tpico de salida proporcionada por ps : PID TT STAT TIME COMMAND 3662 r2 TW 0:05 vi document 3709 r2 S 0:00 -csh (csh) Aqu, obviamente la primera columna muestra el identificador de procesos, la segunda columna muestra el nombre de la terminal desde la cual se inici el proceso (ps slo muestra los dos ltimos caracteres del nombre de la terminal). La columna siguiente muestra el estado de cada proceso. La cuarta columna indica cunto tiempo de procesador ha empleado el proceso hasta el momento (en minutos y segundos). La ltima columna indica qu comando ha iniciado el proceso. El comando destinado para matar un proceso es kill; en realidad el comando kill est diseado para enviar una SEAL a un proceso. La forma ms simple de usar kill es utilizndola con un identificador de proceso, sin ninguna opcin. Por ejemplo, para matar el proceso con pid 3662, use : kill 3662 La opcin 9 de kill asegura un exterminio total. Por ejemplo, si tiene problemas para exterminar el proceso 3662, de manera normal, puede usar : kill 9 3662
4.2
Preguntas de Repaso
1.- Suponga que usted es administrador de un sistema LINUX y existe un juego llamado nessios que consume excesivamente memoria. Describa cmo y con qu herramientas y/o instrucciones elimina la conexin de los usuarios que estn jugando. Pgina 52 de 203
2.- Dar todas las instrucciones necesarias para, usando ps y kill, matar su sesin (sea eficiente, use grep). 3.- Cul es la diferencia, en trminos de funcionamiento de las instrucciones LINUX: kill PID y kill 9 PID? (Recuerde las seales SIGTERM y SIGKILL)
Existe una buena cantidad de otros comandos, programas y utilidades, en el siguiente listado se nombran la mayora de ellos, junto con una breve descripcin: Comunicacin: ftp File Transfer Protocol, comando usado para conectarse va ftp a otro sistema. login Comando para entrar a un sistema. rlogin Comando para entrar a un sistema remoto rsh Comando para correr un proceso en un sistema remoto talk Intercambiar mensajes interactivamente con otro terminal telnet Establecer una conexin remota con otro sistema uuencode Codificar archivos binarios en ASCII para su envo por E-Mail uudecode Proceso inverso al realizado por uuencode ifconfig Permite ver la configuracin de la Red
Comparacin: cmp Comparar dos archivos byte a byte comm Comparar items en dos archivos ordenados diff Comparar dos archivos lnea por lnea diff3 Lo mismo que diff pero con tres archivos
Manejo de Archivos: cat Concatenar archivos o desplegar su contenido chfn Cambiar la informacin del usuario cksum Calcular checksum de un archivo chmod Cambiar los modos de un archivo Pgina 53 de 203
chsh Cambiar shell del usuario cp Copiar archivos csplit Partir archivos en lugares especficos dd Copiar archivos en forma raw file Determinar tipo de archivo head Mostrar primeras lneas de un archivo less Desplegar contenidos de un archivo por pginas ln Crear un link ls Listar merge Mezclar cambios de diferentes archivos mkdir Crear un directorio more Desplegar contenidos de un archivo por pginas mv Mover o renombrar archivos y directorios newgrp Cambiar el grupo actual pwd Imprimir directorio actual rcp Copiado remoto de archivos rm Borrar archivos rmdir Borrar directorios split Separar archivos de manera pareja. tail Desplegar las lneas finales de un archivo wc Contar lneas, palabras y caracteres
Impresin: lpq Mostrar estado de trabajos de impresin lpr Enviar a la impresora lprm Remover trabajo de la cola de impresin lpstat Obtener el status de la impresora pr Formatear y compaginar para imprimir
Programacin: ar Crear y actualizar bibliotecas as Generar archivo objeto bison Generar tablas de parsing cpp Pre-Procesador de C flex Analizador lxico g++ Compilador GNU de C++ gcc Compilador GNU de C ld Editor de links (links a bibliotecas dinmicas) m4 Procesador de Macros Pgina 54 de 203
- make Compila grupos de cdigos fuentes de manera ordenada para producir paquetes de software - ranlib Regenera tabla de smbolos de un archivo - rpcgen Traducir llamadas RPC a cdigo C - yacc Generar tablas de parsing Mantencin de Programas: cvs Manejar diferentes versiones de cdigos fuente gdb Debugger GNU gprof Desplegar datos de profiling de smbolos de un archivo objeto imake Genera los Makefile para ser usados con make nm Desplegar tabla de smbolos de un archivo objeto patch Aplicar parches a cdigos fuente rcs Manejar diferentes versiones de cdigos fuente size Imprime el tamao de un archivo en bytes strace Seguir el rastro de las llamadas de sistema y seales strip Eliminar smbolos de un archivo objeto
Buscar: apropos Busca un tpico en las pginas man egrep Versin extendida de grep fgrep Busca palabras literales en archivos find Busca archivos en el sistema grep Busca patrones de texto en archivos strings Busca patrones de texto en archivos binarios whereis Comando para buscar
Programacin de Shell: echo Repetir argumentos de la lnea de comandos en el stdout expr Comparaciones y funciones aritmticas printf Formatear e imprimir argumentos de la lnea de comandos sleep Pausa durante el procesamiento test Probar una condicin
Almacenamiento: bzip2 Compresor de archivos cpio Crear y extraer paquetes de archivos gunzipExpande archivos comprimidos (.gz y .Z) gzip Compresor de archivos Pgina 55 de 203
Crear archivo de shell Almacenar archivos en un medio de almacenamiento Desplegar contenido de archivos comprimidos
Estado de Sistema: at Ejecutar comandos despus atq Cola de comandos de at atrm Remover comando de la cola de at chgrp Cambiar grupo de un archivo chown Cambiar usuario de un archivo crontab Automatizar comandos date Desplegar la fecha y hora del sistema df Muestra el espacio libre de los discos du Muestra uso del disco env Muestra las variables de ambiente finger Muestra informacin de los usuarios kill Terminar la ejecucin de un comando printenv Muestra las variables de ambiente ps Muestra los procesos stty Muestra o cambia las opciones del terminal who Muestra quien est conectado
Proceso de Texto: col Procesar caracteres de control cut Selecciona que columnas desplegar ex Editor de lnea de comando similar a vi expand Convertir tabs a espacios fmt Producir lneas de longitud uniforme fold Partir lneas gawk Procesa lneas o registros una por una ghostscript Despliega archivos Postscript o PDF groff Formatea entrada troff ispell Revisa ortografa interactivamente join Juntar distintas columnas dentro de una base de datos paste Mezcla columnas o cambia su orden rev Imprime lneas en reversa sed Editor de texto no interactivo sort Ordenar o mezclar archivos tac Imprime lneas en reversa tr Traduce o redefine caracteres uniq Encuentra lneas nicas en un archivo Pgina 56 de 203
- vi Editor de textos visual - xargs Procesa argmentos en porciones manejables Miscelneos: banner Imprime frases en ASCII art bc Calculadora de precisin arbitraria cal Muestra el calendario clear Limpia la pantalla man Muestra informacin acerca de un comando nice Reduce la prioridad de un archivo nohup Mantiene un proceso corriendo incluso despus de hacer logout passwd Cambia el password script Producir una trascripcin de la sesin su Convertirse en el superusuario tee Simultneamente guarda el stdout en un archivo y lo despliega en pantalla which Imprime la ruta de un comando.
5 5.1
Al ser UNIX un sistema multiusuario, para proteger archivos de usuarios particulares de la manipulacin por parte de otros, UNIX proporciona un mecanismo conocido como permisos de archivos. Este mecanismo permite que archivos y directorios "pertenezcan" a un usuario en particular. Por ejemplo, como Larry creo archivos en su directorio "home", Larry es el propietario de esos archivos y tiene acceso a ellos. LINUX tambin permite que los archivos sean compartidos entre usuarios y grupos de usuarios. Si Larry lo desea, podra restringir el acceso a sus archivos de forma que ningn otro usuario tenga acceso. De cualquier modo, en la mayora de los sistemas por omicin se permite que otros usuarios puedan leer tus archivos pero no modificarlos o borrarlos. Como hemos explicado arriba, cada archivo pertenece a un usuario en particular. Por otra parte, los archivos tambin pertenecen a un grupo en particular, que es un conjunto de usuarios definido por el sistema. Cada usuario pertenece al menos a un grupo cuando es creado. El administrador del sistema puede hacer que un usuario tenga acceso a mas de un grupo. Pgina 57 de 203
Los grupos usualmente son definidos por el tipo de usuarios que acceden a la mquina. Por ejemplo, en un sistema UNIX de una universidad, los usuarios pueden ser divididos en los grupos estudiantes, direccin, profesores e invitados. Hay tambin unos pocos grupos definidos por el sistema (como bin y admin) los cuales son usados por el propio sistema para controlar el acceso a los recursos, muy raramente los usuarios normales pertenecen a estos grupos. Los permisos estn divididos en tres tipos: lectura, escritura y ejecucin. Estos permisos pueden ser fijados para tres clases de usuarios: el propietario del archivo, el grupo al que pertenece el archivo y para todos los usuarios independientemente del grupo. El permiso de lectura (denotado por r) permite a un usuario leer el contenido del archivo o en el caso de un directorio, listar el contenido del mismo (usando ls). El permiso de escritura (denotado por w) permite a un usuario escribir y modificar el archivo. Para directorios, el permiso de escritura permite crear nuevos archivos o borrar archivos ya existentes en dicho directorio. Por ltimo, el permiso de ejecucin (denotado por x) permite a un usuario ejecutar el archivo si es un programa o guin del intrprete de comandos. Para directorios, el permiso de ejecucin permite al usuario cambiar al directorio en cuestin con cd.
Cmo mantiene UNIX los permisos de archivos? Los programadores de Bell Laboratories que crearon el primer sistema UNIX organizaron los permisos de archivo de una manera que contina vigente hasta el da de hoy. Desde la perspectiva del usuario individual, los programadores dividieron el universo en tres partes : el usuario, el grupo del usuario y todos los dems usuarios del sistema. As, por cada archivo, UNIX mantiene tres conjuntos de permisos : uno para el identificador de usuario, uno para los identificadores de usuario en el grupo, y uno para todos los dems identificadores de usuario en el sistema. Para desplegar los permisos de archivo relativos a un archivo especfico se usa el comando ls con la opcin l (lista larga).
5.2
Veamos un ejemplo del uso de permisos de archivos. Usando el comando ls con la opcin -l se mostrar un listado "largo" de los archivos, el cual incluye los permisos de archivos. /home/larry/foo# ls -l stuff -rw-r--r-1 larry users 505 Mar 13 19:05 stuff /home/larry/foo# El primer campo impreso en el listado representa los permisos de archivos. El tercer campo es el propietario del archivo (larry), y el cuarto es el grupo al cual pertenece el archivo (users). Pgina 58 de 203
Obviamente, el ltimo campo es el nombre del archivo (stuff), y los dems campos los trataremos mas adelante. Este archivo pertenece a larry y al grupo users. Echemos un vistazo a los permisos. La cadena -rw-r--r-- nos informa, por orden, de los permisos para el propietario, el grupo del archivo y cualquier otro usuario.
El primer carcter de la cadena de permisos ("-") representa el tipo de archivo. El "-" significa que es un archivo regular. Las siguientes tres letras ("rw-") representan los permisos para el propietario del archivo, larry. El "r" para "lectura" y "w" para escritura. Luego Larry tiene permisos de lectura y escritura para el archivo stuff. como ya mencionamos, aparte de los permisos de lectura y escritura esta el permiso de ejecucin", representado por una "x". Como hay un "-" en lugar del "x", significa que Larry no tiene permiso para ejecutar ese archivo. Esto es correcto, puesto que stuff no es un programa de ningn tipo. Por supuesto, como el archivo es de Larry, puede darse a si mismo permiso de ejecucin si lo desea. Esto ser cubierto en breve. Los siguientes tres caracteres, r-- representan los permisos para los miembros del grupo. El grupo al que pertenece el archivo es users. Como solo aparece un "r" cualquier usuario que pertenezca al grupo users puede leer este archivo. Los ltimos tres caracteres, tambin r--, representan los permisos para cualquier otro usuario del sistema (diferentes del propietario o de los pertenecientes al grupo users). De nuevo, como solo esta presente el "r", los dems usuarios pueden leer el archivo, pero no escribir en el o ejecutarlo.
Aqu tenemos otros ejemplos de permisos de grupo. -rwxr-xr-x El propietario del archivo puede leer, escribir y ejecutar el archivo. Los usuarios pertenecientes al grupo del archivo, y todos los dems usuarios pueden leer y ejecutar el archivo. -rw------- El propietario del archivo puede leer y escribir. Nadie mas puede acceder al archivo. -rwxrwxrwx Todos los usuarios pueden leer, escribir y ejecutar el archivo.
Dependencias
Es importante darse cuenta de que los permisos de un archivo tambin dependen de los permisos del directorio en el que residen. Por ejemplo, aunque un archivo tenga los permisos -rwxrwxrwx, otros usuarios no podrn acceder a l a menos que tambin tengan permiso de lectura y ejecucin para el directorio en el cual se encuentra el archivo. Si Larry quiere restringir el acceso a todos sus archivo, podra simplemente poner los permisos de su directorio "home" /home/larry a -rwx------. De esta forma ningn Pgina 59 de 203
usuario podr acceder a su directorio ni a ninguno de sus archivos o subdirectorios. Larry no necesita preocuparse de los permisos individuales de cada uno de sus archivos. En otras palabras, para acceder a un archivo, debes de tener permiso de ejecucin de todos los directorios a lo largo del camino de acceso al archivo, adems de permiso de lectura (o ejecucin) del archivo en particular. Habitualmente, los usuarios de un sistema UNIX son muy abiertos con sus archivos. Los permisos que se dan a los archivos usualmente son -rw-r--r--, lo que permite a todos los dems usuarios leer los archivos, pero no modificarlos de ninguna forma. Los directorios, usualmente tienen los permisos -rwxr-xr-x, lo que permite que los dems usuarios puedan moverse y ver los directorios, pero sin poder crear o borrar nuevos archivos en ellos. Muchos usuarios pueden querer limitar el acceso de otros usuarios a sus archivos. Poniendo los permisos de un archivos a -rw------- no se permitir a ningn otro usuario acceder al archivo. Igualmente, poniendo los permisos del directorio a -rwx------ no se permitir a los dems usuarios acceder al directorio en cuestin.
5.3
Cambio de permisos
El comando chmod se usa para establecer los permisos de un archivo. Solo el propietario puede cambiar los permisos del archivo. La sintaxis de chmod es: chmod {a,u,g,o}{+,-}{r,w,x} <filenames> Brevemente, indicamos a que usuarios afecta all, user, group o other. Entonces se especifica sise estn aadiendo permisos (+) o quitndolos (-). Finalmente se especifica que tipo de permiso read, write o execute. Algunos ejemplos: chmod a+r stuff Da a todos los usuarios acceso al archivo. chmod +r stuff Como arriba, si no se indica a, u, g u o por omicin se toma a. chmod og-x stuff Quita permisos de ejecucin a todos los usuarios excepto al propietario. chmod u+rwx stuff Permite al propietario leer, escribir y ejecutar el archivo. Pgina 60 de 203
chmod o-rwx stuff Quita permisos de lectura, escritura y ejecucin a todos los usuarios menos al propietario y a los usuarios del grupo del archivo.
5.4
La mscara de creacin de archivos es un nmero especial, de tres dgitos, manejado por el sistema operativo, que define los permisos que le sern asignados a los archivos al momento de su creacin, considerando la categorizacin de usuarios antes definida (el primer dgito indica la mscara para el dueo, el segundo dgito la mscara para el grupo y el ltimo dgito, la mscara para los otros usuarios). Inicialmente, el sistema asigna a los usuarios la mscara 022, que significa que cada archivo a ser creado tendr los siguientes permisos definidos : -rw_r_ _r_ _ Para el caso de directorios, los permisos asignados mediante esta mscara, son : drwxr_xr_x.
La siguiente tabla, indica la mscara de creacin de archivos asignada para cada dgito : Dgito 0 1 2 3 4 5 6 7 Mscara Lectura y escritura (tambin ejecucin para directorios). Lectura y ejecucin solamente. Lectura (tambin ejecucin para directorios). Lectura solamente. Escritura (tambin ejecucin para directorios). Escritura solamente. Ejecucin para directorios. Ningn permiso asignado.
Para ver el valor por defecto de la mscara de creacin de archivos se utiliza el comando umask, as como tambin cambiar el valor de la mscara, de acuerdo con los valores de la tabla anterior. Por ejemplo, al especificar una mscara 077 (umask 077), damos al dueo todos los permisos, y no le damos ninguno a los dems usuarios, ya sean del grupo o no, es decir, -rwx_ _ _ _ _ _.
Pgina 61 de 203
5.5
Preguntas de Repaso
1.- Cree un archivo con solo permiso de lectura, luego modifquelo para que slo usted pueda escribir sobre l. Compruebe su resultado. 2.- Establecer la mscara de creacin de archivos, para archivos y directorios, de lectura y escritura para el dueo, y sin ningn tipo de permisos para otros usuarios. 3.- Qu quiere decir que la mscara de creacin de archivos sea 077 022? Por qu stas pueden ser mscaras por defecto apropiadas para su sistema? 4.- Con qu permisos se crean archivos y directorios cuando se usa una mscara de creacin de archivos con valor 542? 5.- Cmo quedarn los permisos del archivo invisible.doc si se ejecuta la orden LINUX: chmod 634 invisible.doc?.
TIPOS DE ARCHIVOS
Dentro del Sistema Unix hay cuatro tipos diferentes de archivos: archivos ordinarios, directorios, vnculos simblicos, y archivos especiales. Adems los archivos pueden tener mas de un nombre conocidos como vnculos.
Archivos Ordinarios
Como usuario, la informacin con la que trabaja ser almacenada como un archivo ordinario. Los archivos ordinarios son agragados de caracters tratados como una unidad por el Sistema Unix.. Un archivos ordinario puede contener carcteres ASCCI normales tales como textos de manuscritos o programas . Los archivoos ordinarios pueden crearse, cambiarse, o borrarse cuando usted lo desee. Pgina 62 de 203
Vnculos
Un vnculo no es una clase de archivo, sino un segundo nombre para un archivo. Si dos usuarios necesitan compartir la informacin de un archivo, ellos pueden tener copias separadas de este archivo . Un problema al tener copias separadas es que las dos copias pueden perder rpidamente la consistencia. Un vnculo proporciona la solucin a este problema . Con un vnculo dos usuarios pueden compartir un nco archivo. Los cambios que cualquier usuarios realiza tener lugar sobre las versin comn. Este vncul no solamenteahorra espacio de almacenamiento sino que asegura que cada copia que cada uno utiliza es la misma.
Vnculos smblicos
Los vnculos se pueden utilizar para asignar mas de un nombre a un archivo. Pero tienen algunas limitaciones importates. No se pueden utilizar para asignar a un directorio mas de un nombre. Y no se pueden utilizar para vincular nombres de archivos sobre computadoras diferentes . Estas limitaciones pueden eliminarse utilizando vmnculos simblicos. un vnculos simblico es un archivo que solo contiene el nombre de otro archivo. Cuando el SO opera sobre ese vnculo, este se dirige al archivo al que apunta el vnculo simblico. Los vnculos simblicos no solo se pueden utlilizar para asignar mas de un nombre a un archivo, sino que puede utilizarse para asignasr mas de un nombre a un directorio. Tambin pueden ser utilizados por vnculos que residen en sistemas de archivos fsicos diferentes. Esto hace posible que un rbol de directorio lgico incluya archivos que residen en computadoras diferentesque estan conectadas a traves de una red.
Directorios
Un directorio e un archivo que mantiene otros archivos y contiene infomacin de las localizaciones y atributos de stos. Por ejemplo un directorio incluye un lista de todos los archivos y subdirectorios que ste contiene, as como sus directorios, caractersticas, tipos de archivos y otros artibutos.
Archivos Especiales
Constituyen una caracterstica no usual del sistema de archivo de Unix. Un archivo especial representa un dispositivo fsico. Desde la perspectiva de usuario, el Sistema unix traa los archivos especiales como archivos ordinarios; esto es, puede leer o escribir los dispositivos exctamente como lee los archivos ordinarios. Se pueden tomar los carcteres pulsados en el teclado y escribirlos de la misma forma que los archivos ordinarios o una pantalla. El sistema Unix toma stas rdenes de lectura y escritura y produce la activacin del hardware conectado al dispositivo. Esta forma de tratar el hardware de sistema tiene una consecuencia importante para los usuariosdel sistema Unix. Puesto que el Unix trata casi todo como si fuese un archivo, no Pgina 63 de 203
se necesitan aprender las particularidades del hardware. Una vez que se aprende amanejar los archivos del Sistema Unix se sabe como manejar todos los objetos del Sistema Unix. Se utilizar la misma orden ( ls ) para ver si puede leer o escribir en una archivo, un terminal o un disco.
6.1 1.2.3.
Preguntas de Repaso En qu difieren los directorios de los archivos normales?. Cite un ejemplo. En qu difieren los vnculos de los archivos normales?. Cite un ejemplo. Cite varias maneras (por lo menos 2) de determinar si un archivo es o no un archivo de dispositivo
Pgina 64 de 203
Objetivos del Captulo Al final de este captulo los alumnos estarn en condiciones de: Aplicar las reglas de instalacin del sistema operativo LINUX. Aplicar reglas de instalacin de servicios en LINUX. Configurar una red LINUX con TCP/IP.
Instalacin de Linux
Booteamos el sistema con el CD de RedHat 7.2 y elegimos el modo expert de instalacin, de esta forma podemos controlar todos los aspectos de la instalacin
Luego de iniciado el sistema de instalacin, procedemos a seleccionar la opcin Custom (personalizado). Para as poder manejar todos los aspectos de la instalacin.
Pgina 65 de 203
El particionamiento de los discos se har en forma manual utilizando fdisk, tal como explicaremos a continuacin:
Pgina 66 de 203
Primero crearemos nuestra rea de intercambio o SWAP, se recomienda siempre poner el doble de memoria RAM de nuestro equipo, y tambin es recomendado poner una particin dedicada a esta funcin. Creamos la nueva particin con el comando n, luego le indicamos que ser una particin primaria p, le indicamos el nmero 1, el cilindro de inicio 1 (default) y el tamao 128 MB (+128M). Luego tenemos que cambiar el identificador para que sea preparada como rea de SWAP. Para esto utilizamos el comando t, elegimos la particin 1 e ingresamos el cdigo de Linux Swap (82).
Pgina 67 de 203
Luego procedemos a crear una nueva particin para nuestros datos, la particin se crea de manera anloga a la particin de SWAP, pero no se cambia el tipo de particin. Una vez concluida la operacin, podemos utilizar el comando p para que fdisk nos muestre la tabla de particiones, si estamos conformes con los cambios utilizamos el comando w para grabar y salir.
Pgina 68 de 203
Luego pasamos al utilitario Disk Druid para que asignemos las particiones creadas y elijamos las opciones tales como formato del sistema de archivos o directorio al cual sern asignadas. Es prioritario tener una particin asignada a la raz del sistema (/).
Pgina 69 de 203
Una vez que hayamos terminado con las particiones nos toca configurar el BOOTLOADER, en este caso usaremos LILO, para evitar problemas de compatibilidad con ciertos modelos de BIOS, puesto que GRUB es un trabajo an en desarrollo y en una etapa no preparada para produccin
Pgina 70 de 203
Lleg el momento de configurar la red, el panel es bastante autoexplicativo, el mismo proceso de configuracin se repetir posteriormente editando los archivos a mano.
Pgina 71 de 203
El siguiente paso es la configuracin de las opciones de firewall, para este caso lo dejaremos sin firewall, para poder activar los servicios que queramos ms adelante.
Pgina 72 de 203
En seguida se nos presentan las opciones de configuracin de zona horaria, soporte de idiomas, configuracin de la cuenta root (administrador), y mtodos de autentificacin, lo siguiente es seleccionar los paquetes a instalar, como nuestro objetivo es una instalacin base, deseleccionaremos todo para quedar con una instalacin de menos de 300MB
Pgina 73 de 203
Luego se procede a la instalacin de los paquetes, dependiendo de la velocidad de la mquina, en un par de minutos todo debiera estar instalado y estamos listos para hacer los ltimos pasos de la instalacin. Se nos pide crear un disco de inicio, por ahora le diremos que no lo haremos, marcamos saltar la creacin de un disco de inicio y pasamos al siguiente tem.
Pgina 74 de 203
Luego de esto nuestra instalacin est completa y solo nos queda reiniciar la mquina.
Linux version 2.4.18-14 (bhcompile@stripples.devel.redhat.com) (gcc version 3.2 20020903 (Red Hat Linux 8.0 3.2-7)) #1 Wed Sep 4 13:35:50 EDT 2002 IDENTIFICACION DE LA VERSION DEL KERNEL, INCLUYENDO DONDE SE COMPILO Y QUE VERSION DEL COMPILADOR FUE UTILIZADA. BIOS-provided physical RAM map: BIOS-e820: 0000000000000000 - 000000000009fc00 BIOS-e820: 000000000009fc00 - 00000000000a0000 BIOS-e820: 00000000000dc000 - 00000000000e0000 BIOS-e820: 00000000000f0000 - 0000000000100000 BIOS-e820: 0000000000100000 - 0000000003800000 BIOS-e820: 00000000ffef0000 - 00000000fff00000 BIOS-e820: 00000000ffff0000 - 0000000100000000 0MB HIGHMEM available. 56MB LOWMEM available.
Pgina 75 de 203
On node 0 totalpages: 14336 zone(0): 4096 pages. zone(1): 10240 pages. zone(2): 0 pages. MAPA DE LAS ZONAS DE MEMORIA SEGUN LOS ENTREGA LA BIOS. Kernel command line: ro root=LABEL=/ LA LINEA DE COMANDO QUE SE LE AGREGO AL KERNEL AL MOMENTO DE LA INICIALIZACION, DE HABER PUESTO, POR EJEMPLO, EL RUNLEVEL EN ESTA LINEA, APARECERIA EN ESTE MOMENTO, POR EJEMPLO: Kernel command line: ro root=LABEL=/ 1 Initializing CPU#0 Detected 400.887 MHz processor. EN ESTE LUGAR SE DETECTA LA PRIMERA CPU, Y SE PROCEDE A CONSULTAR SOBRE SU VELOCIDAD. Speakup v-1.00 CVS: Tue Jun 11 14:22:53 EDT 2002 : initialized ESTA LINEA ES PARTICULAR DE LOS KERNEL QUE VIENEN CON LAS ULTIMAS VERSIONES DE REDHAT, Speakup ES UN TIPO ESPECIAL DE CONSOLA PARA PERSONAS CON PROBLEMAS O LIMITACION DE VISION, USANDO SPEAKUP EL SO LEE LOS MENSAJES DE LA CONSOLA Y SE LE PUEDE CONTROLAR A TRAVES DE COMANDOS DE VOZ. Console: colour VGA+ 80x25 ACA SE INDICA EL TIPO DE CONSOLA QUE ESTAMOS UTILIZANDO, LA CONSOLA ESTANDAR ES DE 80X25, SI UTILIZARAMOS UN MODULO DE FRAMEBUFFER PODRIAMOS TENER CONSOLAS CON OTRAS RESOLUCIONES, INCLUSO RESOLUCIONES VESA, Y TENER MODOS SIMILARES A LOS DEL ENTORNO GRAFICO, POR EJEMPLO 1024X768. Calibrating delay loop... 795.43 BogoMIPS EN ESTE MOMENTO SE HACE LA CALIBRACION DEL LOOP, ES DECIR, SE HACE UN CALCULO ESTIMATIVO DE LA CANTIDAD DE INSTRUCCIONES QUE PUEDE EJECUTAR EL PROCESADOR EN CADA SEGUNDO. LA MEDIDA BogoMIPS QUIERE DECIR MILLONES DE INSTRUCCIONES POR SEGUNDO, EL PREFIJO BOGO VIENE DE BOGUS (FALSO), PUESTO QUE ES UN CALCULO ARBITRARIO Y NO TIENE SOLIDAS BASES CIENTIFICAS. Memory: 52668k/57344k available (1326k kernel code, 3840k reserved, 999k data, 212k init, 0k highmem) Dentry cache hash table entries: 8192 (order: 4, 65536 bytes) Inode cache hash table entries: 4096 (order: 3, 32768 bytes) Mount cache hash table entries: 1024 (order: 1, 8192 bytes) ACA SE OBTIENE EL CALCULO DE LAS ZONAS UTILIZADAS EN LA RAM POR EL KERNEL. EL DATO ACERCA DE LA MEMORIA QUE APARECIA AL PRINCIPIO ES LO ENTREGADO POR LA BIOS, EN ESTA PARTE YA ESTAMOS TRABAJANDO CON DATOS QUE PUEDE RECOGER EL KERNEL POR SI MISMO. ACA SE PUEDE APRECIAR CUANTA MEMORIA ESTA UTILIZANDO ESTE KERNEL EN PARTICULAR, 1326K, TIENE RESERVADOS PARA ESTRUCTURAS DE MODULOS OTROS 3840K, 999 PARA LA ZONA BSS DE LOS MODULOS 212K PARA EL INIT, Y EL RESTO LO DEJA LIBRE. DE LA ZONA RESERVADA SE GENERAR 3 ZONAS PARA ALBERGAR LAS TABLAS DINAMICAS DE DATOS, ESTAS SON dentry, inode y mount. COMO SE PUEDE APRECIAR, LAS 3 TIENEN QUE VER CON MANEJO DE DISCOS Y ESTAN EN DIRECTA RELACION AL VFS.
Pgina 76 de 203
ramfs: mounted with options: <defaults> ramfs: max_pages=6639 max_file_pages=0 max_inodes=0 max_dentries=6639 RAMFS ES UN TIPO DE FS ESPECIAL, SE GENERA UNA ESPECIE DE AREA DE DISCO, PERO QUE ESTA LOCALIZADA EN LA RAM, ESTO EN CASO DE NO PODER DETECTAR ALGUN DISPOSITIVO DE ALMACENAMIENTO. Buffer cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 16384 (order: 4, 65536 bytes) ESTAS SON 2 ZONAS EXTRAS QUE SE RESERVAN, PARA LOS BUFFERS Y EL CACHE DE PAGINAS DE MEMORIA. (AUN NO SE INICIALIZA EL SWAP) CPU: Before vendor init, caps: 0183f9ff 00000000 00000000, vendor = 0 CPU: L1 I cache: 16K, L1 D cache: 16K CPU: L2 cache: 128K CPU: After vendor init, caps: 0183f9ff 00000000 00000000 00000000 Intel machine check architecture supported. Intel machine check reporting enabled on CPU#0. CPU: After generic, caps: 0183f9ff 00000000 00000000 00000000 CPU: Common caps: 0183f9ff 00000000 00000000 00000000 CPU: Intel Celeron (Mendocino) stepping 05 Enabling fast FPU save and restore... done. Checking 'hlt' instruction... OK. LUEGO DE HABER INICIALIZADO LA PRIMERA CPU (LO CUAL ES ESCENCIAL PARA PODER CARGAR EL RESTO DEL KERNEL), SE LE HACEN CONSULTAS ACERCA DE SUS CARACTERISTICAS. ACA PODEMOS VER QUE ADEMAS DE SABER QUE ES UNA CPU DE 400MHZ ES DE MARCA INTEL Y MODELO CELERON, ESPECIFICAMENTE DEL MODELO MENDOCINO (DERIVADO DEL PENTIUM II, EL DERIVADO DE PENTIUM III SE LLAMA COPPERMINE), ES DE STEPPING 05, ES DECIR, FAMILIA DE 5TA GENERACION DENTRO DE LA CLASE 686. VEMOS LA CANTIDAD Y EL TIPO DE MEMORIA CACHE INTEGRADA EN EL PROCESADOR Y ESTAN REPORTADAS ALGUNAS CAPACIDADES EN NUMEROS HEXADECIMALES, LAS CUALES PODEMOS DECODIFICAR LUEGO CON UN UTILITARIO. POSIX conformance testing by UNIFIX ESTA LINEA ES DE CARACTER INFORMATIVO, SOLO NOS INDICA QUE SE HA PROBADO ESTE KERNEL PARA CUMPLIR CON PARTE DE LA NORMA POSIX.
CUANDO SE LANZO UNIX EN EL ANNO 1969, NO PASO MUCHO TIEMPO PARA QUE LAS UNIVERSIDADES SE SINTIERAN ATRAIDAS POR ESTE PROYECTO DE RELATIVO BAJO COSTO Y QUE TENIA LAS CARACTERISTICAS PROMETIDAS POR MULTICS. UNA DE LAS UNIVERSIDADES QUE TRABAJO MAS FUERTE EN EL MUNDO DE UNIX, FUE BERKELEY EN CALIFORNIA. COMO CONSECUENCIA, EL ANN 1971 SALIO LA VERSION BSD (BERKELEY SOFTWARE DISTRIBUTION) DE UNIX, Y ASI POR UN LADO SE DESARROLLABA DE PARTE DEL MUNDO ACADEMICO LA VERSION BSD Y POR OTRO SEGUIA EL DESARROLLO DE LA VERSION DE AT&T (BELL LABS). PASO UN TIEMPO, Y LOS VENDEDORES DE HW COMENZARON A HACER SUS PROPIAS VERSIONES DE UNIX, ASI DESPUES DE UN PAR DE ANNOS, YA TENIAMOS UNIX PROVENIENTES DE HP, SUN MICROSYSTEMS, IBM, Y TODOS LOS MAS GRANDES COMPETIDORES DEL MERCADO, SI A ESO LE SUMAMOS INICIATIVAS DEL MIT, Y OTROS CENTROS EDUCACIONALES, NOS ENCONTRAMOS CON UNA VERDADERA JUNGLA DE VERSIONES DE UNIX, TODAS ELLAS INCOMPATIBLES ENTRE SI. UN PRIMER INTENTO POR ESTABLECER UN ESTANDAR LO DIERON LAS UNIVERSIDADES, Y FUNDARON LA OPEN SOFTWARE FOUNDATION, CONSECUENCIA DE ESTO NACIO OSF/1, POR SU LADO LOS VENDEDORES DE HW ESTABLECIERON SU PROPIO ESTANDAR, NOS ENCONTRAMOS NUEVAMENTE CON 2 ESTANDARES NO COMPATIBLES, YA POR EL ANNO 1982, LA IEEE DECIDIO PROPONER UN ESTANDAR PARA LAS VERSIONES DE UNIX, UNO DE SUS REQUERIMIENTOS ES QUE FUERA PORTABLE, ES DECIR, PODER CORRER ESTE UNIX TANTO EN MAQUINAS IBM COMO EN MAQUINAS DIGITAL, POR PONER UN EJEMPLO. ESTE ESTANDAR SE LLAMO POSIX (PORTABLE OPERATING SYSTEM UNIX), HOY EN DIA LAS VERSIONES DE UNIX SE SIGUEN CERTIFICANDO BAJO LOS ESTANDARES POSIX, EXCEPTO LINUX, QUE NO SE HA CERTIFICADO NUNCA PORQUE HAY QUE PAGARLE A LA IEEE POR DAR LA CERTIFICACION. CONSECUENCIA, DESDE HACE ALGUNOS ANNOS, LAS REGLAS DE POSIX SE ESTAN ADAPTANDO A LOS "ESTANDARES" PROPUESTOS POR LINUX, Y HOY EN DIA, MAS QUE LINUX SEA COMPATIBLE CON POSIX, POSIX SE ESTA VOLVIENDO COMPATIBLE CON LINUX. ESTO SE VE CLARAMENTE
Pgina 77 de 203
EN LA ULTIMA VERSION DE AIX DE IBM, QUE AHORA LLEVA UNA L EN SU NOMBRE, AIX 5.0L SE LLAMA ASI POR SU COMPATIBILIDAD CON LINUX.
mtrr: v1.40 (20010327) Richard Gooch (rgooch@atnf.csiro.au) mtrr: detected mtrr type: Intel MTRR ES LA SIGLA DE MEMORY TYPE RANGE REGISTERS, SON UN TIPO DE REGISTROS ESPECIALES PARA CIERTAS OPERACIONES QUE PUEDE REALIZAR EL PROCESADOR, ESTAN PRESENTES DESDE ALGUNOS MIEMBROS DE LA FAMILIA 586 (ESPECIFICAMENTE PENTIUMPRO), Y EN TODOS LOS DE LA GENERACION 686 EN ADELANTE. GENERALMENTE SE USAN PARA TRABAJO DE VIDEO, EL BUS AGP HACE USO EXTENSIVO DE ELLOS PARA AGREGARLE MAS PERFORMANCE A LOS SISTEMAS DE DESPLIEGUE DE VIDEO. PCI: PCI: PCI: PCI: PCI BIOS revision 2.10 entry at 0xfdb81, last bus=1 Using configuration type 1 Probing PCI hardware Using IRQ router SIS [1039/0008] at 00:01.0
ACA SE INICIALIZA EL BUS PCI, LO PRIMERO QUE SE CONSULTA ES POR LA REVISION (O VERSION) DE LA BIOS PCI, ES DECIR, EL SECTOR DE LA BIOS DEDICADO A MANTENER LA COMUNICACION CON EL BUS. ACA VEMOS QUE LA PLACA MADRE ES PARTE DE LA NORMA PCI2.0, ESPECIFICAMENTE PCI 2.10. LUEGO SE HACE UNA CONSULTA POR EL TIPO DE ROUTER QUE SE UTILIZA PARA HACER EL MAPA DE INTERRUPCIONES. ACA INCLUSO PODEMOS SABER LA MARCA DEL CHIPSET PRESENTE EN LA PLACA MADRE. (SIS) isapnp: Scanning for PnP cards... isapnp: No Plug & Play device found ISAPNP, ES EL SUBSISTEMA QUE SE ENCARGA DE INICIALIZAR EL HW LLAMADO PLUG N PLAY, COMO SE PUEDE APRECIAR, LINUX YA CUENTA CON SOPORTE PLUG N PLAY. ACA SE HACE UN RECORRIDO POR EL BUS ISA (EL CUAL SE COMUNICA A TRAVES DEL BUS PCI) PARA TRATAR DE DETECTAR LAS TARJETAS CONECTADAS A ESTE QUE CONFORMEN ESA NORMA. OJO QUE PNP ES SOLO PARA EL BUS ISA, LOS DISPOSITIVOS PCI SE INICIALIZAN DE MANERA DISTINTA. PNP NACIO COMO UN PROYECTO PARA EVITAR QUE EL USUARIO TUVIERA QUE SABER ACERCA DE DIRECCIONES BASE, IRQ Y DMA. speakup: initialized device: /dev/synth, node (MAJOR 10, MINOR 25)
ACA SE LE ASIGNO UN DISPOSITIVO AL PERIFERICO SPEAKUP. Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 Initializing RT netlink socket ESTE ES EL SUBSISTEMA DE SOPORTE DE RED. A LA VEZ SE INICIALIZA EL SOCKET PARA ESTABLECER COMUNICACIONES. (ESTO NOS PERMITIRA MAS ADELANTE LEVANTAR LA INTERFAZ LOOPBACK) apm: BIOS version 1.2 Flags 0x03 (Driver version 1.16) ESTA LINEA NOS INDICA QUE (ADVANCED POWER MANAGEMENT) Starting kswapd AQUI SE ESTA INICIALIZANDO EL DAEMON DEL KERNEL DEDICADO A MANEJAR LA ZONA DE INTERCAMBIO (SWAP) VFS: Diskquotas version dquot_6.5.0 initialized SE DETECTO (E INICIALIZO) EL SUBSISTEMA DE APM
Pgina 78 de 203
SE INICIALIZA EL VIRTUAL FILESYSTEM, CON ESTO YA PODEMOS ACCEDER A ARCHIVOS PRESNETES EN LOS RAMDRIVE. pty: 2048 Unix98 ptys configured LOS PTY, SON PARES DE DISPOSITIVOS (UNO MASTER Y UNO ESCLAVO) COMUNICACION ENTRE DISPOSITIVOS DE I/O, ESPECIFICAMENTE LOS TERMINALES. PARA LA
Serial driver version 5.05c (2001-07-08) with MANY_PORTS MULTIPORT SHARE_IRQ SERIAL_PCI ISAPNP enabled ttyS0 at 0x03f8 (irq = 4) is a 16550A ESTA ES LA INICIALIZACION DEL DRIVER (MODULO) PARA LAS PUERTAS SERIALES, SE NOS INDICA LAS OPCIONES QUE SE UTILIZARON Y A CONTINUACION CUANTOS PUERTOS SE DETECTARON, CON ESTO SABEMOS QUE LA MAQUINA SOLO TIENE UN PUERTO "COM", EL LLAMADO COM1 EN DOS ACA SE NOMBRA COMO ttyS0 ES DECIR TERMINAL DEL TIPO SERIAL NUMERO DE IDENTIFICACION 0 (EL PRIMERO) Real Time Clock Driver v1.10e EL DRIVER PARA PODER LEER Y ESCRIBIR AL RELOJ INTERNO DE LA PLACA MADRE. oprofile: mapping APIC. oprofile: enabled local APIC. Err code 00000000 oprofile 0.2 loaded, major 254 block: 96 slots per queue, batch=24 ESTOS SON MENSAJES DE DEBUG, SE NOS INDICA QUE LA PLACA MADRE SOPORTA APIC (ADVANCED PROGRAMMABLE INTERRUPT CONTROLLER) ES DECIR UNA FORMA NUEVA PARA "RUTEAR" LAS PETICIONES DE INTERRUPCION "IRQ", CON ESTO SE GANA UNA MANERA MAS DINAMICA DE TENER ACCESO A ESTAS. PERO NO TODAS LOS CHIPSET PRESENTES EN LAS PLACAS MADRES LO TIENEN BIEN IMPLEMENTADO, COMO CONSECUENCIA MUCHAS VECES LAS MAQUINAS NO PARTEN CON UN KERNEL DE LINUX POR ESTE PROBLEMA, CONOCIDO ES EL CASO DE ALGUNOS CHIPSET VIA, EN ESPECIFICO ALGUNAS REVISIONES DEL VIA 82c686 QUE SIMPLEMENTE NO SON CAPACES DE ENTREGAR UN MAPA COHERENTE DE INTERRUPCIONES, PARA EVITAR QUE SE INICIALICE ESTE SUBSISTEMA, PODEMOS PASAR LA OPCION DEL KERNEL noapic AL MOMENTO DE INICIAR. Uniform Multi-Platform E-IDE driver Revision: 6.31 ide: Assuming 33MHz system bus speed for PIO modes; override with idebus=xx SIS5513: IDE controller on PCI bus 00 dev 01 ACA SE ESTA INICIALIZANDO LOS CANALES IDE, Y SE LE PIDE INFORMACION A LA BIOS ACERCA DE ESTO, SE DETECTA QUE TRABAJAN A UNA VELOCIDAD DE 33MHZ, POR LO CUAL NO PODRIAMOS TENER DISCOS FUNCIONANDO POR EJEMPLO EN MODOS ATA-100 TAMBIEN LLAMADOS UDMA. PCI: No IRQ known for interrupt pin A of device 00:00.1. Please try using pci=biosirq. SIS5513: chipset revision 208 SIS5513: not 100% native mode: will probe irqs later SiS620 ATA 66 controller LA PRIMERA LINEA INDICA QUE NO SE PUEDE OBTENER INFORMACION SOBRE TODOS LOS PINES DEL LLAMADO SOUTHBRIDGE (EL PUENTE DE COMUNICACION ENTRE LA CPU Y LOS BUSES), POR LO QUE SE SUGIERE QUE LA PROXIMA VEZ SE PASE LA OPCION pci=biosirq PARA FORZAR QUE EL KERNEL _CONFIE_ EN LOS DATOS ENTREGADOS POR LA BIOS.
Pgina 79 de 203
LUEGO APARECE INFORMACION SOBRE EL CHIPSET ENCARGADO DE MANEJAR LOS DISPOSITIVOS IDE, ES UN CONTROLADOR ATA66, PERO DEBIDO A QUE ESTA FUNCIONANDO EN UN MODO DE 33MHZ, LOS DISCOS NO PODRAN FUNCIONAR MAS RAPIDO QUE ESTO. ide0: BM-DMA at 0xffa0-0xffa7, BIOS settings: hda:pio, hdb:pio ide1: BM-DMA at 0xffa8-0xffaf, BIOS settings: hdc:pio, hdd:pio ACA SE DETECTAN 2 CANALES IDE, Y LOS VALORES DE CONFIGURACION QUE TIENEN EN LA BIOS, ESTOS PUEDEN SER pio O BIEN (u)dma hda: Maxtor 90422D2, ATA DISK drive hdb: SAMSUNG CD-ROM SC-152L, ATAPI CD/DVD-ROM drive EN SEGUIDA SE NOS INFORMA SOBRE LOS DISCOS QUE FUERON DETECTADOS EN CADA UNO DE LOS BUSES (NO OLVIDAR QUE CADA IDE PUEDE TENER CONECTADOS 2 DISCOS)
EL ESQUEMA DE NOMBRAMIENTO DE UNIDADES EN LINUX ES DE NATURALEZA ABSOLUTA. ES DECIR, NO SE UTILIZAN NOMBRAMIENTOS RELATIVOS A LA CANTIDAD DE PARTICIONES DEL DISCO, COMO POR EJ. EN DOS, DONDE EL DISCO "C:" PUEDE SER PERFECTAMENTE LA PARTICION 12 DEL DISCO CONECTADO COMO SLAVE EN EL IDE SECUNDARIO. EL ESQUEMA DE NOMBRAMIENTO SIGUE LA SIGUIENTE SECUENCIA. IDE 0: EL DISCO CONECTADO COMO MASTER TIENE PRIORIDAD Y POR SER EL PRIMER CANAL IDE, OBTIENE LAS PRIMERAS 2 LETRAS DEL ALFABETO. IDE 0 MASTER = hda IDE 0 SLAVE = hdb SI TENEMOS MAS CANALES IDE (POR EJEMPLO UN SECUNDARIO), SE SIGUE CON EL NOMBRAMIENTO DE LAS UNIDADES DE LA MISMA FORMA. IDE 1 MASTER = hdc IDE 1 SLAVE = hdd PARA HACER REFERENCIA A LAS PARTICIONES, SE LES IDENTIFICA CON UN NUMERO, QUE INDICA EL NUMERO DE ORDEN DE LA PARTICION, ESTOS NUMEROS NO SON ARBITRARIOS Y SIGUEN LA SIGUIENTE NORMA. UN DISCO PUEDE CONTENER UN MAXIMO DE 4 PARTICIONES PRIMARIAS O BIEN 3 PARTICIONES PRIMARIAS Y 1 PARTICION EXTENDIDA, DENTRO DE LAS CUALES PUEDE HABER HASTA 61 UNIDADES LOGICAS, CON LO CUAL TENDRIAMOS UN MAXIMO DE 64 PARTICIONES POSIBLES EN UN DISCO. LAS PARTICIONES PRIMARIAS Y EXTENDIDA (SOLO PUEDE HABER 1) UTILIZAN LOS NUMEROS DEL 1 AL 4, Y LAS UNIDADES LOGICAS DEL 5 EN ADELANTE. POR EJ: UN DISCO CON 3 PARTICIONES PRIMARIAS, 1 EXTENDIDA Y 3 UNIDADES LOGICAS TENDRA: hda1 hda2 hda3 hda4 hda5 hda6 hda7 UN DISCO CON 1 PARTICION PRIMARIA, 1 EXTENDIDA Y 1 LOGICA TENDRA: hda1 hda2 hda5 UN DISCO CON 1 PARTICION EXTENDIDA Y 3 LOGICAS TENDRA: hda1 hda5 hda6 hda7 UN DISCO CON 2 PARTICIONES PRIMARIAS 1 EXTENDIDA Y 1 LOGICA TENDRIA hda1 hda2 hda3 hda5
ide0 at 0x1f0-0x1f7,0x3f6 on irq 14 ACA SE OBTIENE INFORMACION SOBRE EL CANAL IDE PRIMARIO, SUS DIRECCIONES DE MEMORIA (ENTRADA Y SALIDA) Y LA IRQ hda: 8249472 sectors (4224 MB) w/512KiB Cache, CHS=1023/128/63, UDMA(33) ide-floppy driver 0.99.newide Partition check:
Pgina 80 de 203
hda: hda1 hda2 hda3 ACA SE NOS INFORMA DEL TAMANNO DEL DISCO, Y CUANTO CACHE TIENE, ADEMAS DE SU GEOMETRIA, CON ESTO PODEMOS SABER QUE, EL DISCO ES DE MARCA MAXTOR, DE 4G, TIENE 512K DE CACHE, 1023 CILINDROS 128 CABEZAS Y 63 SECTORES, Y ESTA TRABAJANDO EN EL MODO UDMA 33. ADEMAS QUE TIENE CREADAS 3 PARTICIONES PRIMARIAS. Floppy drive(s): fd0 is 1.44M FDC 0 is a post-1991 82077 ACA SE INICIALIZA LA DISKETTERA
NET4: Frame Diverter 0.46 COMPONENTES EXTRA DEL SUBSISTEMA DE RED. RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize ACA SE INICIALIZAN LOS RAMDISK (O RAMDRIVE) md: md: md: md: md driver 0.90.0 MAX_MD_DEVS=256, MD_SB_DISKS=27 Autodetecting RAID arrays. autorun ... ... autorun DONE.
ACA SE DETECTAN LOS DISPOSITIVOS RAID, PERO NO LOS RAID EXTERNOS O RAID DE HW, SINO LOS RAID HECHOS POR SW. NET4: Linux TCP/IP 1.0 for NET4.0 IP Protocols: ICMP, UDP, TCP, IGMP IP: routing cache hash table of 512 buckets, 4Kbytes TCP: Hash tables configured (established 4096 bind 8192) Linux IP multicast router 0.06 plus PIM-SM NET4: Unix domain sockets 1.0/SMP for Linux NET4.0. ACA SE INICIALIZA EL SUBSISTEMA DE RED. COMO SE PUEDE VER SE INDICAN LOS PROTOCOLOS SOPORTADOS, Y SE GENERA UN AREA DE MEMORIA PARA ACTUAR DE CACHE PARA LAS TABLAS DE RUTEO DINAMICAS. COMO EXTRA PODEMOS VER QUE ESTE KERNEL FUE COMPILADO CON SOPORTE MULTICAST. RAMDISK: Compressed image found at block 0 ACA SE NOS INDICA QUE SE ENCONTRO UN RAMDISK, EL CUAL SE UTILIZARA PARA CARGAR EL initrd O INITIAL RAMDISK. (EL CUAL CONTIENE LOS MODULOS PARA INICIALIZAR DISTINTOS DISPOSITIVOS, ENTRE ELLOS LOS FS) Freeing initrd memory: 129k freed LUEGO DE CARGAR EL RAMDISK, SE DETECTA QUE HAY ESPACIO NO UTILIZADO, POR LO TANTO SE LIBERA. VFS: Mounted root (ext2 filesystem). Journalled Block Device driver loaded kjournald starting. Commit interval 5 seconds EXT3-fs: mounted filesystem with ordered data mode. SE INICIA EL VFS Y LUEGO SE CARGAN LOS MODULOS PARA MANEJAR EL FS ext3, ADICIONALMENTE SE INICIALIZA EL SUBSISTEMA DE JOURNAL, ACA SE NOS INDICA QUE TIENE UN INTERVALO DE COMMIT (TRASPASAR LOS DATOS AL DISCO) DE 5 SEGUNDOS.
Pgina 81 de 203
Freeing unused kernel memory: 212k freed ACA YA SE LOCALIZARON LAS ESTRUCTURAS BASE DEL KERNEL, POR LO QUE SE PUEDE LIBERAR EL ESPACIO QUE USABA EL DECOMPRESOR. EN ESTE MOMENTO SE HACE LA LLAMADA A INIT, EL CUAL INICIARA EL RESTO DE LOS SUBSSITEMAS A TRAVES DEL SCRIPT rc.sysinit. ENTRE LO QUE SE INICIA EN ESTA ESTAPA ESTAN EL BUS AGP, PARA TENER ACCESO A LOS MODOS DE VIDEO, EL SUBSISTEMA USB, LA PUERTA PARALELA, ETC.
gestione LILO. Por ltimo, se carga el SO seleccionado, que en principio ser el kernel de linux. Si todo ha funcionado sin problemas, aparecer una "O" en el monitor y se habr escrito en la pantalla la palabra LILO. Si hubieren problemas en el proceso de arranque la presencia o ausencia de las letras de LILO junto con algunos otros mensajes sern claves para diagnosticar la causa del fallo.
Instalacin LILO
Para que su sistema Red Hat Linux pueda arrancar, es necesario instalar el LILO (the LInux LOader, o el cargador de linux por su significado del ingls). Se puede instalar el LILO en dos sitios: El Master Boot Record (MBR) o registro de arranque maestro que es el lugar recomendado para instalar LILO, a menos que otro cargador de sistea operativo (p.ej., System Commander o el Boot Manager del OS/2) ya est instalado all. Cuando su mquina arranca, LILO inicia y presenta el indicador boot:; se puede arrancar Red Hat Linux u otro sistema operativo que se haya configurado dentro del LILO para su arranque (vea abajo). El primer sector de su particin raz se recomienda si ya se est utilizando otro arrancador de inicio en su sistema (como el Boot Manager de OS/2); entonces se le puede indicar la cargador que inicie LILO y arranque al Red Hat Linux. Aparecer una caja de dilogo que le permitir seleccionar el tipo de instalacin LILO que desee (vea la figura 1). Seleccione el lugar en el que desee instalar el LILO y presione OK. Si no quiere instalar LILO, presione Skip.
Observacin: Si selecciona Skip, no podr arrancar su sistema Red Hat Linux directamente y necesitar utilizar otro mtodo de arranque (como por ejemplo un disquette de arranque). Utilice esta opcin a su propio riesgo!
Una de las caractersticas ms interesantes es que no tiene que instalar una particin nueva o un kernel nuevo, puede cambiar todos los parmetros en el arranque usando la Consola GRUB, ya que conoce los sistemas de archivos. GRUB es una alternativa de lilo, actual ya que como fue descrito anteriormente el reconoce los sistemas de archivos e incluso posee un shell propio Instalando GRUB: 1. - Descarga: ftp://alpha.gnu.org/pub/gnu/grub/grub-0.91.tar.gz 1b.- Descarga: http://linuxfromscratch.org/~gerard/grub-0.91-vga16.patch Pgina 84 de 203
Esto aade el soporte para un dibujo de fondo en grub, si lo quieres. 2. - Extrae: tar -xvzf grub-0.91.tar.gz 2b.- Opcionalmente, aplica el parche: patch -Np1 -i grub-0.91-vga16.patch 3. - Instala: ./configure --prefix=/usr # lee INSTALL para saber ms opciones make make install mkdir /boot/grub cp /usr/share/grub/i386-pc/stage1 /boot/grub cp /usr/share/grub/i386-pc/stage2 /boot/grub Y, si quiere, copia tambin uno de los archivos stage1.5 (posteriormente daremos ms detalles). 4. - Iniciando Grub: Ahora hay dos formas de continuar, puedes iniciar la Consola GRUB usando /usr/sbin/grub o utilizando un disco de arranque: cd /boot/grub cat stage1 stage2 >/dev/fd0 # Asegrate de tener un disco vaco # en la disquetera! 5. - Configuracin: Ahora tiene que definir su configuracin: Primero, GRUB quiere saber en qu particin est instalado. GRUB nombra a las particiones como sigue: (hd<NumBios>,<NumParticin>) esto es, /dev/hda es (hd0), /dev/hda1 (hd0,0), /dev/hdb2 (hd1,1)... Si no sabe la particin, puedes intentar con find /boot/grub/stage1 en la Consola GRUB. Ahora di a GRUB dnde est instalado: root (hd0,2) # Esta es una configuracin para (/dev/hda2) E instlelo en el Registro Maestro de Arranque (MBR) setup (hd0) Si quiere, puede reiniciar ahora, y con kernel (hd0,1)/boot/bzImage root=/dev/hda2 iniciar su sistema. Existe la posibilidad de "ensear" a GRUB sobre el sistema de archivos, de esa forma, GRUB no necesita un mapa de bloques para el archivo stage2 y es, entonces, ms robusto contra cambios en el sistema de archivos. Esto se consigue con los archivos Pgina 85 de 203
stage1.5: despus de hacer root (hd0,1) escribe embed /boot/grub/reiserfs_stage1_5 (hd0) # o e2fs_stage1_5 y anota el nmero de sectores ahora escribe setup (hd0) o install /boot/grub/stage1 (hd0) (hd0)1+<nmero_de_sectores_que_devolvi_embed> p /boot/grub/stage2 /boot/grub/menu.lst 6. - Instalando un Men de Arranque: Simplemente crea un archivo menu.lst en el directorio /boot/grub. Como referencia, aqu est una configuracin: # Archivo /boot/grub/menu.lst - Definicin del Men de Arranque # # Arrancar por omicin la Entrada 0 default 0 timeout 10 # Para darle otra aparencia color green/black light-green/black # Si se aplico el parche Pixmap, se puede definir un dibujo # como fondo aqu # Insertar una imagen, de fondo plashimage (hd0,1)/boot/grub/LOGO-grub-splash.xpm
#Linux Estndar title Linux RedHat 8 kernel (hd0,1)/boot/bzImage root=/dev/hda2 #Linux Antiguo title Debian Woody 3.0 kernel (hd1,0)/bzImage root=/dev/hdb2 #Windows 98 title Windows 98 chainloader (hd0,0)+1 #instala grub Pgina 86 de 203
title (Re)Instala grub root (hd0,1) embed /boot/grub/reiserfs_stage1_5 install /boot/grub/stage1 (hd0) (hd0)1+19 p /boot/grub/stage2 /boot/grub/menu.lst Esto da una idea de cmo es de poderosa la herramienta GRUB.
Administracin de usuarios
Linux, como clnico de Unix, sistema nacido en Internet, est pensado para servir a varios usuarios a la vez. Para ello existe la cuenta de "root" o superususario, y la de los dems usuarios del sistema.