Unidad_3hot! - Academia de Software Libre Mérida

Anuncio
 Academia de Software Libre
Curso:GNU/Linux Unidad III: Sistema de Archivos
Archivos y Directorios
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.
Academia de Software Libre
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
Son divisiones de tamaño fijo dentro del disco duro.
Los Directorios
Son divisiones de tamaño variable dentro de una partición .
Su información la almacenan de forma contigua dentro del Generalmente, almacenan los datos esparcidos por toda una
disco duro.
partición.
En cada partición del disco se puede tener un sistema de
archivos distinto.
Todos los directorios dentro de la partición usan el mismo
sistema de archivos.
Academia de Software Libre
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.
Academia de Software Libre
Á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
Función
/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.
Academia de Software Libre
/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.
Academia de Software Libre
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.
Academia de Software Libre
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:
Academia de Software Libre
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
Academia de Software Libre
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 intuitivamente con la interfaz gráfica.
Para ello Linux incluye varios administradores de archivos, tales como Konkeror y Nautilus. Estos
administradores se describen en la Unidad 4 de este curso.
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.
Academia de Software Libre
Copiar (cp)
El comando cp 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 destino. 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.
Academia de Software Libre
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
Academia de Software Libre
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.
rm 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)
Academia de Software Libre
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
Academia de Software Libre
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:
Academia de Software Libre
-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:
Academia de Software Libre
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]
Academia de Software Libre
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
Academia de Software Libre
Actividades
Dada la siguiente estructura de archivos, responda los siguientes ítems:
Academia de Software Libre
1. Escriba el nombre de ruta absoluto para el directorio src dentro de usr.
usr/src
src
/usr/src
2. Escriba el nombre de ruta absoluto para el archivo martes.txt
/homero/informes/martes.txt
/home/homero/informes/martes.txt
home/homero/informes/martes.txt
3. Escriba el nombre de ruta relativo al directorio informes dado que está trabajando en el
directorio home
/home/homero/informes
homero/informes
/homero/informes
Academia de Software Libre
4. Escriba el nombre de ruta relativo al directorio docs dado que está trabajando en el directorio /
(raíz)
home/homero/docs
/home/homero/docs
homero/docs
5.- Te invito a realizar la siguiente actividad. Seleccione la respuesta correcta.
●
●
Crea un archivo vacío al que se le puede agregar texto o datos. Si el archivo ya existe no lo
sobrescribe
Se usa para realizar una copia de un archivo
●
Toma uno o más nombres como argumento y crea directorios con esos nombres. Permite utilizar
nombres de rutas para los directorios.
●
Permite borrar tanto archivos como directorios. Este comando acepta cualquier número de
nombres de archivos o de directorios, por lo tanto podemos especificar varios y eliminarlos
simultáneamente
Academia de Software Libre
6.- Seleccione la respuesta correcta.
●
Muestra el nombre del directorio de trabajo actual. Es útil cuando navegamos
Es un comando esencial para la administración de archivos que comprende muchas opciones.
●
Sirve para cambiarnos de directorio.
●
Este comando nos permite navegar todo el árbol de directorios del sistema
●
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.
●
Se usa cuando el archivo es grande, es recomendableemitir el comando more y utilizar la barra
espaciadora para avanzar por el archivo. Se usa para visualizar el contenido de un archivo de texto en la
pantalla.
Academia de Software Libre
Nombre de ruta que comienza desde el directorio raíz (/) y describe completamente TODOS los
directorios a lo largo del camino, hasta llegar al destino.
Relativo
General
Absoluto
Dependiente
2.- Nombre de ruta que comienza desde el directorio de trabajo actual y sólo describe los
directorios que hacen falta para llegar hasta el destino.
Relativo
General
Absoluto
Dependiente
3.- El comando: touch registros
Copia el archivo registros al directorio actual.
Crea un archivo vacío llamado registros.
Borra el archivo registros.
Mueve el archivo registros al directorio actual.
Academia de Software Libre
4.- El comando: more examen
Despliega el contenido del archivo examen, una pantalla a la vez.
Nos cambia al directorio examen.
Crea el archivo examen el directorio actual.
Muestra las primeras líneas del archivo examen.
Descargar