Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Loading in …3
×
1 of 59

[ES] Estructura del Sistema de Archivos Gnu/Linux

0

Share

Download to read offline

Presentación sobre La Estructura del Sistema de Archivos Gnu/Linux; como parte del Diplomado de Software Libre que se lleva a cabo en la Universidad Abierta para Adultos (UAPA), Santiago de los caballeros. #Linux #softwarelibre

Related Books

Free with a 30 day trial from Scribd

See all

Related Audiobooks

Free with a 30 day trial from Scribd

See all

[ES] Estructura del Sistema de Archivos Gnu/Linux

  1. 1. Diplomado en Software Libre Estructura del sistema de archivos GNU/Linux Eudris Cabrera Rodríguez 15 Junio 2014, Santiago de los Caballeros, R. D. @eudriscabrera @eudriscabrera
  2. 2. Todas las marcas registradas, así como todos los logotipos, imágenes, fotografías, audio y vídeos mostrados en esta presentación son propiedad de sus respectivos propietarios. Su utilización es solamente para fines ilustrativos y no pretendo dar a entender cualquier afiliación con esas empresas. Los conceptos y juicios de valor emitidos en esta presentación son responsabilidad personal y no se puede entender como una posición oficial de alguna empresa con la que he tenido relación laboral. Asuntos Legales
  3. 3. Agenda ❏ Organización del Sistema de Archivos ❏ Sistemas de Archivos Más Comunes ❏ Tipos de Archivos ❏ Particiones ❏ Utilidades para el Uso y Mantenimiento del Disco ❏ Comandos Básicos de la Administración de Archivos ❏ Búsqueda de Contenido en Archivos
  4. 4. Objetivos ❖ Conocer cómo está organizado el sistema de archivo ❖ Aprender técnicas avanzadas para el uso y mantenimiento del disco. ❖ Asimilar comandos básicos para la administración del sistema de archivos.
  5. 5. GNU/Linux reside bajo un árbol jerárquico de directorios muy similar a la estructura del sistema de archivos de plataformas Unix. Para garantizar la compatibilidad y portabilidad, los sistemas Linux cumplen con el estándar FHS (Filesystem Hierarchy Standard, Estándar de jerarquía del sistema de archivos). FHS se define como un estándar que detalla los nombres, ubicaciones, contenidos y permisos de los archivos y directorios. Organización del sistema de archivo
  6. 6. Todos el sistema de archivos de Linux tiene un origen único la raíz o root representada por /. Bajo este directorio se encuentran todos los ficheros a los que puede acceder el sistema operativo. Estos ficheros se organizan en distintos directorios cuya misión y nombre son estándar para todos los sistemas Linux. GNU/Linux considera cada archivo, directorio, dispositivo, y vínculo como un archivo colocado en esta estructura. Organización del sistema de archivo
  7. 7. Organización del sistema de archivo
  8. 8. Inode (inodo, nodo-i o nodo índice) es una estructura de datos usada para almacenar la información acerca de cada archivo, incluyendo: 1. Puntero a la posición física en el disco 2. El nombre 3. La identificación del dueño y grupo 4. Reglas de acceso 5. Tamaño 6. Fecha y tiempo que el archivo fue accedido por última vez 7. Fecha y tiempo de la última modificación 8. Fecha y tiempo de la última modificación del inode 9. Número de vínculos (links) al archivo Inodes
  9. 9. El nombre del archivo es almacenado en el directorio y asociado a su propio inode . Cada archivo tiene un inode asociado a él, aunque cada archivo puede tener más de un nombre a través del uso de vínculos, cada archivo tiene sólo un inode. Inodes
  10. 10. Use el comando ls -i para determinar el número de inodes de cualquier archivo. $ ls -i nombre-archivo También podemos usar el comando stat para tales fines. $ stat nombre-archivo Inodes
  11. 11. Un sistema de archivos provee una forma de almacenar archivos que luego podrán ser accesados al azar, incluyendo discos duro, disquetes, y CD -ROMs. Algunos medios de almacenamiento no contienen un sistema de archivos real. Por ejemplo: Las cintas (tape drives) son accesadas secuencialmente. Sistemas de archivos más comunes
  12. 12. FAT, FAT16, FAT32: Sistema de archivos de MS-DOS, Windows 95 y Windows 98. Se sigue utilizando por su sencillez y porque es reconocido por todos los sistemas operativos. Es un sistema de archivos muy frágil y no es tolerante a fallos, además de ser lento con respecto a los otros. Sistemas de archivos más comunes NTFS: Sistema de archivos de Windows NT, 2000, XP y 2003. Es un sistema más sofisticado y rápido que es anterior y el actual estándar de Microsoft. Es un sistema de archivos cuya implementación es propietaria y cerrada, por lo que no es reconocido en su totalidad por todos los sistemas operativos.
  13. 13. EXT2: Sistema de archivos estándar de Linux, su organización interna permite no necesitar defragmentación (fenómeno que se da en otros sistemas por el cual los archivos se distribuyen de forma que el tiempo que se tarda en acceder a ellos se incrementa, incrementando el tiempo de acceso a disco). EXT3: Es la extensión de EXT2, incorpora tolerancia a fallos permitiendo una rápida recuperación del sistema cuando el ordenador se bloqueó o apagó inesperadamente. ReinserFS y XFS: Sistemas de archivos de alto rendimiento y rapidez que mejoran los sistemas anteriores. Sistemas de archivos más comunes
  14. 14. GNU/Linux soporta diferente tipos de sistemas de archivos y utiliza el primer carácter del bloque de permisos para identificar el tipo de archivo. En su tabla de inode GNU/Linux no diferencia entre archivos y directorios. El sistema operativo sabe si es un archivo regular o un directorio por el carácter de tipo. Tipos de Archivos
  15. 15. Archivos físicos: Estos son los archivos en el sentido más conocido, es decir, un fragmento de información con un nombre. Directorios: También llamados carpetas son archivos (nodos) que forman parte de la estructura jerárquica. Se conceptualizan como contenedores de archivos, aunque realmente son archivos que contienen una lista de de otros archivos. Tipos de Archivos
  16. 16. Enlaces: Son archivos especiales que permiten que contienen una suerte de atajo a otros archivos y que permiten acceder a dichos archivos desde distintas rutas sin tener que tener más que una copia del archivo original. Los enlaces se clasifican en dos tipos: Enlaces simbólicos y Enlaces físicos. Tipos de Archivos
  17. 17. Enlaces simbólicos: son punteros virtuales (accesos directos) a un archivo. El borrado de uno o todos los enlaces simbólicos que apunten a un archivo no afectan al archivo original. Para crearlos se utiliza el siguiente comando: $ ln - s nombre_archivo nombre_enlace Enlaces físicos: (También llamados rígidos) Representan un nombre alternativo de un mismo archivo. La eliminación de uno o varios enlaces físicos no afectará al archivo original mientras no se eliminen todos los enlaces Tipos de Archivos
  18. 18. Tienen como limitación el hecho de que sólo es posible crear enlaces físicos dentro de un único e idéntico sistema de archivo. Para crearlos se utiliza el siguiente comando: $ ln nombre_archivo nombre_enlace Archivos virtuales: No son archivos reales, pues solo existen en la memoria en forma de procesos y son accesibles desde el sistema de archivos. La mayoría de estos archivos se ubican en el directorio /proc y como procesos se crean y se destruyen en cada sesión. Acceder a ellos nos permite obtener información del sistema (memoria,procesador, particiones, etc) Tipos de Archivos
  19. 19. Archivos de dispositivo: Estos archivos, ubicados en el directorio /dev permiten acceder a los distintos dispositivos conectados al computador. Las unidades de almacenamiento y otros dispositivos, al ser tratados como archivos soportan tareas de direccionamiento y redireccionamiento. Tipos de Archivos
  20. 20. Particiones
  21. 21. Una partición de un disco duro es una división lógica en una unidad de almacenamiento (por ejemplo un disco duro o unidad flash), en la cual se alojan y organizan los archivos mediante un sistema de archivos. Existen dos tipos de particiones para almacenar data, primaria y extendida. Partición
  22. 22. Una partición primaria es formateada y entonces se puede utilizar para almacenar archivos. Además, un computador sólo puede ser arrancado desde una partición primaria. Solo puede haber 4 particiones primarias, ó 3 particiones primarias y una extendida. Partición Primaria
  23. 23. Una partición extendida es otro tipo de partición que actúa como una partición primaria; sirve para contener múltiples unidades lógicas en su interior. Fue ideada para romper la limitación de 4 particiones primarias en un solo disco físico. Solo puede existir una partición de este tipo por disco, y solo sirve para contener particiones lógicas. Por lo tanto, es el único tipo de partición que no soporta un sistema de archivos directamente. Partición Extendida
  24. 24. Una partición lógica, ocupa una porción de la partición extendida o la totalidad de la misma, la cual se ha formateado con un tipo específico de sistema de archivos (FAT32, NTFS, ext2,...) y se le ha asignado una unidad, así el sistema operativo reconoce las particiones lógicas o su sistema de archivos. Puede haber un máximo de 23 particiones lógicas en una partición extendida. Linux impone un máximo de 15, incluyendo las 4 primarias, en discos SCSI y en discos IDE 8963. Partición Lógica
  25. 25. GNU / Linux se ejecuta muy bien con dos particiones: la principal, montada en el directorio raíz (/) y swap, que se usa para la memoria virtual temporal. Es el mínimo suficiente en estos sistemas operativos. Es importante destacar que las particiones de intercambio (swap) pueden instalarse sin problemas dentro de una partición lógica. ¿Cuantas y de que Tamaño?
  26. 26. A las particiones de intercambio, al igual que a la memoria RAM, no se les asigna un directorio; este tipo de particiones se usa para guardar ciertas réplicas de la memoria RAM, para que de esta forma la RAM tenga más espacio para las tareas en primer plano, guardando las tareas en segundo plano dentro de la partición de intercambio.
  27. 27. Permite crear particiones en el disco duro de la misma manera que su contraparte de MS-DOS. El particionamiento con fdisk puede dar lugar a la pérdida de todos los datos del disco en cuestión. Para invocar la utilidad debes utilizar el comando fdisk. Cuando fdisk sea invocado sin argumentos, éste seleccionará la primera unidad de disco que encuentre. Fdisk
  28. 28. Pasa el nombre del dispositivo como argumento para seleccionar la unidad / partición de tu elección (por ejemplo, el segundo disco duro IDE será seleccionado): $ fdisk /dev/hdb Cabe señalar que la versión Linux de fdisk es más difícil de usar que la versión de MS-DOS, por lo que se recomienda crear particiones desde MS-DOS (Puedes crear un disco de inicio con el fin de dar formato a la partición e instalar DOS después de haber instalado Linux). Fdisk
  29. 29. Fdisk La nomenclatura para los discos duros En Linux, los nombres de los dispositivos de almacenamiento varían en función de si son unidades SCSI o IDE. Para los discos IDE, el primero se llama hda, el segundo se llama hdb, etc. Para discos SCSI, el primero se llama sda, el segundo se llama sdb y así sucesivamente. Comandos de fdisk
  30. 30. Utilidades para el uso y mantenimiento del disco
  31. 31. FSCK Es un utilitario usado para verificar la estructura del sistema de archivos y reparar cualquier inconsistencia en el disco. Los problemas más frecuentes ocurren como resultado de apagados incorrectos por razones de energía o programas defectuosos que llevan al sistema a colgarse . Comando du Reporta el monto de espacio que ocupa un archivo o un directorio y todos los archivos y subdirectorios que él contiene. Sintaxis: $ du [opciones] [nombre-archivo]
  32. 32. Nos permite obtener información sobre el tamaño de dispositivos como son las particiones. Sintaxis: $ df [opciones] [nombre-archivo] 1. El comando df retorna los valores de la siguiente información: 2. Tamaño del dispositivo 3. Número de bloques Libres en el Dispositivo 4. Número de bloques ocupados en el dispositivo 5. Porcentaje del total de bloques Libre 6. Nombre del Dispositivo Comando df
  33. 33. Comandos Básicos de la Administración de Archivos
  34. 34. Se utiliza para cambiar de posición en el sistema de archivos. Al ingresar a su computador, se le coloca automáticamente en el directorio home. Para cambiar a otro directorio, usted ejecuta el comando cd (change directory) seguido por el directorio al cual de se a dirigirse como argumento. El directorio nuevo se convierte en su directorio actual. Sintaxis: $ cd [directorio] Comando cd
  35. 35. Despliega el contenido del directorio Este comando tiene un gran número de opciones que alteran su comportamiento. Si usted utiliza el shell bash (Bourne Again Shell), puede adquirir un listado de los archivos del directorio actual (pwd) con uno de los comandos ls o dir. Sintaxis : $ ls [opciones] [nombre] $ dir [opciones] [nombre] Comando ls
  36. 36. Un archivo puede ser visto como una colección de información referenciada por un nombre. GNU/Linux ve los dispositivos periféricos como archivos, permitiéndole leer y escribir a ellos así como puede hacerlo a cualquier otro archivo. Tipos de archivos incluye : - Archivos Ordinarios (texto o binarios) - Directorios - CD -ROM - Impresoras - Diskettes Floppy - Disco Duro Comando file
  37. 37. El utilitario file nos ayuda obtener información acerca del contenidos de un archivo sin primero tener que examinar el archivo directamente. La salida clasifica el archivo por tipo. Aunque el utilitario file nos presenta información sobre cualquier archivo, esta información no siempre es correcta. Sintaxis : $ file [opciones] nombre-de-archivo Comando file
  38. 38. El comando cat (concatena archivos) y puede ser utilizado para crear archivos; es utilizado principalmente para enviar contenido de uno o más archivos a la pantalla o a otro dispositivo de salida. Sintaxis: $ cat [OPCIÓN] [ARCHIVO] Para crear un archivo nuevo, escriba $ cat > nombre-del-archivo digite aquí su contenido y cuando termine .... Ctrl-D Ctrl-D es el carácter end of file (EOF), fin de archivo, y cerrará el archivo. Para desplegar el contenido de uno o más archivos en la salida estándar, escriba: $ cat archivo1 archivo2 Comando cat
  39. 39. Funcionalidad del comando cat puede ser incrementada usando los símbolos de dirección > o > > . El símbolo > es utilizado para direccionar la salida hacia otro sitio que no sea la salida estándar, como lo es usualmente la pantalla. El > puede ser usado para escribir la salida de un comando a un archivo o a otro dispositivo, como lo es una impresora. El uso de > > también redirecciona la salida, pero agrega a un archivo existente en vez de sobrescribir.
  40. 40. Los paginadores (Pagers) son utilitarios usados para desplegar archivos y que podamos mover hacia arriba y abajo a través de múltiples páginas una pantalla a la vez, dentro de su contenido. También nos permite buscar dentro de los archivos información específica. More y less son los más comunes. Ambos nos permiten desplazarnos hacia adelante utilizando la barra espaciadora y hacia atrás con la tecla b. less, tiene más funciones que more. Comando more y less
  41. 41. Otras características de less incluyen: - La capacidad de utilizar las teclas del cursor (flechas) para desplazarse para atrás y hacia alante. - La capacidad de navegar con bookmarks, número de líneas, o porcentaje del archivo. - El less deja de ejecutarse al final del archivo, more continua Ambos nos permiten buscar dentro del archivo. Ambos utilitarios son utilizados con gran frecuencia en desplegar las páginas del man (manual). Comando more y less
  42. 42. El comando wc nos informa cuántas palabras, líneas, o caractere s contiene un archivo. Sintaxis: $ wc [opciones] [nombre -arch ivo(s)] Opciones para definir la salida de wc Opción Salida -c Número de Caracteres -w Número de Palabras -l Número de Líneas Si se especifican múltiples archivos en la línea de comando, el número de palabras, líneas,y caracteres será desplegado para cada archivo seguido por el total de palabras, líneas, y caracteres para todos los archivos. Comando wc
  43. 43. Permiten visualizar en principio o el fin de uno o más archivos. Use la opción -n para designar cuantas líneas desea desplegar; el número a desplegar por defecto son 10. También puedes utilizar la opción -v o --verbose para imprimir siempre el nombre del archivo como cabezal. Comando head y tail
  44. 44. El comando touch se usa para cambiar la fecha y hora de acceso y de modificación del archivo. Sintaxis: $ touch [opciones] [fecha] nombre-de-archivo Si el archivo no existe será creado un archivo vacío. Si no especificamos ni fecha ni tiempo, el tiempo actual del sistema será aplicado. Comando touch
  45. 45. El comando cp copia tanto archivos como directorios. La acción de copiar puede reemplazar cualquier archivo existente con el mismo nombre , así que debe ser utilizado con cuidado. Para evitar esto, tu pue de usar la opción -b (back up del archivo) o -i (interactivo). Para copiar recursivamente un directorio y su contenido a otro, use la opción -r o -R. Esto también copiará recursivamente la estructura del directorio. Comando cp
  46. 46. El comando dd (copia de dispositivo a dispositivo) es un utilitario de copiar especial. Su uso primario es copiar archivos a otros dispositivos como lo son cintas o floppies. Es muy útil al copiar desde un sistema operativo a otro cuando otros métodos fracasan. Sintaxis: $ dd [argumentos] Existen varios argumentos disponibles. Una característica del dd es la capacidad de poderle especificar el tamaño del block como parte del comando dd, brindándote así un control superior sobre la operación del copiado. Comando dd
  47. 47. Argumentos más comunes : if=nombre-del-archivo Especifica el archivo a copiar of=nombre-de-archivo Especifica el archivo de salida bs=tamaño del block Especifica cuántos bytes a escribir y leer simultáneamente Ejemplo $ dd if=/dev/fd0 bs=512 of=data.backup Esta sentencia hace una copia del contenido del diskette a un archivo llamado data.backup.
  48. 48. El comando mv es usado para renombrar y mover archivos de un lado a otro en el árbol de directorio. Sintaxis : $ mv [Opción] [archivo entrada] [archivo salida] . Una manera de prevenir que se pierda un archivo es usando la opción -b, el cual le crea un backup del archivo, si va ha ser sobrescrito. Por ejemplo $ mv -b prueba1 prueba2 $ ls prueba* prueba1 prueba2~ prueba2 Comando mv Debe tener mucho cuidado: Si mueves un archivo con el comando m v y otro archivo con el mismo nombre ya existe en esa localidad será sobrescrito
  49. 49. El comando rm puede ser utilizado para remover archivos individuales o múltiples y directorios. Después que un archivo ha sido borrado, ya no es posible recuperarlo, así es que debes usarlo con cautela. Cuidado con el comando rm y la cuenta del root, usted puede tornar su sistema inservible. Comando rm Opciones: -i Requiere una confirmación antes de que los archivos sean eliminados. -f Obliga la eliminación de los archivos que se encuentran en modo de protección contra escritura. -r Borrará recursivamente archivos y directorios. Se le cuestionara la confirmación para cada archivo a eliminar.
  50. 50. Para eliminar archivos recursivamente sin confirmación use la combinación de las dos opciones -rf. No podrá usar rm para borrar directorios, incluyendo los vacío, sin el uso de la opción -r. Comando rm
  51. 51. Para crear directorios se usa el comando mkdir. Si se usa sin opciones, el directorio padre debe estar ya presente para crear uno dentro que sería el directorio hijo, aquí le damos unos ejemplos: $ mkdir prueba $ mkdir prueba/hijo También se puede crear una jerarquía de directorios de múltiple padre e hijos en una sola sentencia con la opción -p. $ mkdir -p prueba/padre/hijo Comando mkdir
  52. 52. El comando rmdir borra sólo directorio que estén completamente vacío. Use la opción de padre (-p) para remover jerarquía de directorios. Un ejemplo es: $ rmdir -p prueba/padre/hijo Este comando borra el directorio hijo solamente. Si existen más subdirectorios en el directorio padre , ellos no serán borrados. Pero, si usted escribe : $ rmdir -p prueba/padre/* Todos los subdirectorios que se encuentre vacíos serán borrados. Comando rmdir
  53. 53. Búsqueda de Contenido en Archivos
  54. 54. El comando grep (global regular expresion print) busca un patrón o cadena simple de caracteres dentro del contenido de un archivo. Sintaxis: $ grep [Opciones] patrón [listado de archivos] Hay tres comandos relacionados 'grep, egrep, y fgrep' que pueden ser usados para buscar en archivos línea por línea. Comando grep
  55. 55. Las diferencias entres ellos son mínimas. El grep puede utilizar expresiones regulares. El egrep, utiliza expresiones extendidas, tiene una sintaxis un poco diferente; y fgrep utiliza cadenas de caracteres simples en vez de Expresiones Regulares. Comando egrep
  56. 56. El comando sed (stream editor) es un editor de línea no-interactivo. Los comandos se le pasan a sed todos a la ve z, y entonces sed procesa el o los archivos una línea a la vez. Sintaxis: $ sed [-n] [-e comandos] [-f nombre-de-script] archivo.txt [> archivo.final.txt] Comando sed
  57. 57. ¡Gracias por acompañarnos!
  58. 58. Referencias Libros: GNU/Básico : Antonio Perpiñan http://codigolibre.org/ After the software wars : Keith Curtis http://keithcu.com http://es.kioskea.net/faq/10941-linux-el-comando-fdisk http://es.wikipedia.org/wiki/Filesystem_Hierarchy_Standard http://www.ubuntu-es.org/node/177034#.U5kx83LC60w
  59. 59. @eudriscabrera @eudris @ecabrerar @eudriscabrera Eudris Cabrera Rodríguez Ingeniero Telemático Desarrollador de Software / Consultor Informático eudris@gmail.com

×