Inicio / Wikis / Cursos gratis / Manual Aprendiendo a aprender Linux - Administración de archivos (I)

Manual Aprendiendo a aprender Linux - Administración de archivos (I)

(30 opiniones)
Curso gratis creado por Vladimir Támara, Jaime Irving Dávila, Pablo Chamorro e Igor Támara
14 de Febrero de 2006

28 - Administración de archivos (I)

[editar]
Indicadores de Logros

  • Conoce la organización de la jerarquía de directorios de Linux.
  • Administra sistemas de archivos.
  • Administra el sistema de archivos Ext2.


En Unix se emplean archivos o directorios para mantener información en medios de almacenamiento (e.g discos duros, disquettes, CD-ROM) pero también para abstraer dispositivos de hardware y mantener canales de comunicación con programas. En una red pueden emplearse directorios o archivos que estén en otro computador (ver Servicio NFS).

Para leer o escribir en un medio de almacenamiento es necesario montarlo antes en la jerarquía de directorios (see Disquetes y CDROM). Aunque antes de poderlo montar ya debe estar formateado a bajo nivel y debe contar con un sistema de archivos. Formatear un medio de almacenamiento significa prepararlo para que el hardware pueda leerlo y escribirlo, al dotarlo de un sistema de archivos se prepara para que el sistema operativo pueda organizar, leer y escribir datos.


Los directorios y archivos de un sistema Debian tiene una estructura estándar [1], algunos de los directorios son:

Directorio que contiene el kernel e información del arranque del sistema

Directorio que contiene programas disponibles incluso en los modos de ejecución más restringidos.

Directorio que contiene programas disponibles para usuarios finales y datos de dichos programas que no requiren modificación.

Directorio que contiene programas disponibles para todos los usuarios.

Directorio que contiene programas disponibles para el administrador.

Directorio que contiene los diccionarios.

Directorio que contiene documentación.

Directorio que contiene páginas info.

Directorio que contiene páginas man.

Directorio que contiene enlaces o complementos a la documentación disponible en /usr/share/doc.

Directorio que contiene enlaces o complementos a la documentación disponible en /usr/share/info.

Directorio que contiene enlaces o complementos a la documentación disponible en /usr/share/man.

Directorio que contiene librerías de funciones comunes a varios programas.

Directorio que contiene encabezados de algunos componentes del sistema.

Directorio que contiene fuentes de algunos programas.

Directorio que contiene datos y programas de X-Window.

Directorio que contiene datos y programas compilados por el administrador.

Directorio para montar disquettes.

Directorio para montar CD-ROM.

Directorio para montar archivos o dispositivos.

Directorio que contiene canales de comunicación con algunos programas.

Directorio que contiene librerías indispensables y módulos.

Directorio que contiene archivos de configuración.

Directorio que contiene abstracciones a los dispositivos conectados.

Directorio que mantiene información de los usuarios del sistema.

Directorio que mantiene información del administrador del sistema.

Directorio que mantiene archivos temporales, que serán borrados por el sistema operativo durante el arranque.

Directorio que mantiene archivos que deban modificarse frecuentemente.

Directorio virtual creado para intercambiar información con facilidad.

/boot

Mantiene el kernel e información indispensable para el arranque del sistema.

/bin

Mantiene unos pocos programas que estarán disponibles incluso en los modos de ejecución más restringidos (e.g. bash, cat, ls, login, ps).

/sbin

Mantiene programas disponibles sólo para el administrador incluso en los modos de ejecución más restringidos (e.g fsck, getty, halt).

/usr

Programas accequibles a usuarios finales y datos de estos programas que no requieren ser modificados (datos de sólo lectura). Algunos de sus subdirectorios son:

bin, games

Programas disponibles para todos los usuarios.

sbin

Herramientas para el administrador.

dict

Diccionarios --usados por ejemplo por ispell y look.

share

Datos de diversos programas, entre sus subdirectorios están: doc, man y info que contienen documentación; locale, i18n que mantiene información sobre internacionalización (locale); zoneinfo que mantiene información sobre zonas horarias.

doc, info, man

Enlaces o complementos a la documentación disponible en /usr/share/doc, /usr/share/info y /usr/share/man.

lib

Librerías de funciones comunes a varios programas (algunas como libc indispensables para todos).

include, src

Encabezados de algunos componentes del sistema y fuentes de algunos programas.

X11R6

Programas y datos de X-Window.

local

Otros programas y datos compilados por el administrador i.e no provienen de paquetes Debian. En algunos sistemas otros programas se ubican en /opt.

/floppy, /cdrom, /mnt

Directorios para montar disquettes, CD-ROMs y otros sistemas de archivos o dispositivos.

/proc

