Sistema Operativo GNU/Linux Unidad 2: Instalación del S.O GNU/Linux Objetivo de la Unidad: Identificar los conceptos básicos involucrados en el proceso de instalación logrando así mismo una instalación exitosa Contenidos: El Disco Duro y su estructura tanto física como lógica
●
Particiones y sus tipos
●
Instalación del S.O. GNU/Linux y sus características
●
Hardware Requerido
●
El disco duro El disco duro es el dispositivo de almacenamiento más importante de un computador. En él se almacenan de forma persistente tanto los archivos de los programas (sistemas operativos, procesadores de texto, hojas de cálculo, navegadores, juegos, etc) como los datos (cartas, monografías, imágenes o cualquier otro tipo de documento que se cree).
Los discos duros tienen la capacidad de almacenar múltiples Gigabytes, generalmente utilizan un sistema magnético de lectura/escritura y se conectan a distintos tipos de interfaces. Las interfaces más comunes usadas en los computadores personales son de tecnología IDE (Integrated Drive Electronics) o EIDE (Enhanced IDE).
Estructura física de un disco duro Platos
●
Eje Central
●
Cabeceras
●
Caras
●
Pistas
●
Sectores
●
Estructura lógica de un disco duro
Sector de Arranque
Particiones División lógica del disco duro.
●
Pueden ser de tamaños diferentes y cada una funciona de manera
●
independiente. Todo disco duro tiene como mínimo una partición que puede
●
ocupar todo el espacio del disco o sólo una parte de él. En caso de que sobre espacio, será espacio no particionado.
●
Razones del particionamiento de discos Tener múltiples sistemas operativos en un disco duro:
●
Sistema Operativo Sistema de Archivos MSDOS FAT Windows 95, 98 o Me FAT32 Windows NT, 2000 o XP NTFS Linux Ext2 / Ext3
●
●
Por Seguridad
Razones de rendimiento
Tipos de particiones ●
Partición Primaria
Partición Extendida
●
La configuración permitida en un disco duro incluye hasta 4 particiones primarias ó 3 particiones primarias + 1 partición extendida.
Particiones en Linux La partición raíz (Linux Native) ● La partición swap (Linux Swap) ●
/bin: comandos binarios comunes /boot: archivos necesarios para arrancar el sistema Linux /dev: archivos de dispositivos /etc: archivos de configuración del sistema /home: directorios home de usuarios dentro del sistema /lib: archivos de librerías que utilizan los programas /mnt: punto estándar para montar sistemas de archivos temporales /var: archivos variables que crecen dinámicamente /usr: archivos y programas usados por todos los usuarios
Proceso de instalación de GNU/Linux Antes de iniciar el proceso de instalación debemos: 1. Realizar una copia de seguridad de los datos o documentación existentes en el disco duro donde planea realizar la instalación. 2. Reunir información sobre el sistema, así como toda la documentación que sea necesaria. 3. Verificar que el hardware cumple con los requisitos mínimos para llevar a cabo la instalación.
Proceso de instalación de GNU/Linux Hardware Requerido: Un equipo personal: Alpha, ARM, HP PARISC, Intel x86, Intel IA64, Motorola 680x0, MIPS, PowerPC, IBM S/390 o SPARC. Como mínimo un Pentium de 100 Mhz para un sistema de escritorio y un Pentium II de 300 Mhz para un servidor. ●
Memoria RAM: Sin escritorio 24 MB, con escritorio al menos 64 MB, servidor 128 MB. ●
Espacio libre en el disco duro: Sin escritorio 450 MB, con escritorio 1GB, servidor 4 GB. ●
Una unidad de CDROM, Tarjeta de Red.
●
Proceso de instalación de GNU/Linux Medios de instalación: Se puede realizar la instalación directamente desde: ●
Discos flexibles (floppies)
●
CD ROM
●
DVDROM
●
Memoria USB
●
Red
●
o incluso a través de otro sistema UNIX
Proceso de instalación de GNU/Linux Particiones de Debian GNU/Linux y sus tamaños / típicamente se necesitan 100 MB, pero esto puede variar.
●
/usr: esta es la parte del sistema de archivos que necesita mayor espacio, al menos 500 MB. ●
/home: su tamaño depende de cuántos usuarios van a utilizar el sistema, se deben reservar unos 100 MB por cada usuario. ●
/var: lo mínimo que requiere son 100 MB, pero si se va a realizar una instalación completa debe asignarsele un tamaño de 2 ó 3 gigabytes ●
/tmp: normalmente es suficiente con 2050 MB.
●
Proceso de instalación de GNU/Linux Esquemas recomendados para el particionamiento: Para usuarios nuevos, la manera más fácil y simple de hacerlo es tener una sola partición / , además de la de intercambio. Reglas Generales: ● Evite tener una partición de 6GB o más. Para sistemas multiusuario, es mejor tener /usr, /var, /tmp y /home en particiones separadas de la partición /. ●
Cree la partición /usr/local si planea instalar muchos programas que no son parte de la distribución. ●
Para un servidor de correo, cree /var/mail y /tmp. Si tiene muchas de cuentas de usuario, use una partición grande separada para /home. ●
Pasos de instalación de GNU/Linux 1) Arrancar el sistema de instalación. Escoger el método de arranque. 2) Elegir el lenguaje para el sistema, el país o región y la distribución del teclado. 3) Configurar la conexión de red 4) Asignar el nombre de la máquina 5) Crear y montar las particiones 6) Instalar el gestor de arranque en disco 7) Iniciar la máquina y realizar configuraciones adicionales: ● configuración del sistema base Debian ● configuración de zona horaria ● configuración de contraseñas (contraseña de root) ● creación de cuenta de usuario – contraseña de usuario ● configuración de apt (aptsetup) ● configuración de video y ratón
Pasos de instalación de en modo gráfico Tras bootear con el Cd la primera imágen que veremos será la bienvenida del instalador de Ubuntu, para continuar hacemos clic en la tecla enter.
Pasos de instalación de en modo gráfico En el segundo paso nos solicita que seleccionemos el idioma en el que deseamos que se instale ubuntu.
Pasos de instalación de en modo gráfico
En nuestro caso concreto selecciono español y continuo. Posteriormente toca determinar nuestra ubicación: Venezuela
Pasos de instalación de en modo gráfico Y tras esto, seleccionamos la distribución del teclado: español. Carga componentes, analiza y detecta el hardware
Pasos de instalación de en modo gráfico Fase de configuración de la conexión a Internet: aquí depende de sus características: cable, inalámbrica, normal... le proporcionamos los datos necesarios y continuamos
Pasos de instalación de en modo gráfico Nos pide el nombre de la máquina: que puedes escoger el que desees en principio, a no ser que pertenezcas a una red y necesite un nombre específico para ello.
Pasos de instalación de en modo gráfico Termina de detectar todo el hardware
Pasos de instalación de en modo gráfico Ahora se iniciaría la parte más complicada del proceso: El particionamiento. Previo al menú particionamiento
Pasos de instalación de en modo gráfico Menú particionamiento: tres opciones, como siempre depende de las características previas del usuario y del equipo donde se va a realizar la instalación, si vamos o no a usar todo el disco, si ya tenemos lista las particiones o debemos crearlas, o incluso si tenemos un espacio libre para que albergue el sistema, si tenemos que crearlas, recordar que ubuntu necesita como mínimo una partición swap y otra root "/" donde se colgará todo el sistema. Opciones: • Borrar disco completo: la más sencilla de realizar, el instalador se encarga de borrar y particionar automáticamente. • Utilizar espacio libre más grande: el instalador configura automáticamente las particiones, pero no usa todo el disco, sólo aquel espacio que no este particionado y además sea el de mayor tamaño, en el caso de que hay más de uno. • Editar todas las particiones: la fase más compleja y para expertos y quizás el punto que más debería mejorar el instalador para facilitar el acceso a ella a usuarios no avanzados. En el caso de que escojamos esta opción, todo se realiza a voluntad del usuario, pudiendo escoger o crear entre otras cosas diversas particiones para albergar los diferentes archivos y donde seleccionamos el tamaño de la partición y/o particiones así como el sistema de ficheros que deseemos para nuestro sistema.
Pasos de instalación de en modo gráfico
Pasos de instalación de en modo gráfico Menú de configuración de las particiones:
Pasos de instalación de en modo gráfico Por ejemplo el sistema ficheros.
Pasos de instalación de en modo gráfico Tras la elección del tipo de particionamiento me solicita confirmación antes de empezar a escribir los cambios en el disco duro y que el proceso sea irreversible
Pasos de instalación de en modo gráfico
Una vez confirmado el particionamiento: comienza la instalación propiamente dicha con el copiado de archivos. Imagen del proceso de instalación del sistema base. Nos pregunta si deseamos el soporte del idioma, en nuestro caso si.
Pasos de instalación de en modo gráfico Configuro la zona horaria; en nuestro caso escogemos Caracas La Paz. Se inicia el importante apartado de configuración de usuarios y contraseñas, recordamos que ubuntu sólo instala un usuario con privilegios máximos, usando sudo y que conviene que al menos la contraseña sea elegida con sumo cuidado:
Pasos de instalación de en modo gráfico Lo ideal es que la clave esté compuesta por caracteres y números y que sea del todo, menos obvia. Se configura el apt para su óptimo funcionamiento.
Pasos de instalación de en modo gráfico Instala el grub.
Pasos de instalación de en modo gráfico Fin primera parte, extraemos el cd y reiniciamos el equipo
Pasos de instalación de en modo gráfico Fin primera parte, extraemos el cd y reiniciamos el equipo
Tras el reinicio termina de descargar los paquetes necesarios (para lo que se requiere conexión a internet), los desempaqueta y configuramos la resolución del entorno y ya tenemos listo el sistema para iniciar nuestra primera sesión en nuestro flamante ubuntu recién instalado. Veremos la ventana de login, nos logeamos y empieza la segunda fase, la configuración del equipo para adaptarlo al gusto personal o características individuales de cada uno.
GESTOR DE ARRANQUE Un gestor de arranque es un programa que nos va a permitir elegir el sistema operativo a usar. Normalmente se instalará en el primer sector de arranque del disco duro, pero podemos también instalarlo en una determinada partición. Durante el arranque del pc y antes de que ningun sistema operativo tome el control, nos aparecerá un menú con todos aquellos S.O que esten instalados en el ordenador, elegiremos el que queramos y pulsaremos intro. En linux se usan Lilo y Grub. ¿TIPOS? Los dos grandes "arrancadores" en Linux son Lilo y Grub. Ambos se basan en un archivo de texto para su configuración, lilo.conf para Lilo y menu.lst para Grub. ¿ES POSIBLE MODIFICARLO? ¿CÓMO?
Tanto Grub como Lilo tienen su archivo de configuración. El de Grub está en /boot/grub y se llama menu.lst, aquí puedes ver un ejemplo de él: timeout 10 color black/cyan yellow/cyan default 1 title linux kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 devfs=mount acpi=ht splash=silent vga=788 initrd (hd0,1)/boot/initrd.img title=linux-2.6.7 kernel (hd0,1)/boot/kernel-2.6.7 root=/dev/hda2 devfs=mount acpi=ht splash=silent vga=788 initrd (hd0,1)/boot/initrd.img title=linuxAthlon kernel (hd0,1)/boot/linuxAthlon root=/dev/hda2 devfs=mount acpi=ht splash=silent vga=788 initrd (hd0,1)/boot/initrd.img title linux-nonfb kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 devfs=mount acpi=ht initrd (hd0,1)/boot/initrd.img title 263-7 kernel (hd0,1)/boot/vmlinuz-2.6.3-7mdk root=/dev/hda2 devfs=mount acpi=ht splash=silent initrd (hd0,1)/boot/initrd-2.6.3-7mdk.img title failsafe kernel (hd0,1)/boot/vmlinuz root=/dev/hda2 failsafe acpi=ht devfs=nomount initrd (hd0,1)/boot/initrd.img title windows root (hd0,0) chainloader +1 title floppy root (fd0) chainloader +1
Con Grub no es necesario reinstalar.
Como entrar y salir del sistema Una de las características del sistema operativo Linux es el hecho que es capaz de soportar múltiples conectados a una misma computadora que ejecuta el sistema.
A continuación, se describen los diferentes usuarios que existen en Linux y la manera en que se puede acceder o salir del sistema.
Cuentas de Usuarios ¿QUÉ ES ROOT ? En un sistema linux, root o administrador es el usuario con plenos poderes. Todo está permitido para root, puede ver , modificar y ejecutar todos los archivos, realiza las tareas de mantenimiento del sistema e instala las nuevas aplicaciones. Su directorio predeterminado es /root. Es recomendable iniciar sesión como usuario normal y solo cuando sea necesario identificarnos como root para tareas que asi lo requieran, el hecho de iniciar sesión como root desde el principio puede llevar a que por descuido inutilicemos parte del sistema debido a los plenos poderes de root. En una consola de comandos podemos indicar al sistema que queremos pasar a ser root mediante el comando "su" ( sustituir usuario ), se nos pedira la contaseña y si esta es correcta pasaremos a ser el administrador. ¿QUÉ ES UN USUARIO NORMAL? Aquel que no posee poderes administrativos o de root, y que es aconsejable usar diariamente y sólo usar el usuario root para menesteres administrativos, dejando el resto de tareas: navegación, juegos, y demás para los usuarios sin poderes administrativos. Podemos tener todos los usuarios que deseemos y su directorio predeterminado estará dentro de /home.
¿CÓMO LOS CREO? Aunque cada distribución tienes sus peculiaridades, e incluso existen herramientas gráficas para crearlos y en muchas ocasiones pueden ser creados durante la instalación de la distribución. ¿Cómo establecer/cambiar/activar la password de usuario root? $ sudo passwd root ¿Cómo desactivar la cuenta del usuario root? $ sudo passwd l root
¿Cómo permitir al usuario root hacer login en GNOME? Sistema Administración Configuración de la Pantalla de inicio de sesión Configuración de la Pantalla de inicio de sesión
Pestaña Seguridad Opciones Permitir a root acceder con GDM (Activado)
Salir del sistema o Apagar la computadora
INTERFAZ GRAFICA DE USUARIO (GUI) El entorno XWindows, cuyo fin primordial en este caso es proveer a Linux de una GUI (interfaz gráfica de Usuario) tiene varias piezas: primero están los administradores de ventanas (como AfterStep, BlackBox, Englightenment, Fvwm y WindowsMaker) que son entornos gráficos básicos que soportan algunas funciones como el uso del ratón pero no otras como "arrastrar y soltar". Estos administradores (que se denominan XWindows Managers) no son muy exigentes en términos de requerimientos de los equipos y se constituyen una buena opción para tener las primeras experiencias con la parte gráfica de linux. Luego vienen los escritorios, que han convertido a Linux en un sistema operativo como Windows o Mac. Aunque hay varios como KDE, Gnome, KFCE y CDE, los primeros marchan a la vanguardia.
INTERFAZ GRAFICA DE USUARIO (GUI) • KDE ( www.kde.org ) es un robusto escritorio que le permite al usuario trabajar en linux como si estuviera en windows, aunque con mayor funcionalidad, por ejemplo, permite disponer de cuatro escritorios virtuales (se pueden cambiar de uno a otro con un solo Clic) cada uno de los cuales puede estar configurado y tener abiertas aplicaciones diferentes a los otros. • Gnome (www.gnome.org)resulta bastante parecido a Windows, de manera que un usuario habituado a este sistema podrá moverse por él con gran facilidad. Algunos expertos afirman que Gnome es más eficiente que KDE, pero es algo que los partidarios de KDE niegan. Algunos escritorios requieren de un administrador de ventanas para poder ejecutarse, pero otros como Gnome no lo necesitan.
INTERFAZ GRAFICA DE USUARIO (GUI) Una distribución puede utilizar más de un administrador de ventanas y más de un escritorio, ofreciendo la posibilidad de cambiar entre uno y otro. Esto para un usuario de windows puede resultar muy confuso y en efecto lo es. En realidad, los intentos por hacer de Linux un sistema tan fácil de usar como windows aún no han alcanzado un éxito pleno. INTERFAZ LINEA DE COMANDO (SHELL) COMANDOS BÁSICOS DE LINUX Cualquier usuario de Linux acabará antes o después relacionándose con el sistema empleando el modo texto, y no los entornos gráficos. Este modo se basa en la ejecución de una serie de comandos, que son interpretados por un programa o shell. Linux dispone de varios de estos programas pero el más habitual es conocido como bash o Bourne Shell. Si Linux se ha arrancado en modo texto el sistema arranca de forma directa el shell y queda a la espera de introducción de nuevos comandos. Si se ha arrancado en modo gráfico se puede acceder al shell de dos formas:
INTERFAZ GRAFICA DE USUARIO (GUI) Se puede acceder al shell del sistema presionando alguna de las siguientes combinaciones de teclas:
++ ++ ++ ++ ++ ++ Esto hace que el sistema salga del modo gráfico y acceda a alguna de las seis consolas virtuales de Linux, a las cuales también se puede acceder cuando se arranca en modo de texto. Para volver al modo gráfico hay que presionar ++ o ++. La segunda forma es más cómoda y menos radical permitiendo acceder al shell desde el mismo entorno gráfico. Para esto hay que abrir un programa llamado terminal o consola, por ejemplo: kconsole (en el entorno KDE), xterm, gnometerminal (en GNOME), etc.
Introducción a los comandos Existen una serie de nociones básicas que hay que tener en cuenta a la hora de introducir los comandos. En primer lugar citaremos las siguientes: • Los comandos hay que teclearlos exactamente. • Las letras mayúsculas y minúsculas se consideran como diferentes. • En su forma más habitual (los shells de Bourne o de Korn), el sistema operativo utiliza un signo de $ como prompt para indicar que está preparado para aceptar comandos, aunque este carácter puede ser fácilmente sustituido por otro u otros elegidos por el usuario. En el caso de que el usuario acceda como administrador este signo se sustituye por #. Cuando sea necesario introducir el nombre de un fichero o directorio como argumento a un comando, Linux, permite escribir las primeras letras del mismo y realiza un autorrellenado al presionar la tecla del tabulador. Si no puede distinguir entre diversos casos rellenará hasta el punto en el que se diferencien
Introducción a los comandos Por ejemplo, supongamos una carpeta con los siguientes directorios: Programas Documentos_proyecto Documentos_privados Al escribir cd Pr Linux rellenará el resto del contenido hasta escribir cd Programas. Por el contrario al escribir cd D escribirá cd Documentos
Algunos Comandos Sencillos de LINUX Para efectuar el cambio o la introducción de un password o contraseña se utiliza el comando passwd. El proceso a seguir es el siguiente: $ passwd (current) UNIX password: (se teclea la contraseña actual; no aparece en pantalla) New UNIX password: (se teclea la nueva contraseña; no aparece en pantalla) Retype new UNIX password: (se teclea de nuevo la nueva contraseña comprobando que se ha tecleado bien. Si no coincide no se cambia produce el cambio). A continuación se describen algunos comandos sencillos de que pueden ser útiles para familiarizarse con los comandos del sistema.
Algunos Comandos Sencillos de LINUX date Muestra por pantalla el día y la hora. cal 1949 Muestra el calendario del año 1949. cal 05 1949 Muestra el calendario de mayo de 1949. who Indica qué usuarios tiene el ordenador en ese momento, en qué terminal están y desde qué hora. whoami Indica cuál es la terminal y la sesión en la que se está trabajando. man comando Todos los manuales de Linux están dentro del propio sistema operativo, y este comando permite acceder a la información correspondiente al comando comando. Por ejemplo con man who aparecerá por pantalla y de forma formateada por páginas, la explicación del comando who. Se puede navegar a través de estas páginas con los cursores del teclado, y presionando q para salir. clear Este comando limpia la consola
Directorio Personal
Como se ha visto anteriormente el directorio personal es un directorio con un determinado nombre asignado a un usuario. Los directorios personales habitualmente son subdirectorios de /home (en algunos casos se utiliza mnt, u otro subdirectorio de orden inferior). Generalmente el nombre coincide con el del nombre de usuario, aunque puede no ser así, y varios usuarios pueden estar trabajando en el mismo directorio. Cada usuario de Linux puede crear una estructura en árbol de subdirectorios y archivos tan compleja como desee bajo su directorio personal pero normalmente nunca fuera de él.
Acceso a unidades de disco Linux a diferencia de Windows no utiliza letras ("a:", "c:", "d:", ...) para a las distintas unidades. En Linux para acceder al contenido de una unidad de disco o de un CDROM este tiene que haber sido previamente "montado". El montado se realiza mediante el comando mount, con lo que el contenido de la unidad se pone a disposición del usuario en el directorio de Linux que se elija. Por ejemplo para acceder al CDROM se teclearía el siguiente comando: mount -t iso9660 /dev/cdrom /mnt/cdrom.
donde t iso9660 indica el tipo de sistema que usa la unidad de disco para guardar los ficheros (las más usuales son: iso9660 en el caso de un CDROM, vfat en el caso de Windows, y ext2 en el caso de Linux), /dev/cdrom indica el dispositivo que se va a montar. Todos los dispositivos están representados por un fichero del directorio /dev, por ejemplo en el caso de un disquete será seguramente /dev/fd0, por último /mnt/cdrom es el directorio en el que se pondrá a disposición del usuario el contenido del CDROM. Para montar disquetes se suele utilizar el directorio /mnt/floppy.
Cuando el usuario haya dejado de usar ese disco deberá "desmontarlo" mediante el comando umount antes de sacar el disquete o el CDROM. En este último caso debería escribir: umount /mnt/cdrom Para utilizar el comando mount de la forma anterior hace falta ser administrador o root. Para que un usuario común pueda utilizar disquetes, CDROM, etc. hay que editar el fichero /etc/fstab Por ejemplo para que cualquier usuario pueda acceder a un disquete habrá que indicar la siguiente línea: /dev/fd0 /mnt/floppy vfat user,noauto 0 0 También habrá que asegurarse de que el directorio /mnt/floppy sea accesible por todos los usuarios.Una vez seguidos los pasos anteriores cualquier usuario podrá "montar" un disquete escribiendo el siguiente comando: mount /mnt/floppy Al igual que antes el usuario deberá ejecutar el comando umount /mnt/floppy antes de sacar el disquete.
Enlaces a ficheros. Comando ln En Linux un mismo fichero puede estar repetido con más de un nombre, ya que con el comando cp se pueden realizar cuantas copias se desee del fichero. Pero, a veces, es más práctico tener un mismo fichero con varios nombres distintos, y lo que es más importante, poder acceder a &eoacute;l desde más de un directorio. En Linux esto recibe el nombre de enlaces múltiples a un fichero. El ahorro de espacio de disco es importante al poder compartir un fichero más de un usuario. Estos enlaces son muy prácticos a la hora de utilizar ficheros que pertenecen a directorios distintos. Gracias a los enlaces se puede acceder a muchos ficheros desde un mismo directorio, sin necesidad de copiar en ese directorio todos esos ficheros. La forma de este comando es, ln file1 file2 A partir de este momento el fichero file1 tiene dos nombres: file1 y file2. A diferencia de los comandos cp y mv, este comando toma más precauciones, ya que advierte previamente si el nombre file2 está ocupado, y en este caso no se ejecuta. ln panacea subdir/panacea Después de este comando el fichero panacea tendrá el mismo nombre, pero a efectos del usuario estará colocado en dos sitios distintos: en el directorio actual y en el subdirectorio subdir. Los ficheros enlazados a otro se borran como los ficheros normales. Si se borra el fichero original permanece su contenido en los ficheros enganchados.
A rch ivo s y D ire cto rio s Un archivo es un conjunto de información al que se le ha asignado un nombre. Por ejemplo, un documento, una imagen o un programa. Esencialmente, cualquier cosa salvada en disco es guardada como un archivo individual. Un directorio es una colección de archivos que sirve para ordenarlos o agruparlos.
Los directorios además de archivos pueden contener otros directorios, estos se conectan unos a otros y crean una estructura de árbol. En el directorio raíz es donde comienza toda la estructura jerárquica del sistema operativo Linux, este directorio se denota por la barra (/).
No debemos confundir el concepto de directorio con el de partición. Ambos permiten organizar la información dentro de un disco duro, pero con ciertas diferencias entre ellos: Las particiones
Los directorios
Son divisiones de tamaño fijo dentro del disco duro.
Son divisiones de tamaño variable dentro de una partición .
Su información la almacenan de forma contigua dentro del disco duro.
Generalmente, almacenan los datos esparcidos por toda una partición.
En cada partición del disco se puede tener un Todos los directorios dentro de la partición usan sistema de archivos distinto. el mismo sistema de archivos. Los archivos y directorios tienen algunas propiedades que los caracterizan, tales como: .......................................El nombre, .......................................El propietario, .......................................La fecha y hora en que se modificaron por última vez, .......................................El tamaño (generalmente expresado en bytes) y .......................................Los permisos.
Los permisos permiten o restringen el acceso tanto a un archivo como a un directorio. Estos indican quienes pueden acceder a un archivo y que pueden hacer con él. Los nombres de los archivos y directorios son un aspecto importante dentro del sistema operativo Linux. A través de los nombres se puede acceder a un directorio y al contenido de los archivos dentro de él. Los nombres de los directorios nos permiten movernos dentro del árbol de directorios del sistema de archivos, usando los caminos. Estos conceptos se describen a continuación.
Árbol de Directorios La mayoría de los archivos en Linux sigue una distribución estándar, que permite localizarlos fácilmente. Esta distribución es conocida como árbol de directorios. El árbol de directorios comienza por el directorio raíz (/) y por debajo de él se ubican otros directorios importantes que pueden contener otros archivos o directorios. Estos son los que permiten mantener y ejecutar el sistema. Entre los directorios más comunes del árbol de directorios de Linux, tenemos: Directorio
/bin Contiene importantes programas ejecutables del sistema (archivos binarios). /dev Guarda los archivos de los dispositivos del sistema, tales como: unidad de disco duro, unidad de diquetes, tarjetas de sonido o impresoras. /etc Contiene los archivos de configuración del sistema. /home Almacena los directorios y archivos de los usuarios regulares del sistema. /lib Dentro de él estan las librerias necesarias para ejecutar los programas. /root Almacena los archivos del superusuario del sistema.
/tmp Contiene información temporal. Información que no necesita mantenerse en el sistema por mucho tiempo. /usr El directorio con más contenido. Usualmente incluye programas, documentación y código fuente. /var En él se guardan archivos cuyo contenido cambia con frecuencia, es decir, archivos variables.
Caminos (Path) Los archivos se pueden referenciar de acuerdo a su ubicación en el árbol de directorios. Indicando la secuencia de directorios que se deben pasar para llegar hasta donde está el archivo. Esta secuencia es conocida como ruta de acceso o camino (en inglés, path). El nombre de la ruta de acceso es considerado el “nombre completo” que se le da a un archivo o directorio. En algunas ocasiones, sólo con el nombre no será suficiente para localizar un archivo o directorio, necesitamos el nombre de la ruta.
Nombres de rutas o caminos En cualquier momento un usuario siempre se ubica en un determinado directorio y, a menos que se indique lo contrario, todos los archivos se buscan o se crean dentro de él. Este directorio es conocido como directorio de trabajo actual y se representa por el carácter punto “.”. Cuando un usuario inicia su sesión en Linux, el directorio de trabajo actual siempre es su directorio personal (/home/usuario). El directorio de trabajo actual es considerado un punto de referencia, en la construcción de los nombres de rutas o caminos. Con respecto a este directorio, los nombres de ruta pueden ser:
Operaciones sobre archivos y directorios Los archivos y directorios dentro del sistema operativo Linux, son susceptibles a operaciones de: Creación, Consulta, Copiado, Borrado, Renombrado y Movimiento
Las siguientes lecciones describen cómo manipular los archivos a través de la interfaz de línea de comando. Pero todas estas operaciones también las podemos ejecutar
Para ello Linux incluye varios administradores de archivos, tales como Konkeror y Nautilus. Crear (touch, mkdir) touch: Los archivos se pueden crear a través de aplicaciones (como editores de texto) o usando comandos como éste. El comando touch crea un archivo vacío al que se le puede agregar texto o datos. Si el archivo ya existe no lo sobrescribe. La sintaxis del comando touch es: touch [opcion(es)] nombre_archivo(s) Para crear un nuevo directorio a través del shell, se utiliza el comando mkdir.
mkdir: toma uno o más nombres como argumento y crea directorios con esos nombres. Permite utilizar nombres de rutas para los directorios. Es particularmente útil a la hora de organizar los archivos del sistema. La sintaxis del comando mkdir es: mkdir [opcion(es)] nombre_directorio(s) Los directorios creados con el comando mkdir son directorios vacíos. Copiar (cp) El comando se usa para realizar una copia de un archivo. Generalmente, se utiliza cuando vamos a modificar un archivo y queremos respaldarlo o cuando deseamos tener una copia exacta de un archivo en otro directorio. La sintaxis del comando cp es la siguiente: cp [opcion(es)] archivo_origen destino Este comando necesita de dos argumentos. Primer argumento : el nombre del archivo que se desea copiar, el que ya existe, Segundo argumento : corresponde al . En caso de ser un nombre de archivo, este nombre indicará como se llamará el “archivo copia” y éste se creará dentro del mismo directorio. Si el destino especifica una ruta, se creará un archivo con el mismo nombre del archivo origen, en el directorio indicado.
Mover y renombrar (mv) El comando mv se puede utilizar con dos propósitos: ............................. Cambiar el nombre de un archivo o directorio o ............................. Mover archivos de un directorio a otro. Dependiendo de su uso, la sintaxis del comando varía: Para renombrar la sintaxis es: mv [opcion(es)] nombre1 nombre2 ....... Para mover el formato usado es: mv [opcion(es)] nombre(s) directorio Sólo se puede mover y renombrar a la vez, cuando el comando mv se usa con un solo archivo. Para hacerlo el primer argumento debe ser el nombre actual del archivo y el segundo debe ser el directorio destino seguido del nuevo nombre del archivo. Por ejemplo, si queremos mover el archivo propuesta al directorio cursoLinux , pero deseamos llamarlo propuestaCursoLinux , el comando que debemos usar es el siguiente: [carmen@localhost cursos]$ mv propuesta cursoLinux/propuestaCursoLinux
Las opciones principales del comando mv son: i pide confirmación antes de sobreescribir un archivo cuando mueve los archivos de un directorio a otro. Ayuda a prevenir errores. f sobreescribe los archivos en el destino sin pedir confirmación al usuario. v Muestra en pantalla información sobre los archivos que están siendo movidos.
Eliminar (rm, rmdir) A medida que se utiliza el sistema, el número de archivos que se crea aumenta muy fácilmente y terminamos llenando nuestro disco duro con mucha información, que en algunos casos no necesitamos. Para liberar espacio en el disco debemos eliminar archivos y directorios. Con los comandos rm y rmdir podemos hacerlo. El comando rm permite borrar tanto archivos como directorios. Pero debe usarse con precaución porque es irrevocable. Una vez que eliminemos un archivo o directorio con rm no podremos restaurarlo. Su sintaxis es: rm [opcion(es)] nombre(s) rmdir El comando rmdir solamente sirve para eliminar directorios vacíos. Es equivalente a utilizar el comando rm con la opción r. Su sintaxis es: rmdir [opcion(es)] directorio(s)
Comandos útiles para el manejo de archivos Después de crear los archivos o directorios, a menudo cualquier usuario necesita manipular la información del sistema. Para hacerlo Linux dispone de muchos comandos flexibles que facilitan la gestión típica de archivos y directorios. En este apartado trataremos los siguientes comandos: Comando pwd El comando pwd muestra el nombre del directorio de trabajo actual. Es útil cuando navegamos a través del árbol de directorios y queremos saber exactamente dónde estamos. Este comando no incluye opciones, ni argumentos. La sintaxis del comando es la siguiente: pwd
Comando ls El comando ls se usa para listar los nombres de archivos y directorios. Es un comando esencial para la administración de archivos que comprende muchas opciones. La sintaxis del comando es: ls [opcion(es)] [directorio] Entre las opciones más comunes tenemos: l muestra una lista detallada, con las propiedades y atributos de los archivos y directorios. a despliega por pantalla los archivos ocultos dentro de un directorio. Los nombres de los archivos ocultos siempre comienzan con un punto, por ejemplo: .bashprofile, .nautilus, etc. s incluye en la lista el tamaño de los archivos expresados en unidades de 512 bytes. t muestra una lista de los archivos en orden cronológico. help : muestra todas las opciones y argumentos disponibles para el comando. Si no se le especifica ningún directorio, el comando ls mostrará el contenido del directorio de trabajo actual.
Comando ls El comando ls se usa para listar los nombres de archivos y directorios. Es un comando esencial para la administración de archivos que comprende muchas opciones. La sintaxis del comando es: ls [opcion(es)] [directorio] Entre las opciones más comunes tenemos: l muestra una lista detallada, con las propiedades y atributos de los archivos y directorios. a despliega por pantalla los archivos ocultos dentro de un directorio. Los nombres de los archivos ocultos siempre comienzan con un punto, por ejemplo: .bashprofile, .nautilus, etc. s incluye en la lista el tamaño de los archivos expresados en unidades de 512 bytes. t muestra una lista de los archivos en orden cronológico. help : muestra todas las opciones y argumentos disponibles para el comando. Si no se le especifica ningún directorio, el comando ls mostrará el contenido del directorio de trabajo actual.
Comando cd cd sirve para cambiarnos de directorio. Este comando nos permite navegar todo el árbol de directorios del sistema. La sintaxis del comando es la siguiente: cd [nombre_directorio] El nombre del directorio puede especificarse con nombres de rutas absolutos o relativos, o a través de símbolos especiales, como: El punto punto (..), sirve para subir un nivel en la jerarquía de directorios, nos cambia al padre del directorio actual El tilde (~) : nos mueve al directorio personal del usuario (/home/usuario) La barra inclinada (/) nos mueve hasta el directorio raíz del sistema.
Comando cat Es un comando muy versátil que sirve para visualizar y concatenar archivos. Como visualizador despliega todo el contenido de un archivo en la pantalla. Como concatenador permite agrupar varios archivos. Es útil cuando necesitamos ver rápidamente que contiene un archivo de texto o para combinar archivos en uno solo. La sintaxis del comando es: cat [opcion(es)] archivo [archivo2]...[archivon] Comando more También se usa para visualizar el contenido de un archivo de texto en la pantalla. Si el archivo es grande es mejor emitir el comando more y utilizar la barra espaciadora para avanzar por el archivo. La sintaxis del comando es la siguiente: more [opciones] archivo [archivo2]... [archivon]}
Comando head y tail También son comandos para visualizar archivos, pero muestran sólo un conjunto de líneas. Con el comando head se muestran las primeras líneas del archivo. Con el comando tail se despliegan las últimas. Por defecto, muestran las 10 primeras o las 10 últimas líneas respectivamente. Pero a través de las opciones podemos indicarle que muestre un número diferente de líneas. La sintaxis para head es: head [opcion(es)] archivo La sintaxis para tail es: tail [opcion(es)] archivo
grep [opcion] expresión_regular [referencia...] Las opciones principales son: c lo único que se hace es escribir el número de las líneas que satisfacen la condición. i no se distinguen mayúsculas y minúsculas. l se escriben los nombres de los ficheros que contienen líneas buscadas. n cada línea es precedida por su número en el fichero. s no se vuelcan los mensajes que indican que un fichero no se puede abrir. v se muestran sólo las líneas que no satisfacen el criterio de selección. A continuación se muestra una serie de ejemplos. grep '^d' text líneas que comienzan por d. grep '^[^d]' text líneas que no comienzan por d. grep v '^C' file1 > file2 quita las líneas de file1 que comienzan por C y lo copia en file2.
Comandos tar y gzip Tanto el comando tar como gzip son ampliamente empleados para la difusión de programas y ficheros en Linux. El primero de ellos agrupa varios ficheros en uno solo o "archivo", mientras que el segundo los comprime. En conjunto estos dos programas actúan de forma muy similar a programas como Winzip. Para crear un nuevo archivo se emplea: tar cvf nombre_archivo.tar fichero1 fichero2... donde fichero1, fichero2 etc. son los ficheros que se van a añadir al archivo tar. Si se desea extraer los ficheros se emplea tar xpvf nombre_archivo.tar fichero1... Al contrario que tar que agrupa varios ficheros en uno, gzip comprime un único fichero con lo que la información se mantiene pero se reduce el tamaño del mismo. El uso de gzip es muy sencillo gzip fichero con lo que se comprime fichero (que es borrado) y se crea un fichero con nombre fichero.gz. Si lo que se desea es descomprimir un fichero se emplea entonces: gzip d fichero.gz recuperando el fichero inicial. Como se ha comentado al principio es típico emplear tar y gzip de forma consecutiva, para obtener ficheros con extensión tar.gz o tgz que contienen varios ficheros de forma comprimida (similar a un fichero zip). El comando tar incluye la opción z para estos ficheros de forma que para extraer los ficheros que contiene:
Características de un fichero. Comando file Este comando realiza una serie de comprobaciones en un fichero para tratar de clasificarlo. Su formato es: file fich Tras su ejecución este comando muestra el tipo del fichero e información al respecto del mismo.
Cambio de modo de los ficheros comandos chmod, chown y chgrp Los permisos de cada fichero se pueden ver con el comando ls l. Para cambiar los permisos de un fichero se emplea el comando chmod, que tiene el formato siguiente: chmod [quien] oper permiso files quien Indica a quien afecta el permiso que se desea cambiar. Es una combinación cualquiera de las letras u para el usuario, g para el grupo del usuario, o para los otros usuarios, y a para todos los anteriores. Si no se da el quien, el sistema supone a. oper Indica la operación que se desea hacer con el permiso. Para dar un permiso se pondrá un +, y para quitarlo se pondrá un . permiso Indica el permiso que se quiere dar o quitar. Será una combinación cualquiera de las letras anteriores : r,w,x,s. files Nombres de los ficheros cuyos modos de acceso se quieren cambiar. Por ejemplo, para quitar el permiso de lectura a los usuarios de un fichero el comando es:
chmod a r fichero.txt Los permisos de lectura, escritura y ejecución tienen un significado diferente cuando se aplican a directorios y no a ficheros normales. En el caso de los directorios el permiso r significa la posibilidad de ver el contenido del directorio con el comando ls; el permiso w da la posibilidad de crear y borrar ficheros en ese directorio, y el permiso x autoriza a buscar y utilizar un fichero concreto. Por otra parte, el comando chown se emplea para cambiar de propietario ("change owner") a un determinado conjunto de ficheros. Este comando sólo lo puede emplear el actual propietario de los mismos. Los nombres de propietario que admite Linux son los nombres de usuario, que están almacenados en el fichero /etc/passwd. La forma general del comando chown es la siguiente: chown newowner file1 file2 ... Análogamente, el grupo al que pertenece un fichero puede ser cambiado con el comando chgrp, que tiene una forma general similar a la de chown, chgrp newgroup file1 file2... Los grupos de usuarios están almacenados en el fichero /etc/group.
Espacio ocupado en el disco Comandos du y df El comando du permite conocer el espacio ocupado en el disco por un determinado directorio y todos los subdirectorios que cuelgan de él. Para usarlo basta simplemente colocarse en el directorio adecuado y teclear, du, éste comando da el espacio de disco utilizado en bloques. Para obtener la información en bytes se debe emplear el comando con la opción h: du h El comando df por el contrario informa del espacio usado por las particiones del sistema que se encuentren montadas. Visualización sin formato de un fichero. Comando cat Este comando permite visualizar el contenido de uno o más ficheros de forma no formateada. También permite copiar uno o más ficheros como apéndice de otro ya existente. Algunas formas de utilizar este comando son las siguientes, cat filename Saca por pantalla el contenido del fichero filename. cat file1 file2... Saca por pantalla, secuencialmente y según el orden especificado, el contenido de los ficheros indicados. cat file1 file2 >file3 El contenido de los ficheros file1 y file2 es almacenado en file3. cat file1 file2 >>file3 El contenido de file1 y file2 es añadido al final de file3. cat >file1 Acepta lo que se introduce por el teclado y lo almacena en file1 (se crea file1).
Comando head head 7 filename escribe las 7 primeras líneas del fichero filename Visualización de ficheros con formato. Comando pr Este comando, a diferencia de cat, imprime por consola el contenido de los ficheros de una manera formateada, por columnas, controlando el tamaño de página y poniendo cabeceras al comienzo de las mismas. Está muy en relación con el comando lp de salida por impresora. Las formas más importantes que admite son las siguientes: pr file Produce una salida estándar de 66 líneas por página, con un encabezamiento de 5 líneas (2 en blanco, una de identificación y otras 2 líneas en blanco). pr ln file Produce una salida de n líneas por página (cuando el tamaño de papel de impresora, por ejemplo, tiene un número de líneas distinto de 66) pr p file Hace una pausa para presentar la página, hasta que se pulsa para continuar pr t file Suprime las 5 líneas del encabezamiento y las del final de página. pr wn file Ajusta la anchura de la línea a n posiciones. pr d file Lista el fichero con espaciado doble. pr h `caracteres` file el argumento o cadena de caracteres `caracteres` se convertirán en la cabecera del listado. pr +n file Imprime el fichero a partir de la página n.
Visualización de ficheros pantalla a pantalla. Comandos more y less Estos comandos permiten visualizar un fichero pantalla a pantalla. El número de líneas por pantalla es de 23 líneas de texto y una última línea de mensajes, donde aparecerá la palabra more. Cuando se pulsa la barra espaciadora (el espacio en blanco), se visualizará la siguiente pantalla. Para salir de este comando (terminar la visualización) se pulsa d o q. Por ejemplo: more file El comando less es muy similar al anterior pero permite el desplazamiento a lo largo del texto empleando las teclas de cursores pudiendo desplazarse hacia arriba o abajo de un fichero. Búsqueda en ficheros. Comandos grep, fgrep y egrep El comando grep localiza una palabra, clave o frase en un conjunto de directorios, indicando en cuáles de ellos la ha encontrado. Este comando rastrea fichero por fichero, por turno, imprimiendo aquellas líneas que contienen el conjunto de caracteres buscado. Si el conjunto de caracteres a buscar está compuesto por dos o más palabras separadas por un espacio, se colocará el conjunto de caracteres entre apóstrofes ('). Su formato es el siguiente: grep 'conjuntocaracteres' file1 file2 file3 siendo 'conjuntocaracteres' la secuencia de caracteres a buscar, y file1, file2, y file31 los ficheros donde se debe buscar. Veamos un nuevo ejemplo: grep 'TRIANGULARIZACION MATRIZ' matrix.f scaling.f Este comando buscará TRIANGULARIZACION MATRIZ entre las líneas de los ficheros matrx.f y scaling.f. Este comando permite seleccionar, entre todas las líneas de uno o más
Gracias