0% encontró este documento útil (0 votos)
15 vistas27 páginas

Segunda Unidad de Aprendizaje

Cargado por

edgar valdes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
15 vistas27 páginas

Segunda Unidad de Aprendizaje

Cargado por

edgar valdes
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

Gestión de Sistemas Operativos II

Grupos: 9S3211

Prof. Thelma López


UNIDAD II – SISTEMA DE ARCHIVOS

El sistema de archivos es la parte del SO que se encarga de


administrar los archivos y directorios de un dispositivo.
Entre sus funciones, podemos mencionar la asignación de
espacio a los archivos, la administración del espacio libre y
el acceso a los datos almacenados.

Los discos rígidos son dispositivos de almacenamiento que


permiten el acceso a los datos a través de bloques o
sectores. El software del SO es quien se encarga de
organizar estos sectores en archivos y directorios y
mantiene un registro de qué sectores están asignados a un
archivo en particular y qué sectores están libres.

En la práctica, un sistema de archivos también se puede


utilizar para acceder a datos generados dinámicamente,
como los que se reciben a través de una conexión de red,
sin la intervención de un dispositivo de almacenamiento.
SISTEMAS DE ARCHIVOS DE LINUX
En Linux se puede diferenciar el sistema de archivos que está
almacenado en las particiones del disco y otros dispositivos, y
el sistema de archivos tal y como lo presenta al usuario un
equipo ejecutando Windows. En Linux se monta un sistema de
archivos de disco en el sistema de archivos del equipo en
funcionamiento.

Un sistema de archivos impone cierta estructura, y hace que


parezca que hay archivos dentro de directorios, y directorios
dentro de directorios. Cada archivo se representa por un
bloque especial llamado i-nodo que contiene información
acerca de sus atributos. Por ejemplo:
El sistema quiere leer /home/tlopez/imagen1.jpg
Los directorios también se representan por medio de i-nodos, 1. Busca el i-nodo del directorio raíz “/”
pero éstos contienen información sobre cuáles son los i-nodos 2. Luego busca el i-nodo del directorio home en el
de los archivos que están en dicho directorio. contenido de “/”.
3. Después busca el inodo del directorio tlopez en el
La facultad que tienen los directorios de poder contener contenido de /home.
información sobre otros directorios (denominados 4. Y por último busca el i-nodo de imagen1.jpg que le
subdirectorios) permite una organización o estructura dirá qué bloques del disco leer.
jerárquica con la forma de un árbol invertido.
SISTEMAS DE ARCHIVOS
DE LINUX

Los sistemas de archivos indican el modo en


que se gestionan los archivos dentro de las
particiones. Según su complejidad tienen
características como previsión de apagones,
posibilidad de recuperar datos, indexación
para búsquedas rápidas, reducción de la
fragmentación para agilizar la lectura de los
datos, etc.
SISTEMAS DE PARTICIONES NOMENCLATURAS DE
DE LINUX PARTICIONES EN LINUX
Particionar un disco duro es realizar una división en él de Las particiones se nombran en forma de directorios.
modo que, a efectos prácticos, el sistema operativo crea Dependiendo de la arquitectura del disco duro que estemos
que tienes varios discos duros, cuando en realidad sólo utilizando podemos encontrar las siguientes nomenclaturas:
hay un único disco físico dividido en varias partes. De
este modo, se pueden modificar o borrar particiones sin
afectar a los demás datos del disco.

Las particiones básicas se llaman primarias y puede


haber a lo sumo 4. Esto puede ser suficiente para
nuestros intereses, sin embargo no siempre es así, por
que se crearon las particiones extendidas que pueden
albergar otras particiones dentro, llamadas lógicas.
DEFINICIÓN DE ORGANIZACIÓN DE ARCHIVOS
Se refiere a las diferentes maneras en las que puede ser estructurada la información de los archivos, así como las diferentes
maneras en que ésta puede ser accedida. Dado que hay 2 niveles de visión de los archivos, se puede hablar también de 2
aspectos de estructuración de archivos: Organización de archivos lógicos y de archivos físicos.