Diversos canales de comunicación con algunos programas (por ejemplo con el kernel).

/lib

Librerías indispensables y módulos (especialmente requeridas durante el arranque del sistema).

/etc

Archivos de configuración de diversos programas.

/dev

Abstracciones a los dispositivos conectados (o que podrían conectarse) al computador.

/home

Mantiene información de los usuarios del sistema.

/root

Mantiene información del administrador del sistema.

/tmp

Archivos temporales creados por algunos programas, que serán borrados por el sistema operativo durante el arranque.

/var

En este directorio los programas que lo requieran pueden mantener archivos que deban modificarse frecuentemente. Algunos de sus subdirectorios son: mail donde se mantienen colas de correo de cada usuario, log que mantiene bitácoras, run con archivos que mantienen los números de los procesos iniciados al arrancar el sistema, spool colas de impresión y de otros programas, tmp archivos temporales (más persistente que /tmp).

/proc

Este directorio es "virtual", no está presente en el disco, es creado por el sistema para intercambiar información con más facilidad.

El rigor de esta jerarquía hace que memorizandola sea fácil emplear diversos sistemas Unix, aunque puede no ser la más apropiada en algunas circunstancias. Para simular jerarquías diferentes cada proceso iniciado por el usuario root puede tener un directorio raíz diferente al directorio raíz real del sistema. Para establecerlo se emplea el programa chroot, que recibe como primer parámetro el nuevo directorio raíz y como segundo parámetro el programa por ejecutar. La ruta del programa se especifica con respecto al nuevo directorio raíz y para que el programa pueda ejecutarse, deben ubicarse las ibrerías que este requiera en la "nueva" jerarquía (por ejemplo en el nuevo directorio /lib).

Esta jerarquía de directorios en Linux no necesariamente está en un disco, sino sólo en memoria RAM, por eso pueden tenerse directorios como /proc y pueden montarse diversos sistemas de archivos sobre la misma jerarquía como se presenta en la siguiente sección.


Un sistema de archivos es información almacenada en un dispositivo de almacenamiento organizada siguiendo una convención, la cual permite al sistema operativo manejar la información cuando el usuario lo requiere, es decir, leer, escribir, consultar directorios, etc. Hay diversos tipos (o convenciones) de sistemas de archivos, Linux cuenta con controladores para varios tipos creados específicamente para Linux (e.g ext2, ReiserFS) así como controladores para tipos de sistemas de archivos creados para otros sistemas operativos (e.g affs, hpfs, ntfs, msdos). Los tipos que pueden emplearse con Linux [2] están incluidos en el kernel o son módulos en el subdirectorio fs del directorio con módulos de su sistema (es decir, el directorio de módulos es de la forma /lib/modules/2.2.x/fs/ remplazando x por la versión de su kernel).

Los que puede usar dependen de la forma como se haya compilado el kernel y de los módulos que estén cargados. Puede examinar los tipos que soporta su sistema viendo el contenido de /proc/filesystems y puede emplear otros tipos de sistemas de archivos cargando los módulos apropiados
mientras sean soportados (ver ).

Aunque toda la estructura de directorios presentada en la sección anterior podría estar en un sólo sistema de archivos, es posible distribuirla en varios. Para poder emplear un sistema de archivos primero debe montarse en algún directorio con el comando mount o debe configurarse el sistema para que lo monte automáticamente durante el arranque (el primer directorio que debe montarse es la raíz / ). Para desmontar un sistema de archivos de un directorio se emplea el comando umount.

Comando utilizado para montar un dispositivo del sistema.

Comando utilizado para desmontar un dispositivo del sistema.

El programa mount sin argumentos presenta los sistemas de archivos que están montados [3], de cada uno presenta el dispositivo en el que reside, el directorio en el que está montado, el tipo de sistema de archivos y algunos parámetros del montaje, por ejemplo:

/dev/hda1 on / type ext2 (rw,errors=remount-ro,errors=remount-ro) proc on /proc type proc (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) /dev/hda2 on /var type ext2 (rw) /dev/hda3 on /home type ext2 (rw) En el ejemplo se muestran 5 sistemas de archivos montados en los directorios /, /proc, /dev/pts, /var y /home. 3 de ellos son de tipo ext2 y residen en tres particiones de un disco duro (/dev/hda1, /dev/hda2 y /dev/hda3 ver Dispositivos y Linux), los otros dos son virtuales, es decir, no residen en dispositivo de almacenamiento alguno (son creados por el kernel). Las opciones de montaje de todos indican que pueden leerse y escribirse rw, el sistema montado en la raíz en caso de fallas será montado con permiso de sólo lectura (errors=remount-ro) y el sistema montado en /dev/pts tendrá todos sus archivos como pertenencientes al grupo 5 (tty) y permisos de escritura y lectura para el usuario y sólo de escritura para el grupo (modo 620).

