Que hay en un archivo - PowerPoint PPT Presentation

1 / 18
About This Presentation
Title:

Que hay en un archivo

Description:

A pesar de que Linux introduces un gran numero de programa y herramientas de ... 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.9, stripped ... – PowerPoint PPT presentation

Number of Views:26
Avg rating:3.0/5.0
Slides: 19
Provided by: movilC
Category:
Tags: archivo | hay | libs | que

less

Transcript and Presenter's Notes

Title: Que hay en un archivo


1
Que hay en un archivo?
2
  • El formato de un archivo es determinado por los
    programas que lo usan
  • El tipo de archivo no es determinado por el
    sistema de archivos
  • El kernel no sabe nada acerca del tipo de archivo
  • Cada archivo es simplemente una secuencia de bytes

3
file /bin /bin/ed /c/amort.c /bin
directory /bin/ed
ELF 32-bit LSB executable, Intel 80386, version 1
(SYSV), dynamically linked (uses shared libs),
for GNU/Linux 2.6.9, stripped /home/fcordoba/c/am
ort.c ASCII C program text
4
Directorios y archivos
ls junk pwd /home/fcordoba/you mkdir
recipes cd recipes pwd /home/fcordoba/you/reci
pes mkdir pie cookie cd .. tree . --
junk -- recipes -- cookie -- pie 3
directories, 1 files
5
PERMISOS
6
  • Cada archivo tiene permisos
  • Cada usuario tiene un password
  • El archivo /etc/passwd es el archivo de passwords

7
grep fcordoba /etc/passwd fcordobax500501Fr
ank Cordoba/home/fcordoba/bin/tcsh
ls -l /etc/passwd -rw-r--r-- 1 root root 1763
2008-04-11 1330 /etc/passwd
8
ls -ld you drwxrwxr-x 3 fcordoba fcordoba 4096
2008-08-04 1518 you/ la opcion -d indica
que queremos informacion sobre los permisos del
directorio en si. r significa que el directorio
se puede leer, esto es podemos ver que archivos
se encuentran en este directorio. w significa
que podemos crear y borrar archivos en el
directorio. El permiso para borrar un archivo es
independiente de los permisos del archivo en
si. Finalmente x no significa ejecutable sino
que significa que podemos buscar en el
directorio. Por ejemplo, podemos crear un
directorio con permisos - - x para el resto del
mundo, de tal forma que un usuario puede accesar
un archivo que sabe que esta alli pero no puede
ver que archivos se encuentran en este
directorio. De la misma manera, un directorio
con permisos r - - permite a los ususarios ver lo
que se encuntra en el directorio pero no pueden
usar los archivos del directorio.
9
Cambio de Permisos
  • chmod permisos archivos ...
  • Seria conveniente si pudieramos nada mas
    hacer chmod rw-rw-rw junken lugar
    de chmod 666 junk
  • Pero no se puede. El modo octal se especifica
    como 4 para read, 2 para write y 1 para
    execute

10
Cambio de Permisos
  • chmod x programa
  • chmod -w archivo
  • Si uno puede escribir a un directorio (w)
    entonces uno puede remover archivos sin importar
    los permisos de los archivos.
  • Para proteger tus archivos quitale el permiso de
    escribir al directorio a el resto del mundo.

11
Inodes
12
Inodes
  • Un archivo tiene varios componentes nombre
    contenido informacion administrativa
    tiempos en que el archivo fue modificado
  • Esta informacion no se almacena en el archivo
    sino en una estructura conocida como inode
  • El inode contiene que tan largo es el archivo, en
    que parte del disco esta guardado, el tiempo en
    que el archivo se modifico, la ultima vez que se
    uso, el tiempo que el inode se modifico, etc.
  • En cierto sentido el inode es el archivo