Estructura
Los ficheros de Linux se organizan en forma de árbol: hay una carpeta que actúa de raíz (denominada root y representada
con la barra /), de la que cuelgan todos los archivos y carpetas que componen el sistema. Cada carpeta a su vez puede
contener otras carpetas y archivos. El separador entre carpetas es la misma barra. Un sistema de ficheros es una rama o
conjunto de carpetas que cumplen una función determinada. En Linux, casi cualquier sistema de ficheros puede estar
almacenado en cualquier dispositivo local, y muchos de ellos pueden ser accesibles a través de la red.

FHS se define como un estándar que detalla los nombres, ubicaciones, contenidos y permisos de los archivos y directorios, es
decir, un conjunto de reglas que especifican una distribución común de los directorios y archivos en sistemas Linux.

Nomenclatura
Los nombres de ficheros de Linux pueden contener letras mayúsculas o minúsculas, números e, incluso, la mayoría de
caracteres de control y puntuación. Sin embargo, para hacernos la vida más fácil, se recomienda evitar los caracteres que no
sean alfanuméricos, el punto (.), el guión (-) y el subrayado (_).

Hay unos caracteres que no se deberían usar nunca en un nombre de fichero por su significado especial. *, ?, /, \ y ". En
cuanto a la longitud de los nombres de ficheros en Linux depende del sistema de ficheros que se utilice. En ext2fs, ext3fs,
ReiserFS, XFS y muchos otros, su límite está en 255 caracteres.
OPERACIONES SOBRE DIRECTORIOS
Comandos
cd: navega por el árbol de ficheros. El comando es la abreviatura de change directory y se utiliza para navegar por el
directorio. La sintaxis: cd [OPCIÓN] DIRECTORIO.

Si no se indica ningún directorio concreto, cd cambia automáticamente al directorio principal del usuario. Si se acompaña
de un guion (-), cd abre el directorio precedente y si se utiliza cd .. sale del directorio anterior.

ls: muestra el contenido del directorio como una lista. La orden ls equivale a list y se utiliza para mostrar el contenido de
de un fichero. Sintaxis: ls [OPCIONES] DIRECTORIO.

Si no se añade a ls ningún directorio, el comando enumera el contenido del directorio en curso. Con ayuda de diferentes
opciones se puede definir qué información se ha de mostrar y como.

mkdir: crea un directorio. Corresponde a make directory y permite a los usuarios de Linux crear directorios desde cero.
Para crear un directorio en el fichero en curso escribe la siguiente sintaxis: mkdir [OPCIÓN] DIRECTORIO

Si lo que se necesita es crear varios ficheros a la vez, se escribe uno detrás de otro sin signos de puntuación y con espacio
intermedio: mkdir [OPCIÓN] DIRECTORIO1 DIRECTORIO2

Si se quiere crear un directorio nuevo en otro fichero diferente al actual se ha de indicar la ruta absoluta o relativa al
fichero: mkdir /home/user/Desktop/test ó mkdir/Desktop/test
OPERACIONES SOBRE DIRECTORIOS
Comandos

mkdirhier: crea una jerarquía en el directorio. Con mkdirhier puedes crear jerarquías completas con un único comando:
mkdirhier [OPCIÓN] /home/user/directorio1/directorio2/directorio3

Si directorio1 y directorio2 ya existieran, entonces mkdirhier solo crearía directorio3. En caso contrario, se crean los tres.

pwd: muestra el nombre del directorio. Con pwd la consola muestra el nombre del directorio de trabajo. La sintaxis del
comando es: pwd [OPCIONES].

rmdir: borra un determinado número de directorios. Sintaxis: rmdir [OPCIÓN] DIRECTORIO.

Con rmdir, sin embargo, solo se pueden borrar directorios vacíos. Hay que tener cuidado con este comando ya que no
solicita confirmar el borrado. Los directorios seleccionados con el comando se borran definitivamente.