Para montar un sistema de archivos se emplea:

mount -t tipo -o opciones dispositivo directorio

Donde dispositivo es el nombre del dispositivo que contiene el sistema de archivos (e.g /dev/hda1 o /dev/fl0), tipo es el tipo del sistema de archivos [4] y directorio es la ruta donde se quiere acceder la raíz del sistema montado (si el directorio donde se monta contiene datos, estos serán escondidos mientras el nuevo sistema de archivos permanezca montado).

La información sobre un sistema de archivos, su directorio de montaje y opciones pueden especificarse en el archivo /etc/fstab. De hacerlo puede emplear

Archivo que contiene información sobre los sistemas de archivos y su directorio de montaje.

mount directorio

para montar el sistema de archivos en el directorio especificado (el resto de información debe estar en /etc/fstab). Además, por defecto, los sistemas de archivos especificados en ese archivo serán montados automáticamente durante el arranque del sistema. Un ejemplo complementario al ejemplo anterior es:

/dev/hda1 / ext2 defaults,errors=remount-ro 0 1 /dev/hda4 none swap sw 0 0 proc /proc proc defaults 0 0 /dev/fd0 /floppy auto defaults,user,noauto 0 0 /dev/cdrom /cdrom iso9660 defaults,ro,user,noauto 0 0 /dev/hda2 /var ext2 rw 0 2 /dev/hda3 /home ext2 rw 0 2 Cada línea especifica un sistema de archivos con: dispositivo, directorio donde se debe montar, tipo del sistema de archivos, opciones de montaje separadas por comas, la frecuencia de volcado (típicamente 0) y un númeo para controlar el chequeo durante el arranque con fsck. Además de los tipos soportados por su sistema puede emplear swap para especificar particiones que servirán como zona de intercambio [5]. Algunas opciones (comunes a todo sistema de archivos) son: ro para montar en modo de sólo lectura, user que indica que un usuario puede montar el sistema de archivos (por defecto sólo el administrador puede hacerlo), rw para montar en modo lectura y escritura, ro modo de sólo lectura, noauto para indicar que el sistema no debe montarse durante el arranque
note que los directorios /floppy y cdrom no son montados automáticamente durante el arranque (ver Disquetes y CDROM). El número que controla el chequeo con fsck indica el orden en el cual hacer chequeos, 0 indica que no se debe chequear el sistema, otros números positivos especifian una prioridad (los menores son más prioritarios y los números con el mismo número de ser posible son chequeados en paralelo). Es conveniente emplear 1 con el sistema de archivos montado en la raíz y 2 para los demás que requieran chequeo.
Tu nombre debe tener tres caracteres como mínimo.
Es necesario que te des de alta con una cuenta de correo válida.
Es necesario que te des de alta con una cuenta de correo válida.
El contenido del título de tu opinión debe tener tres caracteres como mínimo.
Es obligatorio que selecciones una valoración del recurso.
El contenido del comentario de tu opinión debe tener tres caracteres como mínimo.

Opina sobre este curso gratis



* Valoración:
* Nombre:
* Correo electrónico:
* Título:
* Comentario:

Wikis relacionados con 'Manual Aprendiendo a aprender Linux - Administración de archivos (I)'

Con este articulo serás capaz de instalar el eMule en tu ordenador y comenzar a... Más »
En los últimos años, el desarrollo basado en componentes se ha convertido en una de... Más »
Este es el Diccionario de Plantas Mágicas elaborado por nosotr@s. Esta basado en nuestra propia... Más »
En este documento se presenta la información acerca de la instalación, configuración, ejecución y mantenimiento... Más »
Este documento describe el soporte de sonido para Linux. Enumera el hardware de sonido soportado,... Más »
Autor y licencia de 'Manual Aprendiendo a aprender Linux - Administración de archivos (I)'
Vladimir Támara, Jaime Irving Dávila, Pablo Chamorro e Igor Támara Extraído de: http://es.tldp.org/Manuales-LuCAS/AA_Linux_colegio-1.1/AA_Linux_colegio-1.1-html/ GNU Free Documentation License
Licencia GNU Free Documentation License: http://www.es.gnu.org/licencias/fdles.html
Este contenido ha sido recopilado por el equipo de Wikilearning. Todo el contenido recopilado se ha obtenido respetando y comunicando en nuestro site la licencia de cada fuente.
Wikilearning tiene permiso expreso por escrito de los autores para publicar los contenidos que ha extraído de otras webs, incluyendo su uso comercial.
¿Estás seguro de que deseas eliminar este capítulo?