Sistema operativo linux

368 views

Published on

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
368
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
2
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Sistema operativo linux

  1. 1. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” IntroducciónEn una era de cambios en el ambiente computacional, de unaamplia oferta en sistemas operativos e interfaces gráficas y sobre todo, del costo querepresenta contar con un sistema operativo que interactué con el software sin problemas,surge con fuerza inusitada: LinuxLINUX es un sistema operativo, compatible Unix. Dos características muy peculiares lodiferencian del resto de los sistemas que podemos encontrar en el mercado, la primera,es que es libre, esto significa que no tenemos que pagar ningún tipo de licencia aninguna casa desarrolladora de software por el uso del mismo, la segunda, es que elsistema viene acompañado del código fuente. El sistema lo forman el núcleo del sistema(kernel) más un gran número de programas / librerías que hacen posible su utilización.LINUX se distribuye bajo la GNU Public License: Ingles, por lo tanto, el código fuentetiene que estar siempre accesible.El sistema ha sido diseñado y programado por multitud de programadores alrededor delmundo. El núcleo del sistema sigue en continuo desarrollo bajo la coordinación deLinux Torvalds, la persona de la que partió la idea de este proyecto, a principios de ladécada de los noventa.Día a día, más y más programas / aplicaciones están disponibles para este sistema, yla calidad de los mismos aumenta de versión a versión. La gran mayoría de los mismosvienen acompañados del código fuente y se distribuyen gratuitamente bajo los términosde licencia de la GNU Public License.En los últimos tiempos, ciertas casas de software comercial han empezado a distribuirsus productos para Linux y la presencia del mismo en empresas aumenta rápidamentepor la excelente relación 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, Amiga y Atari, también existen versiones para suutilización en otras plataformas, como Alpha, ARM, MIPS, PowerPC y SPARC.ReseñaHistoria del Linux: Linux fue creado originalmente por Linux Torvald enla Universidad de Helsinki en Finlandia, siendo él estudiante de informática. Pero hacontinuado su desarrollado con la ayuda de muchos otros programadores a travésde Internet.Linux originalmente inicio el desarrollo del núcleo como su proyecto favorito, inspiradopor su interés en Minix, un pequeño sistema Unix desarrollado por Andy Tannenbaum.Él se propuso a crear lo que en sus propias palabras sería un "mejor Minix que elMinix".
  2. 2. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”El 5 de octubre de 1991, Linux anuncio su primera versión "oficial" de Linux, versión0.02. Desde entonces, muchos programadores han respondido a su llamada, y hanayudado a construir Linux como el sistema operativo completamente funcional que eshoy.¿QUÉ ES LINUX?Linux es un sistema operativo diseñado por cientos de programadores de todo elplaneta, aunque el principal responsable del proyecto es Linux Tovalds.Su objetivo inicial es propulsar el software de libre distribución junto con su códigofuente para que pueda ser modificado por cualquier persona, dando rienda suelta ala creatividad. El hecho de que el sistema operativo incluya su propio código fuenteexpande enormemente las posibilidades de este sistema. Este método también esaplicado en numerosas ocasiones a los programas que corren en el sistema, lo que haceque podamos encontrar muchísimos programas útiles totalmente gratuitos y con sucódigo fuente. Y la cuestión es que, señores y señoras, Linux es un sistema operativototalmente gratuito.Mi máquina corre Linux, y puedo asegurar que es uno de los sistemas que másaprovecha mi computadora, es decir, con el consigo ejecutar tareas mucho más rápidoque con otros sistemas operativos comerciales. Y es que Linux no requieregrandes prestaciones para funcionar.Las funciones principales de este magnífico sistema operativo son: Sistema multitarea En Linux es posible ejecutar varios programas a la vez sin necesidad de tener que parar la ejecución de cada aplicación. Sistema multiusuario Varios usuarios pueden acceder a las aplicaciones y recursos del sistema Linux al mismo tiempo. Y, por supuesto, cada uno de ellos puede ejecutar varios programas a la vez (multitarea). Shells programables Un shell conecta las ordenes de un usuario con el Kernel de Linux (el núcleo del sistema), y al ser programables se puede modificar para adaptarlo a tus necesidades. Por ejemplo, es muy útil para realizar procesos en segundo plano. Independencia de dispositivos Linux admite cualquier tipo de dispositivo (módems, impresoras) gracias a que cada una vez instalado uno nuevo, se añade al Kernel el enlace o controlador necesario con el dispositivo, haciendo que el Kernel y el enlace se fusionen. Linux posee una gran adaptabilidad y no se encuentra limitado como otros sistemas operativos. Comunicaciones Linux es el sistema más flexible para poder conectarse a cualquier ordenador del mundo. Internet se creó y desarrollo dentro del mundo de Unix, y por
  3. 3. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” lo tanto Linux tiene las mayores capacidades para navegar, ya que Unix y Linux son sistemas prácticamente idénticos. Con Linux podrá montar un servidor en su propia casa sin tener que pagar las enormes cantidades de dinero que piden otros sistemas.Linux no sacrifica en ningún momento la creatividad, tal y como lo hacen algunascompañías informáticas. Linux es una ventana abierta por la que es posible huir haciaun mundo donde la verdadera informática puede ser disfrutada sin límites nimonopolios.Linux es distribuido mediante una serie de distribuciones como RedHat, Slackware,Debían... las cuales se diferencian por su método de instalación y por los paquetes(software) que viene incluido. Es posible que encuentre a la venta versiones de Linux ypiense: "si, si.... decían que era gratis..." No se asuste, todo el software de Linux estáregido por la licencia de GNU, con la cual cualquier persona puede modificarun programa y venderlo según el desee, con la condición que la persona que compraese producto puede realizar la misma acción o simplemente hacer copias para todosaquellos que lo quieran sin tener que pagar más (por lo tanto no se extrañe si encuentradistribución comerciales). Esta licencia es la garantía que afirma la absoluta libertad deeste sistema operativo. Si no desea ni siquiera pagar esa mísera cantidad puededescargárselo de Internet totalmente gratis (bueno, sólo tendrá que pagarla factura de teléfono ).Características de Linux Multitarea: varios programas (realmente procesos) ejecutándose al mismo tiempo. Multiusuario: varios usuarios en la misma máquina al mismo tiempo (y sin licencias para todos). Multiplataforma: corre en muchas cpus distintas, no sólo Intel. Funciona en modo protegido 386. Tiene protección de la memoria entre procesos, de manera que uno de ellos no pueda colgar el sistema. Carga de ejecutables por demanda: Linux sólo lee de disco aquellas partes de un programa que están siendo usadas actualmente. Política de copia en escritura para la compartición de páginas entre ejecutables: esto significa que varios procesos pueden usar la misma zona de memoria para ejecutarse. Cuando alguno intenta escribir en esa memoria, la página (4Kb de memoria) se copia a otro lugar. Esta política de copia en escritura tiene dos beneficios: aumenta la velocidad y reduce el uso de memoria. Memoria virtual usando paginación (sin intercambio de procesos completos) a disco: una partición o un archivo en el sistema de archivos, o ambos, con la posibilidad de añadir más áreas de intercambio sobre la marcha (se sigue denominando intercambio, es en realidad un intercambio de páginas). Un total de 16 zonas de
  4. 4. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” intercambio de 128Mb de tamaño máximo pueden ser usadas en un momento dado con un límite teórico de 2Gb para intercambio. La memoria se gestiona como un recurso unificado para los programas de usuario y para el caché de disco, de tal forma que toda la memoria libre puede ser usada para caché y éste puede a su vez ser reducido cuando se ejecuten grandes programas. Librerías compartidas de carga dinámica (DLLs) y librerías estáticas también, por supuesto. Se realizan volcados de estado (core dumps) para posibilitar los análisis post- mortem, permitiendo el uso de depuradores sobre los programas no sólo en ejecución sino también tras abortar éstos por cualquier motivo. Casi totalmente compatible con POSIX, System V y BSD a nivel fuente. Mediante un módulo de emulación de ibcs2, casi completamente compatible con SCO, SVR3 y SVR4 a nivel binario. Todo el código fuente está disponible, incluyendo el núcleo completo y todos los drivers, las herramientas de desarrollo y todos los programas de usuario; además todo ello se puede distribuir libremente. Hay algunos programas comerciales que están siendo ofrecidos para Linux actualmente sin código fuente, pero todo lo que ha sido gratuito sigue siendo gratuito. Control de tareas POSIX. Pseudo-terminales (ptys). Emulación de 387 en el núcleo, de tal forma que los programas no tengan que hacer su propia emulación matemática. Cualquier máquina que ejecute Linux parecerá dotada de coprocesador matemático. Por supuesto, si tu ordenador ya tiene una fpu (unidad de coma flotante), será usada en lugar de la emulación, pudiendo incluso compilar tu propio kernel sin la emulación matemática y conseguir un pequeño ahorro de memoria. Soporte para muchos teclados nacionales o adaptados y es bastante fácil añadir nuevos dinámicamente. Consolas virtuales múltiples: varias sesiones de login a través de la consola entre las que se puede cambiar con las combinaciones adecuadas de teclas (totalmente independiente del hardware de video). Se crean dinámicamente y puedes tener hasta 64. Soporte para varios sistemas de archivo comunes, incluyendo minix-1, xenix y todos los sistemas de archivo típicos de system v, y tiene un avanzado sistema de archivos propio con una capacidad de hasta 4 tb y nombres de archivos de hasta 255 caracteres de longitud. Acceso transparente a particiones ms-dos (o a particiones os/2 fat) mediante un sistema de archivos especial: no necesitas ningún comando especial para usar la partición ms-dos, parece un sistema de archivos normal de unix (excepto por algunas graciosas restricciones en los nombres de archivo, permisos, y esas cosas). Las particiones comprimidas de ms-dos 6 no son accesibles en este momento, y no se espera que lo sean en el futuro. El soporte para vfat (wnt, windows 95) ha sido añadido al núcleo de desarrollo y estará en la próxima versión estable.
  5. 5. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” Un sistema de archivos especial llamado umsdos que permite que Linux sea instalado en un sistema de archivos dos. Soporte en sólo lectura de hpfs-2 del os/2 2.1 Sistema de archivos de cd-rom que lee todos los formatos estándar de cd-rom. Tcp/ip, incluyendo ftp, telnet, nfs, etc. Appletalk disponible en el actual núcleo de desarrollo. Software cliente y servidor netware disponible en los núcleos de desarrollo.LINUX - COMANDOS BÁSICOSdate muestra la fecha del sistema.date –u mmddhhhhaa cambia la fecha del sistema, ej. 1202120095 es igual a mes 12,día 02, hora 12:00 y año 1995.logout sale de la actual sesión.login sale de la actual sesión.^D sale de la actual sesión.Alt+F1 inicia una consola virtual (varias a la vez: F1,F2,F3...)passwd cambia el password del actual usuario.^C aborta programa en ejecución.^S paraliza la pantalla.^Q anula la paralización de la pantalla.who lista los usuarios conectados.who am i lista tu nombre.who you are lista tu nombre.mail nombre envía correo, se finaliza escribiendo un punto en una línea sola.mail visualiza tu correo, teclea ? para ayuda.ls lista directorios y ficheros.ls –i lista directorios y ficheros con sus i-números.ls –a lista directorios y ficheros en orden alfabético.ls –s lista directorios y ficheros con su tamaño en bloque (1 bloque= 512 bytes)ls –r lista directorios y ficheros en orden inverso.ls –u lista directorios y ficheros según último acceso.ls –l lista todos los directorios y ficheros en formato largo.Head –nº lines selecciona la primera línea (ej. ls|head –1 lines)
  6. 6. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”cat file file ... visualiza seguidamente los ficheros indicados.cat file file > file graba los dos archivos en uno.ln file link crea un enlace a un archivo, los dos contienen el mismo fichero físico, sicambias uno, cambia el otro. Pero si borras uno todavía queda el otro.cp file file copia ficheros.rm file borra ficheros.mv file file mueve o cambia de nombre.pwd muestra el directorio actual.cd cambia de directorio.mkdir directorio crea un directorio.rmdir directorio borra un directorio.comando & hace que el proceso sea desatendido en 2º plano (background).ps [nº] muestra los procesos desatendidos.ps alx muestra los procesos desatendidos asociados a la terminal (a), los no asociados(x) y hace una lista larga (l).Elementos de la lista larga: STA (Estado del proceso) O (Inexistente) S (Durmiendo) W(Esperando) I (Intermedio) R (Ejecutándose) Z (Terminado) Z (Parado) UID (Nº deIdentificación del propietario) PID (Nº de Identificación del proceso) PPID (Nº deIdentificación del proceso padre) PRI (Prioridad, nº altos=baja prioridad) WCHAN(Suceso al que espera) NICE (Nº para calcular la pri.) TTY (Terminal) STTY (Tiempode ejecución)kill nº detiene la ejecución de un proceso en background.at hora o fecha <<EOF ejecuta algo a una hora establecida (para salir escribir EOF)Posibilidades para hora o fecha: 8am, 2130, 12N fri week (siguiente semana), 2PM apr3, now +1minute, now +1 hour, 4PM +2 days, 1PM tomorrow,...comando ; comando se pueden escribir varios comandos a la vez.Comando > file redirecciona la salida a un archivo.(comando ; comando) > file redirecciona toda la salida del conjunto a un archivo.Comando >> file redirecciona la salida a un archivo, pero lo añade al final de este.Comando < file > file redirecciona de forma contraria para acabar llevando el resultadoa un archivo.Comando | comando tubo (pipeline) la salida del 1º la envía hacia el 2º.
  7. 7. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”*, ?, [...], ... Caracteres de sustitución.Echo * lista directorios y ficheros.Echo –n "hoy es `date`, hola $variable" hace eco sin carro de retorno (-n) de la frase hoyes, ejecuta el comando date (entre acentos), hace eco de hola y imprime el contenido dela variable. Para eliminar los valores especiales de algunos caracteres deberemosescribir / antes, ejemplo "hola /"pepe/"".mesg y permite que te escriban los usuarios del sistema.mesg n prohibe que te escriban a los usuarios del sistema.mesg muestra el estado actual (escribir o no).tty muestra tu número (archivo) de terminal.write nombre [tty] para comunicarse con un usuario conectado al sistema. Para salir ^D,para indicar al otro el fin del mensaje –oo-, y el fin de la comunicación –oo-. Si elusuario pertenece a otra terminal, se debe indicar. Si el usuario tiene el mesg en no oesta realizando una tarea específica no podremos comunicarnos.cmp file file comprueba si son idénticos, si lo son no aparece ninguna salida.comm [-nº] file file lista las palabras comunes de los dos archivos, en el número seindica la columna a comparar: 0,1,2,3.diff file file lista las palabras diferentes de los dos archivos.find . –file ... –mtime 1 –size +10 –type f busca en el directorio actual los ficheros condicho nombre, que hayan sido modificados hace 1 día, con un tamaño mayor a 10bloques y del tipo fichero.find / -name ... –atime 1 –size –20 –type d busca en el directorio actual los directorioscon dicho nombre, que hayan tenido acceso hace 1 día, con tamaño menor que 20bloques y del tipo directorio.find . –name –ok rm {} ; busca en el directorio actual y borra los ficheros encontradosque cumplan los requisitos.lpr file imprime el archivo.pr file imprime el archivo junto a un encabezamiento, la fecha, hora, ...tail nº file muestra la cola de un archivo, en nº se debe especificar: +2l (a partir de lasegunda línea por arriba), -10l (a partir de la décima línea por abajo). Si en lugar de l(línea) podemos escribir b (bloque) ó c (carácter).tr caracteres caracteres cambia los caracteres por los indicados a continuación.(Ejemplo: tr abc ABC).tee file muestra los datos en un punto intermedio.
  8. 8. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”du muestra el tamaño por bloques de cada archivo y directorio.du –s muestra el tamaño total por bloques.file file indica el tipo de archivo que es (empty cannot open directory Englishtext ascii text data).stty información sobre nuestro terminal.stty [-] raw lee carácter a carácter. Se anula añadiendo el signo – al comando.stty [-] cooked lee línea a línea. Se anula añadiendo el signo – al comando.stty [-] cbreak mezcla de los dos anteriores. Se anula añadiendo el signo – al comando.stty [-] nl no retorna el carro hasta el principio (se anula con ^J).stty [-] echo no se ven las pulsaciones en pantalla. Se anula añadiendo el signo – alcomando.sort file muestra en pantalla el archivo ordenado por la 1ª columna (para indicar lasegunda columna añadir +1 y así sucesivamente).sort file –u muestra en pantalla el archivo ordenado por la 1ª columna sin las líneasduplicadas.sort file –b muestra en pantalla el archivo ordenado por la 1ª columna ignorandoespacios en blanco.sort file –f muestra en pantalla el archivo ordenado por la 1ª columna distinguiendoentre minúsculas y mayúsculas.sort file –r muestra en pantalla el archivo ordenado por la 1ª columna en orden inverso.sort file –c comprueba si el archivo ya esta ordenado.grep palabra file busca unos caracteres determinados en un fichero.grep –v palabra file busca las líneas que no contienen dicha palabra.grep –c palabra file muestra el número de líneas que contienen la palabra.grep –y palabra file busca la palabra en el fichero sin distinguir entreMinúsculas y mayúsculas.grep –n palabra file busca la palabra y muestra su línea con el número deesta.uniq file muestra el archivo sin las líneas que estén repetidas.wc file muestra el número de líneas, palabras y caracteres (en este orden) del archivo.wc –l file muestra el número de líneas del archivo.wc –w muestra el número de palabras del archivo.wc –c muestra el número de caracteres del archivo.
  9. 9. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”cal [nº mes] nº año imprime un calendario del mes y/o año indicado. Mes: 1-12, año 1-9999.newgrp grupo cambia de grupo.sum file suma las palabras de un archivo.expr nº + nº suma +, resta -, multiplica *, divide /,... una expresión.wall mensaje manda un mensaje a todos los usuarios. (Solo lo recibirán los usuarios quetengan su sistema configurado para poder recibir estos mensajes)id muestra nuestro UserId y el GroupId.chmod nºnºnº file cambia los permisos de un archivo. 1: Permiso de ejecución (x), 2:Permiso de escritura (w), 3: Permiso de lectura ( r). Se deben sumar para poner más deuno. El primer número corresponde al creador del archivo, el segundo al grupo delcreador, y el tercero al resto de usuarios. Ej. 666 : todo el mundo tiene permiso de todo.chown nombre file cambia el propietario de un archivo.chgrp grupo file cambia el grupo del propietario de un archivo.umask muestra los permisos por defecto de los archivos creados. Ej. 022 entonces 666-022=644, es decir usuario permiso de w, r, grupo permiso de r y lo otros permiso de r.umask nº cambia los permisos por defecto de los archivos creados. Ej. umask 000: todoel mundo tiene todos los permisos al ser creado un archivo.Archivos especiales:/etc/passwd Contiene todos los logins y passwords/etc/motd Mensaje del día/etc/profile Se ejecuta al introducir al entrar en el sistema VersionesEl desarrollo inicial Linux ya aprovechaba las características de conmutación de tareasen modo protegido del 386, y se escribió todo en ensamblador.Linux nunca anunció la versión 0.01 de Linux (agosto 1991), esta versión no era nisiquiera ejecutable, solamente incluía los principios del núcleo del sistema, estabaescrita en lenguaje ensamblador y asumía que uno tenía acceso a un sistema Minix parasu compilación.El 5 de octubre de 1991, Linux anunció la primera versión "Oficial" de Linux, - versión0.02. Con esta versión Linux pudo ejecutar Bash (GNU Bourne Again Shell) y gcc (Elcompilador GNU de C) pero no mucho mas funcionaba. En este estado de desarrollo nise pensaba en los términos soporte, documentación, distribución.
  10. 10. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”Después de la versión 0.03, Linux salto en la numeración hasta la 0.10, más y másprogramadores a lo largo y ancho de internet empezaron a trabajar en el proyecto ydespués de sucesivas revisiones, Linux incremento el número de versión hasta la 0.95(Marzo 1992). Más de un año después (diciembre 1993) el núcleo del sistema estaba enla versión 0.99 y la versión 1.0 no llego hasta el 14 de marzo de 1994.La versión actual del núcleo es la 2.2 y sigue avanzando día a día con la meta deperfeccionar y mejorar el sistema.La última versión estable es la versión 2.2, que soporta muchos más periféricos,desde procesadores hasta joysticks, sintonizadores de televisión, CD ROMs no ATAPIy reconoce buena cantidad de tarjetas de sonido. Incluye también soporte para tipos dearchivos para Macintosh HFS, Unix UFS y en modo de lectura, HPFS de OS/2 y NTFS,de NT.Otras Versiones:Linux 2.0Linux 2.2Linux 2.3ComparaciónSe señala las diferencias de Linux con el DOS y no con otro S.O. porque la mayoríaprovienen del DOS. No existe el concepto de unidad de disco. Todas las unidades en Linux se montan como si fueran un subdirectorio más. No existe el concepto de extensión del nombre de un fichero. Los ficheros pueden tener nombres de hasta 256 caracteres. Los puntos están permitidos en el nombre de un fichero. Así, un fichero se podrá llamar:DOSEMU-HOWTO.español.tar.gzpor poner un ejemplo. Los subdirectorios no se separan con el carácter , como en DOS, sino con el carácter /. Ejemplo:/usr/src/linux-1.2.13/Makefile
  11. 11. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” Existe diferencia entre mayúsculas y minúsculas. Por ejemplo, no es lo mismo dir que DIR que Dir... Adiós a los atributos de los ficheros, tal y como los conoce el DOS. Cada fichero tendrá ahora 10 atributos. Entre un comando y sus parámetros deberemos dejar obligatoriamente un espacio en blanco. Por ejemplo cd.. no funcionará mientras que cd .. sí. IMPORTANTE: Un sistema Linux NUNCA se puede apagar por las buenas. Antes le hemos de advertir al S.O. de que vamos a apagarlo (o reiniciarlo). La razón de que esto deba ser así es para que al sistema le dé tiempo de escribir en disco todos los datos que tuviera pendientes de escribir, salir ordenadamente de todas las aplicaciones que tuviera arrancadas y desmontar todas las unidades que tuviera montadas.Existen muchas otras diferencias (gestión de memoria plana, ...), pero las mencionadasson las que más nos pueden influir en la forma de trabajar, al menos en principio.¿Qué es el kernel?El kernel o núcleo de Linux se podría definir como el corazón de este sistema operativo.Es el encargado de que el software y el hardware de tu ordenador puedan trabajarjuntos.Las funciones más importantes del mismo, aunque no las únicas, son: Administración de la memoria, para todos los programas en ejecución. Administración del tiempo de procesador, que estos programas en ejecución utilizan. Es el encargado de que podamos acceder a los periféricos/elementos de nuestro ordenador de una manera cómoda.Existen dos versiones del Linux kernel:Versión de producción: La versión de producción, es la versión estable hasta elmomento. Esta versión es el resultado final de las versiones de desarrollo oexperimentales.Cuando el equipo de desarrollo del kernel experimental, decide que ha conseguido unkernel estable y con la suficiente calidad, se lanza una nueva versión de producción oestable. Esta versión es la que se debería utilizar para un uso normal del sistema, ya queson las versiones consideradas más estables y libres de fallos en el momento de sulanzamiento.Versión de desarrollo: Esta versión es experimental y es la que utilizan losdesarrolladores para programar, comprobar y verificar nuevas características,correcciones, etc. Estos núcleos suelen ser inestables y no se deberían usar, a no ser quesepas lo que haces.Como interpretar los números de las versiones:
  12. 12. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” Las versiones del kernel se numeran con 3 números, de la siguiente forma: XX.YY.ZZ XX: Indica la serie principal del kernel. Hasta el momento solo existen la 1 y 2. Este número cambia cuando la manera de funcionamiento del kernel ha sufrido un cambio muy importante. YY: Indica si la versión es de desarrollo o de producción. Un número impar, significa que es de desarrollo, uno par, que es de producción. ZZ: Indica nuevas versiones dentro de una versión, en las que lo único que se ha modificado, son fallos de programación /bugs.Unos ejemplos nos ayudaran a entenderlo mejor: ej1: versión del kernel 2.0.0: Kernel de la serie 2 (XX=2), versión de producción 0 (YY=0 par), primera versión de 2.0 (ZZ=0) ej2: versión del kernel 2.0.1: Kernel de la serie 2, versión 0, en el que se han corregido errores de programación presentes en la versión 2.0.0 (ZZ=1) ej3: versión del kernel 2.1.100: versión 100 del kernel de desarrollo 2.1. Sistemas de ArchivosSistema de ficheros Linux (I)Bueno como sabrás el DOS funciona con FAT, File Allocation Table, o sea una tabla aprincipio del disco duro donde se almacena, la información de cada bloque del disco, demanera que tenemos una lista enlazada para cada fichero.--------- | 2| 0 FICHERO A bloques 0 2 6 --------- | 3| 1 FICHERO B bloques 1 3 4 --------- | 6| 2 --------- | 4| 3 --------- | fin| 4 --------- | | 5 --------- | fin| 6 ---------Para leer un fichero A leemos en la fat el bloque 0, vemos donde continua y leemos lafat en el bloque 2, leemos el bloque del disco, y volvemos a leer el bloque de la fatdonde esta el bloque 6. Esto parece rápido, y lo es i la FAT esta en memoria, pero sicalculamos lo que puede ocupar una FAT de un disco duro de 1Giga donde el disco estadividido en bloques de pongamos 4024Kb y pongamos 20 bytes por descriptor, tenemosuna FAT de 5 megas, (no recuerdo de cuanto era el tamaño de bloque/descriptor enMSDOS), lo cual no se puede tener en memoria y si hay que leer cada vez de disco esmuy lento. Cuando MSDOS funcionaba en disquete no era demasiado problema teneren memoria unos Ks de FAT, pero con los disco de ahora de Giga ya es un problema.
  13. 13. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”¿Como lo hace UNIX? ¿Y por supuesto ext2 de Linux? Con otra estructura de datosllamada i-nodes, que para cada fichero tiene un array, con las posiciones del discodonde se encuentra este. De esta manera cuando queremos leer un fichero, leemos soloun trozo de disco contiguo, donde encontramos todas las referencias a ése y no toda laFAT que puede ser de más de un mega. Con los nodos-i (o inodes) no ahorramosespacio de disco (con respecto a FAT), la información de en que bloques esta cadafichero la tenemos igual pero mejor organizada.Las tablas de i-nodes tienen un tamaño limitado, pero en caso de que se llenen conindirecciones se accede a otras tablas de i-nodes, con lo que el límite del tamaño de losficheros es grande. (Bueno esto lo he explicado un poco por encima se podría explicarextensamente).IN> Me imagino que el ext2 es mejor que el msdos, pero realmente que IN> diferenciashay entre ellos (menos lo de los permisos y la lon- IN> gitud del nombre de losficheros).Pues como has visto es más rápido y eficiente, aparte de no tener las limitaciones deusuario, permisos, nombres largos, etc.El tamaño de bloque de disco, en MS DOS es fijo en función del tamaño de la partición,en Linux en el momento en que formateas la partición con mkfs (o mk2efs no recuerdo)puedes elegir el tamaño del bloque según vayas a tener más ficheros pequeños, o másficheros grandes.Sistema de ficheros Linux (II)El ext2 tiene un tamaño de i-nodo fijo entre 1 y 4K, independientemente del tamaño dela partición. El tamaño del i-nodo se selecciona al crear el sistema de archivos y esseleccionable por el usuario.El ext2 tiene una unidad similar al cluster, llamada bloque, y que es, por lo general de1K, especificable por el usuario e independiente del tamaño de la partición, lo cualasegura un buen aprovechamiento del espacio libre con archivos pequeños.El ext2 no usa una FAT, sino una tabla de i-nodos distribuidos en un númerodeterminable de grupos a través de la superficie, lo cual permite balancear ladistribución de los bloques de archivos en la superficie a través de dichos grupos paraasegurar la mínima fragmentación.El ext2 tiene un límite máximo de 4GB de archivo, pero no limita el tamaño máximo dela partición a 4GB, como es el caso de la FAT.El ext2 tiene soporte para detección de un sistema de archivos desmontadoincorrectamente cuando el sistema se apaga de forma errónea, y capacidad para autorecuperarlo en caso de fallo accidental.El ext2 mantiene información de la última vez que se montó y se accedióal volumen (sistema de archivos), así como del número de veces que se ha montado
  14. 14. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”dicho volumen desde la última comprobación automática, así como la fecha en la que secomprobó su integridad por última vez.El ext2 permite asignar un porcentaje del disco duro que se reserva para el uso deusuarios con un "uid" y "gid" específicos.El ext2 es un sistema de archivos mucho más avanzado que el MS-DOS, con soporte decorrección y detección de errores, compresión de archivos (todavía por implementar),mayor tolerancia a la fragmentación de archivos y con unos tiempos de respuesta muysuperiores, aunque a un coste superior de utilización de memoria.¿Qué es la Swap?La swap es un espacio reservado en tu disco duro para poder usarse como una extensiónde memoria virtual de tu sistema. Es una técnica utilizada desde hace tiempo para hacercreer a los programas que existe más memoria RAM de la que en realidad existe. Es elpropio sistema operativo el que se encarga de pasar datos a la swap cuando necesita másespacio libre en la RAM y viceversa.En Linux, la memoria total disponible por el sistema estará formada por la cantidad dememoria RAM instalada + la swap disponible. El acceso a la swap (disco duro) es máslento que el acceso a la memoria RAM, por lo que si nuestro ordenador está muycargado de trabajo y hace un uso intensivo de la swap, la velocidad del sistemadisminuirá. Un uso muy intensivo y continuado de la swap es un indicativo de quenecesitamos más memoria en nuestro sistema para que funcione desahogado con el usoque le estamos dando.En Linux generalmente se usa como mínimo una partición dedicada a swap (aunquetambién se puede tener un fichero swap).¿Cuánta Swap necesito?Esta es otra pregunta que es difícil de contestar: Todo dependerá del uso que se le vayaa dar al sistema y del espacio libre que tengamos.Si vas a utilizar muchos programas a la vez y tienes poca memoria RAM, necesitarasmas swap, si tienes mucha RAM, no necesitaras tanta swap. Hay que recordar que unuso no intensivo de la swap es normal y no afectara mucho a la velocidad del sistema,pero como hemos dicho antes, un uso muy intensivo y continuado es un indicativo deque necesitamos más memoria RAM.No existe una fórmula mágica para saber cuánto espacio deberíamos reservar para swap.Hay que recordar que la memoria total disponible en Linux es RAM + Swap. Comodatos orientativos podríamos decir que como mínimo, esta combinación debería ser de32MB para sistemas que se utilicen en modo texto y de 64MB en adelante para sistemasque se utilicen en modo gráfico.Aquí tienes una serie de consejos sobre la swap:
  15. 15. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” Es recomendable el tener siempre algo de swap configurada, incluso en sistemas con mucha memoria. En linux no se puede tener más de 128MB en una partición swap, si necesitas mas de 128MB de swap, puedes tener más de una partición dedicada a swap, por ejemplo, dos de 128MB Si tienes más de un disco, instala la swap en el que trabaje más rápido. Si tienes más de un disco que se puedan acceder simultáneamente (por ej. dos SCSI, o dos IDE en diferentes canales IDE), se puede ganar algo de velocidad teniendo una particion swap en cada uno de estos discos.Para un uso privado "normal-alto" del sistema, aquí tienes unos ejemplos orientativos dela cantidad de swap recomendable: 16MB RAM + 64MB Swap 32MB RAM + 96MB Swap 64MB RAM + 64MB Swap 128MB RAM + 128MB Swap 256MB RAM + 128MB SwapComo dato anecdótico, decir que existen servidores, en donde la cantidad de swap llegaa ser de 256MB y hasta 512MB aunque yo tengo ordenadores con 16MB de RAM y16MB de Swap como servidores de impresión que funcionan sin ningún problema.En fin, cada uno debe de saber el uso que le va a dar a su sistema y analizar la cantidadde memoria necesaria, aunque si tienes espacio de sobra en el disco, más vale tener másSwap disponible que la necesaria, por lo que pueda ocurrir en un futuro, como dice eldicho, más vale que sobre que no que falte.Manejo de memoria¿Qué es una partición? ¿Cómo creó una partición?Particionar el disco duro es una manera de dividir el disco físico en varios discoslógicos. O lo que es lo mismo, al particionar un disco, dividimos el disco en variasparticiones independientes unas de otras, creando la ilusión de que tenemos diferentesdiscos, cuando en realidad lo que tenemos es un solo disco físico dividido en partes.Una partición es una de estas partes (divisiones) del disco.Existen dos clases de particiones: primarias y extendidas. En un disco solo podrás tenercomo máximo 4 particiones primaria y 1 extendida. En la partición extendida se podrándefinir todas (bueno también existe un límite, pero es alto) las unidades lógicas quequeramos. Con este sistema podemos tener una gran cantidad de particiones en nuestrodisco.Cualquier disco que tengamos en nuestro ordenador tiene al menos una particiónprimaria, que en la mayoría de los casos tiene un tamaño equivalente al total del disco.
  16. 16. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”Unos ejemplos aclararan las cosas: Un disco de 1Gb con una sola partición, tendrá una partición primaria de 1Gb (total del disco). Ese mismo disco podría tener 4 particiones primarias de 0.25Gb cada una, dando la ilusión de que tenemos 4 discos duros de 0.25Gb en vez de un solo disco de 1Gb. Otra combinación posible podría ser 4 particiones primarias de 0.10Gb y 1 extendida con 6 unidades lógicas de 0.10Gb, en este caso parecería que tenemos 10 discos duros de 0.10Gb cada uno.Las combinaciones son múltiples y variadas y dependerán de nuestros gustos y de loque necesitemos.Casi todos los sistemas operativos traen un programa con el que podemos crear,modificar, borrar las particiones de nuestro disco. En Ms-Dos/Windows de llamaFDISK, este programa solo puede trabajar con particiones de Ms-Dos/Windows. EnLinux también se llama FDISK (/sbin/fdisk), pero es un programa más potente, capaz detrabajar y crear particiones tanto para Linux como otros sistemas operativos. Si vas atrabajar con Linux, es recomendable el uso del FDISK que viene con tu distribución,para evitar problemas.Al contrario que Ms-Dos, Windows, OS/2, las diferentes particiones en Linux no sedenominan C:, D:, E:, ...., etc, existe una denominación propia:Si los discos son IDE: /dev/hda: Disco duro IDE como master en el canal IDE 1. /dev/hda1: Partición primaria 1 en /dev/hda /dev/hda2: Partición primaria 2 en /dev/hda /dev/hda3: Partición primaria 3 en /dev/hda /dev/hda4: Partición primaria 4 en /dev/hda /dev/hda5: Partición extendida 1 en /dev/hda /dev/hda6: Partición extendida 2 en /dev/hda ..... ..... /dev/hda16: Partición extendida 16 en /dev/hda /dev/hdb: Disco duro IDE como esclavo en el canal IDE 1. /dev/hdb1: Partición primaria 1 en /dev/hdb ........ ........ /dev/hdc: Disco duro IDE como master en el canal IDE 2. /dev/hdc1: Partición primaria 1 en /dev/hdc ........ ........
  17. 17. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C” /dev/hdd: Disco duro IDE como esclavo en el canal IDE 2. /dev/hdd1: Partición primaria 1 en /dev/hdd ........ ........Si los discos son SCSI: /dev/sda: Disco duro SCSI nr.1. /dev/sda1: Partición primaria 1 en /dev/sda ........ ........ /dev/sdb: Disco duro SCSI nr.2. /dev/sdb1: Partición primaria 1 en /dev/sdb ........ ........IMPORTANTE: Es muy importante saber lo que se está haciendo cuando trabajas conprogramas que modifican la tabla de particiones de un disco. Al cambiar la tabla departiciones de vuestro disco, se pierden los datos contenidos en las particionesafectadas. Realizar copias de seguridad de los datos que quieras mantener antes de usarFDISK. PARTICIONES DEL DISCOCon el fin de instalar Linux, debes tener espacio disponible para él. Este espacio dedisco necesita estar separado del espacio de disco usado por otros sistemas operativosque puedas tener instalados en tu ordenador, tal que Windows, OS/2, o incluso unaversión diferente de Linux.Un disco puede dividirse en diferentes particiones. Se puede acceder cada particióncomo si fuera un disco separado. Además cada partición tiene un tipo que se usa paraindicar como esta almacenada la información en la partición. Por ejemplo, hay distintostipos de particiones usados por DOS, OS/2, y Linux.Aun si vas a instalar Linux en su propio disco duro, o en un ordenador que no contieneningún otro sistema operativo, seguirás necesitando crear particiones para que las useLinux. En este caso es muy sencillo, ya que no hay otras particiones en el disco duro delas que preocuparse.Por otra parte, puede querer instalar Linux en un disco que ya contiene software o datosde un sistema operativo diferente. Las cosas pueden ser algo más delicadas en estasituación, ya que un error puede destruir tus particiones actuales, por no mencionar losdatos que contengan.
  18. 18. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”Durante el proceso de instalación, tendrás la oportunidad de crear particiones paraLinux. Llegado este punto, tu mayor preocupación será estar seguro de tener suficienteespacio disponible para las particiones Linux. Déjame repasar las diferentes formas deliberar espacio para las particiones Linux.Estrategias para cambiar particionesHay tres posibles escenarios a los que puedes hacer frente cuando intentas cambiar lasparticiones de tu disco duro: Hay espacio libre disponible y no particionado. Hay una partición no usado disponible. Hay espacio libre disponible en una partición usada actualmente.Veamos cada escenario en orden.Usando espacio libre no particionadoTodo el espacio no forma parte de ninguna partición definida.En este caso, puedes crear simplemente las particiones necesarias a partir del espaciolibre.Usando una partición no usadaEl año pasado reemplazaste tu pequeño disco duro de 105MB en tu sistema Windowspor un mounstro de 1.2GB. Lo particionaste en dos partes iguales, pensando en queusarías el ``dispositivo C: (en realidad la primera partición del dispositivo) paraWindows, y el ``dispositivo D: (en realidad ls segunda partición del dispositivo) para tucolección de programa de libre distribución que copiaste de Internet. Bien, has estadotan acostumbrado a usar C: que nunca has puesto nada importante en D:.Si te encuentras en esta situación, puedes usar el espacio asignado a la partición endesuso. Tendrás que borra la partición, y crear las apropiadas particiones Linux en sulugar.Usando espacio libre de una partición activaEsta es la situación más común. Es además, desafortunadamente, la más difícil de tratar.El principal problema es que tenemos el espacio suficiente, pero esta actualmenteasignada a una partición en uso. Si compras un ordenador con software pre instalado, eldisco duro tendrá seguramente una gran partición conteniendo el sistema operativo y losdatos.Además de añadir un nuevo disco duro en tu sistema, tienes otras dos opciones:Cambio de particiones destructivo -- Básicamente, borras la única partición grande, ycreas varias más pequeñas. Como puedes imaginar, cualquier dato que tengas en estapartición será destruido. Esto quiere decir que es necesario hacer una copia de seguridad
  19. 19. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”completa. Por tu propio interés, haz dos copias de seguridad, usa la verificación (si estádisponible en tu software de backup), e intenta leer los datos de la copia de seguridadantes de borrar la partición. Ten también en cuenta que si hay un sistema operativo dealgún tipo instalado en la partición, será necesario instalarlo de nuevo también.Después de crear una partición más pequeña para tu software actual, puedes instalar denuevo cualquier software, restaurar tus datos, y continuar con la instalación de Linux. Cambio de particiones no destructivo -- En este caso, ejecutas un programa que hacelo que parece imposible; hace una partición grande más pequeña sin perder ninguno delos ficheros almacenados en la partición. Mucha gente ha encontrado este métodoseguro y libre de problemas; sin embargo, recomendamos que hagas una copia deseguridad de la partición a la que vayamos a cambiar el tamaño, por si acaso.Hardware requeridoEl Linux funciona correctamente en un 386 SX con 4 Mb de memoria. Pero se deberátener en cuenta que aquellas aplicaciones con fuerte requerimiento de memoria y cargade la CPU (por ejemplo, las X Windows) irán sumamente lentas.Una configuración mucho más usable sería la siguiente: 486 DX 33 MHz o superior,con 8 Mb de memoria RAM y con tarjeta de video VGA o superior.Unidad de CD-ROM es altamente recomendable. Casi mejor habría que decir queimprescindible, dado que las distribuciones vienen en ese formato. En la actualidad, lamayoría de ellas están soportadas por el Linux. Asimismo tiene soporte para módem ytarjeta de sonido.De todas formas, los propietarios de máquinas inferiores a la descrita (¿todavía quedaalguno? };-) que no se desanimen. Simplemente deberán tener más paciencia. Y es miobligación puntualizar que muchas veces se obtienen mejores resultados con másmemoria que con más potencia de CPU.Debo puntualizar que en 286 no funcionará el Linux. El kernel está hecho para 386.Hay, sin embargo, un grupo de gente que está trabajando en una versión de Linux paraprocesadores 8086, pero aún está en fase de proyecto.En cuanto al espacio en disco duro, dependerá en gran medida de lo que se pretendahacer desde Linux. Según el Linux installation and getting started, con 10 Mb departición se puede hacer una instalación mínima pero usable (personalmente me parecebastante optimista). Yo creo que alrededor de 100 Mb resulta espacio suficiente para unLinux completo, incluidas las X Windows. A partir de ahí, lo que cada uno considere...Al hacer cálculos del espacio en disco duro necesario, deberemos tener en cuenta que senecesita hacer una partición de swap. El tamaño de la misma dependerá de la cantidadde memoria RAM disponible: a más memoria, menos swap necesitaremos.
  20. 20. Wilson Omar Salazar BurgosComputación e InformaticaIV – “C”¿Dónde instalo Linux?Linux se puede instalar en cualquier disco que tengas en tu sistema y en cualquierpartición del disco duro (Primaria o extendida).No podrás tener Linux en una partición compartida con otro sistema operativo, Linuxnecesita su propia partición es para funcionar.¿Cuántas particiones necesito para Linux?La respuesta rápida y fácil es: recomendable al menos dos, una para el sistema/datos yotra para Swap. Usualmente se suelen tener tres, una para el sistema/programas (/), otrapara los datos (/home) y otra para swap.La respuesta larga y no tan fácil es más complicada de explicar: Todo dependerámuchísimo del uso que se le vaya a dar al sistema.Para sistemas que se utilicen de forma particular y por uno o pocos usuarios bastara conlas dos/tres particiones antes mencionadas, esto evitara los problemas de saber quécantidad de espacio necesitan las diferentes particiones y el quedarnos sin espacio enalguna partición vital, mientras que nos sobra en otras.Para sistemas servidores, con gran cantidad de servicios y usuarios es muyrecomendable tener varias particiones/discos. Existe un documento (HOWTO: MultiDisk System Tuning) muy bueno y quizás complicado para el principiante que explicacuantas particiones y discos y que tamaño deberían tener en función del uso que se levaya a dar al sistema, o en cualquier servidor con documentación Howto.¿Porque necesito diferentes particiones?El particionar el disco, es simplemente una manera de organizar tu disco duro. Podrásorganizarlo con una sola partición o en varias. Es el usuario el que deberá decidircuantas particiones tendrá su disco, y el tamaño de las mismas, hay que recordar, que almenos hay que tener una partición primaria.Desventajas de tener vuestro disco dividido en diferentes particiones. NingunaVentajas en tener vuestro disco particionado en varias particiones: Si tienes un error/problema en una de ellas, las demás no se verán afectadas. Poder tener diferentes sistemas operativos en vuestra maquina, totalmente independientes unos de otros. Poder tener vuestros archivos de datos en particiones totalmente independientes. Poder borrar/cambiar el contenido de una partición, sin que esto afecte a las demás.

×