13
Inodes
  • En UNIX es posible desplegar el contenido de un
    directorio
  • En Linux (Fedora en particular) no es posible.
  • Los primeros dos octetos de cada
    entrada('entry) de un directorio contienen el
    numero del inode.
  • Esta es la unica coneccion entre el nombre del
    archivo y su contenido.
  • Por lo tanto, al nombre del archivo en un
    directorio se le llama una liga (link) porque
    liga el nomber al inode e indirectamente a los
    datos del archivo.
  • El mismo numero del inode puede aparecer en
    varios directorios.

14
Desplegar los numeros de los inodes (esto es
valido en UNIX y Linux)? ls -i 15768
junk 15274 recipes (este es un
directorio)? 15852 x
15
Desplegar el contenido del directorio en si
(esto es valido en UNIX per no en Linux)? od
-c . 0000000 4 . \0 \0 \0 \0 \0 \0 \0 \0
\0 \0 \0 \0 \0 0000020 273 ( . . \0 \0 \0 \0
\0 \0 \0 \0 \0 \0 \0 \0 0000040 252 r e c
i p e s \0 \0 \0 \0 \0 \0 \0 0000060 230
j u n k \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 0000100
354 x \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0 \0
\0 0000120 od -d . 0000000 15156 00046 00000
00000 00000 00000 00000 00000 0000020 10427 11822
00000 00000 00000 00000 00000 00000 0000040 15274
25970 26979 25968 00115 00000 00000 00000 0000060
15768 30058 27502 00000 00000 00000 00000
00000 0000100 15852 00120 00000 00000 00000 00000
00000 00000 0000120 rm x od -d . 0000000
15156 00046 00000 00000 00000 00000 00000
00000 0000000 10427 11822 00000 00000 00000 00000
00000 00000 0000040 15274 25970 26979 25968 00115
00000 00000 00000 0000060 15768 30058 27502 00000
00000 00000 00000 00000 0000000 00000 00120 00000
00000 00000 00000 00000 00000 0000120
16
Inodes
  • El comando rm no remueve inodes.
  • Solamente remueve entradas (entries) en el
    directorio esto es solamente remueve ligas
    (links)?
  • Solamente cuando la ultima a un archivo
    despaparece el sistema remueve el inode y por lo
    tanto el archivo en si.
  • Si el numero del inode en la entrada (entry) en
    el directorio es cero, esto significa que la liga
    (link) ha sido removida pero no necesariamente
    el contenido del archivo ya que puede haber otra
    liga al archivo en algun otro directorio.
  • El proximo archivo creado en el directorio
    ocupara el lugar vacante y tendra un nuevo numero
    de inode.

17
Inodes
  • El comando ln crea una liga (link) ln
    nombre_viejo nombre_nuevoo mas comunmente
    ln -s nombre_viejo nombre_nuevo
  • El primero crea un hard link y el segundo crea
    un symbolic link

18
cat junk Este es el archivo junk. ls -l total
20 -rw-rw-r-- 1 fcordoba fcordoba 26 2008-08-20
1718 junk drwxrwxr-x 4 fcordoba fcordoba 4096
2008-04-23 1333 recipes/ -rw-rw-r-- 1 fcordoba
fcordoba 0 2008-08-20 1719 typescript ln
junk hardlink ls -l total 28 -rw-rw-r-- 2
fcordoba fcordoba 26 2008-08-20 1718
hardlink -rw-rw-r-- 2 fcordoba fcordoba 26
2008-08-20 1718 junk drwxrwxr-x 4 fcordoba
fcordoba 4096 2008-04-23 1333 recipes/ -rw-rw-r--
1 fcordoba fcordoba 0 2008-08-20 1719
typescript cat hardlink Este es el archivo
junk. ln -s junk symlink cat symlink Este es
el archivo junk. ls -l total 32 -rw-rw-r-- 2
fcordoba fcordoba 26 2008-08-20 1718
hardlink -rw-rw-r-- 2 fcordoba fcordoba 26
2008-08-20 1718 junk drwxrwxr-x 4 fcordoba
fcordoba 4096 2008-04-23 1333 recipes/ lrwxrwxrwx
1 fcordoba fcordoba 4 2008-08-20 1720
symlink -gt junk -rw-rw-r-- 1 fcordoba fcordoba
0 2008-08-20 1719 typescript rm junk ls
-l total 24 -rw-rw-r-- 1 fcordoba fcordoba 26
2008-08-20 1718 hardlink drwxrwxr-x 4 fcordoba
fcordoba 4096 2008-04-23 1333 recipes/ lrwxrwxrwx
1 fcordoba fcordoba 4 2008-08-20 1720
symlink -gt junk -rw-rw-r-- 1 fcordoba fcordoba
0 2008-08-20 1719 typescript cat symlink cat
symlink No such file or directory cat hardlink
Este es el archivo junk.
Write a Comment
User Comments (0)
About PowerShow.com