tree: presenta los directorios en forma de árbol. Mientras que ls muestra el contenido de los directorios como lista, el
comando tree, muestra la jerarquía completa del directorio en forma de árbol. Sintaxis: tree [OPCIONES] [DIRECTORIO]
OPERACIONES SOBRE ARCHIVOS
Comandos
cp: copia archivos o directorios. La orden cp (de copy) se utiliza para copiar archivos o ficheros y sigue la siguiente
sintaxis: cp [OPCIONES] ORIGEN DESTINO

Ejemplo: cp archivo.txt archivo_copia.txt

Otra opción sería copiar un archivo del directorio actual en un directorio de destino: cp [OPCIONES] ARCHIVO_ORIGEN
DIRECTORIO_DESTINO

Ejemplo: cp archivo.txt home/user/documentos/2017

Otra opción sería copiar varios archivos en un directorio: cp [OPCIONES] ARCHIVO_ORIGEN1 ARCHIVO_ORIGEN2
DIRECTORIO_DESTINO

Ejemplo: cp archivo.txt archivo.odt home/user/documentos/2017

Otra opción sería copiar un directorio desde el directorio actual en otro directorio diferente: cp DIRECTORIO_ORIGEN
DIRECTORIO_DESTINO

Ejemplo: cp -R home/user/documentos/ /home/tlopez/Linux/


OPERACIONES SOBRE ARCHIVOS
Comandos
ln: crea un enlace a un archivo o un directorio. Para invocar ln el comando ha de incluir, como mínimo, la ruta al archivo
de origen. ln [OPCIONES] ruta/al/archivo de origen

En este caso, el enlace se crea en el directorio actual de trabajo sin cambiar de nombre. Otra alternativa consiste en
indicar una ruta de destino y dar un nombre diferente al vínculo: ln [OPCIONES] ruta/al/archivo de origen ruta/al/enlace

mv: mueve archivos o directorios. El programa mv (move) copia un archivo o un directorio y borra el original. Si esto
tiene lugar dentro del mismo directorio, mv puede utilizarse también para cambiar el nombre de los archivos. Para ello se
sigue el siguiente esquema: mv [OPCIÓN] ORIGEN DESTINO

Ejemplos de su aplicación:
Trasladar un archivo a otro directorio: mv archivo1.txt home/user/documentos/2017
Trasladar varios archivos de origen a un directorio de destino: mv archivo1.txt archivo2.txt home/user/documentos/2017
Trasladar un subdirectorio del fichero actual a un directorio de destino: mv directorio1 home/user/documentos/2017
Cambiar el nombre de un archivo en el directorio de trabajo: mv archivo1.txt archivo2.txt
Cambiar el nombre de un subdirectorio en el directorio actual: mv directorio1 directorio2
OPERACIONES SOBRE ARCHIVOS
Comandos
rename: cambia el nombre de archivos. rename permite cambiar el nombre de archivos y carpetas con ayuda de
expresiones regulares compatibles con perl. Al contrario de mv, rename se presta así para modificar los nombres de varios
archivos parcial o totalmente. La invocación de rename se realiza con la siguiente sintaxis: rename [OPCIONES]
'EXPRESIÓN_REGULAR' ARCHIVOS

En el caso de las sustituciones, las expresiones regulares siguen la siguiente sintaxis: rename
s/PATRONDEBUSQUEDA/SUSTITUCIÓN/MODIFICADOR

En el siguiente ejemplo todas las terminaciones .html se sustituyen por .xhtml:


rename s/.html$/.xhtml/*.html

rm: borra archivo o directorio de forma irreversible. Para ello se sigue la siguiente sintaxis: rm [OPCIONES] ARCHIVO o rm
[OPCIONES] DIRECTORIO

Para eliminar un directorio junto a todos sus subdirectorios se utiliza rm con la opción -R: rm -R DIRECTORIO

Cuando se ordena eliminar varios archivos o ficheros, estos se separan por espacios: rm [OPCIONES] ARCHIVO1 ARCHIVO2
OPERACIONES SOBRE ARCHIVOS
Comandos
diff: compara archivos o directorios. Con el programa diff se cotejan dos archivos. También permite averiguar si dos
directorios contienen los mismos archivos. Se invoca con la siguiente sintaxis: diff [OPCIONES] ARCHIVO1 ARCHIVO2

file: muestra el tipo de archivo. Con file se puede obtener información sobre el tipo o formato de un archivo. Se invoca
con la siguiente sintaxis: file [OPCIONES] ARCHIVO

cmp: compara archivos a nivel de byte. cmp forma parte del paquete diff y, como este, también se utiliza para comparar
el contenido de varios archivos aunque, a diferencia de como sucede en diff, aquí el cotejo tiene lugar byte por byte, lo
que lo hace especialmente idóneo para archivos binarios. Su sintaxis sería: cmp [OPCIONES] ARCHIVO1 ARCHIVO2

Si cmp encuentra diferencias, entrega el número de bytes y el de la línea del primer archivo que difiera.

comm: compara archivos clasificados por líneas. Utiliza el comando comm para comparar por líneas archivos
previamente ordenados. Su sintaxis es: comm [OPCIONES] ARCHIVO1 ARCHIVO2

Sin opciones adicionales, el programa genera una salida en tres columnas: la primera contiene todas las líneas que solo
aparecen en ARCHIVO1; la segunda, todas las líneas que solo aparecen en ARCHIVO2, y la tercera, todas las líneas que
aparecen en ambos archivos.
OPERACIONES SOBRE ARCHIVOS

Comandos
stat: con ayuda del comando stat se puede obtener la fecha y la hora de los accesos y los cambios relativos a determinados
archivos o directorios. Este comando sigue esta sintaxis: stat [OPCIONES] ARCHIVO

touch: se utiliza para generar archivos vacíos. Para invocar a touch se tiene que seguir este esquema: touch [OPCIONES]
ARCHIVO
COMANDOS PARA VER EL CONTENIDO DE UN ARCHIVO
Comandos
head: se utiliza para mostrar la primera parte de un archivo. Su sintaxis general sería así:
head [OPCIONES] Archivo

Utiliza la opción -n NÚMERO_LÍNEAS para definir cuántas líneas, a partir de la primera, se han de mostrar en la consola.

Ejemplo: head -n 3 ejemplo.txt

less: muestra el contenido de un archivo de texto en la consola. Su sintaxis general es la siguiente:


less [OPCIONES] ARCHIVO

La salida tiene lugar en modo interactivo de forma automática, lo que le permite al usuario hojear el documento. Con la
tecla [Q] se cierra el modo de lectura interactiva.

tail: muestra por defecto las 10 últimas líneas de un archivo. Su sintaxis general es: tail [OPCIONES] Archivo

Ejemplo: tail archivo ó tail n-8 archivo


COMANDOS PARA VER EL CONTENIDO DE UN ARCHIVO
Comandos

more: muestra archivos en el terminal pero con menos funciones. Utiliza more con esta sintaxis para invocar un archivo
de texto y acceder a su contenido en la consola: more [OPCIONES] ARCHIVO

Este comando muestra siempre una página completa del archivo, pero si este incluye varias páginas, more inicia un
modo interactivo que permite hojear el documento con ayuda de teclas de control o explorarlo utilizando palabras clave.
Con la techa [Q] se cierra el modo de lectura interactiva.

cat: agrupa contenido de varios archivos. Este comando nace como herramienta para enlazar archivos y puede
emplearse como pager para mostrar el contenido de los archivos en el terminal. Escribe cat con la siguiente sintaxis para
leer y mostrar un archivo: cat OPCIONES ARCHIVOS

Si incluyes varios archivos, sepáralos mediantes espacios: cat OPCIONES ARCHIVO1 ARCHIVO2
FILTROS
Comandos

find: explora el sistema de archivos, es un programa de líneas de comandos cuya función es buscar archivos en el
sistema.
Se utiliza con la siguiente sintaxis: find [OPCIONES] [RUTA] [EXPRESIÓN_DE_BÚSQUEDA ][ACCIÓN]

El directorio que se indica en RUTA define el inicio de la búsqueda, de tal forma que se exploran tanto el directorio como
sus subdirectorios. Si no se indica ninguno, find comienza a explorar desde el directorio actual.

Las opciones indicadas en EXPRESIÓN DE BÚSQUEDA permiten definir los criterios de búsqueda y las acciones. Los
criterios de búsqueda más habituales son el nombre del archivo (-name NOMBRE DEL ARCHIVO[SUFIJO]), un nombre de
usuario (-user NOMBRE DE USUARIO), el tamaño del archivo (-size n[cwbkMG]), el momento del acceso en días (-atime
[+ -]n) o el momento de la modificación en días (-mtime [+ -]n).

En la búsqueda de nombres de archivo se pueden utilizar comodines como *. Si se escriben entre comillas se evita que el
shell los interprete.

Ejemplo: find /tmp -name "*.odt" -mtime -3 -size +20k


FILTROS
Comandos
sort: ordena listas de archivos y salidas de programa en líneas numérica y alfabéticamente. Se invoca a sort siguiendo esta
sintaxis: sort [OPCIONES] ARCHIVO

Este método se puede complementar con opciones como -n (ordenar numéricamente), -R (ordenar de forma aleatoria) o -r
(ordenar en orden inverso).

grep: explora archivos de texto, tales como archivos de registro. Como patrón de búsqueda se pueden utilizar secuencias
de caracteres o expresiones regulares. Utiliza grep según esta sintaxis: grep [OPCIONES] PATRÓN_DE_BÚSQUEDA
[ARCHIVOS]

Si grep encuentra una cadena que se corresponde con el patrón dado, el terminal muestra el número de línea y especifica
el nombre del archivo. Por regla general, grep se aplica a todos los archivos del directorio de trabajo actual. La opción -r
permite la búsqueda recursiva en los subdirectorios.

which: encuentra los archivos binarios de los programas, mostrando la ruta de los mismos. Este programa se invoca con la
siguiente sintaxis: which [OPCIONES] PROGRAMA

Ejemplo: which Firefox

Salida: /usr/bin/firefox
MISCELÁNEOS

Comandos

alias: Define apodos para los comandos

El programa alias permite definir abreviaturas para los comandos.

Sintaxis:
alias APODO = 'COMANDO'

COMANDO puede sustituirse por un comando cualquiera incluyendo las opciones, que queda vinculado al apodo
incluido en el espacio APODO.

Ejemplo

alias ll='ls -l'

Los caracteres ll se han definido como apodo para el comando ls con la opción -l (salida detallada).
MISCELÁNEOS

Comandos

wc: Cuenta líneas, palabras, letras, caracteres y/o bytes de archivos de texto.

El comando wc (word count) proporciona la cantidad de líneas, palabras, letras, caracteres o bytes de un archivo de texto
cuando se necesita.

La sintaxis:

wc [OPCIONES] ARCHIVO

Ejemplo1:
wc ejemplo.txt

Ejemplo 2:
wc -l grep *.txt
REDIRECCIONES Y TUBERÍAS EN LINUX

Redirecciones

Las redirecciones consisten en trasladar información de un tipo a otro, por ejemplo, de error estándar a la salida estándar o
de la salida estándar a la entrada estándar. A través de la terminal, logramos eso haciendo uso del símbolo >.

Redireccionar salida y error estándar: Por ejemplo, para hacer la redirección de la salida de un comando y enviarla a un
archivo; nos basta con ejecutar: ls -la > (nombre del archivo)

Sin embargo, si realizamos la ejecución de esa forma, el contenido de nuestro archivo será remplazado, cada vez, por la
salida del comando. Si lo que quisiéramos es que se adicione dicha salida en el archivo, entonces la ejecución sería de la
siguiente manera: ls -la >> (nombre del archivo)

Lo que resulta interesante es que, podemos redireccionar las salidas, los errores y las entradas estándar. Por ejemplo, para
forzar que un programa nos muestre en pantalla los errores que se generen durante una ejecución, redireccionamos el
error estándar hacia la salida estándar durante su ejecución de la siguiente manera: 2 >> &1

Donde 2, representa al error estándar y &1 representa la salida estándar.


REDIRECCIONES Y TUBERÍAS EN LINUX
También podemos hacer un descarte del error estándar en cierto proceso, algo común en la administración de sistemas.
Para esto ejecutamos: 2 > /dev/null

Inclusive descartar la salida estándar: aplicación > /dev/null

Ya que en Linux, el archivo /dev/null, es un archivo especial a donde se envía la información para que sea descartada.

Redireccionar la entrada: de la misma manera en que redireccionamos salidas y errores estándar, podemos hacerlo con
las entradas estándar desde un archivo y para ello utilizamos el operador <.

Esto resulta útil en comandos o programas donde se introducen los argumentos por teclado, del tal forma que podemos
sustituirlos por un archivo, por ejemplo:

echo "Hola mundo" > saludo


cat < saludo
Hola mundo
REDIRECCIONES Y TUBERÍAS EN LINUX
Tuberías
Las tuberías son un tipo especial de redirección que permiten enviar la salida estándar de un comando como entrada
estándar de otro. La forma de representarlo es con el símbolo | . Su principal utilidad es que nos ofrece la posibilidad
de concatenar comandos, enriqueciendo la programación.

Un ejemplo sencillo y muy útil es ver los procesos que están ejecutando en el sistema con el comando ps y
redireccionar su salida al comando sort para ordenarlos por PID: ps -a | sort

También tenemos otras formas de concatenar comando como por ejemplo: con & podemos lograr que dos o más
comando se ejecuten de manera simultánea. Ejemplo ps -a & cat > proceso. con || podemos lograr que el segundo
comando se ejecuté si el primero termina con éxito. Ejemplo cd /etc || ls -la

con && podemos lograr que el segundo comando se ejecuté sólo si el primero termina con éxito. Ejemplo mv *.png
/home/tlopez && ls -la

y con el ; podemos lograr que el segundo comando se ejecuté sin importar el resultado del primero.
COMPRESIÓN Y RESPALDO
Compresión Comprimir archivos significa codificar sus contenidos para que sean de un tamaño menor
y
que se puedan restaurar a su tamaño y contenidos originales cuando se desee. El tamaño del
archivo resultante luego de la compresión dependerá de los datos que haya dentro del mismo.

Por ejemplo: los archivos de texto se pueden comprimir, en relación a un archivo binario, a un
tamaño menor que éste ya que los textos contienen muchos caracteres repetidos y los binarios
son datos aleatorios.

Existen dos motivos fundamentales por lo que resulta útil comprimir archivos:
• Ocupan menos espacio en disco, podemos comprimir archivos que se usan raramente pero
que no deseamos descartarlos.
• Los archivos comprimidos pueden transferirse a otro sistema en un tiempo menor.
COMPRESIÓN Y RESPALDO
El comando tar con la opción z empaqueta y comprime un archivo en una sola acción, lo que puede hacer las cosas más
rápidas y cómodas, por lo que es muy usada.

Sintaxis: tar -czvf [archivo.tgz] [archivo origen]

El nombre del archivo comprimido tiene extensión .tgz, que indica que estará empaquetado y comprimido.

Ejemplo: $tar -czvf copiacomprimida.tgz /home/usu2/textos

Se crea el archivo copiacomprimida.tgz con el respaldo de los archivos del subdirectorio /home/usu2/textos y se visualiza
el proceso de empaquetado.

Descomprimir y desempaquetar con tar. Si por el contrario queremos restaurar un backup, es decir, descomprimir y
desempaquetar en un solo paso, tenemos que hacerlo con la opción z del comando tar.

Sintaxis: tar -xzvf archivo.tgz directoriodestino

Ejemplo: $ tar -zxvpf fullbackup.tgz ./

Que extrae los contenidos del archivo fullbackup en el directorio actual, descomprimiendo al mismo tiempo y conservando
los permisos (opción -p).
COMPRESIÓN Y RESPALDO
Comprimir y Descomprimir con gzip y gunzip

gzip comando que comprime archivos. Este comando suele efectuar una mejor compresión que el comando compress y
agrega el sufijo .gz al nombre del archivo comprimido.

Sintaxis: gzip [-opciones] archivo

Ejemplo: $ gzip -9 copia.tar

comprimirá copia.tar y lo dejará como copia.tar.gz, que es la versión comprimida del archivo. La opción -9 le dice a gzip que
utilice el mayor factor de compresión.

gunzip comando que se utiliza para descomprimir un archivo comprimido por gzip o la opción z del comando tar.

Sintaxis: gunzip [-opciones] archivo.gz ó archivo.tgz

Ejemplo: $ gunzip copia.tgz


$ ls
copia.tar
En este caso el archivo copia fue empaquetado y comprimido en un solo paso (copia.tgz) y luego el archivo es solo
descomprimido pero no desempaquetado.
COMPRESIÓN Y RESPALDO

Definiremos tres tipos de copias de seguridad: copias de seguridad completas, copias de seguridad incrementales y las
copias de seguridad diferenciales

Las copias de seguridad completas copian toda una unidad de disco duro, o todos los archivos que se le indiquen. Es la
primera copia que debe realizarse full backup, la que luego tomarán como base el método de backup incremental o
diferencial.

Las copias de seguridad incrementales copian sólo aquellos archivos que han cambiado desde la última copia completa o
incremental, reduciendo la cantidad de información a copiar en cada proceso. En el caso anterior de tener una copia
completa el domingo, el lunes se copiarán las novedades respecto al domingo, y el martes las novedades respecto a la
copia del lunes, con la consiguiente reducción de tamaño de copia.

Las copias de seguridad diferenciales sólo copian los archivos que han sido creados o modificados desde la última copia
completa. Esto quiere decir que, si hicimos una copia completa el domingo, el lunes, el martes y los días siguientes, se
copiarán aquellos archivos modificados o creados desde el domingo (ultima copia full backups). Las copias diferenciales
se van haciendo más grandes ya que reflejan los cambios desde una marca fija en el tiempo.

La forma más fácil de hacer un respaldo de forma manual es con la herramienta tar que está disponible en casi cualquier
distribución y que nos crea un archivo que opcionalmente puede ser comprimido y es fácil de usar.
COMPRESIÓN Y RESPALDO
tar genera un archivo .tar de respaldo o backup de uno o más archivos

Sintaxis: tar [-opciones] archivo.tar [archivo1] [archivo2] ...[archivoN]

La primera opción de tar debe ser la letra c, x, ó t ya que c implica crear, x extraer un archivo ya creado y t mostrar el
contenido del archivo tipo tar. El resto de argumentos son las rutas con los nombres de archivos y/o directorios a
empaquetar. Como siempre podemos encontrar más opciones en man tar.

Ejemplo 1: $ tar -cvf copia.tar /home/usuario1

Crea un respaldo de los archivos del subdirectorio perteneciente al usuario1 en un archivo llamado copia.tar y se visualiza el
proceso de empaquetado. Entonces el comando $ tar -xvf copia.tar

Extrae el archivo copia.tar en el directorio actual. Esto puede ser peligroso ya que cuando se extraen archivos de un archivo
tar, los archivos antiguos se sobrescriben. Por lo que es importante conocer dónde se deben desempaquetar los archivos. Para
ello el comando tar tiene la opción t

Ejemplo: $ tar -tvf copia.tar

Se muestra por pantalla, un "índice" del archivo tar antes de desempaquetarlo. De esta forma se puede ver qué directorio se
utilizó como origen de los nombres de los archivos, y se puede extraer el archivo desde la localización correcta.

También podría gustarte